summaryrefslogtreecommitdiffstatshomepage
path: root/src/emu/ui/pluginopt.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/emu/ui/pluginopt.cpp')
-rw-r--r--src/emu/ui/pluginopt.cpp18
1 files changed, 15 insertions, 3 deletions
diff --git a/src/emu/ui/pluginopt.cpp b/src/emu/ui/pluginopt.cpp
index 625d60600f1..d209eed8fcc 100644
--- a/src/emu/ui/pluginopt.cpp
+++ b/src/emu/ui/pluginopt.cpp
@@ -87,12 +87,24 @@ void ui_menu_plugin_opt::handle()
void ui_menu_plugin_opt::populate()
{
- std::vector<lua_engine::menu_item> &menu_list = machine().manager().lua()->menu_populate(m_menu);
+ std::vector<lua_engine::menu_item> menu_list;
+ machine().manager().lua()->menu_populate(m_menu, menu_list);
FPTR i = 1;
for(auto &item : menu_list)
- item_append(item.text.c_str(), item.subtext.c_str(), item.flags, (void *)i++);
+ {
+ UINT32 flags = 0;
+ if(item.flags == "off")
+ flags = 32;
+ else if(item.flags == "l")
+ flags = 1;
+ else if(item.flags == "r")
+ flags = 2;
+ else if(item.flags == "lr")
+ flags = 3;
+
+ item_append(item.text.c_str(), item.subtext.c_str(), flags, (void *)i++);
+ }
item_append(MENU_SEPARATOR_ITEM, nullptr, 0, nullptr);
- global_free(&menu_list);
}
ui_menu_plugin_opt::~ui_menu_plugin_opt()