CComponentsText: add possibilty to set font style

Usable with methode setText() and parameter 'style'

provided enums are:
	FONT_STYLE_REGULAR
	FONT_STYLE_BOLD
	FONT_STYLE_ITALIC
This commit is contained in:
2015-02-22 14:47:43 +01:00
parent d2ae57e5b6
commit 341b142aa0
2 changed files with 26 additions and 15 deletions

View File

@@ -81,6 +81,7 @@ void CComponentsText::initVarText( const int x_pos, const int y_pos, const int w
ct_text = text;
ct_old_text = ct_text;
ct_text_mode = mode;
ct_text_style = FONT_STYLE_REGULAR;
iX = x = x_pos;
iY = y = y_pos;
@@ -113,7 +114,7 @@ void CComponentsText::initCCText()
{
//set default font, if is no font definied
if (ct_font == NULL)
ct_font = g_Font[SNeutrinoSettings::FONT_TYPE_INFOBAR_SMALL];
ct_font = *CNeutrinoFonts::getInstance()->getDynFont(width, height, ct_text, ct_text_style)/*g_Font[SNeutrinoSettings::FONT_TYPE_INFOBAR_SMALL]*/;
//define height from font size
height = max(height, ct_font->getHeight());
@@ -180,7 +181,7 @@ void CComponentsText::clearCCText()
ct_textbox = NULL;
}
void CComponentsText::setText(const std::string& stext, const int mode, Font* font_text, const fb_pixel_t& color_text)
void CComponentsText::setText(const std::string& stext, const int mode, Font* font_text, const fb_pixel_t& color_text, const int& style)
{
ct_old_text = ct_text;
ct_text = stext;
@@ -190,25 +191,27 @@ void CComponentsText::setText(const std::string& stext, const int mode, Font* fo
ct_font = font_text;
if (color_text != 0)
setTextColor(color_text);
if (style != FONT_STYLE_REGULAR)
ct_text_style = style;
dprintf(DEBUG_DEBUG, "[CComponentsText] [%s - %d] ct_text: %s \n", __func__, __LINE__, ct_text.c_str());
}
void CComponentsText::setText(neutrino_locale_t locale_text, int mode, Font* font_text, const fb_pixel_t& color_text)
void CComponentsText::setText(neutrino_locale_t locale_text, int mode, Font* font_text, const fb_pixel_t& color_text, const int& style)
{
string stext = g_Locale->getText(locale_text);
setText(stext, mode, font_text, color_text);
setText(stext, mode, font_text, color_text, style);
}
void CComponentsText::setText(const char* ctext, const int mode, Font* font_text, const fb_pixel_t& color_text)
void CComponentsText::setText(const char* ctext, const int mode, Font* font_text, const fb_pixel_t& color_text, const int& style)
{
setText((string)ctext, mode, font_text, color_text);
setText((string)ctext, mode, font_text, color_text, style);
}
void CComponentsText::setText(const int digit, const int mode, Font* font_text, const fb_pixel_t& color_text)
void CComponentsText::setText(const int digit, const int mode, Font* font_text, const fb_pixel_t& color_text, const int& style)
{
string s_digit = iToString(digit);
setText(s_digit, mode, font_text, color_text);
setText(s_digit, mode, font_text, color_text, style);
}
string CComponentsText::getTextFromFile(const string& path_to_textfile)
@@ -232,14 +235,14 @@ string CComponentsText::getTextFromFile(const string& path_to_textfile)
}
//set text lines directly from a file, returns true on succsess
bool CComponentsText::setTextFromFile(const string& path_to_textfile, const int mode, Font* font_text, const fb_pixel_t& color_text)
bool CComponentsText::setTextFromFile(const string& path_to_textfile, const int mode, Font* font_text, const fb_pixel_t& color_text, const int& style)
{
string txt = getTextFromFile(path_to_textfile);
if (txt.empty())
return false;
setText(txt, mode, font_text, color_text);
setText(txt, mode, font_text, color_text, style);
return true;
}