CComponentsFooter: add optional possibility to switch colored button frame

Origin commit data
------------------
Branch: ni/coolstream
Commit: 7ec096fa3d
Author: Thilo Graf <dbt@novatux.de>
Date: 2014-11-06 (Thu, 06 Nov 2014)


------------------
No further description and justification available within origin commit message!

------------------
This commit was generated by Migit
This commit is contained in:
2014-11-06 21:22:39 +01:00
parent c05bb7d301
commit 3ebbf69413
2 changed files with 19 additions and 8 deletions

View File

@@ -77,6 +77,7 @@ void CComponentsFooter::initVarFooter( const int& x_pos, const int& y_pos, const
col_body = color_body; col_body = color_body;
col_shadow = color_shadow; col_shadow = color_shadow;
col_body_gradient = false; col_body_gradient = false;
btn_auto_frame_col = false;
corner_rad = RADIUS_LARGE; corner_rad = RADIUS_LARGE;
corner_type = CORNER_BOTTOM; corner_type = CORNER_BOTTOM;
@@ -146,14 +147,19 @@ void CComponentsFooter::setButtonLabels(const struct button_label_s * const cont
btn->setButtonResult(content[i].btn_result); btn->setButtonResult(content[i].btn_result);
btn->setButtonAlias(content[i].btn_alias); btn->setButtonAlias(content[i].btn_alias);
if (btn_name == NEUTRINO_ICON_BUTTON_RED) //set button frames to icon color, predefined for available color buttons
btn->setColorFrame(COL_DARK_RED); if (btn_auto_frame_col){
if (btn_name == NEUTRINO_ICON_BUTTON_GREEN) fb_pixel_t f_col = btn->getColorFrame();
btn->setColorFrame(COL_DARK_GREEN); if (btn_name == NEUTRINO_ICON_BUTTON_RED)
if (btn_name == NEUTRINO_ICON_BUTTON_YELLOW) f_col = COL_DARK_RED;
btn->setColorFrame(COL_OLIVE); if (btn_name == NEUTRINO_ICON_BUTTON_GREEN)
if (btn_name == NEUTRINO_ICON_BUTTON_BLUE) f_col = COL_DARK_GREEN;
btn->setColorFrame(COL_DARK_BLUE); if (btn_name == NEUTRINO_ICON_BUTTON_YELLOW)
f_col = COL_OLIVE;
if (btn_name == NEUTRINO_ICON_BUTTON_BLUE)
f_col = COL_DARK_BLUE;
btn->setColorFrame(f_col);
}
chain->addCCItem(btn); chain->addCCItem(btn);

View File

@@ -69,6 +69,8 @@ class CComponentsFooter : public CComponentsHeader
///show button frame and background, default false ///show button frame and background, default false
bool btn_contour; bool btn_contour;
///enable/disable button frame in icon color, predefined for red, green, yellow and blue, default disabled
bool btn_auto_frame_col;
///property: set font for label caption, see also setButtonFont() ///property: set font for label caption, see also setButtonFont()
Font* ccf_btn_font; Font* ccf_btn_font;
@@ -95,6 +97,9 @@ class CComponentsFooter : public CComponentsHeader
///add button labels with string label type as content, parameter 1 as vector, chain_width as int, label width as int ///add button labels with string label type as content, parameter 1 as vector, chain_width as int, label width as int
void setButtonLabels(const std::vector<button_label_s>v_content, const int& chain_width, const int& label_width); void setButtonLabels(const std::vector<button_label_s>v_content, const int& chain_width, const int& label_width);
///enable/disable button frame in icon color, predefined for red, green, yellow and blue
inline void enableButtonFrameColor(bool enable = true){btn_auto_frame_col = enable;}
///add button labels with old label type, count as size_t, chain_width as int, label width as int ///add button labels with old label type, count as size_t, chain_width as int, label width as int
///NOTE: for compatibility with older button handler find in gui/widget/buttons.h, if possible, don't use this ///NOTE: for compatibility with older button handler find in gui/widget/buttons.h, if possible, don't use this
void setButtonLabels(const struct button_label * const content, const size_t& label_count, const int& chain_width = 0, const int& label_width = 0); void setButtonLabels(const struct button_label * const content, const size_t& label_count, const int& chain_width = 0, const int& label_width = 0);