f4e2167c9b
-corretto alcuni bug
109 lines
5.3 KiB
VB.net
109 lines
5.3 KiB
VB.net
Imports System.Collections.ObjectModel
|
|
Imports System.IO
|
|
Imports EgtBEAMWALL.Core
|
|
Imports EgtBEAMWALL.Optimizer.MainMenuVM
|
|
Imports EgtUILib
|
|
Imports EgtWPFLib5
|
|
Imports Newtonsoft.Json
|
|
|
|
Public Class GeneralParametersWndVM
|
|
Inherits VMBase
|
|
|
|
#Region "FIELDS & PROPERTIES"
|
|
|
|
Friend Event m_CloseWindow(bDialogResult As Boolean)
|
|
|
|
Private m_GeneralParametersList As New ObservableCollection(Of ProjectParameters)
|
|
Public Property GeneralParametersList As ObservableCollection(Of ProjectParameters)
|
|
Get
|
|
Return m_GeneralParametersList
|
|
End Get
|
|
Set(value As ObservableCollection(Of ProjectParameters))
|
|
m_GeneralParametersList = value
|
|
NotifyPropertyChanged(NameOf(GeneralParametersList))
|
|
End Set
|
|
End Property
|
|
|
|
Private m_bSaveGeneralParameters As Boolean
|
|
Public Property bSaveGeneralParameters As Boolean
|
|
Get
|
|
Return m_bSaveGeneralParameters
|
|
End Get
|
|
Set(value As Boolean)
|
|
m_bSaveGeneralParameters = value
|
|
WriteMainPrivateProfileString(S_STRATEGY, "ForceGeneralParameters", If(m_bSaveGeneralParameters, 1, 0))
|
|
Dim nBTLInfoLayerId As Integer = EgtGetFirstNameInGroup(GDB_ID.ROOT, PROJECTINFO)
|
|
If m_bSaveGeneralParameters Then
|
|
SetGeneralParametersIsEnable(True)
|
|
Dim sInfo As String = String.Empty
|
|
For Each GeneralParameter In GeneralParametersList
|
|
Select Case GeneralParameter.GetType()
|
|
Case GetType(BooleanGenericParameter)
|
|
EgtSetInfo(nBTLInfoLayerId, GeneralParameter.sNameNge, DirectCast(GeneralParameter, BooleanGenericParameter).bValue)
|
|
Case GetType(DoubleGenericParameter)
|
|
EgtSetInfo(nBTLInfoLayerId, GeneralParameter.sNameNge, DirectCast(GeneralParameter, DoubleGenericParameter).sValue)
|
|
Case GetType(ComboGenericParameter)
|
|
EgtSetInfo(nBTLInfoLayerId, GeneralParameter.sNameNge, DirectCast(GeneralParameter, ComboGenericParameter).SelValue.sValue)
|
|
Case GetType(StringGenericParameter)
|
|
EgtSetInfo(nBTLInfoLayerId, GeneralParameter.sNameNge, DirectCast(GeneralParameter, StringGenericParameter).sValue)
|
|
Case GetType(ListGenericParameter)
|
|
For Each Item As ToolParameter In DirectCast(GeneralParameter, ListGenericParameter).ListValue
|
|
If Item.bIsActive Then
|
|
sInfo &= Item.sUUID & "," & Item.sName & ";"
|
|
EgtSetInfo(nBTLInfoLayerId, GeneralParameter.sNameNge, sInfo)
|
|
End If
|
|
Next
|
|
End Select
|
|
Next
|
|
Map.refOnlyProdManagerVM.Save()
|
|
Else
|
|
SetGeneralParametersIsEnable(False)
|
|
Dim sStrategiesDirPath As String = Map.refMainWindowVM.MainWindowM.GetStrategiesDirPath(Map.refStrategyManagerVM.SelStrategyType.Id)
|
|
Dim sGeneralParametersFilePath As String = sStrategiesDirPath & "\" & GENERALPARAMETERS_FILE & ".json"
|
|
If File.Exists(sGeneralParametersFilePath) Then
|
|
Dim sReadedFiles As String = File.ReadAllText(sGeneralParametersFilePath)
|
|
Dim JsonGeneralParametersList As List(Of JsonGeneralParameters) = JsonConvert.DeserializeObject(Of List(Of JsonGeneralParameters))(sReadedFiles)
|
|
m_GeneralParametersList = New ObservableCollection(Of ProjectParameters)((From JsonGeneralParameter In JsonGeneralParametersList
|
|
Select JsonGeneralParameter.Deserialize(Map.refStrategyManagerVM.SelStrategyType.Id)).ToList())
|
|
For Each GenericItem As ProjectParameters In m_GeneralParametersList
|
|
Select Case GenericItem.sMinUserLevel
|
|
Case UserLevel.ADVANCED
|
|
Map.refMainMenuVM.UserLevelGenericVisibility(GenericItem, If(Map.refMainMenuVM.UserAdmin_IsChecked, Visibility.Visible, Visibility.Collapsed))
|
|
Case Else
|
|
If Not Map.refMainMenuVM.UserAdmin_IsChecked Then
|
|
Map.refMainMenuVM.UserLevelGenericVisibility(GenericItem, If(GenericItem.sMinUserLevel = UserLevel.USER, Visibility.Visible, Visibility.Collapsed))
|
|
Map.refMainMenuVM.SetUnloackImage("pack://application:,,,/Resources/NewPage/padlock.png")
|
|
End If
|
|
End Select
|
|
Next
|
|
NotifyPropertyChanged(NameOf(GeneralParametersList))
|
|
End If
|
|
End If
|
|
NotifyPropertyChanged(NameOf(bSaveGeneralParameters))
|
|
End Set
|
|
End Property
|
|
|
|
Private m_GeneralParametersIsEnable As Boolean = False
|
|
Public ReadOnly Property GeneralParametersIsEnable As Boolean
|
|
Get
|
|
Return m_GeneralParametersIsEnable
|
|
End Get
|
|
End Property
|
|
Friend Sub SetGeneralParametersIsEnable(value As Boolean)
|
|
m_GeneralParametersIsEnable = value
|
|
NotifyPropertyChanged(NameOf(GeneralParametersIsEnable))
|
|
End Sub
|
|
|
|
#End Region ' Fields & Properties
|
|
|
|
#Region "CONSTRUCTOR"
|
|
|
|
Sub New()
|
|
m_GeneralParametersList = Map.refOnlyProdManagerVM.GeneralParametersStrategyVM.GeneralParametersList
|
|
m_bSaveGeneralParameters = GetMainPrivateProfileInt(S_STRATEGY, "ForceGeneralParameters", 0) <> 0
|
|
End Sub
|
|
|
|
#End Region ' Constructor
|
|
|
|
End Class
|