diff --git a/data/resources/layouts/Debug.xml b/data/resources/layouts/Debug.xml index 72d9397695..5711bb67bd 100644 --- a/data/resources/layouts/Debug.xml +++ b/data/resources/layouts/Debug.xml @@ -1,28 +1,30 @@ - - - - - - + + + + + + - - - - - - - - - - - - + + + + + + + + + + + + + + + + + - - - - + \ No newline at end of file diff --git a/data/resources/layouts/Default.xml b/data/resources/layouts/Default.xml index eb5a36d488..4620cbe1f1 100644 --- a/data/resources/layouts/Default.xml +++ b/data/resources/layouts/Default.xml @@ -1,21 +1,22 @@ - - - - + + + + - + - - - - + + + + - - - + + + + \ No newline at end of file diff --git a/src/AddIns/DisplayBindings/AvalonEdit.AddIn/Src/AvalonEditViewContent.cs b/src/AddIns/DisplayBindings/AvalonEdit.AddIn/Src/AvalonEditViewContent.cs index e502b03da2..a72ccb689d 100644 --- a/src/AddIns/DisplayBindings/AvalonEdit.AddIn/Src/AvalonEditViewContent.cs +++ b/src/AddIns/DisplayBindings/AvalonEdit.AddIn/Src/AvalonEditViewContent.cs @@ -212,7 +212,7 @@ namespace ICSharpCode.AvalonEdit.AddIn public void JumpTo(int line, int column) { - codeEditor.TextEditor.TextArea.Caret.Position = new TextViewPosition(line, column); + codeEditor.JumpTo(line, column); } #endregion diff --git a/src/AddIns/DisplayBindings/AvalonEdit.AddIn/Src/CodeEditor.cs b/src/AddIns/DisplayBindings/AvalonEdit.AddIn/Src/CodeEditor.cs index 99935176c5..f41552e76e 100644 --- a/src/AddIns/DisplayBindings/AvalonEdit.AddIn/Src/CodeEditor.cs +++ b/src/AddIns/DisplayBindings/AvalonEdit.AddIn/Src/CodeEditor.cs @@ -94,7 +94,7 @@ namespace ICSharpCode.AvalonEdit.AddIn textView.LineTransformers.Add(textMarkerService); textView.Services.AddService(typeof(ITextMarkerService), textMarkerService); - quickClassBrowser.JumpAction = quickClassBrowser_Jump; + quickClassBrowser.JumpAction = JumpTo; SetDock(quickClassBrowser, Dock.Top); this.Children.Add(quickClassBrowser); this.Children.Add(textEditor); @@ -105,7 +105,7 @@ namespace ICSharpCode.AvalonEdit.AddIn InvalidateQuickClassBrowserCaretPosition(); } - bool quickClassBrowserCaretPositionIsValid; + bool quickClassBrowserCaretPositionInvalid; /// /// Only call 'SelectItemAtCaretPosition' once when the caret position @@ -113,20 +113,22 @@ namespace ICSharpCode.AvalonEdit.AddIn /// void InvalidateQuickClassBrowserCaretPosition() { - if (quickClassBrowserCaretPositionIsValid) { - quickClassBrowserCaretPositionIsValid = false; + if (!quickClassBrowserCaretPositionInvalid) { + quickClassBrowserCaretPositionInvalid = true; Dispatcher.BeginInvoke( DispatcherPriority.Normal, new Action( delegate { + quickClassBrowserCaretPositionInvalid = false; quickClassBrowser.SelectItemAtCaretPosition(textEditorAdapter.Caret.Position); })); } } - void quickClassBrowser_Jump(DomRegion region) + public void JumpTo(int line, int column) { - textEditor.TextArea.Caret.Position = new TextViewPosition(region.BeginLine, region.BeginColumn); + // the adapter sets the caret position and takes care of scrolling + textEditorAdapter.JumpTo(line, column); textEditor.Focus(); } diff --git a/src/AddIns/DisplayBindings/AvalonEdit.AddIn/Src/QuickClassBrowser.cs b/src/AddIns/DisplayBindings/AvalonEdit.AddIn/Src/QuickClassBrowser.cs index 1332f23064..f02f06d082 100644 --- a/src/AddIns/DisplayBindings/AvalonEdit.AddIn/Src/QuickClassBrowser.cs +++ b/src/AddIns/DisplayBindings/AvalonEdit.AddIn/Src/QuickClassBrowser.cs @@ -229,9 +229,9 @@ namespace ICSharpCode.AvalonEdit.AddIn { if (region.IsEmpty) return; - Action jumpAction = this.JumpAction; + Action jumpAction = this.JumpAction; if (item.IsInSamePart && jumpAction != null) { - jumpAction(region); + jumpAction(region.BeginLine, region.BeginColumn); } else { FileService.JumpToFilePosition(item.Entity.CompilationUnit.FileName, region.BeginLine, region.BeginColumn); } @@ -240,6 +240,6 @@ namespace ICSharpCode.AvalonEdit.AddIn /// /// Action used for jumping to a position inside the current file. /// - public Action JumpAction { get; set; } + public Action JumpAction { get; set; } } } \ No newline at end of file diff --git a/src/Libraries/AvalonDock/AvalonDock.dll b/src/Libraries/AvalonDock/AvalonDock.dll index 2fd5bda856..a136e9d37b 100644 Binary files a/src/Libraries/AvalonDock/AvalonDock.dll and b/src/Libraries/AvalonDock/AvalonDock.dll differ diff --git a/src/Main/ICSharpCode.SharpDevelop.Dom/Project/Src/Interfaces/IEntity.cs b/src/Main/ICSharpCode.SharpDevelop.Dom/Project/Src/Interfaces/IEntity.cs index 5c80686be5..c87e39f5fc 100644 --- a/src/Main/ICSharpCode.SharpDevelop.Dom/Project/Src/Interfaces/IEntity.cs +++ b/src/Main/ICSharpCode.SharpDevelop.Dom/Project/Src/Interfaces/IEntity.cs @@ -65,10 +65,17 @@ namespace ICSharpCode.SharpDevelop.Dom get; } + /// + /// Gets whether this entity is static. + /// Returns true if either the 'static' or the 'const' modifier is set. + /// bool IsStatic { get; } + /// + /// Gets whether this entity is a constant (C#-like const). + /// bool IsConst { get; } @@ -93,7 +100,6 @@ namespace ICSharpCode.SharpDevelop.Dom get; } - bool IsInternal { get; }