aboutsummaryrefslogtreecommitdiffstats
path: root/Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.MachineDesigner/ViewModels/MainViewVM.cs
diff options
context:
space:
mode:
authorVictoria Plitt <Victoria.Plitt@twine-s.com>2019-09-25 18:29:12 +0300
committerVictoria Plitt <Victoria.Plitt@twine-s.com>2019-09-25 18:29:12 +0300
commitd990cf35a8816c7447fef4552ee83d041466636d (patch)
treeca9ce9e9a729d204c4e0726710873f9cfad9b749 /Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.MachineDesigner/ViewModels/MainViewVM.cs
parent0286fc4f7675459d660ec7a1b6a6a149376ad74e (diff)
downloadTango-d990cf35a8816c7447fef4552ee83d041466636d.tar.gz
Tango-d990cf35a8816c7447fef4552ee83d041466636d.zip
Implemented Hardware Configuration Tab on Machine Designer !!!
Diffstat (limited to 'Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.MachineDesigner/ViewModels/MainViewVM.cs')
-rw-r--r--Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.MachineDesigner/ViewModels/MainViewVM.cs42
1 files changed, 42 insertions, 0 deletions
diff --git a/Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.MachineDesigner/ViewModels/MainViewVM.cs b/Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.MachineDesigner/ViewModels/MainViewVM.cs
index eaca7cd6a..5f2dcd00d 100644
--- a/Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.MachineDesigner/ViewModels/MainViewVM.cs
+++ b/Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.MachineDesigner/ViewModels/MainViewVM.cs
@@ -122,6 +122,19 @@ namespace Tango.MachineStudio.MachineDesigner.ViewModels
set { _colorCalibrationViewVM = value; RaisePropertyChangedAuto(); }
}
+ private HardwareConfigurationViewVM _hardwareConfigurationViewVM;
+
+ public HardwareConfigurationViewVM HardwareConfigurationViewVM
+ {
+ get { return _hardwareConfigurationViewVM; }
+ set
+ {
+ _hardwareConfigurationViewVM = value;
+ RaisePropertyChangedAuto();
+ }
+ }
+
+
#endregion
#region Commands
@@ -442,6 +455,11 @@ namespace Tango.MachineStudio.MachineDesigner.ViewModels
SelectedRML = ActiveMachineAdapter.Rmls.FirstOrDefault(),
};
+ HardwareConfigurationViewVM = new HardwareConfigurationViewVM(_notification);
+ HardwareConfigurationViewVM.Init(ActiveMachine.Configuration);
+
+ ActiveMachine.Configuration.HardwareVersionChanged += Configuration_HardwareVersionChanged;
+
View.NavigateTo(MachineDesignerNavigationView.MachineDetailsView);
}
catch (Exception ex)
@@ -457,6 +475,27 @@ namespace Tango.MachineStudio.MachineDesigner.ViewModels
}
}
+ private async void Configuration_HardwareVersionChanged(object sender, HardwareVersion e)
+ {
+ var version = ActiveMachine.Configuration.HardwareVersion;
+
+ if (version != null)
+ {
+ using (_notification.PushTaskItem("Loading hardware version..."))
+ {
+ try
+ {
+ version = await new HardwareVersionBuilder(ActiveMachineAdapter.Context).Set(version.Guid).WithHardwareComponents().BuildAsync();
+ HardwareConfigurationViewVM.Init(ActiveMachine.Configuration);
+ }
+ catch (Exception ex)
+ {
+ LogManager.Log(ex);
+ }
+ }
+ }
+ }
+
private async void SaveMachine()
{
foreach (var ids in ActiveMachine.Configuration.IdsPacks)
@@ -585,6 +624,9 @@ namespace Tango.MachineStudio.MachineDesigner.ViewModels
ColorCalibrationViewVM.Save();
+ var hwConfig = HardwareConfigurationViewVM.GetResultingHardwareConfiguration();
+ ActiveMachine.Configuration.SetHardwareConfiguration(hwConfig);
+
await ActiveMachineAdapter.Context.SaveChangesAsync();
if (SelectedMachine != null)