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
 
KisPopupWidgetInterface * popupWidget () override
 
SampleLayersMode sampleLayersMode () const
 
SelectionAction selectionAction () const
 
bool selectionDidMove () const
 
SelectionMode selectionMode () const
 
KisSelectionOptions * selectionOptionWidget ()
 
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::loadWithSize("tool_polygonal_selection_cursor.svg", 32, 32, 6, 6),
28 i18n("Select path"),
29 new __KisToolSelectPathLocalTool(canvas, this))
30{}
static QCursor loadWithSize(const QString &cursorName, int width, int height, 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::loadWithSize("tool_polygonal_selection_cursor_add.svg", 32, 32, 6, 6));
258 } else if (selectionAction() == SELECTION_SUBTRACT) {
259 useCursor(KisCursor::loadWithSize("tool_polygonal_selection_cursor_sub.svg", 32, 32, 6, 6));
260 } else if (selectionAction() == SELECTION_INTERSECT) {
261 useCursor(KisCursor::loadWithSize("tool_polygonal_selection_cursor_inter.svg", 32, 32, 6, 6));
263 useCursor(KisCursor::loadWithSize("tool_polygonal_selection_cursor_symdiff.svg", 32, 32, 6, 6));
264 } else {
266 }
267}
@ SELECTION_INTERSECT
@ SELECTION_SYMMETRICDIFFERENCE
@ SELECTION_SUBTRACT
@ SELECTION_ADD

References KisCursor::loadWithSize(), 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: