menu: add overloaded version for CMenuOptionStringChooser

This commit is contained in:
2012-06-05 21:24:42 +02:00
parent 24dd74e471
commit f836f3c3f3
2 changed files with 22 additions and 3 deletions

View File

@@ -1456,6 +1456,7 @@ int CMenuOptionChooser::getWidth(void)
CMenuOptionStringChooser::CMenuOptionStringChooser(const neutrino_locale_t OptionName, char* OptionValue, bool Active, CChangeObserver* Observ, const neutrino_msg_t DirectKey, const std::string & IconName, bool Pulldown)
{
height = g_Font[SNeutrinoSettings::FONT_TYPE_MENU]->getHeight();
optionNameString = g_Locale->getText(OptionName);
optionName = OptionName;
active = Active;
optionValue = OptionValue;
@@ -1467,6 +1468,21 @@ CMenuOptionStringChooser::CMenuOptionStringChooser(const neutrino_locale_t Optio
pulldown = Pulldown;
}
CMenuOptionStringChooser::CMenuOptionStringChooser(const char* OptionName, char* OptionValue, bool Active, CChangeObserver* Observ, const neutrino_msg_t DirectKey, const std::string & IconName, bool Pulldown)
{
height = g_Font[SNeutrinoSettings::FONT_TYPE_MENU]->getHeight();
optionNameString = OptionName;
optionName = NONEXISTANT_LOCALE;
active = Active;
optionValue = OptionValue;
observ = Observ;
directKey = DirectKey;
iconName = IconName;
can_arrow = true;
pulldown = Pulldown;
}
CMenuOptionStringChooser::~CMenuOptionStringChooser()
{
@@ -1495,7 +1511,7 @@ int CMenuOptionStringChooser::exec(CMenuTarget* parent)
if (parent)
parent->hide();
CMenuWidget* menu = new CMenuWidget(optionName, NEUTRINO_ICON_SETTINGS);
CMenuWidget* menu = new CMenuWidget(optionNameString.c_str(), NEUTRINO_ICON_SETTINGS);
menu->addIntroItems(NONEXISTANT_LOCALE, NONEXISTANT_LOCALE, CMenuWidget::BTN_TYPE_CANCEL);
//if(parent) menu->move(20, 0);
CMenuSelectorTarget * selector = new CMenuSelectorTarget(&select);
@@ -1544,7 +1560,7 @@ int CMenuOptionStringChooser::exec(CMenuTarget* parent)
int CMenuOptionStringChooser::paint( bool selected )
{
const char * l_optionName = g_Locale->getText(optionName);
const char * l_optionName = optionNameString.c_str();
//paint item
prepareItem(selected, height);

View File

@@ -355,6 +355,7 @@ class CMenuOptionChooser : public CAbstractMenuOptionChooser
class CMenuOptionStringChooser : public CMenuItem
{
neutrino_locale_t optionName;
std::string optionNameString;
int height;
char * optionValue;
std::vector<std::string> options;
@@ -363,6 +364,8 @@ class CMenuOptionStringChooser : public CMenuItem
public:
CMenuOptionStringChooser(const neutrino_locale_t OptionName, char* OptionValue, bool Active = false, CChangeObserver* Observ = NULL, const neutrino_msg_t DirectKey = CRCInput::RC_nokey, const std::string & IconName= "", bool Pulldown = false);
CMenuOptionStringChooser(const char* OptionName, char* OptionValue, bool Active = false, CChangeObserver* Observ = NULL, const neutrino_msg_t DirectKey = CRCInput::RC_nokey, const std::string & IconName= "", bool Pulldown = false);
~CMenuOptionStringChooser();
void addOption(const char * value);