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

#include <KisDecorationsManager.h>

+ Inheritance diagram for KisDecorationsManager:

Public Member Functions

 KisDecorationsManager (KisViewManager *view)
 
void setup (KisActionManager *actionManager)
 
void setView (QPointer< KisView > imageView)
 
 ~KisDecorationsManager () override
 

Private Slots

void updateAction ()
 

Private Member Functions

KisPaintingAssistantsDecorationSP assistantsDecoration () const
 
KisReferenceImagesDecorationSP referenceImagesDecoration () const
 

Private Attributes

QPointer< KisViewm_imageView
 
KisActionm_toggleAssistant {nullptr}
 
KisActionm_togglePreview {nullptr}
 
KisActionm_toggleReferenceImages {nullptr}
 

Detailed Description

Definition at line 22 of file KisDecorationsManager.h.

Constructor & Destructor Documentation

◆ KisDecorationsManager()

KisDecorationsManager::KisDecorationsManager ( KisViewManager * view)

Definition at line 23 of file KisDecorationsManager.cpp.

24 : QObject(view)
25 , m_imageView(0)
26{
27}
QPointer< KisView > m_imageView

◆ ~KisDecorationsManager()

KisDecorationsManager::~KisDecorationsManager ( )
override

Definition at line 29 of file KisDecorationsManager.cpp.

30{
31}

Member Function Documentation

◆ assistantsDecoration()

KisPaintingAssistantsDecorationSP KisDecorationsManager::assistantsDecoration ( ) const
private

Definition at line 110 of file KisDecorationsManager.cpp.

111{
112 if (m_imageView) {
113 return m_imageView->canvasBase()->paintingAssistantsDecoration();
114 }
115 return 0;
116}

References m_imageView.

◆ referenceImagesDecoration()

KisReferenceImagesDecorationSP KisDecorationsManager::referenceImagesDecoration ( ) const
private

Definition at line 118 of file KisDecorationsManager.cpp.

119{
120 if (m_imageView) {
121 return m_imageView->canvasBase()->referenceImagesDecoration();
122 }
123 return 0;
124}

References m_imageView.

◆ setup()

void KisDecorationsManager::setup ( KisActionManager * actionManager)

Definition at line 33 of file KisDecorationsManager.cpp.

34{
35 m_toggleAssistant = actionManager->createAction("view_toggle_painting_assistants");
36 m_togglePreview = actionManager->createAction("view_toggle_assistant_previews");
37 m_toggleReferenceImages = actionManager->createAction("view_toggle_reference_images");
38
40}
KisAction * createAction(const QString &name)

References KisActionManager::createAction(), m_toggleAssistant, m_togglePreview, m_toggleReferenceImages, and updateAction().

◆ setView()

void KisDecorationsManager::setView ( QPointer< KisView > imageView)

Definition at line 42 of file KisDecorationsManager.cpp.

43{
44
45 // set view is called twice when a document is open, so we need to disconnect the original signals
46 // if m_imageView has already been created. This prevents double signal events firing
47 if (m_imageView) {
48 m_toggleAssistant->disconnect();
49 m_togglePreview->disconnect();
50
52 assistantsDecoration()->disconnect(this);
53 }
55 referenceImagesDecoration()->disconnect(this);
56 }
57 }
58
59 m_imageView = imageView;
60
63 m_imageView->canvasBase()->addDecoration(deco);
64 }
65
68 m_imageView->canvasBase()->addDecoration(deco);
69 }
70
72 connect(m_toggleAssistant, SIGNAL(triggered()), assistantsDecoration(), SLOT(toggleAssistantVisible()));
73 connect(m_togglePreview, SIGNAL(triggered()), assistantsDecoration(), SLOT(toggleOutlineVisible()));
74 connect(assistantsDecoration(), SIGNAL(assistantChanged()), SLOT(updateAction()));
78 m_imageView->canvasBase(), QOverload<>::of(&KisCanvas2::updateCanvas));
79
82 }
83
85 connect(m_toggleReferenceImages, SIGNAL(triggered(bool)), referenceImagesDecoration(), SLOT(setVisible(bool)), Qt::UniqueConnection);
86 }
87
88
90}
connect(this, SIGNAL(optionsChanged()), this, SLOT(saveOptions()))
void updateCanvas()
Update the entire canvas area.
static KisConfigNotifier * instance()
void configChanged(void)
KisReferenceImagesDecorationSP referenceImagesDecoration() const
KisPaintingAssistantsDecorationSP assistantsDecoration() const
void sigAssistantsChanged()
The KisReferenceImagesDecoration class draws the reference images on the canvas. The document stores ...

References assistantsDecoration(), KisConfigNotifier::configChanged(), connect(), KisConfigNotifier::instance(), m_imageView, m_toggleAssistant, m_togglePreview, m_toggleReferenceImages, referenceImagesDecoration(), KisDocument::sigAssistantsChanged(), KisPaintingAssistantsDecoration::slotConfigChanged(), KisPaintingAssistantsDecoration::slotUpdateDecorationVisibility(), updateAction(), and KisCanvas2::updateCanvas().

◆ updateAction

void KisDecorationsManager::updateAction ( )
privateslot

Definition at line 92 of file KisDecorationsManager.cpp.

93{
95 bool enabled = !assistantsDecoration()->assistants().isEmpty();
96 m_toggleAssistant->setChecked(assistantsDecoration()->assistantVisibility());
97 m_toggleAssistant->setEnabled(enabled);
98 m_togglePreview->setChecked(assistantsDecoration()->outlineVisibility());
99 m_togglePreview->setEnabled(enabled);
100 } else {
101 m_toggleAssistant->setEnabled(false);
102 }
103
105 m_toggleReferenceImages->setEnabled(referenceImagesDecoration()->documentHasReferenceImages());
106 m_toggleReferenceImages->setChecked(referenceImagesDecoration()->visible());
107 }
108}
QList< KisPaintingAssistantSP > assistants() const

References KisPaintingAssistantsDecoration::assistants(), assistantsDecoration(), m_toggleAssistant, m_togglePreview, m_toggleReferenceImages, and referenceImagesDecoration().

Member Data Documentation

◆ m_imageView

QPointer<KisView> KisDecorationsManager::m_imageView
private

Definition at line 41 of file KisDecorationsManager.h.

◆ m_toggleAssistant

KisAction* KisDecorationsManager::m_toggleAssistant {nullptr}
private

Definition at line 43 of file KisDecorationsManager.h.

43{nullptr};

◆ m_togglePreview

KisAction* KisDecorationsManager::m_togglePreview {nullptr}
private

Definition at line 44 of file KisDecorationsManager.h.

44{nullptr};

◆ m_toggleReferenceImages

KisAction* KisDecorationsManager::m_toggleReferenceImages {nullptr}
private

Definition at line 46 of file KisDecorationsManager.h.

46{nullptr};

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