Version 2 (modified by pap, 16 years ago) (diff) |
---|
Analysis
Overview
The page scene is responsible for displaying objects inside the page work area. The page scene provides an object model for the contents of the page work area. It is supposed that different implementations of the scene should exist. They will actually display the given model using the primitives of some library. Base scene is a mediator that contstructs the object model and then uses a concrete implementation to get the graphical result.
Task requirements
- Define the elements of the scene model.
- The model should be able to handle different page elements.
- The scene should be able to provide a swing component.
Task result
The result of this task should be source code.
Implementation idea
Probably it will be good to have these elements in the model:
- Frame
- Swing component
Related
How to demo
- Describe the model
- Show the interfaces/classes.
Design
- We will use the Composite design pattern to build our model.
- Here is the UML diagram for the object model
- Each element's graphic will have its own coordiante system
- Each element contains an affine transformation that will position the element at the correct place.
- Element style is supposed hold information about borders, opacity, shadows, etc.
- There will be Scene objects. They'll hold the information about the whole scene and should be implemented as instances of the CompositeElement class.
- Swing element provisioning mechanism should be provided in the module class. To be done in SCENE_POINT task.
Implementation
(Implementation results should be described and linked here (from the wiki or the repository))
Testing
Comments
Log