| #pragma once |
| |
| #ifndef STYLEPICKERTOOL_H |
| #define STYLEPICKERTOOL_H |
| |
| #include "tools/tool.h" |
| #include "tproperty.h" |
| #include <QObject> |
| |
| class StylePickerTool final : public TTool, public QObject { |
| int m_oldStyleId, m_currentStyleId; |
| |
| TEnumProperty m_colorType; |
| TPropertyGroup m_prop; |
| TBoolProperty m_passivePick; |
| |
| TBoolProperty m_organizePalette; |
| TPalette *m_paletteToBeOrganized; |
| |
| bool startOrganizePalette(); |
| |
| public: |
| TPropertyGroup *getProperties(int targetType) override { return &m_prop; } |
| |
| StylePickerTool(); |
| |
| ToolType getToolType() const override { return TTool::LevelReadTool; } |
| |
| void draw() override {} |
| |
| void leftButtonDown(const TPointD &pos, const TMouseEvent &e) override; |
| |
| void leftButtonDrag(const TPointD &pos, const TMouseEvent &e) override; |
| |
| void pick(const TPointD &pos, const TMouseEvent &e); |
| |
| void mouseMove(const TPointD &pos, const TMouseEvent &e) override; |
| |
| int getCursorId() const override; |
| |
| bool onPropertyChanged(std::string propertyName); |
| |
| bool isOrganizePaletteActive() { return m_organizePalette.getValue(); } |
| |
| |
| |
| |
| |
| |
| |
| void onImageChanged() override; |
| }; |
| |
| #endif |