Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Replace the current undo/redo system with QUndoStack #864

Open
MrStevns opened this issue Jan 16, 2018 · 2 comments
Open

Replace the current undo/redo system with QUndoStack #864

MrStevns opened this issue Jan 16, 2018 · 2 comments

Comments

@MrStevns
Copy link
Member

MrStevns commented Jan 16, 2018

To avoid too much discussion on this subject in the roadmap thread, i've made a new issue regarding this enhancement that chchwy mentions in #800

by chchwy:

I was thinking to introduce QUndoStack to have better undo/redo architecture, but haven't got chances to do that. This could also be a preparation step for the undo history window in the future.

QUndoStack:

  • QUndoStack provides convenient undo and redo QAction objects, which can be inserted into a menu or a toolbar.
  • Command compression and macro's
    Command compression is useful when several commands can be compressed into a single command that can be undone and redone in a single operation. For example, when a user types a character in a text editor, a new command is created
  • Clean State
    is usually used to enable and disable the save actions in the application, and to update the document's title to reflect that it contains unsaved changes.
  • QUndoStack is able to delete commands from the stack if the command is no longer needed. One example may be to delete a command when two commands are merged together in such a way that the merged command has no function

It would also be a step towards a undo history, since Qt also provides QUndoView which displays content of a QUndoStack

@J5lx
Copy link
Member

J5lx commented Jan 16, 2018

For reference, undo history was requested in #562.

@MrStevns MrStevns self-assigned this Jan 17, 2018
@chchwy chchwy added this to the 6.1 milestone Jan 28, 2018
@MrStevns MrStevns modified the milestones: 6.1, 6.2 Mar 4, 2018
@chchwy chchwy modified the milestones: 0.6.2, 0.6.3 Jun 6, 2018
@scribblemaniac scribblemaniac modified the milestones: 0.6.4, 0.6.5 Apr 12, 2019
@Jose-Moreno Jose-Moreno modified the milestones: 0.6.5, 0.6.6 Jan 15, 2020
@chchwy chchwy modified the milestones: 0.6.6, 0.7 Aug 5, 2020
@J5lx J5lx moved this to High priority in Enhancement Priority Sep 28, 2023
@MrStevns
Copy link
Member Author

MrStevns commented Oct 19, 2024

The new undo/redo system was implemented recently, shouldn't we consider this PR done then or do we want to keep it open till we've fully migrated to the new system?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
Status: High priority
Development

Successfully merging a pull request may close this issue.

5 participants