Beispiel #1
0
        public RomContextMenu(ZoomContextMenuHandler item_select_handler, bool show_assign_image_item = true, bool show_delete_item = true, bool show_clear_image = true)
        {
            if (show_assign_image_item)
            {
                var assign_rom_image_menu_item = new ZoomContextMenuItem("Assign Rom Image...", ZoomContextMenuItem.Type.AssignRomImage);

                assign_rom_image_menu_item.Click += (sender, args) => item_select_handler.Invoke((ZoomContextMenuItem)sender);

                this.Items.Add(assign_rom_image_menu_item);
            }

            if (show_delete_item)
            {
                var delete_menu_item = new ZoomContextMenuItem("Delete", ZoomContextMenuItem.Type.DeleteRom);

                delete_menu_item.Click += (sender, args) => item_select_handler.Invoke((ZoomContextMenuItem)sender);

                this.Items.Add(delete_menu_item);
            }

            if (show_clear_image)
            {
                var clear_image_menu_item = new ZoomContextMenuItem("Clear Image", ZoomContextMenuItem.Type.ClearImage);

                clear_image_menu_item.Click += (sender, args) => item_select_handler.Invoke((ZoomContextMenuItem)sender);

                this.Items.Add(clear_image_menu_item);
            }
        }
Beispiel #2
0
        public EmuAssignContextMenu(Dictionary <int, Emulator> emulators, ZoomContextMenuHandler select_handler)
        {
            foreach (var emulator in emulators)
            {
                if (emulator.Value.LaunchArgs.Count == 1)
                {
                    string label = emulator.Value.Name;
                    var    item  = new ZoomContextMenuItem(label, ZoomContextMenuItem.Type.AssignEmu, emulator.Key, emulator.Value.LaunchArgs.First().Key);

                    item.Click += (sender, args) => select_handler.Invoke((ZoomContextMenuItem)sender);

                    this.Items.Add(item);
                }
                else
                {
                    foreach (var value_launch_arg in emulator.Value.LaunchArgs)
                    {
                        string label         = $"{emulator.Value.Name} ({value_launch_arg.Value.Name})";
                        var    item_with_arg = new ZoomContextMenuItem(label, ZoomContextMenuItem.Type.AssignEmu, emulator.Key, value_launch_arg.Key);

                        item_with_arg.Click += (sender, args) => select_handler.Invoke((ZoomContextMenuItem)sender);

                        this.Items.Add(item_with_arg);
                    }
                }
            }
        }
Beispiel #3
0
        public PlatformAssignContextMenu(List <PlatformId> available_platform_ids, ZoomContextMenuHandler item_select_handler)
        {
            var create_platform_menu_item = new ToolStripMenuItem("Set Platform...");

            foreach (var avail_platform_id in available_platform_ids)
            {
                var item = new ZoomContextMenuItem(avail_platform_id.ToString(), ZoomContextMenuItem.Type.SetPlatform, avail_platform_id);

                item.Click += (sender, args) => item_select_handler.Invoke((ZoomContextMenuItem)sender);

                create_platform_menu_item.DropDownItems.Add(item);
            }

            this.Items.Add(create_platform_menu_item);
        }
Beispiel #4
0
        public PlatformContextMenu(Dictionary <int, Emulator> emulators, ZoomContextMenuHandler item_select_handler)
        {
            var emus_sub_menu = new ToolStripMenuItem("Assign Emulator");

            var emu_assign_context_menu = new EmuAssignContextMenu(emulators, item_select_handler);

            emus_sub_menu.DropDown = emu_assign_context_menu;

            var delete_menu_item = new ZoomContextMenuItem("Delete", ZoomContextMenuItem.Type.DeletePlatform);

            delete_menu_item.Click += (sender, args) => item_select_handler.Invoke((ZoomContextMenuItem)sender);

            Items.Add(emus_sub_menu);

            Items.Add(delete_menu_item);
        }