private DropDownMenu GetSliceOptionsMenuDropList() { DropDownMenu sliceOptionsMenuDropList; sliceOptionsMenuDropList = new DropDownMenu("Options".Localize() + "... ") { HoverColor = new RGBA_Bytes(0, 0, 0, 50), NormalColor = new RGBA_Bytes(0, 0, 0, 0), BorderColor = new RGBA_Bytes(ActiveTheme.Instance.SecondaryTextColor, 100), BackgroundColor = new RGBA_Bytes(0, 0, 0, 0), BorderWidth = 1, MenuAsWideAsItems = false, AlignToRightEdge = true, }; sliceOptionsMenuDropList.Name = "Slice Settings Options Menu"; sliceOptionsMenuDropList.VAnchor |= VAnchor.ParentCenter; showHelpBox = new CheckBox("Show Help".Localize()); if (primarySettingsView) { // only turn on the help if in the main view and it is set to on showHelpBox.Checked = UserSettings.Instance.get(SliceSettingsShowHelpEntry) == "true"; } showHelpBox.CheckedStateChanged += (s, e) => { if (primarySettingsView) { // only save the help settings if in the main view UserSettings.Instance.set(SliceSettingsShowHelpEntry, showHelpBox.Checked.ToString().ToLower()); } ShowHelpChanged?.Invoke(this, null); }; MenuItem showHelp = new MenuItem(showHelpBox, "Show Help Checkbox") { Padding = sliceOptionsMenuDropList.MenuItemsPadding, }; sliceOptionsMenuDropList.MenuItems.Add(showHelp); sliceOptionsMenuDropList.AddHorizontalLine(); sliceOptionsMenuDropList.AddItem("Import".Localize()).Selected += (s, e) => { ImportSettingsMenu_Click(); }; sliceOptionsMenuDropList.AddItem("Export".Localize()).Selected += (s, e) => { WizardWindow.Show <ExportSettingsPage>("ExportSettingsPage", "Export Settings"); }; MenuItem settingsHistory = sliceOptionsMenuDropList.AddItem("Restore Settings".Localize()); settingsHistory.Selected += (s, e) => { WizardWindow.Show <PrinterProfileHistoryPage>("PrinterProfileHistory", "Restore Settings"); }; settingsHistory.Enabled = !string.IsNullOrEmpty(AuthenticationData.Instance.ActiveSessionUsername); sliceOptionsMenuDropList.AddItem("Reset to Defaults".Localize()).Selected += (s, e) => { UiThread.RunOnIdle(ResetToDefaults); }; return(sliceOptionsMenuDropList); }
public MenuBase(string menuName) { MenuDropList = new DropDownMenu(menuName.ToUpper(), Direction.Down, pointSize: 10); MenuDropList.MenuItemsPadding = new BorderDouble(0); MenuDropList.Margin = new BorderDouble(0); MenuDropList.Padding = new BorderDouble(0); MenuDropList.MenuItemsPadding = new BorderDouble(8, 4); // 8, 6, 8, 6); MenuDropList.DrawDirectionalArrow = false; MenuDropList.MenuAsWideAsItems = false; menuActions = new List <MenuItemAction>(GetMenuActions()); BorderDouble padding = MenuDropList.MenuItemsPadding; //Add the menu items to the menu itself foreach (MenuItemAction item in menuActions) { if (item.Title.StartsWith("-----")) { MenuDropList.AddHorizontalLine(); } else { MenuItem newItem = MenuDropList.AddItem(item.Title, pointSize: 11); if (item.Action == null) { newItem.Enabled = false; } } } MenuDropList.Padding = padding; AddChild(MenuDropList); this.Width = GetChildrenBoundsIncludingMargins().Width; this.Height = 22 * GuiWidget.DeviceScale; this.Margin = new BorderDouble(0); this.Padding = new BorderDouble(0); this.VAnchor = Agg.UI.VAnchor.ParentCenter; this.MenuDropList.SelectionChanged += MenuDropList_SelectionChanged; this.MenuDropList.OpenOffset = new Vector2(0, 0); }
private void CreateActionMenuItems(DropDownMenu actionMenu) { actionMenu.SelectionChanged += (sender, e) => { string menuSelection = ((DropDownMenu)sender).SelectedValue; foreach (var menuItem in menuItems) { if (menuItem.Title == menuSelection) { menuItem.Action?.Invoke(null, null); } } }; // edit menu item menuItems.Add(new PrintItemAction() { Title = "Edit".Localize(), Action = (s, e) => editButton_Click(s, null) }); actionMenuEnableData.Add(new MenuEnableData( actionMenu.AddItem(menuItems[menuItems.Count - 1].Title), false, false, false)); actionMenu.AddHorizontalLine(); // rename menu item menuItems.Add(new PrintItemAction() { Title = "Rename".Localize(), Action = (s, e) => renameFromLibraryButton_Click(s, null) }); actionMenuEnableData.Add(new MenuEnableData(actionMenu.AddItem(menuItems[menuItems.Count - 1].Title), false, false, true)); // move menu item menuItems.Add(new PrintItemAction() { Title = "Move".Localize(), Action = (s, e) => moveInLibraryButton_Click(s, null) }); //actionMenuEnableData.Add(new MenuEnableData(actionMenu.AddItem(menuItems[menuItems.Count - 1].Title), true, false, true)); // remove menu item menuItems.Add(new PrintItemAction() { Title = "Remove".Localize(), Action = (s, e) => deleteFromLibraryButton_Click(s, null) }); actionMenuEnableData.Add(new MenuEnableData( actionMenu.AddItem(menuItems[menuItems.Count - 1].Title), true, false, true)); actionMenu.AddHorizontalLine(); // add to queue menu item menuItems.Add(new PrintItemAction() { Title = "Add to Queue".Localize(), Action = (s, e) => addToQueueButton_Click(s, null) }); actionMenuEnableData.Add(new MenuEnableData( actionMenu.AddItem(menuItems[menuItems.Count - 1].Title), true, true, false)); // export menu item menuItems.Add(new PrintItemAction() { Title = "Export".Localize(), Action = (s, e) => exportButton_Click(s, null) }); actionMenuEnableData.Add(new MenuEnableData( actionMenu.AddItem(menuItems[menuItems.Count - 1].Title), false, false, false)); // share menu item menuItems.Add(new PrintItemAction() { Title = "Share".Localize(), Action = (s, e) => shareFromLibraryButton_Click(s, null) }); actionMenuEnableData.Add(new MenuEnableData( actionMenu.AddItem(menuItems[menuItems.Count - 1].Title), false, false, false, true)); SetActionMenuStates(); }