Krita Source Code Documentation
Loading...
Searching...
No Matches
presethistory_dock.h
Go to the documentation of this file.
1/*
2 * SPDX-FileCopyrightText: 2015 Boudewijn Rempt <boud@valdyas.org>
3 *
4 * SPDX-License-Identifier: LGPL-2.0-or-later
5 */
6
7#ifndef _PRESETHISTORY_DOCK_H_
8#define _PRESETHISTORY_DOCK_H_
9
10#include <QDockWidget>
11#include <QListWidget>
12#include <QPointer>
13#include <KisKineticScroller.h>
14
16#include <KisResourceModel.h>
17
18#include <kis_canvas2.h>
19#include <kis_types.h>
20
21class QActionGroup;
22
23class PresetHistoryList : public QListWidget {
24 Q_OBJECT
25public:
26 PresetHistoryList(QWidget *parent = nullptr);
27protected:
28 void mouseReleaseEvent(QMouseEvent *e) override;
29Q_SIGNALS:
30 void mouseReleased(QListWidgetItem *item);
31};
32
33class PresetHistoryDock : public QDockWidget, public KoCanvasObserverBase {
34 Q_OBJECT
35public:
37 ResourceID = Qt::UserRole,
38 BubbleMarkerRole = Qt::UserRole + 1
39 };
40
42 Static = 0,
44 Bubbling = 2
45 };
46
48 QString observerName() override { return "PresetHistoryDock"; }
49 void setCanvas(KoCanvasBase *canvas) override;
50 void unsetCanvas() override;
51public Q_SLOTS:
52 void slotScrollerStateChanged(QScroller::State state){ KisKineticScroller::updateCursor(this, state); }
53private Q_SLOTS:
54 void presetSelected(QListWidgetItem *item);
55 void canvasResourceChanged(int key, const QVariant& v);
56 void slotSortingModeChanged(QAction *action);
57 void slotPresetLimitChanged(int presetLimit);
59 void slotContextMenuRequest(const QPoint &pos);
60 void updatePresets();
61private:
62 void updatePresetState(int position);
63 int bubblePreset(int position);
64 void addPreset(QString name, QIcon icon, int resourceId);
65private:
71 QActionGroup *m_sortingModes;
75 bool m_block {false};
76 bool m_initialized {false};
77};
78
79
80#endif
qreal v
The KisResourceModel class provides the main access to resources. It is possible to filter the resour...
void addPreset(QString name, QIcon icon, int resourceId)
int bubblePreset(int position)
void slotPresetLimitChanged(int presetLimit)
QActionGroup * m_sortingModes
void slotScrollerStateChanged(QScroller::State state)
void slotSortingModeChanged(QAction *action)
KisResourceModel * m_resourceModel
void setCanvas(KoCanvasBase *canvas) override
void presetSelected(QListWidgetItem *item)
void updatePresetState(int position)
void canvasResourceChanged(int key, const QVariant &v)
QPointer< KisCanvas2 > m_canvas
QAction * m_actionSortMostRecent
PresetHistoryList * m_presetHistory
void unsetCanvas() override
QString observerName() override
void slotContextMenuRequest(const QPoint &pos)
void mouseReleaseEvent(QMouseEvent *e) override
void mouseReleased(QListWidgetItem *item)
PresetHistoryList(QWidget *parent=nullptr)
KRITAWIDGETUTILS_EXPORT void updateCursor(QWidget *source, QScroller::State state)