- New Panel tag, allowing to group the resizing behaviour of controls
- Documentation updated accordingly
- Fixed a memory leak due to CtrlMove/CtrlResize objects
controls. When set to "true", the behaviour of the resizing is changed
(cf. documentation). The main use for these attributes is to keep a
a control centered in the layout (horizontally, vertically or both) without
resizing the control.
- anchors have a new "lefttop" attribute, allowing them to follow the
border of the window when resizing
- the resizing is now handled by the WindowManager class (to enforce the
mediator pattern). This makes it possible to handle tricky cases,
such as:
window B is anchored to window A, and A is resized
==> B moves accordingly, and can still be anchored by other windows
with id "pledit" (defined in the new tag "<IniFile>" contains:
[Text]
Normal=#FFFFFF
it will create a constant "pledit.Text.Normal" with value "#FFFFFF"
* winamp2.xml: use the "pledit.txt" file to have correct playlist colors
is it ok to backport in 0.8.5 ?
XML example:
<PopupMenu id="sample_menu">
<MenuItem label="Play" action="vlc.play()" />
<MenuItem label="Pause" action="vlc.pause()" />
<MenuSeparator />
<MenuItem label="Show playlist" action="playlist_window.show()" />
<MenuItem label="Hide playlist" action="playlist_window.hide()" />
<MenuSeparator />
<MenuItem label="Quick open file" action="dialogs.fileSimple()" />
</PopupMenu>
To call the menu:
<Button action="sample_menu.show()" ... />
Known bug: the popup disappears when the user clicks "too fast" on the
button: the control refreshes itself in an asynchronous way, and the popup
dislikes it... so click slowly :)
"nbFrames" and "fps" in the (Sub)Bitmap elements to set the number
of frames and the frame rate in a bitmap. As in the radialslider,
the different frames are just laid vertically in the bitamp (and
all the frames must have the same size)
At the moment animated bitmaps are only supported in Button controls.
- alignment: possible values are left/right/center (left is the default)
The right and center alignments are computed using the width of the
control (as given by the "width" attribute).
- scrolling: possible values are auto/manual/none (auto is the default)
* auto: same behaviour as before, the text automatically starts
scrolling if it doesn't fit in the width of the control. The user can
still drag it manually.
* manual: only manual scrolling is possible
* none: no scrolling possible
* builder.cpp: don't build a subbitmap or a fontbitmap if it already
exists (so if the xml contains elements with the same id, the first
valid one is kept)