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

#include <kis_tool_select_elliptical.h>

+ Inheritance diagram for KisToolSelectElliptical:

Public Member Functions

 KisToolSelectElliptical (KoCanvasBase *canvas)
 
void resetCursorStyle () override
 
- Public Member Functions inherited from KisToolSelectBase< __KisToolSelectEllipticalLocal >
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 __KisToolSelectEllipticalLocal
 __KisToolSelectEllipticalLocal (KoCanvasBase *canvas)
 
- Public Member Functions inherited from KisToolEllipseBase
 KisToolEllipseBase (KoCanvasBase *canvas, KisToolEllipseBase::ToolType type, const QCursor &cursor=KisCursor::load("tool_ellipse_cursor.png", 6, 6))
 
void paintRectangle (QPainter &gc, const QRectF &imageRect) override
 
- Public Member Functions inherited from KisToolRectangleBase
QList< QPointer< QWidget > > createOptionWidgets () override
 
 KisToolRectangleBase (KoCanvasBase *canvas, KisToolRectangleBase::ToolType type, const QCursor &cursor=KisCursor::load("tool_rectangle_cursor.png", 6, 6))
 
void paint (QPainter &gc, const KoViewConverter &converter) override
 
void showSize ()
 
- Public Member Functions inherited from KisToolShape
int flags () const override
 
 KisToolShape (KoCanvasBase *canvas, const QCursor &cursor)
 
 ~KisToolShape () override
 
- Public Member Functions inherited from KisToolPaint
 KisToolPaint (KoCanvasBase *canvas, const QCursor &cursor)
 
void mousePressEvent (KoPointerEvent *event) override
 
void mouseReleaseEvent (KoPointerEvent *event) override
 
 ~KisToolPaint () override
 
- Public Member Functions inherited from KisTool
virtual bool alternateActionSupportsHiResEvents (AlternateAction action) const
 
virtual void beginAlternateDoubleClickAction (KoPointerEvent *event, AlternateAction action)
 
virtual void beginPrimaryDoubleClickAction (KoPointerEvent *event)
 
void deleteSelection () override
 
bool isActive () const
 
 KisTool (KoCanvasBase *canvas, const QCursor &cursor)
 
void mouseDoubleClickEvent (KoPointerEvent *event) override
 
void mouseTripleClickEvent (KoPointerEvent *event) override
 
virtual void newActivationWithExternalSource (KisPaintDeviceSP externalSource)
 newActivationWithExternalSource Makes sure that the tool is active and starts a new stroke, which will be able to access the pixels from the specified external source.
 
KisTool::NodePaintAbility nodePaintAbility ()
 
virtual bool primaryActionSupportsHiResEvents () const
 
virtual bool supportsPaintingAssistants () const
 
 ~KisTool () override
 
- Public Member Functions inherited from Private
 Private (KisCanvas2 *c)
 
- Public Member Functions inherited from KoToolBase
QAction * action (const QString &name) const
 
KoCanvasBasecanvas () const
 Returns the canvas the tool is working on.
 
virtual void copy () const
 
QCursor cursor () const
 return the last emitted cursor
 
virtual void customMoveEvent (KoPointerEvent *event)
 
virtual void customPressEvent (KoPointerEvent *event)
 
virtual void customReleaseEvent (KoPointerEvent *event)
 
virtual void cut ()
 
virtual QRectF decorationsRect () const
 
int decorationThickness () const
 decorationThickness The minimum thickness for tool decoration lines, this is derived from the screen magnification, thus the HiDPI settings. Note: to use this effectively, also set the pen to isCosmetic(true);
 
virtual void deselect ()
 deselect the tool should clear the selection if it has one.
 
virtual void dragLeaveEvent (QDragLeaveEvent *event)
 
virtual void dragMoveEvent (QDragMoveEvent *event, const QPointF &point)
 
virtual void dropEvent (QDropEvent *event, const QPointF &point)
 
virtual void explicitUserStrokeEndRequest ()
 explicitUserStrokeEndRequest is called by the input manager when the user presses Enter key or any equivalent. This callback comes before requestStrokeEnd(), which comes from a different source.
 
KoToolFactoryBasefactory () const
 
virtual void focusInEvent (QFocusEvent *event)
 
virtual void focusOutEvent (QFocusEvent *event)
 
virtual bool hasSelection ()
 
virtual void inputMethodEvent (QInputMethodEvent *event)
 
virtual QVariant inputMethodQuery (Qt::InputMethodQuery query) const
 
bool isInTextMode () const
 
bool isOpacityPresetMode () const
 
 KoToolBase (KoCanvasBase *canvas)
 
bool maskSyntheticEvents () const
 
QList< QPointer< QWidget > > optionWidgets ()
 
virtual bool paste ()
 
virtual bool selectAll ()
 selectAll select all data the tool can select.
 
virtual KoToolSelectionselection ()
 
Q_INVOKABLE QString toolId () const
 
virtual bool wantsAutoScroll () const
 
 ~KoToolBase () override
 

Private Member Functions

void beginShape () override
 
void endShape () override
 
void finishRect (const QRectF &rect, qreal roundCornersX, qreal roundCornersY) override
 

Additional Inherited Members

- Public Types inherited from KisToolSelectBase< __KisToolSelectEllipticalLocal >
enum  SampleLayersMode
 
- Public Types inherited from KisToolRectangleBase
enum  ToolType { PAINT , SELECT }
 
- Public Types inherited from KisTool
enum  { FLAG_USES_CUSTOM_PRESET =0x01 , FLAG_USES_CUSTOM_COMPOSITEOP =0x02 , FLAG_USES_CUSTOM_SIZE =0x04 }
 
enum  AlternateAction {
  ChangeSize = AlternateChangeSize , ChangeSizeSnap = AlternateChangeSizeSnap , SampleFgNode = AlternateSampleFgNode , SampleBgNode = AlternateSampleBgNode ,
  SampleFgImage = AlternateSampleFgImage , SampleBgImage = AlternateSampleBgImage , Secondary = AlternateSecondary , Third = AlternateThird ,
  Fourth = AlternateFourth , Fifth = AlternateFifth , NONE = 10000
}
 
enum  NodePaintAbility {
  VECTOR , CLONE , PAINT , UNPAINTABLE ,
  MYPAINTBRUSH_UNPAINTABLE
}
 
enum  ToolAction {
  Primary , AlternateChangeSize , AlternateChangeSizeSnap , AlternateSampleFgNode ,
  AlternateSampleBgNode , AlternateSampleFgImage , AlternateSampleBgImage , AlternateSecondary ,
  AlternateThird , AlternateFourth , AlternateFifth , Alternate_NONE = 10000
}
 
- Public Slots inherited from KisToolRectangleBase
void constraintsChanged (bool forceRatio, bool forceWidth, bool forceHeight, float ratio, float width, float height)
 
void requestStrokeCancellation () override
 
void requestStrokeEnd () override
 
void roundCornersChanged (int rx, int ry)
 
- Public Slots inherited from KisToolShape
void activate (const QSet< KoShape * > &shapes) override
 
virtual void fillSettingChanged (int value)
 
virtual void outlineSettingChanged (int value)
 
virtual void patternRotationSettingChanged (qreal value)
 
virtual void patternScaleSettingChanged (qreal value)
 
- Public Slots inherited from KisToolPaint
void activate (const QSet< KoShape * > &shapes) override
 
void deactivate () override
 
- Public Slots inherited from KisTool
void activate (const QSet< KoShape * > &shapes) override
 
void canvasResourceChanged (int key, const QVariant &res) override
 
void deactivate () override
 
virtual void updateSettingsViews ()
 
- Public Slots inherited from KoToolBase
virtual void documentResourceChanged (int key, const QVariant &res)
 
virtual void repaintDecorations ()
 
virtual void requestRedoDuringStroke ()
 
virtual void requestStrokeCancellation ()
 
virtual void requestStrokeEnd ()
 
virtual void requestUndoDuringStroke ()
 
void setStatusText (const QString &statusText)
 
void updateOptionsWidgetIcons ()
 
- Signals inherited from KisToolRectangleBase
void rectangleChanged (const QRectF &newRect)
 
void sigRequestReloadConfig ()
 
- Signals inherited from KisToolPaint
void sigPaintingFinished ()
 
- Signals inherited from KisTool
void isActiveChanged (bool isActivated)
 
- Signals inherited from KoToolBase
void activateTool (const QString &id)
 
void cursorChanged (const QCursor &cursor)
 
void selectionChanged (bool hasSelection)
 
void statusTextChanged (const QString &statusText)
 
void textModeChanged (bool inTextMode)
 
- Static Public Member Functions inherited from KisTool
static AlternateAction actionToAlternateAction (ToolAction action)
 
- Public Attributes inherited from KisToolShape
WdgGeometryOptionsm_shapeOptionsWidget
 
- Public Attributes inherited from KisTool
KoColor currentBgColor
 
float currentExposure {1.0}
 
KoColor currentFgColor
 
KisFilterConfigurationSP currentGenerator
 
KoAbstractGradientSP currentGradient
 
KoPatternSP currentPattern
 
QCursor cursor
 
bool m_isActive {false}
 
ToolMode m_mode {HOVER_MODE}
 
QWidget * optionWidget {0}
 
- Public Attributes inherited from Private
KisCanvas2canvas
 
int displayedFrame
 
int intendedFrame
 
- Protected Types inherited from KisTool
enum  ToolMode : int {
  HOVER_MODE , PAINT_MODE , SECONDARY_PAINT_MODE , MIRROR_AXIS_SETUP_MODE ,
  GESTURE_MODE , PAN_MODE , OTHER , OTHER_1
}
 
- Protected Slots inherited from KisTool
- Protected Member Functions inherited from KisToolSelectBase< __KisToolSelectEllipticalLocal >
virtual bool isPixelOnly () const
 
virtual bool usesColorLabels () const
 
- Protected Member Functions inherited from KisToolEllipseBase
bool showRoundCornersGUI () const override
 
- Protected Member Functions inherited from KisToolRectangleBase
void applyConstraints (QSizeF &area, bool overrideRatio)
 
void cancelStroke ()
 
virtual QRectF createRect (const QPointF &start, const QPointF &end)
 
QPainterPath drawX (const QPointF &pt)
 
void endStroke ()
 
void getRotatedPath (QPainterPath &path, const QPointF &center, const qreal &angle)
 
qreal getRotationAngle ()
 
bool isFixedSize ()
 
void updateArea ()
 
- Protected Member Functions inherited from KisToolShape
void addPathShape (KoPathShape *pathShape, const KUndo2MagicString &name)
 
void addShape (KoShape *shape)
 
QWidget * createOptionWidget () override
 
qreal currentStrokeWidth () const
 
KisToolShapeUtils::FillStyle fillStyle ()
 
QTransform fillTransform ()
 
ShapeAddInfo shouldAddShape (KisNodeSP currentNode) const
 
KisToolShapeUtils::StrokeStyle strokeStyle ()
 
- Protected Member Functions inherited from KisToolPaint
void activatePrimaryAction () override
 
void addOptionWidgetLayout (QLayout *layout)
 Add the tool-specific layout to the default option widget layout.
 
virtual void addOptionWidgetOption (QWidget *control, QWidget *label=nullptr)
 Add a widget and a label to the current option widget layout.
 
void canvasResourceChanged (int key, const QVariant &v) override
 
void deactivatePrimaryAction () override
 
void enableControl (QWidget *control, bool value)
 
virtual KisOptimizedBrushOutline getOutlinePath (const QPointF &documentPos, const KoPointerEvent *event, KisPaintOpSettings::OutlineMode outlineMode)
 
bool isEraser () const
 
bool isOutlineEnabled () const
 
bool isOutlineVisible () const
 
virtual QString quickHelp () const
 
virtual void requestUpdateOutline (const QPointF &outlineDocPoint, const KoPointerEvent *event)
 
void setMode (ToolMode mode) override
 
void setOutlineEnabled (bool enabled)
 
void setOutlineVisible (bool visible)
 
void setSupportOutline (bool supportOutline)
 
void showControl (QWidget *control, bool value)
 
- Protected Member Functions inherited from KisTool
bool blockUntilOperationsFinished ()
 
void blockUntilOperationsFinishedForced ()
 
QPointF convertDocumentToWidget (const QPointF &pt)
 
QPoint convertToImagePixelCoordFloored (KoPointerEvent *e)
 
QPointF convertToPixelCoord (const QPointF &pt)
 
QPointF convertToPixelCoord (KoPointerEvent *e)
 
QPointF convertToPixelCoordAndAlignOnWidget (const QPointF &pt)
 
QPointF convertToPixelCoordAndSnap (const QPointF &pt, const QPointF &offset=QPointF())
 
QPointF convertToPixelCoordAndSnap (KoPointerEvent *e, const QPointF &offset=QPointF(), bool useModifiers=true)
 
QRectF convertToPt (const QRectF &rect)
 
qreal convertToPt (qreal value)
 
KoColor currentBgColor ()
 
KoColor currentFgColor ()
 
KisFilterConfigurationSP currentGenerator ()
 
KoAbstractGradientSP currentGradient ()
 
KisImageWSP currentImage ()
 
KisNodeSP currentNode () const
 
KisPaintOpPresetSP currentPaintOpPreset ()
 
KoPatternSP currentPattern ()
 
QCursor cursor () const
 
KisImageWSP image () const
 
virtual bool listeningToModifiers ()
 
virtual void listenToModifiers (bool listen)
 
virtual ToolMode mode () const
 
bool nodeEditable ()
 Checks checks if the current node is editable.
 
bool overrideCursorIfNotEditable ()
 Override the cursor appropriately if current node is not editable.
 
void paintToolOutline (QPainter *painter, const KisOptimizedBrushOutline &path)
 
KisOptimizedBrushOutline pixelToView (const KisOptimizedBrushOutline &path) const
 
QPainterPath pixelToView (const QPainterPath &pixelPath) const
 Convert a pixel path into a view path.
 
QPointF pixelToView (const QPoint &pixelCoord) const
 
QPointF pixelToView (const QPointF &pixelCoord) const
 Convert a floating point pixel coordinate into a view coordinate.
 
QPolygonF pixelToView (const QPolygonF &pixelPolygon) const
 Convert a pixel polygon into a view path.
 
QRectF pixelToView (const QRectF &pixelRect) const
 Convert a pixel rectangle into a view rectangle.
 
KisNodeList selectedNodes () const
 
bool selectionEditable ()
 Checks checks if the selection is editable, only applies to local selection as global selection is always editable.
 
void setCursor (const QCursor &cursor)
 
void updateCanvasPixelRect (const QRectF &pixelRect)
 Update the canvas for the given rectangle in image pixel coordinates.
 
void updateCanvasViewRect (const QRectF &viewRect)
 Update the canvas for the given rectangle in view coordinates.
 
QPointF viewToPixel (const QPointF &viewCoord) const
 
QPointF widgetCenterInWidgetPixels ()
 
- Protected Member Functions inherited from KoToolBase
int grabSensitivity () const
 Convenience function to get the current grab sensitivity.
 
qreal handleDocRadius () const
 
QRectF handleGrabRect (const QPointF &position) const
 
QRectF handlePaintRect (const QPointF &position) const
 
int handleRadius () const
 Convenience function to get the current handle radius.
 
bool isActivated () const
 
 KoToolBase (KoToolBasePrivate &dd)
 
KoPointerEventlastDeliveredPointerEvent () const
 
void setAbstractResource (KoAbstractCanvasResourceInterfaceSP abstractResource)
 
void setConverter (KoDerivedResourceConverterSP converter)
 
void setIsOpacityPresetMode (bool value)
 
void setMaskSyntheticEvents (bool value)
 
void setTextMode (bool value)
 
QHash< int, KoAbstractCanvasResourceInterfaceSPtoolAbstractResources ()
 
QHash< int, KoDerivedResourceConverterSPtoolConverters ()
 
void useCursor (const QCursor &cursor)
 
- Protected Attributes inherited from KisToolSelectBase< __KisToolSelectEllipticalLocal >
SelectionAction m_selectionActionAlternate
 
KisSelectionToolConfigWidgetHelper m_widgetHelper
 
- Protected Attributes inherited from KisToolRectangleBase
qreal m_angle
 
qreal m_angleBuffer
 
Qt::KeyboardModifiers m_currentModifiers
 
QPointF m_dragCenter
 
QPointF m_dragEnd
 
QPointF m_dragStart
 
float m_forcedHeight
 
float m_forcedRatio
 
float m_forcedWidth
 
bool m_isHeightForced
 
bool m_isRatioForced
 
bool m_isWidthForced
 
qreal m_referenceAngle
 
bool m_rotateActive
 
int m_roundCornersX
 
int m_roundCornersY
 
ToolType m_type
 
- Protected Attributes inherited from KisToolShape
KConfigGroup m_configGroup
 
- Protected Attributes inherited from KisToolPaint
KisOptimizedBrushOutline m_currentOutline
 
QRectF m_oldColorPreviewUpdateRect
 
QRectF m_oldOutlineRect
 
QPointF m_outlineDocPoint
 
bool m_paintOutline {false}
 
- Protected Attributes inherited from KoToolBase
KoToolBasePrivated_ptr
 
- Properties inherited from KisTool
bool isActive
 

Detailed Description

Definition at line 31 of file kis_tool_select_elliptical.h.

Constructor & Destructor Documentation

◆ KisToolSelectElliptical()

KisToolSelectElliptical::KisToolSelectElliptical ( KoCanvasBase * canvas)

Definition at line 36 of file kis_tool_select_elliptical.cc.

Member Function Documentation

◆ beginShape()

void KisToolSelectElliptical::beginShape ( )
overrideprivatevirtual

Use these methods in subclassed to notify when the user starts and finishes making a shape, and override to be notified

Reimplemented from KisToolShape.

Definition at line 136 of file kis_tool_select_elliptical.cc.

References KisToolSelectBase< __KisToolSelectEllipticalLocal >::beginSelectInteraction().

◆ endShape()

void KisToolSelectElliptical::endShape ( )
overrideprivatevirtual

◆ finishRect()

void KisToolSelectElliptical::finishRect ( const QRectF & rect,
qreal roundCornersX,
qreal roundCornersY )
overrideprivatevirtual

Implements KisToolRectangleBase.

Definition at line 40 of file kis_tool_select_elliptical.cc.

41{
42 Q_UNUSED(roundCornersX);
43 Q_UNUSED(roundCornersY);
44
45 KisCanvas2 * kisCanvas = dynamic_cast<KisCanvas2*>(canvas());
46 Q_ASSERT(kisCanvas);
47
48 KisSelectionToolHelper helper(kisCanvas, kundo2_i18n("Select Ellipse"));
49
50 if (helper.tryDeselectCurrentSelection(pixelToView(rect), selectionAction())) {
51 return;
52 }
53
54 if (rect.isEmpty()) {
55 return;
56 }
57
58 const SelectionMode mode =
59 helper.tryOverrideSelectionMode(kisCanvas->viewManager()->selection(),
62
63 if (mode == PIXEL_SELECTION) {
68 kundo2_i18n("Select Ellipse"));
69
70 KisPixelSelectionSP tmpSel =
72
73 const bool antiAlias = antiAliasSelection();
74 const int grow = growSelection();
75 const int feather = featherSelection();
76
77 QPainterPath path;
78 path.addEllipse(rect);
79 getRotatedPath(path, rect.center(), getRotationAngle());
80
82 [tmpSel, antiAlias, grow, feather, path]() mutable
83 -> KUndo2Command * {
84 KisPainter painter(tmpSel);
85 painter.setPaintColor(KoColor(Qt::black, tmpSel->colorSpace()));
86 // Since the feathering already smooths the selection, the
87 // antiAlias is not applied if we must feather
88 painter.setAntiAliasPolygonFill(antiAlias && feather == 0);
89 painter.setFillStyle(KisPainter::FillStyleForegroundColor);
90 painter.setStrokeStyle(KisPainter::StrokeStyleNone);
91
92 painter.paintPainterPath(path);
93
94 if (grow > 0) {
95 KisGrowSelectionFilter biggy(grow, grow);
96 biggy.process(tmpSel,
97 tmpSel->selectedRect().adjusted(-grow,
98 -grow,
99 grow,
100 grow));
101 } else if (grow < 0) {
102 KisShrinkSelectionFilter tiny(-grow, -grow, false);
103 tiny.process(tmpSel, tmpSel->selectedRect());
104 }
105 if (feather > 0) {
106 KisFeatherSelectionFilter feathery(feather);
107 feathery.process(tmpSel,
108 tmpSel->selectedRect().adjusted(-feather,
109 -feather,
110 feather,
111 feather));
112 }
113
114 if (grow == 0 && feather == 0) {
115 tmpSel->setOutlineCache(path);
116 } else {
117 tmpSel->invalidateOutlineCache();
118 }
119
120 return 0;
121 });
122
123 applicator.applyCommand(cmd, KisStrokeJobData::SEQUENTIAL);
124 helper.selectPixelSelection(applicator, tmpSel, selectionAction());
125 applicator.end();
126
127 } else {
128 QRectF ptRect = convertToPt(rect);
130 shape->rotate(qRadiansToDegrees(getRotationAngle()));
131
132 helper.addSelectionShape(shape, selectionAction());
133 }
134}
QVector< KisImageSignalType > KisImageSignalVector
SelectionMode
@ PIXEL_SELECTION
KisViewManager * viewManager() const
const KoColorSpace * colorSpace() const
@ FillStyleForegroundColor
static KoShape * createEllipseShape(const QRectF &rect)
void getRotatedPath(QPainterPath &path, const QPointF &center, const qreal &angle)
KisSelectionSP selection()
void rotate(qreal angle)
Rotate the shape (relative)
Definition KoShape.cpp:250
KUndo2MagicString kundo2_i18n(const char *text)
The LambdaCommand struct is a shorthand for creation of AggregateCommand commands using C++ lambda fe...
void setOutlineCache(const QPainterPath &cache)
virtual ToolMode mode() const
Definition kis_tool.cc:407
KisImageWSP currentImage()
Definition kis_tool.cc:393
QPointF pixelToView(const QPoint &pixelCoord) const
Definition kis_tool.cc:269
KisNodeSP currentNode() const
Definition kis_tool.cc:370
QRectF convertToPt(const QRectF &rect)
Definition kis_tool.cc:252

References KisSelectionToolHelper::addSelectionShape(), KisToolSelectBase< __KisToolSelectEllipticalLocal >::antiAliasSelection(), KisProcessingApplicator::applyCommand(), Private::canvas, KisPaintDevice::colorSpace(), KisTool::convertToPt(), KisShapeToolHelper::createEllipseShape(), KisTool::currentImage(), KisTool::currentNode(), KisProcessingApplicator::end(), KisToolSelectBase< __KisToolSelectEllipticalLocal >::featherSelection(), KisPainter::FillStyleForegroundColor, KisToolRectangleBase::getRotatedPath(), KisToolRectangleBase::getRotationAngle(), KisToolSelectBase< __KisToolSelectEllipticalLocal >::growSelection(), KisPixelSelection::invalidateOutlineCache(), kundo2_i18n(), KisTool::mode(), KisProcessingApplicator::NONE, KisPainter::paintPainterPath(), PIXEL_SELECTION, KisTool::pixelToView(), KisFeatherSelectionFilter::process(), KisGrowSelectionFilter::process(), KisShrinkSelectionFilter::process(), KoShape::rotate(), KisPixelSelection::selectedRect(), KisViewManager::selection(), KisToolSelectBase< __KisToolSelectEllipticalLocal >::selectionAction(), KisToolSelectBase< __KisToolSelectEllipticalLocal >::selectionMode(), KisSelectionToolHelper::selectPixelSelection(), KisStrokeJobData::SEQUENTIAL, KisPainter::setAntiAliasPolygonFill(), KisPainter::setFillStyle(), KisPixelSelection::setOutlineCache(), KisPainter::setPaintColor(), KisPainter::setStrokeStyle(), KisPainter::StrokeStyleNone, KisSelectionToolHelper::tryDeselectCurrentSelection(), KisSelectionToolHelper::tryOverrideSelectionMode(), and KisCanvas2::viewManager().

◆ resetCursorStyle()

void KisToolSelectElliptical::resetCursorStyle ( )
overridevirtual

Called whenever the configuration settings change.

Reimplemented from KisTool.

Definition at line 146 of file kis_tool_select_elliptical.cc.

147{
149 useCursor(KisCursor::load("tool_elliptical_selection_cursor_add.png", 6, 6));
150 } else if (selectionAction() == SELECTION_SUBTRACT) {
151 useCursor(KisCursor::load("tool_elliptical_selection_cursor_sub.png", 6, 6));
152 } else if (selectionAction() == SELECTION_INTERSECT) {
153 useCursor(KisCursor::load("tool_elliptical_selection_cursor_inter.png", 6, 6));
155 useCursor(KisCursor::load("tool_elliptical_selection_cursor_symdiff.png", 6, 6));
156 } else {
158 }
159}
@ SELECTION_INTERSECT
@ SELECTION_SYMMETRICDIFFERENCE
@ SELECTION_SUBTRACT
@ SELECTION_ADD
static QCursor load(const QString &cursorName, int hotspotX=-1, int hotspotY=-1)
void useCursor(const QCursor &cursor)

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


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