Ejemplo n.º 1
0
 /// <summary>
 /// Creates a plugin panel for the plugin
 /// </summary>
 public void CreatePluginPanel()
 {
     this.pluginUI             = new PluginUI(this);
     this.pluginUI.Text        = TextHelper.GetString("Title.PluginPanel");
     this.pluginUI.ParentPanel = PluginBase.MainForm.CreateDockablePanel(this.pluginUI, this.pluginGuid, this.pluginImage, DockState.DockBottomAutoHide);
     ResultsPanelHelper.Initialize(this, this.pluginUI);
 }
Ejemplo n.º 2
0
        /// <summary>
        /// Handles the incoming events
        /// </summary>
        public void HandleEvent(Object sender, NotifyEvent e, HandlingPriority priority)
        {
            switch (e.Type)
            {
            case EventType.Command:
                var de = (DataEvent)e;
                switch (de.Action)
                {
                case "ResultsPanel.ClearResults":
                    de.Handled = true;
                    ResultsPanelHelper.ClearResults((string)de.Data);
                    break;

                case "ResultsPanel.ShowResults":
                    e.Handled = true;
                    ResultsPanelHelper.ShowResults((string)de.Data);
                    break;
                }
                break;

            case EventType.ApplySettings:
            case EventType.ApplyTheme:
                ResultsPanelHelper.ApplySettings();
                break;

            case EventType.ProcessStart:
                this.pluginUI.ClearOutput();
                break;

            case EventType.ProcessEnd:
                this.pluginUI.DisplayOutput();
                break;

            case EventType.Trace:
                ResultsPanelHelper.OnTrace();
                break;

            case EventType.FileOpen:
                ResultsPanelHelper.OnFileOpen((TextEvent)e);
                break;

            case EventType.Keys:
                KeyEvent ke = (KeyEvent)e;
                switch (PluginBase.MainForm.GetShortcutItemId(ke.Value))
                {
                case null:
                    break;

                case "ResultsPanel.ShowNextResult":
                    ke.Handled = ResultsPanelHelper.ActiveUI.NextEntry();
                    break;

                case "ResultsPanel.ShowPrevResult":
                    ke.Handled = ResultsPanelHelper.ActiveUI.PreviousEntry();
                    break;

                case "ResultsPanel.ClearResults":
                    ke.Handled = ResultsPanelHelper.ActiveUI.ClearOutput();
                    break;

                case "ResultsPanel.ClearIgnoredEntries":
                    ke.Handled = ResultsPanelHelper.ActiveUI.ClearIgnoredEntries();
                    break;

                default:
                    if (ke.Value == PanelContextMenu.CopyEntryKeys)
                    {
                        ke.Handled = ResultsPanelHelper.ActiveUI.CopyTextShortcut();
                    }
                    else if (ke.Value == PanelContextMenu.IgnoreEntryKeys)
                    {
                        ke.Handled = ResultsPanelHelper.ActiveUI.IgnoreEntryShortcut();
                    }
                    break;
                }

                break;
            }
        }