aggiunto nome strategia e immagine, gestito errore su forcestrategy
This commit is contained in:
@@ -88,7 +88,6 @@ Public Class ForcedStrategyBTLVM
|
||||
If IsNothing(JsonAvailableStrategyFeature) Then Return False
|
||||
Dim JsonAvailableTopology As JsonAvailableTopology = JsonAvailableStrategyFeature.TopologyList.FirstOrDefault(Function(x) x.sName = sTopologyName)
|
||||
If IsNothing(JsonAvailableTopology) Then
|
||||
Return False
|
||||
' ricavo topologia da feature
|
||||
FindTopologyFromFeature(nFeatureId, sTopologyName)
|
||||
JsonAvailableTopology = JsonAvailableStrategyFeature.TopologyList.FirstOrDefault(Function(x) x.sName = sTopologyName)
|
||||
@@ -152,28 +151,30 @@ Public Class ForcedStrategyBTLVM
|
||||
' cancello precedenti valori
|
||||
Dim sPrecStrategyID As String = ""
|
||||
EgtGetInfo(m_CurrentFeature.nFeatureId, "STRATEGY", sPrecStrategyID)
|
||||
Dim PrecInfo As String() = {}
|
||||
EgtGetAllInfo(m_CurrentFeature.nFeatureId, PrecInfo)
|
||||
Dim PrecStrategyInfo As String() = PrecInfo.Where(Function(x) x.StartsWith(sPrecStrategyID)).ToArray()
|
||||
If Not String.IsNullOrWhiteSpace(sPrecStrategyID) Then
|
||||
Dim PrecInfo As String() = {}
|
||||
EgtGetAllInfo(m_CurrentFeature.nFeatureId, PrecInfo)
|
||||
Dim PrecStrategyInfo As String() = PrecInfo.Where(Function(x) x.StartsWith(sPrecStrategyID)).ToArray()
|
||||
For Each Info In PrecStrategyInfo
|
||||
EgtRemoveInfo(m_CurrentFeature.nFeatureId, Info.Split("="c)(0))
|
||||
Next
|
||||
End If
|
||||
If m_SelStrategy.sStrategyID = AUTOMATICSTRATEGYID Then
|
||||
EgtRemoveInfo(m_CurrentFeature.nFeatureId, "STRATEGY")
|
||||
Else
|
||||
EgtSetInfo(m_CurrentFeature.nFeatureId, "STRATEGY", SelStrategy.sStrategyID)
|
||||
For Each Param In SelStrategy.ParameterList
|
||||
Select Case Param.GetType()
|
||||
Case GetType(BooleanStrategyParameter)
|
||||
EgtSetInfo(m_CurrentFeature.nFeatureId, m_SelStrategy.sStrategyID & "_" & Param.sNameNge, DirectCast(Param, BooleanStrategyParameter).bValue)
|
||||
Case GetType(DoubleStrategyParameter)
|
||||
EgtSetInfo(m_CurrentFeature.nFeatureId, m_SelStrategy.sStrategyID & "_" & Param.sNameNge, DirectCast(Param, DoubleStrategyParameter).sValue)
|
||||
Case GetType(ComboStrategyParameter)
|
||||
EgtSetInfo(m_CurrentFeature.nFeatureId, m_SelStrategy.sStrategyID & "_" & Param.sNameNge, DirectCast(Param, ComboStrategyParameter).SelValue.sValue)
|
||||
End Select
|
||||
Next
|
||||
If Not IsNothing(m_SelStrategy) Then
|
||||
If m_SelStrategy.sStrategyID = AUTOMATICSTRATEGYID Then
|
||||
EgtRemoveInfo(m_CurrentFeature.nFeatureId, "STRATEGY")
|
||||
Else
|
||||
EgtSetInfo(m_CurrentFeature.nFeatureId, "STRATEGY", SelStrategy.sStrategyID)
|
||||
For Each Param In SelStrategy.ParameterList
|
||||
Select Case Param.GetType()
|
||||
Case GetType(BooleanStrategyParameter)
|
||||
EgtSetInfo(m_CurrentFeature.nFeatureId, m_SelStrategy.sStrategyID & "_" & Param.sNameNge, DirectCast(Param, BooleanStrategyParameter).bValue)
|
||||
Case GetType(DoubleStrategyParameter)
|
||||
EgtSetInfo(m_CurrentFeature.nFeatureId, m_SelStrategy.sStrategyID & "_" & Param.sNameNge, DirectCast(Param, DoubleStrategyParameter).sValue)
|
||||
Case GetType(ComboStrategyParameter)
|
||||
EgtSetInfo(m_CurrentFeature.nFeatureId, m_SelStrategy.sStrategyID & "_" & Param.sNameNge, DirectCast(Param, ComboStrategyParameter).SelValue.sValue)
|
||||
End Select
|
||||
Next
|
||||
End If
|
||||
End If
|
||||
End Sub
|
||||
End Class
|
||||
|
||||
@@ -167,7 +167,7 @@ Public Class JsonAvailableStrategy
|
||||
#Region "CONSTRUCTOR"
|
||||
|
||||
<JsonConstructor>
|
||||
Sub New(sStrategyID As String, nIndexInList As Integer)
|
||||
Sub New(sStrategyID As String)
|
||||
m_sStrategyID = sStrategyID
|
||||
End Sub
|
||||
|
||||
@@ -189,6 +189,11 @@ Public Class JsonAvailableStrategy
|
||||
' Leggo il contenuto del file JSON e deserializzo
|
||||
Dim StrategyJson As String = File.ReadAllText(StrategyPath)
|
||||
Dim strategyConfig As JsonDefaultStrategy = JsonConvert.DeserializeObject(Of JsonDefaultStrategy)(StrategyJson)
|
||||
Strategy.sStrategyName = strategyConfig.sStrategyName
|
||||
Dim sImagePath As String = Map.refMainWindowVM.MainWindowM.GetStandardDirPath() & "\" & sStrategyID & "\" & sStrategyID & ".png"
|
||||
If File.Exists(sImagePath) Then
|
||||
Strategy.sStrategyImagePath = sImagePath
|
||||
End If
|
||||
If strategyConfig.sStrategyID <> m_sStrategyID Then EgtOutLog("Error! Strategy name wrong in " & m_sStrategyID)
|
||||
For Each Parameter In strategyConfig.ParameterList
|
||||
Strategy.ParameterList.Add(Parameter.Deserialize())
|
||||
@@ -211,7 +216,16 @@ Public Class JsonDefaultStrategy
|
||||
End Get
|
||||
Set(value As String)
|
||||
m_sStrategyID = value
|
||||
NotifyPropertyChanged(NameOf(sStrategyID))
|
||||
End Set
|
||||
End Property
|
||||
|
||||
Private m_sStrategyName As String
|
||||
Public Property sStrategyName As String
|
||||
Get
|
||||
Return m_sStrategyName
|
||||
End Get
|
||||
Set(value As String)
|
||||
m_sStrategyName = value
|
||||
End Set
|
||||
End Property
|
||||
|
||||
@@ -222,7 +236,6 @@ Public Class JsonDefaultStrategy
|
||||
End Get
|
||||
Set(value As ObservableCollection(Of JsonDefaultStrategyParameter))
|
||||
m_ParameterList = value
|
||||
NotifyPropertyChanged(NameOf(ParameterList))
|
||||
End Set
|
||||
End Property
|
||||
|
||||
@@ -231,8 +244,9 @@ Public Class JsonDefaultStrategy
|
||||
#Region "CONSTRUCTOR"
|
||||
|
||||
<JsonConstructor>
|
||||
Sub New(sStrategyID As String, nIndexInList As Integer)
|
||||
Sub New(sStrategyID As String, sStrategyName As String)
|
||||
m_sStrategyID = sStrategyID
|
||||
m_sStrategyName = sStrategyName
|
||||
End Sub
|
||||
|
||||
Sub New(Strategy As Strategy)
|
||||
|
||||
@@ -786,6 +786,17 @@ Public Class Strategy
|
||||
End Set
|
||||
End Property
|
||||
|
||||
Private m_sStrategyName As String
|
||||
Public Property sStrategyName As String
|
||||
Get
|
||||
Return m_sStrategyName
|
||||
End Get
|
||||
Set(value As String)
|
||||
m_sStrategyName = value
|
||||
NotifyPropertyChanged(NameOf(sStrategyName))
|
||||
End Set
|
||||
End Property
|
||||
|
||||
Private m_nIndexInList As Integer = -1
|
||||
Public Property nIndexInList As Integer
|
||||
Get
|
||||
@@ -801,14 +812,14 @@ Public Class Strategy
|
||||
NotifyPropertyChanged(NameOf(nIndexInList))
|
||||
End Sub
|
||||
|
||||
Private m_sImageStrategy As String = "pack://application:,,,/Resources/NewPage/LogoProvaStrategy.png"
|
||||
Public Property sImageStrategy As String
|
||||
Private m_sStrategyImagePath As String = "pack://application:,,,/Resources/NewPage/LogoProvaStrategy.png"
|
||||
Public Property sStrategyImagePath As String
|
||||
Get
|
||||
Return m_sImageStrategy
|
||||
Return m_sStrategyImagePath
|
||||
End Get
|
||||
Set(value As String)
|
||||
m_sImageStrategy = value
|
||||
NotifyPropertyChanged(NameOf(sImageStrategy))
|
||||
m_sStrategyImagePath = value
|
||||
NotifyPropertyChanged(NameOf(sStrategyImagePath))
|
||||
End Set
|
||||
End Property
|
||||
|
||||
|
||||
@@ -22,11 +22,12 @@
|
||||
<ListBox.Resources>
|
||||
<DataTemplate DataType="{x:Type Optmizer:Strategy}">
|
||||
<StackPanel Orientation="Horizontal">
|
||||
<Image Source="{Binding sImageStrategy}"
|
||||
<Image Source="{Binding sStrategyImagePath}"
|
||||
Stretch="Uniform"
|
||||
Width="100"
|
||||
Height="100"/>
|
||||
<TextBlock Text="{Binding sStrategyID}"
|
||||
Height="100"
|
||||
/>
|
||||
<TextBlock Text="{Binding sStrategyName}"
|
||||
Style="{StaticResource DialogWindow_TextBlock}"/>
|
||||
</StackPanel>
|
||||
</DataTemplate>
|
||||
@@ -62,11 +63,11 @@
|
||||
<ListBox.Resources>
|
||||
<DataTemplate DataType="{x:Type Optmizer:Strategy}">
|
||||
<StackPanel Orientation="Horizontal">
|
||||
<Image Source="{Binding sImageStrategy}"
|
||||
<Image Source="{Binding sStrategyImagePath}"
|
||||
Stretch="Uniform"
|
||||
Width="100"
|
||||
Height="100"/>
|
||||
<TextBlock Text="{Binding sStrategyID}"
|
||||
<TextBlock Text="{Binding sStrategyName}"
|
||||
Style="{StaticResource DialogWindow_TextBlock}"/>
|
||||
</StackPanel>
|
||||
</DataTemplate>
|
||||
|
||||
Reference in New Issue
Block a user