Krita Source Code Documentation
Loading...
Searching...
No Matches
KisTouchGestureAction Class Reference

#include <KisTouchGestureAction.h>

+ Inheritance diagram for KisTouchGestureAction:

Public Types

enum  Shortcut {
  UndoActionShortcut , RedoActionShortcut , ToggleCanvasOnlyShortcut , ToggleEraserMode ,
  ResetDisplay , PreviousPresetShortcut , ColorSampler , Deselect ,
  NextLayer , PreviousLayer , FreehandBrush , KisToolSelectContiguous ,
  KisToolMove , KisToolTransform , ToggleEraserPreset
}
 

Public Member Functions

void begin (int shortcut, QEvent *event) override
 
void end (QEvent *event) override
 
 KisTouchGestureAction ()
 
int priority () const override
 
- Public Member Functions inherited from KisAbstractInputAction
virtual void activate (int shortcut)
 
virtual bool canIgnoreModifiers () const
 
virtual void deactivate (int shortcut)
 
virtual QString description () const
 
virtual QString id () const
 
virtual KisInputActionGroup inputActionGroup (int shortcut) const
 
virtual void inputEvent (QEvent *event)
 
virtual bool isAvailable () const
 
virtual bool isShortcutRequired (int shortcut) const
 
 KisAbstractInputAction (const QString &id)
 
virtual QString name () const
 
virtual QHash< QString, int > shortcutIndexes () const
 
virtual bool supportsHiResInputEvents (int shortcut) const
 
virtual ~KisAbstractInputAction ()
 

Private Attributes

int m_shortcut {-1}
 

Additional Inherited Members

- Public Attributes inherited from KisAbstractInputAction
QString description
 
QString id
 
QHash< QString, int > indexes
 
QPointF lastCursorPosition
 
QString name
 
QPointF startCursorPosition
 
- Static Public Attributes inherited from KisAbstractInputAction
static KisInputManagerinputManager
 
- Protected Member Functions inherited from KisAbstractInputAction
virtual void cursorMoved (const QPointF &lastPos, const QPointF &pos)
 
virtual void cursorMovedAbsolute (const QPointF &startPos, const QPointF &pos)
 
QPoint eventPos (const QEvent *event)
 
QPointF eventPosF (const QEvent *event)
 
KisInputManagerinputManager () const
 
void setDescription (const QString &description)
 
void setName (const QString &name)
 
void setShortcutIndexes (const QHash< QString, int > &indexes)
 

Detailed Description

Definition at line 12 of file KisTouchGestureAction.h.

Member Enumeration Documentation

◆ Shortcut

Enumerator
UndoActionShortcut 
RedoActionShortcut 
ToggleCanvasOnlyShortcut 
ToggleEraserMode 
ResetDisplay 
PreviousPresetShortcut 
ColorSampler 
Deselect 
NextLayer 
PreviousLayer 
FreehandBrush 
KisToolSelectContiguous 
KisToolMove 
KisToolTransform 
ToggleEraserPreset 

Definition at line 15 of file KisTouchGestureAction.h.

15 {
31 };

Constructor & Destructor Documentation

◆ KisTouchGestureAction()

KisTouchGestureAction::KisTouchGestureAction ( )

Definition at line 14 of file KisTouchGestureAction.cpp.

15 : KisAbstractInputAction("Touch Gestures")
16{
17 setName(i18n("Touch Gestures"));
18 setDescription(i18n("The Touch Gestures actions launch a single action for the specified gesture"));
19
20 QHash<QString, int> shortcuts;
21 shortcuts.insert(i18n("Undo"), UndoActionShortcut);
22 shortcuts.insert(i18n("Redo"), RedoActionShortcut);
23 shortcuts.insert(i18n("Toggle Canvas Only Mode"), ToggleCanvasOnlyShortcut);
24 shortcuts.insert(i18n("Toggle Eraser"), ToggleEraserMode);
25 shortcuts.insert(i18n("Toggle Eraser Preset"), ToggleEraserPreset);
26 shortcuts.insert(i18n("Reset Display"), ResetDisplay);
27 shortcuts.insert(i18n("Toggle Previous Brush Preset"), PreviousPresetShortcut);
28 shortcuts.insert(i18n("Color Sampler"), ColorSampler);
29 shortcuts.insert(i18n("Deselect"), Deselect);
30 shortcuts.insert(i18n("Activate Next Layer"), NextLayer);
31 shortcuts.insert(i18n("Activate Previous Layer"), PreviousLayer);
32 shortcuts.insert(i18n("Activate Freehand Brush Tool"), FreehandBrush);
33 shortcuts.insert(i18n("Freehand Selection Tool"), KisToolSelectContiguous);
34 shortcuts.insert(i18n("Activate Move Tool"), KisToolMove);
35 shortcuts.insert(i18n("Activate Transform Tool"), KisToolTransform);
36 setShortcutIndexes(shortcuts);
37}
KisAbstractInputAction(const QString &id)
void setShortcutIndexes(const QHash< QString, int > &indexes)
void setName(const QString &name)
void setDescription(const QString &description)

References ColorSampler, Deselect, FreehandBrush, NextLayer, PreviousLayer, PreviousPresetShortcut, RedoActionShortcut, ResetDisplay, KisAbstractInputAction::setDescription(), KisAbstractInputAction::setName(), KisAbstractInputAction::setShortcutIndexes(), ToggleCanvasOnlyShortcut, ToggleEraserMode, ToggleEraserPreset, and UndoActionShortcut.

Member Function Documentation

◆ begin()

void KisTouchGestureAction::begin ( int shortcut,
QEvent * event )
overridevirtual

Begin the action.

Parameters
shortcutThe index of the behaviour to trigger.
eventThe mouse event that has triggered this action. Is null for keyboard-activated actions.

Reimplemented from KisAbstractInputAction.

Definition at line 39 of file KisTouchGestureAction.cpp.

40{
41 Q_UNUSED(event)
42 m_shortcut = shortcut;
43}

References m_shortcut.

◆ end()

void KisTouchGestureAction::end ( QEvent * event)
overridevirtual

End the action.

Parameters
eventThe mouse event that has finished this action. Is null for keyboard-activated actions.

Reimplemented from KisAbstractInputAction.

Definition at line 45 of file KisTouchGestureAction.cpp.

46{
47 Q_UNUSED(event)
48
49 QString actionName;
50 switch (m_shortcut) {
52 actionName = QStringLiteral("edit_undo");
53 break;
55 actionName = QStringLiteral("edit_redo");
56 break;
58 actionName = QStringLiteral("view_show_canvas_only");
59 break;
61 actionName = QStringLiteral("erase_action");
62 break;
63 case ResetDisplay:
64 actionName = QStringLiteral("reset_display");
65 break;
67 actionName = QStringLiteral("previous_preset");
68 break;
69 case ColorSampler:
70 actionName = QStringLiteral("KritaSelected/KisToolColorSampler");
71 break;
72 case Deselect:
73 actionName = QStringLiteral("deselect");
74 break;
75 case NextLayer:
76 actionName = QStringLiteral("activateNextLayer");
77 break;
78 case PreviousLayer:
79 actionName = QStringLiteral("activatePreviousLayer");
80 break;
81 case FreehandBrush:
82 actionName = QStringLiteral("KritaShape/KisToolBrush");
83 break;
85 actionName = QStringLiteral("KisToolSelectOutline");
86 break;
87 case KisToolMove:
88 actionName = QStringLiteral("KritaTransform/KisToolMove");
89 break;
91 actionName = QStringLiteral("KisToolTransform");
92 break;
94 actionName = QStringLiteral("eraser_preset_action");
95 break;
96 }
97
98 if (actionName.isEmpty()) {
99 qWarning("KisTouchGestureAction: Unhandled shortcut %d", m_shortcut);
100 } else {
102 QAction *action = actionCollection->action(actionName);
103 if (action) {
104 action->trigger();
105 } else {
106 qWarning("KisTouchGestureAction: unable to find action '%s' for shortcut %d",
107 qUtf8Printable(actionName),
108 m_shortcut);
109 }
110 }
111}
A container for a set of QAction objects.
QAction * action(int index) const
virtual KisKActionCollection * actionCollection() const
static KisPart * instance()
Definition KisPart.cpp:131
KisMainWindow * currentMainwindow() const
Definition KisPart.cpp:459

References KisKActionCollection::action(), KisKXMLGUIClient::actionCollection(), ColorSampler, KisPart::currentMainwindow(), Deselect, FreehandBrush, KisPart::instance(), KisToolMove, KisToolSelectContiguous, KisToolTransform, m_shortcut, NextLayer, PreviousLayer, PreviousPresetShortcut, RedoActionShortcut, ResetDisplay, ToggleCanvasOnlyShortcut, ToggleEraserMode, ToggleEraserPreset, and UndoActionShortcut.

◆ priority()

int KisTouchGestureAction::priority ( ) const
overridevirtual

The priority for this action.

Priority determines how "important" the action is and is used to resolve conflicts when multiple actions can be activated.

Reimplemented from KisAbstractInputAction.

Definition at line 113 of file KisTouchGestureAction.cpp.

114{
115 return 6;
116}

Member Data Documentation

◆ m_shortcut

int KisTouchGestureAction::m_shortcut {-1}
private

Definition at line 41 of file KisTouchGestureAction.h.

41{-1};

The documentation for this class was generated from the following files: