Example #1
0
        public MenuPopover(Widget relativeTo) : base(relativeTo)
        {
            // Init menu action buttons
            var zoomOutButton = new Button("zoom-out-symbolic", IconSize.Menu);

            zoomOutButton.ActionName = "win.zoom_out";

            var zoomDefaultButton = new Button("100%");

            zoomDefaultButton.ActionName = "win.zoom_reset";

            var zoomInButton = new Button("zoom-in-symbolic", IconSize.Menu);

            zoomInButton.ActionName = "win.zoom_in";

            var fontSizeGrid = new Grid()
            {
                ColumnHomogeneous = true,
                Hexpand           = true,
                Margin            = 12,
            };

            fontSizeGrid.StyleContext.AddClass("linked");
            fontSizeGrid.Add(zoomOutButton);
            fontSizeGrid.Add(zoomDefaultButton);
            fontSizeGrid.Add(zoomInButton);

            var menuSeparator = new Separator(Orientation.Horizontal);

            menuSeparator.MarginTop    = 6;
            menuSeparator.MarginBottom = 6;

            var prefButton = new ModelButton();

            prefButton.Text = "Preferences";
            // prefButton.ActionName = "win.open_preferences";
            prefButton.Clicked += (sender, args) =>
            {
                Console.WriteLine("Pref clicked");
                var dlg = new PreferencesDialog();
                dlg.Run();
            };

            var menuGrid = new Grid()
            {
                MarginBottom = 3,
                Orientation  = Orientation.Vertical,
                WidthRequest = 200,
            };

            menuGrid.Attach(fontSizeGrid, 0, 0, 3, 1);
            menuGrid.Attach(menuSeparator, 0, 2, 3, 1);
            menuGrid.Attach(prefButton, 0, 3, 3, 1);

            menuGrid.ShowAll();

            Add(menuGrid);
        }
Example #2
0
 public void Reset()
 {
     foreach (KeyValuePair <Int32, ModelButton> keyValuePair in this.activePointer)
     {
         ModelButton value = keyValuePair.Value;
         Int32       key   = keyValuePair.Key;
         value.gameObject.SetActive(false);
         this.inactivePointer.Add(key, value);
     }
     this.activePointer.Clear();
 }
Example #3
0
 private void Awake()
 {
     this.inactivePointer = new Dictionary <Int32, ModelButton>();
     this.activePointer   = new Dictionary <Int32, ModelButton>();
     for (Int32 i = 0; i < 8; i++)
     {
         ModelButton component = this.ModelButtons[i].GetComponent <ModelButton>();
         this.inactivePointer.Add(i, component);
         component.gameObject.SetActive(false);
         UIEventListener uieventListener = UIEventListener.Get(component.gameObject);
         uieventListener.onClick = (UIEventListener.VoidDelegate)Delegate.Combine(uieventListener.onClick, new UIEventListener.VoidDelegate(this.onClick));
         UIEventListener uieventListener2 = UIEventListener.Get(component.gameObject);
         uieventListener2.onHover = (UIEventListener.BoolDelegate)Delegate.Combine(uieventListener2.onHover, new UIEventListener.BoolDelegate(this.onHover));
     }
 }
        public PopOverMenuHandler(RoboPad parent)
        {
            // PopoverMenu popoverMenu = new PopoverMenu();

            ModelButton newWindowButton = new ModelButton();

            newWindowButton.Text   = "New Window";
            newWindowButton.Margin = 5;
            newWindowButton.SetSizeRequest(20, 20);

            newWindowButton.Show();
            ModelButton openFileButton = new ModelButton();

            openFileButton.Text   = "Open File";
            openFileButton.Margin = 5;
            openFileButton.SetSizeRequest(20, 20);



            openFileButton.Show();
            ModelButton saveFileButton = new ModelButton();

            saveFileButton.Text   = "Save File";
            saveFileButton.Margin = 5;
            saveFileButton.SetSizeRequest(20, 20);


            saveFileButton.Show();
            ModelButton saveAsFileButton = new ModelButton();

            saveAsFileButton.Text   = "Save as";
            saveAsFileButton.Margin = 5;
            saveAsFileButton.SetSizeRequest(20, 20);
            saveAsFileButton.Show();

            newWindowButton.Clicked += (Events, Args) =>
            {
                new RoboPad(WindowType.Toplevel, null);
            };

            openFileButton.Clicked   += parent.openFile;
            saveFileButton.Clicked   += parent.saveFile;
            saveAsFileButton.Clicked += parent.saveAsFile;

            VBox popoverVbox = new VBox();

            popoverVbox.Margin = 12;
            popoverVbox.ShowAll();

            popoverVbox.Add(newWindowButton);
            popoverVbox.Add(new SeparatorMenuItem
            {
                Visible = true
            });
            popoverVbox.Add(openFileButton);
            popoverVbox.Add(new SeparatorMenuItem
            {
                Visible = true
            });
            popoverVbox.Add(saveFileButton);
            popoverVbox.Add(saveAsFileButton);

            Add(popoverVbox);
        }