Changeset View
Changeset View
Standalone View
Standalone View
plugins/tools/basictools/kis_tool_multihand.h
Show All 35 Lines | 35 | { | |||
---|---|---|---|---|---|
36 | Q_OBJECT | 36 | Q_OBJECT | ||
37 | public: | 37 | public: | ||
38 | KisToolMultihand(KoCanvasBase *canvas); | 38 | KisToolMultihand(KoCanvasBase *canvas); | ||
39 | ~KisToolMultihand() override; | 39 | ~KisToolMultihand() override; | ||
40 | void beginPrimaryAction(KoPointerEvent *event) override; | 40 | void beginPrimaryAction(KoPointerEvent *event) override; | ||
41 | void continuePrimaryAction(KoPointerEvent *event) override; | 41 | void continuePrimaryAction(KoPointerEvent *event) override; | ||
42 | void endPrimaryAction(KoPointerEvent *event) override; | 42 | void endPrimaryAction(KoPointerEvent *event) override; | ||
43 | 43 | | |||
44 | void beginAlternateAction(KoPointerEvent *event, AlternateAction action) override; | ||||
45 | void continueAlternateAction(KoPointerEvent *event, AlternateAction action) override; | ||||
46 | void endAlternateAction(KoPointerEvent *event, AlternateAction action) override; | ||||
47 | | ||||
48 | void mouseMoveEvent(KoPointerEvent* event) override; | ||||
49 | | ||||
44 | 50 | | |||
45 | protected: | 51 | protected: | ||
46 | void paint(QPainter& gc, const KoViewConverter &converter) override; | 52 | void paint(QPainter& gc, const KoViewConverter &converter) override; | ||
47 | 53 | | |||
48 | QWidget* createOptionWidget() override; | 54 | QWidget* createOptionWidget() override; | ||
49 | 55 | | |||
50 | private: | 56 | private: | ||
51 | void initTransformations(); | 57 | void initTransformations(); | ||
52 | void finishAxesSetup(); | 58 | void finishAxesSetup(); | ||
53 | void updateCanvas(); | 59 | void updateCanvas(); | ||
54 | 60 | | |||
55 | private Q_SLOTS: | 61 | private Q_SLOTS: | ||
56 | void activateAxesPointModeSetup(); | 62 | void activateAxesPointModeSetup(); | ||
57 | void resetAxes(); | 63 | void resetAxes(); | ||
58 | void slotSetHandsCount(int count); | 64 | void slotSetHandsCount(int count); | ||
59 | void slotSetAxesAngle(qreal angle); | 65 | void slotSetAxesAngle(qreal angle); | ||
60 | void slotSetTransformMode(int qcomboboxIndex); | 66 | void slotSetTransformMode(int qcomboboxIndex); | ||
61 | void slotSetAxesVisible(bool vis); | 67 | void slotSetAxesVisible(bool vis); | ||
62 | void slotSetMirrorVertically(bool mirror); | 68 | void slotSetMirrorVertically(bool mirror); | ||
63 | void slotSetMirrorHorizontally(bool mirror); | 69 | void slotSetMirrorHorizontally(bool mirror); | ||
64 | void slotSetTranslateRadius(int radius); | 70 | void slotSetTranslateRadius(int radius); | ||
71 | void slotAddSubbrushesMode(bool checked); | ||||
72 | void slotRemoveAllSubbrushes(); | ||||
65 | 73 | | |||
66 | private: | 74 | private: | ||
67 | KisToolMultihandHelper *m_helper; | 75 | KisToolMultihandHelper *m_helper; | ||
68 | 76 | | |||
69 | enum enumTransforModes { SYMMETRY, MIRROR, TRANSLATE, SNOWFLAKE }; | 77 | enum enumTransforModes:int { SYMMETRY=0, MIRROR, TRANSLATE, SNOWFLAKE, COPYTRANSLATE }; | ||
70 | enumTransforModes m_transformMode; | 78 | enumTransforModes m_transformMode; | ||
71 | QPointF m_axesPoint; | 79 | QPointF m_axesPoint; | ||
72 | qreal m_angle; | 80 | qreal m_angle; | ||
73 | int m_handsCount; | 81 | int m_handsCount; | ||
74 | bool m_mirrorVertically; | 82 | bool m_mirrorVertically; | ||
75 | bool m_mirrorHorizontally; | 83 | bool m_mirrorHorizontally; | ||
76 | bool m_showAxes; | 84 | bool m_showAxes; | ||
77 | int m_translateRadius; | 85 | int m_translateRadius; | ||
78 | 86 | | |||
79 | bool m_setupAxesFlag; | 87 | bool m_setupAxesFlag; | ||
80 | QComboBox * m_transformModesComboBox; | 88 | bool m_addSubbrushesMode; | ||
81 | KisSliderSpinBox *m_handsCountSlider; | 89 | QPointF m_lastToolPos; | ||
82 | KisDoubleSliderSpinBox *m_axesAngleSlider; | 90 | QVector<QPointF> m_subbrOriginalLocations; | ||
83 | QCheckBox *m_axesChCkBox; | | |||
84 | QStackedWidget *m_modeCustomOption; | | |||
85 | QCheckBox *m_mirrorVerticallyChCkBox; | | |||
86 | QCheckBox *m_mirrorHorizontallyChCkBox; | | |||
87 | KisSliderSpinBox *m_translateRadiusSlider; | | |||
88 | QPushButton *m_axesPointBtn; | | |||
89 | | ||||
90 | 91 | | |||
91 | KisToolMultiHandConfigWidget* customUI; | 92 | KisToolMultiHandConfigWidget* customUI; | ||
92 | }; | 93 | }; | ||
93 | 94 | | |||
94 | 95 | | |||
95 | class KisToolMultiBrushFactory : public KisToolPaintFactoryBase | 96 | class KisToolMultiBrushFactory : public KisToolPaintFactoryBase | ||
96 | { | 97 | { | ||
97 | 98 | | |||
Show All 23 Lines |