diff options
Diffstat (limited to 'Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.MachineDesigner/ViewModels/MachineCreationDialogVM.cs')
| -rw-r--r-- | Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.MachineDesigner/ViewModels/MachineCreationDialogVM.cs | 28 |
1 files changed, 24 insertions, 4 deletions
diff --git a/Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.MachineDesigner/ViewModels/MachineCreationDialogVM.cs b/Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.MachineDesigner/ViewModels/MachineCreationDialogVM.cs index c7c7267a4..9d203b76d 100644 --- a/Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.MachineDesigner/ViewModels/MachineCreationDialogVM.cs +++ b/Software/Visual_Studio/MachineStudio/Modules/Tango.MachineStudio.MachineDesigner/ViewModels/MachineCreationDialogVM.cs @@ -15,9 +15,24 @@ namespace Tango.MachineStudio.MachineDesigner.ViewModels public List<HardwareVersion> HardwareVersions { get; set; } - public HardwareVersion SelectedHardwareVersion { get; set; } + public List<HardwareVersion> HardwareVersionsFiltered + { + get { return HardwareVersions.Where(x => x.MachineType == (int)MachineType).ToList(); } + } - public MachinePrototype SelectedPrototype { get; set; } + private HardwareVersion _selectedHardwareVersion; + public HardwareVersion SelectedHardwareVersion + { + get { return _selectedHardwareVersion; } + set { _selectedHardwareVersion = value; RaisePropertyChangedAuto(); } + } + + private MachinePrototype _selectedProtoType; + public MachinePrototype SelectedPrototype + { + get { return _selectedProtoType; } + set { _selectedProtoType = value; MachineType = (MachineTypes)value.MachineType; } + } private bool _isNewMachine; public bool IsNewMachine @@ -33,7 +48,12 @@ namespace Tango.MachineStudio.MachineDesigner.ViewModels set { _serialNumber = value; RaisePropertyChangedAuto(); InvalidateRelayCommands(); } } - public MachineTypes MachineType { get; set; } + private MachineTypes _machineType; + public MachineTypes MachineType + { + get { return _machineType; } + set { _machineType = value; RaisePropertyChanged(nameof(HardwareVersionsFiltered)); SelectedHardwareVersion = HardwareVersionsFiltered.FirstOrDefault(); } + } private String _name; public String Name @@ -44,7 +64,7 @@ namespace Tango.MachineStudio.MachineDesigner.ViewModels protected override bool CanOK() { - return base.CanOK() && !String.IsNullOrWhiteSpace(SerialNumber) && !String.IsNullOrWhiteSpace(Name); + return base.CanOK() && !String.IsNullOrWhiteSpace(SerialNumber) && !String.IsNullOrWhiteSpace(Name) && SelectedHardwareVersion != null; } } } |
