wiki:Skinning/Themes

Version 5 (modified by deyan, 15 years ago) (diff)

--

  • 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
          
      • 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 "text" and "icon"
            • value - relative (to the "skinid_theme" folder) path in quotation marks - if the value begins with "./"
            • value - absolute (to the Sophie folder) path in quotation mark that begins with "/"
        • The folder should contain the images as well. Images may be in subfolders.
        • The theme should include the following: Images and color hex values
    • 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")
    • 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)