public void ExecuteSourceLocationAction(PascalABCCompiler.SourceLocation SourceLocation, VisualPascalABCPlugins.SourceLocationAction Action) { if (Action != SourceLocationAction.NavigationGoto) { NavigationLocationChanged(); } if (SourceLocation.FileName != null) { WorkbenchServiceFactory.FileService.OpenFile(SourceLocation.FileName, null, true); } CodeFileDocumentTextEditorControl editor = CurrentSyntaxEditor.TextEditor; editor.ActiveTextAreaControl.SelectionManager.ClearSelection(); //Point Beg = new Point(SourceLocation.BeginPosition.Column - 1, SourceLocation.BeginPosition.Line - 1); //Point End = new Point(SourceLocation.EndPosition.Column, SourceLocation.EndPosition.Line - 1); ICSharpCode.TextEditor.TextLocation Beg = new ICSharpCode.TextEditor.TextLocation(SourceLocation.BeginPosition.Column - 1, SourceLocation.BeginPosition.Line - 1); ICSharpCode.TextEditor.TextLocation End = new ICSharpCode.TextEditor.TextLocation(SourceLocation.EndPosition.Column, SourceLocation.EndPosition.Line - 1); switch (Action) { case SourceLocationAction.SelectAndGotoBeg: case SourceLocationAction.SelectAndGotoEnd: case SourceLocationAction.FindSelection: if (Action == SourceLocationAction.SelectAndGotoBeg) { editor.ActiveTextAreaControl.Caret.Position = Beg; } else { editor.ActiveTextAreaControl.Caret.Position = End; } editor.ActiveTextAreaControl.SelectionManager.SetSelection(Beg, End); if (Action != SourceLocationAction.FindSelection) { SetFocusToEditor(); } break; case SourceLocationAction.NavigationGoto: case SourceLocationAction.GotoBeg: case SourceLocationAction.GotoEnd: if (Action == SourceLocationAction.GotoBeg || Action == SourceLocationAction.NavigationGoto) { editor.ActiveTextAreaControl.Caret.Position = Beg; } else { editor.ActiveTextAreaControl.Caret.Position = End; } SetFocusToEditor(); break; } if (Action != SourceLocationAction.NavigationGoto) { NavigationLocationChanged(); CurrentSyntaxEditor.CenterView(); } }
public QuickClassBrowserPanel(CodeFileDocumentTextEditorControl textAreaControl) { InitializeComponent(); this.membersComboBox.MaxDropDownItems = 20; base.Dock = DockStyle.Top; this.textAreaControl = textAreaControl; this.textAreaControl.ActiveTextAreaControl.Caret.PositionChanged += new EventHandler(CaretPositionChanged); if (VisualPABCSingleton.MainForm != null && !VisualPABCSingleton.MainForm.UserOptions.ShowQuickClassBrowserPanel) { this.Visible = false; } if (VisualPABCSingleton.MainForm != null) { th = new Thread(new ThreadStart(ChangeInternal)); th.Priority = ThreadPriority.Lowest; th.IsBackground = true; th.Start(); } }
public QuickClassBrowserPanel(CodeFileDocumentTextEditorControl textAreaControl) { InitializeComponent(); this.membersComboBox.MaxDropDownItems = 20; base.Dock = DockStyle.Top; this.textAreaControl = textAreaControl; this.textAreaControl.ActiveTextAreaControl.Caret.PositionChanged += new EventHandler(CaretPositionChanged); //this.Paint += new PaintEventHandler( PaintInternal); if (VisualPABCSingleton.MainForm != null && !VisualPABCSingleton.MainForm.UserOptions.ShowQuickClassBrowserPanel) { this.Visible = false; } // else this.ShowPanel(); //FillMembersComboBox(); //UpdateMembersComboBox(); if (VisualPABCSingleton.MainForm != null) { th = new Thread(new ThreadStart(ChangeInternal)); th.Priority = ThreadPriority.Lowest; th.IsBackground = true; th.Start(); } }