aboutsummaryrefslogtreecommitdiffstats
path: root/Software/Visual_Studio/Scripting/Tango.Scripting.Editors/ScriptEditor.cs
diff options
context:
space:
mode:
Diffstat (limited to 'Software/Visual_Studio/Scripting/Tango.Scripting.Editors/ScriptEditor.cs')
-rw-r--r--Software/Visual_Studio/Scripting/Tango.Scripting.Editors/ScriptEditor.cs63
1 files changed, 63 insertions, 0 deletions
diff --git a/Software/Visual_Studio/Scripting/Tango.Scripting.Editors/ScriptEditor.cs b/Software/Visual_Studio/Scripting/Tango.Scripting.Editors/ScriptEditor.cs
index f63cedcdc..6417e34f8 100644
--- a/Software/Visual_Studio/Scripting/Tango.Scripting.Editors/ScriptEditor.cs
+++ b/Software/Visual_Studio/Scripting/Tango.Scripting.Editors/ScriptEditor.cs
@@ -64,6 +64,7 @@ namespace Tango.Scripting.Editors
private static bool _isLoadingCachedAssemblies;
private static bool _isCacheAssembliesLoaded;
private static object _loadUsingsLock = new object();
+ private static List<SnippetCompletionItem> snippets;
public static event EventHandler<TangoProgressChangedEventArgs<int>> LoadingSymbolsProgress;
public static event EventHandler LoadingSymbolsStarted;
@@ -171,6 +172,8 @@ namespace Tango.Scripting.Editors
{
DefaultStyleKeyProperty.OverrideMetadata(typeof(ScriptEditor), new FrameworkPropertyMetadata(typeof(ScriptEditor)));
+ snippets = new List<SnippetCompletionItem>();
+
BlockedUsingsCache = new List<string>();
if (KNOWN_TYPES_CACHE_FOLDER == null)
@@ -188,6 +191,61 @@ namespace Tango.Scripting.Editors
_knownTypesCache = new Dictionary<Type, KnownType>();
_cachedAssemblies = new List<CachedAssembly>();
_cachedUsings = new List<CachedUsing>();
+
+ snippets.Add(new SnippetCompletionItem()
+ {
+ Name = "for",
+ Code = @"for (int i = 0; i < 10; i++)
+ {
+
+ }"
+ });
+
+ snippets.Add(new SnippetCompletionItem()
+ {
+ Name = "while",
+ Code = @"while (true)
+ {
+
+ }"
+ });
+
+ snippets.Add(new SnippetCompletionItem()
+ {
+ Name = "foreach",
+ Code = @"foreach (var item in items)
+ {
+
+ }"
+ });
+
+ snippets.Add(new SnippetCompletionItem()
+ {
+ Name = "prop",
+ Code = @"public int MyProperty { get; set; }"
+ });
+
+ snippets.Add(new SnippetCompletionItem()
+ {
+ Name = "do",
+ Code = @"do
+ {
+
+ } while (true)"
+ });
+
+ snippets.Add(new SnippetCompletionItem()
+ {
+ Name = "try",
+ Code = @"try
+ {
+
+ }
+ catch (Exception ex)
+ {
+
+ }"
+ });
}
/// <summary>
@@ -746,6 +804,11 @@ namespace Tango.Scripting.Editors
{
IList<ICompletionData> data = new List<ICompletionData>();
+ foreach (var snippet in snippets)
+ {
+ data.Add(snippet);
+ }
+
foreach (var type in _declaredTypes.Where(x => x.Name.StartsWith(word)))
{
if (type.Kind == TypeKind.Struct)