summaryrefslogtreecommitdiffstatshomepage
path: root/src/frontend/mame/ui/inputmap.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/frontend/mame/ui/inputmap.cpp')
-rw-r--r--src/frontend/mame/ui/inputmap.cpp37
1 files changed, 27 insertions, 10 deletions
diff --git a/src/frontend/mame/ui/inputmap.cpp b/src/frontend/mame/ui/inputmap.cpp
index 38dd73111be..161ce0f03c6 100644
--- a/src/frontend/mame/ui/inputmap.cpp
+++ b/src/frontend/mame/ui/inputmap.cpp
@@ -26,6 +26,7 @@ namespace ui {
menu_input_groups::menu_input_groups(mame_ui_manager &mui, render_container &container) : menu(mui, container)
{
+ set_heading(_("Input Assignments (general)"));
}
menu_input_groups::~menu_input_groups()
@@ -49,7 +50,13 @@ void menu_input_groups::handle(event const *ev)
{
// process the menu
if (ev && (ev->iptkey == IPT_UI_SELECT))
- menu::stack_push<menu_input_general>(ui(), container(), int(uintptr_t(ev->itemref) - 1));
+ {
+ menu::stack_push<menu_input_general>(
+ ui(),
+ container(),
+ int(uintptr_t(ev->itemref) - 1),
+ util::string_format(_("Input Assignments (%1$s)"), ev->item->text()));
+ }
}
@@ -58,16 +65,23 @@ void menu_input_groups::handle(event const *ev)
input menu
-------------------------------------------------*/
-menu_input_general::menu_input_general(mame_ui_manager &mui, render_container &container, int _group)
+menu_input_general::menu_input_general(mame_ui_manager &mui, render_container &container, int _group, std::string &&heading)
: menu_input(mui, container)
, group(_group)
{
+ set_heading(std::move(heading));
}
menu_input_general::~menu_input_general()
{
}
+void menu_input_general::menu_activated()
+{
+ // scripts can change settings out from under us
+ reset(reset_options::REMEMBER_POSITION);
+}
+
void menu_input_general::populate(float &customtop, float &custombottom)
{
if (data.empty())
@@ -135,12 +149,21 @@ void menu_input_general::update_input(input_item_data &seqchangeditem)
menu_input_specific::menu_input_specific(mame_ui_manager &mui, render_container &container) : menu_input(mui, container)
{
+ set_heading(_("Input Assignments (this system)"));
}
menu_input_specific::~menu_input_specific()
{
}
+void menu_input_specific::menu_activated()
+{
+ // scripts can change settings out from under us
+ assert(!pollingitem);
+ data.clear();
+ reset(reset_options::REMEMBER_POSITION);
+}
+
void menu_input_specific::populate(float &customtop, float &custombottom)
{
if (data.empty())
@@ -228,7 +251,7 @@ void menu_input_specific::populate(float &customtop, float &custombottom)
if (!data.empty())
populate_sorted(customtop, custombottom);
else
- item_append(_("This machine has no configurable inputs."), FLAG_DISABLE, nullptr);
+ item_append(_("[no assignable inputs are enabled]"), FLAG_DISABLE, nullptr);
item_append(menu_item_type::SEPARATOR);
}
@@ -274,12 +297,6 @@ menu_input::~menu_input()
{
}
-void menu_input::menu_activated()
-{
- // scripts can change settings out from under us
- reset(reset_options::REMEMBER_POSITION);
-}
-
/*-------------------------------------------------
toggle_none_default - toggle between "NONE"
@@ -398,7 +415,7 @@ void menu_input::handle(event const *ev)
{
// entered invalid sequence - abandon change
invalidate = true;
- errormsg = _("Invalid sequence entered");
+ errormsg = _("Invalid combination entered");
erroritem = item;
}
seq_poll.reset();