mirror of
https://github.com/tuxbox-neutrino/neutrino.git
synced 2025-08-29 16:31:11 +02:00
Merge branch 'master' into pu/mp
This commit is contained in:
@@ -284,6 +284,8 @@ class CCDraw : public COSDFader, public CComponentsSignals
|
||||
virtual void enableSaveBg(bool save_bg = true);
|
||||
///disable background buffering, does the same like enableSaveBg(false), NOTE: cleans existant pixbuffer content!
|
||||
virtual void disableSaveBg(){enableSaveBg(false);}
|
||||
///returns background buffering mode. Mode is assigned with paint() or enableSaveBg()/disableSaveBg())
|
||||
bool SaveBg(){return cc_save_bg;}
|
||||
|
||||
///allow/disalows paint of item and its contents, but initialize of other properties are not touched
|
||||
///this can be understood as a counterpart to isPainted(), but before paint and value of is_painted is modified temporarily till next paint of item //TODO: is this sufficiently?
|
||||
|
@@ -185,12 +185,11 @@ void CComponentsForm::clear()
|
||||
return;
|
||||
|
||||
for(size_t i=0; i<v_cc_items.size(); i++) {
|
||||
if (v_cc_items[i]){
|
||||
|
||||
dprintf(DEBUG_DEBUG, "[CComponentsForm] %s... delete form cc-item %d of %d (type=%d)\n", __func__, (int)i+1, (int)v_cc_items.size(), v_cc_items[i]->getItemType());
|
||||
|
||||
delete v_cc_items[i];
|
||||
v_cc_items[i] = NULL;
|
||||
CComponentsItem *item = v_cc_items[i];
|
||||
if (item){
|
||||
dprintf(DEBUG_DEBUG, "[CComponentsForm] %s... delete form cc-item %d of %d (type=%d)\taddress = %p\n", __func__, (int)i+1, (int)v_cc_items.size(), item->getItemType(), item);
|
||||
delete item;
|
||||
item = NULL;
|
||||
}
|
||||
}
|
||||
v_cc_items.clear();
|
||||
@@ -518,7 +517,7 @@ void CComponentsForm::paintCCItems()
|
||||
|
||||
//finally paint current item, but only required contents of page
|
||||
if (cc_item->getPageNumber() == cur_page)
|
||||
cc_item->paint(CC_SAVE_SCREEN_NO);
|
||||
cc_item->paint(cc_item->SaveBg());
|
||||
|
||||
//restore defined old visibility mode of item after paint
|
||||
cc_item->allowPaint(item_visible);
|
||||
|
@@ -144,6 +144,8 @@ void CComponentsHeader::initVarHeader( const int& x_pos, const int& y_pos, const
|
||||
cch_cl_sec_format = cch_cl_format;
|
||||
cch_cl_enable_run = false;
|
||||
|
||||
cch_text_max_w = width;
|
||||
|
||||
addContextButton(buttons);
|
||||
initCCItems();
|
||||
initParent(parent);
|
||||
@@ -562,6 +564,7 @@ void CComponentsHeader::initCaption()
|
||||
cch_cl_obj->allowPaint(cch_cl_enable);
|
||||
}
|
||||
|
||||
cc_text_w = min(cc_text_w,cch_text_max_w);
|
||||
|
||||
//create cch_text_obj and add to collection
|
||||
if (cch_text_obj == NULL){
|
||||
|
@@ -106,6 +106,8 @@ class CComponentsHeader : public CComponentsForm, public CCTextScreen
|
||||
int cch_icon_w;
|
||||
///property: internal width for clock object
|
||||
int cch_clock_w;
|
||||
///property: internal max width for text object
|
||||
int cch_text_max_w;
|
||||
///property: internal x-position for caption object
|
||||
int cch_text_x;
|
||||
///property: internal offset of context button icons within context button object
|
||||
@@ -191,6 +193,8 @@ class CComponentsHeader : public CComponentsForm, public CCTextScreen
|
||||
virtual Font* getCaptionFont(){return cch_font;}
|
||||
///set text color for caption
|
||||
virtual void setCaptionColor(fb_pixel_t text_color){cch_col_text = text_color;}
|
||||
///set max width for caption
|
||||
virtual void setCaptionMaxWidth(int max_width){cch_text_max_w = max_width;}
|
||||
|
||||
enum
|
||||
{
|
||||
|
@@ -208,7 +208,8 @@ class CComponentsPictureScalable : public CComponentsPicture
|
||||
fb_pixel_t color_background = 0,
|
||||
fb_pixel_t color_shadow = COL_SHADOW_PLUS_0,
|
||||
int transparent = CFrameBuffer::TM_NONE)
|
||||
: CComponentsPicture(x_pos, y_pos, 0, 0, image_name, parent, shadow_mode, color_frame, color_background, color_shadow, transparent){};
|
||||
: CComponentsPicture(x_pos, y_pos, 0, 0, image_name, parent, shadow_mode, color_frame, color_background, color_shadow, transparent)
|
||||
{cc_item_type = CC_ITEMTYPE_PICTURE_SCALABLE;};
|
||||
};
|
||||
|
||||
class CComponentsChannelLogo : public CComponentsPicture
|
||||
@@ -292,7 +293,8 @@ class CComponentsChannelLogoScalable : public CComponentsChannelLogo
|
||||
fb_pixel_t color_background = 0,
|
||||
fb_pixel_t color_shadow = COL_SHADOW_PLUS_0,
|
||||
int transparent = CFrameBuffer::TM_BLACK)
|
||||
: CComponentsChannelLogo(x_pos, y_pos, 0, 0, channelName, channelId, parent, shadow_mode, color_frame, color_background, color_shadow, transparent){};
|
||||
: CComponentsChannelLogo(x_pos, y_pos, 0, 0, channelName, channelId, parent, shadow_mode, color_frame, color_background, color_shadow, transparent)
|
||||
{cc_item_type = CC_ITEMTYPE_CHANNEL_LOGO_SCALABLE;};
|
||||
};
|
||||
|
||||
#endif
|
||||
|
@@ -41,7 +41,9 @@ typedef enum
|
||||
CC_ITEMTYPE_GENERIC,
|
||||
CC_ITEMTYPE_ITEM,
|
||||
CC_ITEMTYPE_PICTURE,
|
||||
CC_ITEMTYPE_PICTURE_SCALABLE,
|
||||
CC_ITEMTYPE_CHANNEL_LOGO,
|
||||
CC_ITEMTYPE_CHANNEL_LOGO_SCALABLE,
|
||||
CC_ITEMTYPE_TEXT,
|
||||
CC_ITEMTYPE_TEXT_INFOBOX,
|
||||
CC_ITEMTYPE_SHAPE_SQUARE,
|
||||
|
Reference in New Issue
Block a user