There's no tutorial yet. The theme file's primary purpose is to associate
values with properties. These properties are grouped into objects which
have inheritance. If a property isn't found in a particular object, the
parent object is searched, and so on. There's a graph of this inheritance
in picogui.org's diagrams page. These objects can be simple numerical
values, or any data type that can be referred to as a handle. This includes
strings, bitmaps, fillstyles, and others. Fillstyles are chunks of
interpreted code that draw the widget to the screen. The fillstyle language
(in source code form at least) is basically a small subset of C. The
variables x,y,w, and h specify the position and size of the rectangle the
widget should be rendered to. You can define your own variables, but only
the type 'var' (a 32-bit integer) is supported. No loops are allowed, and
the only conditional implemented so far is the ?: operator. Take a look at
the existing themes for ideas. You can find a list of all theme objects and
all theme properties in constants.h

If you just need to modify the appearance of the aqua theme, you should be
able to do that just by modifying it's bitmaps. I'm also working on a theme
called 'BitmapEngine' that cut and pastes all the GUI's parts from a single
256x256 bitmap. bitmapengine.th is loaded, then a small theme which only
needs to define the theme's name and it's source bitmap.

Also, if anyone brave enough to venture into learning the theme language
wants to write a theme tutorial, I think everyone would appreciate it.


On 2001.08.24 20:27:33 -0600 Tim Gray wrote:
> Chatty me this weekend :-)
> 
> does anyone have a good tutorial on how to make a theme?  I need to make
> one similar to how the aqua theme is  but with darker tones and specific
> colors to keep from freaking out a television.
> 
> I am currently fighting with the code for chopping up the button pnm
> files to stretch the buttons.
> 
> 
> _________________________________________________________
> Do You Yahoo!?
> Get your free @yahoo.com address at http://mail.yahoo.com
> 
> 
> _______________________________________________
> Pgui-devel mailing list
> [EMAIL PROTECTED]
> http://lists.sourceforge.net/lists/listinfo/pgui-devel
> 
-- 
Only you can prevent creeping featurism!

_______________________________________________
Pgui-devel mailing list
[EMAIL PROTECTED]
http://lists.sourceforge.net/lists/listinfo/pgui-devel

Reply via email to