QGIS API Documentation 3.41.0-Master (af5edcb665c)
|
An undo stack for QgsLayouts. More...
#include <qgslayoutundostack.h>
Signals | |
void | undoRedoOccurredForItems (QSet< QString > itemUuids) |
Emitted when an undo or redo action has occurred, which affected a set of layout itemUuids. | |
Public Member Functions | |
QgsLayoutUndoStack (QgsLayout *layout) | |
Constructor for QgsLayoutUndoStack, for the specified parent layout. | |
void | beginCommand (QgsLayoutUndoObjectInterface *object, const QString &commandText, int id=0) |
Begins a new undo command for the specified object. | |
void | beginMacro (const QString &commandText) |
Starts a macro command, with the given descriptive commandText. | |
void | blockCommands (bool blocked) |
Sets whether undo commands for the layout should be temporarily blocked. | |
void | cancelCommand () |
Cancels the active command, discarding it without pushing to the undo history. | |
void | endCommand () |
Saves final state of an object and pushes the active command to the undo history. | |
void | endMacro () |
Ends a macro command. | |
bool | isBlocked () const |
Returns true if undo commands are currently blocked. | |
void | notifyUndoRedoOccurred (QgsLayoutItem *item) |
Notifies the stack that an undo or redo action occurred for a specified item. | |
void | push (QUndoCommand *command) |
Manually pushes a command to the stack, and takes ownership of the command. | |
QUndoStack * | stack () |
Returns a pointer to the internal QUndoStack. | |
An undo stack for QgsLayouts.
Definition at line 35 of file qgslayoutundostack.h.
QgsLayoutUndoStack::QgsLayoutUndoStack | ( | QgsLayout * | layout | ) |
Constructor for QgsLayoutUndoStack, for the specified parent layout.
Definition at line 24 of file qgslayoutundostack.cpp.
void QgsLayoutUndoStack::beginCommand | ( | QgsLayoutUndoObjectInterface * | object, |
const QString & | commandText, | ||
int | id = 0 |
||
) |
Begins a new undo command for the specified object.
This must be followed by a call to endCommand() or cancelCommand() after the desired changes have been made to object.
The id argument can be used to specify an id number for the source event - this is used to determine whether QUndoCommand command compression can apply to the command.
Definition at line 43 of file qgslayoutundostack.cpp.
void QgsLayoutUndoStack::beginMacro | ( | const QString & | commandText | ) |
Starts a macro command, with the given descriptive commandText.
Any commands added to the stack (either via direct manipulation of stack() or via beginCommand()/endCommand() calls) between a beginMacro() and endMacro() block are collapsed into a single undo command, which will be applied or rolled back in a single step.
Definition at line 31 of file qgslayoutundostack.cpp.
void QgsLayoutUndoStack::blockCommands | ( | bool | blocked | ) |
Sets whether undo commands for the layout should be temporarily blocked.
If blocked is true
, subsequent undo commands will be blocked until a follow-up call to blockCommands( false
) is made.
Note that calls to blockCommands are stacked, so two calls blocking the commands will take two calls unblocking commands in order to release the block.
Definition at line 87 of file qgslayoutundostack.cpp.
void QgsLayoutUndoStack::cancelCommand | ( | ) |
Cancels the active command, discarding it without pushing to the undo history.
Definition at line 69 of file qgslayoutundostack.cpp.
void QgsLayoutUndoStack::endCommand | ( | ) |
Saves final state of an object and pushes the active command to the undo history.
Definition at line 54 of file qgslayoutundostack.cpp.
void QgsLayoutUndoStack::endMacro | ( | ) |
Ends a macro command.
This must be called after beginMacro(), when all child undo commands which form part of the macro have been completed.
Any commands added to the stack (either via direct manipulation of stack() or via beginCommand()/endCommand() calls) between a beginMacro() and endMacro() block are collapsed into a single undo command, which will be applied or rolled back in a single step.
Definition at line 37 of file qgslayoutundostack.cpp.
bool QgsLayoutUndoStack::isBlocked | ( | ) | const |
Returns true
if undo commands are currently blocked.
Definition at line 100 of file qgslayoutundostack.cpp.
void QgsLayoutUndoStack::notifyUndoRedoOccurred | ( | QgsLayoutItem * | item | ) |
Notifies the stack that an undo or redo action occurred for a specified item.
Definition at line 82 of file qgslayoutundostack.cpp.
void QgsLayoutUndoStack::push | ( | QUndoCommand * | command | ) |
Manually pushes a command to the stack, and takes ownership of the command.
Definition at line 105 of file qgslayoutundostack.cpp.
QUndoStack * QgsLayoutUndoStack::stack | ( | ) |
Returns a pointer to the internal QUndoStack.
Definition at line 77 of file qgslayoutundostack.cpp.
|
signal |
Emitted when an undo or redo action has occurred, which affected a set of layout itemUuids.