Previous 199869 Revisions Next

r29312 Saturday 5th April, 2014 at 12:56:24 UTC by Nathan Woods
Fixing menu invocation
[/branches/new_menus/src/emu/ui]emenubar.c emenubar.h

branches/new_menus/src/emu/ui/emenubar.c
r29311r29312
7979//  start_menu
8080//-------------------------------------------------
8181
82void ui_emu_menubar::start_menu(ui_menu *menu)
83{
84   machine().ui().set_handler(ui_menu::ui_handler, 0);
85   ui_menu::stack_push(menu);
86}
87
88
89//-------------------------------------------------
90//  start_menu
91//-------------------------------------------------
92
8293template<class _Menu>
8394void ui_emu_menubar::start_menu()
8495{
85   machine().ui().set_handler(ui_menu::ui_handler, 0);
86   ui_menu::stack_push(auto_alloc_clear(machine(), _Menu(machine(), container())));
96   start_menu(auto_alloc_clear(machine(), _Menu(machine(), container())));
8797}
8898
8999
r29311r29312
570580
571581void ui_emu_menubar::select_new_game()
572582{
573   ui_menu::stack_push(auto_alloc_clear(machine(), ui_menu_select_game(machine(), container(), machine().system().name)));
583   start_menu(auto_alloc_clear(machine(), ui_menu_select_game(machine(), container(), machine().system().name)));
574584}
575585
576586
r29311r29312
581591void ui_emu_menubar::select_from_software_list(device_image_interface *image, software_list_device *swlist)
582592{
583593   s_softlist_image = image;
584   machine().ui().set_handler(ui_menu::ui_handler, 0);
585   ui_menu::stack_push(auto_alloc_clear(machine(), ui_menu_software_list(machine(), container(), swlist, image->image_interface(), s_softlist_result)));
594   start_menu(auto_alloc_clear(machine(), ui_menu_software_list(machine(), container(), swlist, image->image_interface(), s_softlist_result)));
586595}
587596
588597
r29311r29312
592601
593602void ui_emu_menubar::tape_control(cassette_image_device *image)
594603{
595   ui_menu::stack_push(auto_alloc_clear(machine(), ui_menu_mess_tape_control(machine(), container(), image)));
604   start_menu(auto_alloc_clear(machine(), ui_menu_mess_tape_control(machine(), container(), image)));
596605}
597606
598607
r29311r29312
602611
603612void ui_emu_menubar::bitbanger_control(bitbanger_device *image)
604613{
605   ui_menu::stack_push(auto_alloc_clear(machine(), ui_menu_mess_bitbanger_control(machine(), container(), image)));
614   start_menu(auto_alloc_clear(machine(), ui_menu_mess_bitbanger_control(machine(), container(), image)));
606615}
607616
608617
r29311r29312
612621
613622void ui_emu_menubar::load(device_image_interface *image)
614623{
615   ui_menu::stack_push(image->get_selection_menu(machine(), container()));
624   start_menu(image->get_selection_menu(machine(), container()));
616625}
617626
618627
branches/new_menus/src/emu/ui/emenubar.h
r29311r29312
5353   void load(device_image_interface *image);
5454   bool has_images();
5555   void set_throttle_rate(float throttle_rate);
56   void start_menu(ui_menu *menu);
5657
5758   // template methods
5859   template<class _Menu>

Previous 199869 Revisions Next


© 1997-2024 The MAME Team