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

#include <KisSampleScreenColor.h>

+ Inheritance diagram for KisSampleScreenColor:

Public Member Functions

 KisSampleScreenColor (QObject *parent, const QVariantList &)
 
 ~KisSampleScreenColor () override
 
- Public Member Functions inherited from KisActionPlugin
 KisActionPlugin (QObject *parent=0)
 
 ~KisActionPlugin () override
 

Private Slots

void slotSampleScreenColor (bool sampleRealCanvas)
 

Private Attributes

bool m_lastSampleRealCanvas
 
KisScreenColorSamplerm_screenColorSampler {nullptr}
 

Additional Inherited Members

- Protected Member Functions inherited from KisActionPlugin
void addAction (const QString &name, KisAction *action)
 
void addOperation (KisOperation *operation)
 
void addUIFactory (KisOperationUIFactory *factory)
 
KisActioncreateAction (const QString &name)
 
QPointer< KisViewManagerviewManager () const
 

Detailed Description

Definition at line 18 of file KisSampleScreenColor.h.

Constructor & Destructor Documentation

◆ KisSampleScreenColor()

KisSampleScreenColor::KisSampleScreenColor ( QObject * parent,
const QVariantList &  )

Definition at line 18 of file KisSampleScreenColor.cpp.

19 : KisActionPlugin(parent)
20{
21 KisAction *action = createAction("sample_screen_color");
22 connect(action, &QAction::triggered, [this](){ slotSampleScreenColor(false); });
23
24 action = createAction("sample_screen_color_real_canvas");
25 connect(action, &QAction::triggered, [this](){ slotSampleScreenColor(true); });
26}
connect(this, SIGNAL(optionsChanged()), this, SLOT(saveOptions()))
KisAction * createAction(const QString &name)
KisActionPlugin(QObject *parent=0)
void slotSampleScreenColor(bool sampleRealCanvas)

References connect().

◆ ~KisSampleScreenColor()

KisSampleScreenColor::~KisSampleScreenColor ( )
override

Definition at line 28 of file KisSampleScreenColor.cpp.

29{}

Member Function Documentation

◆ slotSampleScreenColor

void KisSampleScreenColor::slotSampleScreenColor ( bool sampleRealCanvas)
privateslot

Definition at line 31 of file KisSampleScreenColor.cpp.

32{
34 // The action will cancel the previous one if it is still active
36 // If the new action type is the same as the previous, cancelling is
37 // enough, so we return. Otherwise, a new operation is started
38 if (sampleRealCanvas == m_lastSampleRealCanvas) {
39 return;
40 }
41 }
42
43 m_lastSampleRealCanvas = sampleRealCanvas;
46 m_screenColorSampler->setCurrentColor(viewManager()->canvasResourceProvider()->fgColor());
47 // screenColorSampler is a temporary top level widget own by no other
48 // QObject, so it must be automatically deleted when it is closed
49 m_screenColorSampler->setAttribute(Qt::WA_DeleteOnClose);
51 [this](KoColor sampledColor)
52 {
53 viewManager()->canvasResourceProvider()->slotSetFGColor(sampledColor);
54 m_screenColorSampler->close();
55 m_screenColorSampler = nullptr;
56 }
57 );
59 [this](KoColor sampledColor)
60 {
61 viewManager()->canvasResourceProvider()->slotSetFGColor(sampledColor);
62 }
63 );
65}
QPointer< KisViewManager > viewManager() const
KisScreenColorSampler * m_screenColorSampler
The KisScreenColorSampler class Based on the original QColorDialog's screen color picker,...
void sigNewColorHovered(KoColor c)
void sigNewColorSampled(KoColor c)
void setPerformRealColorSamplingOfCanvas(bool enable)

References KisScreenColorSampler::cancel(), connect(), m_lastSampleRealCanvas, m_screenColorSampler, KisScreenColorSampler::sampleScreenColor(), KisScreenColorSampler::setCurrentColor(), KisScreenColorSampler::setPerformRealColorSamplingOfCanvas(), KisScreenColorSampler::sigNewColorHovered(), KisScreenColorSampler::sigNewColorSampled(), and KisActionPlugin::viewManager().

Member Data Documentation

◆ m_lastSampleRealCanvas

bool KisSampleScreenColor::m_lastSampleRealCanvas
private

Definition at line 31 of file KisSampleScreenColor.h.

◆ m_screenColorSampler

KisScreenColorSampler* KisSampleScreenColor::m_screenColorSampler {nullptr}
private

Definition at line 30 of file KisSampleScreenColor.h.

30{nullptr};

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