void GenerateMenu(GenerateActionArgs args) { var file = args.Menu.GetSubmenu("&File", 100); args.Menu.GetSubmenu("&Edit", 200); args.Menu.GetSubmenu("&Window", 900); var help = args.Menu.GetSubmenu("&Help", 1000); if (Generator.IsMac) { // have a nice OS X style menu var main = args.Menu.GetSubmenu(Application.Instance.Name, 0); main.Actions.Add(Actions.About.ActionID, 0); main.Actions.Add(Actions.Quit.ActionID, 1000); } else { // windows/gtk style window file.Actions.Add(Actions.Quit.ActionID); help.Actions.Add(Actions.About.ActionID); } #if DESKTOP this.Menu = args.Menu.GenerateMenuBar(); #endif }
void GenerateToolBar(GenerateActionArgs args) { args.ToolBar.Add(Actions.Quit.ActionID); args.ToolBar.Add(Actions.About.ActionID); #if DESKTOP // TODO for mobile this.ToolBar = args.ToolBar.GenerateToolBar(); #endif }
private void GenerateMenu(GenerateActionArgs args) { var main = args.Menu.FindAddSubMenu(this.Text, 0); var file = args.Menu.FindAddSubMenu("&File", 0); var edit = args.Menu.FindAddSubMenu("&Edit", 0); var window = args.Menu.FindAddSubMenu("&Window", 1000); var help = args.Menu.FindAddSubMenu("Help", 1000); if (Generator.ID == "mac") { main.Actions.Add(Actions.About.ActionID); main.Actions.AddSeparator(); main.Actions.Add(Actions.Preferences.ActionID); main.Actions.AddSeparator(); main.Actions.Add("mac_hide"); main.Actions.Add("mac_hideothers"); main.Actions.Add("mac_showall"); main.Actions.AddSeparator(); main.Actions.Add(Actions.Quit.ActionID); edit.Actions.Add("mac_undo"); edit.Actions.Add("mac_redo"); edit.Actions.AddSeparator(); edit.Actions.Add("mac_cut"); edit.Actions.Add("mac_copy"); edit.Actions.Add("mac_paste"); edit.Actions.Add("mac_delete"); edit.Actions.AddSeparator(); edit.Actions.Add("mac_selectAll"); file.Actions.Add(Actions.Save.ActionID); file.Actions.Add(Actions.New.ActionID); file.Actions.Add(Actions.Delete.ActionID); file.Actions.Add(Actions.Rename.ActionID); window.Actions.Add("mac_performMiniaturize"); window.Actions.Add("mac_performZoom"); } else { file.Actions.Add(Actions.Preferences.ActionID); file.Actions.AddSeparator(); file.Actions.Add(Actions.Save.ActionID); file.Actions.Add(Actions.New.ActionID); file.Actions.Add(Actions.Delete.ActionID); file.Actions.Add(Actions.Rename.ActionID); file.Actions.AddSeparator(); file.Actions.Add(Actions.Quit.ActionID); help.Actions.Add(Actions.About.ActionID); } this.Menu = args.Menu.GenerateMenuBar(); }
private void GenerateToolBar(GenerateActionArgs args) { args.ToolBar.Add(Actions.New.ActionID); args.ToolBar.Add(Actions.Delete.ActionID); args.ToolBar.Add(Actions.Rename.ActionID); //args.ToolBar.AddFlexibleSpace(); //args.ToolBar.Add(Actions.Preferences.ActionID); //args.ToolBar.Add(Actions.About.ActionID); this.ToolBar = args.ToolBar.GenerateToolBar(); this.ToolBar.Style = "ToolBar"; }
private void GenerateActions() { // generate action args GenerateActionArgs args = new GenerateActionArgs(); Application.Instance.GetSystemActions(args); args.Actions.Add(new Actions.About()); args.Actions.Add(new Actions.Quit()); args.Actions.Add(new Actions.Close()); args.Actions.Add(new Actions.New()); args.Actions.Add(new Actions.Save()); args.Actions.Add(new Actions.Delete()); args.Actions.Add(new Actions.Preferences()); args.Actions.Add(new Actions.Rename()); // generate menu and toolbar GenerateMenu(args); GenerateToolBar(args); }
void GenerateMenuToolBarActions() { // use actions to generate menu & toolbar to share logic var args = new GenerateActionArgs(); // generate actions to use in menus and toolbars Application.Instance.GetSystemActions(args, true); args.Actions.Add(new Actions.About()); args.Actions.Add(new Actions.Quit()); args.Actions.Add(new Actions.Close()); // generate and set the menu GenerateMenu(args); // generate and set the toolbar GenerateToolBar(args); }
void GenerateActions() { var actions = new GenerateActionArgs(this); Application.Instance.GetSystemActions(actions, true); var quitAction = new ButtonAction { Text = "Quit", Accelerator = Application.Instance.CommonModifier | Key.Q }; quitAction.Activated += (sender, e) => Application.Instance.Quit(); // add action to file sub-menu var file = actions.Menu.FindAddSubMenu("&File"); file.Actions.Add(quitAction); // generate menu this.Menu = actions.Menu.GenerateMenuBar(); }
void GenerateActions() { var actions = new GenerateActionArgs(this); Application.Instance.GetSystemActions(actions, true); var myAction = new MyAction(); // add action to file sub-menu var file = actions.Menu.FindAddSubMenu("&File"); file.Actions.Add(myAction); // add action to toolbar actions.ToolBar.Add(myAction); // generate menu & toolbar this.Menu = actions.Menu.GenerateMenuBar(); this.ToolBar = actions.ToolBar.GenerateToolBar(); }
public void GetSystemActions(GenerateActionArgs args, bool addStandardItems) { }
public void GetSystemActions(GenerateActionArgs args) { }
public void GetSystemActions(GenerateActionArgs args, bool addStandardItems) { args.Actions.AddButton("mac_hide", string.Format("Hide {0}|Hide {0}|Hides the main {0} window", Widget.Name), delegate { NSApplication.SharedApplication.Hide(NSApplication.SharedApplication); }, Key.H | Key.Application); args.Actions.AddButton("mac_hideothers", "Hide Others|Hide Others|Hides all other application windows", delegate { NSApplication.SharedApplication.HideOtherApplications(NSApplication.SharedApplication); }, Key.H | Key.Application | Key.Alt); args.Actions.AddButton("mac_showall", "Show All|Show All|Show All Windows", delegate { NSApplication.SharedApplication.UnhideAllApplications(NSApplication.SharedApplication); }); args.Actions.Add(new MacButtonAction("mac_performMiniaturize", "Minimize", "performMiniaturize:") { Accelerator = Key.Application | Key.M }); args.Actions.Add(new MacButtonAction("mac_performZoom", "Zoom", "performZoom:")); args.Actions.Add(new MacButtonAction("mac_performClose", "Close", "performClose:") { Accelerator = Key.Application | Key.W }); args.Actions.Add(new MacButtonAction("mac_arrangeInFront", "Bring All To Front", "arrangeInFront:")); args.Actions.Add(new MacButtonAction("mac_cut", "Cut", "cut:") { Accelerator = Key.Application | Key.X }); args.Actions.Add(new MacButtonAction("mac_copy", "Copy", "copy:") { Accelerator = Key.Application | Key.C }); args.Actions.Add(new MacButtonAction("mac_paste", "Paste", "paste:") { Accelerator = Key.Application | Key.V }); args.Actions.Add(new MacButtonAction("mac_pasteAsPlainText", "Paste and Match Style", "pasteAsPlainText:") { Accelerator = Key.Application | Key.Alt | Key.Shift | Key.V }); args.Actions.Add(new MacButtonAction("mac_delete", "Delete", "delete:")); args.Actions.Add(new MacButtonAction("mac_selectAll", "Select All", "selectAll:") { Accelerator = Key.Application | Key.A }); args.Actions.Add(new MacButtonAction("mac_undo", "Undo", "undo:") { Accelerator = Key.Application | Key.Z }); args.Actions.Add(new MacButtonAction("mac_redo", "Redo", "redo:") { Accelerator = Key.Application | Key.Shift | Key.Z }); args.Actions.Add(new MacButtonAction("mac_toggleFullScreen", "Enter Full Screen", "toggleFullScreen:") { Accelerator = Key.Application | Key.Control | Key.F }); args.Actions.Add(new MacButtonAction("mac_runPageLayout", "Page Setup...", "runPageLayout:") { Accelerator = Key.Application | Key.Shift | Key.P }); args.Actions.Add(new MacButtonAction("mac_print", "Print...", "print:") { Accelerator = Key.Application | Key.P }); if (addStandardItems) { var application = args.Menu.FindAddSubMenu(Widget.Name ?? "Application", 100); application.Actions.AddSeparator(800); application.Actions.Add("mac_hide", 800); application.Actions.Add("mac_hideothers", 800); application.Actions.Add("mac_showall", 800); application.Actions.AddSeparator(801); var file = args.Menu.FindAddSubMenu("&File", 100); file.Actions.AddSeparator(900); file.Actions.Add("mac_performClose", 900); if (AddPrintingMenuItems) { file.Actions.AddSeparator(1000); file.Actions.Add("mac_runPageLayout", 1000); file.Actions.Add("mac_print", 1000); } var edit = args.Menu.FindAddSubMenu("&Edit", 200); edit.Actions.AddSeparator(100); edit.Actions.Add("mac_undo", 100); edit.Actions.Add("mac_redo", 100); edit.Actions.AddSeparator(101); edit.Actions.AddSeparator(200); edit.Actions.Add("mac_cut", 200); edit.Actions.Add("mac_copy", 200); edit.Actions.Add("mac_paste", 200); edit.Actions.Add("mac_delete", 200); edit.Actions.Add("mac_selectAll", 200); edit.Actions.AddSeparator(201); var window = args.Menu.FindAddSubMenu("&Window", 900); window.Actions.AddSeparator(100); window.Actions.Add("mac_performMiniaturize", 100); window.Actions.Add("mac_performZoom", 100); window.Actions.AddSeparator(101); window.Actions.AddSeparator(200); window.Actions.Add("mac_arrangeInFront", 200); window.Actions.AddSeparator(201); if (AddFullScreenMenuItem) { var view = args.Menu.FindAddSubMenu("&View", 300); view.Actions.AddSeparator(900); view.Actions.Add("mac_toggleFullScreen", 900); view.Actions.AddSeparator(901); } var help = args.Menu.FindAddSubMenu("&Help", 900); // add separator so help menu is always shown even when empty help.Actions.AddSeparator(0); } }