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

#include <KisMoveBoundsCalculationJob.h>

+ Inheritance diagram for KisMoveBoundsCalculationJob:

Signals

void sigCalculationFinished (const QRect &bounds)
 

Public Member Functions

QString debugName () const override
 
 KisMoveBoundsCalculationJob (KisNodeList nodes, KisSelectionSP selection, QObject *requestedBy)
 
int levelOfDetail () const override
 
bool overrides (const KisSpontaneousJob *otherJob) override
 
void run () override
 
- Public Member Functions inherited from KisSpontaneousJob
bool isExclusive () const
 
- Public Member Functions inherited from KisRunnable
virtual ~KisRunnable ()
 

Private Attributes

KisNodeList m_nodes
 
QObject * m_requestedBy
 
KisSelectionSP m_selection
 

Additional Inherited Members

- Protected Member Functions inherited from KisSpontaneousJob
void setExclusive (bool value)
 

Detailed Description

Definition at line 15 of file KisMoveBoundsCalculationJob.h.

Constructor & Destructor Documentation

◆ KisMoveBoundsCalculationJob()

KisMoveBoundsCalculationJob::KisMoveBoundsCalculationJob ( KisNodeList nodes,
KisSelectionSP selection,
QObject * requestedBy )

Definition at line 12 of file KisMoveBoundsCalculationJob.cpp.

15 : m_nodes(nodes),
16 m_selection(selection),
17 m_requestedBy(requestedBy)
18{
19 setExclusive(true);
20}
void setExclusive(bool value)

References KisSpontaneousJob::setExclusive().

Member Function Documentation

◆ debugName()

QString KisMoveBoundsCalculationJob::debugName ( ) const
overridevirtual

Implements KisRunnableWithDebugName.

Definition at line 50 of file KisMoveBoundsCalculationJob.cpp.

51{
52 QString result;
53 QDebug dbg(&result);
54 dbg << "KisMoveBoundsCalculationJob" << ppVar(m_requestedBy) << m_nodes;
55 return result;
56}
#define ppVar(var)
Definition kis_debug.h:155

References m_nodes, m_requestedBy, and ppVar.

◆ levelOfDetail()

int KisMoveBoundsCalculationJob::levelOfDetail ( ) const
overridevirtual

Implements KisSpontaneousJob.

Definition at line 45 of file KisMoveBoundsCalculationJob.cpp.

46{
47 return 0;
48}

◆ overrides()

bool KisMoveBoundsCalculationJob::overrides ( const KisSpontaneousJob * otherJob)
overridevirtual

Implements KisSpontaneousJob.

Definition at line 37 of file KisMoveBoundsCalculationJob.cpp.

38{
39 const KisMoveBoundsCalculationJob *otherJob =
40 dynamic_cast<const KisMoveBoundsCalculationJob*>(_otherJob);
41
42 return otherJob && otherJob->m_requestedBy == m_requestedBy;
43}

References m_requestedBy.

◆ run()

void KisMoveBoundsCalculationJob::run ( )
overridevirtual

Implements KisRunnable.

Definition at line 22 of file KisMoveBoundsCalculationJob.cpp.

23{
24 QRect handlesRect;
25
26 Q_FOREACH (KisNodeSP node, m_nodes) {
28 }
29
30 if (m_selection) {
31 handlesRect &= m_selection->selectedExactRect();
32 }
33
34 Q_EMIT sigCalculationFinished(handlesRect);
35}
void sigCalculationFinished(const QRect &bounds)
QRect recursiveTightNodeVisibleBounds(KisNodeSP rootNode)
QRect selectedExactRect() const
Slow, but exact way of determining the rectangle that encloses the selection.

References m_nodes, m_selection, KisLayerUtils::recursiveTightNodeVisibleBounds(), KisSelection::selectedExactRect(), and sigCalculationFinished().

◆ sigCalculationFinished

void KisMoveBoundsCalculationJob::sigCalculationFinished ( const QRect & bounds)
signal

Member Data Documentation

◆ m_nodes

KisNodeList KisMoveBoundsCalculationJob::m_nodes
private

Definition at line 31 of file KisMoveBoundsCalculationJob.h.

◆ m_requestedBy

QObject* KisMoveBoundsCalculationJob::m_requestedBy
private

Definition at line 33 of file KisMoveBoundsCalculationJob.h.

◆ m_selection

KisSelectionSP KisMoveBoundsCalculationJob::m_selection
private

Definition at line 32 of file KisMoveBoundsCalculationJob.h.


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