CComponentsButton: use unified body colors in gradient mode

Some theme controlled colors don't really looks nice in some
combinations with window backgrounds.
This commit is contained in:
2014-10-30 09:58:27 +01:00
parent c7a40bb6dc
commit 66e5f03c92
2 changed files with 20 additions and 16 deletions

View File

@@ -106,17 +106,17 @@ void CComponentsButton::initVarButton( const int& x_pos, const int& y_pos, const
col_shadow = color_shadow; col_shadow = color_shadow;
col_body_gradient = g_settings.gradiant; col_body_gradient = g_settings.gradiant;
setColBodyGradient(CColorGradient::gradientDark2Light2Dark, CFrameBuffer::gradientVertical, CColorGradient::light); setColBodyGradient(CColorGradient::gradientLight2Dark, CFrameBuffer::gradientVertical, CColorGradient::light);
cc_item_enabled = enabled; cc_item_enabled = enabled;
cc_item_selected = selected; cc_item_selected = selected;
fr_thickness = 3; fr_thickness = 3;
append_x_offset = 6; append_x_offset = 6;
append_y_offset = 0; append_y_offset = 0;
corner_rad = RADIUS_MID; corner_rad = 0;
cc_btn_capt_col = COL_INFOBAR_SHADOW_TEXT; cc_btn_capt_col = col_body_gradient ? COL_BUTTON_TEXT_ENABLED : COL_INFOBAR_SHADOW_TEXT;
cc_btn_capt_disable_col = COL_MENUCONTENTINACTIVE_TEXT; cc_btn_capt_disable_col = col_body_gradient ? COL_BUTTON_TEXT_DISABLED : COL_MENUCONTENTINACTIVE_TEXT;
cc_btn_icon_obj = NULL; cc_btn_icon_obj = NULL;
cc_btn_capt_obj = NULL; cc_btn_capt_obj = NULL;
cc_btn_dy_font = CNeutrinoFonts::getInstance(); cc_btn_dy_font = CNeutrinoFonts::getInstance();

View File

@@ -35,6 +35,10 @@
#include <driver/neutrinofonts.h> #include <driver/neutrinofonts.h>
#include <driver/rcinput.h> #include <driver/rcinput.h>
#define COL_BUTTON_BODY COL_DARK_GRAY
#define COL_BUTTON_TEXT_ENABLED COL_BLACK
#define COL_BUTTON_TEXT_DISABLED COL_LIGHT_GRAY
//! Sub class of CComponentsForm. //! Sub class of CComponentsForm.
/*! /*!
Shows a button box with caption and optional icon. Shows a button box with caption and optional icon.
@@ -98,7 +102,7 @@ class CComponentsButton : public CComponentsFrmChain
bool selected = false, bool selected = false,
bool enabled = true, bool enabled = true,
bool has_shadow = CC_SHADOW_OFF, bool has_shadow = CC_SHADOW_OFF,
fb_pixel_t color_frame = COL_DARK_GRAY, fb_pixel_t color_body = COL_MENUCONTENT_PLUS_0, fb_pixel_t color_shadow = COL_MENUCONTENTDARK_PLUS_0); fb_pixel_t color_frame = COL_DARK_GRAY, fb_pixel_t color_body = COL_BUTTON_BODY, fb_pixel_t color_shadow = COL_MENUCONTENTDARK_PLUS_0);
CComponentsButton( const int& x_pos, const int& y_pos, const int& w, const int& h, CComponentsButton( const int& x_pos, const int& y_pos, const int& w, const int& h,
const neutrino_locale_t& caption_locale, const neutrino_locale_t& caption_locale,
@@ -107,7 +111,7 @@ class CComponentsButton : public CComponentsFrmChain
bool selected = false, bool selected = false,
bool enabled = true, bool enabled = true,
bool has_shadow = CC_SHADOW_OFF, bool has_shadow = CC_SHADOW_OFF,
fb_pixel_t color_frame = COL_DARK_GRAY, fb_pixel_t color_body = COL_MENUCONTENT_PLUS_0, fb_pixel_t color_shadow = COL_MENUCONTENTDARK_PLUS_0); fb_pixel_t color_frame = COL_DARK_GRAY, fb_pixel_t color_body = COL_BUTTON_BODY, fb_pixel_t color_shadow = COL_MENUCONTENTDARK_PLUS_0);
CComponentsButton( const int& x_pos, const int& y_pos, const int& w, const int& h, CComponentsButton( const int& x_pos, const int& y_pos, const int& w, const int& h,
const neutrino_locale_t& caption_locale, const neutrino_locale_t& caption_locale,
@@ -116,7 +120,7 @@ class CComponentsButton : public CComponentsFrmChain
bool selected = false, bool selected = false,
bool enabled = true, bool enabled = true,
bool has_shadow = CC_SHADOW_OFF, bool has_shadow = CC_SHADOW_OFF,
fb_pixel_t color_frame = COL_DARK_GRAY, fb_pixel_t color_body = COL_MENUCONTENT_PLUS_0, fb_pixel_t color_shadow = COL_MENUCONTENTDARK_PLUS_0); fb_pixel_t color_frame = COL_DARK_GRAY, fb_pixel_t color_body = COL_BUTTON_BODY, fb_pixel_t color_shadow = COL_MENUCONTENTDARK_PLUS_0);
CComponentsButton( const int& x_pos, const int& y_pos, const int& w, const int& h, CComponentsButton( const int& x_pos, const int& y_pos, const int& w, const int& h,
const std::string& caption, const std::string& caption,
@@ -125,7 +129,7 @@ class CComponentsButton : public CComponentsFrmChain
bool selected = false, bool selected = false,
bool enabled = true, bool enabled = true,
bool has_shadow = CC_SHADOW_OFF, bool has_shadow = CC_SHADOW_OFF,
fb_pixel_t color_frame = COL_DARK_GRAY, fb_pixel_t color_body = COL_MENUCONTENT_PLUS_0, fb_pixel_t color_shadow = COL_MENUCONTENTDARK_PLUS_0); fb_pixel_t color_frame = COL_DARK_GRAY, fb_pixel_t color_body = COL_BUTTON_BODY, fb_pixel_t color_shadow = COL_MENUCONTENTDARK_PLUS_0);
///set text color ///set text color
virtual void setButtonTextColor(fb_pixel_t text_color, fb_pixel_t text_color_disabled = COL_MENUCONTENTINACTIVE_TEXT){cc_btn_capt_col = text_color; cc_btn_capt_disable_col = text_color_disabled;} virtual void setButtonTextColor(fb_pixel_t text_color, fb_pixel_t text_color_disabled = COL_MENUCONTENTINACTIVE_TEXT){cc_btn_capt_col = text_color; cc_btn_capt_disable_col = text_color_disabled;}
@@ -178,7 +182,7 @@ class CComponentsButtonRed : public CComponentsButton
bool selected = false, bool selected = false,
bool enabled = true, bool enabled = true,
bool has_shadow = CC_SHADOW_OFF, bool has_shadow = CC_SHADOW_OFF,
fb_pixel_t color_frame = COL_LIGHT_GRAY, fb_pixel_t color_body = COL_MENUCONTENT_PLUS_0, fb_pixel_t color_shadow = COL_MENUCONTENTDARK_PLUS_0) fb_pixel_t color_frame = COL_LIGHT_GRAY, fb_pixel_t color_body = COL_BUTTON_BODY, fb_pixel_t color_shadow = COL_MENUCONTENTDARK_PLUS_0)
:CComponentsButton(x_pos, y_pos, w, h, caption, NEUTRINO_ICON_BUTTON_RED, parent, selected, enabled, has_shadow, color_frame, color_body, color_shadow) :CComponentsButton(x_pos, y_pos, w, h, caption, NEUTRINO_ICON_BUTTON_RED, parent, selected, enabled, has_shadow, color_frame, color_body, color_shadow)
{ {
cc_item_type = CC_ITEMTYPE_BUTTON_RED; cc_item_type = CC_ITEMTYPE_BUTTON_RED;
@@ -189,7 +193,7 @@ class CComponentsButtonRed : public CComponentsButton
bool selected = false, bool selected = false,
bool enabled = true, bool enabled = true,
bool has_shadow = CC_SHADOW_OFF, bool has_shadow = CC_SHADOW_OFF,
fb_pixel_t color_frame = COL_LIGHT_GRAY, fb_pixel_t color_body = COL_MENUCONTENT_PLUS_0, fb_pixel_t color_shadow = COL_MENUCONTENTDARK_PLUS_0) fb_pixel_t color_frame = COL_LIGHT_GRAY, fb_pixel_t color_body = COL_BUTTON_BODY, fb_pixel_t color_shadow = COL_MENUCONTENTDARK_PLUS_0)
:CComponentsButton(x_pos, y_pos, w, h, caption_locale, NEUTRINO_ICON_BUTTON_RED, parent, selected, enabled, has_shadow, color_frame, color_body, color_shadow) :CComponentsButton(x_pos, y_pos, w, h, caption_locale, NEUTRINO_ICON_BUTTON_RED, parent, selected, enabled, has_shadow, color_frame, color_body, color_shadow)
{ {
cc_item_type = CC_ITEMTYPE_BUTTON_RED; cc_item_type = CC_ITEMTYPE_BUTTON_RED;
@@ -209,7 +213,7 @@ class CComponentsButtonGreen : public CComponentsButton
bool selected = false, bool selected = false,
bool enabled = true, bool enabled = true,
bool has_shadow = CC_SHADOW_OFF, bool has_shadow = CC_SHADOW_OFF,
fb_pixel_t color_frame = COL_LIGHT_GRAY, fb_pixel_t color_body = COL_MENUCONTENT_PLUS_0, fb_pixel_t color_shadow = COL_MENUCONTENTDARK_PLUS_0) fb_pixel_t color_frame = COL_LIGHT_GRAY, fb_pixel_t color_body = COL_BUTTON_BODY, fb_pixel_t color_shadow = COL_MENUCONTENTDARK_PLUS_0)
:CComponentsButton(x_pos, y_pos, w, h, caption, NEUTRINO_ICON_BUTTON_GREEN, parent, selected, enabled, has_shadow, color_frame, color_body, color_shadow) :CComponentsButton(x_pos, y_pos, w, h, caption, NEUTRINO_ICON_BUTTON_GREEN, parent, selected, enabled, has_shadow, color_frame, color_body, color_shadow)
{ {
cc_item_type = CC_ITEMTYPE_BUTTON_GREEN; cc_item_type = CC_ITEMTYPE_BUTTON_GREEN;
@@ -220,7 +224,7 @@ class CComponentsButtonGreen : public CComponentsButton
bool selected = false, bool selected = false,
bool enabled = true, bool enabled = true,
bool has_shadow = CC_SHADOW_OFF, bool has_shadow = CC_SHADOW_OFF,
fb_pixel_t color_frame = COL_LIGHT_GRAY, fb_pixel_t color_body = COL_MENUCONTENT_PLUS_0, fb_pixel_t color_shadow = COL_MENUCONTENTDARK_PLUS_0) fb_pixel_t color_frame = COL_LIGHT_GRAY, fb_pixel_t color_body = COL_BUTTON_BODY, fb_pixel_t color_shadow = COL_MENUCONTENTDARK_PLUS_0)
:CComponentsButton(x_pos, y_pos, w, h, caption_locale, NEUTRINO_ICON_BUTTON_GREEN, parent, selected, enabled, has_shadow, color_frame, color_body, color_shadow) :CComponentsButton(x_pos, y_pos, w, h, caption_locale, NEUTRINO_ICON_BUTTON_GREEN, parent, selected, enabled, has_shadow, color_frame, color_body, color_shadow)
{ {
cc_item_type = CC_ITEMTYPE_BUTTON_GREEN; cc_item_type = CC_ITEMTYPE_BUTTON_GREEN;
@@ -240,7 +244,7 @@ class CComponentsButtonYellow : public CComponentsButton
bool selected = false, bool selected = false,
bool enabled = true, bool enabled = true,
bool has_shadow = CC_SHADOW_OFF, bool has_shadow = CC_SHADOW_OFF,
fb_pixel_t color_frame = COL_LIGHT_GRAY, fb_pixel_t color_body = COL_MENUCONTENT_PLUS_0, fb_pixel_t color_shadow = COL_MENUCONTENTDARK_PLUS_0) fb_pixel_t color_frame = COL_LIGHT_GRAY, fb_pixel_t color_body = COL_BUTTON_BODY, fb_pixel_t color_shadow = COL_MENUCONTENTDARK_PLUS_0)
:CComponentsButton(x_pos, y_pos, w, h, caption, NEUTRINO_ICON_BUTTON_YELLOW, parent, selected, enabled, has_shadow, color_frame, color_body, color_shadow) :CComponentsButton(x_pos, y_pos, w, h, caption, NEUTRINO_ICON_BUTTON_YELLOW, parent, selected, enabled, has_shadow, color_frame, color_body, color_shadow)
{ {
cc_item_type = CC_ITEMTYPE_BUTTON_YELLOW; cc_item_type = CC_ITEMTYPE_BUTTON_YELLOW;
@@ -251,7 +255,7 @@ class CComponentsButtonYellow : public CComponentsButton
bool selected = false, bool selected = false,
bool enabled = true, bool enabled = true,
bool has_shadow = CC_SHADOW_OFF, bool has_shadow = CC_SHADOW_OFF,
fb_pixel_t color_frame = COL_LIGHT_GRAY, fb_pixel_t color_body = COL_MENUCONTENT_PLUS_0, fb_pixel_t color_shadow = COL_MENUCONTENTDARK_PLUS_0) fb_pixel_t color_frame = COL_LIGHT_GRAY, fb_pixel_t color_body = COL_BUTTON_BODY, fb_pixel_t color_shadow = COL_MENUCONTENTDARK_PLUS_0)
:CComponentsButton(x_pos, y_pos, w, h, caption_locale, NEUTRINO_ICON_BUTTON_YELLOW, parent, selected, enabled, has_shadow, color_frame, color_body, color_shadow) :CComponentsButton(x_pos, y_pos, w, h, caption_locale, NEUTRINO_ICON_BUTTON_YELLOW, parent, selected, enabled, has_shadow, color_frame, color_body, color_shadow)
{ {
cc_item_type = CC_ITEMTYPE_BUTTON_YELLOW; cc_item_type = CC_ITEMTYPE_BUTTON_YELLOW;
@@ -271,7 +275,7 @@ class CComponentsButtonBlue : public CComponentsButton
bool selected = false, bool selected = false,
bool enabled = true, bool enabled = true,
bool has_shadow = CC_SHADOW_OFF, bool has_shadow = CC_SHADOW_OFF,
fb_pixel_t color_frame = COL_LIGHT_GRAY, fb_pixel_t color_body = COL_MENUCONTENT_PLUS_0, fb_pixel_t color_shadow = COL_MENUCONTENTDARK_PLUS_0) fb_pixel_t color_frame = COL_LIGHT_GRAY, fb_pixel_t color_body = COL_BUTTON_BODY, fb_pixel_t color_shadow = COL_MENUCONTENTDARK_PLUS_0)
:CComponentsButton(x_pos, y_pos, w, h, caption, NEUTRINO_ICON_BUTTON_BLUE, parent, selected, enabled, has_shadow, color_frame, color_body, color_shadow) :CComponentsButton(x_pos, y_pos, w, h, caption, NEUTRINO_ICON_BUTTON_BLUE, parent, selected, enabled, has_shadow, color_frame, color_body, color_shadow)
{ {
cc_item_type = CC_ITEMTYPE_BUTTON_BLUE; cc_item_type = CC_ITEMTYPE_BUTTON_BLUE;
@@ -282,7 +286,7 @@ class CComponentsButtonBlue : public CComponentsButton
bool selected = false, bool selected = false,
bool enabled = true, bool enabled = true,
bool has_shadow = CC_SHADOW_OFF, bool has_shadow = CC_SHADOW_OFF,
fb_pixel_t color_frame = COL_LIGHT_GRAY, fb_pixel_t color_body = COL_MENUCONTENT_PLUS_0, fb_pixel_t color_shadow = COL_MENUCONTENTDARK_PLUS_0) fb_pixel_t color_frame = COL_LIGHT_GRAY, fb_pixel_t color_body = COL_BUTTON_BODY, fb_pixel_t color_shadow = COL_MENUCONTENTDARK_PLUS_0)
:CComponentsButton(x_pos, y_pos, w, h, caption_locale, NEUTRINO_ICON_BUTTON_BLUE, parent, selected, enabled, has_shadow, color_frame, color_body, color_shadow) :CComponentsButton(x_pos, y_pos, w, h, caption_locale, NEUTRINO_ICON_BUTTON_BLUE, parent, selected, enabled, has_shadow, color_frame, color_body, color_shadow)
{ {
cc_item_type = CC_ITEMTYPE_BUTTON_BLUE; cc_item_type = CC_ITEMTYPE_BUTTON_BLUE;