Improve undo/redo functionality
- Dominant language
- Java
- Stars
- 12
- Forks
- 15
- PR merge metrics
- No merged PRs in 30d
Description
A difficult problem common to many applications is that of the undo history. Ideally, we would like ImageJ to support multiple undo and redo as efficiently as possible. There are two major kinds of undoable operations:
1. Some operations such as adding a ROI are simple to invert efficiently (just delete it). We can use a command recorder system to keep track of such workflows both backwards and forwards to allow undo and redo.
2. Other operations such as dithering are more destructive, and ImageJ must somehow cache the prior state of the image in order to successfully undo the change.
As such, support for a hybrid undo history supporting both types of operations may be the way to go.
Migrated-From: http://trac.imagej.net/ticket/13
Contributor guide
No contributing guide indexed for this repository
Research direction
Start by locating the existing undo history and command recorder implementation in the ImageJ core data model; the issue names no files or tests. Compare the needs of reversible ROI operations with destructive image operations, then define and validate a hybrid history that supports multiple undo and redo operations.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- java
- Domain
- desktop
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 20/100