#include <kis_node_juggler_compressed.h>
|
| void | addNode (const KisNodeList &nodes, KisNodeSP dstParent, KisNodeSP dstAbove) |
| |
| bool | canMergeAction (const KUndo2MagicString &actionName) |
| |
| void | copyNode (const KisNodeList &nodes, KisNodeSP dstParent, KisNodeSP dstAbove) |
| |
| void | duplicateNode (const KisNodeList &nodes) |
| |
| bool | isEnded () const |
| |
| | KisNodeJugglerCompressed (const KUndo2MagicString &actionName, KisImageSP image, KisNodeManager *nodeManager, int timeout) |
| |
| void | lowerNode (const KisNodeList &nodes) |
| |
| void | moveNode (const KisNodeList &nodes, KisNodeSP dstParent, KisNodeSP dstAbove) |
| |
| void | moveNode (KisNodeSP node, KisNodeSP parent, KisNodeSP above) |
| |
| void | raiseNode (const KisNodeList &nodes) |
| |
| void | removeNode (const KisNodeList &nodes) |
| |
| void | setAutoDelete (bool value) |
| |
| | ~KisNodeJugglerCompressed () override |
| |
◆ KisNodeJugglerCompressed()
Definition at line 708 of file kis_node_juggler_compressed.cpp.
709 :
m_d(
new Private(
this, actionName, image, nodeManager, timeout))
710{
711
713
714 m_d->applicator.reset(
717 emitSignals,
718 actionName));
721
726
727 m_d->applicator->applyCommand(
729 m_d->isStarted =
true;
730}
connect(this, SIGNAL(optionsChanged()), this, SLOT(saveOptions()))
void slotImageAboutToBeDeleted()
void requestUpdateAsyncFromCommand()
void slotEndStrokeRequested()
const QScopedPointer< Private > m_d
void slotUndoDuringStrokeRequested()
References connect(), m_d, KisProcessingApplicator::NONE, requestUpdateAsyncFromCommand(), slotEndStrokeRequested(), slotImageAboutToBeDeleted(), slotUndoDuringStrokeRequested(), slotUpdateTimeout(), and startTimers().
◆ ~KisNodeJugglerCompressed()
| KisNodeJugglerCompressed::~KisNodeJugglerCompressed |
( |
| ) |
|
|
override |
◆ addNode()
◆ canMergeAction()
| bool KisNodeJugglerCompressed::canMergeAction |
( |
const KUndo2MagicString & | actionName | ) |
|
◆ cleanup()
| void KisNodeJugglerCompressed::cleanup |
( |
| ) |
|
|
private |
Definition at line 888 of file kis_node_juggler_compressed.cpp.
889{
890 m_d->applicator.reset();
891 m_d->compressor.stop();
893 m_d->updateData.clear();
894 m_d->isStarted =
false;
895
896 if (
m_d->autoDelete) {
897 m_d->selfDestructionCompressor.stop();
898 this->deleteLater();
899 }
900}
References m_d.
◆ copyNode()
◆ duplicateNode()
◆ end
| void KisNodeJugglerCompressed::end |
( |
| ) |
|
|
slot |
◆ isEnded()
| bool KisNodeJugglerCompressed::isEnded |
( |
| ) |
const |
◆ lowerNode()
◆ moveNode() [1/2]
◆ moveNode() [2/2]
◆ raiseNode()
◆ removeNode()
◆ requestUpdateAsyncFromCommand
| void KisNodeJugglerCompressed::requestUpdateAsyncFromCommand |
( |
| ) |
|
|
signal |
◆ setAutoDelete()
| void KisNodeJugglerCompressed::setAutoDelete |
( |
bool | value | ) |
|
◆ slotEndStrokeRequested
| void KisNodeJugglerCompressed::slotEndStrokeRequested |
( |
| ) |
|
|
privateslot |
◆ slotImageAboutToBeDeleted
| void KisNodeJugglerCompressed::slotImageAboutToBeDeleted |
( |
| ) |
|
|
privateslot |
◆ slotUndoDuringStrokeRequested
| void KisNodeJugglerCompressed::slotUndoDuringStrokeRequested |
( |
| ) |
|
|
privateslot |
When the user presses Cltr+Z during the process of layer removal we should end the process and pass execution process back to the undo stack to make it undone. If we just cancel the action, then no redo action will be created (see bug 491186).
So we just wait till the end of the action and return back to the undo stack.
Definition at line 914 of file kis_node_juggler_compressed.cpp.
915{
916 if (!
m_d->isStarted)
return;
917
931}
References end(), m_d, and KisImage::waitForDone().
◆ slotUpdateTimeout
| void KisNodeJugglerCompressed::slotUpdateTimeout |
( |
| ) |
|
|
privateslot |
Since the update should be synchronized with the flow of layer-add commands, we issue it from a fake undo command that doesn't generate any history
Definition at line 854 of file kis_node_juggler_compressed.cpp.
855{
856
857
858
859
860 if (!
m_d->updateData || !
m_d->isStarted)
return;
861
863
869 m_d->applicator->applyCommand(
871 [updateData] () {
872 updateData->processUnhandledUpdates();
873 return nullptr;
874 }));
875}
The LambdaCommand struct is a shorthand for creation of AggregateCommand commands using C++ lambda fe...
References m_d.
◆ startTimers
| void KisNodeJugglerCompressed::startTimers |
( |
| ) |
|
|
privateslot |
◆ m_d
| const QScopedPointer<Private> KisNodeJugglerCompressed::m_d |
|
private |
The documentation for this class was generated from the following files: