/// <summary>
        /// Atualiza os dados do form
        /// Utilizado em forms do B1 em que o método Form.Update() não funciona
        /// </summary>
        /// <param name="formType">Id do form</param>
        /// <returns>Executado com sucesso</returns>
        public static bool UpdateForm(int formType)
        {
            // A atualização do form é feita navegando para o próximo registro e voltando para o original
            // Não foi encontrada uma maneira mais elegante para atualizar um form do B1
            try
            {
                // Busca o form
                Form frmUpdateForm = SBOApp.Application.Forms.GetFormByTypeAndCount(formType, 1);
                // Seta o foco no form
                frmUpdateForm.Select();

                frmUpdateForm.Freeze(true);

                // Navega para o próximo item
                MenuItem menu = SBOApp.Application.Menus.Item("1288");
                menu.Enabled = true;
                menu.Activate();

                // Volta para o item original
                menu         = SBOApp.Application.Menus.Item("1289");
                menu.Enabled = true;
                menu.Activate();
                frmUpdateForm.Freeze(false);
                return(true);
            }
            catch
            {
                return(false);
            }
        }
Esempio n. 2
0
        void OnActionItemClickedImpl(IMenuItem item)
        {
            int      index  = item.ItemId;
            MenuItem action = ActionModeContext.ContextActions[index];

            action.Activate();
        }
Esempio n. 3
0
        // Перенесено в ImageLib
        //static object OnClick(List<ItemRegister> registers)
        //{
        //    if(registers.Count == 1)
        //    {
        //        return OnClick(registers[0]);
        //    }
        //    return null;
        //}

        //static object OnClick(ItemRegister register)
        //{
        //    BaseMethod method = (BaseMethod)Activator.CreateInstance(register.Type);
        //    return method.Invoke(null);
        //}

        //private static void MethodItem_AddMethodRegister(object methodItem, ItemRegister obj)
        //{
        //    MenuItem mi = (MenuItem)methodItem;
        //    methodItems[mi].onClick.Add(obj);
        //}

        private static object CreateButton(string name, MenuItem item)
        {
            ToolStripMenuItem toolStripMenuItem = new ToolStripMenuItem(name);

            toolStripMenuItem.Click += (_, __) => item.Activate();
            return(toolStripMenuItem);
        }
Esempio n. 4
0
        private static void MenuItemBtnReleasedHandler(object sender, ButtonReleaseEventArgs args)
        {
            args.RetVal = (object)true;
            MenuItem menuItem = sender as MenuItem;

            (menuItem.Parent as Menu).Deactivate();
            menuItem.Activate();
        }
Esempio n. 5
0
        private static void DelayHideMenuItemBtnReleasedHandler(object sender, ButtonReleaseEventArgs args)
        {
            args.RetVal = (object)true;
            MenuItem menuItem = sender as MenuItem;
            Menu     parent   = menuItem.Parent as Menu;

            menuItem.Activate();
            parent.Deactivate();
        }
        protected virtual ToolStripMenuItem CreateToolStripMenuItem(MenuItem item)
        {
            ToolStripMenuItem menuItem = new ToolStripMenuItem(item.GetLocaleName())
            {
                Tag = item
            };

            menuItem.Click += (_, __) => item.Activate();
            return(menuItem);
        }
Esempio n. 7
0
        public static NSMenuItem ToNSMenuItem(this MenuItem menuItem, int i = -1)
        {
            var nsMenuItem = new NSMenuItem(menuItem.Text ?? "");

            if (i != -1)
            {
                nsMenuItem.Tag = i;
            }
            nsMenuItem.Enabled    = menuItem.IsEnabled;
            nsMenuItem.Activated += (sender, e) => menuItem.Activate();
            if (!string.IsNullOrEmpty(menuItem.Icon))
            {
                nsMenuItem.Image = new NSImage(menuItem.Icon);
            }

            return(nsMenuItem);
        }
Esempio n. 8
0
        static NSMenuItem GetNSMenuItem(int i, MenuItem contextAction)
        {
            var menuItem = new NSMenuItem(contextAction.Text ?? "");

            menuItem.Tag     = i;
            menuItem.Enabled = contextAction.IsEnabled;
            if (menuItem.Enabled)
            {
                menuItem.Activated += (sender, e) =>
                {
                    contextAction.Activate();
                }
            }
            ;
            if (!string.IsNullOrEmpty(contextAction.Icon))
            {
                menuItem.Image = new NSImage(contextAction.Icon);
            }

            return(menuItem);
        }
    }
Esempio n. 9
0
        public void CreateMenuItem_ActivateItem_CommandExecuted()
        {
            // Arrange
            bool commandExecuted    = false;
            var  mockHotkeysService = new Mock <IHotkeysService> ();

            App.Current.HotkeysService = mockHotkeysService.Object;
            Command testcommand = new Command(exec => commandExecuted = !commandExecuted);

            KeyConfig hotkey = new KeyConfig {
                Key = new HotKey()
            };

            mockHotkeysService.Setup(s => s.GetByName("TEST")).Returns(hotkey);

            MenuItem testItem = testcommand.CreateMenuItem("test text", null, "TEST");

            // Act
            testItem.Activate();

            // Assert
            Assert.IsTrue(commandExecuted);
        }
Esempio n. 10
0
        static MenuBar CreateMenuBar(Window parent)
        {
            MenuItem open = new MenuItem("Open...");

            open.Activated += (object?sender, EventArgs e) =>
            {
                FileChooserDialog fcd = new FileChooserDialog("Open Project", parent, FileChooserAction.Open,
                                                              Stock.Open, ResponseType.Ok,
                                                              Stock.Cancel, ResponseType.Cancel);
                fcd.SelectMultiple = false;
                AddFilters(fcd);

                if (fcd.Run() == (int)ResponseType.Ok)
                {
                    try
                    {
                        FileManager.Load(fcd.Filename);

                        Console.WriteLine($"Successfully read and parsed project file { fcd.Filename }.");
                        Console.WriteLine($"- wires: { FileManager.Wires }");
                        Console.WriteLine($"- components: { FileManager.Components }");
                        Console.WriteLine($"- labels: { FileManager.Labels }");
                    }
                    catch (Exception err)
                    {
                        // FIXME: Do something if parse fails?

                        Output.WriteError($"Failed to read and parse project file { fcd.Filename }.", err);
                    }
                }

                fcd.Dispose();
            };

            MenuItem saveAs = new MenuItem("Save As...");

            saveAs.Activated += (object?sender, EventArgs e) =>
            {
                FileChooserDialog fcd = new FileChooserDialog("Save Project", parent, FileChooserAction.Open,
                                                              Stock.Save, ResponseType.Ok,
                                                              Stock.Cancel, ResponseType.Cancel);
                AddFilters(fcd);

                if (fcd.Run() == (int)ResponseType.Ok)
                {
                    try
                    {
                        FileManager.Save(fcd.Filename);

                        Console.WriteLine($"Successfully saved and parsed project file { fcd.Filename }.");
                        Console.WriteLine($"- wires: { FileManager.Wires }");
                        Console.WriteLine($"- components: { FileManager.Components }");
                        Console.WriteLine($"- labels: { FileManager.Labels }");
                    }
                    catch (Exception err)
                    {
                        // FIXME: Do something if parse fails?

                        Output.WriteError($"Failed to write and parse project file { fcd.Filename }.", err);
                    }
                }

                fcd.Dispose();
            };

            MenuItem save = new MenuItem("Save...");

            save.Activated += (object?sender, EventArgs e) =>
            {
                if (FileManager.IsNew)
                {
                    saveAs.Activate();
                }
                else
                {
                    FileManager.Save();
                }
            };

            Menu fileMenu = new Menu();

            fileMenu.Append(open);
            fileMenu.Append(save);
            fileMenu.Append(saveAs);

            MenuItem file = new MenuItem("File");

            file.AddEvents((int)Gdk.EventMask.AllEventsMask);
            file.Submenu = fileMenu;

            // FIXME: Hook up callbacks

            // FIXME: On windows (and Mac) there should be no delay
            // on the ability to close the menu when you've opened it.
            // Atm there is a delay after opening the menu and when
            // you can close it...

            MenuBar bar = new MenuBar();

            bar.Append(file);

            return(bar);
        }
Esempio n. 11
0
 public void Execute(object parameter)
 {
     _menuItem.Activate();
 }