Last modified 15 years ago
Last modified on 06/25/10 12:29:04
- Skinning
- Each skin contain internationalization, theme or interaction map (this means that a skin may contain more than one, but in different parts and folders)
- a file named "skinid.theme" (in distrib/skins)
- The file contains properties of the skin like name, fallback skin. The fallback skin may be only one, and if it does not exist (or a value does not exist), a default value is used.
#Example name = Blue Theme fallback = none
- The file contains properties of the skin like name, fallback skin. The fallback skin may be only one, and if it does not exist (or a value does not exist), a default value is used.
- a folder named "skinid_theme" (in distrib/skins)
- The folder contains parts of the skins in different files with extension .part. If a value is present in more than one file, one of the values is chosen (no matter which) It is advisable parts to be in different files grouped by functionality for example, but this should not be mandatory.
- Lines of the part files may be the following
- id : type : value - Where id is the id of the element
- types can be boolean, integer, icon, iconset, color, size, point
- value - relative (to the "skinid_theme" folder) path in quotation marks - if the value does not begin with "/"
- value - absolute (to the Sophie folder) path in quotation mark that begins with "/"
- Lines of the part files may be the following
- The folder should contain the images as well. Images may be in subfolders.
- The theme should include the following: Images and color hex values
- The folder contains parts of the skins in different files with extension .part. If a value is present in more than one file, one of the values is chosen (no matter which) It is advisable parts to be in different files grouped by functionality for example, but this should not be mandatory.
- a file named "skinid.theme" (in distrib/skins)
- Skin choosing
- A file named "skin.conf" in distrib/conf will show which skin is chosen
- Lines starting with "#" should be allowed and treated as comments
- For now only language and theme will be chooseable (lines in the file with the following synthax "language = skinid" "theme=skinid")
- A file named "skin.conf" in distrib/conf will show which skin is chosen
- What should be changeable?
- Images
- All halos in the application
- Flap and tab button styles
- Palette background images
- Colors
- Dialog text foreground/background colors (optional)
- Button text foreground (optional)
- Gray area around pages (optional)
- Application background style (optional)
- Images
- Each skin contain internationalization, theme or interaction map (this means that a skin may contain more than one, but in different parts and folders)
- Formats of the values
- for boolean type, values should be true or false, If anything else is written, it will be interpreted as "false".
- for integer type, values should be such string that can be parsed to integer, e.g. 24
- for point type, values should be such two float numbers separated with ":" e.g. 2.34:4.56.
- for size type, values should be two float numbers separated with ":" e.g. 2.34:4.56.
- for text type, values should be some string (no restrictions).
- for icon type, values should be path to the icon
- for icons type, values should be IconId1=path1,IconId2=path2... where path1, path2 should be path to the location of the icon
IconId is one of the following: DEFAULT, DISABLED,PRESSED, MOUSE_OVER, SELECTED
path to the location of the icon can be
1) Relative path to the location of the icon (relative according to distrib directory). The path should starts with /.
2) Name of the icon. This way the icon should be located in the current directory.