Previous 199869 Revisions Next

r31805 Wednesday 27th August, 2014 at 11:29:59 UTC by Fabio Priuli
Reducing differences in File Manager options when entering from
softlist vs fullpath. nw.
[src/emu/ui]imgcntrl.c swlist.c swlist.h

trunk/src/emu/ui/imgcntrl.c
r31804r31805
237237
238238   case SELECT_OTHER_PART:
239239      switch(submenu_result) {
240      case ui_menu_software_parts::T_ENTRY: {
240      case ui_menu_software_parts::T_ENTRY:
241241         load_software_part();
242242         break;
243      }
244243
245244      case ui_menu_software_parts::T_FMGR:
246245         state = START_FILE;
247246         handle();
248247         break;
249248
249      case ui_menu_software_parts::T_EMPTY:
250         image->unload();
251         ui_menu::stack_pop(machine());
252         break;
253
254      case ui_menu_software_parts::T_SWLIST:
255         state = START_SOFTLIST;
256         handle();
257         break;
258           
250259      case -1: // return to system
251260         ui_menu::stack_pop(machine());
252261         break;
trunk/src/emu/ui/swlist.c
r31804r31805
3030//  ctor
3131//-------------------------------------------------
3232
33ui_menu_software_parts::ui_menu_software_parts(running_machine &machine, render_container *container, const software_info *info, const char *interface, const software_part **part, bool opt_fmgr, int *result)
33ui_menu_software_parts::ui_menu_software_parts(running_machine &machine, render_container *container, const software_info *info, const char *interface, const software_part **part, bool other_opt, int *result)
3434   : ui_menu(machine, container)
3535{
3636   m_info = info;
3737   m_interface = interface;
3838   m_selected_part = part;
39   m_opt_fmgr = opt_fmgr;
39   m_other_opt = other_opt;
4040   m_result = result;
4141}
4242
r31804r31805
5656
5757void ui_menu_software_parts::populate()
5858{
59   if (m_other_opt)
60   {
61      software_part_menu_entry *entry1 = (software_part_menu_entry *) m_pool_alloc(sizeof(*entry1));
62      entry1->type = T_EMPTY;
63      entry1->part = 0;
64      item_append("[empty slot]", 0, 0, entry1);
65
66      software_part_menu_entry *entry2 = (software_part_menu_entry *) m_pool_alloc(sizeof(*entry2));
67      entry2->type = T_FMGR;
68      entry2->part = 0;
69      item_append("[file manager]", 0, 0, entry2);
70
71     
72      software_part_menu_entry *entry3 = (software_part_menu_entry *) m_pool_alloc(sizeof(*entry3));
73      entry3->type = T_SWLIST;
74      entry3->part = 0;
75      item_append("[software list]", 0, 0, entry3);
76   }
77
5978   for (const software_part *swpart = m_info->first_part(); swpart != NULL; swpart = swpart->next())
6079   {
6180      if (swpart->matches_interface(m_interface))
r31804r31805
7190         item_append(m_info->shortname(), menu_part_name.cstr(), 0, entry);
7291      }
7392   }
74
75   if (m_opt_fmgr)
76   {
77      software_part_menu_entry *entry = (software_part_menu_entry *) m_pool_alloc(sizeof(*entry));
78      entry->type = T_FMGR;
79      entry->part = 0;
80      item_append("[file manager]", 0, 0, entry);
81   }
8293}
8394
8495
trunk/src/emu/ui/swlist.h
r31804r31805
1616
1717class ui_menu_software_parts : public ui_menu {
1818public:
19   enum { T_ENTRY, T_FMGR };
20   ui_menu_software_parts(running_machine &machine, render_container *container, const software_info *info, const char *interface, const software_part **part, bool opt_fmgr, int *result);
19   enum { T_EMPTY, T_FMGR, T_SWLIST, T_ENTRY, };
20   ui_menu_software_parts(running_machine &machine, render_container *container, const software_info *info, const char *interface, const software_part **part, bool other_opt, int *result);
2121   virtual ~ui_menu_software_parts();
2222   virtual void populate();
2323   virtual void handle();
r31804r31805
3232   const software_info *   m_info;
3333   const char *            m_interface;
3434   const software_part **  m_selected_part;
35   bool                    m_opt_fmgr;
35   bool                    m_other_opt;
3636   int *                   m_result;
3737};
3838

Previous 199869 Revisions Next


© 1997-2024 The MAME Team