diff --git a/Directory.Build.props b/Directory.Build.props index 5da6d0ed..f59c8bdc 100644 --- a/Directory.Build.props +++ b/Directory.Build.props @@ -7,7 +7,7 @@ true true - 12.0.0 + 12.0.0-iuv2001 Avalonia Team Copyright 2017-$([System.DateTime]::Now.ToString(`yyyy`)) © The AvaloniaUI Project https://github.com/AvaloniaUI/AvaloniaEdit/ @@ -16,6 +16,8 @@ snupkg $(MSBuildThisFileDirectory)\avalonia.snk true + $(SolutionDir)AvaloniaEdit-Package\ + True @@ -28,4 +30,4 @@ - + \ No newline at end of file diff --git a/NuGet.config b/NuGet.config index 6fe0770f..0a51acda 100644 --- a/NuGet.config +++ b/NuGet.config @@ -1,12 +1,8 @@  - - + + + - - - - - diff --git a/src/AvaloniaEdit.Demo/MainWindow.axaml.cs b/src/AvaloniaEdit.Demo/MainWindow.axaml.cs index 3735f260..676ce7b5 100644 --- a/src/AvaloniaEdit.Demo/MainWindow.axaml.cs +++ b/src/AvaloniaEdit.Demo/MainWindow.axaml.cs @@ -1,12 +1,15 @@ using System; using System.Collections.Generic; using System.ComponentModel; +using System.Linq; using System.Runtime.CompilerServices; using Avalonia; using Avalonia.Controls; using Avalonia.Input; using Avalonia.Interactivity; +using Avalonia.Markup.Xaml; using Avalonia.Media; +using Avalonia.Media.Imaging; using AvaloniaEdit.CodeCompletion; using AvaloniaEdit.Demo.Resources; using AvaloniaEdit.Document; @@ -15,6 +18,7 @@ using AvaloniaEdit.Rendering; using AvaloniaEdit.TextMate; using TextMateSharp.Grammars; +using Avalonia.Diagnostics; using Avalonia.Layout; using AvaloniaEdit.Snippets; using Snippet = AvaloniaEdit.Snippets.Snippet; @@ -23,12 +27,18 @@ namespace AvaloniaEdit.Demo { using Pair = KeyValuePair; - public partial class MainWindow : Window + public class MainWindow : Window { + private readonly TextEditor _textEditor; private FoldingManager _foldingManager; private readonly TextMate.TextMate.Installation _textMateInstallation; private CompletionWindow _completionWindow; private OverloadInsightWindow _insightWindow; + private Button _addControlButton; + private Button _clearControlButton; + private Button _insertSnippetButton; + private ComboBox _syntaxModeCombo; + private TextBlock _statusTextBlock; private ElementGenerator _generator = new ElementGenerator(); private RegistryOptions _registryOptions; private int _currentTheme = (int)ThemeName.DarkPlus; @@ -38,60 +48,73 @@ public MainWindow() { InitializeComponent(); - Editor.HorizontalScrollBarVisibility = Avalonia.Controls.Primitives.ScrollBarVisibility.Visible; - Editor.Background = Brushes.Transparent; - Editor.ShowLineNumbers = true; - Editor.TextArea.Background = this.Background; - Editor.TextArea.TextEntered += textEditor_TextArea_TextEntered; - Editor.TextArea.TextEntering += textEditor_TextArea_TextEntering; - Editor.Options.AllowToggleOverstrikeMode = true; - Editor.Options.EnableTextDragDrop = true; - Editor.Options.ShowBoxForControlCharacters = true; - Editor.Options.ColumnRulerPositions = new List() { 80, 100 }; - Editor.TextArea.IndentationStrategy = new Indentation.CSharp.CSharpIndentationStrategy(Editor.Options); - Editor.TextArea.Caret.PositionChanged += Caret_PositionChanged; - Editor.TextArea.RightClickMovesCaret = true; - Editor.Options.HighlightCurrentLine = true; - Editor.Options.CompletionAcceptAction = CompletionAcceptAction.DoubleTapped; - - AddControlBtn.Click += AddControlButton_Click; - ClearControlBtn.Click += ClearControlButton_Click; - InsertSnippetBtn.Click += InsertSnippetButton_Click; - - Editor.TextArea.TextView.ElementGenerators.Add(_generator); + this.AttachDevTools(); + + _textEditor = this.FindControl("Editor"); + _textEditor.HorizontalScrollBarVisibility = Avalonia.Controls.Primitives.ScrollBarVisibility.Visible; + _textEditor.Background = Brushes.Transparent; + _textEditor.ShowLineNumbers = true; + _textEditor.TextArea.Background = this.Background; + _textEditor.TextArea.TextEntered += textEditor_TextArea_TextEntered; + _textEditor.TextArea.TextEntering += textEditor_TextArea_TextEntering; + _textEditor.Options.AllowToggleOverstrikeMode = true; + _textEditor.Options.EnableTextDragDrop = true; + _textEditor.Options.ShowSpaces = false; + _textEditor.Options.ShowLeadingSpaces = true; + _textEditor.Options.ShowBoxForControlCharacters = true; + _textEditor.Options.ColumnRulerPositions = new List() { 80, 100 }; + _textEditor.TextArea.IndentationStrategy = new Indentation.CSharp.CSharpIndentationStrategy(_textEditor.Options); + _textEditor.TextArea.Caret.PositionChanged += Caret_PositionChanged; + _textEditor.TextArea.RightClickMovesCaret = true; + _textEditor.Options.HighlightCurrentLine = true; + _textEditor.Options.CompletionAcceptAction = CompletionAcceptAction.DoubleTapped; + + _addControlButton = this.FindControl