aboutsummaryrefslogtreecommitdiffstats
path: root/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.UI/ViewModels
diff options
context:
space:
mode:
authorRoy Ben-Shabat <Roy@Twine-s.com>2019-02-17 11:46:27 +0200
committerRoy Ben-Shabat <Roy@Twine-s.com>2019-02-17 11:46:27 +0200
commit0cd0b590f62b31a8874ea21f225ba75c7a37053c (patch)
tree7cfda9f863eb827b5c3ea14eeddf638e73841ffd /Software/Visual_Studio/MachineStudio/Tango.MachineStudio.UI/ViewModels
parent7d7d28fdeab29f74d064e50f19a4985c763ee813 (diff)
downloadTango-0cd0b590f62b31a8874ea21f225ba75c7a37053c.tar.gz
Tango-0cd0b590f62b31a8874ea21f225ba75c7a37053c.zip
Improved firmware upgrade..
Added firmware upgrade type selection to machine studio. Made upload hw config async when connecting. Removed success message for hw upload after connect.
Diffstat (limited to 'Software/Visual_Studio/MachineStudio/Tango.MachineStudio.UI/ViewModels')
-rw-r--r--Software/Visual_Studio/MachineStudio/Tango.MachineStudio.UI/ViewModels/FirmwareUpgradeViewVM.cs40
-rw-r--r--Software/Visual_Studio/MachineStudio/Tango.MachineStudio.UI/ViewModels/MainViewVM.cs18
2 files changed, 50 insertions, 8 deletions
diff --git a/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.UI/ViewModels/FirmwareUpgradeViewVM.cs b/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.UI/ViewModels/FirmwareUpgradeViewVM.cs
index 14b9d0d8e..e3726f1dd 100644
--- a/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.UI/ViewModels/FirmwareUpgradeViewVM.cs
+++ b/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.UI/ViewModels/FirmwareUpgradeViewVM.cs
@@ -50,6 +50,35 @@ namespace Tango.MachineStudio.UI.ViewModels
set { upgradeError = value; RaisePropertyChangedAuto(); }
}
+ private bool _dfu;
+ public bool DFU
+ {
+ get { return _dfu; }
+ set
+ {
+ _dfu = value; RaisePropertyChangedAuto();
+
+ if (_dfu)
+ {
+ UploadTFP = false;
+ }
+ }
+ }
+
+ private bool _uploadTFP;
+ public bool UploadTFP
+ {
+ get { return _uploadTFP; }
+ set
+ {
+ _uploadTFP = value; RaisePropertyChangedAuto();
+
+ if (_uploadTFP)
+ {
+ DFU = false;
+ }
+ }
+ }
public RelayCommand SelectCommand { get; set; }
@@ -59,6 +88,8 @@ namespace Tango.MachineStudio.UI.ViewModels
public FirmwareUpgradeViewVM(IMachineOperator machineOperator, INotificationProvider notificationProvider) : base()
{
+ DFU = true;
+ UploadTFP = true;
_notification = notificationProvider;
_operator = machineOperator;
SelectCommand = new RelayCommand(BrowseForFile);
@@ -101,7 +132,14 @@ namespace Tango.MachineStudio.UI.ViewModels
{
IsFree = false;
- _operator.FirmwareUpgradeMode = FirmwareUpgradeModes.DFU;
+ if (UploadTFP)
+ {
+ _operator.FirmwareUpgradeMode = FirmwareUpgradeModes.DFU | FirmwareUpgradeModes.TFP_PACKAGE;
+ }
+ else
+ {
+ _operator.FirmwareUpgradeMode = FirmwareUpgradeModes.DFU;
+ }
_stream = new FileStream(SelectedFile, FileMode.Open);
Handler = await _operator.UpgradeFirmware(_stream);
diff --git a/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.UI/ViewModels/MainViewVM.cs b/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.UI/ViewModels/MainViewVM.cs
index 573e56fff..1d03dd389 100644
--- a/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.UI/ViewModels/MainViewVM.cs
+++ b/Software/Visual_Studio/MachineStudio/Tango.MachineStudio.UI/ViewModels/MainViewVM.cs
@@ -11,6 +11,7 @@ using System.Windows;
using System.Windows.Controls;
using System.Windows.Media;
using Tango.BL;
+using Tango.BL.Builders;
using Tango.BL.Entities;
using Tango.Core.Commands;
using Tango.Core.DI;
@@ -483,7 +484,7 @@ namespace Tango.MachineStudio.UI.ViewModels
if (x.UploadHardwareConfiguration)
{
- UploadHardwareConfiguration();
+ UploadHardwareConfiguration(false);
}
}
@@ -525,7 +526,7 @@ namespace Tango.MachineStudio.UI.ViewModels
if (x.UploadHardwareConfiguration)
{
- UploadHardwareConfiguration();
+ UploadHardwareConfiguration(false);
}
}
catch (Exception ex)
@@ -615,18 +616,21 @@ namespace Tango.MachineStudio.UI.ViewModels
InvalidateRelayCommands();
}
- private async void UploadHardwareConfiguration()
+ private async void UploadHardwareConfiguration(bool showSuccessMessage = true)
{
try
{
using (ObservablesContext db = ObservablesContext.CreateDefault())
{
- var config = db.Adapter.GetConfiguration(s => s.Guid == ApplicationManager.Machine.ConfigurationGuid);
- var hw = db.Adapter.GetHardwareVersionByMachine(ApplicationManager.Machine.Guid);
+ var config = (await new ConfigurationBuilder(db).Set(ApplicationManager.Machine.ConfigurationGuid).WithIdsPacks().WithHardwareVersion().BuildAsync());
- await ApplicationManager.ConnectedMachine.UploadHardwareConfiguration(hw, config);
+ await ApplicationManager.ConnectedMachine.UploadHardwareConfiguration(config.HardwareVersion, config);
+ }
+
+ if (showSuccessMessage)
+ {
+ NotificationProvider.ShowInfo("Hardware configuration uploaded successfully.");
}
- NotificationProvider.ShowInfo("Hardware configuration uploaded successfully.");
}
catch (Exception ex)
{