diff options
| author | Roy Ben Shabat <Roy.mail.net@gmail.com> | 2021-08-06 13:03:05 +0300 |
|---|---|---|
| committer | Roy Ben Shabat <Roy.mail.net@gmail.com> | 2021-08-06 13:03:05 +0300 |
| commit | 88407c1927faeabcec2b9c2699d657eb5723bc81 (patch) | |
| tree | 210f0877e20b401017b5f460e7f2f72dea8e91f8 /Software/Visual_Studio/FSE/Modules/Tango.FSE.MachineConfiguration | |
| parent | f9e3fb301b8b94529f14c8c3291d430cad5d71db (diff) | |
| download | Tango-88407c1927faeabcec2b9c2699d657eb5723bc81.tar.gz Tango-88407c1927faeabcec2b9c2699d657eb5723bc81.zip | |
Refactored data store to use DataStoreMessageType.
Diffstat (limited to 'Software/Visual_Studio/FSE/Modules/Tango.FSE.MachineConfiguration')
4 files changed, 17 insertions, 12 deletions
diff --git a/Software/Visual_Studio/FSE/Modules/Tango.FSE.MachineConfiguration/Dialogs/DataStoreItemEditDialogView.xaml b/Software/Visual_Studio/FSE/Modules/Tango.FSE.MachineConfiguration/Dialogs/DataStoreItemEditDialogView.xaml index 2fd3b9cdf..5fcaea2ea 100644 --- a/Software/Visual_Studio/FSE/Modules/Tango.FSE.MachineConfiguration/Dialogs/DataStoreItemEditDialogView.xaml +++ b/Software/Visual_Studio/FSE/Modules/Tango.FSE.MachineConfiguration/Dialogs/DataStoreItemEditDialogView.xaml @@ -9,6 +9,7 @@ xmlns:sharedControls="clr-namespace:Tango.SharedUI.Controls;assembly=Tango.SharedUI" xmlns:datastore="clr-namespace:Tango.DataStore;assembly=Tango.DataStore" xmlns:pmr="clr-namespace:Tango.PMR.Common;assembly=Tango.PMR" + xmlns:pmrds="clr-namespace:Tango.PMR.DataStore;assembly=Tango.PMR" mc:Ignorable="d" Width="400" Height="500" d:DataContext="{d:DesignInstance Type=local:DataStoreItemEditDialogViewVM, IsDesignTimeCreatable=False}" Background="{StaticResource FSE_PrimaryBackgroundLightBrush}" Foreground="{StaticResource FSE_PrimaryForegroundBrush}"> <Grid Margin="10"> @@ -31,7 +32,7 @@ <StackPanel Margin="0 10 0 0" Visibility="{Binding Type,Converter={StaticResource EnumToVisibilityConverter},ConverterParameter='Proto'}"> <TextBlock Foreground="{StaticResource FSE_GrayBrush}" FontSize="{StaticResource FSE_SmallerFontSize}">Message Type</TextBlock> - <sharedControls:SearchComboBox IsEnabled="{Binding EnableTypeChange}" FontSize="{StaticResource FSE_SmallFontSize}" Margin="0 -5 5 0" ItemsSource="{Binding Source={x:Type pmr:MessageType},Converter={StaticResource EnumToItemsSourceConverter},ConverterParameter='false'}" SelectedItem="{Binding ProtoMessageType,Mode=TwoWay}"></sharedControls:SearchComboBox> + <sharedControls:SearchComboBox IsEnabled="{Binding EnableTypeChange}" FontSize="{StaticResource FSE_SmallFontSize}" Margin="0 -5 5 0" ItemsSource="{Binding Source={x:Type pmrds:DataStoreMessageType},Converter={StaticResource EnumToItemsSourceConverter},ConverterParameter='false'}" SelectedItem="{Binding ProtoMessageType,Mode=TwoWay}"></sharedControls:SearchComboBox> </StackPanel> </StackPanel> diff --git a/Software/Visual_Studio/FSE/Modules/Tango.FSE.MachineConfiguration/Dialogs/DataStoreItemEditDialogViewVM.cs b/Software/Visual_Studio/FSE/Modules/Tango.FSE.MachineConfiguration/Dialogs/DataStoreItemEditDialogViewVM.cs index 9cde14c6f..e7092c043 100644 --- a/Software/Visual_Studio/FSE/Modules/Tango.FSE.MachineConfiguration/Dialogs/DataStoreItemEditDialogViewVM.cs +++ b/Software/Visual_Studio/FSE/Modules/Tango.FSE.MachineConfiguration/Dialogs/DataStoreItemEditDialogViewVM.cs @@ -15,6 +15,8 @@ using Tango.FSE.Common; using Tango.FSE.Common.Storage; using Tango.PMR; using Tango.PMR.Common; +using Tango.PMR.DataStore; +using DataType = Tango.DataStore.DataType; namespace Tango.FSE.MachineConfiguration.Dialogs { @@ -80,8 +82,8 @@ namespace Tango.FSE.MachineConfiguration.Dialogs set { _type = value; RaisePropertyChangedAuto(); OnEditingValueChanged(); } } - private MessageType _protoMessageType; - public MessageType ProtoMessageType + private DataStoreMessageType _protoMessageType; + public DataStoreMessageType ProtoMessageType { get { return _protoMessageType; } set { _protoMessageType = value; RaisePropertyChangedAuto(); OnEditingValueChanged(); } @@ -122,7 +124,7 @@ namespace Tango.FSE.MachineConfiguration.Dialogs { if (Type == DataType.Proto) { - var type = MessageFactory.GetPMRTypeFromMessageType(ProtoMessageType); + var type = MessageFactory.GetDataStorePMRTypeFromDataStoreMessageType(ProtoMessageType); var instance = Activator.CreateInstance(type); EditingValue = instance.ToJsonString(); } diff --git a/Software/Visual_Studio/FSE/Modules/Tango.FSE.MachineConfiguration/ViewModels/DataStoreViewVM.cs b/Software/Visual_Studio/FSE/Modules/Tango.FSE.MachineConfiguration/ViewModels/DataStoreViewVM.cs index 16fe59f61..a90d5aa26 100644 --- a/Software/Visual_Studio/FSE/Modules/Tango.FSE.MachineConfiguration/ViewModels/DataStoreViewVM.cs +++ b/Software/Visual_Studio/FSE/Modules/Tango.FSE.MachineConfiguration/ViewModels/DataStoreViewVM.cs @@ -17,6 +17,7 @@ using Tango.FSE.Common.Notifications; using Tango.FSE.MachineConfiguration.Dialogs; using Tango.FSE.MachineConfiguration.Messages; using Tango.FSE.MachineConfiguration.Models; +using Tango.PMR.DataStore; using static Tango.FSE.BL.Services.MachineConfigurationService; using static Tango.SharedUI.Controls.NavigationControl; @@ -209,7 +210,7 @@ namespace Tango.FSE.MachineConfiguration.ViewModels Date = DateTime.UtcNow, Guid = Guid.NewGuid().ToString(), Key = result.Input, - Type = DataType.Int32, + Type = Tango.DataStore.DataType.Int32, Value = 10 }); } @@ -332,6 +333,7 @@ namespace Tango.FSE.MachineConfiguration.ViewModels } catch (Exception ex) { + IsFree = true; DataStore = null; LogManager.Log(ex, "Error loading data store."); if (await NotificationProvider.ShowWarningQuestion($"Error occurred while trying to load the data store.\n{ex.FlattenMessage()}", "RETRY", "CANCEL")) @@ -392,14 +394,14 @@ namespace Tango.FSE.MachineConfiguration.ViewModels itemModel.Date = DateTime.Parse(item.Date); itemModel.IsSelected = true; - DataType type = (DataType)Enum.Parse(typeof(DataType), item.Type); + DataStore.DataType type = (DataStore.DataType)Enum.Parse(typeof(DataStore.DataType), item.Type); itemModel.OriginalType = type; itemModel.Type = type; - PMR.Common.MessageType? messageType = null; - if (type == DataType.Proto && item.MessageType.IsNotNullOrEmpty()) + DataStoreMessageType? messageType = null; + if (type == Tango.DataStore.DataType.Proto && item.MessageType.IsNotNullOrEmpty()) { - messageType = (PMR.Common.MessageType)Enum.Parse(typeof(PMR.Common.MessageType), item.MessageType); + messageType = (DataStoreMessageType)Enum.Parse(typeof(DataStoreMessageType), item.MessageType); } itemModel.OriginalValue = DataStoreHelper.ParseDataStoreValue(type, item.Value, messageType); @@ -500,9 +502,9 @@ namespace Tango.FSE.MachineConfiguration.ViewModels { foreach (var item in collection.Items.Where(x => x.IsSelected && !x.IsGlobal && x.Value != null)) { - PMR.Common.MessageType? messageType = null; + DataStoreMessageType? messageType = null; - if (item.Type == DataType.Proto) + if (item.Type == Tango.DataStore.DataType.Proto) { messageType = (item.Value as DataStoreProtoObject).MessageType; } diff --git a/Software/Visual_Studio/FSE/Modules/Tango.FSE.MachineConfiguration/Views/DataStoreView.xaml b/Software/Visual_Studio/FSE/Modules/Tango.FSE.MachineConfiguration/Views/DataStoreView.xaml index 52a140c81..533414e23 100644 --- a/Software/Visual_Studio/FSE/Modules/Tango.FSE.MachineConfiguration/Views/DataStoreView.xaml +++ b/Software/Visual_Studio/FSE/Modules/Tango.FSE.MachineConfiguration/Views/DataStoreView.xaml @@ -51,7 +51,7 @@ <Grid DockPanel.Dock="Left"> <DockPanel VerticalAlignment="Center" Visibility="{Binding CanSync,Converter={StaticResource BooleanToVisibilityConverter}}"> <material:PackIcon Kind="InfoCircleOutline" Foreground="{StaticResource FSE_GreenBrush}" /> - <TextBlock FontSize="{StaticResource FSE_SmallFontSize}" Foreground="{StaticResource FSE_GreenBrush}" VerticalAlignment="Center" Margin="5 2 0 0">Machine is connected, updating the data store will be take effect immediately.</TextBlock> + <TextBlock FontSize="{StaticResource FSE_SmallFontSize}" Foreground="{StaticResource FSE_GreenBrush}" VerticalAlignment="Center" Margin="5 2 0 0">Machine is connected, updating the data store will take effect immediately.</TextBlock> </DockPanel> </Grid> |
