diff options
| author | Roy Ben-Shabat <Roy@Twine-s.com> | 2019-02-17 11:46:27 +0200 |
|---|---|---|
| committer | Roy Ben-Shabat <Roy@Twine-s.com> | 2019-02-17 11:46:27 +0200 |
| commit | 0cd0b590f62b31a8874ea21f225ba75c7a37053c (patch) | |
| tree | 7cfda9f863eb827b5c3ea14eeddf638e73841ffd /Software/Visual_Studio/MachineStudio/Tango.MachineStudio.UI/ViewModels | |
| parent | 7d7d28fdeab29f74d064e50f19a4985c763ee813 (diff) | |
| download | Tango-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')
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) { |
