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

#include <kis_legacy_undo_adapter.h>

+ Inheritance diagram for KisLegacyUndoAdapter:

Public Member Functions

void addCommand (KUndo2Command *cmd) override
 
void beginMacro (const KUndo2MagicString &macroName) override
 
void endMacro () override
 
 KisLegacyUndoAdapter (KisUndoStore *undoStore, KisImageWSP image)
 
const KUndo2CommandpresentCommand () override
 
void undoLastCommand () override
 
- Public Member Functions inherited from KisUndoAdapter
void emitSelectionChanged ()
 
 KisUndoAdapter (KisUndoStore *undoStore, QObject *parent=0)
 
void setUndoStore (KisUndoStore *undoStore)
 
 ~KisUndoAdapter () override
 

Private Attributes

KisImageWSP m_image
 
qint32 m_macroCounter
 

Additional Inherited Members

- Signals inherited from KisUndoAdapter
void selectionChanged ()
 
- Protected Member Functions inherited from KisUndoAdapter
KisUndoStoreundoStore ()
 

Detailed Description

KisLegacyUndoAdapter – blocks the strokes and updates queue, and then adds the command to a store

Definition at line 18 of file kis_legacy_undo_adapter.h.

Constructor & Destructor Documentation

◆ KisLegacyUndoAdapter()

KisLegacyUndoAdapter::KisLegacyUndoAdapter ( KisUndoStore * undoStore,
KisImageWSP image )

Definition at line 12 of file kis_legacy_undo_adapter.cpp.

14 : KisUndoAdapter(undoStore, image.data()),
15 m_image(image),
17{
18}
KisUndoAdapter(KisUndoStore *undoStore, QObject *parent=0)
KisUndoStore * undoStore()

Member Function Documentation

◆ addCommand()

void KisLegacyUndoAdapter::addCommand ( KUndo2Command * cmd)
overridevirtual

Implements KisUndoAdapter.

Definition at line 30 of file kis_legacy_undo_adapter.cpp.

31{
32 if(!command) return;
33
34 if(m_macroCounter) {
35 undoStore()->addCommand(command);
36 }
37 else {
39 undoStore()->addCommand(command);
40 m_image->unlock();
41 }
42}
void unlock()
Definition kis_image.cc:805
void barrierLock(bool readOnly=false)
Wait until all the queued background jobs are completed and lock the image.
Definition kis_image.cc:756
virtual void addCommand(KUndo2Command *cmd)=0

References KisUndoStore::addCommand(), KisImage::barrierLock(), m_image, m_macroCounter, KisUndoAdapter::undoStore(), and KisImage::unlock().

◆ beginMacro()

void KisLegacyUndoAdapter::beginMacro ( const KUndo2MagicString & macroName)
overridevirtual

Implements KisUndoAdapter.

Definition at line 44 of file kis_legacy_undo_adapter.cpp.

45{
46 if(!m_macroCounter) {
48 }
49
51 undoStore()->beginMacro(macroName);
52}
virtual void beginMacro(const KUndo2MagicString &macroName)=0

References KisImage::barrierLock(), KisUndoStore::beginMacro(), m_image, m_macroCounter, and KisUndoAdapter::undoStore().

◆ endMacro()

void KisLegacyUndoAdapter::endMacro ( )
overridevirtual

Implements KisUndoAdapter.

Definition at line 54 of file kis_legacy_undo_adapter.cpp.

55{
57
58 if(!m_macroCounter) {
59 m_image->unlock();
60 }
62}
virtual void endMacro()=0

References KisUndoStore::endMacro(), m_image, m_macroCounter, KisUndoAdapter::undoStore(), and KisImage::unlock().

◆ presentCommand()

const KUndo2Command * KisLegacyUndoAdapter::presentCommand ( )
overridevirtual

Implements KisUndoAdapter.

Definition at line 20 of file kis_legacy_undo_adapter.cpp.

21{
22 return undoStore()->presentCommand();
23}
virtual const KUndo2Command * presentCommand()=0

References KisUndoStore::presentCommand(), and KisUndoAdapter::undoStore().

◆ undoLastCommand()

void KisLegacyUndoAdapter::undoLastCommand ( )
overridevirtual

Implements KisUndoAdapter.

Definition at line 25 of file kis_legacy_undo_adapter.cpp.

26{
28}
virtual void undoLastCommand()=0

References KisUndoStore::undoLastCommand(), and KisUndoAdapter::undoStore().

Member Data Documentation

◆ m_image

KisImageWSP KisLegacyUndoAdapter::m_image
private

Definition at line 29 of file kis_legacy_undo_adapter.h.

◆ m_macroCounter

qint32 KisLegacyUndoAdapter::m_macroCounter
private

Definition at line 30 of file kis_legacy_undo_adapter.h.


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