mirror of
https://github.com/tuxbox-neutrino/neutrino.git
synced 2025-08-29 16:31:11 +02:00
CComponentsTitleBar: add overloaded constructors for different text types
This commit is contained in:
@@ -364,11 +364,21 @@ class CComponentsItemBox : public CComponentsContainer
|
|||||||
class CComponentsTitleBar : public CComponentsItemBox
|
class CComponentsTitleBar : public CComponentsItemBox
|
||||||
{
|
{
|
||||||
private:
|
private:
|
||||||
|
const char* tb_c_text;
|
||||||
|
std::string tb_s_text;
|
||||||
|
neutrino_locale_t tb_locale_text;
|
||||||
|
int tb_text_align;
|
||||||
|
|
||||||
|
bool addText();
|
||||||
void initVarTitleBar();
|
void initVarTitleBar();
|
||||||
|
|
||||||
public:
|
public:
|
||||||
CComponentsTitleBar();
|
CComponentsTitleBar();
|
||||||
CComponentsTitleBar( const int x_pos, const int y_pos, const int w, const int h, const char* text = NULL,
|
CComponentsTitleBar( const int x_pos, const int y_pos, const int w, const int h, const char* c_text = NULL, const int text_alignment = CC_ALIGN_LEFT,
|
||||||
|
fb_pixel_t color_text = COL_MENUHEAD, fb_pixel_t color_body = COL_MENUHEAD_PLUS_0);
|
||||||
|
CComponentsTitleBar( const int x_pos, const int y_pos, const int w, const int h, const std::string& s_text ="", const int text_alignment = CC_ALIGN_LEFT,
|
||||||
|
fb_pixel_t color_text = COL_MENUHEAD, fb_pixel_t color_body = COL_MENUHEAD_PLUS_0);
|
||||||
|
CComponentsTitleBar( const int x_pos, const int y_pos, const int w, const int h, neutrino_locale_t locale_text = NONEXISTANT_LOCALE, const int text_alignment = CC_ALIGN_LEFT,
|
||||||
fb_pixel_t color_text = COL_MENUHEAD, fb_pixel_t color_body = COL_MENUHEAD_PLUS_0);
|
fb_pixel_t color_text = COL_MENUHEAD, fb_pixel_t color_body = COL_MENUHEAD_PLUS_0);
|
||||||
|
|
||||||
void calculateElements();
|
void calculateElements();
|
||||||
|
@@ -1127,7 +1127,7 @@ CComponentsTitleBar::CComponentsTitleBar()
|
|||||||
initVarTitleBar();
|
initVarTitleBar();
|
||||||
}
|
}
|
||||||
|
|
||||||
CComponentsTitleBar::CComponentsTitleBar(const int x_pos, const int y_pos, const int w, const int h, const char* text,
|
CComponentsTitleBar::CComponentsTitleBar(const int x_pos, const int y_pos, const int w, const int h, const char* c_text, const int text_alignment,
|
||||||
fb_pixel_t color_text, fb_pixel_t color_body)
|
fb_pixel_t color_text, fb_pixel_t color_body)
|
||||||
{
|
{
|
||||||
//CComponentsItemBox
|
//CComponentsItemBox
|
||||||
@@ -1141,15 +1141,75 @@ CComponentsTitleBar::CComponentsTitleBar(const int x_pos, const int y_pos, const
|
|||||||
col_body = color_body;
|
col_body = color_body;
|
||||||
|
|
||||||
//CComponentsTitleBar
|
//CComponentsTitleBar
|
||||||
font_text = g_Font[SNeutrinoSettings::FONT_TYPE_MENU_TITLE];
|
|
||||||
col_text = color_text;
|
col_text = color_text;
|
||||||
|
tb_c_text = c_text;
|
||||||
|
tb_text_align = text_alignment;
|
||||||
|
|
||||||
if (text) {
|
if (addText())
|
||||||
addElement (CC_ALIGN_LEFT, CC_ITEMBOX_TEXT, text);
|
|
||||||
calculateElements();
|
calculateElements();
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
CComponentsTitleBar::CComponentsTitleBar(const int x_pos, const int y_pos, const int w, const int h, const string& s_text, const int text_alignment,
|
||||||
|
fb_pixel_t color_text, fb_pixel_t color_body)
|
||||||
|
{
|
||||||
|
//CComponentsItemBox
|
||||||
|
initVarTitleBar();
|
||||||
|
|
||||||
|
//CComponents
|
||||||
|
x = x_pos;
|
||||||
|
y = y_pos;
|
||||||
|
height = h;
|
||||||
|
width = w;
|
||||||
|
col_body = color_body;
|
||||||
|
|
||||||
|
//CComponentsTitleBar
|
||||||
|
col_text = color_text;
|
||||||
|
tb_s_text = s_text;
|
||||||
|
tb_text_align = text_alignment;
|
||||||
|
|
||||||
|
if (addText())
|
||||||
|
calculateElements();
|
||||||
|
}
|
||||||
|
|
||||||
|
CComponentsTitleBar::CComponentsTitleBar(const int x_pos, const int y_pos, const int w, const int h, neutrino_locale_t locale_text, const int text_alignment,
|
||||||
|
fb_pixel_t color_text, fb_pixel_t color_body)
|
||||||
|
{
|
||||||
|
//CComponentsItemBox
|
||||||
|
initVarTitleBar();
|
||||||
|
|
||||||
|
//CComponents
|
||||||
|
x = x_pos;
|
||||||
|
y = y_pos;
|
||||||
|
height = h;
|
||||||
|
width = w;
|
||||||
|
col_body = color_body;
|
||||||
|
|
||||||
|
//CComponentsTitleBar
|
||||||
|
col_text = color_text;
|
||||||
|
tb_locale_text = locale_text;
|
||||||
|
tb_text_align = text_alignment;
|
||||||
|
|
||||||
|
if (addText())
|
||||||
|
calculateElements();
|
||||||
|
}
|
||||||
|
|
||||||
|
bool CComponentsTitleBar::addText()
|
||||||
|
{
|
||||||
|
if (tb_c_text){
|
||||||
|
addElement (tb_text_align, CC_ITEMBOX_TEXT, tb_c_text);
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
else if (!tb_s_text.empty()){
|
||||||
|
addElement (tb_text_align, CC_ITEMBOX_TEXT, tb_s_text);
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
else if (tb_locale_text != NONEXISTANT_LOCALE){
|
||||||
|
addElement (tb_text_align, CC_ITEMBOX_TEXT, g_Locale->getText(tb_locale_text));
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
else
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
|
||||||
void CComponentsTitleBar::initVarTitleBar()
|
void CComponentsTitleBar::initVarTitleBar()
|
||||||
{
|
{
|
||||||
@@ -1168,6 +1228,12 @@ void CComponentsTitleBar::initVarTitleBar()
|
|||||||
col_body = COL_MENUHEAD_PLUS_0;
|
col_body = COL_MENUHEAD_PLUS_0;
|
||||||
corner_type = CORNER_TOP;
|
corner_type = CORNER_TOP;
|
||||||
corner_rad = RADIUS_LARGE;
|
corner_rad = RADIUS_LARGE;
|
||||||
|
|
||||||
|
//CComponentsTitleBar
|
||||||
|
tb_text_align = CC_ALIGN_LEFT;
|
||||||
|
tb_c_text = NULL;
|
||||||
|
tb_s_text = "";
|
||||||
|
tb_locale_text = NONEXISTANT_LOCALE;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
Reference in New Issue
Block a user