Wed, 17 Feb 2021 16:49:35 +0200
stuff
#pragma once #include <QMouseEvent> #include "../main.h" class BaseTool : public QObject { Q_OBJECT public: struct MouseEventData { QMouseEvent* ev; Qt::KeyboardModifiers keymods; bool mouseMoved; Qt::MouseButtons releasedButtons; }; BaseTool(QObject* parent = nullptr); virtual QString name() const = 0; virtual QString toolTip() const = 0; virtual bool mousePressed(QMouseEvent*) { return false; } virtual bool mouseReleased(MouseEventData const&) { return false; } virtual bool mouseDoubleClicked(QMouseEvent*) { return false; } virtual bool mouseMoved(QMouseEvent*) { return false; } virtual bool keyReleased(QKeyEvent*) { return false; } virtual void pointInCanvasClicked(const glm::vec3&) {} };