Ejemplo n.º 1
0
        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);
        }
Ejemplo n.º 2
0
        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);
        }
Ejemplo n.º 3
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();
        }