Sun, 29 Aug 2021 20:05:24 +0300
esc with draw mode now clears the polygon
96 | 1 | #pragma once |
100 | 2 | #include <QMouseEvent> |
96 | 3 | #include "../main.h" |
104 | 4 | #include "../ui/canvas.h" |
96 | 5 | |
111
1f42c03fafca
Draw tool actually adds objects now
Teemu Piippo <teemu@hecknology.net>
parents:
109
diff
changeset
|
6 | class Document; |
1f42c03fafca
Draw tool actually adds objects now
Teemu Piippo <teemu@hecknology.net>
parents:
109
diff
changeset
|
7 | |
96 | 8 | class BaseTool : public QObject |
9 | { | |
10 | Q_OBJECT | |
11 | ||
12 | public: | |
13 | BaseTool(QObject* parent = nullptr); | |
14 | ||
15 | virtual QString name() const = 0; | |
16 | virtual QString toolTip() const = 0; | |
121
000781318c36
added right click support for draw tool
Teemu Piippo <teemu@hecknology.net>
parents:
111
diff
changeset
|
17 | virtual bool mouseClick(Document*, Canvas*, QMouseEvent*) { return false; } |
000781318c36
added right click support for draw tool
Teemu Piippo <teemu@hecknology.net>
parents:
111
diff
changeset
|
18 | virtual bool mouseDoubleClicked(QMouseEvent*, QMouseEvent*) { return false; } |
000781318c36
added right click support for draw tool
Teemu Piippo <teemu@hecknology.net>
parents:
111
diff
changeset
|
19 | virtual bool mouseMove(Document*, Canvas*, QMouseEvent*) { return false; } |
96 | 20 | virtual bool keyReleased(QKeyEvent*) { return false; } |
106 | 21 | virtual void reset() {} |
109
40a1cf2f38f5
replaced preview layers in favor of overpainting callback
Teemu Piippo <teemu@hecknology.net>
parents:
108
diff
changeset
|
22 | virtual void overpaint(Canvas*, QPainter*) const {} |
96 | 23 | }; |
103 | 24 |