aboutsummaryrefslogtreecommitdiffstats
path: root/Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.MachineDesigner/Models/HardwareParameter.cs
diff options
context:
space:
mode:
authorShlomo Hecht <shlomo@twine-s.com>2019-10-07 16:41:45 +0300
committerShlomo Hecht <shlomo@twine-s.com>2019-10-07 16:41:45 +0300
commiteae70d7ebcb1007b407bac2ba27da5a5fef337db (patch)
tree67febce63cc498102a86eb69263508c6c70f0b1f /Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.MachineDesigner/Models/HardwareParameter.cs
parente131de20ac8e179abc42a2dc173cf860d64a3bcd (diff)
parent583d3716e37a9be80c8bb248215f343ed4fcd2d1 (diff)
downloadTango-eae70d7ebcb1007b407bac2ba27da5a5fef337db.tar.gz
Tango-eae70d7ebcb1007b407bac2ba27da5a5fef337db.zip
Merge branch 'master' of https://twinetfs.visualstudio.com/Tango/_git/Tango
Diffstat (limited to 'Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.MachineDesigner/Models/HardwareParameter.cs')
-rw-r--r--Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.MachineDesigner/Models/HardwareParameter.cs91
1 files changed, 68 insertions, 23 deletions
diff --git a/Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.MachineDesigner/Models/HardwareParameter.cs b/Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.MachineDesigner/Models/HardwareParameter.cs
index 33dbcad71..5bddfb02e 100644
--- a/Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.MachineDesigner/Models/HardwareParameter.cs
+++ b/Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.MachineDesigner/Models/HardwareParameter.cs
@@ -8,17 +8,23 @@ using Tango.Core.Commands;
namespace Tango.MachineStudio.MachineDesigner.Models
{
- public class HardwareParameter : ExtendedObject
+ /// <summary>
+ /// The HardwareParameter class.
+ /// Contains default/editable/actual value and data type of each hardware parameter reflected in .
+ /// </summary>
+ public class HardwareParameter : ExtendedObject, IHasDifference
{
- public event EventHandler Selected;
+ #region Properties
public HardwareComponent Component { get; set; }
- public RelayCommand DeleteCommand { get; set; }
-
public String PropertyName { get; set; }
+
private Object _defaultValue;
+ /// <summary>
+ /// The default value contains data from database
+ /// </summary>
public Object DefaultValue
{
get { return _defaultValue; }
@@ -28,12 +34,20 @@ namespace Tango.MachineStudio.MachineDesigner.Models
}
}
+ /// <summary>
+ /// The type of hardware parameter is used for display correct ui element.
+ /// Can be boolean, int32, or Double
+ /// </summary>
public Type Type
{
get { return DefaultValue.GetType(); }
}
- // updated after editing
+
+
private Object _actualValue = null;
+ /// <summary>
+ /// The value contains modified data, saved in database or immediately after editing in this session.
+ /// </summary>
public Object ActualValue
{
get { return _actualValue; }
@@ -41,13 +55,17 @@ namespace Tango.MachineStudio.MachineDesigner.Models
{
_actualValue = value;
RaisePropertyChangedAuto();
- RaisePropertyChanged(nameof(IsDifferent));
+ RaisePropertyChanged(nameof(HasDifferences));
RaisePropertyChanged(nameof(IsValuesMatched));
}
}
- // displayed during editing
+
private Object _editableValue = null;
+ /// <summary>
+ /// The editable value contains value displayed in edit box in UI.
+ /// Initialization the value occurs by clicking in UI and the value will be equal actual value if it exists or default value.
+ /// </summary>
public Object EditableValue
{
get { return _editableValue; }
@@ -76,6 +94,37 @@ namespace Tango.MachineStudio.MachineDesigner.Models
}
}
+ /// <summary>
+ /// Used in UI to display modified value
+ /// </summary>
+ public bool HasDifferences
+ {
+ get
+ {
+ return (ActualValue != null);
+ }
+ }
+
+ /// <summary>
+ /// Used to display warning explanation icon in case actual value equals default value
+ /// </summary>
+ public bool IsValuesMatched
+ {
+ get
+ {
+ return ActualValue != null && ActualValue.ToString() == DefaultValue.ToString();
+ }
+ }
+
+ #endregion
+
+ #region events
+
+ /// <summary>
+ /// Occurs when start select mode.
+ /// Used to set in all others Parameter IsSelected to false except this.
+ /// </summary>
+ public event EventHandler Selected;
private void OnIsSelectedChanged()
{
@@ -92,31 +141,27 @@ namespace Tango.MachineStudio.MachineDesigner.Models
}
}
- public bool IsDifferent
- {
- get
- {
- return (ActualValue != null);
- }
- }
+ #endregion
- public bool IsValuesMatched
+ #region Constructors
+
+ public HardwareParameter()
{
- get
- {
- return ActualValue != null && ActualValue.ToString() == DefaultValue.ToString();
- }
+ DeleteCommand = new RelayCommand(DeleteValue);
}
+ #endregion
+
+ #region Commands
+
+ public RelayCommand DeleteCommand { get; set; }
+
public void DeleteValue()
{
ActualValue = null;
EditableValue = null;
}
- public HardwareParameter()
- {
- DeleteCommand = new RelayCommand(DeleteValue);
- }
+ #endregion
}
}