CComponents: add vars to modifie frames in selected mode

Origin commit data
------------------
Branch: ni/coolstream
Commit: 894d229b09
Author: Thilo Graf <dbt@novatux.de>
Date: 2013-04-16 (Tue, 16 Apr 2013)


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

------------------
This commit was generated by Migit
This commit is contained in:
2013-04-16 08:32:42 +02:00
parent 5daad15d35
commit b50b6df9d2
3 changed files with 14 additions and 6 deletions

View File

@@ -40,10 +40,10 @@ class CComponents
bool allowPaint(const int& i); bool allowPaint(const int& i);
protected: protected:
int x, y, height, width, corner_type, shadow_w; int x, y, height, width, corner_type, shadow_w;
int corner_rad, fr_thickness; int corner_rad, fr_thickness, fr_thickness_sel;
CFrameBuffer * frameBuffer; CFrameBuffer * frameBuffer;
std::vector<comp_fbdata_t> v_fbdata; std::vector<comp_fbdata_t> v_fbdata;
fb_pixel_t col_body, col_shadow, col_frame; fb_pixel_t col_body, col_shadow, col_frame, col_frame_sel;
bool firstPaint, shadow, is_painted, paint_bg; bool firstPaint, shadow, is_painted, paint_bg;
void initVarBasic(); void initVarBasic();
@@ -216,7 +216,7 @@ class CComponentsText : public CComponentsItem
virtual void removeLineBreaks(std::string& str); virtual void removeLineBreaks(std::string& str);
//get a Text Box object, so it's possible to get access directly to its methods //get a Text Box object, so it's possible to get access directly to its methods
CTextBox* getCTextBoxObject() { return ct_textbox; }; virtual CTextBox* getCTextBoxObject() { return ct_textbox; };
}; };
class CComponentsLabel : public CComponentsText class CComponentsLabel : public CComponentsText

View File

@@ -16,7 +16,7 @@
This program is distributed in the hope that it will be useful, This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
Library General Public License for more details. General Public License for more details.
You should have received a copy of the GNU General Public You should have received a copy of the GNU General Public
License along with this program; if not, write to the License along with this program; if not, write to the
@@ -64,11 +64,13 @@ void CComponents::initVarBasic()
col_body = COL_MENUCONTENT_PLUS_0; col_body = COL_MENUCONTENT_PLUS_0;
col_shadow = COL_MENUCONTENTDARK_PLUS_0; col_shadow = COL_MENUCONTENTDARK_PLUS_0;
col_frame = COL_MENUCONTENT_PLUS_6; col_frame = COL_MENUCONTENT_PLUS_6;
col_frame_sel = COL_MENUCONTENTSELECTED_PLUS_0;
corner_type = CORNER_ALL; corner_type = CORNER_ALL;
corner_rad = 0; corner_rad = 0;
shadow = CC_SHADOW_OFF; shadow = CC_SHADOW_OFF;
shadow_w = SHADOW_OFFSET; shadow_w = SHADOW_OFFSET;
fr_thickness = 0; fr_thickness = 0;
fr_thickness_sel = 3;
firstPaint = true; firstPaint = true;
is_painted = false; is_painted = false;

View File

@@ -72,12 +72,18 @@ void CComponentsItem::paintInit(bool do_save_bg)
int sw = shadow ? shadow_w : 0; int sw = shadow ? shadow_w : 0;
int th = fr_thickness; int th = fr_thickness;
int col_frame_cur = col_frame;
if (cc_item_selected){
col_frame_cur = col_frame_sel;
th = max(fr_thickness_sel, fr_thickness);
}
comp_fbdata_t fbdata[] = comp_fbdata_t fbdata[] =
{ {
{CC_FBDATA_TYPE_BGSCREEN, x, y, width+sw, height+sw, 0, 0, 0, NULL, NULL}, {CC_FBDATA_TYPE_BGSCREEN, x, y, width+sw, height+sw, 0, 0, 0, NULL, NULL},
{CC_FBDATA_TYPE_SHADOW, x+sw, y+sw, width, height, col_shadow, corner_rad, 0, NULL, NULL}, {CC_FBDATA_TYPE_SHADOW, x+sw, y+sw, width, height, col_shadow, corner_rad, 0, NULL, NULL},
{CC_FBDATA_TYPE_FRAME, x, y, width, height, col_frame, corner_rad, th, NULL, NULL}, {CC_FBDATA_TYPE_FRAME, x, y, width, height, col_frame_cur, corner_rad, th, NULL, NULL},
{CC_FBDATA_TYPE_BOX, x+th, y+th, width-2*th, height-2*th, col_body, corner_rad-th, 0, NULL, NULL}, {CC_FBDATA_TYPE_BOX, x+th, y+th, width-2*th, height-2*th, col_body, corner_rad-th, 0, NULL, NULL},
}; };