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

#include <KisCloneDocumentStroke.h>

+ Inheritance diagram for KisCloneDocumentStroke:

Signals

void sigCloningCancelled ()
 
void sigDocumentCloned (KisDocument *image)
 

Public Member Functions

void cancelStrokeCallback () override
 
void finishStrokeCallback () override
 
void initStrokeCallback () override
 
 KisCloneDocumentStroke (KisDocument *document)
 
 Private (KisDocument *_document)
 
 ~KisCloneDocumentStroke ()
 
- Public Member Functions inherited from Private
 Private (KisCanvas2 *c)
 
- Public Member Functions inherited from KisSimpleStrokeStrategy
KisStrokeJobDatacreateCancelData () override
 
KisStrokeJobStrategycreateCancelStrategy () override
 
KisStrokeJobStrategycreateDabStrategy () override
 
KisStrokeJobDatacreateFinishData () override
 
KisStrokeJobStrategycreateFinishStrategy () override
 
KisStrokeJobDatacreateInitData () override
 
KisStrokeJobStrategycreateInitStrategy () override
 
KisStrokeJobDatacreateResumeData () override
 
KisStrokeJobStrategycreateResumeStrategy () override
 
KisStrokeJobDatacreateSuspendData () override
 
KisStrokeJobStrategycreateSuspendStrategy () override
 
virtual void doStrokeCallback (KisStrokeJobData *data)
 
 KisSimpleStrokeStrategy (const QLatin1String &id, const KUndo2MagicString &name=KUndo2MagicString())
 
virtual void resumeStrokeCallback ()
 
virtual void suspendStrokeCallback ()
 
- Public Member Functions inherited from KisStrokeStrategy
qreal balancingRatioOverride () const
 
bool canForgetAboutMe () const
 
bool clearsRedoOnStart () const
 
virtual KisStrokeStrategycreateLodClone (int levelOfDetail)
 
KisLodPreferences currentLodPreferences () const
 
bool forceLodModeIfPossible () const
 
QString id () const
 
bool isAsynchronouslyCancellable () const
 
bool isExclusive () const
 
 KisStrokeStrategy (const QLatin1String &id, const KUndo2MagicString &name=KUndo2MagicString())
 
KUndo2MagicString name () const
 
bool needsExplicitCancel () const
 
virtual void notifyUserEndedStroke ()
 
virtual void notifyUserStartedStroke ()
 
bool requestsOtherStrokesToEnd () const
 
void setForceLodModeIfPossible (bool forceLodModeIfPossible)
 
void setMutatedJobsInterface (KisStrokesQueueMutatedJobInterface *mutatedJobsInterface, KisStrokeId strokeId)
 
bool supportsWrapAroundMode () const
 
virtual void tryCancelCurrentStrokeJobAsync ()
 tryCancelCurrentStrokeJobAsync is called by the strokes queue when the stroke is being cancelled. The stroke strategy may or may not handle this request and cancel the currently running long action.
 
virtual ~KisStrokeStrategy ()
 

Public Attributes

KisDocumentdocument = 0
 
- Public Attributes inherited from Private
KisCanvas2canvas
 
int displayedFrame
 
int intendedFrame
 

Private Attributes

const QScopedPointer< Privatem_d
 

Additional Inherited Members

- Public Types inherited from KisSimpleStrokeStrategy
enum  JobType {
  JOB_INIT = 0 , JOB_CANCEL , JOB_FINISH , JOB_DOSTROKE ,
  JOB_SUSPEND , JOB_RESUME , NJOBS
}
 
- Static Public Member Functions inherited from KisSimpleStrokeStrategy
static QLatin1String jobTypeToString (JobType type)
 
- Protected Member Functions inherited from KisSimpleStrokeStrategy
void enableJob (JobType type, bool enable=true, KisStrokeJobData::Sequentiality sequentiality=KisStrokeJobData::SEQUENTIAL, KisStrokeJobData::Exclusivity exclusivity=KisStrokeJobData::NORMAL)
 
 KisSimpleStrokeStrategy (const KisSimpleStrokeStrategy &rhs)
 
- Protected Member Functions inherited from KisStrokeStrategy
void addMutatedJob (KisStrokeJobData *data)
 
void addMutatedJobs (const QVector< KisStrokeJobData * > list)
 
 KisStrokeStrategy (const KisStrokeStrategy &rhs)
 
void setAsynchronouslyCancellable (bool value)
 
void setBalancingRatioOverride (qreal value)
 
void setCanForgetAboutMe (bool value)
 
void setClearsRedoOnStart (bool value)
 
void setExclusive (bool value)
 
void setNeedsExplicitCancel (bool value)
 
void setRequestsOtherStrokesToEnd (bool value)
 
void setSupportsWrapAroundMode (bool value)
 

Detailed Description

Definition at line 14 of file KisCloneDocumentStroke.cpp.

Constructor & Destructor Documentation

◆ KisCloneDocumentStroke()

KisCloneDocumentStroke::KisCloneDocumentStroke ( KisDocument * document)

Definition at line 24 of file KisCloneDocumentStroke.cpp.

25 : KisSimpleStrokeStrategy(QLatin1String("clone-document-stroke"), kundo2_i18n("Clone Document")),
26 m_d(new Private(document))
27{
34}
void enableJob(JobType type, bool enable=true, KisStrokeJobData::Sequentiality sequentiality=KisStrokeJobData::SEQUENTIAL, KisStrokeJobData::Exclusivity exclusivity=KisStrokeJobData::NORMAL)
KisSimpleStrokeStrategy(const QLatin1String &id, const KUndo2MagicString &name=KUndo2MagicString())
void setClearsRedoOnStart(bool value)
void setRequestsOtherStrokesToEnd(bool value)
void setNeedsExplicitCancel(bool value)
KUndo2MagicString kundo2_i18n(const char *text)
const QScopedPointer< Private > m_d

References KisStrokeJobData::BARRIER, KisSimpleStrokeStrategy::enableJob(), KisStrokeJobData::EXCLUSIVE, KisSimpleStrokeStrategy::JOB_CANCEL, KisSimpleStrokeStrategy::JOB_FINISH, KisSimpleStrokeStrategy::JOB_INIT, KisStrokeJobData::SEQUENTIAL, KisStrokeStrategy::setClearsRedoOnStart(), KisStrokeStrategy::setNeedsExplicitCancel(), and KisStrokeStrategy::setRequestsOtherStrokesToEnd().

◆ ~KisCloneDocumentStroke()

KisCloneDocumentStroke::~KisCloneDocumentStroke ( )

Definition at line 36 of file KisCloneDocumentStroke.cpp.

37{
38}

Member Function Documentation

◆ cancelStrokeCallback()

void KisCloneDocumentStroke::cancelStrokeCallback ( )
overridevirtual

Reimplemented from KisSimpleStrokeStrategy.

Definition at line 52 of file KisCloneDocumentStroke.cpp.

53{
54 Q_EMIT sigCloningCancelled();
55}

References sigCloningCancelled().

◆ finishStrokeCallback()

void KisCloneDocumentStroke::finishStrokeCallback ( )
overridevirtual

Reimplemented from KisSimpleStrokeStrategy.

Definition at line 45 of file KisCloneDocumentStroke.cpp.

46{
47 KisDocument *doc = m_d->document->clone();
48 doc->moveToThread(qApp->thread());
49 Q_EMIT sigDocumentCloned(doc);
50}
KisDocument * clone(bool addStorage=false)
creates a clone of the document and returns it. Please make sure that you hold all the necessary lock...
void sigDocumentCloned(KisDocument *image)

References KisDocument::clone(), m_d, and sigDocumentCloned().

◆ initStrokeCallback()

void KisCloneDocumentStroke::initStrokeCallback ( )
overridevirtual

Reimplemented from KisSimpleStrokeStrategy.

Definition at line 40 of file KisCloneDocumentStroke.cpp.

41{
42 KisLayerUtils::forceAllDelayedNodesUpdate(m_d->document->image()->root());
43}
void forceAllDelayedNodesUpdate(KisNodeSP root)

References KisLayerUtils::forceAllDelayedNodesUpdate(), and m_d.

◆ Private()

KisCloneDocumentStroke::Private ( KisDocument * _document)
inline

Definition at line 16 of file KisCloneDocumentStroke.cpp.

17 : document(_document)
18 {
19 }

◆ sigCloningCancelled

void KisCloneDocumentStroke::sigCloningCancelled ( )
signal

◆ sigDocumentCloned

void KisCloneDocumentStroke::sigDocumentCloned ( KisDocument * image)
signal

Member Data Documentation

◆ document

KisDocument* KisCloneDocumentStroke::document = 0

Definition at line 21 of file KisCloneDocumentStroke.cpp.

◆ m_d

const QScopedPointer<Private> KisCloneDocumentStroke::m_d
private

Definition at line 32 of file KisCloneDocumentStroke.h.


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