using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; using Tango.Core.Commands; using Tango.DAL.Observables; using Tango.MachineStudio.Common.Notifications; using Tango.MachineStudio.MachineDesigner.AutoComplete; namespace Tango.MachineStudio.MachineDesigner.ViewModels { public class MachineVersionDialogVM : DialogViewVM { public MachineVersionsProvider VersionsProvider { get; set; } public double Version { get; set; } private String _versionName; public String VersionName { get { return _versionName; } set { _versionName = value; RaisePropertyChangedAuto(); } } private MachineVersion _selectedVersion; public MachineVersion SelectedVersion { get { return _selectedVersion; } set { _selectedVersion = value; RaisePropertyChangedAuto(); VersionName = value != null ? value.Name : null; Version = value != null ? value.Version : 0; } } public RelayCommand AcceptCommand { get; set; } public RelayCommand CancelCommand { get; set; } public MachineVersionDialogVM() { VersionsProvider = new MachineVersionsProvider(); AcceptCommand = new RelayCommand(() => { if (SelectedVersion == null) { Version = double.Parse(VersionsProvider.Text); } Accept(); }); CancelCommand = new RelayCommand(Cancel); } } }