Version 2 (modified by peko, 16 years ago) (diff) |
---|
Analysis
Overview
This revision of the task will introduce prototype drag and drop functionality. As well as support for more DndData that can be transferred in Sophie2.0 (see BASE_DND_R0 for more information.)
Task requirements
- Supply base classes for drag and drop management.
- Create a global drag and drop manager that will handle part of the drag and drop operations. The rest should be handled in the corresponding logic.
- Create DndData implementations for resources.
- After creating the drag and drop base classes:
- provide implementation for drag and drop as well as cut/copy/paste of images using the already created ImageData.
- provide implementation for drag and drop as well as cut/copy/paste of resources.
- Create DndData implementation for resources - Frames would be enough for current revision.
- Integrate the DndData implementation with the D'n'd and Clipboard managers.
- Provide a diagram of the D'n'd manager.
- Create a wiki page named BASE_DND, to serve as a reference for all drag and drop and cut/copy/paste functionality. It should have all the design of the base library, as well as the already implemented functionality. For example explaining the use cases that are implemented.
Task result
- source code.
- wiki content with diagrams.
Implementation idea
- Create a DndManager class. It should be able to provide the interaction between VisualElements.
- Create a FrameData class, that should represent a DndData for Frames. It would be difficult to create the hierarchy for all resources without having a use case implemented and the frame will be our starting point.
- Create the diagram using netbeans and put it in the newly created page. Put also the wiki content of the previous revision of this task.
Related
How to demo
- Use case 1:
- Start sophie.
- Drag and drop or cut/copy and paste an image frame from sophie2 to an image redactor. (for example gimp).
- The image from the image frame should appear in the redactor.
- Drag and drop or cut/copy and paste another image from the image redactor to sophie.
- This should create a frame with an image content if dropped on the page.
- This should change the current image of the image content if dropped on an image frame.
- Use case 2:
- Start sophie.
- Create some frames.
- Drag and drop or cut/copy and paste a frame resource from the resource palette to the page work area.
- The corresponding frame should appear as a copy of the selected one.
- Start sophie.
Design
Implementation
Testing
(Place the testing results here.)
Comments
(Write comments for this or later revisions here.)