Browse Source

Update to AvalonDock 1.2.2666.

Fixed old codeEntityReferences in AvalonEdit documentation.

git-svn-id: svn://svn.sharpdevelop.net/sharpdevelop/trunk@5051 1ccf3a8d-04fe-1044-b7c0-cef0b8235c61
shortcuts
Daniel Grunwald 17 years ago
parent
commit
91069acffd
  1. 40
      src/Libraries/AvalonDock/Converters.cs
  2. 2
      src/Libraries/AvalonDock/DockableContent.cs
  3. 10
      src/Libraries/AvalonDock/DockableFloatingWindow.cs
  4. 4
      src/Libraries/AvalonDock/DockablePane.cs
  5. 20
      src/Libraries/AvalonDock/DockingManager.cs
  6. 3
      src/Libraries/AvalonDock/DocumentContent.cs
  7. 7
      src/Libraries/AvalonDock/DocumentFloatingWindow.cs
  8. 84
      src/Libraries/AvalonDock/FloatingWindow.cs
  9. 8
      src/Libraries/AvalonDock/FlyoutPaneWindow.cs
  10. 17
      src/Libraries/AvalonDock/HelperFunc.cs
  11. 10
      src/Libraries/AvalonDock/ManagedContent.cs
  12. 11
      src/Libraries/AvalonDock/Pane.cs
  13. 2
      src/Libraries/AvalonDock/Properties/AssemblyInfo.cs
  14. 4
      src/Libraries/AvalonDock/Resources/DockablePaneStyles.xaml
  15. 17
      src/Libraries/AvalonEdit/ICSharpCode.AvalonEdit/ICSharpCode.AvalonEdit.shfb
  16. 4
      src/Libraries/AvalonEdit/ICSharpCode.AvalonEdit/Rendering/BackgroundGeometryBuilder.cs
  17. 8
      src/Libraries/AvalonEdit/ICSharpCode.AvalonEdit/documentation/Coordinate Systems.xml
  18. 2
      src/Libraries/AvalonEdit/ICSharpCode.AvalonEdit/documentation/Folding.xml
  19. 10
      src/Libraries/AvalonEdit/ICSharpCode.AvalonEdit/documentation/TextRendering.xml

40
src/Libraries/AvalonDock/Converters.cs

@ -30,10 +30,11 @@ using System.Windows.Data; @@ -30,10 +30,11 @@ using System.Windows.Data;
using System.IO;
using System.Reflection;
using System.Windows.Media;
using System.Windows;
namespace AvalonDock
{
internal class FindResourcePathConverter : IValueConverter
public class FindResourcePathConverter : IValueConverter
{
#region IValueConverter Members
@ -57,5 +58,42 @@ namespace AvalonDock @@ -57,5 +58,42 @@ namespace AvalonDock
#endregion
}
/// <summary>
/// Converter from boolean values to visibility (inverse mode)
/// </summary>
[ValueConversion(typeof(object), typeof(Visibility))]
public class BoolToVisibilityConverter : IValueConverter
{
public object Convert(object value, Type targetType, object parameter,
System.Globalization.CultureInfo culture)
{
return System.Convert.ToBoolean(value) ? Visibility.Visible :
(parameter != null && ((string)parameter) == "Hidden" ? Visibility.Hidden : Visibility.Collapsed);
}
public object ConvertBack(object value, Type targetType, object parameter,
System.Globalization.CultureInfo culture)
{
return null;
}
}
public static class Converters
{
static BoolToVisibilityConverter _BoolToVisibilityConverter = null;
public static BoolToVisibilityConverter BoolToVisibilityConverter
{
get
{
if (_BoolToVisibilityConverter == null)
_BoolToVisibilityConverter = new BoolToVisibilityConverter();
return _BoolToVisibilityConverter;
}
}
}
}

2
src/Libraries/AvalonDock/DockableContent.cs

@ -415,7 +415,7 @@ namespace AvalonDock @@ -415,7 +415,7 @@ namespace AvalonDock
}
else if (!e.Handled && e.Command == DockableContent.HideCommand)
{
//Manager.Hide(this);
Manager.Hide(this);
e.Handled = true;
}

10
src/Libraries/AvalonDock/DockableFloatingWindow.cs

@ -172,14 +172,18 @@ namespace AvalonDock @@ -172,14 +172,18 @@ namespace AvalonDock
}
}
protected override void OnClosed(EventArgs e)
{
base.OnClosed(e);
while (HostedPane.Items.Count > 0)
DockableContent[] cntsToClose = new DockableContent[HostedPane.Items.Count];
HostedPane.Items.CopyTo(cntsToClose, 0);
foreach (DockableContent cntToClose in cntsToClose)
{
//Manager.Hide(HostedPane.Items[0] as DockableContent);
HostedPane.CloseOrHide(HostedPane.Items[0] as DockableContent);
HostedPane.CloseOrHide(HostedPane.Items[0] as DockableContent, ForcedClosing);
}
Manager.UnregisterFloatingWindow(this);

4
src/Libraries/AvalonDock/DockablePane.cs

@ -215,6 +215,8 @@ namespace AvalonDock @@ -215,6 +215,8 @@ namespace AvalonDock
if (cxOptions != null)
{
cxOptions.DataContext = this.SelectedItem as DockableContent;
foreach (MenuItem menuItem in cxOptions.Items)
menuItem.CommandTarget = this.SelectedItem as DockableContent;
@ -487,7 +489,7 @@ namespace AvalonDock @@ -487,7 +489,7 @@ namespace AvalonDock
/// </summary>
internal void CloseOrHide()
{
CloseOrHide(SelectedItem as DockableContent);
CloseOrHide(SelectedItem as DockableContent, false);
}

20
src/Libraries/AvalonDock/DockingManager.cs

@ -1611,6 +1611,9 @@ namespace AvalonDock @@ -1611,6 +1611,9 @@ namespace AvalonDock
if (content.State == DockableContentState.Hidden)
return;
if (!content.IsCloseable)
return;
content.SaveCurrentStateAndPosition();
if (content.State == DockableContentState.AutoHide)
@ -2713,7 +2716,7 @@ namespace AvalonDock @@ -2713,7 +2716,7 @@ namespace AvalonDock
parentContainer.Items.Count == 1)
{
FloatingWindow floatingWindow = Window.GetWindow(content) as FloatingWindow;
floatingWindow.Close();
floatingWindow.Close(true);
}
}
//this content can be hidden also if was contained in closed floating window
@ -2964,8 +2967,8 @@ namespace AvalonDock @@ -2964,8 +2967,8 @@ namespace AvalonDock
if (doc.DocumentElement == null ||
doc.DocumentElement.Name != "DockingManager")
{
Debug.Assert(false, "Layout file had not a valid structure!");
return;
Debug.Assert(false, "Layout file hasn't a valid structure!");
throw new InvalidOperationException("Layout file had not a valid structure!");
}
if (doc.DocumentElement.ChildNodes.Count != 3 ||
@ -2974,11 +2977,17 @@ namespace AvalonDock @@ -2974,11 +2977,17 @@ namespace AvalonDock
doc.DocumentElement.ChildNodes[2].Name != "Windows")
{
Debug.Assert(false, "Layout file hasn't a valid structure!");
return;
throw new InvalidOperationException("Layout file hasn't a valid structure!");
}
//Hide temp windows
HideAutoHideWindow();
HideNavigatorWindow();
HideDocumentNavigatorWindow();
DockableContent[] actualContents = DockableContents;
//show all hidden contents
ShowAllHiddenContents();
@ -3022,6 +3031,9 @@ namespace AvalonDock @@ -3022,6 +3031,9 @@ namespace AvalonDock
//restore floating windows
foreach (XmlElement flWindowElement in doc.DocumentElement.ChildNodes[2].ChildNodes)
{
if (flWindowElement.ChildNodes.Count != 1)
continue;//handles invalid layouts structures
bool isDockableWindow = XmlConvert.ToBoolean(flWindowElement.GetAttribute("IsDockableWindow"));
Point location = new Point(XmlConvert.ToDouble(flWindowElement.GetAttribute("Left")), XmlConvert.ToDouble(flWindowElement.GetAttribute("Top")));
Size size = new Size(XmlConvert.ToDouble(flWindowElement.GetAttribute("Width")), XmlConvert.ToDouble(flWindowElement.GetAttribute("Height")));

3
src/Libraries/AvalonDock/DocumentContent.cs

@ -253,6 +253,9 @@ namespace AvalonDock @@ -253,6 +253,9 @@ namespace AvalonDock
/// </remarks>
public bool Close()
{
if (!IsCloseable)
return false;
//if documents are attached to an external source via DockingManager.DocumentsSource
//let application host handle the document closing by itself
if (Manager.DocumentsSource != null)

7
src/Libraries/AvalonDock/DocumentFloatingWindow.cs

@ -210,12 +210,7 @@ namespace AvalonDock @@ -210,12 +210,7 @@ namespace AvalonDock
else if (e.Command == CloseCommand)
{
DocumentContent docContent = this.HostedPane.Items[0] as DocumentContent;
if (docContent.Close())
{
HostedPane.RemoveContent(0);
Close();
}
e.Handled = true;
e.Handled = docContent.Close();
}
base.OnExecuteCommand(sender, e);

84
src/Libraries/AvalonDock/FloatingWindow.cs

@ -41,6 +41,7 @@ using System.Diagnostics; @@ -41,6 +41,7 @@ using System.Diagnostics;
using System.Windows.Threading;
using System.Windows.Media.Animation;
using System.Windows.Interop;
using System.Runtime.InteropServices;
namespace AvalonDock
{
@ -142,10 +143,30 @@ namespace AvalonDock @@ -142,10 +143,30 @@ namespace AvalonDock
#endregion
#region IsClosing Flag Management
public void Close(bool force)
{
ForcedClosing = force;
base.Close();
}
protected bool ForcedClosing { get; private set; }
internal bool IsClosing { get; private set; }
protected override void OnClosing(CancelEventArgs e)
{
if (HostedPane.Items.Count > 0 && !ForcedClosing)
{
ManagedContent cntToClose = HostedPane.Items[0] as ManagedContent;
if (!cntToClose.IsCloseable)
{
e.Cancel = true;
base.OnClosing(e);
return;
}
}
IsClosing = true;
base.OnClosing(e);
}
@ -159,6 +180,60 @@ namespace AvalonDock @@ -159,6 +180,60 @@ namespace AvalonDock
public abstract Pane ClonePane();
#region Enable/Disable window Close Button
[DllImport("User32.dll", CharSet = CharSet.Auto)]
private static extern IntPtr GetSystemMenu(
IntPtr hWnd,
Int32 bRevert
);
[DllImport("User32.dll", CharSet = CharSet.Auto)]
private static extern int GetMenuItemCount(
IntPtr hMenu
);
[DllImport("User32.dll", CharSet = CharSet.Auto)]
private static extern int DrawMenuBar(
IntPtr hWnd
);
[DllImport("User32.dll", CharSet = CharSet.Auto)]
private static extern bool EnableMenuItem(
IntPtr hMenu,
Int32 uIDEnableItem,
Int32 uEnable
);
private const Int32 MF_BYPOSITION = 0x400;
private const Int32 MF_ENABLED = 0x0000;
private const Int32 MF_GRAYED = 0x0001;
private const Int32 MF_DISABLED = 0x0002;
void EnableXButton()
{
WindowInteropHelper helper = new WindowInteropHelper(this);
IntPtr hMenu = GetSystemMenu(helper.Handle, 0);
int menuItemCount = GetMenuItemCount(hMenu);
EnableMenuItem(hMenu, menuItemCount - 1, MF_BYPOSITION | MF_ENABLED);
DrawMenuBar(helper.Handle);
}
void DisableXButton()
{
WindowInteropHelper helper = new WindowInteropHelper(this);
IntPtr hMenu = GetSystemMenu(helper.Handle, 0);
int menuItemCount = GetMenuItemCount(hMenu);
EnableMenuItem(hMenu, menuItemCount - 1, MF_BYPOSITION | MF_DISABLED | MF_GRAYED);
DrawMenuBar(helper.Handle);
}
#endregion
#region Non-Client area management
protected const int WM_MOVE = 0x0003;
@ -185,6 +260,15 @@ namespace AvalonDock @@ -185,6 +260,15 @@ namespace AvalonDock
_hwndSource = HwndSource.FromHwnd(helper.Handle);
_wndProcHandler = new HwndSourceHook(FilterMessage);
_hwndSource.AddHook(_wndProcHandler);
if (HostedPane.Items.Count > 0)
{
ManagedContent cntHosted = HostedPane.Items[0] as ManagedContent;
if (!cntHosted.IsCloseable)
{
DisableXButton();
}
}
}
protected void OnUnloaded(object sender, EventArgs e)
{

8
src/Libraries/AvalonDock/FlyoutPaneWindow.cs

@ -862,7 +862,13 @@ namespace AvalonDock @@ -862,7 +862,13 @@ namespace AvalonDock
void ApplyRegion(Rect wndRect)
{
//Debug.WriteLine(wndRect);
if (!this.CanTransform())
return;
wndRect = new Rect(
this.TransformFromDeviceDPI(wndRect.TopLeft),
this.TransformFromDeviceDPI(wndRect.Size));
_lastApplyRect = wndRect;
if (PresentationSource.FromVisual(this) == null)

17
src/Libraries/AvalonDock/HelperFunc.cs

@ -174,5 +174,22 @@ namespace AvalonDock @@ -174,5 +174,22 @@ namespace AvalonDock
Matrix m = PresentationSource.FromVisual(visual).CompositionTarget.TransformToDevice;
return new Point(pt.X / m.M11, pt.Y /m.M22);
}
public static Size TransformFromDeviceDPI(this Visual visual, Size size)
{
Matrix m = PresentationSource.FromVisual(visual).CompositionTarget.TransformToDevice;
return new Size(size.Width * m.M11, size.Height * m.M22);
}
public static Point TransformFromDeviceDPI(this Visual visual, Point pt)
{
Matrix m = PresentationSource.FromVisual(visual).CompositionTarget.TransformToDevice;
return new Point(pt.X * m.M11, pt.Y * m.M22);
}
public static bool CanTransform(this Visual visual)
{
return PresentationSource.FromVisual(visual) != null;
}
}
}

10
src/Libraries/AvalonDock/ManagedContent.cs

@ -519,6 +519,16 @@ namespace AvalonDock @@ -519,6 +519,16 @@ namespace AvalonDock
#endregion
public bool IsCloseable
{
get { return (bool)GetValue(IsCloseableProperty); }
set { SetValue(IsCloseableProperty, value); }
}
// Using a DependencyProperty as the backing store for IsCloseable. This enables animation, styling, binding, etc...
public static readonly DependencyProperty IsCloseableProperty =
DependencyProperty.Register("IsCloseable", typeof(bool), typeof(ManagedContent), new UIPropertyMetadata(true));
}
}

11
src/Libraries/AvalonDock/Pane.cs

@ -264,9 +264,20 @@ namespace AvalonDock @@ -264,9 +264,20 @@ namespace AvalonDock
/// Closes or hides provided content depending on HideOnClose property
/// </summary>
internal virtual void CloseOrHide(DockableContent cntToCloseOrHide)
{
CloseOrHide(cntToCloseOrHide, false);
}
/// <summary>
/// Closes or hides provided content depending on HideOnClose property
/// </summary>
internal virtual void CloseOrHide(DockableContent cntToCloseOrHide, bool force)
{
Debug.Assert(cntToCloseOrHide != null);
if (!force && !cntToCloseOrHide.IsCloseable)
return;
DockingManager manager = GetManager();
if (cntToCloseOrHide.HideOnClose && manager != null)
manager.Hide(cntToCloseOrHide);

2
src/Libraries/AvalonDock/Properties/AssemblyInfo.cs

@ -59,4 +59,4 @@ using System.Runtime.InteropServices; @@ -59,4 +59,4 @@ using System.Runtime.InteropServices;
//
// You can specify all the values or you can default the Revision and Build Numbers
// by using the '*' as shown below:
[assembly: AssemblyVersion("1.2.2648")]
[assembly: AssemblyVersion("1.2.2663")]

4
src/Libraries/AvalonDock/Resources/DockablePaneStyles.xaml

@ -22,7 +22,7 @@ @@ -22,7 +22,7 @@
<MenuItem Header="Auto Hide"
Command="ad:DockablePane.ToggleAutoHideCommand" />
<MenuItem Header="Hide"
Command="ad:DockableContent.HideCommand" />
Command="ad:DockableContent.HideCommand" Visibility="{Binding Path=IsCloseable, Converter={x:Static ad:Converters.BoolToVisibilityConverter}}" />
</ContextMenu>
@ -138,7 +138,7 @@ @@ -138,7 +138,7 @@
BorderBrush="DarkGray"
Height="18">
<DockPanel LastChildFill="True">
<Button DockPanel.Dock="Right" Width="15" Height="15" Style="{StaticResource PaneHeaderCommandStyle}" Command="ad:DockablePane.CloseCommand">
<Button DockPanel.Dock="Right" Width="15" Height="15" Style="{StaticResource PaneHeaderCommandStyle}" Command="ad:DockablePane.CloseCommand" Visibility="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=SelectedItem.IsCloseable, Converter={x:Static ad:Converters.BoolToVisibilityConverter}}">
<ad:AlignedImage>
<Image Source="Images\PinClose.png" Width="13" Height="13" Stretch="None"/>
</ad:AlignedImage>

17
src/Libraries/AvalonEdit/ICSharpCode.AvalonEdit/ICSharpCode.AvalonEdit.shfb

@ -1,18 +1,21 @@ @@ -1,18 +1,21 @@
<project schemaVersion="1.6.0.7">
<project schemaVersion="1.6.0.7">
<assemblies>
<assembly assemblyPath=".\ICSharpCode.AvalonEdit.dll" xmlCommentsPath=".\ICSharpCode.AvalonEdit.xml" commentsOnly="False" />
</assemblies>
<namespaceSummaries>
<namespaceSummaryItem name="" isDocumented="False" />
<namespaceSummaryItem name="ICSharpCode.AvalonEdit" isDocumented="True">Main namespace summary</namespaceSummaryItem>
<namespaceSummaryItem name="ICSharpCode.AvalonEdit" isDocumented="True">This is the main AvalonEdit namespace.</namespaceSummaryItem>
<namespaceSummaryItem name="ICSharpCode.AvalonEdit.CodeCompletion" isDocumented="True">This namespace contains classes to show the code completion window.</namespaceSummaryItem>
<namespaceSummaryItem name="ICSharpCode.AvalonEdit.Document" isDocumented="True">This namespace contains the document model.
The most important class here is TextDocument, which represents document that can be displayed and edited in the text editor.</namespaceSummaryItem>
<namespaceSummaryItem name="ICSharpCode.AvalonEdit.Gui" isDocumented="True">This namespace contains the classes related to the text editor gui.
You can extend the text view using these classes.</namespaceSummaryItem>
<namespaceSummaryItem name="ICSharpCode.AvalonEdit.Editing" isDocumented="True">This namespace is the home of the TextArea class. It manages user input and handles the caret and the selection.</namespaceSummaryItem>
<namespaceSummaryItem name="ICSharpCode.AvalonEdit.Folding" isDocumented="True">This namespace contains the folding implementation.</namespaceSummaryItem>
<namespaceSummaryItem name="ICSharpCode.AvalonEdit.Highlighting" isDocumented="True">This namespace contains the engine for highlighting text documents (DocumentHighlighter).
Additionally, the class HighlightingColorizer provides integration of the highlighting engine into the text editor GUI.</namespaceSummaryItem>
<namespaceSummaryItem name="ICSharpCode.AvalonEdit.Highlighting.Xshd" isDocumented="True">This namespace contains a document model for syntax highlighting definitions (.xshd files).</namespaceSummaryItem>
<namespaceSummaryItem name="ICSharpCode.AvalonEdit.Utils" isDocumented="True">This namespace contains miscellaneous utility classes</namespaceSummaryItem>
<namespaceSummaryItem name="ICSharpCode.AvalonEdit.Indentation" isDocumented="True">This namespace contains the logic for automatic indentation.</namespaceSummaryItem>
<namespaceSummaryItem name="ICSharpCode.AvalonEdit.Rendering" isDocumented="True">This namespace contains the text rendering infrastructure.</namespaceSummaryItem>
<namespaceSummaryItem name="ICSharpCode.AvalonEdit.Utils" isDocumented="True">This namespace contains various utility classes</namespaceSummaryItem>
<namespaceSummaryItem name="XamlGeneratedNamespace" isDocumented="False" />
</namespaceSummaries>
<conceptualContent snippetFile="">
@ -45,7 +48,7 @@ Additionally, the class HighlightingColorizer provides integration of the highli @@ -45,7 +48,7 @@ Additionally, the class HighlightingColorizer provides integration of the highli
<CppCommentsFixup>False</CppCommentsFixup>
<FrameworkVersion>3.5</FrameworkVersion>
<IndentHtml>False</IndentHtml>
<Preliminary>True</Preliminary>
<Preliminary>False</Preliminary>
<RootNamespaceContainer>False</RootNamespaceContainer>
<RootNamespaceTitle />
<HelpTitle>AvalonEdit</HelpTitle>
@ -69,6 +72,6 @@ Additionally, the class HighlightingColorizer provides integration of the highli @@ -69,6 +72,6 @@ Additionally, the class HighlightingColorizer provides integration of the highli
<CollectionTocStyle>Hierarchical</CollectionTocStyle>
<IncludeStopWordList>True</IncludeStopWordList>
<PlugInNamespaces>ms.vsipcc+, ms.vsexpresscc+</PlugInNamespaces>
<HelpFileVersion>0.1.0.0</HelpFileVersion>
<HelpFileVersion>4.0.0.5048</HelpFileVersion>
<ContentPlacement>AboveNamespaces</ContentPlacement>
</project>

4
src/Libraries/AvalonEdit/ICSharpCode.AvalonEdit/Rendering/BackgroundGeometryBuilder.cs

@ -58,7 +58,11 @@ namespace ICSharpCode.AvalonEdit.Rendering @@ -58,7 +58,11 @@ namespace ICSharpCode.AvalonEdit.Rendering
throw new ArgumentNullException("textView");
if (segment == null)
throw new ArgumentNullException("segment");
return GetRectsForSegmentImpl(textView, segment);
}
static IEnumerable<Rect> GetRectsForSegmentImpl(TextView textView, ISegment segment)
{
Vector scrollOffset = textView.ScrollOffset;
int segmentStart = segment.Offset;
int segmentEnd = segment.Offset + segment.Length;

8
src/Libraries/AvalonEdit/ICSharpCode.AvalonEdit/documentation/Coordinate Systems.xml

@ -67,7 +67,7 @@ @@ -67,7 +67,7 @@
<para>Relative text offsets are used to store document offsets in visual lines.</para>
<para>You can convert between relative text offsets and document offsets
by adding/subtracting
<codeEntityReference>T:ICSharpCode.AvalonEdit.Gui.VisualLine</codeEntityReference>.<codeEntityReference>P:ICSharpCode.AvalonEdit.Gui.VisualLine.FirstDocumentLine</codeEntityReference>.<codeEntityReference>P:ICSharpCode.AvalonEdit.Document.DocumentLine.Offset</codeEntityReference>.
<codeEntityReference>T:ICSharpCode.AvalonEdit.Rendering.VisualLine</codeEntityReference>.<codeEntityReference>P:ICSharpCode.AvalonEdit.Rendering.VisualLine.FirstDocumentLine</codeEntityReference>.<codeEntityReference>P:ICSharpCode.AvalonEdit.Document.DocumentLine.Offset</codeEntityReference>.
</para>
</content>
</section>
@ -83,9 +83,9 @@ @@ -83,9 +83,9 @@
newline markers take 1 visual column; folding markers take just 1 visual column
even though they are longer in the document text.</para>
<para>Use the
<codeEntityReference>M:ICSharpCode.AvalonEdit.Gui.VisualLine.GetVisualColumn(System.Int32)</codeEntityReference>
<codeEntityReference>M:ICSharpCode.AvalonEdit.Rendering.VisualLine.GetVisualColumn(System.Int32)</codeEntityReference>
and
<codeEntityReference>M:ICSharpCode.AvalonEdit.Gui.VisualLine.GetRelativeOffset(System.Int32)</codeEntityReference>
<codeEntityReference>M:ICSharpCode.AvalonEdit.Rendering.VisualLine.GetRelativeOffset(System.Int32)</codeEntityReference>
methods to convert between
visual columns and relative text offsets.</para>
@ -121,7 +121,7 @@ @@ -121,7 +121,7 @@
element from the top left document corner measured in device-independent pixels.</para>
<para>To convert a VisualPosition to or from a (mouse) position inside
the TextView, simply subtract or add
TextView.<codeEntityReference>P:ICSharpCode.AvalonEdit.Gui.TextView.ScrollOffset</codeEntityReference>
TextView.<codeEntityReference>P:ICSharpCode.AvalonEdit.Rendering.TextView.ScrollOffset</codeEntityReference>
to it.
</para>
</content>

2
src/Libraries/AvalonEdit/ICSharpCode.AvalonEdit/documentation/Folding.xml

@ -27,6 +27,6 @@ @@ -27,6 +27,6 @@
</section>
<relatedTopics>
<codeEntityReference>T:ICSharpCode.AvalonEdit.Gui.FoldingManager</codeEntityReference>
<codeEntityReference>T:ICSharpCode.AvalonEdit.Folding.FoldingManager</codeEntityReference>
</relatedTopics>
</developerConceptualDocument>

10
src/Libraries/AvalonEdit/ICSharpCode.AvalonEdit/documentation/TextRendering.xml

@ -48,7 +48,7 @@ @@ -48,7 +48,7 @@
<alert class="note">
<para>If external data used by your text editor extension changes, call
TextView.<codeEntityReference>M:ICSharpCode.AvalonEdit.Gui.TextView.Redraw</codeEntityReference>
TextView.<codeEntityReference>M:ICSharpCode.AvalonEdit.Rendering.TextView.Redraw</codeEntityReference>
to invalidate the VisualLine.
</para>
</alert>
@ -71,11 +71,11 @@ @@ -71,11 +71,11 @@
What happens in this case depends on the method you are calling -
the new visual line might get created automatically,
null could be returned, or you may get a
<codeEntityReference>T:ICSharpCode.AvalonEdit.Gui.VisualLinesInvalidException</codeEntityReference>.
<codeEntityReference>T:ICSharpCode.AvalonEdit.Rendering.VisualLinesInvalidException</codeEntityReference>.
</para>
<para>
You can call
<codeEntityReference>M:ICSharpCode.AvalonEdit.Gui.TextView.EnsureVisualLines</codeEntityReference>
<codeEntityReference>M:ICSharpCode.AvalonEdit.Rendering.TextView.EnsureVisualLines</codeEntityReference>
to make the text view create all VisualLines in the visible region.
</para>
</alert>
@ -162,7 +162,7 @@ @@ -162,7 +162,7 @@
<listItem>Caret layer: renders a blinking caret</listItem>
</list>
It's also possible to insert new layers into the TextView using the
<codeEntityReference>M:ICSharpCode.AvalonEdit.Gui.TextView.InsertLayer</codeEntityReference>
<codeEntityReference>M:ICSharpCode.AvalonEdit.Rendering.TextView.InsertLayer</codeEntityReference>
method.
This allows adding custom interactive components to the editor
while being in full control of the Z-Order.
@ -170,6 +170,6 @@ @@ -170,6 +170,6 @@
</content>
</section>
<relatedTopics>
<codeEntityReference>T:ICSharpCode.AvalonEdit.Gui.TextView</codeEntityReference>
<codeEntityReference>T:ICSharpCode.AvalonEdit.Rendering.TextView</codeEntityReference>
</relatedTopics>
</developerConceptualDocument>

Loading…
Cancel
Save