Esempio n. 1
0
        private void InitializeMenu()
        {
            var menus        = new List <ToolStripItem>();
            var runtimes     = Script.GetRuntimes();
            var runtimeMenus = new List <IRuntimeMenu>();

            for (int i = 0; i < runtimes.Count; i++)
            {
                IRuntimeMenu runtimeMenu;

                if (runtimes[i] == null || (runtimeMenu = runtimes[i].Menu) == null)
                {
                    continue;
                }

                try {
                    runtimeMenu.Initialize(this);
                } catch (Exception ex) {
                    Plugin.Plugin.PluginException(ex, runtimeMenu.GetType().Name, "IRuntimeMenu initialize failed", "Script Editor");
                }

                try {
                    menus.AddRange(runtimeMenu.Menus);
                    runtimeMenus.Add(runtimeMenu);
                } catch (Exception ex) {
                    Plugin.Plugin.PluginException(ex, runtimeMenu.GetType().Name, "IRuntimeMenu get Menus failed", "Script Editor");
                }
            }

            _runtimeMenus  = runtimeMenus.ToArray();
            _separatorMenu = MenuStripSupport.AddSeparator(menus);
            (_removeMenu = MenuStripSupport.AddMenuItem(menus, Language.Language.Program_Remove_Button, "remove")).Click += Remove_Click;

            contextMenuStrip.Items.AddRange(menus.ToArray());
        }
Esempio n. 2
0
        public void Initialize(Service service)
        {
            Script = service.GetScript();
            var runtimes = Script.GetRuntimes();

            for (int i = 0; i < runtimes.Count; i++)
            {
                if (runtimes[i].GetType() == typeof(VirtualInputRuntime))
                {
                    Runtime = (VirtualInputRuntime)runtimes[i];
                }
            }
        }