core: make owning pointers a top-level features

The undo-code uses owning pointers based on std::unique_ptr to
manage lifetime of C-objects. Since these are generally useful,
move them from the undo-code to the core-code. In fact, this
eliminates one instance of code duplication.

Signed-off-by: Berthold Stoeger <bstoeger@mail.tuwien.ac.at>
This commit is contained in:
Berthold Stoeger 2022-11-06 12:18:27 +01:00 committed by bstoeger
parent 5b1557ccb1
commit c5d6e0f44f
7 changed files with 50 additions and 31 deletions

View file

@ -30,8 +30,8 @@ void clear(); // Reset the undo stack. Delete all commands.
void setClean(); // Call after save - this marks a state where no changes need to be saved.
bool isClean(); // Any changes need to be saved?
QAction *undoAction(QObject *parent); // Create an undo action.
QAction *redoAction(QObject *parent); // Create an redo action.
QString changesMade(); // return a string with the texts from all commands on the undo stack -> for commit message
QAction *redoAction(QObject *parent); // Create a redo action.
QString changesMade(); // Return a string with the texts from all commands on the undo stack -> for commit message.
bool placingCommand(); // Currently executing a new command -> might not have to update the field the user just edited.
// 2) Dive-list related commands