Merge pull request #168 from icsharpcode/feature/netcore3
feature netcore3 support
This commit is contained in:
Коммит
78ea8e166b
|
@ -1,6 +1,9 @@
|
|||
# ignore all obj and bin folders (even in subdirectories)
|
||||
obj/
|
||||
bin/
|
||||
.vs/
|
||||
*.user
|
||||
lib/
|
||||
/Documentation/Help
|
||||
/packages/AvalonEdit
|
||||
/packages/AvalonEdit.Sample
|
||||
|
|
|
@ -0,0 +1,130 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project ToolsVersion="14.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<PropertyGroup>
|
||||
<!-- The configuration and platform will be used to determine which assemblies to include from solution and
|
||||
project documentation sources -->
|
||||
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
|
||||
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
|
||||
<SchemaVersion>2.0</SchemaVersion>
|
||||
<ProjectGuid>850b6602-0a7f-413a-864a-e816b98d7407</ProjectGuid>
|
||||
<SHFBSchemaVersion>2017.9.26.0</SHFBSchemaVersion>
|
||||
<!-- AssemblyName, Name, and RootNamespace are not used by SHFB but Visual Studio adds them anyway -->
|
||||
<AssemblyName>Documentation</AssemblyName>
|
||||
<RootNamespace>Documentation</RootNamespace>
|
||||
<Name>Documentation</Name>
|
||||
<!-- SHFB properties -->
|
||||
<FrameworkVersion>.NET Framework 4.5</FrameworkVersion>
|
||||
<OutputPath>.\Help\</OutputPath>
|
||||
<HtmlHelpName>AvalonEdit Documentation</HtmlHelpName>
|
||||
<Language>en-US</Language>
|
||||
<TransformComponentArguments>
|
||||
<Argument Key="logoFile" Value="Help.png" xmlns="" />
|
||||
<Argument Key="logoHeight" Value="" xmlns="" />
|
||||
<Argument Key="logoWidth" Value="" xmlns="" />
|
||||
<Argument Key="logoAltText" Value="" xmlns="" />
|
||||
<Argument Key="logoPlacement" Value="left" xmlns="" />
|
||||
<Argument Key="logoAlignment" Value="left" xmlns="" />
|
||||
<Argument Key="maxVersionParts" Value="" xmlns="" />
|
||||
</TransformComponentArguments>
|
||||
<HelpFileFormat>Website</HelpFileFormat>
|
||||
<SyntaxFilters>C#</SyntaxFilters>
|
||||
<PresentationStyle>VS2013</PresentationStyle>
|
||||
<CleanIntermediates>True</CleanIntermediates>
|
||||
<KeepLogFile>True</KeepLogFile>
|
||||
<DisableCodeBlockComponent>False</DisableCodeBlockComponent>
|
||||
<IndentHtml>False</IndentHtml>
|
||||
<BuildAssemblerVerbosity>OnlyWarningsAndErrors</BuildAssemblerVerbosity>
|
||||
<SaveComponentCacheCapacity>100</SaveComponentCacheCapacity>
|
||||
<HelpTitle>AvalonEdit</HelpTitle>
|
||||
<HelpFileVersion>6.0.0.0</HelpFileVersion>
|
||||
<NamingMethod>Guid</NamingMethod>
|
||||
<ContentPlacement>AboveNamespaces</ContentPlacement>
|
||||
<RootNamespaceContainer>False</RootNamespaceContainer>
|
||||
<NamespaceGrouping>False</NamespaceGrouping>
|
||||
<MaximumGroupParts>2</MaximumGroupParts>
|
||||
<Preliminary>False</Preliminary>
|
||||
<CopyrightText>Copyright 2008-2019, AvalonEdit Contributors</CopyrightText>
|
||||
<SdkLinkTarget>Blank</SdkLinkTarget>
|
||||
<VisibleItems>InheritedMembers, InheritedFrameworkMembers, Protected, ProtectedInternalAsProtected, EditorBrowsableNever, NonBrowsable</VisibleItems>
|
||||
<MissingTags>Summary, AutoDocumentCtors, Namespace</MissingTags>
|
||||
</PropertyGroup>
|
||||
<!-- There are no properties for these groups. AnyCPU needs to appear in order for Visual Studio to perform
|
||||
the build. The others are optional common platform types that may appear. -->
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
|
||||
</PropertyGroup>
|
||||
<ItemGroup>
|
||||
<Folder Include="icons" />
|
||||
<Folder Include="media" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="Coordinate Systems.aml" />
|
||||
<None Include="Architecture.aml" />
|
||||
<None Include="Code Completion.aml" />
|
||||
<None Include="Sample Application.aml" />
|
||||
<None Include="Folding.aml" />
|
||||
<None Include="Syntax Highlighting.aml" />
|
||||
<None Include="Text Rendering.aml" />
|
||||
<None Include="Welcome.aml" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ContentLayout Include="ICSharpCode.AvalonEdit.content" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Image Include="Media\WelcomeScreenshot.png">
|
||||
<ImageId>WelcomeScreenshot</ImageId>
|
||||
</Image>
|
||||
<Image Include="Media\VisualTree.png">
|
||||
<ImageId>VisualTree</ImageId>
|
||||
<AlternateText>Visual Tree</AlternateText>
|
||||
</Image>
|
||||
<Image Include="Media\RenderingPipeline.png">
|
||||
<ImageId>RenderingPipeline</ImageId>
|
||||
</Image>
|
||||
<Image Include="Media\NamespaceDependencies.png">
|
||||
<ImageId>NamespaceDependencies</ImageId>
|
||||
<AlternateText>Namespace Dependency Graph</AlternateText>
|
||||
</Image>
|
||||
<Content Include="License.html">
|
||||
<ExcludeFromToc>True</ExcludeFromToc>
|
||||
</Content>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Content Include="icons\Help.png" />
|
||||
</ItemGroup>
|
||||
<PropertyGroup>
|
||||
<DocumentationSources>
|
||||
<DocumentationSource sourceFile="..\ICSharpCode.AvalonEdit\ICSharpCode.AvalonEdit.csproj" />
|
||||
</DocumentationSources>
|
||||
<NamespaceSummaries>
|
||||
<NamespaceSummaryItem name="(global)" isDocumented="False" />
|
||||
<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.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 (code collapsing) 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.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" />
|
||||
<NamespaceSummaryItem name="ICSharpCode.AvalonEdit.Snippets" isDocumented="True">Snippets perform automatic text insertion. Snippets can be interactive after they were expanded, for example to allow the user to easily replace fields in the expanded snippet.</NamespaceSummaryItem>
|
||||
<NamespaceSummaryItem name="ICSharpCode.AvalonEdit.Search" isDocumented="True">This namespace contains the SearchPanel UI that allows the user to search the current document.</NamespaceSummaryItem>
|
||||
</NamespaceSummaries>
|
||||
</PropertyGroup>
|
||||
<!-- Import the SHFB build targets -->
|
||||
<Import Project="$(SHFBROOT)\SandcastleHelpFileBuilder.targets" />
|
||||
<!-- The pre-build and post-build event properties must appear *after* the targets file import in order to be
|
||||
evaluated correctly. -->
|
||||
<PropertyGroup>
|
||||
<PreBuildEvent>
|
||||
</PreBuildEvent>
|
||||
<PostBuildEvent>
|
||||
</PostBuildEvent>
|
||||
<RunPostBuildEvent>OnBuildSuccess</RunPostBuildEvent>
|
||||
</PropertyGroup>
|
||||
</Project>
|
|
@ -1,182 +0,0 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" ToolsVersion="4.0">
|
||||
<PropertyGroup>
|
||||
<!-- The configuration and platform will be used to determine which
|
||||
assemblies to include from solution and project documentation
|
||||
sources -->
|
||||
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
|
||||
<Platform Condition=" '$(Platform)' == '' ">AnyCPU</Platform>
|
||||
<SchemaVersion>2.0</SchemaVersion>
|
||||
<ProjectGuid>{850b6602-0a7f-413a-864a-e816b98d7407}</ProjectGuid>
|
||||
<SHFBSchemaVersion>1.9.9.0</SHFBSchemaVersion>
|
||||
<!-- AssemblyName, Name, and RootNamespace are not used by SHFB but Visual
|
||||
Studio adds them anyway -->
|
||||
<AssemblyName>Documentation</AssemblyName>
|
||||
<RootNamespace>Documentation</RootNamespace>
|
||||
<Name>Documentation</Name>
|
||||
<!-- SHFB properties -->
|
||||
<OutputPath>.\Help\</OutputPath>
|
||||
<HtmlHelpName>AvalonEdit Documentation</HtmlHelpName>
|
||||
<ProjectSummary>
|
||||
</ProjectSummary>
|
||||
<MissingTags>Summary, AutoDocumentCtors, Namespace</MissingTags>
|
||||
<VisibleItems>InheritedMembers, InheritedFrameworkMembers, Protected, ProtectedInternalAsProtected</VisibleItems>
|
||||
<HtmlHelp1xCompilerPath>
|
||||
</HtmlHelp1xCompilerPath>
|
||||
<HtmlHelp2xCompilerPath>
|
||||
</HtmlHelp2xCompilerPath>
|
||||
<SandcastlePath>
|
||||
</SandcastlePath>
|
||||
<WorkingPath>
|
||||
</WorkingPath>
|
||||
<BuildLogFile>
|
||||
</BuildLogFile>
|
||||
<FrameworkVersion>.NET Framework 4.0</FrameworkVersion>
|
||||
<HelpTitle>AvalonEdit</HelpTitle>
|
||||
<CopyrightText>Copyright 2008-2014, Daniel Grunwald</CopyrightText>
|
||||
<PresentationStyle>Prototype</PresentationStyle>
|
||||
<HelpFileVersion>4.4.0.0</HelpFileVersion>
|
||||
<ComponentConfigurations>
|
||||
<ComponentConfig id="Reflection Index Data (ESENT Cache)" enabled="True">
|
||||
<component id="Reflection Index Data (ESENT Cache)">
|
||||
<index name="reflection" value="/reflection/apis/api" key="@id" cache="15" localCacheSize="2500" frameworkCachePath="{@LocalDataFolder}Cache\ReflectionIndexCache" projectCachePath="">
|
||||
<data base="{@SHFBFolder}Data\Reflection" recurse="true" files="*.xml" duplicateWarning="false" groupId="ReflectionIndexCache">
|
||||
{@ReferenceLinkNamespaceFiles}
|
||||
</data>
|
||||
<data files="reflection.xml" groupId="Project_Ref_{@UniqueID}" />
|
||||
</index>
|
||||
<copy name="reflection" source="*" target="/document/reference" />
|
||||
</component>
|
||||
</ComponentConfig>
|
||||
<ComponentConfig id="Comments Index Data (ESENT Cache)" enabled="True"><component id="Comments Index Data (ESENT Cache)">
|
||||
<index name="comments" value="/doc/members/member" key="@name" cache="30" localCacheSize="2500" frameworkCachePath="{@LocalDataFolder}Cache\CommentsIndexCache" projectCachePath="">
|
||||
{@FrameworkCommentList}
|
||||
{@CommentFileList}
|
||||
</index>
|
||||
<copy name="comments" source="*" target="/document/comments" />
|
||||
</component></ComponentConfig>
|
||||
<ComponentConfig id="Code Block Component" enabled="True"><component id="Code Block Component">
|
||||
<basePath value="{@HtmlEncProjectFolder}" />
|
||||
<outputPaths>{@HelpFormatOutputPaths}</outputPaths>
|
||||
<allowMissingSource value="false" />
|
||||
<removeRegionMarkers value="false" />
|
||||
<colorizer syntaxFile="{@SHFBFolder}Colorizer\highlight.xml" styleFile="{@SHFBFolder}Colorizer\highlight.xsl" stylesheet="{@SHFBFolder}Colorizer\highlight.css" scriptFile="{@SHFBFolder}Colorizer\highlight.js" disabled="{@DisableCodeBlockComponent}" language="cs" tabSize="0" numberLines="false" outlining="false" keepSeeTags="false" defaultTitle="true" />
|
||||
</component></ComponentConfig>
|
||||
<ComponentConfig id="IntelliSense Component" enabled="True"><component id="IntelliSense Component"><!-- Output options (optional)
|
||||
Attributes:
|
||||
Include namespaces (false by default)
|
||||
Namespaces comments filename ("Namespaces" if not specified or empty)
|
||||
Output folder (current folder if not specified or empty) --><output includeNamespaces="false" namespacesFile="Namespaces" folder="{@OutputFolder}\..\IntelliSense" /></component></ComponentConfig>
|
||||
<ComponentConfig id="Resolve Reference Links (ESENT Cache)" enabled="True"><component id="Resolve Reference Links (ESENT Cache)">
|
||||
<locale value="{@Locale}" />
|
||||
<linkTarget value="{@SdkLinkTarget}" />
|
||||
<helpOutput format="HtmlHelp1">
|
||||
<msdnContentIdCache path="{@LocalDataFolder}Cache\MsdnContentId.cache" cachePath="{@LocalDataFolder}Cache\ESentMsdnContentIdCache" localCacheSize="2500" />
|
||||
<targets base="{@SHFBFolder}Data\Reflection" recurse="true" files="*.xml" type="{@HtmlSdkLinkType}" id="FrameworkTargets" cachePath="{@LocalDataFolder}Cache\ESentFrameworkTargetCache" localCacheSize="2500">
|
||||
{@ReferenceLinkNamespaceFiles}
|
||||
</targets>
|
||||
<targets files="reflection.xml" type="Local" id="ProjectTargets" cachePath="" localCacheSize="2500" noReload="true" />
|
||||
</helpOutput>
|
||||
<helpOutput format="MSHelp2">
|
||||
<msdnContentIdCache path="{@LocalDataFolder}Cache\MsdnContentId.cache" cachePath="{@LocalDataFolder}Cache\ESentMsdnContentIdCache" localCacheSize="2500" />
|
||||
<targets base="{@SHFBFolder}Data\Reflection" recurse="true" files="*.xml" type="{@MSHelp2SdkLinkType}" id="FrameworkTargets" cachePath="{@LocalDataFolder}Cache\ESentFrameworkTargetCache" localCacheSize="2500">
|
||||
{@ReferenceLinkNamespaceFiles}
|
||||
</targets>
|
||||
<targets files="reflection.xml" type="Index" id="ProjectTargets" cachePath="" localCacheSize="2500" noReload="true" />
|
||||
</helpOutput>
|
||||
<helpOutput format="MSHelpViewer">
|
||||
<msdnContentIdCache path="{@LocalDataFolder}Cache\MsdnContentId.cache" cachePath="{@LocalDataFolder}Cache\ESentMsdnContentIdCache" localCacheSize="2500" />
|
||||
<targets base="{@SHFBFolder}Data\Reflection" recurse="true" files="*.xml" type="{@MSHelpViewerSdkLinkType}" id="FrameworkTargets" cachePath="{@LocalDataFolder}Cache\ESentFrameworkTargetCache" localCacheSize="2500">
|
||||
{@ReferenceLinkNamespaceFiles}
|
||||
</targets>
|
||||
<targets files="reflection.xml" type="Id" id="ProjectTargets" cachePath="" localCacheSize="2500" noReload="true" />
|
||||
</helpOutput>
|
||||
<helpOutput format="Website">
|
||||
<msdnContentIdCache path="{@LocalDataFolder}Cache\MsdnContentId.cache" cachePath="{@LocalDataFolder}Cache\ESentMsdnContentIdCache" localCacheSize="2500" />
|
||||
<targets base="{@SHFBFolder}Data\Reflection" recurse="true" files="*.xml" type="{@WebsiteSdkLinkType}" id="FrameworkTargets" cachePath="{@LocalDataFolder}Cache\ESentFrameworkTargetCache" localCacheSize="2500">
|
||||
{@ReferenceLinkNamespaceFiles}
|
||||
</targets>
|
||||
<targets files="reflection.xml" type="Local" id="ProjectTargets" cachePath="" localCacheSize="2500" noReload="true" />
|
||||
</helpOutput>
|
||||
</component></ComponentConfig>
|
||||
<ComponentConfig id="API Token Resolution" enabled="True"><component id="API Token Resolution">{@TokenFiles}
|
||||
<replace elements="/*//token" item="string(.)" /></component></ComponentConfig></ComponentConfigurations>
|
||||
<DocumentationSources>
|
||||
<DocumentationSource sourceFile="..\ICSharpCode.AvalonEdit\ICSharpCode.AvalonEdit.csproj" />
|
||||
</DocumentationSources>
|
||||
<NamespaceSummaries>
|
||||
<NamespaceSummaryItem name="(global)" isDocumented="False" />
|
||||
<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.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 (code collapsing) 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.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" />
|
||||
<NamespaceSummaryItem name="ICSharpCode.AvalonEdit.Snippets" isDocumented="True">Snippets perform automatic text insertion. Snippets can be interactive after they were expanded, for example to allow the user to easily replace fields in the expanded snippet.</NamespaceSummaryItem>
|
||||
<NamespaceSummaryItem name="ICSharpCode.AvalonEdit.Search" isDocumented="True">This namespace contains the SearchPanel UI that allows the user to search the current document.</NamespaceSummaryItem></NamespaceSummaries>
|
||||
<CleanIntermediates>True</CleanIntermediates>
|
||||
<SyntaxFilters>Standard</SyntaxFilters>
|
||||
<SdkLinkTarget>Blank</SdkLinkTarget>
|
||||
<RootNamespaceContainer>False</RootNamespaceContainer>
|
||||
<Preliminary>False</Preliminary>
|
||||
<NamingMethod>Guid</NamingMethod>
|
||||
<Language>en-US</Language>
|
||||
<ContentPlacement>AboveNamespaces</ContentPlacement>
|
||||
<BuildAssemblerVerbosity>OnlyWarningsAndErrors</BuildAssemblerVerbosity>
|
||||
<HelpFileFormat>HtmlHelp1, Website</HelpFileFormat>
|
||||
<IndentHtml>False</IndentHtml>
|
||||
<KeepLogFile>True</KeepLogFile>
|
||||
<DisableCodeBlockComponent>False</DisableCodeBlockComponent>
|
||||
<CppCommentsFixup>False</CppCommentsFixup>
|
||||
</PropertyGroup>
|
||||
<!-- There are no properties for these two groups but they need to appear in
|
||||
order for Visual Studio to perform the build. -->
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Debug|AnyCPU' ">
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)|$(Platform)' == 'Release|AnyCPU' ">
|
||||
</PropertyGroup>
|
||||
<ItemGroup>
|
||||
<None Include="Coordinate Systems.aml" />
|
||||
<None Include="Architecture.aml" />
|
||||
<None Include="Code Completion.aml" />
|
||||
<None Include="Sample Application.aml" />
|
||||
<None Include="Folding.aml" />
|
||||
<None Include="Syntax Highlighting.aml" />
|
||||
<None Include="Text Rendering.aml" />
|
||||
<None Include="Welcome.aml" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ContentLayout Include="ICSharpCode.AvalonEdit.content" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Image Include="Media\WelcomeScreenshot.png">
|
||||
<ImageId>WelcomeScreenshot</ImageId>
|
||||
</Image>
|
||||
<Image Include="Media\VisualTree.png">
|
||||
<ImageId>VisualTree</ImageId>
|
||||
<AlternateText>Visual Tree</AlternateText>
|
||||
</Image>
|
||||
<Image Include="Media\RenderingPipeline.png">
|
||||
<ImageId>RenderingPipeline</ImageId>
|
||||
</Image>
|
||||
<Image Include="Media\NamespaceDependencies.png">
|
||||
<ImageId>NamespaceDependencies</ImageId>
|
||||
<AlternateText>Namespace Dependency Graph</AlternateText>
|
||||
</Image>
|
||||
<Content Include="License.html">
|
||||
<ExcludeFromToc>True</ExcludeFromToc>
|
||||
</Content>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Folder Include="Media\" />
|
||||
</ItemGroup>
|
||||
<!-- Import the SHFB build targets -->
|
||||
<Import Project="$(SHFBROOT)\SandcastleHelpFileBuilder.targets" />
|
||||
</Project>
|
Двоичный файл не отображается.
После Ширина: | Высота: | Размер: 4.8 KiB |
|
@ -0,0 +1,31 @@
|
|||
|
||||
Microsoft Visual Studio Solution File, Format Version 12.00
|
||||
# Visual Studio Version 16
|
||||
VisualStudioVersion = 16.0.28714.193
|
||||
MinimumVisualStudioVersion = 10.0.40219.1
|
||||
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "ICSharpCode.AvalonEdit", "ICSharpCode.AvalonEdit\ICSharpCode.AvalonEdit.csproj", "{417F2A81-E1C2-4366-B24B-C5DC8F958844}"
|
||||
EndProject
|
||||
Project("{7CF6DF6D-3B04-46F8-A40B-537D21BCA0B4}") = "ICSharpCode.AvalonEdit.Documentation", "Documentation\ICSharpCode.AvalonEdit.Documentation.shfbproj", "{850B6602-0A7F-413A-864A-E816B98D7407}"
|
||||
EndProject
|
||||
Global
|
||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||
Debug|Any CPU = Debug|Any CPU
|
||||
Release|Any CPU = Release|Any CPU
|
||||
EndGlobalSection
|
||||
GlobalSection(ProjectConfigurationPlatforms) = postSolution
|
||||
{417F2A81-E1C2-4366-B24B-C5DC8F958844}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{417F2A81-E1C2-4366-B24B-C5DC8F958844}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{417F2A81-E1C2-4366-B24B-C5DC8F958844}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{417F2A81-E1C2-4366-B24B-C5DC8F958844}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{850B6602-0A7F-413A-864A-E816B98D7407}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{850B6602-0A7F-413A-864A-E816B98D7407}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{850B6602-0A7F-413A-864A-E816B98D7407}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{850B6602-0A7F-413A-864A-E816B98D7407}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
EndGlobalSection
|
||||
GlobalSection(SolutionProperties) = preSolution
|
||||
HideSolutionNode = FALSE
|
||||
EndGlobalSection
|
||||
GlobalSection(ExtensibilityGlobals) = postSolution
|
||||
SolutionGuid = {919F9316-235F-49C8-868A-F0C8B9063F56}
|
||||
EndGlobalSection
|
||||
EndGlobal
|
|
@ -1,137 +1,46 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003" DefaultTargets="Build">
|
||||
<Project Sdk="Microsoft.NET.Sdk.WindowsDesktop">
|
||||
<PropertyGroup>
|
||||
<ProjectGuid>{13A5B497-BA12-45AE-9033-22620C3153FB}</ProjectGuid>
|
||||
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
|
||||
<Platform Condition=" '$(Platform)' == '' ">Net35</Platform>
|
||||
<OutputType>WinExe</OutputType>
|
||||
<TargetFrameworks>netcoreapp3.0;net40;net45</TargetFrameworks>
|
||||
<UseWPF>true</UseWPF>
|
||||
<UseWindowsForms>true</UseWindowsForms>
|
||||
<DefineConstants>TRACE;DOTNET4</DefineConstants>
|
||||
<SignAssembly>true</SignAssembly>
|
||||
<AssemblyOriginatorKeyFile>..\ICSharpCode.AvalonEdit\ICSharpCode.AvalonEdit.snk</AssemblyOriginatorKeyFile>
|
||||
<RootNamespace>AvalonEdit.Sample</RootNamespace>
|
||||
<AssemblyName>ICSharpCode.AvalonEdit.Sample</AssemblyName>
|
||||
<TargetFrameworkVersion Condition="'$(Configuration)' == '' ">v4.0</TargetFrameworkVersion>
|
||||
<AppDesignerFolder>Properties</AppDesignerFolder>
|
||||
<TargetFrameworkProfile />
|
||||
<NoWin32Manifest>False</NoWin32Manifest>
|
||||
<AllowUnsafeBlocks>False</AllowUnsafeBlocks>
|
||||
<NoStdLib>False</NoStdLib>
|
||||
<TreatWarningsAsErrors>False</TreatWarningsAsErrors>
|
||||
<IntermediateOutputPath>obj\$(Configuration)\</IntermediateOutputPath>
|
||||
<WarningLevel>4</WarningLevel>
|
||||
<PlatformTarget>x86</PlatformTarget>
|
||||
<BaseAddress>4194304</BaseAddress>
|
||||
<RegisterForComInterop>False</RegisterForComInterop>
|
||||
<GenerateSerializationAssemblies>Auto</GenerateSerializationAssemblies>
|
||||
<FileAlignment>4096</FileAlignment>
|
||||
<Company>ic#code</Company>
|
||||
<Copyright>2000-2019 AlphaSierraPapa for the SharpDevelop Team</Copyright>
|
||||
<Description>Sample for WPF-based extensible text editor</Description>
|
||||
<IsPackable>false</IsPackable>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Platform)' == 'Net35' ">
|
||||
<TargetFrameworkVersion>v3.5</TargetFrameworkVersion>
|
||||
<PropertyGroup Condition=" '$(TargetFramework)' == 'netcoreapp3.0' ">
|
||||
<DefineConstants>TRACE;DOTNET4</DefineConstants>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Platform)' == 'Net40' ">
|
||||
<TargetFrameworkVersion>v4.0</TargetFrameworkVersion>
|
||||
<DefineConstants>DOTNET4</DefineConstants>
|
||||
<PropertyGroup Condition=" '$(TargetFramework)' == 'net40' ">
|
||||
<DefineConstants>TRACE;DOTNET4</DefineConstants>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Platform)' == 'WithNRefactory' ">
|
||||
<TargetFrameworkVersion>v4.5</TargetFrameworkVersion>
|
||||
<DefineConstants>NREFACTORY</DefineConstants>
|
||||
<PropertyGroup Condition=" '$(TargetFramework)' == 'net45' ">
|
||||
<DefineConstants>TRACE;DOTNET4</DefineConstants>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)' == 'Debug' ">
|
||||
<OutputPath>bin\Debug\</OutputPath>
|
||||
<DebugSymbols>True</DebugSymbols>
|
||||
<DebugType>Full</DebugType>
|
||||
<Optimize>False</Optimize>
|
||||
<CheckForOverflowUnderflow>True</CheckForOverflowUnderflow>
|
||||
<BaseIntermediateOutputPath>obj\</BaseIntermediateOutputPath>
|
||||
<DefineDebug>True</DefineDebug>
|
||||
<DefineTrace>True</DefineTrace>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)' == 'Release' ">
|
||||
<OutputPath>bin\Release\</OutputPath>
|
||||
<DebugSymbols>False</DebugSymbols>
|
||||
<DebugType>None</DebugType>
|
||||
<Optimize>True</Optimize>
|
||||
<CheckForOverflowUnderflow>False</CheckForOverflowUnderflow>
|
||||
<BaseIntermediateOutputPath>obj\</BaseIntermediateOutputPath>
|
||||
<DefineTrace>True</DefineTrace>
|
||||
</PropertyGroup>
|
||||
<ItemGroup>
|
||||
<ProjectReference Include="..\..\NRefactory\ICSharpCode.NRefactory\ICSharpCode.NRefactory.csproj" Condition="$(DefineConstants.Contains('NREFACTORY'))">
|
||||
<Project>{3B2A5653-EC97-4001-BB9B-D90F1AF2C371}</Project>
|
||||
<Name>ICSharpCode.NRefactory</Name>
|
||||
</ProjectReference>
|
||||
<Reference Include="PresentationCore">
|
||||
<RequiredTargetFramework>3.0</RequiredTargetFramework>
|
||||
</Reference>
|
||||
<Reference Include="PresentationFramework">
|
||||
<RequiredTargetFramework>3.0</RequiredTargetFramework>
|
||||
</Reference>
|
||||
<Reference Include="System" />
|
||||
<Reference Include="System.Core">
|
||||
<RequiredTargetFramework>3.5</RequiredTargetFramework>
|
||||
</Reference>
|
||||
<Reference Include="System.Data" />
|
||||
<Reference Include="System.Data.DataSetExtensions">
|
||||
<RequiredTargetFramework>3.5</RequiredTargetFramework>
|
||||
</Reference>
|
||||
<Reference Include="System.Drawing" />
|
||||
<Reference Include="System.Windows.Forms" />
|
||||
<Reference Include="System.Xaml">
|
||||
<RequiredTargetFramework>4.0</RequiredTargetFramework>
|
||||
</Reference>
|
||||
<Reference Include="System.Xml" />
|
||||
<Reference Include="System.Xml.Linq">
|
||||
<RequiredTargetFramework>3.5</RequiredTargetFramework>
|
||||
</Reference>
|
||||
<Reference Include="WindowsBase">
|
||||
<RequiredTargetFramework>3.0</RequiredTargetFramework>
|
||||
</Reference>
|
||||
<Reference Include="WindowsFormsIntegration">
|
||||
<RequiredTargetFramework>3.0</RequiredTargetFramework>
|
||||
</Reference>
|
||||
<ItemGroup Condition=" '$(TargetFramework)' == 'net40' ">
|
||||
<Reference Include="System.Windows.Forms" />
|
||||
</ItemGroup>
|
||||
<ItemGroup Condition=" '$(TargetFramework)' == 'net45' ">
|
||||
<Reference Include="System.Windows.Forms" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ApplicationDefinition Include="App.xaml" />
|
||||
<ProjectReference Include="..\ICSharpCode.AvalonEdit\ICSharpCode.AvalonEdit.csproj" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Compile Include="App.xaml.cs">
|
||||
<SubType>Code</SubType>
|
||||
<DependentUpon>App.xaml</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="BraceFoldingStrategy.cs" />
|
||||
<Compile Include="MyCompletionData.cs" />
|
||||
<Compile Include="Properties\AssemblyInfo.cs" />
|
||||
<Compile Include="Properties\WPFAssemblyInfo.cs" />
|
||||
<Compile Include="Window1.xaml.cs">
|
||||
<SubType>Code</SubType>
|
||||
<DependentUpon>Window1.xaml</DependentUpon>
|
||||
</Compile>
|
||||
<None Remove="Images\*" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Page Include="Window1.xaml" />
|
||||
<Resource Include="Images\*" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Resource Include="Images\Copy.png" />
|
||||
<Resource Include="Images\Cut.png" />
|
||||
<Resource Include="Images\Delete.png" />
|
||||
<Resource Include="Images\Open.png" />
|
||||
<Resource Include="Images\Paste.png" />
|
||||
<Resource Include="Images\Redo.png" />
|
||||
<Resource Include="Images\Save.png" />
|
||||
<Resource Include="Images\Undo.png" />
|
||||
<Resource Include="Images\WordWrap.png" />
|
||||
<None Remove="CustomHighlighting.xshd" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<EmbeddedResource Include="CustomHighlighting.xshd" />
|
||||
</ItemGroup>
|
||||
<ItemGroup Condition="!$(DefineConstants.Contains('DOTNET4'))">
|
||||
<None Include="app.net35.config" />
|
||||
</ItemGroup>
|
||||
<ItemGroup Condition="$(DefineConstants.Contains('DOTNET4'))">
|
||||
<None Include="app.config" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ProjectReference Include="..\ICSharpCode.AvalonEdit\ICSharpCode.AvalonEdit.csproj">
|
||||
<Project>{6C55B776-26D4-4DB3-A6AB-87E783B2F3D1}</Project>
|
||||
<Name>ICSharpCode.AvalonEdit</Name>
|
||||
</ProjectReference>
|
||||
</ItemGroup>
|
||||
<Import Project="$(MSBuildBinPath)\Microsoft.CSharp.Targets" />
|
||||
</Project>
|
|
@ -6,26 +6,6 @@ using System.Runtime.InteropServices;
|
|||
|
||||
#endregion
|
||||
|
||||
// General Information about an assembly is controlled through the following
|
||||
// set of attributes. Change these attribute values to modify the information
|
||||
// associated with an assembly.
|
||||
[assembly: AssemblyTitle("AvalonEdit.Sample")]
|
||||
[assembly: AssemblyDescription("")]
|
||||
[assembly: AssemblyConfiguration("")]
|
||||
[assembly: AssemblyCompany("")]
|
||||
[assembly: AssemblyProduct("AvalonEdit.Sample")]
|
||||
[assembly: AssemblyCopyright("Copyright 2009")]
|
||||
[assembly: AssemblyTrademark("")]
|
||||
[assembly: AssemblyCulture("")]
|
||||
|
||||
// This sets the default COM visibility of types in the assembly to invisible.
|
||||
// If you need to expose a type to COM, use [ComVisible(true)] on that type.
|
||||
[assembly: ComVisible(false)]
|
||||
|
||||
// The assembly version has following format :
|
||||
//
|
||||
// Major.Minor.Build.Revision
|
||||
//
|
||||
// You can specify all the values or you can use the default the Revision and
|
||||
// Build Numbers by using the '*' as shown below:
|
||||
[assembly: AssemblyVersion("1.0.*")]
|
||||
|
|
|
@ -124,16 +124,16 @@ namespace ICSharpCode.AvalonEdit.Document
|
|||
Assert.AreEqual(document.TextLength, 0);
|
||||
}
|
||||
|
||||
[Test, ExpectedException(typeof(ArgumentNullException))]
|
||||
[Test]
|
||||
public void InsertNull()
|
||||
{
|
||||
document.Insert(0, (string)null);
|
||||
Assert.Throws<ArgumentNullException>(() => document.Insert(0, (string) null));
|
||||
}
|
||||
|
||||
[Test, ExpectedException(typeof(ArgumentNullException))]
|
||||
[Test]
|
||||
public void SetTextNull()
|
||||
{
|
||||
document.Text = null;
|
||||
Assert.Throws<ArgumentNullException>(() => document.Text = null);
|
||||
}
|
||||
|
||||
[Test]
|
||||
|
@ -144,81 +144,111 @@ namespace ICSharpCode.AvalonEdit.Document
|
|||
Assert.AreEqual(document.TextLength, 0);
|
||||
}
|
||||
|
||||
[Test, ExpectedException(typeof(ArgumentOutOfRangeException))]
|
||||
[Test]
|
||||
public void GetCharAt0EmptyDocument()
|
||||
{
|
||||
document.GetCharAt(0);
|
||||
Assert.Throws<ArgumentOutOfRangeException>(() => document.GetCharAt(0));
|
||||
}
|
||||
|
||||
[Test, ExpectedException(typeof(ArgumentOutOfRangeException))]
|
||||
[Test]
|
||||
public void GetCharAtNegativeOffset()
|
||||
{
|
||||
document.Text = "a\nb";
|
||||
document.GetCharAt(-1);
|
||||
Assert.Throws<ArgumentOutOfRangeException>(() =>
|
||||
{
|
||||
document.Text = "a\nb";
|
||||
document.GetCharAt(-1);
|
||||
});
|
||||
}
|
||||
|
||||
[Test, ExpectedException(typeof(ArgumentOutOfRangeException))]
|
||||
[Test]
|
||||
public void GetCharAtEndOffset()
|
||||
{
|
||||
document.Text = "a\nb";
|
||||
document.GetCharAt(document.TextLength);
|
||||
Assert.Throws<ArgumentOutOfRangeException>(() =>
|
||||
{
|
||||
document.Text = "a\nb";
|
||||
document.GetCharAt(document.TextLength);
|
||||
});
|
||||
}
|
||||
|
||||
[Test, ExpectedException(typeof(ArgumentOutOfRangeException))]
|
||||
[Test]
|
||||
public void InsertAtNegativeOffset()
|
||||
{
|
||||
document.Text = "a\nb";
|
||||
document.Insert(-1, "text");
|
||||
Assert.Throws<ArgumentOutOfRangeException>(() =>
|
||||
{
|
||||
document.Text = "a\nb";
|
||||
document.Insert(-1, "text");
|
||||
});
|
||||
}
|
||||
|
||||
[Test, ExpectedException(typeof(ArgumentOutOfRangeException))]
|
||||
[Test]
|
||||
public void InsertAfterEndOffset()
|
||||
{
|
||||
document.Text = "a\nb";
|
||||
document.Insert(4, "text");
|
||||
Assert.Throws<ArgumentOutOfRangeException>(() =>
|
||||
{
|
||||
document.Text = "a\nb";
|
||||
document.Insert(4, "text");
|
||||
});
|
||||
}
|
||||
|
||||
[Test, ExpectedException(typeof(ArgumentOutOfRangeException))]
|
||||
[Test]
|
||||
public void RemoveNegativeAmount()
|
||||
{
|
||||
document.Text = "abcd";
|
||||
document.Remove(2, -1);
|
||||
Assert.Throws<ArgumentOutOfRangeException>(() =>
|
||||
{
|
||||
document.Text = "abcd";
|
||||
document.Remove(2, -1);
|
||||
});
|
||||
}
|
||||
|
||||
[Test, ExpectedException(typeof(ArgumentOutOfRangeException))]
|
||||
[Test]
|
||||
public void RemoveTooMuch()
|
||||
{
|
||||
document.Text = "abcd";
|
||||
document.Remove(2, 10);
|
||||
Assert.Throws<ArgumentOutOfRangeException>(() =>
|
||||
{
|
||||
document.Text = "abcd";
|
||||
document.Remove(2, 10);
|
||||
});
|
||||
}
|
||||
|
||||
[Test, ExpectedException(typeof(ArgumentOutOfRangeException))]
|
||||
[Test]
|
||||
public void GetLineByNumberNegative()
|
||||
{
|
||||
document.Text = "a\nb";
|
||||
document.GetLineByNumber(-1);
|
||||
Assert.Throws<ArgumentOutOfRangeException>(() =>
|
||||
{
|
||||
document.Text = "a\nb";
|
||||
document.GetLineByNumber(-1);
|
||||
});
|
||||
}
|
||||
|
||||
[Test, ExpectedException(typeof(ArgumentOutOfRangeException))]
|
||||
[Test]
|
||||
public void GetLineByNumberTooHigh()
|
||||
{
|
||||
document.Text = "a\nb";
|
||||
document.GetLineByNumber(3);
|
||||
Assert.Throws<ArgumentOutOfRangeException>(() =>
|
||||
{
|
||||
document.Text = "a\nb";
|
||||
document.GetLineByNumber(3);
|
||||
});
|
||||
}
|
||||
|
||||
[Test, ExpectedException(typeof(ArgumentOutOfRangeException))]
|
||||
[Test]
|
||||
public void GetLineByOffsetNegative()
|
||||
{
|
||||
document.Text = "a\nb";
|
||||
document.GetLineByOffset(-1);
|
||||
Assert.Throws<ArgumentOutOfRangeException>(() =>
|
||||
{
|
||||
document.Text = "a\nb";
|
||||
document.GetLineByOffset(-1);
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
[Test, ExpectedException(typeof(ArgumentOutOfRangeException))]
|
||||
[Test]
|
||||
public void GetLineByOffsetToHigh()
|
||||
{
|
||||
document.Text = "a\nb";
|
||||
document.GetLineByOffset(10);
|
||||
Assert.Throws<ArgumentOutOfRangeException>(() =>
|
||||
{
|
||||
document.Text = "a\nb";
|
||||
document.GetLineByOffset(10);
|
||||
});
|
||||
}
|
||||
|
||||
[Test]
|
||||
|
|
|
@ -32,7 +32,7 @@ namespace ICSharpCode.AvalonEdit.Document
|
|||
TextDocument document;
|
||||
Random rnd;
|
||||
|
||||
[TestFixtureSetUp]
|
||||
[OneTimeSetUp]
|
||||
public void FixtureSetup()
|
||||
{
|
||||
int seed = Environment.TickCount;
|
||||
|
|
|
@ -93,7 +93,7 @@ namespace ICSharpCode.AvalonEdit.Document
|
|||
|
||||
Random rnd;
|
||||
|
||||
[TestFixtureSetUp]
|
||||
[OneTimeSetUp]
|
||||
public void FixtureSetup()
|
||||
{
|
||||
int seed = Environment.TickCount;
|
||||
|
|
|
@ -30,7 +30,7 @@ namespace ICSharpCode.AvalonEdit.Document
|
|||
{
|
||||
Random rnd;
|
||||
|
||||
[TestFixtureSetUp]
|
||||
[OneTimeSetUp]
|
||||
public void FixtureSetup()
|
||||
{
|
||||
int seed = Environment.TickCount;
|
||||
|
|
|
@ -1,126 +1,31 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<Project Sdk="Microsoft.NET.Sdk.WindowsDesktop">
|
||||
<PropertyGroup>
|
||||
<ProjectGuid>{6222A3A1-83CE-47A3-A4E4-A018F82D44D8}</ProjectGuid>
|
||||
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
|
||||
<Platform Condition=" '$(Platform)' == '' ">Net40</Platform>
|
||||
<OutputType>Library</OutputType>
|
||||
<RootNamespace>ICSharpCode.AvalonEdit</RootNamespace>
|
||||
<AssemblyName>ICSharpCode.AvalonEdit.Tests</AssemblyName>
|
||||
<TargetFrameworkVersion Condition=" '$(Configuration)' == '' ">v4.0</TargetFrameworkVersion>
|
||||
<AppDesignerFolder>Properties</AppDesignerFolder>
|
||||
<SignAssembly>True</SignAssembly>
|
||||
<TargetFrameworks>net40;net45</TargetFrameworks>
|
||||
<UseWPF>true</UseWPF>
|
||||
<UseWindowsForms>true</UseWindowsForms>
|
||||
<DefineConstants>TRACE;DOTNET4</DefineConstants>
|
||||
<SignAssembly>true</SignAssembly>
|
||||
<AssemblyOriginatorKeyFile>..\ICSharpCode.AvalonEdit\ICSharpCode.AvalonEdit.snk</AssemblyOriginatorKeyFile>
|
||||
<DelaySign>False</DelaySign>
|
||||
<AssemblyOriginatorKeyMode>File</AssemblyOriginatorKeyMode>
|
||||
<AllowUnsafeBlocks>False</AllowUnsafeBlocks>
|
||||
<NoStdLib>False</NoStdLib>
|
||||
<WarningLevel>4</WarningLevel>
|
||||
<TreatWarningsAsErrors>False</TreatWarningsAsErrors>
|
||||
<OutputPath>bin\$(Configuration)\</OutputPath>
|
||||
<RunPostBuildEvent>OnBuildSuccess</RunPostBuildEvent>
|
||||
<TargetFrameworkProfile>
|
||||
</TargetFrameworkProfile>
|
||||
<NoWin32Manifest>False</NoWin32Manifest>
|
||||
<IntermediateOutputPath>obj\$(Configuration)\</IntermediateOutputPath>
|
||||
<RegisterForComInterop>False</RegisterForComInterop>
|
||||
<GenerateSerializationAssemblies>Auto</GenerateSerializationAssemblies>
|
||||
<BaseAddress>4194304</BaseAddress>
|
||||
<PlatformTarget>AnyCPU</PlatformTarget>
|
||||
<FileAlignment>4096</FileAlignment>
|
||||
<Company>ic#code</Company>
|
||||
<Copyright>2000-2019 AlphaSierraPapa for the SharpDevelop Team</Copyright>
|
||||
<Description>Tests for WPF-based extensible text editor</Description>
|
||||
<IsPackable>false</IsPackable>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Platform)' == 'Net35' ">
|
||||
<TargetFrameworkVersion>v3.5</TargetFrameworkVersion>
|
||||
<PropertyGroup Condition=" '$(TargetFramework)' == 'netcoreapp3.0' ">
|
||||
<DefineConstants>TRACE;DOTNET4</DefineConstants>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Platform)' == 'Net40' ">
|
||||
<TargetFrameworkVersion>v4.0</TargetFrameworkVersion>
|
||||
<DefineConstants>DOTNET4</DefineConstants>
|
||||
<PropertyGroup Condition=" '$(TargetFramework)' == 'net40' ">
|
||||
<DefineConstants>TRACE;DOTNET4</DefineConstants>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Platform)' == 'WithNRefactory' ">
|
||||
<TargetFrameworkVersion>v4.5</TargetFrameworkVersion>
|
||||
<DefineConstants>NREFACTORY</DefineConstants>
|
||||
<PropertyGroup Condition=" '$(TargetFramework)' == 'net45' ">
|
||||
<DefineConstants>TRACE;DOTNET4</DefineConstants>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)' == 'Debug' ">
|
||||
<DebugSymbols>true</DebugSymbols>
|
||||
<DebugType>Full</DebugType>
|
||||
<Optimize>False</Optimize>
|
||||
<CheckForOverflowUnderflow>True</CheckForOverflowUnderflow>
|
||||
<BaseIntermediateOutputPath>obj\</BaseIntermediateOutputPath>
|
||||
<DefineDebug>True</DefineDebug>
|
||||
<DefineTrace>True</DefineTrace>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)' == 'Release' ">
|
||||
<DebugSymbols>false</DebugSymbols>
|
||||
<DebugType>None</DebugType>
|
||||
<Optimize>True</Optimize>
|
||||
<CheckForOverflowUnderflow>False</CheckForOverflowUnderflow>
|
||||
<BaseIntermediateOutputPath>obj\</BaseIntermediateOutputPath>
|
||||
<DefineTrace>True</DefineTrace>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(MSBuildBinPath)\Microsoft.CSharp.Targets" />
|
||||
<ItemGroup>
|
||||
<ProjectReference Include="..\..\NRefactory\ICSharpCode.NRefactory\ICSharpCode.NRefactory.csproj" Condition="$(DefineConstants.Contains('NREFACTORY'))">
|
||||
<Project>{3B2A5653-EC97-4001-BB9B-D90F1AF2C371}</Project>
|
||||
<Name>ICSharpCode.NRefactory</Name>
|
||||
</ProjectReference>
|
||||
<Reference Include="nunit.framework">
|
||||
<HintPath>$(SolutionDir)\packages\NUnit.2.6.3\lib\nunit.framework.dll</HintPath>
|
||||
</Reference>
|
||||
<Reference Include="PresentationCore">
|
||||
<RequiredTargetFramework>3.0</RequiredTargetFramework>
|
||||
</Reference>
|
||||
<Reference Include="PresentationFramework">
|
||||
<RequiredTargetFramework>3.0</RequiredTargetFramework>
|
||||
</Reference>
|
||||
<Reference Include="System" />
|
||||
<Reference Include="System.Core">
|
||||
<RequiredTargetFramework>3.5</RequiredTargetFramework>
|
||||
</Reference>
|
||||
<Reference Include="System.Xaml">
|
||||
<RequiredTargetFramework>4.0</RequiredTargetFramework>
|
||||
</Reference>
|
||||
<Reference Include="System.Xml" />
|
||||
<Reference Include="System.Xml.Linq">
|
||||
<RequiredTargetFramework>3.5</RequiredTargetFramework>
|
||||
</Reference>
|
||||
<Reference Include="WindowsBase">
|
||||
<RequiredTargetFramework>3.0</RequiredTargetFramework>
|
||||
</Reference>
|
||||
<PackageReference Include="NUnit" Version="3.11.0" />
|
||||
<PackageReference Include="NUnit3TestAdapter" Version="3.13.0" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Compile Include="Document\ChangeTrackingTest.cs" />
|
||||
<Compile Include="Document\TextAnchorTest.cs" />
|
||||
<Compile Include="Document\TextSegmentTreeTest.cs" />
|
||||
<Compile Include="Document\TextUtilitiesTests.cs" />
|
||||
<Compile Include="Document\UndoStackTests.cs" />
|
||||
<Compile Include="Editing\ChangeDocumentTests.cs" />
|
||||
<Compile Include="Editing\TextSegmentReadOnlySectionTests.cs" />
|
||||
<Compile Include="Highlighting\HighlightedLineMergeTests.cs" />
|
||||
<Compile Include="Highlighting\HtmlClipboardTests.cs" />
|
||||
<Compile Include="MultipleUIThreads.cs" />
|
||||
<Compile Include="Properties\AssemblyInfo.cs" />
|
||||
<Compile Include="Document\CollapsingTests.cs" />
|
||||
<Compile Include="Document\HeightTests.cs" />
|
||||
<Compile Include="Document\RandomizedLineManagerTest.cs" />
|
||||
<Compile Include="Document\LineManagerTests.cs" />
|
||||
<Compile Include="Search\FindTests.cs" />
|
||||
<Compile Include="Utils\CaretNavigationTests.cs" />
|
||||
<Compile Include="Utils\CompressingTreeListTests.cs" />
|
||||
<Compile Include="Utils\ExtensionMethodsTests.cs" />
|
||||
<Compile Include="Utils\IndentationStringTests.cs" />
|
||||
<Compile Include="Utils\RopeTests.cs" />
|
||||
<Compile Include="WeakReferenceTests.cs" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<ProjectReference Include="..\ICSharpCode.AvalonEdit\ICSharpCode.AvalonEdit.csproj">
|
||||
<Project>{6C55B776-26D4-4DB3-A6AB-87E783B2F3D1}</Project>
|
||||
<Name>ICSharpCode.AvalonEdit</Name>
|
||||
</ProjectReference>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Folder Include="Search" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Include="packages.config" />
|
||||
<ProjectReference Include="..\ICSharpCode.AvalonEdit\ICSharpCode.AvalonEdit.csproj" />
|
||||
</ItemGroup>
|
||||
</Project>
|
|
@ -21,35 +21,18 @@
|
|||
using System;
|
||||
using System.Reflection;
|
||||
using System.Runtime.InteropServices;
|
||||
|
||||
using System.Threading;
|
||||
using NUnit.Framework;
|
||||
|
||||
#endregion
|
||||
|
||||
// General Information about an assembly is controlled through the following
|
||||
// set of attributes. Change these attribute values to modify the information
|
||||
// associated with an assembly.
|
||||
[assembly: AssemblyTitle("ICSharpCode.AvalonEdit.Tests")]
|
||||
[assembly: AssemblyDescription("")]
|
||||
[assembly: AssemblyConfiguration("")]
|
||||
[assembly: AssemblyCompany("")]
|
||||
[assembly: AssemblyProduct("ICSharpCode.AvalonEdit.Tests")]
|
||||
[assembly: AssemblyTrademark("")]
|
||||
[assembly: AssemblyCulture("")]
|
||||
|
||||
// This sets the default COM visibility of types in the assembly to invisible.
|
||||
// If you need to expose a type to COM, use [ComVisible(true)] on that type.
|
||||
[assembly: ComVisible(false)]
|
||||
|
||||
// The assembly version has following format :
|
||||
//
|
||||
// Major.Minor.Build.Revision
|
||||
//
|
||||
// You can specify all the values or you can use the default the Revision and
|
||||
// Build Numbers by using the '*' as shown below:
|
||||
[assembly: AssemblyVersion("1.0.*")]
|
||||
|
||||
#if !NETCOREAPP
|
||||
// Run unit tests on STA thread.
|
||||
[assembly: RequiresSTA]
|
||||
[assembly: Apartment(ApartmentState.STA)]
|
||||
#endif
|
||||
|
||||
namespace ICSharpCode.NRefactory.Editor {}
|
|
@ -17,6 +17,7 @@
|
|||
// DEALINGS IN THE SOFTWARE.
|
||||
|
||||
using System;
|
||||
using System.Runtime.CompilerServices;
|
||||
using System.Windows.Threading;
|
||||
using ICSharpCode.AvalonEdit.Document;
|
||||
using ICSharpCode.AvalonEdit.Editing;
|
||||
|
@ -31,24 +32,27 @@ namespace ICSharpCode.AvalonEdit
|
|||
[Test]
|
||||
public void TextViewCanBeCollectedTest()
|
||||
{
|
||||
TextView textView = new TextView();
|
||||
WeakReference wr = new WeakReference(textView);
|
||||
textView = null;
|
||||
WeakReference wr = TextViewCanBeCollectedTest_CreateTextView();
|
||||
GarbageCollect();
|
||||
Assert.IsFalse(wr.IsAlive);
|
||||
}
|
||||
|
||||
|
||||
// Use separate no-inline method so that the JIT can't keep a strong
|
||||
// reference to the text view alive past this method.
|
||||
[MethodImpl(MethodImplOptions.NoInlining)]
|
||||
WeakReference TextViewCanBeCollectedTest_CreateTextView()
|
||||
{
|
||||
return new WeakReference(new TextView());
|
||||
}
|
||||
|
||||
[Test]
|
||||
public void DocumentDoesNotHoldReferenceToTextView()
|
||||
{
|
||||
TextDocument textDocument = new TextDocument();
|
||||
Assert.AreEqual(0, textDocument.LineTrackers.Count);
|
||||
|
||||
TextView textView = new TextView();
|
||||
WeakReference wr = new WeakReference(textView);
|
||||
textView.Document = textDocument;
|
||||
WeakReference wr = DocumentDoesNotHoldReferenceToTextView_CreateTextView(textDocument);
|
||||
Assert.AreEqual(1, textDocument.LineTrackers.Count);
|
||||
textView = null;
|
||||
|
||||
GarbageCollect();
|
||||
Assert.IsFalse(wr.IsAlive);
|
||||
|
@ -59,37 +63,53 @@ namespace ICSharpCode.AvalonEdit
|
|||
textDocument.Insert(0, "a");
|
||||
Assert.AreEqual(0, textDocument.LineTrackers.Count);
|
||||
}
|
||||
|
||||
|
||||
[MethodImpl(MethodImplOptions.NoInlining)]
|
||||
WeakReference DocumentDoesNotHoldReferenceToTextView_CreateTextView(TextDocument textDocument)
|
||||
{
|
||||
TextView textView = new TextView();
|
||||
textView.Document = textDocument;
|
||||
return new WeakReference(textView);
|
||||
}
|
||||
|
||||
[Test]
|
||||
public void DocumentDoesNotHoldReferenceToTextArea()
|
||||
{
|
||||
TextDocument textDocument = new TextDocument();
|
||||
|
||||
TextArea textArea = new TextArea();
|
||||
WeakReference wr = new WeakReference(textArea);
|
||||
textArea.Document = textDocument;
|
||||
textArea = null;
|
||||
WeakReference wr = DocumentDoesNotHoldReferenceToTextArea_CreateTextArea(textDocument);
|
||||
|
||||
GarbageCollect();
|
||||
Assert.IsFalse(wr.IsAlive);
|
||||
GC.KeepAlive(textDocument);
|
||||
}
|
||||
|
||||
|
||||
[MethodImpl(MethodImplOptions.NoInlining)]
|
||||
WeakReference DocumentDoesNotHoldReferenceToTextArea_CreateTextArea(TextDocument textDocument)
|
||||
{
|
||||
TextArea textArea = new TextArea();
|
||||
textArea.Document = textDocument;
|
||||
return new WeakReference(textArea);
|
||||
}
|
||||
|
||||
[Test]
|
||||
public void DocumentDoesNotHoldReferenceToTextEditor()
|
||||
{
|
||||
TextDocument textDocument = new TextDocument();
|
||||
|
||||
TextEditor textEditor = new TextEditor();
|
||||
WeakReference wr = new WeakReference(textEditor);
|
||||
textEditor.Document = textDocument;
|
||||
textEditor = null;
|
||||
WeakReference wr = DocumentDoesNotHoldReferenceToTextEditor_CreateTextEditor(textDocument);
|
||||
|
||||
GarbageCollect();
|
||||
Assert.IsFalse(wr.IsAlive);
|
||||
GC.KeepAlive(textDocument);
|
||||
}
|
||||
|
||||
|
||||
[MethodImpl(MethodImplOptions.NoInlining)]
|
||||
WeakReference DocumentDoesNotHoldReferenceToTextEditor_CreateTextEditor(TextDocument textDocument)
|
||||
{
|
||||
TextEditor textEditor = new TextEditor();
|
||||
textEditor.Document = textDocument;
|
||||
return new WeakReference(textEditor);
|
||||
}
|
||||
|
||||
[Test]
|
||||
public void DocumentDoesNotHoldReferenceToLineMargin()
|
||||
{
|
||||
|
@ -101,8 +121,9 @@ namespace ICSharpCode.AvalonEdit
|
|||
Assert.IsFalse(wr.IsAlive);
|
||||
GC.KeepAlive(textDocument);
|
||||
}
|
||||
|
||||
|
||||
// using a method to ensure the local variables can be garbage collected after the method returns
|
||||
[MethodImpl(MethodImplOptions.NoInlining)]
|
||||
WeakReference DocumentDoesNotHoldReferenceToLineMargin_CreateMargin(TextDocument textDocument)
|
||||
{
|
||||
TextView textView = new TextView() {
|
||||
|
|
|
@ -1,4 +0,0 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<packages>
|
||||
<package id="NUnit" version="2.6.3" targetFramework="net45" />
|
||||
</packages>
|
|
@ -1,60 +1,37 @@
|
|||
|
||||
Microsoft Visual Studio Solution File, Format Version 12.00
|
||||
# Visual Studio 2012
|
||||
# SharpDevelop 5.0
|
||||
VisualStudioVersion = 12.0.20827.3
|
||||
# Visual Studio Version 16
|
||||
VisualStudioVersion = 16.0.28714.193
|
||||
MinimumVisualStudioVersion = 10.0.40219.1
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.AvalonEdit", "ICSharpCode.AvalonEdit\ICSharpCode.AvalonEdit.csproj", "{6C55B776-26D4-4DB3-A6AB-87E783B2F3D1}"
|
||||
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "ICSharpCode.AvalonEdit", "ICSharpCode.AvalonEdit\ICSharpCode.AvalonEdit.csproj", "{417F2A81-E1C2-4366-B24B-C5DC8F958844}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.AvalonEdit.Tests", "ICSharpCode.AvalonEdit.Tests\ICSharpCode.AvalonEdit.Tests.csproj", "{6222A3A1-83CE-47A3-A4E4-A018F82D44D8}"
|
||||
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "ICSharpCode.AvalonEdit.Sample", "ICSharpCode.AvalonEdit.Sample\ICSharpCode.AvalonEdit.Sample.csproj", "{E506196C-A5E8-4D24-B889-6BA401C0B2B9}"
|
||||
EndProject
|
||||
Project("{FAE04EC0-301F-11D3-BF4B-00C04F79EFBC}") = "ICSharpCode.AvalonEdit.Sample", "ICSharpCode.AvalonEdit.Sample\ICSharpCode.AvalonEdit.Sample.csproj", "{13A5B497-BA12-45AE-9033-22620C3153FB}"
|
||||
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "ICSharpCode.AvalonEdit.Tests", "ICSharpCode.AvalonEdit.Tests\ICSharpCode.AvalonEdit.Tests.csproj", "{37CAC89C-C38C-4126-A4A0-91A240A474D7}"
|
||||
EndProject
|
||||
Global
|
||||
GlobalSection(SolutionConfigurationPlatforms) = preSolution
|
||||
Debug|Net40 = Debug|Net40
|
||||
Debug|Net35 = Debug|Net35
|
||||
Debug|WithNRefactory = Debug|WithNRefactory
|
||||
Release|Net40 = Release|Net40
|
||||
Release|Net35 = Release|Net35
|
||||
Release|WithNRefactory = Release|WithNRefactory
|
||||
Debug|Any CPU = Debug|Any CPU
|
||||
Release|Any CPU = Release|Any CPU
|
||||
EndGlobalSection
|
||||
GlobalSection(ProjectConfigurationPlatforms) = postSolution
|
||||
{6C55B776-26D4-4DB3-A6AB-87E783B2F3D1}.Debug|Net40.ActiveCfg = Debug|Net40
|
||||
{6C55B776-26D4-4DB3-A6AB-87E783B2F3D1}.Debug|Net40.Build.0 = Debug|Net40
|
||||
{6C55B776-26D4-4DB3-A6AB-87E783B2F3D1}.Debug|Net35.ActiveCfg = Debug|Net35
|
||||
{6C55B776-26D4-4DB3-A6AB-87E783B2F3D1}.Debug|Net35.Build.0 = Debug|Net35
|
||||
{6C55B776-26D4-4DB3-A6AB-87E783B2F3D1}.Debug|WithNRefactory.ActiveCfg = Debug|WithNRefactory
|
||||
{6C55B776-26D4-4DB3-A6AB-87E783B2F3D1}.Debug|WithNRefactory.Build.0 = Debug|WithNRefactory
|
||||
{6C55B776-26D4-4DB3-A6AB-87E783B2F3D1}.Release|Net40.ActiveCfg = Release|Net40
|
||||
{6C55B776-26D4-4DB3-A6AB-87E783B2F3D1}.Release|Net40.Build.0 = Release|Net40
|
||||
{6C55B776-26D4-4DB3-A6AB-87E783B2F3D1}.Release|Net35.ActiveCfg = Release|Net35
|
||||
{6C55B776-26D4-4DB3-A6AB-87E783B2F3D1}.Release|Net35.Build.0 = Release|Net35
|
||||
{6C55B776-26D4-4DB3-A6AB-87E783B2F3D1}.Release|WithNRefactory.ActiveCfg = Release|WithNRefactory
|
||||
{6C55B776-26D4-4DB3-A6AB-87E783B2F3D1}.Release|WithNRefactory.Build.0 = Release|WithNRefactory
|
||||
{6222A3A1-83CE-47A3-A4E4-A018F82D44D8}.Debug|Net40.ActiveCfg = Debug|Net40
|
||||
{6222A3A1-83CE-47A3-A4E4-A018F82D44D8}.Debug|Net40.Build.0 = Debug|Net40
|
||||
{6222A3A1-83CE-47A3-A4E4-A018F82D44D8}.Debug|Net35.ActiveCfg = Debug|Net35
|
||||
{6222A3A1-83CE-47A3-A4E4-A018F82D44D8}.Debug|Net35.Build.0 = Debug|Net35
|
||||
{6222A3A1-83CE-47A3-A4E4-A018F82D44D8}.Debug|WithNRefactory.ActiveCfg = Debug|WithNRefactory
|
||||
{6222A3A1-83CE-47A3-A4E4-A018F82D44D8}.Debug|WithNRefactory.Build.0 = Debug|WithNRefactory
|
||||
{6222A3A1-83CE-47A3-A4E4-A018F82D44D8}.Release|Net40.ActiveCfg = Release|Net40
|
||||
{6222A3A1-83CE-47A3-A4E4-A018F82D44D8}.Release|Net40.Build.0 = Release|Net40
|
||||
{6222A3A1-83CE-47A3-A4E4-A018F82D44D8}.Release|Net35.ActiveCfg = Release|Net35
|
||||
{6222A3A1-83CE-47A3-A4E4-A018F82D44D8}.Release|Net35.Build.0 = Release|Net35
|
||||
{6222A3A1-83CE-47A3-A4E4-A018F82D44D8}.Release|WithNRefactory.ActiveCfg = Release|WithNRefactory
|
||||
{6222A3A1-83CE-47A3-A4E4-A018F82D44D8}.Release|WithNRefactory.Build.0 = Release|WithNRefactory
|
||||
{13A5B497-BA12-45AE-9033-22620C3153FB}.Debug|Net40.ActiveCfg = Debug|Net40
|
||||
{13A5B497-BA12-45AE-9033-22620C3153FB}.Debug|Net40.Build.0 = Debug|Net40
|
||||
{13A5B497-BA12-45AE-9033-22620C3153FB}.Debug|Net35.ActiveCfg = Debug|Net35
|
||||
{13A5B497-BA12-45AE-9033-22620C3153FB}.Debug|Net35.Build.0 = Debug|Net35
|
||||
{13A5B497-BA12-45AE-9033-22620C3153FB}.Debug|WithNRefactory.ActiveCfg = Debug|WithNRefactory
|
||||
{13A5B497-BA12-45AE-9033-22620C3153FB}.Debug|WithNRefactory.Build.0 = Debug|WithNRefactory
|
||||
{13A5B497-BA12-45AE-9033-22620C3153FB}.Release|Net40.ActiveCfg = Release|Net40
|
||||
{13A5B497-BA12-45AE-9033-22620C3153FB}.Release|Net40.Build.0 = Release|Net40
|
||||
{13A5B497-BA12-45AE-9033-22620C3153FB}.Release|Net35.ActiveCfg = Release|Net35
|
||||
{13A5B497-BA12-45AE-9033-22620C3153FB}.Release|Net35.Build.0 = Release|Net35
|
||||
{13A5B497-BA12-45AE-9033-22620C3153FB}.Release|WithNRefactory.ActiveCfg = Release|WithNRefactory
|
||||
{13A5B497-BA12-45AE-9033-22620C3153FB}.Release|WithNRefactory.Build.0 = Release|WithNRefactory
|
||||
{417F2A81-E1C2-4366-B24B-C5DC8F958844}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{417F2A81-E1C2-4366-B24B-C5DC8F958844}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{417F2A81-E1C2-4366-B24B-C5DC8F958844}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{417F2A81-E1C2-4366-B24B-C5DC8F958844}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{E506196C-A5E8-4D24-B889-6BA401C0B2B9}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{E506196C-A5E8-4D24-B889-6BA401C0B2B9}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{E506196C-A5E8-4D24-B889-6BA401C0B2B9}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{E506196C-A5E8-4D24-B889-6BA401C0B2B9}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
{37CAC89C-C38C-4126-A4A0-91A240A474D7}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
|
||||
{37CAC89C-C38C-4126-A4A0-91A240A474D7}.Debug|Any CPU.Build.0 = Debug|Any CPU
|
||||
{37CAC89C-C38C-4126-A4A0-91A240A474D7}.Release|Any CPU.ActiveCfg = Release|Any CPU
|
||||
{37CAC89C-C38C-4126-A4A0-91A240A474D7}.Release|Any CPU.Build.0 = Release|Any CPU
|
||||
EndGlobalSection
|
||||
GlobalSection(SolutionProperties) = preSolution
|
||||
HideSolutionNode = FALSE
|
||||
EndGlobalSection
|
||||
GlobalSection(ExtensibilityGlobals) = postSolution
|
||||
SolutionGuid = {919F9316-235F-49C8-868A-F0C8B9063F56}
|
||||
EndGlobalSection
|
||||
EndGlobal
|
||||
|
|
|
@ -260,14 +260,7 @@ namespace ICSharpCode.AvalonEdit.Document
|
|||
return rope.Length;
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Is raised when the TextLength property changes.
|
||||
/// </summary>
|
||||
/// <remarks><inheritdoc cref="Changing"/></remarks>
|
||||
[Obsolete("This event will be removed in a future version; use the PropertyChanged event instead")]
|
||||
public event EventHandler TextLengthChanged;
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// Is raised when one of the properties <see cref="Text"/>, <see cref="TextLength"/>, <see cref="LineCount"/>,
|
||||
/// <see cref="UndoStack"/> changes.
|
||||
|
@ -528,15 +521,11 @@ namespace ICSharpCode.AvalonEdit.Document
|
|||
int textLength = rope.Length;
|
||||
if (textLength != oldTextLength) {
|
||||
oldTextLength = textLength;
|
||||
if (TextLengthChanged != null)
|
||||
TextLengthChanged(this, EventArgs.Empty);
|
||||
OnPropertyChanged("TextLength");
|
||||
}
|
||||
int lineCount = lineTree.LineCount;
|
||||
if (lineCount != oldLineCount) {
|
||||
oldLineCount = lineCount;
|
||||
if (LineCountChanged != null)
|
||||
LineCountChanged(this, EventArgs.Empty);
|
||||
OnPropertyChanged("LineCount");
|
||||
}
|
||||
}
|
||||
|
@ -1049,11 +1038,6 @@ namespace ICSharpCode.AvalonEdit.Document
|
|||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Is raised when the LineCount property changes.
|
||||
/// </summary>
|
||||
[Obsolete("This event will be removed in a future version; use the PropertyChanged event instead")]
|
||||
public event EventHandler LineCountChanged;
|
||||
#endregion
|
||||
|
||||
#region Debugging
|
||||
|
|
|
@ -104,47 +104,7 @@ namespace ICSharpCode.AvalonEdit.Document
|
|||
source.Changed -= DeliverEvent;
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Weak event manager for the <see cref="TextDocument.LineCountChanged"/> event.
|
||||
/// </summary>
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Design", "CA1034:NestedTypesShouldNotBeVisible")]
|
||||
[Obsolete("The TextDocument.LineCountChanged event will be removed in a future version. Use PropertyChangedEventManager instead.")]
|
||||
public sealed class LineCountChanged : WeakEventManagerBase<LineCountChanged, TextDocument>
|
||||
{
|
||||
/// <inheritdoc/>
|
||||
protected override void StartListening(TextDocument source)
|
||||
{
|
||||
source.LineCountChanged += DeliverEvent;
|
||||
}
|
||||
|
||||
/// <inheritdoc/>
|
||||
protected override void StopListening(TextDocument source)
|
||||
{
|
||||
source.LineCountChanged -= DeliverEvent;
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Weak event manager for the <see cref="TextDocument.TextLengthChanged"/> event.
|
||||
/// </summary>
|
||||
[System.Diagnostics.CodeAnalysis.SuppressMessage("Microsoft.Design", "CA1034:NestedTypesShouldNotBeVisible")]
|
||||
[Obsolete("The TextDocument.TextLengthChanged event will be removed in a future version. Use PropertyChangedEventManager instead.")]
|
||||
public sealed class TextLengthChanged : WeakEventManagerBase<TextLengthChanged, TextDocument>
|
||||
{
|
||||
/// <inheritdoc/>
|
||||
protected override void StartListening(TextDocument source)
|
||||
{
|
||||
source.TextLengthChanged += DeliverEvent;
|
||||
}
|
||||
|
||||
/// <inheritdoc/>
|
||||
protected override void StopListening(TextDocument source)
|
||||
{
|
||||
source.TextLengthChanged -= DeliverEvent;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// Weak event manager for the <see cref="TextDocument.TextChanged"/> event.
|
||||
/// </summary>
|
||||
|
|
|
@ -50,22 +50,6 @@ namespace ICSharpCode.AvalonEdit.Editing
|
|||
return line;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Creates a vertical dotted line to separate the line numbers from the text view.
|
||||
/// </summary>
|
||||
[Obsolete("This method got published accidentally; and will be removed again in a future version. Use the parameterless overload instead.")]
|
||||
public static UIElement Create(TextEditor editor)
|
||||
{
|
||||
Line line = (Line)Create();
|
||||
|
||||
line.SetBinding(
|
||||
Line.StrokeProperty,
|
||||
new Binding("LineNumbersForeground") { Source = editor }
|
||||
);
|
||||
|
||||
return line;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Gets whether the specified UIElement is the result of a DottedLineMargin.Create call.
|
||||
/// </summary>
|
||||
|
|
|
@ -117,65 +117,7 @@ namespace ICSharpCode.AvalonEdit.Folding
|
|||
return manager.document.GetText(StartOffset, EndOffset - StartOffset);
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Gets the content of the collapsed lines as tooltip text.
|
||||
/// </summary>
|
||||
[Obsolete]
|
||||
public string TooltipText {
|
||||
get {
|
||||
// This fixes SD-1394:
|
||||
// Each line is checked for leading indentation whitespaces. If
|
||||
// a line has the same or more indentation than the first line,
|
||||
// it is reduced. If a line is less indented than the first line
|
||||
// the indentation is removed completely.
|
||||
//
|
||||
// See the following example:
|
||||
// line 1
|
||||
// line 2
|
||||
// line 3
|
||||
// line 4
|
||||
//
|
||||
// is reduced to:
|
||||
// line 1
|
||||
// line 2
|
||||
// line 3
|
||||
// line 4
|
||||
|
||||
var startLine = manager.document.GetLineByOffset(StartOffset);
|
||||
var endLine = manager.document.GetLineByOffset(EndOffset);
|
||||
var builder = new StringBuilder();
|
||||
|
||||
var current = startLine;
|
||||
ISegment startIndent = TextUtilities.GetLeadingWhitespace(manager.document, startLine);
|
||||
|
||||
while (current != endLine.NextLine) {
|
||||
ISegment currentIndent = TextUtilities.GetLeadingWhitespace(manager.document, current);
|
||||
|
||||
if (current == startLine && current == endLine)
|
||||
builder.Append(manager.document.GetText(StartOffset, EndOffset - StartOffset));
|
||||
else if (current == startLine) {
|
||||
if (current.EndOffset - StartOffset > 0)
|
||||
builder.AppendLine(manager.document.GetText(StartOffset, current.EndOffset - StartOffset).TrimStart());
|
||||
} else if (current == endLine) {
|
||||
if (startIndent.Length <= currentIndent.Length)
|
||||
builder.Append(manager.document.GetText(current.Offset + startIndent.Length, EndOffset - current.Offset - startIndent.Length));
|
||||
else
|
||||
builder.Append(manager.document.GetText(current.Offset + currentIndent.Length, EndOffset - current.Offset - currentIndent.Length));
|
||||
} else {
|
||||
if (startIndent.Length <= currentIndent.Length)
|
||||
builder.AppendLine(manager.document.GetText(current.Offset + startIndent.Length, current.Length - startIndent.Length));
|
||||
else
|
||||
builder.AppendLine(manager.document.GetText(current.Offset + currentIndent.Length, current.Length - currentIndent.Length));
|
||||
}
|
||||
|
||||
current = current.NextLine;
|
||||
}
|
||||
|
||||
return builder.ToString();
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// Gets/Sets an additional object associated with this folding section.
|
||||
/// </summary>
|
||||
|
|
|
@ -1,459 +1,65 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<Project ToolsVersion="4.0" DefaultTargets="Build" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
|
||||
<Project Sdk="Microsoft.NET.Sdk.WindowsDesktop">
|
||||
<PropertyGroup>
|
||||
<ProjectGuid>{6C55B776-26D4-4DB3-A6AB-87E783B2F3D1}</ProjectGuid>
|
||||
<Configuration Condition=" '$(Configuration)' == '' ">Debug</Configuration>
|
||||
<Platform Condition=" '$(Platform)' == '' ">Net40</Platform>
|
||||
<OutputType>Library</OutputType>
|
||||
<RootNamespace>ICSharpCode.AvalonEdit</RootNamespace>
|
||||
<AssemblyName>ICSharpCode.AvalonEdit</AssemblyName>
|
||||
<AppDesignerFolder>Properties</AppDesignerFolder>
|
||||
<AllowUnsafeBlocks>False</AllowUnsafeBlocks>
|
||||
<NoStdLib>False</NoStdLib>
|
||||
<WarningLevel>4</WarningLevel>
|
||||
<TreatWarningsAsErrors>False</TreatWarningsAsErrors>
|
||||
<SignAssembly>True</SignAssembly>
|
||||
<TargetFrameworks>netcoreapp3.0;net40;net45</TargetFrameworks>
|
||||
<UseWPF>true</UseWPF>
|
||||
<UseWindowsForms>true</UseWindowsForms>
|
||||
<DefineConstants>TRACE;DOTNET4</DefineConstants>
|
||||
<SignAssembly>true</SignAssembly>
|
||||
<AssemblyOriginatorKeyFile>ICSharpCode.AvalonEdit.snk</AssemblyOriginatorKeyFile>
|
||||
<DelaySign>False</DelaySign>
|
||||
<AssemblyOriginatorKeyMode>File</AssemblyOriginatorKeyMode>
|
||||
<RunCodeAnalysis>False</RunCodeAnalysis>
|
||||
<CodeAnalysisRules>-Microsoft.Design#CA1020;-Microsoft.Design#CA1033;-Microsoft.Performance#CA1805;-Microsoft.Performance#CA1810</CodeAnalysisRules>
|
||||
<NoWarn>1607</NoWarn>
|
||||
<TargetFrameworkProfile>
|
||||
</TargetFrameworkProfile>
|
||||
<NoWin32Manifest>False</NoWin32Manifest>
|
||||
<IntermediateOutputPath>obj\$(Configuration)\</IntermediateOutputPath>
|
||||
<RegisterForComInterop>False</RegisterForComInterop>
|
||||
<GenerateSerializationAssemblies>Auto</GenerateSerializationAssemblies>
|
||||
<BaseAddress>4194304</BaseAddress>
|
||||
<PlatformTarget>AnyCPU</PlatformTarget>
|
||||
<FileAlignment>4096</FileAlignment>
|
||||
<DocumentationFile>ICSharpCode.AvalonEdit.xml</DocumentationFile>
|
||||
<Company>ic#code</Company>
|
||||
<Copyright>2000-2019 AlphaSierraPapa for the SharpDevelop Team</Copyright>
|
||||
<Description>AvalonEdit is the WPF-based text editor used in SharpDevelop. There are four builds of AvalonEdit included in this package. .NET 3.5, 4.0, 4.5 and .NET Core 3.0.</Description>
|
||||
<Version>6.0</Version>
|
||||
<AssemblyVersion>6.0.0.0</AssemblyVersion>
|
||||
<FileVersion>6.0.0.0</FileVersion>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Platform)' == 'Net35' ">
|
||||
<TargetFrameworkVersion>v3.5</TargetFrameworkVersion>
|
||||
|
||||
<PropertyGroup>
|
||||
<IncludeSymbols>true</IncludeSymbols>
|
||||
<SymbolPackageFormat>snupkg</SymbolPackageFormat>
|
||||
<PublishRepositoryUrl>true</PublishRepositoryUrl>
|
||||
<RepositoryUrl>https://github.com/icsharpcode/AvalonEdit.git</RepositoryUrl>
|
||||
<RepositoryType>git</RepositoryType>
|
||||
<Authors>AvalonEdit Contributors</Authors>
|
||||
<PackageLicenseExpression>MIT</PackageLicenseExpression>
|
||||
<PackageProjectUrl>http://www.avalonedit.net</PackageProjectUrl>
|
||||
<PackageIconUrl>http://community.sharpdevelop.net/blogs/mattward/SharpDevelop.png</PackageIconUrl>
|
||||
<PackageTags>WPF Text Editor SharpDevelop AvalonEdit</PackageTags>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Platform)' == 'Net40' ">
|
||||
<TargetFrameworkVersion>v4.0</TargetFrameworkVersion>
|
||||
<DefineConstants>DOTNET4</DefineConstants>
|
||||
|
||||
<PropertyGroup Condition=" '$(TargetFramework)' == 'netcoreapp3.0' ">
|
||||
<DefineConstants>TRACE;DOTNET4</DefineConstants>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Platform)' == 'WithNRefactory' ">
|
||||
<TargetFrameworkVersion>v4.5</TargetFrameworkVersion>
|
||||
<DefineConstants>DOTNET4;NREFACTORY</DefineConstants>
|
||||
<AssemblyOriginatorKeyFile>..\..\NRefactory\ICSharpCode.NRefactory.snk</AssemblyOriginatorKeyFile>
|
||||
<PropertyGroup Condition=" '$(TargetFramework)' == 'net40' ">
|
||||
<DefineConstants>TRACE;DOTNET4</DefineConstants>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)' == 'Debug' ">
|
||||
<DefineConstants>DEBUG;$(DefineConstants)</DefineConstants>
|
||||
<OutputPath>bin\Debug\</OutputPath>
|
||||
<DocumentationFile>bin\Debug\ICSharpCode.AvalonEdit.xml</DocumentationFile>
|
||||
<DebugSymbols>true</DebugSymbols>
|
||||
<Optimize>False</Optimize>
|
||||
<CheckForOverflowUnderflow>True</CheckForOverflowUnderflow>
|
||||
<BaseIntermediateOutputPath>obj\</BaseIntermediateOutputPath>
|
||||
<DebugType>Full</DebugType>
|
||||
<DefineDebug>True</DefineDebug>
|
||||
<DefineTrace>True</DefineTrace>
|
||||
<PropertyGroup Condition=" '$(TargetFramework)' == 'net45' ">
|
||||
<DefineConstants>TRACE;DOTNET4</DefineConstants>
|
||||
</PropertyGroup>
|
||||
<PropertyGroup Condition=" '$(Configuration)' == 'Release' ">
|
||||
<OutputPath>bin\Release\</OutputPath>
|
||||
<DocumentationFile>bin\Release\ICSharpCode.AvalonEdit.xml</DocumentationFile>
|
||||
<DebugSymbols>false</DebugSymbols>
|
||||
<Optimize>True</Optimize>
|
||||
<CheckForOverflowUnderflow>False</CheckForOverflowUnderflow>
|
||||
<DebugType>Full</DebugType>
|
||||
<DefineTrace>True</DefineTrace>
|
||||
</PropertyGroup>
|
||||
<Import Project="$(MSBuildBinPath)\Microsoft.CSharp.Targets" />
|
||||
<ItemGroup>
|
||||
<ProjectReference Include="..\..\NRefactory\ICSharpCode.NRefactory\ICSharpCode.NRefactory.csproj" Condition="$(DefineConstants.Contains('NREFACTORY'))">
|
||||
<Project>{3B2A5653-EC97-4001-BB9B-D90F1AF2C371}</Project>
|
||||
<Name>ICSharpCode.NRefactory</Name>
|
||||
</ProjectReference>
|
||||
<Reference Include="Microsoft.CSharp">
|
||||
<RequiredTargetFramework>4.0</RequiredTargetFramework>
|
||||
</Reference>
|
||||
<Reference Include="PresentationCore">
|
||||
<RequiredTargetFramework>3.0</RequiredTargetFramework>
|
||||
</Reference>
|
||||
<Reference Include="PresentationFramework">
|
||||
<RequiredTargetFramework>3.0</RequiredTargetFramework>
|
||||
</Reference>
|
||||
<Reference Include="System" />
|
||||
<Reference Include="System.Core">
|
||||
<RequiredTargetFramework>3.5</RequiredTargetFramework>
|
||||
</Reference>
|
||||
<Reference Include="System.Data" />
|
||||
<Reference Include="System.Data.DataSetExtensions">
|
||||
<RequiredTargetFramework>3.5</RequiredTargetFramework>
|
||||
</Reference>
|
||||
<Reference Include="System.Drawing" />
|
||||
<Reference Include="System.Printing">
|
||||
<RequiredTargetFramework>3.0</RequiredTargetFramework>
|
||||
</Reference>
|
||||
<Reference Include="System.Web" Condition="!$(DefineConstants.Contains('DOTNET4'))" />
|
||||
<ItemGroup Condition=" '$(TargetFramework)' == 'net40' ">
|
||||
<Reference Include="System.Windows.Forms" />
|
||||
</ItemGroup>
|
||||
<ItemGroup Condition=" '$(TargetFramework)' == 'net45' ">
|
||||
<Reference Include="System.Windows.Forms" />
|
||||
<Reference Include="System.Xaml">
|
||||
<RequiredTargetFramework>4.0</RequiredTargetFramework>
|
||||
</Reference>
|
||||
<Reference Include="System.Xml" />
|
||||
<Reference Include="System.Xml.Linq">
|
||||
<RequiredTargetFramework>3.5</RequiredTargetFramework>
|
||||
</Reference>
|
||||
<Reference Include="UIAutomationProvider">
|
||||
<RequiredTargetFramework>3.0</RequiredTargetFramework>
|
||||
</Reference>
|
||||
<Reference Include="UIAutomationTypes">
|
||||
<RequiredTargetFramework>3.0</RequiredTargetFramework>
|
||||
</Reference>
|
||||
<Reference Include="WindowsBase">
|
||||
<RequiredTargetFramework>3.0</RequiredTargetFramework>
|
||||
</Reference>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Compile Include="AvalonEditCommands.cs" />
|
||||
<Compile Include="CodeCompletion\CompletionListBox.cs" />
|
||||
<Compile Include="CodeCompletion\CompletionWindowBase.cs" />
|
||||
<Compile Include="CodeCompletion\CompletionList.cs" />
|
||||
<Compile Include="CodeCompletion\CompletionWindow.cs">
|
||||
<SubType>Code</SubType>
|
||||
</Compile>
|
||||
<Compile Include="CodeCompletion\ICompletionData.cs" />
|
||||
<Compile Include="CodeCompletion\InsightWindow.cs" />
|
||||
<Compile Include="CodeCompletion\IOverloadProvider.cs" />
|
||||
<Compile Include="CodeCompletion\OverloadInsightWindow.cs" />
|
||||
<Compile Include="CodeCompletion\OverloadViewer.cs" />
|
||||
<Compile Include="Document\DocumentChangeOperation.cs">
|
||||
<DependentUpon>UndoStack.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Document\DocumentTextWriter.cs" />
|
||||
<Compile Include="Document\IDocument.cs" />
|
||||
<Compile Include="Document\ILineTracker.cs" />
|
||||
<Compile Include="Document\ITextAnchor.cs" />
|
||||
<Compile Include="Document\ITextSource.cs" />
|
||||
<Compile Include="Document\SimpleSegment.cs" />
|
||||
<Compile Include="Document\RopeTextSource.cs" />
|
||||
<Compile Include="Document\IUndoableOperation.cs">
|
||||
<DependentUpon>UndoStack.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Document\LineNode.cs">
|
||||
<DependentUpon>DocumentLine.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Document\NewLineFinder.cs" />
|
||||
<Compile Include="Document\OffsetChangeMap.cs" />
|
||||
<Compile Include="Document\TextDocumentWeakEventManager.cs">
|
||||
<DependentUpon>TextDocument.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Document\TextLocation.cs" />
|
||||
<Compile Include="Document\TextSegmentCollection.cs" />
|
||||
<Compile Include="Document\TextAnchor.cs" />
|
||||
<Compile Include="Document\TextAnchorNode.cs">
|
||||
<DependentUpon>TextAnchor.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Document\TextAnchorTree.cs">
|
||||
<DependentUpon>TextAnchor.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Document\TextSegment.cs" />
|
||||
<Compile Include="Document\TextSourceVersionProvider.cs" />
|
||||
<Compile Include="Document\TextUtilities.cs" />
|
||||
<Compile Include="Document\UndoOperationGroup.cs">
|
||||
<DependentUpon>UndoStack.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Document\UndoStack.cs">
|
||||
</Compile>
|
||||
<Compile Include="Document\WeakLineTracker.cs">
|
||||
<DependentUpon>ILineTracker.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Editing\AbstractMargin.cs" />
|
||||
<Compile Include="Editing\Caret.cs" />
|
||||
<Compile Include="Editing\CaretLayer.cs">
|
||||
</Compile>
|
||||
<Compile Include="Editing\CaretNavigationCommandHandler.cs">
|
||||
</Compile>
|
||||
<Compile Include="Editing\CaretWeakEventHandler.cs" />
|
||||
<Compile Include="Editing\DottedLineMargin.cs" />
|
||||
<Compile Include="Editing\DragDropException.cs" />
|
||||
<Compile Include="Editing\EditingCommandHandler.cs" />
|
||||
<Compile Include="Editing\EmptySelection.cs">
|
||||
<DependentUpon>Selection.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Editing\ImeNativeWrapper.cs" />
|
||||
<Compile Include="Editing\MouseSelectionMode.cs" />
|
||||
<Compile Include="Editing\SelectionSegment.cs" />
|
||||
<Compile Include="Editing\ImeSupport.cs" />
|
||||
<Compile Include="Editing\TextAreaAutomationPeer.cs" />
|
||||
<Compile Include="Editing\TextRangeProvider.cs" />
|
||||
<Compile Include="Folding\FoldingElementGenerator.cs" />
|
||||
<Compile Include="Folding\FoldingManager.cs" />
|
||||
<Compile Include="Folding\FoldingMargin.cs" />
|
||||
<Compile Include="Folding\FoldingMarginMarker.cs" />
|
||||
<Compile Include="Folding\FoldingSection.cs" />
|
||||
<Compile Include="Editing\IReadOnlySectionProvider.cs" />
|
||||
<Compile Include="Editing\LineNumberMargin.cs" />
|
||||
<Compile Include="Editing\NoReadOnlySections.cs">
|
||||
<DependentUpon>IReadOnlySectionProvider.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Editing\RectangleSelection.cs">
|
||||
<DependentUpon>Selection.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Editing\Selection.cs" />
|
||||
<Compile Include="Editing\SelectionColorizer.cs">
|
||||
<DependentUpon>Selection.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Editing\SelectionLayer.cs">
|
||||
<DependentUpon>Selection.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Editing\SelectionMouseHandler.cs">
|
||||
<DependentUpon>Selection.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Editing\SimpleSelection.cs">
|
||||
<DependentUpon>Selection.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Editing\TextArea.cs" />
|
||||
<Compile Include="Editing\TextAreaDefaultInputHandlers.cs" />
|
||||
<Compile Include="Editing\TextAreaInputHandler.cs" />
|
||||
<Compile Include="Editing\TextSegmentReadOnlySectionProvider.cs">
|
||||
<DependentUpon>IReadOnlySectionProvider.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Folding\NewFolding.cs" />
|
||||
<Compile Include="Folding\XmlFoldingStrategy.cs" />
|
||||
<Compile Include="Highlighting\DocumentHighlighter.cs" />
|
||||
<Compile Include="Highlighting\HighlightedInlineBuilder.cs" />
|
||||
<Compile Include="Highlighting\HighlightedLine.cs" />
|
||||
<Compile Include="Highlighting\HighlightedSection.cs" />
|
||||
<Compile Include="Highlighting\HighlightingBrush.cs" />
|
||||
<Compile Include="Highlighting\HighlightingColor.cs" />
|
||||
<Compile Include="Highlighting\HighlightingColorizer.cs" />
|
||||
<Compile Include="Highlighting\HighlightingDefinitionInvalidException.cs" />
|
||||
<Compile Include="Highlighting\HighlightingDefinitionTypeConverter.cs" />
|
||||
<Compile Include="Highlighting\HighlightingEngine.cs" />
|
||||
<Compile Include="Highlighting\HighlightingManager.cs" />
|
||||
<Compile Include="Highlighting\HtmlClipboard.cs" />
|
||||
<Compile Include="Highlighting\HtmlOptions.cs" />
|
||||
<Compile Include="Highlighting\HtmlRichTextWriter.cs" />
|
||||
<Compile Include="Highlighting\IHighlighter.cs" />
|
||||
<Compile Include="Highlighting\IHighlightingDefinition.cs" />
|
||||
<Compile Include="Highlighting\HighlightingRule.cs" />
|
||||
<Compile Include="Highlighting\Resources\Resources.cs" />
|
||||
<Compile Include="Highlighting\HighlightingRuleSet.cs" />
|
||||
<Compile Include="Highlighting\HighlightingSpan.cs" />
|
||||
<Compile Include="Highlighting\IHighlightingDefinitionReferenceResolver.cs">
|
||||
</Compile>
|
||||
<Compile Include="Highlighting\RichText.cs" />
|
||||
<Compile Include="Highlighting\RichTextColorizer.cs" />
|
||||
<Compile Include="Highlighting\RichTextModel.cs" />
|
||||
<Compile Include="Highlighting\RichTextModelWriter.cs" />
|
||||
<Compile Include="Highlighting\Xshd\HighlightingLoader.cs" />
|
||||
<Compile Include="Highlighting\Xshd\IXshdVisitor.cs" />
|
||||
<Compile Include="Highlighting\Xshd\SaveXshdVisitor.cs" />
|
||||
<Compile Include="Highlighting\Xshd\V1Loader.cs" />
|
||||
<Compile Include="Highlighting\Xshd\V2Loader.cs" />
|
||||
<Compile Include="Highlighting\Xshd\XmlHighlightingDefinition.cs" />
|
||||
<Compile Include="Highlighting\Xshd\XshdColor.cs" />
|
||||
<Compile Include="Highlighting\Xshd\XshdImport.cs" />
|
||||
<Compile Include="Highlighting\Xshd\XshdProperty.cs" />
|
||||
<Compile Include="Highlighting\Xshd\XshdReference.cs" />
|
||||
<Compile Include="Highlighting\Xshd\XshdElement.cs" />
|
||||
<Compile Include="Highlighting\Xshd\XshdKeywords.cs" />
|
||||
<Compile Include="Highlighting\Xshd\XshdRule.cs" />
|
||||
<Compile Include="Highlighting\Xshd\XshdRuleSet.cs" />
|
||||
<Compile Include="Highlighting\Xshd\XshdSpan.cs" />
|
||||
<Compile Include="Highlighting\Xshd\XshdSyntaxDefinition.cs" />
|
||||
<Compile Include="Indentation\CSharp\IndentationReformatter.cs" />
|
||||
<Compile Include="Indentation\CSharp\CSharpIndentationStrategy.cs" />
|
||||
<Compile Include="Indentation\CSharp\DocumentAccessor.cs" />
|
||||
<Compile Include="Indentation\DefaultIndentationStrategy.cs" />
|
||||
<Compile Include="Indentation\IIndentationStrategy.cs" />
|
||||
<Compile Include="Rendering\BackgroundGeometryBuilder.cs">
|
||||
<DependentUpon>IBackgroundRenderer.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Rendering\CollapsedLineSection.cs">
|
||||
<DependentUpon>HeightTree.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Rendering\ColorizingTransformer.cs">
|
||||
<DependentUpon>IVisualLineTransformer.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Rendering\ColumnRulerRenderer.cs" />
|
||||
<Compile Include="Rendering\CurrentLineHighlightRenderer.cs" />
|
||||
<Compile Include="Rendering\DefaultTextRunTypographyProperties.cs" />
|
||||
<Compile Include="Rendering\DocumentColorizingTransformer.cs">
|
||||
<DependentUpon>IVisualLineTransformer.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Rendering\FormattedTextElement.cs" />
|
||||
<Compile Include="Rendering\GlobalTextRunProperties.cs">
|
||||
<DependentUpon>TextView.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Rendering\HeightTree.cs" />
|
||||
<Compile Include="Rendering\HeightTreeLineNode.cs">
|
||||
<DependentUpon>HeightTree.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Rendering\HeightTreeNode.cs">
|
||||
<DependentUpon>HeightTree.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Rendering\IBackgroundRenderer.cs" />
|
||||
<Compile Include="Rendering\InlineObjectRun.cs" />
|
||||
<Compile Include="Rendering\ITextRunConstructionContext.cs">
|
||||
<DependentUpon>VisualLineElementGenerator.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Rendering\ITextViewConnect.cs">
|
||||
<DependentUpon>TextView.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Rendering\IVisualLineTransformer.cs" />
|
||||
<Compile Include="Rendering\Layer.cs">
|
||||
<DependentUpon>TextView.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Rendering\LayerPosition.cs">
|
||||
<DependentUpon>TextView.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Rendering\LinkElementGenerator.cs" />
|
||||
<Compile Include="Rendering\MouseHoverLogic.cs" />
|
||||
<Compile Include="Rendering\SimpleTextSource.cs">
|
||||
<DependentUpon>FormattedTextElement.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Rendering\SingleCharacterElementGenerator.cs" />
|
||||
<Compile Include="Rendering\TextLayer.cs">
|
||||
<DependentUpon>TextView.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Rendering\TextView.cs" />
|
||||
<Compile Include="Rendering\TextViewCachedElements.cs" />
|
||||
<Compile Include="Rendering\TextViewWeakEventManager.cs">
|
||||
<DependentUpon>TextView.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Rendering\VisualLine.cs" />
|
||||
<Compile Include="Rendering\VisualLineConstructionStartEventArgs.cs" />
|
||||
<Compile Include="Rendering\VisualLineElement.cs" />
|
||||
<Compile Include="Rendering\VisualLineElementGenerator.cs" />
|
||||
<Compile Include="Rendering\VisualLineElementTextRunProperties.cs">
|
||||
<DependentUpon>VisualLine.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Rendering\VisualLineLinkText.cs" />
|
||||
<Compile Include="Rendering\VisualLinesInvalidException.cs" />
|
||||
<Compile Include="Rendering\VisualLineText.cs" />
|
||||
<Compile Include="Rendering\VisualLineTextParagraphProperties.cs">
|
||||
<DependentUpon>VisualLine.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Rendering\VisualLineTextSource.cs">
|
||||
<DependentUpon>VisualLineElementGenerator.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Rendering\VisualYPosition.cs">
|
||||
<DependentUpon>VisualLine.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Search\Localization.cs" />
|
||||
<Compile Include="Search\RegexSearchStrategy.cs" />
|
||||
<Compile Include="Search\DropDownButton.cs" />
|
||||
<Compile Include="Search\ISearchStrategy.cs" />
|
||||
<Compile Include="Search\SearchCommands.cs" />
|
||||
<Compile Include="Search\SearchResultBackgroundRenderer.cs" />
|
||||
<Compile Include="Search\SearchPanel.cs">
|
||||
<SubType>Code</SubType>
|
||||
</Compile>
|
||||
<Compile Include="Search\SearchStrategyFactory.cs" />
|
||||
<Compile Include="Snippets\IActiveElement.cs" />
|
||||
<Compile Include="Snippets\SnippetAnchorElement.cs" />
|
||||
<Compile Include="Snippets\SnippetEventArgs.cs" />
|
||||
<Compile Include="Snippets\SnippetInputHandler.cs" />
|
||||
<Compile Include="Snippets\Snippet.cs" />
|
||||
<Compile Include="Snippets\SnippetBoundElement.cs" />
|
||||
<Compile Include="Snippets\SnippetCaretElement.cs" />
|
||||
<Compile Include="Snippets\SnippetContainerElement.cs" />
|
||||
<Compile Include="Snippets\SnippetElement.cs" />
|
||||
<Compile Include="Snippets\InsertionContext.cs" />
|
||||
<Compile Include="Snippets\SnippetReplaceableTextElement.cs" />
|
||||
<Compile Include="Snippets\SnippetSelectionElement.cs" />
|
||||
<Compile Include="Snippets\SnippetTextElement.cs" />
|
||||
<Compile Include="TextEditor.cs" />
|
||||
<Compile Include="TextEditorAutomationPeer.cs" />
|
||||
<Compile Include="TextEditorComponent.cs">
|
||||
</Compile>
|
||||
<Compile Include="Properties\AssemblyInfo.cs" />
|
||||
<Compile Include="Document\DocumentChangeEventArgs.cs" />
|
||||
<Compile Include="Document\GapTextBuffer.cs">
|
||||
<DependentUpon>TextDocument.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Document\LineManager.cs">
|
||||
<DependentUpon>TextDocument.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Document\DocumentLine.cs" />
|
||||
<Compile Include="Document\DocumentLineTree.cs">
|
||||
<DependentUpon>DocumentLine.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Document\TextDocument.cs" />
|
||||
<Compile Include="TextEditorOptions.cs" />
|
||||
<Compile Include="TextEditorWeakEventManager.cs">
|
||||
<DependentUpon>TextEditor.cs</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="TextViewPosition.cs" />
|
||||
<Compile Include="Utils\Boxes.cs" />
|
||||
<Compile Include="Utils\CallbackOnDispose.cs" />
|
||||
<Compile Include="Utils\CharRope.cs" />
|
||||
<Compile Include="Utils\CompressingTreeList.cs" />
|
||||
<Compile Include="Utils\Constants.cs" />
|
||||
<Compile Include="Utils\DelayedEvents.cs" />
|
||||
<Compile Include="Utils\Deque.cs" />
|
||||
<Compile Include="Utils\DocumentPrinter.cs" />
|
||||
<Compile Include="Utils\Empty.cs" />
|
||||
<Compile Include="Utils\ExtensionMethods.cs" />
|
||||
<Compile Include="Utils\FileReader.cs" />
|
||||
<Compile Include="Utils\IFreezable.cs" />
|
||||
<Compile Include="Utils\ImmutableStack.cs" />
|
||||
<Compile Include="Utils\NullSafeCollection.cs" />
|
||||
<Compile Include="Utils\ObserveAddRemoveCollection.cs" />
|
||||
<Compile Include="Utils\PlainRichTextWriter.cs" />
|
||||
<Compile Include="Utils\PropertyChangedWeakEventManager.cs" />
|
||||
<Compile Include="Utils\RichTextWriter.cs" />
|
||||
<Compile Include="Utils\Rope.cs" />
|
||||
<Compile Include="Utils\RopeNode.cs" />
|
||||
<Compile Include="Utils\RopeTextReader.cs" />
|
||||
<Compile Include="Utils\StringSegment.cs" />
|
||||
<Compile Include="Utils\TextFormatterFactory.cs" />
|
||||
<Compile Include="Utils\WeakEventManagerBase.cs" />
|
||||
<Compile Include="Utils\PixelSnapHelpers.cs" />
|
||||
<Compile Include="Utils\ThrowUtil.cs" />
|
||||
<Compile Include="Utils\Win32.cs" />
|
||||
<CodeAnalysisDictionary Include="Properties\CodeAnalysisDictionary.xml" />
|
||||
<Resource Include="themes\RightArrow.cur" />
|
||||
<EmbeddedResource Include="Highlighting\Resources\ASPX.xshd" />
|
||||
<EmbeddedResource Include="Highlighting\Resources\Boo.xshd" />
|
||||
<EmbeddedResource Include="Highlighting\Resources\Coco-Mode.xshd" />
|
||||
<EmbeddedResource Include="Highlighting\Resources\CPP-Mode.xshd" />
|
||||
<EmbeddedResource Include="Highlighting\Resources\HTML-Mode.xshd" />
|
||||
<EmbeddedResource Include="Highlighting\Resources\Java-Mode.xshd" />
|
||||
<EmbeddedResource Include="Highlighting\Resources\JavaScript-Mode.xshd" />
|
||||
<EmbeddedResource Include="Highlighting\Resources\Patch-Mode.xshd" />
|
||||
<EmbeddedResource Include="Highlighting\Resources\PHP-Mode.xshd" />
|
||||
<EmbeddedResource Include="Highlighting\Resources\Python-Mode.xshd" />
|
||||
<EmbeddedResource Include="Highlighting\Resources\Tex-Mode.xshd" />
|
||||
<EmbeddedResource Include="Highlighting\Resources\VB-Mode.xshd" />
|
||||
<EmbeddedResource Include="Highlighting\Resources\XML-Mode.xshd" />
|
||||
<EmbeddedResource Include="Highlighting\Resources\ModeV1.xsd" />
|
||||
<EmbeddedResource Include="Highlighting\Resources\ModeV2.xsd" />
|
||||
<EmbeddedResource Include="Highlighting\Resources\CSharp-Mode.xshd" />
|
||||
<EmbeddedResource Include="Highlighting\Resources\XmlDoc.xshd" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Page Include="CodeCompletion\CompletionList.xaml" />
|
||||
<Page Include="CodeCompletion\InsightWindow.xaml" />
|
||||
<Page Include="Search\SearchPanel.xaml">
|
||||
<DependentUpon>SearchPanel.cs</DependentUpon>
|
||||
</Page>
|
||||
<Page Include="Search\DropDownButton.xaml">
|
||||
<DependentUpon>DropDownButton.cs</DependentUpon>
|
||||
</Page>
|
||||
<Page Include="TextEditor.xaml" />
|
||||
<Page Include="themes\generic.xaml" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<EmbeddedResource Include="Highlighting\Resources\CSS-Mode.xshd" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<None Remove="Search\next.png" />
|
||||
<None Remove="Search\prev.png" />
|
||||
<None Remove="themes\RightArrow.cur" />
|
||||
<Resource Include="Search\next.png" />
|
||||
<Resource Include="Search\prev.png" />
|
||||
<Resource Include="themes\RightArrow.cur" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<EmbeddedResource Include="Highlighting\Resources\PowerShell.xshd" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<EmbeddedResource Include="Highlighting\Resources\MarkDown-Mode.xshd" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<EmbeddedResource Include="Highlighting\Resources\TSQL-Mode.xshd" />
|
||||
<None Remove="Highlighting\Resources\*" />
|
||||
<EmbeddedResource Include="Highlighting\Resources\*" />
|
||||
<EmbeddedResource Remove="Highlighting\Resources\Resources.cs" />
|
||||
<Resource Include="Highlighting\Resources\Resources.cs" />
|
||||
<PackageReference Include="Microsoft.SourceLink.GitHub" Version="1.0.0-beta2-18618-05">
|
||||
<PrivateAssets>all</PrivateAssets>
|
||||
<IncludeAssets>runtime; build; native; contentfiles; analyzers; buildtransitive</IncludeAssets>
|
||||
</PackageReference>
|
||||
</ItemGroup>
|
||||
</Project>
|
|
@ -31,11 +31,6 @@ using System.Windows.Markup;
|
|||
// General Information about an assembly is controlled through the following
|
||||
// set of attributes. Change these attribute values to modify the information
|
||||
// associated with an assembly.
|
||||
[assembly: AssemblyTitle("ICSharpCode.AvalonEdit")]
|
||||
[assembly: AssemblyDescription("WPF-based extensible text editor")]
|
||||
[assembly: AssemblyConfiguration("")]
|
||||
[assembly: AssemblyTrademark("")]
|
||||
[assembly: AssemblyCulture("")]
|
||||
|
||||
[assembly: CLSCompliant(true)]
|
||||
|
||||
|
@ -51,10 +46,6 @@ using System.Windows.Markup;
|
|||
)]
|
||||
|
||||
[assembly: System.Runtime.InteropServices.ComVisible(false)]
|
||||
[assembly: AssemblyCompany("ic#code")]
|
||||
[assembly: AssemblyProduct("SharpDevelop")]
|
||||
[assembly: AssemblyCopyright("2000-2014 AlphaSierraPapa for the SharpDevelop Team")]
|
||||
[assembly: AssemblyVersion("5.0.3")]
|
||||
[assembly: NeutralResourcesLanguage("en-US")]
|
||||
|
||||
[assembly: XmlnsPrefix("http://icsharpcode.net/sharpdevelop/avalonedit", "avalonedit")]
|
||||
|
|
|
@ -66,23 +66,6 @@ namespace ICSharpCode.AvalonEdit.Rendering
|
|||
/// </summary>
|
||||
public double BorderThickness { get; set; }
|
||||
|
||||
bool alignToMiddleOfPixels;
|
||||
|
||||
/// <summary>
|
||||
/// Gets/Sets whether to align the geometry to the middle of pixels.
|
||||
/// </summary>
|
||||
[Obsolete("Use the AlignToWholePixels and BorderThickness properties instead. "
|
||||
+ "Setting AlignToWholePixels=true and setting the BorderThickness to the pixel size "
|
||||
+ "is equivalent to aligning the geometry to the middle of pixels.")]
|
||||
public bool AlignToMiddleOfPixels {
|
||||
get {
|
||||
return alignToMiddleOfPixels;
|
||||
}
|
||||
set {
|
||||
alignToMiddleOfPixels = value;
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Gets/Sets whether to extend the rectangles to full width at line end.
|
||||
/// </summary>
|
||||
|
@ -113,7 +96,7 @@ namespace ICSharpCode.AvalonEdit.Rendering
|
|||
/// </summary>
|
||||
/// <remarks>
|
||||
/// This overload will align the coordinates according to
|
||||
/// <see cref="AlignToWholePixels"/> or <see cref="AlignToMiddleOfPixels"/>.
|
||||
/// <see cref="AlignToWholePixels"/>.
|
||||
/// Use the <see cref="AddRectangle(double,double,double,double)"/>-overload instead if the coordinates should not be aligned.
|
||||
/// </remarks>
|
||||
public void AddRectangle(TextView textView, Rect rectangle)
|
||||
|
@ -130,11 +113,6 @@ namespace ICSharpCode.AvalonEdit.Rendering
|
|||
PixelSnapHelpers.Round(r.Right + halfBorder, pixelSize.Width) - halfBorder,
|
||||
PixelSnapHelpers.Round(r.Bottom + halfBorder, pixelSize.Height) - halfBorder);
|
||||
//Debug.WriteLine(r.ToString() + " -> " + new Rect(lastLeft, lastTop, lastRight-lastLeft, lastBottom-lastTop).ToString());
|
||||
} else if (alignToMiddleOfPixels) {
|
||||
AddRectangle(PixelSnapHelpers.PixelAlign(r.Left, pixelSize.Width),
|
||||
PixelSnapHelpers.PixelAlign(r.Top, pixelSize.Height),
|
||||
PixelSnapHelpers.PixelAlign(r.Right, pixelSize.Width),
|
||||
PixelSnapHelpers.PixelAlign(r.Bottom, pixelSize.Height));
|
||||
} else {
|
||||
AddRectangle(r.Left, r.Top, r.Right, r.Bottom);
|
||||
}
|
||||
|
@ -312,7 +290,7 @@ namespace ICSharpCode.AvalonEdit.Rendering
|
|||
/// </summary>
|
||||
/// <remarks>
|
||||
/// This overload assumes that the coordinates are aligned properly
|
||||
/// (see <see cref="AlignToWholePixels"/>, <see cref="AlignToMiddleOfPixels"/>).
|
||||
/// (see <see cref="AlignToWholePixels"/>).
|
||||
/// Use the <see cref="AddRectangle(TextView,Rect)"/>-overload instead if the coordinates are not yet aligned.
|
||||
/// </remarks>
|
||||
public void AddRectangle(double left, double top, double right, double bottom)
|
||||
|
|
|
@ -64,18 +64,7 @@ namespace ICSharpCode.AvalonEdit.Search
|
|||
/// TextAreaInputHandler that registers all search-related commands.
|
||||
/// </summary>
|
||||
public class SearchInputHandler : TextAreaInputHandler
|
||||
{
|
||||
/// <summary>
|
||||
/// Creates a new SearchInputHandler and registers the search-related commands.
|
||||
/// </summary>
|
||||
[Obsolete("Use SearchPanel.Install instead")]
|
||||
public SearchInputHandler(TextArea textArea)
|
||||
: base(textArea)
|
||||
{
|
||||
RegisterCommands(this.CommandBindings);
|
||||
panel = SearchPanel.Install(textArea);
|
||||
}
|
||||
|
||||
{
|
||||
internal SearchInputHandler(TextArea textArea, SearchPanel panel)
|
||||
: base(textArea)
|
||||
{
|
||||
|
|
|
@ -184,17 +184,6 @@ namespace ICSharpCode.AvalonEdit.Search
|
|||
{
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Attaches this SearchPanel to a TextArea instance.
|
||||
/// </summary>
|
||||
[Obsolete("Use the Install method instead")]
|
||||
public void Attach(TextArea textArea)
|
||||
{
|
||||
if (textArea == null)
|
||||
throw new ArgumentNullException("textArea");
|
||||
AttachInternal(textArea);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Creates a SearchPanel and installs it to the TextEditor's TextArea.
|
||||
/// </summary>
|
||||
|
@ -233,7 +222,10 @@ namespace ICSharpCode.AvalonEdit.Search
|
|||
/// </summary>
|
||||
public void Uninstall()
|
||||
{
|
||||
CloseAndRemove();
|
||||
Close();
|
||||
textArea.DocumentChanged -= textArea_DocumentChanged;
|
||||
if (currentDocument != null)
|
||||
currentDocument.TextChanged -= textArea_Document_TextChanged;
|
||||
textArea.DefaultInputHandler.NestedInputHandlers.Remove(handler);
|
||||
}
|
||||
|
||||
|
@ -425,19 +417,7 @@ namespace ICSharpCode.AvalonEdit.Search
|
|||
// Clear existing search results so that the segments don't have to be maintained
|
||||
renderer.CurrentResults.Clear();
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Closes the SearchPanel and removes it.
|
||||
/// </summary>
|
||||
[Obsolete("Use the Uninstall method instead!")]
|
||||
public void CloseAndRemove()
|
||||
{
|
||||
Close();
|
||||
textArea.DocumentChanged -= textArea_DocumentChanged;
|
||||
if (currentDocument != null)
|
||||
currentDocument.TextChanged -= textArea_Document_TextChanged;
|
||||
}
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// Opens the an existing search panel.
|
||||
/// </summary>
|
||||
|
|
|
@ -396,18 +396,6 @@ namespace ICSharpCode.AvalonEdit.Utils
|
|||
int runLength = GetNode(ref indexInRun).count;
|
||||
return index - indexInRun + runLength;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Gets the number of elements after <paramref name="index"/> that have the same value as each other.
|
||||
/// </summary>
|
||||
[Obsolete("This method may be confusing as it returns only the remaining run length after index. " +
|
||||
"Use GetStartOfRun/GetEndOfRun instead.")]
|
||||
public int GetRunLength(int index)
|
||||
{
|
||||
if (index < 0 || index >= this.Count)
|
||||
throw new ArgumentOutOfRangeException("index", index, "Value must be between 0 and " + (this.Count - 1));
|
||||
return GetNode(ref index).count - index;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// Applies the conversion function to all elements in this CompressingTreeList.
|
||||
|
|
16
README.md
16
README.md
|
@ -1,6 +1,6 @@
|
|||
# AvalonEdit
|
||||
|
||||
AvalonEdit is the name of the WPF-based text editor in SharpDevelop 4.x "Mirador" and beyond.
|
||||
AvalonEdit is the name of the WPF-based text editor in SharpDevelop 4.x "Mirador" and beyond. It is also being used in ILSpy and many other projects.
|
||||
|
||||
[avalonedit.net](http://avalonedit.net/)
|
||||
|
||||
|
@ -11,6 +11,20 @@ Downloads
|
|||
AvalonEdit is available as [NuGet package](https://www.nuget.org/packages/AvalonEdit). Usage details, documentation and more
|
||||
can be found on the [AvalonEdit homepage](http://avalonedit.net/)
|
||||
|
||||
How to build
|
||||
-------
|
||||
|
||||
AvalonEdit is targeting netcoreapp3.0, net40 and net45 TFMs. Because of netcoreapp3.0 you must have .NET Core 3.0 SDK (currently in preview) installed
|
||||
on your machine. Visual Studio 2019 is required for working with the solution (global.json will select the proper SDK to use for building for you).
|
||||
|
||||
|
||||
Documentation
|
||||
-------
|
||||
To build the Documentation you need to install Sandcastle from https://github.com/EWSoftware/SHFB/releases (currently validated tooling is
|
||||
v2019.4.14.0)
|
||||
|
||||
The build of the Documentation can take very long, please be patient.
|
||||
|
||||
|
||||
License
|
||||
-------
|
||||
|
|
30
appveyor.yml
30
appveyor.yml
|
@ -1,11 +1,31 @@
|
|||
version: 1.0.{build}
|
||||
configuration: Debug
|
||||
platform: Net40
|
||||
version: '6.0.{build}'
|
||||
|
||||
dotnet_csproj:
|
||||
patch: true
|
||||
file: '**\*.csproj'
|
||||
version: '6.0-netcore3p5alpha2'
|
||||
assembly_version: '{version}'
|
||||
file_version: '{version}'
|
||||
|
||||
configuration:
|
||||
- Debug
|
||||
- Release
|
||||
|
||||
image: Visual Studio 2019 Preview
|
||||
|
||||
install:
|
||||
- cmd: choco install dotnetcore-sdk --pre
|
||||
|
||||
before_build:
|
||||
- nuget restore ICSharpCode.AvalonEdit.sln
|
||||
- nuget restore ICSharpCode.AvalonEdit.sln
|
||||
|
||||
build:
|
||||
project: ICSharpCode.AvalonEdit.sln
|
||||
parallel: true
|
||||
verbosity: minimal
|
||||
publish_nuget: true
|
||||
publish_nuget_symbols: true
|
||||
use_snupkg_format: true
|
||||
|
||||
after_test:
|
||||
- python ICSharpCode.AvalonEdit.Tests\tidy.py
|
||||
- python ICSharpCode.AvalonEdit.Tests\tidy.py
|
|
@ -0,0 +1,5 @@
|
|||
{
|
||||
"sdk": {
|
||||
"version": "3.0.100-preview4"
|
||||
}
|
||||
}
|
|
@ -1,30 +0,0 @@
|
|||
<?xml version="1.0"?>
|
||||
<package xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
|
||||
<metadata xmlns="http://schemas.microsoft.com/packaging/2010/07/nuspec.xsd">
|
||||
<id>AvalonEdit.Sample</id>
|
||||
<version>5.0.4</version>
|
||||
<authors>Daniel Grunwald</authors>
|
||||
<owners>SharpDevelop</owners>
|
||||
<licenseUrl>http://opensource.org/licenses/MIT</licenseUrl>
|
||||
<projectUrl>http://www.avalonedit.net</projectUrl>
|
||||
<iconUrl>http://community.sharpdevelop.net/blogs/mattward/SharpDevelop.png</iconUrl>
|
||||
<requireLicenseAcceptance>false</requireLicenseAcceptance>
|
||||
<description>Sample code for AvalonEdit the WPF-based text editor used in SharpDevelop.
|
||||
Modify your App.xaml file so the StartupUri points to the AvalonEdit Sample window:
|
||||
|
||||
StartupUri="/Samples/AvalonEdit/Window1.xaml"</description>
|
||||
<summary>Sample code for AvalonEdit the WPF-based text editor used in SharpDevelop.</summary>
|
||||
<language>en-US</language>
|
||||
<dependencies>
|
||||
<dependency id="AvalonEdit" version="5.0.4" />
|
||||
</dependencies>
|
||||
<frameworkAssemblies>
|
||||
<frameworkAssembly assemblyName="System.Windows.Forms" />
|
||||
<frameworkAssembly assemblyName="WindowsFormsIntegration" />
|
||||
</frameworkAssemblies>
|
||||
<tags>WPF Text Editor SharpDevelop AvalonEdit</tags>
|
||||
</metadata>
|
||||
<files>
|
||||
<file src="..\..\ICSharpCode.AvalonEdit.Sample\**\*.cs" target="src" />
|
||||
</files>
|
||||
</package>
|
|
@ -1,40 +0,0 @@
|
|||
<?xml version="1.0"?>
|
||||
<package xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
|
||||
<metadata xmlns="http://schemas.microsoft.com/packaging/2010/07/nuspec.xsd">
|
||||
<id>AvalonEdit</id>
|
||||
<version>5.0.4</version>
|
||||
<authors>Daniel Grunwald</authors>
|
||||
<owners>SharpDevelop</owners>
|
||||
<licenseUrl>http://opensource.org/licenses/MIT</licenseUrl>
|
||||
<projectUrl>http://www.avalonedit.net</projectUrl>
|
||||
<iconUrl>http://community.sharpdevelop.net/blogs/mattward/SharpDevelop.png</iconUrl>
|
||||
<requireLicenseAcceptance>false</requireLicenseAcceptance>
|
||||
<description>AvalonEdit is the WPF-based text editor used in SharpDevelop. There are two builds of AvalonEdit included in this package. One that targets .NET 4.0 and one that targets .NET 3.5.</description>
|
||||
<summary>AvalonEdit is the WPF-based text editor used in SharpDevelop</summary>
|
||||
<releaseNotes>
|
||||
* License changed from LGPL to MIT
|
||||
* New Feature: Hide mouse cursor while typing (enabled by default)
|
||||
* New Feature: Highlight current line (disabled by default)
|
||||
* New Feature: Overstrike mode (disabled by default)
|
||||
* New Feature: 'underline' attribute in syntax highlighting definitions
|
||||
* AvalonEdit now raises the WPF DataObject attached events on clipboard and drag'n'drop operations.
|
||||
* Encoding detection now distinguishes between UTF-8 with BOM and UTF-8 without BOM. This prevents AvalonEdit from adding the BOM to existing UTF-8 files.
|
||||
* Improved handling of grapheme clusters. A base character followed by a combining mark is now treated as a single character by the caret movement logic.
|
||||
* Added RichText, RichTextModel and RichTextColorizer.
|
||||
* Renamed the VB highlighting mode from "VBNET" to "VB"
|
||||
* Changed IHighlighter API in order to support SharpDevelop's semantic C# highlighter
|
||||
* The regex-based highlighting engine was moved into its own class (HighlightingEngine) to be separated from the state-tracking logic in DocumentHighlighter.
|
||||
* Add FileName property to TextDocument class.
|
||||
* DocumentChangeEventArgs.RemovedText/InsertedText are now of type ITextSource instead of string.
|
||||
* The error-tolerant XML parser included with AvalonEdit was removed. An improved version of this parser is part of the NRefactory 5 project.
|
||||
* Removed some obsolete APIs.
|
||||
</releaseNotes>
|
||||
<language>en-US</language>
|
||||
<tags>WPF Text Editor SharpDevelop AvalonEdit</tags>
|
||||
</metadata>
|
||||
<files>
|
||||
<file src="lib\Net35\*.*" target="lib\Net35" />
|
||||
<file src="lib\Net40\*.*" target="lib\Net40" />
|
||||
<file src="..\..\ICSharpCode.AvalonEdit\**\*.cs" target="src" />
|
||||
</files>
|
||||
</package>
|
|
@ -1,45 +0,0 @@
|
|||
@ECHO OFF
|
||||
SETLOCAL
|
||||
cd %~dp0
|
||||
SET msbuild=%windir%\microsoft.net\framework\v4.0.30319\msbuild
|
||||
SET documentation=..\Documentation
|
||||
SET project=..\ICSharpCode.AvalonEdit\ICSharpCode.AvalonEdit.csproj
|
||||
SET buildoptions=/t:Rebuild /p:Configuration=Release /p:DebugType=PdbOnly
|
||||
|
||||
@echo Using this script requires nuget.exe to be in the PATH, and that Sandcastle Help File Builder is installed.
|
||||
|
||||
@ECHO ON
|
||||
:Clean debug build
|
||||
%msbuild% /m %project% /t:Clean /p:Configuration=Debug /p:OutputPath=%~dp0\AvalonEdit\lib\Net40
|
||||
@if %errorlevel% neq 0 exit /B 1
|
||||
|
||||
:Normal build without modified output path; used by SHFB
|
||||
%msbuild% /m %project% %buildoptions% /p:Platform=Net40
|
||||
@if %errorlevel% neq 0 exit /B 1
|
||||
|
||||
:BUILD .NET 4.0 version
|
||||
%msbuild% /m %project% %buildoptions% /p:Platform=Net40 /p:OutputPath=%~dp0\AvalonEdit\lib\Net40
|
||||
@if %errorlevel% neq 0 exit /B 1
|
||||
|
||||
:BUILD .NET 3.5 version
|
||||
%msbuild% /m %project% %buildoptions% /p:Platform=Net35 "/p:DefineConstants=TRACE" /p:OutputPath=%~dp0\AvalonEdit\lib\Net35
|
||||
@if %errorlevel% neq 0 exit /B 1
|
||||
|
||||
@echo Building documentation with SHFB (for processing <inheritdoc/>)
|
||||
%msbuild% %documentation%\ICSharpCode.AvalonEdit.shfbproj /p:Configuration=Release
|
||||
@if %errorlevel% neq 0 exit /B 1
|
||||
|
||||
copy /Y %documentation%\IntelliSense\ICSharpCode.AvalonEdit.xml AvalonEdit\lib\Net35\ICSharpCode.AvalonEdit.xml
|
||||
@if errorlevel 1 exit /B 1
|
||||
copy /Y %documentation%\IntelliSense\ICSharpCode.AvalonEdit.xml AvalonEdit\lib\Net40\ICSharpCode.AvalonEdit.xml
|
||||
@if errorlevel 1 exit /B 1
|
||||
|
||||
mkdir AvalonEdit
|
||||
nuget.exe pack AvalonEdit.nuspec -Symbols -BasePath AvalonEdit -OutputDirectory AvalonEdit
|
||||
@if %errorlevel% neq 0 exit /B 1
|
||||
mkdir AvalonEdit.Sample
|
||||
nuget.exe pack AvalonEdit.Sample.nuspec -BasePath AvalonEdit.Sample -OutputDirectory AvalonEdit.Sample
|
||||
@if %errorlevel% neq 0 exit /B 1
|
||||
|
||||
@ECHO OFF
|
||||
ENDLOCAL
|
|
@ -1,16 +0,0 @@
|
|||
The required version of SHFB is located at:
|
||||
|
||||
https://github.com/icsharpcode/SharpDevelop-Vendor/tree/master/SHFB
|
||||
|
||||
Please install SandcastleHelpFileBuilder.msi from this zip.
|
||||
|
||||
Before running the buildpackage.cmd, you might need to set an environment variable:
|
||||
|
||||
set SHFBROOT=C:\Program Files (x86)\EWSoftware\Sandcastle Help File Builder
|
||||
|
||||
*
|
||||
|
||||
Publishing the NuGet package: use nuget push for the main package (necessary for automatically uploading symbols)
|
||||
|
||||
http://www.symbolsource.org/Public/Wiki/Publishing
|
||||
|
|
@ -1,4 +0,0 @@
|
|||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<repositories>
|
||||
<repository path="..\ICSharpCode.AvalonEdit.Tests\packages.config" />
|
||||
</repositories>
|
Загрузка…
Ссылка в новой задаче