// Create "Debugger" menu MenuItem CreateDebuggerMenu(AccelGroup agr) { MenuItem dbg = new MenuItem("_Debugger"); Menu dbgMenu = new Menu(); dbg.Submenu = dbgMenu; debuggerStart = new MenuItem("_Start debugger"); debuggerStart.Activated += OnDebuggerStart; debuggerStart.AddAccelerator("activate", agr, new AccelKey(Gdk.Key.F5, Gdk.ModifierType.None, AccelFlags.Visible)); dbgMenu.Append(debuggerStart); debuggerStop = new MenuItem("_Stop debugger"); debuggerStop.Activated += OnDebuggerStop; debuggerStop.AddAccelerator("activate", agr, new AccelKey(Gdk.Key.F6, Gdk.ModifierType.None, AccelFlags.Visible)); dbgMenu.Append(debuggerStop); debuggerInterrupt = new ImageMenuItem(Stock.Cancel, agr); ((Label)debuggerInterrupt.Children[0]).Text = "Interrupt execution"; debuggerInterrupt.AddAccelerator("activate", agr, new AccelKey(Gdk.Key.F9, Gdk.ModifierType.None, AccelFlags.Visible)); debuggerInterrupt.Activated += OnDebuggerInterrupt; dbgMenu.Append(debuggerInterrupt); dbgMenu.Append(CreateCommandsMenu(agr)); return(dbg); }
public PGNFileLoader() : base("file-loader", Catalog. GetString ("PGN File Loader"), Catalog. GetString ("Loads games from a PGN file")) { accel = new AccelGroup (); ImageMenuItem item = new ImageMenuItem (Catalog. GetString ("_Open File")); item.Image = new Image (Stock.Open, IconSize.Menu); menuItem = item; menuItem.Activated += on_open_file_activate; menuItem.Show (); menuItem.AddAccelerator ("activate", accel, new AccelKey (Gdk. Key. o, Gdk. ModifierType. ControlMask, AccelFlags. Visible)); }
public static MenuItem CreateMenuItem(this Command command, string menuLabel = null, AccelGroup group = null, string key = null, object commandParam = null) { string label = ""; if (!string.IsNullOrEmpty(menuLabel)) { label = menuLabel; } else if (!string.IsNullOrEmpty(command.Text)) { label = command.Text; } else if (!string.IsNullOrEmpty(command.ToolTipText)) { label = command.ToolTipText; } MenuItem item = new MenuItem(label); if (!string.IsNullOrEmpty(key)) { HotKey keyconfig = App.Current.HotkeysService.GetByName(key).Key; AccelKey accelkey = new AccelKey((Gdk.Key)keyconfig.Key, (Gdk.ModifierType)keyconfig.Modifier, AccelFlags.Visible); item.AddAccelerator("activate", group, accelkey); } item.Activated += (sender, e) => command.Execute(commandParam); item.Sensitive = command.CanExecute(); command.CanExecuteChanged += (sender, e) => item.Sensitive = command.CanExecute(); item.Show(); return(item); }
private void AddAccelerator(uint key, ModifierType modifiers, AccelFlags accelFlags, EventHandler handler) { MenuItem menuItem = new MenuItem(); menuItem.AddAccelerator("activate", this.accelGroup, key, modifiers, accelFlags); menuItem.Activated += handler; menuItem.Show(); this.hiddenMenu.Append(menuItem); }
private MenuBar CreateShortcutsBar() { // Adds a hidden menubar that contains to enable keyboard // shortcuts to close the log MenuBar = new MenuBar(); MenuItem file_item = new MenuItem("File"); Menu file_menu = new Menu(); MenuItem close_1 = new MenuItem("Close1"); MenuItem close_2 = new MenuItem("Close2"); // adds specific Ctrl+W and Esc key accelerators to Log Window AccelGroup accel_group = new AccelGroup(); AddAccelGroup(accel_group); // Close on Esc close_1.AddAccelerator("activate", accel_group, new AccelKey(Gdk.Key.W, Gdk.ModifierType.ControlMask, AccelFlags.Visible)); close_1.Activated += delegate { HideAll(); }; // Close on Ctrl+W close_2.AddAccelerator("activate", accel_group, new AccelKey(Gdk.Key.Escape, Gdk.ModifierType.None, AccelFlags.Visible)); close_2.Activated += delegate { HideAll(); }; file_menu.Append(close_1); file_menu.Append(close_2); file_item.Submenu = file_menu; MenuBar.Append(file_item); // Hacky way to hide the menubar, but the accellerators // will simply be disabled when using Hide () MenuBar.HeightRequest = 1; MenuBar.ModifyBg(StateType.Normal, Style.Background(StateType.Normal)); return(MenuBar); }
private void OnPopulatePopupMenu(object o, PopulatePopupArgs args) { try { MenuItem option = new MenuItem("Find Text"); option.AddAccelerator("activate", accelerators, (uint)Gdk.Key.F, ModifierType.ControlMask, AccelFlags.Visible); option.ShowAll(); option.Activated += OnFindText; if (args.Popup is Menu menu) { menu.Append(option); } } catch (Exception err) { ShowError(err); } }
/// <summary> /// Constructor. /// </summary> public SceneToolbar(MainWindow mainWindow, SceneWindow sceneWindow) { m_sceneWindow = sceneWindow; HeightRequest = 30; MenuBar menuBar = new MenuBar(); AccelGroup accelGroup = new AccelGroup(); mainWindow.AddAccelGroup(accelGroup); // view menu MenuItem view_item = new MenuItem("_View"); Menu view_menu = new Menu(); view_item.Submenu = view_menu; menuBar.Append(view_item); MenuItem view_focus = new MenuItem("_Focus Selection"); view_focus.AddAccelerator("activate", accelGroup, new AccelKey(Gdk.Key.F, Gdk.ModifierType.None, AccelFlags.Visible)); view_focus.Activated += ((o, e) => sceneWindow.Meshes.FocusSelected()); view_menu.Append(view_focus); view_menu.Append(new SeparatorMenuItem()); MenuItem view_front = new MenuItem("_Front"); view_front.AddAccelerator("activate", accelGroup, new AccelKey(Gdk.Key.KP_1, Gdk.ModifierType.None, AccelFlags.Visible)); view_front.Activated += ((o, e) => sceneWindow.Camera.EaseCamera(SceneCamera.FRONT_VIEW)); view_menu.Append(view_front); MenuItem view_back = new MenuItem("_Back"); view_back.AddAccelerator("activate", accelGroup, new AccelKey(Gdk.Key.KP_1, Gdk.ModifierType.ControlMask, AccelFlags.Visible)); view_back.Activated += ((o, e) => sceneWindow.Camera.EaseCamera(SceneCamera.BACK_VIEW)); view_menu.Append(view_back); MenuItem view_right = new MenuItem("_Right"); view_right.AddAccelerator("activate", accelGroup, new AccelKey(Gdk.Key.KP_3, Gdk.ModifierType.None, AccelFlags.Visible)); view_right.Activated += ((o, e) => sceneWindow.Camera.EaseCamera(SceneCamera.RIGHT_VIEW)); view_menu.Append(view_right); MenuItem view_left = new MenuItem("_Left"); view_left.AddAccelerator("activate", accelGroup, new AccelKey(Gdk.Key.KP_3, Gdk.ModifierType.ControlMask, AccelFlags.Visible)); view_left.Activated += ((o, e) => sceneWindow.Camera.EaseCamera(SceneCamera.LEFT_VIEW)); view_menu.Append(view_left); MenuItem view_top = new MenuItem("_Top"); view_top.AddAccelerator("activate", accelGroup, new AccelKey(Gdk.Key.KP_7, Gdk.ModifierType.None, AccelFlags.Visible)); view_top.Activated += ((o, e) => sceneWindow.Camera.EaseCamera(SceneCamera.TOP_VIEW)); view_menu.Append(view_top); MenuItem view_bottom = new MenuItem("B_ottom"); view_bottom.AddAccelerator("activate", accelGroup, new AccelKey(Gdk.Key.KP_7, Gdk.ModifierType.ControlMask, AccelFlags.Visible)); view_bottom.Activated += ((o, e) => sceneWindow.Camera.EaseCamera(SceneCamera.BOTTOM_VIEW)); view_menu.Append(view_bottom); // render settings Label frontShadingLabel = new Label("Front Face Mode:"); m_frontShading = new ComboBox(Enum.GetNames(typeof(SceneMeshes.RenderMode))); m_frontShading.TooltipText = "The render style for front faces."; m_frontShading.Active = (int)m_sceneWindow.Meshes.FrontFaceMode; m_frontShading.CanFocus = false; m_frontShading.Changed += OnFrontShadingChanged; Label backShadingLabel = new Label("Back Face Mode:"); m_backShading = new ComboBox(Enum.GetNames(typeof(SceneMeshes.RenderMode))); m_backShading.TooltipText = "The render style for back faces."; m_backShading.Active = (int)m_sceneWindow.Meshes.BackFaceMode; m_backShading.CanFocus = false; m_backShading.Changed += OnBackShadingChanged; // pack elements HBox hBox = new HBox(); hBox.PackStart(menuBar, false, false, 2); hBox.PackStart(new VSeparator(), false, false, 6); hBox.PackStart(frontShadingLabel, false, false, 2); hBox.PackStart(m_frontShading, false, false, 2); hBox.PackStart(new VSeparator(), false, false, 6); hBox.PackStart(backShadingLabel, false, false, 2); hBox.PackStart(m_backShading, false, false, 2); Add(hBox); }
/// <summary> /// Constructor. /// </summary> public MainMenuBar(MainWindow mainWindow) { m_mainWindow = mainWindow; AccelGroup accelGroup = new AccelGroup(); m_mainWindow.AddAccelGroup(accelGroup); // file menu MenuItem file_item = new MenuItem("_File"); Menu file_menu = new Menu(); file_item.Submenu = file_menu; Append(file_item); ImageMenuItem file_openTr3 = new ImageMenuItem("Open _Tr3"); file_openTr3.Image = new Image(Stock.Open, IconSize.Menu); file_openTr3.AddAccelerator("activate", accelGroup, new AccelKey(Gdk.Key.O, Gdk.ModifierType.ControlMask, AccelFlags.Visible)); file_openTr3.Activated += OnOpenTr3; file_menu.Append(file_openTr3); ImageMenuItem file_openVrml = new ImageMenuItem("Open _Meshes"); file_openVrml.Image = new Image(Stock.Open, IconSize.Menu); file_openVrml.AddAccelerator("activate", accelGroup, new AccelKey(Gdk.Key.M, Gdk.ModifierType.ControlMask, AccelFlags.Visible)); file_openVrml.Activated += OnOpenVRML; file_menu.Append(file_openVrml); file_menu.Append(new SeparatorMenuItem()); ImageMenuItem file_quit = new ImageMenuItem("_Quit"); file_quit.Image = new Image(Stock.Quit, IconSize.Menu); file_quit.AddAccelerator("activate", accelGroup, new AccelKey(Gdk.Key.Q, Gdk.ModifierType.ControlMask, AccelFlags.Visible)); file_quit.Activated += OnQuit; file_menu.Append(file_quit); // edit menu MenuItem edit_item = new MenuItem("_Edit"); Menu edit_menu = new Menu(); edit_item.Submenu = edit_menu; Append(edit_item); MenuItem edit_undo = new MenuItem("_Undo"); edit_undo.AddAccelerator("activate", accelGroup, new AccelKey(Gdk.Key.Z, Gdk.ModifierType.ControlMask, AccelFlags.Visible)); edit_undo.Activated += ((o, e) => UndoStack.Instance.Undo()); edit_menu.Append(edit_undo); MenuItem edit_redo = new MenuItem("_Redo"); edit_redo.AddAccelerator("activate", accelGroup, new AccelKey(Gdk.Key.Y, Gdk.ModifierType.ControlMask, AccelFlags.Visible)); edit_redo.Activated += ((o, e) => UndoStack.Instance.Redo()); edit_menu.Append(edit_redo); // mesh menu MenuItem mesh_item = new MenuItem("_Mesh"); Menu mesh_menu = new Menu(); mesh_item.Submenu = mesh_menu; Append(mesh_item); MenuItem mesh_selectAll = new MenuItem("Select _All/None"); mesh_selectAll.AddAccelerator("activate", accelGroup, new AccelKey(Gdk.Key.A, Gdk.ModifierType.None, AccelFlags.Visible)); mesh_selectAll.Activated += ((o, e) => MeshManager.Instance.ToggleSelected()); mesh_menu.Append(mesh_selectAll); MenuItem mesh_hide = new MenuItem("_Hide Selected"); mesh_hide.AddAccelerator("activate", accelGroup, new AccelKey(Gdk.Key.h, Gdk.ModifierType.None, AccelFlags.Visible)); mesh_hide.Activated += ((o, e) => MeshManager.Instance.HideSelected()); mesh_menu.Append(mesh_hide); MenuItem mesh_unhide = new MenuItem("_Unhide All"); mesh_unhide.AddAccelerator("activate", accelGroup, new AccelKey(Gdk.Key.H, Gdk.ModifierType.ShiftMask, AccelFlags.Visible)); mesh_unhide.Activated += ((o, e) => MeshManager.Instance.ShowAll()); mesh_menu.Append(mesh_unhide); MenuItem mesh_delete = new MenuItem("_Remove Selected"); mesh_delete.AddAccelerator("activate", accelGroup, new AccelKey(Gdk.Key.Delete, Gdk.ModifierType.None, AccelFlags.Visible)); mesh_delete.Activated += ((o, e) => MeshManager.Instance.DeleteSelected()); mesh_menu.Append(mesh_delete); mesh_menu.Append(new SeparatorMenuItem()); MenuItem mesh_smooth = new MenuItem("_Smooth Selected"); mesh_smooth.AddAccelerator("activate", accelGroup, new AccelKey(Gdk.Key.S, Gdk.ModifierType.None, AccelFlags.Visible)); mesh_smooth.Activated += ((o, e) => SmoothingManager.Instance.SmoothSelected()); mesh_menu.Append(mesh_smooth); }
private void InitActions() { // show about AboutAction.Activated += (sender, e) => new AboutWindow(this, About.Authors, About.Lines, About.Size).Show(); // show supported extensions SupportedFormatsAction.Activated += (sender, e) => new SupportedFormatsWindow(this).Show(); // create new pack MenuItem newMenuItem = this.UIManager.GetWidget(@"/mainMenuBar/FileAction/NewAction") as MenuItem; Menu newSubMenu = new Menu(); newMenuItem.Submenu = newSubMenu; Packer.SupportedExtensions.ToList().ForEach(ext => { Gtk.Action action = new Gtk.Action(String.Format("New{0}Action", ext), ext); action.Activated += (sender, e) => { if (fileSystem != null) { fileSystem.Close(); } fileSystem = null; if (Packer.Create(ext, out fileSystem)) { fileSystem.New(); ChangePackActionSensitive(true); } }; MenuItem menuItem = action.CreateMenuItem() as MenuItem; menuItem.AddAccelerator( "activate", this.UIManager.AccelGroup, new AccelKey((Gdk.Key)Gdk.Key.Parse(typeof(Gdk.Key), ext[0].ToString().ToLower()), Gdk.ModifierType.ControlMask, AccelFlags.Visible)); newSubMenu.Append(menuItem); }); // open pack action OpenAction.Activated += (sender, e) => HandleOpenAction(); // save current pack SaveAction.Activated += (sender, e) => HandleSaveAction(); // close pack and exit CloseAction.Activated += (sender, e) => { if (fileSystem != null) { fileSystem.Close(); } fileSystem = null; ChangePackActionSensitive(false); currentFolder = TreeIter.Zero; folderStore.Clear(); packStore.Clear(); }; // exit app ExitAction.Activated += (sender, e) => Program.Stop(); // add files to current pack AddFilesAction.Activated += (sender, e) => HandleAddFilesAction(); // add folder to current pack AddFolderAction.Activated += (sender, e) => HandleAddFolderAction(); // remove items from current pack RemoveAction.Activated += (sender, e) => HandleRemoveAction(); // extract items from current pack ExtractAction.Activated += (sender, e) => HandleExtractAction(); // extract all items from current pack ExtractAllAction.Activated += (sender, e) => HandleExtractAllAction(); }
private MenuBar _ApplicationMenu() { MenuItem tmpMenuItem, tmpMenuHeader; SeparatorMenuItem tmpSeparator; MenuBar tmpMainMenu = new MenuBar(); //The "File" menu Menu tmpFileMenu = new Menu(); tmpMenuItem = new ImageMenuItem(Stock.Open, _AcceleratorGroup); //tmp_Menu_Item.Activated += new EventHandler (); tmpFileMenu.Append(tmpMenuItem); tmpMenuItem = new ImageMenuItem(Stock.Save, _AcceleratorGroup); //tmp_Menu_Item.Activated += new EventHandler (); tmpFileMenu.Append(tmpMenuItem); tmpMenuItem = new ImageMenuItem(Stock.SaveAs, _AcceleratorGroup); //tmp_Menu_Item.Activated += new EventHandler (); tmpFileMenu.Append(tmpMenuItem); tmpMenuItem = new ImageMenuItem(Stock.New, _AcceleratorGroup); //tmp_Menu_Item.Activated += new EventHandler (); tmpFileMenu.Append(tmpMenuItem); tmpSeparator = new SeparatorMenuItem(); tmpFileMenu.Append(tmpSeparator); tmpMenuItem = new MenuItem("_Export Image (unimplimented)"); //tmp_Menu_Item.Activated += new EventHandler (); tmpFileMenu.Append(tmpMenuItem); tmpSeparator = new SeparatorMenuItem(); tmpFileMenu.Append(tmpSeparator); tmpMenuItem = new ImageMenuItem(Stock.Quit, _AcceleratorGroup); tmpMenuItem.Activated += new EventHandler(Menu_Exit); tmpFileMenu.Append(tmpMenuItem); tmpMenuHeader = new MenuItem("_File"); tmpMenuHeader.Submenu = tmpFileMenu; tmpMainMenu.Append(tmpMenuHeader); Menu tmpEditMenu = new Menu(); tmpMenuItem = new ImageMenuItem(Stock.Copy, _AcceleratorGroup); tmpMenuItem.Activated += new EventHandler(Menu_Copy_Parameters); tmpEditMenu.Append(tmpMenuItem); tmpMenuItem = new MenuItem("Copy _Image"); //tmp_Menu_Item.Activated += new EventHandler ( ); tmpEditMenu.Append(tmpMenuItem); tmpMenuItem = new ImageMenuItem(Stock.Paste, _AcceleratorGroup); //tmp_Menu_Item.Activated += new EventHandler (); tmpEditMenu.Append(tmpMenuItem); tmpSeparator = new SeparatorMenuItem(); tmpEditMenu.Append(tmpSeparator); tmpMenuItem = new MenuItem("_Show Selection"); tmpMenuItem.Activated += new EventHandler(MenuSelectionShow); tmpMenuItem.AddAccelerator("activate", _AcceleratorGroup, new AccelKey(Gdk.Key.F11, Gdk.ModifierType.None, AccelFlags.Visible)); tmpEditMenu.Append(tmpMenuItem); tmpMenuItem = new MenuItem("_Hide Selection"); tmpMenuItem.Activated += new EventHandler(MenuSelectionHide); tmpMenuItem.AddAccelerator("activate", _AcceleratorGroup, new AccelKey(Gdk.Key.F12, Gdk.ModifierType.None, AccelFlags.Visible)); tmpEditMenu.Append(tmpMenuItem); tmpMenuHeader = new MenuItem("_Edit"); tmpMenuHeader.Submenu = tmpEditMenu; tmpMainMenu.Append(tmpMenuHeader); Menu tmpEnginesMenu = new Menu(); tmpMenuItem = new MenuItem("_Mandelbrot"); tmpMenuItem.Activated += new EventHandler(MenuSwitchEngineMandelbrot); tmpEnginesMenu.Append(tmpMenuItem); tmpMenuItem = new MenuItem("_Julia"); tmpMenuItem.Activated += new EventHandler(MenuSwitchEngineJulia); tmpEnginesMenu.Append(tmpMenuItem); tmpMenuItem = new MenuItem("Debug Grid"); tmpMenuItem.Activated += new EventHandler(MenuSwitchEngineGrid); tmpEnginesMenu.Append(tmpMenuItem); tmpMenuHeader = new MenuItem("E_ngines"); tmpMenuHeader.Submenu = tmpEnginesMenu; tmpMainMenu.Append(tmpMenuHeader); Menu tmpRenderMenu = new Menu(); tmpMenuItem = new MenuItem("_Render Image"); tmpMenuItem.AddAccelerator("activate", _AcceleratorGroup, new AccelKey(Gdk.Key.R, Gdk.ModifierType.ControlMask, AccelFlags.Visible)); tmpMenuItem.Activated += new EventHandler(Menu_Render); tmpRenderMenu.Append(tmpMenuItem); tmpSeparator = new SeparatorMenuItem(); tmpRenderMenu.Append(tmpSeparator); //... //Quality Submenu Menu tmpRenderQualityMenu = new Menu(); this._MenuQuality = new CheckMenuItem[8]; this._MenuQuality[0] = new CheckMenuItem("_0 - Low"); this._MenuQuality[0].Activated += new EventHandler(MenuQualityChange0); tmpRenderQualityMenu.Append(this._MenuQuality[0]); this._MenuQuality[1] = new CheckMenuItem("_1 - Standard"); ((CheckMenuItem)this._MenuQuality[1]).Active = true; this._MenuQuality[1].Activated += new EventHandler(MenuQualityChange1); tmpRenderQualityMenu.Append(this._MenuQuality[1]); this._MenuQuality[2] = new CheckMenuItem("_2 - High"); this._MenuQuality[2].Activated += new EventHandler(MenuQualityChange2); tmpRenderQualityMenu.Append(this._MenuQuality[2]); this._MenuQuality[3] = new CheckMenuItem("_3 - Very High (Slow)"); this._MenuQuality[3].Activated += new EventHandler(MenuQualityChange3); tmpRenderQualityMenu.Append(this._MenuQuality[3]); this._MenuQuality[4] = new CheckMenuItem("_4 - Super High (Very Slow)"); this._MenuQuality[4].Activated += new EventHandler(MenuQualityChange4); tmpRenderQualityMenu.Append(this._MenuQuality[4]); this._MenuQuality[5] = new CheckMenuItem("_5 - Ultra Super High (Very Very Slow)"); this._MenuQuality[5].Activated += new EventHandler(MenuQualityChange5); tmpRenderQualityMenu.Append(this._MenuQuality[5]); this._MenuQuality[6] = new CheckMenuItem("_6 - Ultra Super High (Very Slow Squared)"); this._MenuQuality[6].Activated += new EventHandler(MenuQualityChange6); tmpRenderQualityMenu.Append(this._MenuQuality[6]); this._MenuQuality[7] = new CheckMenuItem("_7 - Gimongous"); this._MenuQuality[7].Activated += new EventHandler(MenuQualityChange7); tmpRenderQualityMenu.Append(this._MenuQuality[7]); tmpMenuItem = new MenuItem("Render _Quality"); tmpMenuItem.Submenu = tmpRenderQualityMenu; tmpRenderMenu.Append(tmpMenuItem); //End Quality Submenu tmpSeparator = new SeparatorMenuItem(); tmpRenderMenu.Append(tmpSeparator); tmpMenuItem = new CheckMenuItem("Visual"); ((CheckMenuItem)tmpMenuItem).Active = true; tmpMenuItem.Activated += new EventHandler(MenuQualityToggleVisual); tmpRenderMenu.Append(tmpMenuItem); tmpMenuHeader = new MenuItem("_Render"); tmpMenuHeader.Submenu = tmpRenderMenu; tmpMainMenu.Append(tmpMenuHeader); return(tmpMainMenu); }
public MainForm() : base("漢字七") { _background = Resources.ResourceManager.GetObject("background") as Bitmap; SetSizeRequest(900, 700); var version = Assembly.GetExecutingAssembly().GetName().Version.ToString().Split('.'); _version = $"{version[0]}.{version[1]}"; var vbox = new VBox { Spacing = 10 }; if (PixbufUtil.TryFrom(Resources.ResourceManager.GetObject("logo"), out Pixbuf pixbuf)) { _logo.Pixbuf = pixbuf; } AddAccelGroup(_accelGroup); //ファイル var fileMenu = new Menu(); var file = new MenuItem("ファイル(_F)") { Submenu = fileMenu }; var game = new MenuItem("新しいゲーム…"); game.Activated += OpenFlashCardGame; game.AddAccelerator("activate", _accelGroup, new AccelKey(Key.n, ModifierType.ControlMask, AccelFlags.Visible)); fileMenu.Add(game); var settings = new MenuItem("設定…"); settings.Activated += OpenConfiguration; settings.AddAccelerator("activate", _accelGroup, new AccelKey(Key.s, ModifierType.ControlMask | ModifierType.Mod1Mask, AccelFlags.Visible)); fileMenu.Add(settings); fileMenu.Add(new SeparatorMenuItem()); var exit = new MenuItem("終了"); exit.Activated += Exit; exit.AddAccelerator("activate", _accelGroup, new AccelKey(Key.q, ModifierType.ControlMask, AccelFlags.Visible)); fileMenu.Add(exit); _menuBar.Append(file); //単語 var tangoMenu = new Menu(); var tango = new MenuItem("単語(_T)") { Submenu = tangoMenu }; var registration = new MenuItem("登録…"); registration.Activated += OpenTangoEditor; registration.AddAccelerator("activate", _accelGroup, new AccelKey(Key.r, ModifierType.ControlMask, AccelFlags.Visible)); tangoMenu.Add(registration); _menuBar.Append(tango); //ヘルプ var helpMenu = new Menu(); var help = new MenuItem("ヘルプ(_H)") { Submenu = helpMenu }; var info = new MenuItem("バージョン情報…"); info.Activated += About; info.AddAccelerator("activate", _accelGroup, new AccelKey(Key.F1, ModifierType.None, AccelFlags.Visible)); helpMenu.Add(info); _menuBar.Append(help); _mainVerticalBox.PackStart(_menuBar, false, false, 0); var play = new ToolButton(Stock.MediaPlay); play.Clicked += OpenFlashCardGame; _toolbar.Insert(play, 0); var edit = new ToolButton(Stock.Edit); edit.Clicked += OpenTangoEditor; _toolbar.Insert(edit, 1); var preferences = new ToolButton(Stock.Preferences); preferences.Clicked += OpenConfiguration; _toolbar.Insert(preferences, 2); _toolbar.Insert(new SeparatorToolItem(), 3); var quit = new ToolButton(Stock.Quit); quit.Clicked += Exit; _toolbar.Insert(quit, 4); _mainVerticalBox.PackStart(_toolbar, false, true, 0); vbox.PackStart(new Label(), true, false, 0); vbox.PackStart(_logo, false, true, 0); vbox.PackStart(new Label("漢字七").SetFontSize(40).SetForegroundColor(0, 0, 0), false, false, 0); vbox.PackStart(new Label($"バージョン: {_version}").SetForegroundColor(255, 50, 50), false, false, 0); vbox.PackStart(new Label(), true, false, 0); _mainVerticalBox.PackStart(vbox, true, true, 0); _mainVerticalBox.PackStart(_statusbar, false, true, 0); Add(_mainVerticalBox); ExposeEvent += OnExposeEvent; ShowAll(); GrabFocus(); }