From e02258276ea51a56247e27b6f851eb12246104c1 Mon Sep 17 00:00:00 2001 From: "[CST] Focus" Date: Mon, 16 Jul 2012 14:33:22 +0400 Subject: [PATCH] gui/widget/menue.cpp: fix menu_left_exit option; remove can_arrow member - isMenueOptionChooser() is enough --- src/gui/widget/menue.cpp | 23 ++++++++--------------- src/gui/widget/menue.h | 1 - 2 files changed, 8 insertions(+), 16 deletions(-) diff --git a/src/gui/widget/menue.cpp b/src/gui/widget/menue.cpp index b259136d5..94c0f17da 100644 --- a/src/gui/widget/menue.cpp +++ b/src/gui/widget/menue.cpp @@ -61,7 +61,6 @@ CMenuItem::CMenuItem() directKey = CRCInput::RC_nokey; iconName = ""; iconName_Info_right = ""; - can_arrow = false; used = false; icon_frame_w = 10; hint = NONEXISTANT_LOCALE; @@ -509,7 +508,7 @@ int CMenuWidget::exec(CMenuTarget* parent, const std::string &) do { if(hasItem() && selected >= 0 && (int)items.size() > selected ) - bAllowRepeatLR = items[selected]->can_arrow; + bAllowRepeatLR = items[selected]->isMenueOptionChooser(); //can_arrow; g_RCInput->getMsgAbsoluteTimeout(&msg, &data, &timeoutEnd, bAllowRepeatLR); @@ -643,12 +642,13 @@ int CMenuWidget::exec(CMenuTarget* parent, const std::string &) break; case (CRCInput::RC_left): { - CMenuItem* itemX = items[selected]; - int menu_left_exit = (itemX->isMenueOptionChooser() == 1) ? 0 : g_settings.menu_left_exit; - if ((hasItem() && (selected < 0 || !items[selected]->can_arrow)) || - menu_left_exit) { - msg = CRCInput::RC_timeout; - break; + if(hasItem() && selected > -1 && (int)items.size() > selected) { + CMenuItem* itemX = items[selected]; + if (!itemX->isMenueOptionChooser()) { + if (g_settings.menu_left_exit) + msg = CRCInput::RC_timeout; + break; + } } } case (CRCInput::RC_right): @@ -1224,7 +1224,6 @@ CMenuOptionNumberChooser::CMenuOptionNumberChooser(const neutrino_locale_t name, localized_value_name = special_value_name; optionString = non_localized_name; - can_arrow = true; observ = Observ; slider_on = sliderOn; } @@ -1288,7 +1287,6 @@ CMenuOptionChooser::CMenuOptionChooser(const neutrino_locale_t OptionName, int * observ = Observ; directKey = DirectKey; iconName = IconName; - can_arrow = true; pulldown = Pulldown; for (unsigned int i = 0; i < number_of_options; i++) { @@ -1311,7 +1309,6 @@ CMenuOptionChooser::CMenuOptionChooser(const char* OptionName, int * const Optio observ = Observ; directKey = DirectKey; iconName = IconName; - can_arrow = true; pulldown = Pulldown; for (unsigned int i = 0; i < number_of_options; i++) { @@ -1336,7 +1333,6 @@ CMenuOptionChooser::CMenuOptionChooser(const neutrino_locale_t OptionName, int * observ = Observ; directKey = DirectKey; iconName = IconName; - can_arrow = true; pulldown = Pulldown; for (unsigned int i = 0; i < number_of_options; i++) options.push_back(Options[i]); @@ -1355,7 +1351,6 @@ CMenuOptionChooser::CMenuOptionChooser(const char* OptionName, int * const Optio observ = Observ; directKey = DirectKey; iconName = IconName; - can_arrow = true; pulldown = Pulldown; for (unsigned int i = 0; i < number_of_options; i++) options.push_back(Options[i]); @@ -1515,7 +1510,6 @@ CMenuOptionStringChooser::CMenuOptionStringChooser(const neutrino_locale_t Optio directKey = DirectKey; iconName = IconName; - can_arrow = true; pulldown = Pulldown; } @@ -1530,7 +1524,6 @@ CMenuOptionStringChooser::CMenuOptionStringChooser(const char* OptionName, char* directKey = DirectKey; iconName = IconName; - can_arrow = true; pulldown = Pulldown; } diff --git a/src/gui/widget/menue.h b/src/gui/widget/menue.h index 6b681b9be..dfb4f3730 100644 --- a/src/gui/widget/menue.h +++ b/src/gui/widget/menue.h @@ -93,7 +93,6 @@ class CMenuItem bool active; neutrino_msg_t directKey; neutrino_msg_t msg; - bool can_arrow; std::string iconName; std::string selected_iconName; std::string iconName_Info_right;