summaryrefslogtreecommitdiffstatshomepage
path: root/src/emu/ui/sliders.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/emu/ui/sliders.cpp')
-rw-r--r--src/emu/ui/sliders.cpp24
1 files changed, 15 insertions, 9 deletions
diff --git a/src/emu/ui/sliders.cpp b/src/emu/ui/sliders.cpp
index e494213aa1b..d53ad402943 100644
--- a/src/emu/ui/sliders.cpp
+++ b/src/emu/ui/sliders.cpp
@@ -17,9 +17,9 @@
#include "ui/sliders.h"
-ui_menu_sliders::ui_menu_sliders(running_machine &machine, render_container *container, bool _menuless_mode) : ui_menu(machine, container)
+ui_menu_sliders::ui_menu_sliders(running_machine &machine, render_container *container, bool menuless_mode) : ui_menu(machine, container)
{
- menuless_mode = hidden = _menuless_mode;
+ m_menuless_mode = m_hidden = menuless_mode;
}
ui_menu_sliders::~ui_menu_sliders()
@@ -35,7 +35,7 @@ void ui_menu_sliders::handle()
const ui_menu_event *menu_event;
/* process the menu */
- menu_event = process(UI_MENU_PROCESS_LR_REPEAT | (hidden ? UI_MENU_PROCESS_CUSTOM_ONLY : 0));
+ menu_event = process(UI_MENU_PROCESS_LR_REPEAT | (m_hidden ? UI_MENU_PROCESS_CUSTOM_ONLY : 0));
if (menu_event != nullptr)
{
/* handle keys if there is a valid item selected */
@@ -49,10 +49,10 @@ void ui_menu_sliders::handle()
{
/* toggle visibility */
case IPT_UI_ON_SCREEN_DISPLAY:
- if (menuless_mode)
+ if (m_menuless_mode)
ui_menu::stack_pop(machine());
else
- hidden = !hidden;
+ m_hidden = !m_hidden;
break;
/* decrease value */
@@ -103,19 +103,25 @@ void ui_menu_sliders::handle()
}
/* if we are selecting an invalid item and we are hidden, skip to the next one */
- else if (hidden)
+ else if (m_hidden)
{
/* if we got here via up or page up, select the previous item */
if (menu_event->iptkey == IPT_UI_UP || menu_event->iptkey == IPT_UI_PAGE_UP)
{
- selected = (selected + item.size() - 1) % item.size();
+ do
+ {
+ selected = (selected + item.size() - 1) % item.size();
+ } while(((slider_state&)item[selected]).hidden);
validate_selection(-1);
}
/* otherwise select the next item */
else if (menu_event->iptkey == IPT_UI_DOWN || menu_event->iptkey == IPT_UI_PAGE_DOWN)
{
- selected = (selected + 1) % item.size();
+ do
+ {
+ selected = (selected + 1) % item.size();
+ } while(((slider_state&)item[selected]).hidden);
validate_selection(1);
}
}
@@ -252,5 +258,5 @@ UINT32 ui_menu_sliders::ui_handler(running_machine &machine, render_container *c
ui_menu::stack_pop(machine);
ui_menu_sliders *uim = dynamic_cast<ui_menu_sliders *>(menu_stack);
- return uim && uim->menuless_mode ? 0 : UI_HANDLER_CANCEL;
+ return uim && uim->m_menuless_mode ? 0 : UI_HANDLER_CANCEL;
}