aboutsummaryrefslogtreecommitdiffstats
path: root/Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.MachineDesigner/ViewModels/MainViewVM.cs
diff options
context:
space:
mode:
authorShlomo Hecht <shlomo@twine-s.com>2019-09-26 12:34:25 +0300
committerShlomo Hecht <shlomo@twine-s.com>2019-09-26 12:34:25 +0300
commit189f45f48fbf1181cc9af20c93901fa9cedb9fb1 (patch)
treecb18927a213fdf73ffc4b6197220db97a87984fe /Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.MachineDesigner/ViewModels/MainViewVM.cs
parent387c1ee40b7bce5edd92491dc8d9edeb30a02524 (diff)
parent60186d68fdbb9c3cc1a6f83c12228db90b48488d (diff)
downloadTango-189f45f48fbf1181cc9af20c93901fa9cedb9fb1.tar.gz
Tango-189f45f48fbf1181cc9af20c93901fa9cedb9fb1.zip
version 1.4.5.1
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)