clear() removes only items and their instances inside button container, but all
other properties (e.g. width) are not touched. Re init should avoids this.
Count of alternate message values was limited to 1 value. Now it is
possible to add any count of message values.
directKey and directKeyAlt were removed from struct type 'button_label_cc'
and directKeys was added as container for possible message values.
Some methods of CComponentsFooter had to be adapted for that.
button_label_l and button_label_s are now
merged to button_label_cc with prepared default values for text and locales.This type contains all possible
button label properties. Values for locales and string
are evaluated in setButtonLabels(), so it's possible to remove some
overloaded methodes.
Default fonts for header and footer must be handled too.
After font settings changes these objects could be invalid.
Default fonts have invalid pointers after font changes too. Extra reset is required.
* remove size compare
If only one button exists, possible new text color would be ignored
and wrong Text color was visible with one item.
This behavior was observed in message boxes with
single buttons (eg OK, or Cancel).
This is not really completly implemented for footer at the momemnt, because
button objects are still not prepared or tuned for that.
If it is enabled, currently it could occur unintentionally background behavior
eg.: flickereffects or background display errors in button objects.
NOTE: anyway users can enable gradient in theme files and could override this setting.
Now here it is globally disabled for footers. If it works right,
it will be enabled in future.
Now it's possible to set parameters for frames and text.
Parameters are prdefined for better contrasts in select or default mode.
TODO: background modes have no effects at the moment. Here are other things need to be done.
Replacing messagebox, hintbox_ext and some derivated parts with
basic class hintbox and derivated class CMsgBox. This should unify
window handling and avoids maintain of multiple classes with quasi
same purpose and adds more functionality.
TODO: fix and optimize details
cch_font has nothing to do with button font and is already
inherited and defined from header class and can be redefined with
setCaptionFont() methode if required.
* INFOBAR_SHADOW to SHADOW because it's not only used in infoviewer
* INFOBAR_SHADOW_TEXT to MENUFOOT_TEXT because it's the proper name
This is in preparation to make footer colors configurable
- outsourced some classes cc_item.cpp/h, cc_draw.cpp/h
- added extra methodes for simple use of some basic components extra.cpp/h
- rework clock handling: use timer class, reworked members for
enable/disable clock with external timer events,
tryed to fix some display issues related with infoclock and
time osd clock in moviebrowser, channellist, menuus
- reworked hide/kill handling, removed parameter for hide(), try to use
cached backgrounds for other constallations, paint cache, image cache (all beta)
- reworked shadow/frame handling, add shadow modes for left/right
arrangement, TODO: repaint for existant instances required
- reworked color gradient assignment (beta)
... Note: I had a data crash in my local git tree
and i tryed to restore my historie, but most was lost. Therefore here
the commit is large
Color gradient feature was originally intended for use
inside theme settings and it's not really suitable for
generally use as default in all themes at the moment, so it makes more
sense to have options in theme settings and let the user decide
to customize this, unless enough other gui parts can use this feature.
Allows assigning of result, msg and alias values with label struct.
NOTE: Old button label struct are compatible but limited only and
not recommended for usage!
Old parameters 'struct button_label' doesn't provide newer parameters.
Missing parameters are filled with default values and must be assigned
afterward, if required.