aboutsummaryrefslogtreecommitdiffstats
path: root/Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.Stubs/ViewModels/CodeTabVM.cs
diff options
context:
space:
mode:
authorRoy <roy.mail.net@gmail.com>2017-12-26 21:16:15 +0200
committerRoy <roy.mail.net@gmail.com>2017-12-26 21:16:15 +0200
commit2ea2bb5bcd96045f1bd6cb4c3d8b8416dbaa05dc (patch)
treea21ff27fff08876e835df82c5242def1f0d09c17 /Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.Stubs/ViewModels/CodeTabVM.cs
parent6450fc175114a6f8d0b75cb21386d1bb0c902711 (diff)
downloadTango-2ea2bb5bcd96045f1bd6cb4c3d8b8416dbaa05dc.tar.gz
Tango-2ea2bb5bcd96045f1bd6cb4c3d8b8416dbaa05dc.zip
MERGE
Diffstat (limited to 'Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.Stubs/ViewModels/CodeTabVM.cs')
-rw-r--r--Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.Stubs/ViewModels/CodeTabVM.cs100
1 files changed, 100 insertions, 0 deletions
diff --git a/Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.Stubs/ViewModels/CodeTabVM.cs b/Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.Stubs/ViewModels/CodeTabVM.cs
new file mode 100644
index 000000000..451e1a1f0
--- /dev/null
+++ b/Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.Stubs/ViewModels/CodeTabVM.cs
@@ -0,0 +1,100 @@
+using System;
+using System.Collections.Generic;
+using System.IO;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+using Tango.Core.Commands;
+using Tango.SharedUI;
+
+namespace Tango.MachineStudio.Stubs.ViewModels
+{
+ /// <summary>
+ /// Represents a single script editor tab view model;
+ /// </summary>
+ /// <seealso cref="Tango.SharedUI.ViewModel" />
+ public class CodeTabVM : ViewModel
+ {
+ private String _title;
+ /// <summary>
+ /// Gets or sets the script title/file name.
+ /// </summary>
+ public String Title
+ {
+ get
+ {
+ return File != null ? Path.GetFileName(File) : _title;
+ }
+ set
+ {
+ _title = value;
+ RaisePropertyChanged(nameof(Title));
+ }
+ }
+
+ private String _file;
+ /// <summary>
+ /// Gets or sets the full script file path.
+ /// </summary>
+ public String File
+ {
+ get { return _file; }
+ set
+ {
+ _file = value;
+ RaisePropertyChanged(nameof(File));
+ RaisePropertyChanged(nameof(Title));
+ }
+ }
+
+ private String _code;
+ /// <summary>
+ /// Gets or sets the script code.
+ /// </summary>
+ public String Code
+ {
+ get { return _code; }
+ set { _code = value; RaisePropertyChanged(nameof(Code)); }
+ }
+
+ private bool _isRunning;
+ /// <summary>
+ /// Gets or sets a value indicating whether this instance is running.
+ /// </summary>
+ public bool IsRunning
+ {
+ get { return _isRunning; }
+ set { _isRunning = value; RaisePropertyChangedAuto(); }
+ }
+
+ private RelayCommand _insertCodeSnippetCommand;
+ /// <summary>
+ /// Gets or sets the insert snippet command. (Inserts stub snippet to editor)
+ /// </summary>
+ public RelayCommand InsertSnippetCommand
+ {
+ get { return _insertCodeSnippetCommand; }
+ set { _insertCodeSnippetCommand = value; RaisePropertyChanged(nameof(InsertSnippetCommand)); }
+ }
+
+ /// <summary>
+ /// Initializes a new instance of the <see cref="CodeTabVM"/> class.
+ /// </summary>
+ public CodeTabVM()
+ {
+ Title = "untitled";
+ Code = Properties.Resources.CodeTabTemplate;
+ }
+
+ /// <summary>
+ /// Returns a <see cref="System.String" /> that represents this instance.
+ /// </summary>
+ /// <returns>
+ /// A <see cref="System.String" /> that represents this instance.
+ /// </returns>
+ public override string ToString()
+ {
+ return Title;
+ }
+ }
+}