From d33c19b3ac6803de4b5c8d475832efef131c1a45 Mon Sep 17 00:00:00 2001 From: Roy Ben Shabat Date: Wed, 30 Dec 2020 15:11:34 +0000 Subject: Revert "Hope it is fine" --- .../Tango.Scripting.Basic/CompilationError.cs | 20 + .../Tango.Scripting.Basic/CompilationResult.cs | 21 + .../Tango.Scripting.Basic/GlobalObject.cs | 13 + .../Scripting/Tango.Scripting.Basic/IContext.cs | 13 + .../Scripting/Tango.Scripting.Basic/Project.cs | 259 +++ .../Tango.Scripting.Basic/ProjectSession.cs | 65 + .../Tango.Scripting.Basic/ProjectSessionState.cs | 16 + .../ProjectSessionStateChangedEventArgs.cs | 17 + .../Properties/AssemblyInfo.cs | 55 + .../Properties/Resources.Designer.cs | 73 + .../Properties/Resources.resx | 124 ++ .../Properties/Settings.Designer.cs | 30 + .../Properties/Settings.settings | 7 + .../Tango.Scripting.Basic/ReferenceAssembly.cs | 88 + .../Tango.Scripting.Basic/Resources/template.csx | 16 + .../Scripting/Tango.Scripting.Basic/Script.cs | 80 + .../Tango.Scripting.Basic.csproj | 185 ++ .../Tango.Scripting.Basic/Themes/Generic.xaml | 6 + .../Scripting/Tango.Scripting.Basic/app.config | 47 + .../Tango.Scripting.Basic/packages.config | 52 + .../Scripting/Tango.Scripting.Core/BreakPoint.cs | 14 + .../Tango.Scripting.Core/IScriptSource.cs | 13 + .../Properties/AssemblyInfo.cs | 36 + .../Tango.Scripting.Core/ScriptBreakPoint.cs | 23 + .../Tango.Scripting.Core/ScriptBreakPointSymbol.cs | 16 + .../Tango.Scripting.Core.csproj | 51 + .../BreakPointSymbolPressedEventArgs.cs | 16 + .../Tango.Scripting.Editors/CachedAssembly.cs | 21 + .../Tango.Scripting.Editors/CachedUsing.cs | 20 + .../Document/TextDocument.cs | 1695 +++++++------- .../Tango.Scripting.Editors/Document/UndoStack.cs | 2 +- .../Editing/BreakPointMargin.cs | 285 +++ .../Tango.Scripting.Editors/Errors/ITextMarker.cs | 169 ++ .../Errors/TextMarkerService.cs | 365 +++ .../Tango.Scripting.Editors/ExtensionMethods.cs | 2 +- .../Highlighting/OffsetColorizer.cs | 2 +- .../Highlighting/Resources/CSharp-Mode.xshd | 29 +- .../Highlighting/Resources/MarkDown-Mode.xshd | 7 - .../Highlighting/Resources/XML-Mode.xshd | 14 +- .../Images/break_point_arrow.png | Bin 0 -> 453 bytes .../Tango.Scripting.Editors/Images/event.png | Bin 0 -> 210 bytes .../Tango.Scripting.Editors/Images/snippet.png | Bin 0 -> 147 bytes .../Intellisense/CompletionItem.cs | 7 +- .../Intellisense/EventCompletionItem.cs | 22 + .../Intellisense/HideIntellisenseAttribute.cs | 12 + .../Intellisense/KnownType.cs | 75 +- .../Intellisense/KnownTypeEvent.cs | 21 + .../Intellisense/KnownTypeMethod.cs | 2 + .../Intellisense/SnippetCompletionItem.cs | 26 + .../Tango.Scripting.Editors/Intellisense/Utils.cs | 14 +- .../Tango.Scripting.Editors/Rendering/TextView.cs | 2 +- .../Tango.Scripting.Editors/ScriptEditor.cs | 2099 ++++++++++++++---- .../Tango.Scripting.Editors.csproj | 33 +- .../Tango.Scripting.Editors_di35u2uj_wpftmp.csproj | 628 ++++++ .../Tango.Scripting.Editors/TextEditor.cs | 2343 ++++++++++---------- .../Tango.Scripting.Editors/Themes/Generic.xaml | 107 +- .../Tango.Scripting.Editors/XamlEditor.cs | 47 + .../Scripting/Tango.Scripting.Editors/app.config | 8 + .../Tango.Scripting.Editors/packages.config | 1 + .../Tango.Scripting.Formatting/CodeFormatter.cs | 61 + .../Properties/AssemblyInfo.cs | 36 + .../Tango.Scripting.Formatting.csproj | 160 ++ .../Tango.Scripting.Formatting/app.config | 47 + .../Tango.Scripting.Formatting/packages.config | 61 + .../Scripting/Tango.Scripting.Test/App.config | 6 + .../Scripting/Tango.Scripting.Test/App.xaml | 9 + .../Scripting/Tango.Scripting.Test/App.xaml.cs | 17 + .../Scripting/Tango.Scripting.Test/MainWindow.xaml | 38 + .../Tango.Scripting.Test/MainWindow.xaml.cs | 39 + .../Scripting/Tango.Scripting.Test/MainWindowVM.cs | 69 + .../Properties/AssemblyInfo.cs | 55 + .../Properties/Resources.Designer.cs | 73 + .../Tango.Scripting.Test/Properties/Resources.resx | 124 ++ .../Properties/Settings.Designer.cs | 30 + .../Properties/Settings.settings | 7 + .../Tango.Scripting.Test/Resources/template.csx | 18 + .../Tango.Scripting.Test.csproj | 132 ++ .../Scripting/Tango.Scripting.Test/lib.csx | 13 + .../Tango.Scripting/Parsing/ScriptParser.cs | 140 +- .../Tango.Scripting/Parsing/ScriptSymbol.cs | 4 + 80 files changed, 8020 insertions(+), 2533 deletions(-) create mode 100644 Software/Visual_Studio/Scripting/Tango.Scripting.Basic/CompilationError.cs create mode 100644 Software/Visual_Studio/Scripting/Tango.Scripting.Basic/CompilationResult.cs create mode 100644 Software/Visual_Studio/Scripting/Tango.Scripting.Basic/GlobalObject.cs create mode 100644 Software/Visual_Studio/Scripting/Tango.Scripting.Basic/IContext.cs create mode 100644 Software/Visual_Studio/Scripting/Tango.Scripting.Basic/Project.cs create mode 100644 Software/Visual_Studio/Scripting/Tango.Scripting.Basic/ProjectSession.cs create mode 100644 Software/Visual_Studio/Scripting/Tango.Scripting.Basic/ProjectSessionState.cs create mode 100644 Software/Visual_Studio/Scripting/Tango.Scripting.Basic/ProjectSessionStateChangedEventArgs.cs create mode 100644 Software/Visual_Studio/Scripting/Tango.Scripting.Basic/Properties/AssemblyInfo.cs create mode 100644 Software/Visual_Studio/Scripting/Tango.Scripting.Basic/Properties/Resources.Designer.cs create mode 100644 Software/Visual_Studio/Scripting/Tango.Scripting.Basic/Properties/Resources.resx create mode 100644 Software/Visual_Studio/Scripting/Tango.Scripting.Basic/Properties/Settings.Designer.cs create mode 100644 Software/Visual_Studio/Scripting/Tango.Scripting.Basic/Properties/Settings.settings create mode 100644 Software/Visual_Studio/Scripting/Tango.Scripting.Basic/ReferenceAssembly.cs create mode 100644 Software/Visual_Studio/Scripting/Tango.Scripting.Basic/Resources/template.csx create mode 100644 Software/Visual_Studio/Scripting/Tango.Scripting.Basic/Script.cs create mode 100644 Software/Visual_Studio/Scripting/Tango.Scripting.Basic/Tango.Scripting.Basic.csproj create mode 100644 Software/Visual_Studio/Scripting/Tango.Scripting.Basic/Themes/Generic.xaml create mode 100644 Software/Visual_Studio/Scripting/Tango.Scripting.Basic/app.config create mode 100644 Software/Visual_Studio/Scripting/Tango.Scripting.Basic/packages.config create mode 100644 Software/Visual_Studio/Scripting/Tango.Scripting.Core/BreakPoint.cs create mode 100644 Software/Visual_Studio/Scripting/Tango.Scripting.Core/IScriptSource.cs create mode 100644 Software/Visual_Studio/Scripting/Tango.Scripting.Core/Properties/AssemblyInfo.cs create mode 100644 Software/Visual_Studio/Scripting/Tango.Scripting.Core/ScriptBreakPoint.cs create mode 100644 Software/Visual_Studio/Scripting/Tango.Scripting.Core/ScriptBreakPointSymbol.cs create mode 100644 Software/Visual_Studio/Scripting/Tango.Scripting.Core/Tango.Scripting.Core.csproj create mode 100644 Software/Visual_Studio/Scripting/Tango.Scripting.Editors/BreakPointSymbolPressedEventArgs.cs create mode 100644 Software/Visual_Studio/Scripting/Tango.Scripting.Editors/CachedAssembly.cs create mode 100644 Software/Visual_Studio/Scripting/Tango.Scripting.Editors/CachedUsing.cs create mode 100644 Software/Visual_Studio/Scripting/Tango.Scripting.Editors/Editing/BreakPointMargin.cs create mode 100644 Software/Visual_Studio/Scripting/Tango.Scripting.Editors/Errors/ITextMarker.cs create mode 100644 Software/Visual_Studio/Scripting/Tango.Scripting.Editors/Errors/TextMarkerService.cs create mode 100644 Software/Visual_Studio/Scripting/Tango.Scripting.Editors/Images/break_point_arrow.png create mode 100644 Software/Visual_Studio/Scripting/Tango.Scripting.Editors/Images/event.png create mode 100644 Software/Visual_Studio/Scripting/Tango.Scripting.Editors/Images/snippet.png create mode 100644 Software/Visual_Studio/Scripting/Tango.Scripting.Editors/Intellisense/EventCompletionItem.cs create mode 100644 Software/Visual_Studio/Scripting/Tango.Scripting.Editors/Intellisense/HideIntellisenseAttribute.cs create mode 100644 Software/Visual_Studio/Scripting/Tango.Scripting.Editors/Intellisense/KnownTypeEvent.cs create mode 100644 Software/Visual_Studio/Scripting/Tango.Scripting.Editors/Intellisense/SnippetCompletionItem.cs create mode 100644 Software/Visual_Studio/Scripting/Tango.Scripting.Editors/Tango.Scripting.Editors_di35u2uj_wpftmp.csproj create mode 100644 Software/Visual_Studio/Scripting/Tango.Scripting.Editors/XamlEditor.cs create mode 100644 Software/Visual_Studio/Scripting/Tango.Scripting.Formatting/CodeFormatter.cs create mode 100644 Software/Visual_Studio/Scripting/Tango.Scripting.Formatting/Properties/AssemblyInfo.cs create mode 100644 Software/Visual_Studio/Scripting/Tango.Scripting.Formatting/Tango.Scripting.Formatting.csproj create mode 100644 Software/Visual_Studio/Scripting/Tango.Scripting.Formatting/app.config create mode 100644 Software/Visual_Studio/Scripting/Tango.Scripting.Formatting/packages.config create mode 100644 Software/Visual_Studio/Scripting/Tango.Scripting.Test/App.config create mode 100644 Software/Visual_Studio/Scripting/Tango.Scripting.Test/App.xaml create mode 100644 Software/Visual_Studio/Scripting/Tango.Scripting.Test/App.xaml.cs create mode 100644 Software/Visual_Studio/Scripting/Tango.Scripting.Test/MainWindow.xaml create mode 100644 Software/Visual_Studio/Scripting/Tango.Scripting.Test/MainWindow.xaml.cs create mode 100644 Software/Visual_Studio/Scripting/Tango.Scripting.Test/MainWindowVM.cs create mode 100644 Software/Visual_Studio/Scripting/Tango.Scripting.Test/Properties/AssemblyInfo.cs create mode 100644 Software/Visual_Studio/Scripting/Tango.Scripting.Test/Properties/Resources.Designer.cs create mode 100644 Software/Visual_Studio/Scripting/Tango.Scripting.Test/Properties/Resources.resx create mode 100644 Software/Visual_Studio/Scripting/Tango.Scripting.Test/Properties/Settings.Designer.cs create mode 100644 Software/Visual_Studio/Scripting/Tango.Scripting.Test/Properties/Settings.settings create mode 100644 Software/Visual_Studio/Scripting/Tango.Scripting.Test/Resources/template.csx create mode 100644 Software/Visual_Studio/Scripting/Tango.Scripting.Test/Tango.Scripting.Test.csproj create mode 100644 Software/Visual_Studio/Scripting/Tango.Scripting.Test/lib.csx (limited to 'Software/Visual_Studio/Scripting') diff --git a/Software/Visual_Studio/Scripting/Tango.Scripting.Basic/CompilationError.cs b/Software/Visual_Studio/Scripting/Tango.Scripting.Basic/CompilationError.cs new file mode 100644 index 000000000..eda72fa6e --- /dev/null +++ b/Software/Visual_Studio/Scripting/Tango.Scripting.Basic/CompilationError.cs @@ -0,0 +1,20 @@ +using Microsoft.CodeAnalysis; +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace Tango.Scripting.Basic +{ + public class CompilationError + { + public String File { get; set; } + public String Message { get; set; } + public DiagnosticSeverity Severity { get; set; } + public int Position { get; set; } + public int Line { get; set; } + public int Column { get; set; } + public int Length { get; set; } + } +} diff --git a/Software/Visual_Studio/Scripting/Tango.Scripting.Basic/CompilationResult.cs b/Software/Visual_Studio/Scripting/Tango.Scripting.Basic/CompilationResult.cs new file mode 100644 index 000000000..d3676acc0 --- /dev/null +++ b/Software/Visual_Studio/Scripting/Tango.Scripting.Basic/CompilationResult.cs @@ -0,0 +1,21 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using Tango.Core.IO; + +namespace Tango.Scripting.Basic +{ + public class CompilationResult + { + public List Errors { get; set; } + public TemporaryFolder TemporaryProjectPath { get; set; } + public Microsoft.CodeAnalysis.Scripting.Script Script { get; set; } + + public CompilationResult() + { + Errors = new List(); + } + } +} diff --git a/Software/Visual_Studio/Scripting/Tango.Scripting.Basic/GlobalObject.cs b/Software/Visual_Studio/Scripting/Tango.Scripting.Basic/GlobalObject.cs new file mode 100644 index 000000000..c76fba8e2 --- /dev/null +++ b/Software/Visual_Studio/Scripting/Tango.Scripting.Basic/GlobalObject.cs @@ -0,0 +1,13 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace Tango.Scripting.Basic +{ + public class GlobalObject where T : IContext + { + public T GlobalContext { get; set; } + } +} diff --git a/Software/Visual_Studio/Scripting/Tango.Scripting.Basic/IContext.cs b/Software/Visual_Studio/Scripting/Tango.Scripting.Basic/IContext.cs new file mode 100644 index 000000000..d817c5d46 --- /dev/null +++ b/Software/Visual_Studio/Scripting/Tango.Scripting.Basic/IContext.cs @@ -0,0 +1,13 @@ +using System; +using System.Collections.Generic; +using System.Linq; +using System.Text; +using System.Threading.Tasks; + +namespace Tango.Scripting.Basic +{ + public interface IContext + { + + } +} diff --git a/Software/Visual_Studio/Scripting/Tango.Scripting.Basic/Project.cs b/Software/Visual_Studio/Scripting/Tango.Scripting.Basic/Project.cs new file mode 100644 index 000000000..7500e404f --- /dev/null +++ b/Software/Visual_Studio/Scripting/Tango.Scripting.Basic/Project.cs @@ -0,0 +1,259 @@ +using Microsoft.CodeAnalysis.CSharp.Scripting; +using Microsoft.CodeAnalysis.Scripting; +using Newtonsoft.Json; +using System; +using System.Collections.Generic; +using System.Collections.ObjectModel; +using System.Linq; +using System.Reflection; +using System.Text; +using System.Text.RegularExpressions; +using System.Threading; +using System.Threading.Tasks; +using System.Windows.Forms; +using Tango.Core; +using Tango.Core.IO; +using Tango.Scripting.Core; +using System.IO; +using Tango.Core.Helpers; + +namespace Tango.Scripting.Basic +{ + public class Project : ExtendedObject where T : IContext + { + private object _compileLock = new object(); + + public String ID { get; set; } + + private String _name; + public String Name + { + get { return _name; } + set { _name = value; RaisePropertyChangedAuto(); } + } + + private String _description; + public String Description + { + get { return _description; } + set { _description = value; RaisePropertyChangedAuto(); } + } + + private bool _isRunning; + [JsonIgnore] + public bool IsRunning + { + get { return _isRunning; } + set { _isRunning = value; RaisePropertyChangedAuto(); } + } + + private bool _isCompiling; + [JsonIgnore] + public bool IsCompiling + { + get { return _isCompiling; } + set { _isCompiling = value; RaisePropertyChangedAuto(); } + } + + public ApartmentState ApartmentState { get; set; } + + public ObservableCollection ReferenceAssemblies { get; set; } + + public ObservableCollection