aboutsummaryrefslogtreecommitdiffstats
path: root/Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.ThreadExtensions/ViewModels/CalibrationDataVM.cs
diff options
context:
space:
mode:
authorRoy Ben Shabat <Roy.mail.net@gmail.com>2022-03-20 18:07:42 +0200
committerRoy Ben Shabat <Roy.mail.net@gmail.com>2022-03-20 18:07:42 +0200
commit74c9b53220accf04d9b48eea5ebc5f4d7dc65e23 (patch)
tree59b98486a1bfd3a3538c87f155b4acd05f8d9c6a /Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.ThreadExtensions/ViewModels/CalibrationDataVM.cs
parented26561515291b660b03dadf484d5ef615bc3774 (diff)
parent4439a039bdaf8e59e0f450e2e4fbbd52b50261fd (diff)
downloadTango-74c9b53220accf04d9b48eea5ebc5f4d7dc65e23.tar.gz
Tango-74c9b53220accf04d9b48eea5ebc5f4d7dc65e23.zip
Merged Yana_Thread_Extensions_3
Diffstat (limited to 'Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.ThreadExtensions/ViewModels/CalibrationDataVM.cs')
-rw-r--r--Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.ThreadExtensions/ViewModels/CalibrationDataVM.cs138
1 files changed, 138 insertions, 0 deletions
diff --git a/Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.ThreadExtensions/ViewModels/CalibrationDataVM.cs b/Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.ThreadExtensions/ViewModels/CalibrationDataVM.cs
new file mode 100644
index 000000000..b8fab210c
--- /dev/null
+++ b/Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.ThreadExtensions/ViewModels/CalibrationDataVM.cs
@@ -0,0 +1,138 @@
+using System;
+using System.Collections.Generic;
+using System.Collections.ObjectModel;
+using System.Linq;
+using System.Text;
+using System.Threading.Tasks;
+using Tango.BL.Entities;
+using Tango.Core;
+using Tango.PMR.ColorLab;
+
+namespace Tango.MachineStudio.ThreadExtensions.ViewModels
+{
+ public class CalibrationDataPointVM : ExtendedObject
+ {
+ private double _x;
+
+ public double X
+ {
+ get { return _x; }
+ set { _x = value; RaisePropertyChangedAuto(); }
+ }
+
+ private double _y;
+
+ public double Y
+ {
+ get { return _y; }
+ set { _y = value; RaisePropertyChangedAuto(); }
+ }
+
+ private int _index;
+
+ public int Index
+ {
+ get { return _index; }
+ set { _index = value; RaisePropertyChangedAuto(); }
+ }
+
+
+ public CalibrationDataPointVM()
+ {
+
+ }
+
+ public CalibrationDataPointVM(double x, double y)
+ {
+ X = x;
+ Y = y;
+ }
+
+ public CalibrationDataPointVM(CalibrationPoint calibrationPoint) : this(calibrationPoint.X, calibrationPoint.Y)
+ {
+
+ }
+
+ public CalibrationPoint ToPMR()
+ {
+ return new CalibrationPoint()
+ {
+ X = X,
+ Y = Y,
+ };
+ }
+ }
+
+ public class CalibrationDataVM : ExtendedObject
+ {
+ private BL.Entities.LiquidType _liquidType;
+
+ public BL.Entities.LiquidType LiquidType
+ {
+ get { return _liquidType; }
+ set { _liquidType = value; RaisePropertyChangedAuto(); }
+ }
+
+ private IdsPack _idsPack;
+
+ public IdsPack IdsPack
+ {
+ get { return _idsPack; }
+ set { _idsPack = value; RaisePropertyChangedAuto(); }
+ }
+
+ private ObservableCollection<CalibrationDataPointVM> _calibrationPoints;
+
+ public ObservableCollection<CalibrationDataPointVM> CalibrationPoints
+ {
+ get { return _calibrationPoints; }
+ set { _calibrationPoints = value; RaisePropertyChangedAuto(); OnCalibrationPointsChanged(); }
+ }
+
+ private void OnCalibrationPointsChanged()
+ {
+ if (CalibrationPoints != null)
+ {
+ CalibrationPoints.CollectionChanged -= CalibrationPoints_CollectionChanged;
+ CalibrationPoints.CollectionChanged += CalibrationPoints_CollectionChanged;
+
+ SetIndices();
+ }
+ }
+
+ private void CalibrationPoints_CollectionChanged(object sender, System.Collections.Specialized.NotifyCollectionChangedEventArgs e)
+ {
+ SetIndices();
+ }
+
+ private void SetIndices()
+ {
+ if (CalibrationPoints != null)
+ {
+ int index = 1;
+ foreach (var p in CalibrationPoints)
+ {
+ p.Index = index++;
+ }
+ }
+ }
+
+ private CalibrationDataVM()
+ {
+ CalibrationPoints = new ObservableCollection<CalibrationDataPointVM>();
+ }
+
+ public CalibrationDataVM(IdsPack pack) : this()
+ {
+ IdsPack = pack;
+ LiquidType = pack.LiquidType;
+ }
+
+ public CalibrationDataVM(BL.Entities.LiquidType liquidType) : this()
+ {
+ LiquidType = liquidType;
+ CalibrationPoints = new ObservableCollection<CalibrationDataPointVM>();
+ //CalibrationPoints.Add(new CalibrationDataPointVM() { Index = 1, X = 2, Y = 22 });
+ }
+ }
+} \ No newline at end of file