Difference between revisions of "AfterStep Themes Discussion"

From AfterWiki
Jump to navigationJump to search
Line 106: Line 106:
<li>Distro (debian, red hat, ubuntu)+correstponding icon<li>
<li>Distro (debian, red hat, ubuntu)+correstponding icon</li>
<li>Apps (No setting stuff) </li>
<li>Apps (No setting stuff) </li>

Revision as of 22:44, 27 November 2012

The whole terminology of themes/skins is full of misunderstandings, so everthing needs to be clearly defined, feel free to correct anything...

Part of Discussion

so far users born2late and speedy0 have joined the discussion


  • a user may enforce his settings at any time if he falls back into the classic afterstep configuration scheme.
  • a theme is:
    • a subject of composition and/or a distinct, recurring, and unifying quality or idea
    • a set of default settings, which may or may not be changed by a user
    • hiding complexity from start menu
  • theme subsettings:
    • may not be interchangeable between themes
    • a look (or skin) is a way to decorate elements a user has set up to be on his desktop
    • a feel is a set of configurations that makes sure that the desktop behaves like expected
    • a layout is any set of module settings, including look and feel, that defines the geographical placement of UI elements

Mogh: the temporary theming engine

  • Format:
    • a tar bzip2 file
    • themename.mogh containing at least the file mogh.themename
    • each theme MUST support different layouts
  • Properties:
    • backs up user data (look+feel+all config files in ~/.afterstep/)automatically before first usage to ~/.afterstep/desktop/layout/username_at_hostname
    • installs itself in ~/.afterstep/desktop/themes/themename
    • all files except directories and the wharf file itself in ~/.afterstep become symlinks to the theme ones
    • provides a gui for themeswitching constructed with wharf
    • generates a working wharf file for the user
    • generates start menu entries under Desktop/Layout for Layout switching

Entities involved with theming

  • user (what he wants and doesnt want to be changed)
  • theme (what themer wants so theme is an experience rather then simple cosmetic changes)
  • theme engine (helps integrate user whishes and themer whishes)

Theme objectives

  • it defines where stuff lies on the desktop (as such any personal config is in itself a theme)
  • how it reacts/interacts
  • it defines how stuff is decorated
  • other toolkits/apps to be themed

Atomic Elements that cannot be further reduced that are part of a theme

  • Background
  • IconSet
  • Decor (look -> MyStyles)
    • Windows
    • Window Buttons
    • Menu (including MiniFolders)
    • Modules
      • Wharf
      • Pager
      • Winlist
      • WinTabs
      • banner
  • Feel (FIXME : break down more)
    • Keyboard actions
    • mouse actions
  • Module Decor
  • size and orientation of windowbox (problem here: how to make that look independant)
  • Animation settings
  • Mouse pointer (?)

Atomic Elements that cannot be further reduced that are´nt part of a theme

  • Color Scheme
  • Mouse speed and buttons

Things that are ambigious

This seem to be problematic sections for one of us:

  • Background -> by definition a very personal setting... 3 settings at least : dont_touch, theme(keep picture just make matching frame),replace
  • Menu - switching on and off: mini-folders, recent, texture, unavailable.
  • Feel - Not sure if this should be included or not. Very user-specific. What's the gain for the user?
  • Sounds - based-on events, could have a sci-fi theme, Halloween theme, Simpsons theme, Elmo theme, etc.
  • Modules - Should these be modified? These are very user-specific, and loading them can disrupt an existing setup. Should there be a warning when installing these? ...should be user definable imo...
  • Animations - seven types offered. Can these even be theme-specific? Can additional ones be added? If not, should be decided by user. since the Animate Module is the right one to put opengl/bling support into this should stay in somehow.

Example Start Menu

  • Distro (debian, red hat, ubuntu)+correstponding icon
    • Games
    • Apps (No setting stuff)
  • Desktop
    • Color Scheme
    • Feel (mandatory - should contain general stuff like point to click vs autofocus/raise
    • Layout (mandatory - number theme dependent
    • Look (optional - theme dependent)
    • Pictures
      • List of Pictures
      • Picture Manager
    • Update/Refresh
      • All
      • GTK/QT
      • Startmenu
      • Modules
    • Find
    • Run
    • Terminal
    • Windows
    • Quit
    • Help