src/tools/basetool.h

changeset 96
165777a20dc7
child 100
43ce3672648a
equal deleted inserted replaced
95:06a1aef170aa 96:165777a20dc7
1 #pragma once
2 #include "../main.h"
3
4 class BaseTool : public QObject
5 {
6 Q_OBJECT
7
8 public:
9 struct MouseEventData
10 {
11 QMouseEvent* ev;
12 Qt::KeyboardModifiers keymods;
13 bool mouseMoved;
14 Qt::MouseButtons releasedButtons;
15 };
16
17 BaseTool(QObject* parent = nullptr);
18
19 virtual QString name() const = 0;
20 virtual QString toolTip() const = 0;
21 virtual bool mousePressed(QMouseEvent*) { return false; }
22 virtual bool mouseReleased(MouseEventData const&) { return false; }
23 virtual bool mouseDoubleClicked(QMouseEvent*) { return false; }
24 virtual bool mouseMoved(QMouseEvent*) { return false; }
25 virtual bool keyReleased(QKeyEvent*) { return false; }
26 };

mercurial