From 8e50353773b3405c373413f0b216132831568e6c Mon Sep 17 00:00:00 2001 From: svenhoefer Date: Sat, 22 Apr 2017 17:02:48 +0200 Subject: [PATCH 1/6] - colors: add and use missing COL_SCROLLBAR_PLUS_0 wrapper --- src/gui/color.h | 1 + src/gui/components/cc_frm_scrollbar.h | 32 +++++++++++++-------------- 2 files changed, 17 insertions(+), 16 deletions(-) diff --git a/src/gui/color.h b/src/gui/color.h index abad69330..a902ab709 100644 --- a/src/gui/color.h +++ b/src/gui/color.h @@ -124,6 +124,7 @@ #define COL_FRAME_PLUS_0 COL_FRAME #define COL_SCROLLBAR COL_MENUCONTENT_PLUS_1 +#define COL_SCROLLBAR_PLUS_0 COL_SCROLLBAR #define COL_SCROLLBAR_ACTIVE COL_MENUCONTENT_PLUS_3 #define COL_SCROLLBAR_ACTIVE_PLUS_0 COL_SCROLLBAR_ACTIVE #define COL_SCROLLBAR_PASSIVE COL_MENUCONTENT_PLUS_2 diff --git a/src/gui/components/cc_frm_scrollbar.h b/src/gui/components/cc_frm_scrollbar.h index 9fd1ab984..8658d5428 100644 --- a/src/gui/components/cc_frm_scrollbar.h +++ b/src/gui/components/cc_frm_scrollbar.h @@ -79,11 +79,11 @@ class CComponentsScrollBar : public CComponentsFrmChain * usual paraemters: * @param[in] parent optional, exepts type pointer to a parent CComponentsForm object, default NULL * @param[in] shadow_mode optional, exepts type int defined by shadow mode enums, default CC_SHADOW_OFF - * @param[in] color_frame optional, exepts type fb_pixel_t, default COL_SCROLLBAR - * @param[in] color_body optional, exepts type fb_pixel_t, default COL_SCROLLBAR + * @param[in] color_frame optional, exepts type fb_pixel_t, default COL_SCROLLBAR_PLUS_0 + * @param[in] color_body optional, exepts type fb_pixel_t, default COL_SCROLLBAR_PLUS_0 * @param[in] color_shadow optional, exepts type fb_pixel_t, default COL_SHADOW_PLUS_0 - * @param[in] color_select optional, exepts type fb_pixel_t, default COL_SCROLLBAR_ACTIVE - * @param[in] color_passive optional, exepts type fb_pixel_t, default COL_SCROLLBAR_PASSIVE + * @param[in] color_select optional, exepts type fb_pixel_t, default COL_SCROLLBAR_ACTIVE_PLUS_0 + * @param[in] color_passive optional, exepts type fb_pixel_t, default COL_SCROLLBAR_PASSIVE_PLUS_0 */ CComponentsScrollBar( const int &x_pos, const int &y_pos, @@ -92,11 +92,11 @@ class CComponentsScrollBar : public CComponentsFrmChain const int& count = 1, CComponentsForm *parent = NULL, int shadow_mode = CC_SHADOW_OFF, - fb_pixel_t color_frame = COL_SCROLLBAR, - fb_pixel_t color_body = COL_SCROLLBAR, + fb_pixel_t color_frame = COL_SCROLLBAR_PLUS_0, + fb_pixel_t color_body = COL_SCROLLBAR_PLUS_0, fb_pixel_t color_shadow = COL_SHADOW_PLUS_0, - fb_pixel_t color_select = COL_SCROLLBAR_ACTIVE, - fb_pixel_t color_passive = COL_SCROLLBAR_PASSIVE); + fb_pixel_t color_select = COL_SCROLLBAR_ACTIVE_PLUS_0, + fb_pixel_t color_passive = COL_SCROLLBAR_PASSIVE_PLUS_0); // ~CComponentsScrollBar(); //inherited from CComponentsForm /**Set current page number @@ -158,11 +158,11 @@ class CComponentsScrollBar : public CComponentsFrmChain * usual paraemters: * @param[in] parent optional, exepts type pointer to a parent CComponentsForm object, default NULL * @param[in] shadow_mode optional, exepts type int defined by shadow mode enums, default CC_SHADOW_OFF - * @param[in] color_frame optional, exepts type fb_pixel_t, default COL_SCROLLBAR_ACTIVE_PLUS_0 - * @param[in] color_body optional, exepts type fb_pixel_t, default COL_SCROLLBAR_PASSIVE_PLUS_0 + * @param[in] color_frame optional, exepts type fb_pixel_t, default COL_SCROLLBAR_PLUS_0 + * @param[in] color_body optional, exepts type fb_pixel_t, default COL_SCROLLBAR_PLUS_0 * @param[in] color_shadow optional, exepts type fb_pixel_t, default COL_SHADOW_PLUS_0 - * @param[in] color_select optional, exepts type fb_pixel_t, default COL_SCROLLBAR_ACTIVE - * @param[in] color_passive optional, exepts type fb_pixel_t, default COL_SCROLLBAR_PASSIVE + * @param[in] color_select optional, exepts type fb_pixel_t, default COL_SCROLLBAR_ACTIVE_PLUS_0 + * @param[in] color_passive optional, exepts type fb_pixel_t, default COL_SCROLLBAR_PASSIVE_PLUS_0 */ void paintScrollBar( const int &x_pos, const int &y_pos, @@ -171,10 +171,10 @@ void paintScrollBar( const int &x_pos, const int& count, const int& current_num, int shadow_mode = CC_SHADOW_OFF, - fb_pixel_t color_frame = COL_SCROLLBAR, - fb_pixel_t color_body = COL_SCROLLBAR, + fb_pixel_t color_frame = COL_SCROLLBAR_PLUS_0, + fb_pixel_t color_body = COL_SCROLLBAR_PLUS_0, fb_pixel_t color_shadow = COL_SHADOW_PLUS_0, - fb_pixel_t color_select = COL_SCROLLBAR_ACTIVE, - fb_pixel_t color_passive = COL_SCROLLBAR_PASSIVE); + fb_pixel_t color_select = COL_SCROLLBAR_ACTIVE_PLUS_0, + fb_pixel_t color_passive = COL_SCROLLBAR_PASSIVE_PLUS_0); #endif From 3669130b14c0dc4179e14ff930f31ffcd3e44863 Mon Sep 17 00:00:00 2001 From: svenhoefer Date: Sat, 22 Apr 2017 17:02:48 +0200 Subject: [PATCH 2/6] - luainstance: add missing COL_SCROLLBAR colors --- src/gui/lua/lua_api_version.h | 2 +- src/gui/lua/luainstance.cpp | 2 ++ 2 files changed, 3 insertions(+), 1 deletion(-) diff --git a/src/gui/lua/lua_api_version.h b/src/gui/lua/lua_api_version.h index 9e8343ca1..078e88ef8 100644 --- a/src/gui/lua/lua_api_version.h +++ b/src/gui/lua/lua_api_version.h @@ -4,4 +4,4 @@ * to luainstance.h changes */ #define LUA_API_VERSION_MAJOR 1 -#define LUA_API_VERSION_MINOR 72 +#define LUA_API_VERSION_MINOR 73 diff --git a/src/gui/lua/luainstance.cpp b/src/gui/lua/luainstance.cpp index ee304db0a..c031083ce 100644 --- a/src/gui/lua/luainstance.cpp +++ b/src/gui/lua/luainstance.cpp @@ -175,6 +175,7 @@ static void set_lua_variables(lua_State *L) { "MENUCONTENTINACTIVE", MAGIC_COLOR | (COL_MENUCONTENTINACTIVE) }, { "MENUFOOT", MAGIC_COLOR | (COL_MENUFOOT) }, { "FRAME", MAGIC_COLOR | (COL_FRAME) }, + { "SCROLLBAR", MAGIC_COLOR | (COL_SCROLLBAR) }, { "SCROLLBAR_ACTIVE", MAGIC_COLOR | (COL_SCROLLBAR_ACTIVE) }, { "SCROLLBAR_PASSIVE", MAGIC_COLOR | (COL_SCROLLBAR_PASSIVE) }, { "PROGRESSBAR_ACTIVE", MAGIC_COLOR | (COL_PROGRESSBAR_ACTIVE) }, @@ -226,6 +227,7 @@ static void set_lua_variables(lua_State *L) { "MENUCONTENTINACTIVE_PLUS_0", (lua_Unsigned) (COL_MENUCONTENTINACTIVE_PLUS_0) }, { "MENUFOOT_PLUS_0", (lua_Unsigned) (COL_MENUFOOT_PLUS_0) }, { "FRAME_PLUS_0", (lua_Unsigned) (COL_FRAME_PLUS_0) }, + { "SCROLLBAR_PLUS_0", (lua_Unsigned) (COL_SCROLLBAR_PLUS_0) }, { "SCROLLBAR_ACTIVE_PLUS_0", (lua_Unsigned) (COL_SCROLLBAR_ACTIVE_PLUS_0) }, { "SCROLLBAR_PASSIVE_PLUS_0", (lua_Unsigned) (COL_SCROLLBAR_PASSIVE_PLUS_0) }, { "PROGRESSBAR_ACTIVE_PLUS_0", (lua_Unsigned) (COL_PROGRESSBAR_ACTIVE_PLUS_0) }, From d3f27914e33cae4f584ad3426cb8f739beec330d Mon Sep 17 00:00:00 2001 From: svenhoefer Date: Sat, 22 Apr 2017 17:02:48 +0200 Subject: [PATCH 3/6] - color.h: just code cosmetics --- src/gui/color.h | 24 ++++++++++++------------ 1 file changed, 12 insertions(+), 12 deletions(-) diff --git a/src/gui/color.h b/src/gui/color.h index a902ab709..bcce61d8c 100644 --- a/src/gui/color.h +++ b/src/gui/color.h @@ -120,20 +120,20 @@ #endif // some wrappers to get more readability -#define COL_FRAME COL_MENUCONTENT_PLUS_6 -#define COL_FRAME_PLUS_0 COL_FRAME +#define COL_FRAME COL_MENUCONTENT_PLUS_6 +#define COL_FRAME_PLUS_0 COL_FRAME -#define COL_SCROLLBAR COL_MENUCONTENT_PLUS_1 -#define COL_SCROLLBAR_PLUS_0 COL_SCROLLBAR -#define COL_SCROLLBAR_ACTIVE COL_MENUCONTENT_PLUS_3 -#define COL_SCROLLBAR_ACTIVE_PLUS_0 COL_SCROLLBAR_ACTIVE -#define COL_SCROLLBAR_PASSIVE COL_MENUCONTENT_PLUS_2 -#define COL_SCROLLBAR_PASSIVE_PLUS_0 COL_SCROLLBAR_PASSIVE +#define COL_SCROLLBAR COL_MENUCONTENT_PLUS_1 +#define COL_SCROLLBAR_PLUS_0 COL_SCROLLBAR +#define COL_SCROLLBAR_ACTIVE COL_MENUCONTENT_PLUS_3 +#define COL_SCROLLBAR_ACTIVE_PLUS_0 COL_SCROLLBAR_ACTIVE +#define COL_SCROLLBAR_PASSIVE COL_MENUCONTENT_PLUS_2 +#define COL_SCROLLBAR_PASSIVE_PLUS_0 COL_SCROLLBAR_PASSIVE -#define COL_PROGRESSBAR_ACTIVE COL_MENUCONTENT_PLUS_7 -#define COL_PROGRESSBAR_ACTIVE_PLUS_0 COL_PROGRESSBAR_ACTIVE -#define COL_PROGRESSBAR_PASSIVE COL_MENUCONTENT_PLUS_1 -#define COL_PROGRESSBAR_PASSIVE_PLUS_0 COL_PROGRESSBAR_PASSIVE +#define COL_PROGRESSBAR_ACTIVE COL_MENUCONTENT_PLUS_7 +#define COL_PROGRESSBAR_ACTIVE_PLUS_0 COL_PROGRESSBAR_ACTIVE +#define COL_PROGRESSBAR_PASSIVE COL_MENUCONTENT_PLUS_1 +#define COL_PROGRESSBAR_PASSIVE_PLUS_0 COL_PROGRESSBAR_PASSIVE int convertSetupColor2RGB(unsigned char r, unsigned char g, unsigned char b); int convertSetupAlpha2Alpha(unsigned char alpha); From 0943c467e2a88811374d3f980f0c2df4dccab139 Mon Sep 17 00:00:00 2001 From: Thilo Graf Date: Sun, 23 Apr 2017 15:06:16 +0200 Subject: [PATCH 4/6] CChannelList/CUpnpBrowserGui: add missing reinit for corner modes Required eg. if corner settings has been changed by user on runtime. --- src/gui/channellist.cpp | 1 + src/gui/upnpbrowser.cpp | 7 ++++++- 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/src/gui/channellist.cpp b/src/gui/channellist.cpp index 2e6ad72b1..ba3cb8941 100644 --- a/src/gui/channellist.cpp +++ b/src/gui/channellist.cpp @@ -2119,6 +2119,7 @@ void CChannelList::paintHead() } header->setDimensionsAll(x, y, full_width, theight); + header->setCorner(RADIUS_LARGE, CORNER_TOP); if (bouquet && bouquet->zapitBouquet && bouquet->zapitBouquet->bLocked != g_settings.parentallock_defaultlocked) header->setIcon(NEUTRINO_ICON_LOCK); diff --git a/src/gui/upnpbrowser.cpp b/src/gui/upnpbrowser.cpp index 5871a3ea2..b407d7924 100644 --- a/src/gui/upnpbrowser.cpp +++ b/src/gui/upnpbrowser.cpp @@ -941,6 +941,7 @@ void CUpnpBrowserGui::paintDeviceInfo() tmp += m_devices[m_selecteddevice].modelurl; topbox.setDimensionsAll(m_x, m_y, m_width, m_topbox_height); + topbox.setCorner(RADIUS_LARGE); topbox.setText(tmp, CTextBox::AUTO_WIDTH); topbox.paint0(); } @@ -991,7 +992,7 @@ void CUpnpBrowserGui::paintDevices() header.addContextButton(NEUTRINO_ICON_BUTTON_MUTE_SMALL); else header.removeContextButtons(); - //header.enableShadow(); + header.setCorner(RADIUS_LARGE, CORNER_TOP); header.paint(CC_SAVE_SCREEN_NO); // Items @@ -1012,6 +1013,7 @@ void CUpnpBrowserGui::paintDevices() m_frameBuffer->paintBoxRel(m_x + m_width, m_item_y + OFFSET_SHADOW, OFFSET_SHADOW, sb, COL_SHADOW_PLUS_0); // Foot + footer.setCorner(RADIUS_LARGE, CORNER_BOTTOM); footer.paintButtons(m_x, m_footer_y, m_width, m_footer_height, 1, &RescanButton, m_width/2); paintItem2DetailsLine(-1); // clear it @@ -1148,6 +1150,7 @@ void CUpnpBrowserGui::paintItemInfo(UPnPEntry *entry) } } + topbox.setCorner(RADIUS_LARGE); topbox.setText(tmp, CTextBox::AUTO_WIDTH); topbox.paint0(); } @@ -1197,7 +1200,9 @@ void CUpnpBrowserGui::paintDetails(UPnPEntry *entry, bool use_playing) char tmp_time[] = "000:00"; int timebox_width = timebox.getFont()->getRenderWidth(tmp_time) + OFFSET_INNER_MID*2; infobox.setDimensionsAll(m_x, m_infobox_y, m_width - OFFSET_SHADOW - OFFSET_INTER - timebox_width, m_infobox_height); + infobox.setCorner(RADIUS_LARGE); timebox.setDimensionsAll(m_x + m_width - timebox_width, infobox.getYPos(), timebox_width, m_infobox_height); + timebox.setCorner(RADIUS_LARGE); printf("paintDetails: use_playing %d shown %d\n", use_playing, m_playing_entry_is_shown); if ((!use_playing) && entry->isdir){ From 1413f296ae1afb786a2a5b38edcf10f3123f59b4 Mon Sep 17 00:00:00 2001 From: Thilo Graf Date: Sun, 23 Apr 2017 16:45:03 +0200 Subject: [PATCH 5/6] CComponentsHeader: add fallback if title and logo are overlapping Logo is now general centered on screen, not as before between title and clock --- src/gui/components/cc_frm_header.cpp | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/src/gui/components/cc_frm_header.cpp b/src/gui/components/cc_frm_header.cpp index f053e94ec..9fef1dfba 100644 --- a/src/gui/components/cc_frm_header.cpp +++ b/src/gui/components/cc_frm_header.cpp @@ -307,8 +307,15 @@ void CComponentsHeader::initLogo() x_logo = x_logo_right; if (cch_logo.Align == CC_LOGO_LEFT) x_logo = x_logo_left; - if (cch_logo.Align == CC_LOGO_CENTER) - x_logo = x_logo_left + logo_space/2 - cch_logo_obj->getWidth()/2; + if (cch_logo.Align == CC_LOGO_CENTER){ + x_logo = width/2 - cch_logo_obj->getWidth()/2; + //fallback if previous item and logo are overlapping + if (getCCItem(prev_id)){ + int x_tmp = x_logo_left + logo_space/2 - cch_logo_obj->getWidth()/2; + if (x_logo <= x_logo_left) + x_logo = x_tmp; + } + } cch_logo_obj->setXPos(x_logo); cch_logo_obj->setYPos(height/2 - cch_logo_obj->getHeight()/2); From 330171c90bb02e94689529162df95fc5e855090a Mon Sep 17 00:00:00 2001 From: Thilo Graf Date: Sun, 23 Apr 2017 16:56:41 +0200 Subject: [PATCH 6/6] CComponentsHeader: use previous offset to fit logo Was OFFSET_INNER_MIN in older versions, not OFFSET_INNER_SMALL. --- src/gui/components/cc_frm_header.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/gui/components/cc_frm_header.cpp b/src/gui/components/cc_frm_header.cpp index 9fef1dfba..9161a0fe3 100644 --- a/src/gui/components/cc_frm_header.cpp +++ b/src/gui/components/cc_frm_header.cpp @@ -274,7 +274,7 @@ void CComponentsHeader::initIcon() void CComponentsHeader::initLogo() { - cch_logo.dy_max = cch_logo.dy_max == -1 ? height - 2*OFFSET_INNER_SMALL : cch_logo.dy_max; + cch_logo.dy_max = cch_logo.dy_max == -1 ? height - 2*OFFSET_INNER_MIN : cch_logo.dy_max; if(!cch_logo_obj) cch_logo_obj = new CComponentsChannelLogoScalable(width/2, height/2 - cch_logo.dy_max/2, cch_logo.Name, cch_logo.Id, this);