* caching of last attribute value (for AttributeText/Image element), to not search...
commit27f2441772d8c4ccdb2f9d56a8ac09ffcdafdf4d
authorHominem te esse <hominem.te.esse@googlemail.com>
Sat, 5 Mar 2011 18:11:31 +0000 (5 19:11 +0100)
committerHominem te esse <hominem.te.esse@googlemail.com>
Sat, 5 Mar 2011 18:11:31 +0000 (5 19:11 +0100)
treec1755e9f855cee244b631efaf78723e2f0074335
parent996144d615fd3e4ea5bc9e2b6f4fa35184bcdd7e
* caching of last attribute value (for AttributeText/Image element), to not search the config file every frame
* drawing text (font) do not use rmSetupQuad anymore, wasn't needed anyway (Also reduced branching for Pixmap/quad)
* Image element have a new "scaled" option to define if the drawing of the Image should respect the screen scaling policy (for 4:3, or 16:9 adaptation). Background element use "scaled=0" by default to take the full screen width and height.
* drawing text can used two mode for limiting the text size. When an element have a "width" or "height" defined, by default we use "clipping" (everything larger than width or height will not be drawn). With the "wrap=1" option for text element, you can change this default behavior to wrap the text instead. Finally if you don't define width/height, the full text wil be drawn, without any check.
* Element width and height definition can use the string "DIM_INF" to mean "maximum/infinite" (bound to the max screenwidth/screenheight). This is to be used instead of putting the real max screen width/height (as "heigth=512"), as they may change depending of the use of NTSC/PAL.

Example of conf_theme.cfg.

To define a background, and then a "decorative frame" layer:

main0:
type=Background
main1:
type=StaticImage
default=main_frames
aligned=0
scaled=0
width=DIM_INF
height=DIM_INF
...

To define a Text element using wraping:

...
info7:
type=AttributeText
attribute=Description
display=2
aligned=0
wrap=1
x=65
y=180
width=300
...

And finally, for this last specicif question you have, the answer is "Don't ask" ;)
include/fntsys.h
include/renderman.h
include/themes.h
src/dia.c
src/fntsys.c
src/gui.c
src/renderman.c
src/themes.c