Last modified 16 years ago
Last modified on 01/26/09 15:45:18
Analysis
Overview
The goal of this task is to develop a concept of describing Changes with useful end-user information.
This includes:
- Reviewing current implementation for information and descriptions associated with Changes
- Giving ideas for new types of Change descriptions which will be useful for the end-user
- Devising a mechanism to implement the ideas above internally
Task requirements
- Information about changes should be classified by types and implemented:
- Description
- When the user is undoing/redoing a change, this results in a top-level change which should have meaningful description
- Internal side effect changes could also have useful descriptions
- Whether the change is a main or a side effect
- Unique sequence id of the change
- When Changes occur, they are sorted in order of appearance so each Change should have a unique id
- The smaller the id of a Change, the earlier in time it has occurred
- When the end-user views a top-level change, besides description there should be also a timestamp of the Change, e.g. when it has occurred
- Description
- Develop a UI tool which shows the tree of Changes for debugging purposes
- Develop a proper way to visualize what kind of effects undoing/redoing a Change would have
- Create new unit tests
Task result
- Description of the information a Change provides in the wiki page
- New code to implement the desired functionality
- Description of the UI tool in the wiki
Implementation idea
- Use the Inspector for a base of the UI tool
Related
PRO_CHANGE_UNDO_MANAGER_R0
PRO_CHANGE_MANAGER_R0
PRO_CHANGE_COMMONS_R0
How to demo
- Undo/redo some actions in Sophie 2 and show the descriptions
- Show the UI tool
- Run the unit tests
Design
Implementation
(Implementation results should be described and linked here (from the wiki or the repository))
Testing
Comments
(Write comments for this or later revisions here.)