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

#include <kis_tool_select_path.h>

+ Inheritance diagram for KisToolSelectPath:

Public Member Functions

bool eventFilter (QObject *obj, QEvent *event) override
 
 KisToolSelectPath (KoCanvasBase *canvas)
 
void resetCursorStyle () override
 
- Public Member Functions inherited from KisToolSelectBase< KisDelegatedSelectPathWrapper >
void activate (const QSet< KoShape * > &shapes) override
 
void activateAlternateAction (KisTool::AlternateAction action) override
 
SelectionAction alternateSelectionAction () const
 
bool antiAliasSelection () const
 
void beginAlternateAction (KoPointerEvent *event, KisTool::AlternateAction action) override
 
bool beginMoveSelectionInteraction ()
 
void beginPrimaryAction (KoPointerEvent *event) override
 
bool beginSelectInteraction ()
 
QList< int > colorLabelsSelected () const
 
void continueAlternateAction (KoPointerEvent *event, KisTool::AlternateAction action) override
 
void continuePrimaryAction (KoPointerEvent *event) override
 
QWidget * createOptionWidget () override
 
void deactivate () override
 
void deactivateAlternateAction (KisTool::AlternateAction action) override
 
void endAlternateAction (KoPointerEvent *event, KisTool::AlternateAction action) override
 
bool endMoveSelectionInteraction ()
 
void endPrimaryAction (KoPointerEvent *event) override
 
bool endSelectInteraction ()
 
int featherSelection () const
 
int growSelection () const
 
bool isMovingSelection () const
 
bool isSelecting () const
 
void keyPressEvent (QKeyEvent *event) override
 
void keyReleaseEvent (QKeyEvent *event) override
 
 KisToolSelectBase (KoCanvasBase *canvas, const QCursor cursor, const QString toolName)
 
 KisToolSelectBase (KoCanvasBase *canvas, const QString toolName)
 
 KisToolSelectBase (KoCanvasBase *canvas, QCursor cursor, QString toolName, KoToolBase *delegateTool)
 
KisNodeSP locateSelectionMaskUnderCursor (const QPointF &pos, Qt::KeyboardModifiers modifiers)
 
void mouseMoveEvent (KoPointerEvent *event) override
 
QMenu * popupActionsMenu () override
 
KisPopupWidgetInterfacepopupWidget () override
 
SampleLayersMode sampleLayersMode () const
 
SelectionAction selectionAction () const
 
bool selectionDidMove () const
 
SelectionMode selectionMode () const
 
KisSelectionOptionsselectionOptionWidget ()
 
virtual void setAlternateSelectionAction (SelectionAction action)
 
bool stopGrowingAtDarkestPixel () const
 
void updateActionShortcutToolTips ()
 
void updateCursorDelayed ()
 
- Public Member Functions inherited from KisDelegatedSelectPathWrapper
void beginPrimaryAction (KoPointerEvent *event) override
 
void beginPrimaryDoubleClickAction (KoPointerEvent *event) override
 
void continuePrimaryAction (KoPointerEvent *event) override
 
void endPrimaryAction (KoPointerEvent *event) override
 
 KisDelegatedSelectPathWrapper (KoCanvasBase *canvas, const QCursor &cursor, KoToolBase *delegateTool)
 
void mouseDoubleClickEvent (KoPointerEvent *event) override
 
void mouseMoveEvent (KoPointerEvent *event) override
 
void mousePressEvent (KoPointerEvent *event) override
 
void mouseReleaseEvent (KoPointerEvent *event) override
 
- Public Member Functions inherited from KisDelegatedTool< BaseClass, DelegateTool, ActivationPolicy >
void activate (const QSet< KoShape * > &shapes) override
 
QList< QPointer< QWidget > > createOptionWidgets () override
 
void deactivate () override
 
 KisDelegatedTool (KoCanvasBase *canvas, const QCursor &cursor, DelegateTool *delegateTool)
 
DelegateTool * localTool () const
 
void mouseDoubleClickEvent (KoPointerEvent *event) override
 
void mouseMoveEvent (KoPointerEvent *event) override
 
void mousePressEvent (KoPointerEvent *event) override
 
void mouseReleaseEvent (KoPointerEvent *event) override
 
void paint (QPainter &painter, const KoViewConverter &converter) override
 

Protected Member Functions

QList< QPointer< QWidget > > createOptionWidgets () override
 
void requestStrokeCancellation () override
 
void requestStrokeEnd () override
 
- Protected Member Functions inherited from KisToolSelectBase< KisDelegatedSelectPathWrapper >
virtual bool isPixelOnly () const
 
virtual bool usesColorLabels () const
 

Friends

class __KisToolSelectPathLocalTool
 

Additional Inherited Members

- Public Types inherited from KisToolSelectBase< KisDelegatedSelectPathWrapper >
enum  SampleLayersMode
 
- Protected Attributes inherited from KisToolSelectBase< KisDelegatedSelectPathWrapper >
SelectionAction m_selectionActionAlternate
 
KisSelectionToolConfigWidgetHelper m_widgetHelper
 
- Protected Attributes inherited from KisDelegatedTool< BaseClass, DelegateTool, ActivationPolicy >
QScopedPointer< DelegateTool > m_localTool
 

Detailed Description

Definition at line 68 of file kis_tool_select_path.h.

Constructor & Destructor Documentation

◆ KisToolSelectPath()

KisToolSelectPath::KisToolSelectPath ( KoCanvasBase * canvas)

Definition at line 25 of file kis_tool_select_path.cc.

27 KisCursor::load("tool_polygonal_selection_cursor.png", 6, 6),
28 i18n("Select path"),
29 new __KisToolSelectPathLocalTool(canvas, this))
30{}
static QCursor load(const QString &cursorName, int hotspotX=-1, int hotspotY=-1)
friend class __KisToolSelectPathLocalTool

Member Function Documentation

◆ createOptionWidgets()

QList< QPointer< QWidget > > KisToolSelectPath::createOptionWidgets ( )
overrideprotected

Definition at line 67 of file kis_tool_select_path.cc.

68{
69 QList<QPointer<QWidget> > widgetsList =
71 QList<QPointer<QWidget> > filteredWidgets;
72 Q_FOREACH (QWidget* widget, widgetsList) {
73 if (widget->objectName() != "Stroke widget") {
74 filteredWidgets.push_back(widget);
75 }
76 }
77 return filteredWidgets;
78}
QList< QPointer< QWidget > > createOptionWidgets() override

References KisDelegatedTool< BaseClass, DelegateTool, ActivationPolicy >::createOptionWidgets().

◆ eventFilter()

bool KisToolSelectPath::eventFilter ( QObject * obj,
QEvent * event )
override

Definition at line 44 of file kis_tool_select_path.cc.

45{
46 Q_UNUSED(obj);
47 if (!localTool()->pathStarted()) {
48 return false;
49 }
50 if (event->type() == QEvent::MouseButtonPress ||
51 event->type() == QEvent::MouseButtonDblClick) {
52 QMouseEvent *mouseEvent = static_cast<QMouseEvent*>(event);
53 if (mouseEvent->button() == Qt::RightButton && isSelecting()) {
54 localTool()->removeLastPoint();
55 return true;
56 }
57 } else if (event->type() == QEvent::TabletPress) {
58 QTabletEvent *tabletEvent = static_cast<QTabletEvent*>(event);
59 if (tabletEvent->button() == Qt::RightButton && isSelecting()) {
60 localTool()->removeLastPoint();
61 return true;
62 }
63 }
64 return false;
65}
DelegateTool * localTool() const

References KisToolSelectBase< KisDelegatedSelectPathWrapper >::isSelecting(), and KisDelegatedTool< BaseClass, DelegateTool, ActivationPolicy >::localTool().

◆ requestStrokeCancellation()

void KisToolSelectPath::requestStrokeCancellation ( )
overrideprotected

Definition at line 37 of file kis_tool_select_path.cc.

38{
39 localTool()->cancelPath();
40}

References KisDelegatedTool< BaseClass, DelegateTool, ActivationPolicy >::localTool().

◆ requestStrokeEnd()

void KisToolSelectPath::requestStrokeEnd ( )
overrideprotected

Definition at line 32 of file kis_tool_select_path.cc.

33{
34 localTool()->endPathWithoutLastPoint();
35}

References KisDelegatedTool< BaseClass, DelegateTool, ActivationPolicy >::localTool().

◆ resetCursorStyle()

void KisToolSelectPath::resetCursorStyle ( )
override

Definition at line 254 of file kis_tool_select_path.cc.

255{
257 useCursor(KisCursor::load("tool_polygonal_selection_cursor_add.png", 6, 6));
258 } else if (selectionAction() == SELECTION_SUBTRACT) {
259 useCursor(KisCursor::load("tool_polygonal_selection_cursor_sub.png", 6, 6));
260 } else if (selectionAction() == SELECTION_INTERSECT) {
261 useCursor(KisCursor::load("tool_polygonal_selection_cursor_inter.png", 6, 6));
263 useCursor(KisCursor::load("tool_polygonal_selection_cursor_symdiff.png", 6, 6));
264 } else {
266 }
267}
@ SELECTION_INTERSECT
@ SELECTION_SYMMETRICDIFFERENCE
@ SELECTION_SUBTRACT
@ SELECTION_ADD

References KisCursor::load(), SELECTION_ADD, SELECTION_INTERSECT, SELECTION_SUBTRACT, SELECTION_SYMMETRICDIFFERENCE, and KisToolSelectBase< KisDelegatedSelectPathWrapper >::selectionAction().

Friends And Related Symbol Documentation

◆ __KisToolSelectPathLocalTool

friend class __KisToolSelectPathLocalTool
friend

Definition at line 79 of file kis_tool_select_path.h.


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