Version 8 (modified by peko, 16 years ago) (diff) |
---|
Analysis
Overview
Apply a new design to the application.
Task requirements
- Default skin (what has been designed as the default skin for Sophie2.0)
- Customize swing
- MyDoggy part
- Flaps
- Tabs
- Palettes
- Swing in the rest of Sophie2.0
- Scrollbars
- Spinners
- Checkboxes
- Radiobuttons
- Backgrounds
- Fonts
- MyDoggy part
- Customize scenes
- Halos - this is part of the current skin logic and needs nothing else but new icons.
- Huds - this is part of the previous thing. Huds are JPanels and need to be skinnable.
- Background should be semitransparent, e6e8ea
- Static text should be semitransparent, 2d43b0
- Customize swing
- Currently there is a skin called alternative that should be fixed as well:
- Provide the missing icons.
- Provide the missing tool-tips
- (Optional) Provide a different LookAndFeel for this skin.
- Customize mydoggy colors and icons(optional).
Task result
Source code + artwork
Implementation idea
- http://java.sun.com/docs/books/tutorial/uiswing/misc/plaf.html
- Notes: Things stated in the requirements section will extend the idea of Skin in Sophie2.0. Furthermore, skins will include:
- Icons for halos and tooltips of all components that have such.
- MyDoggy customization.
- Java LookAndFeel customization.
- In order for the skin to be one thing that provides functionality for these three, all the parts should be integrated and designed in such a way that:
- Changing a skin will change all these things.
- Persisting a skin will persist all these things.
- The Skin manager should be able to provide functionality, so that a subset of these three parts should customizable. For example one might want to change the icons but leave the look and feel.
Related
How to demo
- Run Sophie2.0
- Click on skins menus and the change the skin.
- MyDoggy should change its appearance.
- Other swing parts should change their appearance.
- Skin parts - like halos and tooltips should also change.
Design
- LookAndFeel of Swing will be changed in order to have a different looking Sophie2 skin.
- As of Java 1.5 a new way of defining the Look and feel of java is developed (see http://java.sun.com/docs/books/tutorial/uiswing/lookandfeel/synth.html for more information) .
- The SynthLookAndFeel defined for Sophie2 will be put in the "org.sophie2.main.skin.alternative" module. This module will contain all skinning of Sophie2, until we implement skin persistence.
- Later the look and feel will be sealed in a jar file.
- For a more detailed information about the Look and feel and its artifacts see AUTHOR_APP_TUNING
- Mydoggy customization will be hard coded in the same module...
Implementation
(Describe and link the implementation results here (from the wiki or the repository).)
Testing
(Place the testing results here.)
Comments
(Write comments for this or later revisions here.)