Krita Source Code Documentation
Loading...
Searching...
No Matches
KisStrokeBrushSelectionActionFactory Struct Reference

#include <kis_selection_action_factories.h>

+ Inheritance diagram for KisStrokeBrushSelectionActionFactory:

Public Member Functions

 KisStrokeBrushSelectionActionFactory ()
 
void run (KisViewManager *view, const StrokeSelectionOptions &params)
 
- Public Member Functions inherited from KisOperation
QString id () const
 
 KisOperation (const QString &id)
 
virtual void runFromXML (KisViewManager *view, const KisOperationConfiguration &config)
 
virtual ~KisOperation ()
 

Additional Inherited Members

- Public Types inherited from KisOperation
enum  Flag { Normal = 0x0 , ReadOnly = 0x1 }
 
- Protected Member Functions inherited from KisOperation
KisProcessingApplicator * beginAction (KisViewManager *view, const KUndo2MagicString &actionName, Flags flags=Normal)
 
void endAction (KisProcessingApplicator *applicator, const QString &xmlData)
 

Detailed Description

Definition at line 113 of file kis_selection_action_factories.h.

Constructor & Destructor Documentation

◆ KisStrokeBrushSelectionActionFactory()

KisStrokeBrushSelectionActionFactory::KisStrokeBrushSelectionActionFactory ( )
inline

Definition at line 114 of file kis_selection_action_factories.h.

114: KisOperation("selection-to-shape-action") {}
KisOperation(const QString &id)

Member Function Documentation

◆ run()

void KisStrokeBrushSelectionActionFactory::run ( KisViewManager * view,
const StrokeSelectionOptions & params )

Definition at line 588 of file kis_selection_action_factories.cpp.

589{
590 KisImageWSP image = view->image();
591 if (!image) {
592 return;
593 }
594
595 KisSelectionSP selection = view->selection();
596 if (!selection) {
597 return;
598 }
599
600 KisPixelSelectionSP pixelSelection = selection->projection();
601 if (!pixelSelection->outlineCacheValid()) {
602 pixelSelection->recalculateOutlineCache();
603 }
604
606 if (!currentNode->inherits("KisShapeLayer") && currentNode->paintDevice())
607 {
609 QPainterPath outline = pixelSelection->outlineCache();
612 KoColor color = params.color;
613
614 KisFigurePaintingToolHelper helper(kundo2_i18n("Draw Polyline"),
615 image,
616 currentNode,
617 rManager,
618 strokeStyle,
619 fillStyle);
620 helper.setFGColorOverride(color);
621 helper.setSelectionOverride(0);
622 helper.paintPainterPath(outline);
623 }
624}
KoCanvasResourceProvider * resourceManager()
KisSelectionSP selection()
KisImageWSP image() const
Return the image this view is displaying.
KisCanvasResourceProvider * canvasResourceProvider()
KUndo2MagicString kundo2_i18n(const char *text)
virtual KisPaintDeviceSP paintDevice() const =0
void recalculateOutlineCache() override
KisPixelSelectionSP projection() const

References KisViewManager::canvasResourceProvider(), StrokeSelectionOptions::color, KoCanvasResource::CurrentKritaNode, KisToolShapeUtils::FillStyleNone, KisViewManager::image(), kundo2_i18n(), KisPixelSelection::outlineCache, KisPixelSelection::outlineCacheValid, KisBaseNode::paintDevice(), KisFigurePaintingToolHelper::paintPainterPath(), KisSelection::projection(), KisPixelSelection::recalculateOutlineCache(), KoCanvasResourceProvider::resource(), KisCanvasResourceProvider::resourceManager(), KisViewManager::selection(), KisFigurePaintingToolHelper::setFGColorOverride(), KisFigurePaintingToolHelper::setSelectionOverride(), and KisToolShapeUtils::StrokeStyleForeground.


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