Potential Undo/Redo System Enhancements
- Dominant language
- Python
- Stars
- 115
- Forks
- 54
- PR merge metrics
- No merged PRs in 30d
Description
This gives some ideas for enhanced capabilities coming from features of the wxPython and Qt undo/redo systems, or which seem obvious:
- [ ] make a context manager for `begin_macro`/`end_macro`
- [ ] convenience methods on `UndoManager` for creating undo and redo actions for that manager.
- [ ] a way to mark a command as doing nothing (eg. because merges cancel each other out) and have it removed from the stack (like Qt's `isObsolete`)
- [ ] some way of handling commands which cannot be undone and which can signal that prior history is to be removed (maybe)
- [ ] add length and index to the `ICommandStack` interface and possibly a way to access commands by external code
- [ ] (possibly) shims for interoperation with toolkit-level undo/redo (eg. wrappers to make them conform to the Pyface API; or vice-versa to make the Pyface API implement the toolkit object API) to improve interoperability.
Contributor guide
No contributing guide indexed for this repository
Assessment
This issue has not been assessed yet.