Open main menu

Difference between revisions of "GUI Themes/Specs"

1,100 bytes added ,  18:32, 1 April 2006
Add "What to do if I need to add new widgets to GUI" section
(Added some items for the About dialog, and fixed a few typos.)
(Add "What to do if I need to add new widgets to GUI" section)
Line 13: Line 13:
** text padding
** text padding
** arrows to make it distinguishable from editable textboxes
** arrows to make it distinguishable from editable textboxes
** Make it taller
** make it taller
* Tab widget
* Tab widget
** tab widget is drawn completely wrong now
** tab widget is drawn completely wrong now
Line 31: Line 31:
** smaller version of widget for 320xY resolution
** smaller version of widget for 320xY resolution
* Slider widget
* Slider widget
** Remove border
** remove border
** less round corners
** less round corners
*** to do that we need to be able to define gfx for each widget class separately
*** to do that we need to be able to define gfx for each widget class separately
Line 63: Line 63:
Config file consists of at least one section. These sections can override one another. This is used to make a slight alteration of base theme possible without duplicating all element whose position is not changed.
Config file consists of at least one section. These sections can override one another. This is used to make a slight alteration of base theme possible without duplicating all element whose position is not changed.


'''NOTE: if you want to add new widgets, pay attention to correspondent section here'''


=== Section names ===
=== Section names ===
Line 257: Line 258:
   chooser_headline
   chooser_headline
   chooser_list
   chooser_list
=== What to do if I need to add new widgets to GUI ===
First thing to mention, is that all real GU behaviour is not described in theme config. Only thing which you can alter is look, not feel. So all real coding should go to correspondent files in gui/ directory.
When you add new widget, you should check it with following checklist before committing:
* Does it look right in 320xY (./scummvm --force-1x-overlay)
** To do this you should either have no absolute positions in your config file or create [320xY] section
* Does it look right with classic theme (./scummvm --gui-theme=classic)
** that is [XxY] section in gui/theme-config.cpp
* Does it look right <u>both</u> with classic theme and 320xY resolution (./scummvm --force-1x-overlay --gui-theme=classic)
** that is [320xY] section in gui/theme-config.cpp
Currently classic theme has following most notable differences from default theme:
* Line spacing everywhere is narrower
* Indentation is lesser in most cases, besides in Game Options dialog