From 2c8c5b13e1429a11f2e1d7e08faf4f07df4e09fa Mon Sep 17 00:00:00 2001 From: Nicola Pievani Date: Thu, 19 Jul 2018 16:47:15 +0000 Subject: [PATCH] EgtDOORCreator 1.9g1 --- OptionsWindow/OptionModule.vb | 93 +++++++++++++++++++++++++++++++++-- 1 file changed, 89 insertions(+), 4 deletions(-) diff --git a/OptionsWindow/OptionModule.vb b/OptionsWindow/OptionModule.vb index ff681d8..335a1a3 100644 --- a/OptionsWindow/OptionModule.vb +++ b/OptionsWindow/OptionModule.vb @@ -22,6 +22,9 @@ Friend Module OptionModule Friend m_bBevelUp As Visibility Friend m_bBevelDown As Visibility + Friend m_DisableProperties As Visibility + Friend m_PropertList As New ObservableCollection(Of PropertyItem) + Friend Enum LauncherWindow As Integer Open_window = 0 Open_last_project = 1 @@ -63,6 +66,9 @@ Friend Module OptionModule Friend m_ConfigurationSoftware As ConfigType + Friend m_DisableWindowOrder As Boolean + Friend m_DisableTemplate As Boolean + Friend m_Disposition As New EdgeType(ConstGen.BEVEL_BYSWING, Visibility.Visible) Friend m_sDisposition As String = ConstGen.BEVEL_BYSWING @@ -100,9 +106,13 @@ Friend Module OptionModule Friend m_TopOverMaterialAssembly As String Friend m_BottomOverMaterialAssembly As String + Friend m_TotalDimension As Boolean + Friend m_TotalHeight As String + Friend m_TotalWidth As String + Friend m_CompoPaneOrder As List(Of String) = New List(Of String) - ' Lettura messaggi + ' iniziliazzo il la lettura dei messaggi Friend Sub ReadMessages() ' Leggo elenco lingue disponibili da file ini Dim nIndex As Integer = 1 @@ -136,9 +146,21 @@ Friend Module OptionModule ' inizializzazione lettura variabili ad inizio programma Friend Sub InitOptionModule() - 'I valori della pagina dell'assemblato - Dim Config As Integer = GetMainPrivateProfileInt(S_GENERAL, K_RUNAS, 0) - m_ConfigurationSoftware = If(Config = 0, ConfigType.Door, ConfigType.Assembly) + ' la lettura dei file dei messaggi è stata separata (vedere la calssse MainWindowModel) + 'i valori della pagina dell'assemblato + If (IniFile.m_nKeyOptions And KEY_OPT.JAMBS) <> 0 Then + Dim Config As Integer = GetMainPrivateProfileInt(S_GENERAL, K_RUNAS, 0) + m_ConfigurationSoftware = If(Config = 0, ConfigType.Door, ConfigType.Assembly) + Else + ' Package JAMBS is not available + m_ConfigurationSoftware = ConfigType.Door + End If + + Dim DisableOrder As Integer = GetMainPrivateProfileInt(S_GENERAL, "DisableOrder", 0) + m_DisableWindowOrder = If(DisableOrder = 0, False, True) + + Dim DisableTemplate As Integer = GetMainPrivateProfileInt(S_GENERAL, "DisableTemplate", 0) + m_DisableTemplate = If(DisableTemplate = 0, False, True) ' imposto unità di misura per interfaccia utente m_bIsMmUnit = (GetMainPrivateProfileInt(S_SCENE, K_MMUNITS, 1) <> 0) @@ -220,6 +242,14 @@ Friend Module OptionModule m_DisableDeleteCommandHM = False End If + Dim nDisableProperties As Integer = 1 + nDisableProperties = GetMainPrivateProfileInt(S_GENERAL, "DisableProperties", 1) + If nDisableProperties = 0 Then + m_DDisableProperties = Visibility.Visible + Else + m_DisableProperties = Visibility.Collapsed + End If + ' leggo il tipo di Bevel selezionato Dim BevelUp As Visibility DefaultGetPrivateProfilesBevel(S_EDGE, K_BEVELU_INI, BevelUp) @@ -248,6 +278,11 @@ Friend Module OptionModule m_bBevelDown = Visibility.Visible End If + ' carico la lista delle proprietà + Dim PropertyList As New ObservableCollection(Of String) + DefaultGetPrivateProfileObservableCollection(ConstIni.S_PROPERTIES_INI, ConstIni.K_PROPRTIESLIST_INI, PropertyList) + LoadPropertiesList(PropertyList, m_PropertList) + ' Leggo le dimensioni della porta dal file Default.ini Dim Width As String = String.Empty DefaultGetPrivateProfileString(S_SIZE_INI, K_WIDTH_INI, "32", Width) @@ -391,6 +426,16 @@ Friend Module OptionModule DefaultGetPrivateProfileString(S_OVERLAP, K_DELTAT, "0", DeltaT) m_DeltaThickness = DeltaT + Dim TotalDim As Boolean = False + DefaultGetPrivateProfilesMachining(S_TOTALDIMENSION, K_STATIC, TotalDim) + m_TotalDimension = TotalDim + Dim TotalH As String = String.Empty + DefaultGetPrivateProfileString(S_TOTALDIMENSION, K_TOTALHEIGHT, "82", TotalH) + m_TotalHeight = TotalH + Dim TotalW As String = String.Empty + DefaultGetPrivateProfileString(S_TOTALDIMENSION, K_TOTALWIDTH, "38", TotalW) + m_TotalWidth = TotalW + Dim TopChk As Boolean = False DefaultGetPrivateProfilesMachining(S_PART, K_TOPJAMB, TopChk) m_TopJambChk = TopChk @@ -468,6 +513,46 @@ Friend Module OptionModule End Sub + Friend Sub LoadPropertiesList(List As ObservableCollection(Of String), ByRef ListToBeLoaded As ObservableCollection(Of PropertyItem)) + If List.Count = 0 Then + m_DisableProperties = Visibility.Collapsed + Return + End If + For Each Item In List + If Item.Contains("-") Then + Dim ItemSlpit() As String = Item.Split("-"c) + If ItemSlpit(1).Contains("1") Then + Dim SubItemSplit() As String = ItemSlpit(0).Split("/"c) + If SubItemSplit.Count > 1 Then + ListToBeLoaded.Add(New PropertyItem(SubItemSplit(0), SubItemSplit(1), True)) + Else + ListToBeLoaded.Add(New PropertyItem(SubItemSplit(0), SubItemSplit(0), True)) + End If + Else + Dim SubItemSplit() As String = ItemSlpit(0).Split("/"c) + If SubItemSplit.Count > 1 Then + ListToBeLoaded.Add(New PropertyItem(SubItemSplit(0), SubItemSplit(1), False)) + Else + ListToBeLoaded.Add(New PropertyItem(SubItemSplit(0), SubItemSplit(0), False)) + End If + End If + Else + Dim SubItemSplit() As String = Item.Split("/"c) + If SubItemSplit.Count > 1 Then + ListToBeLoaded.Add(New PropertyItem(SubItemSplit(0), SubItemSplit(1), False)) + Else + ListToBeLoaded.Add(New PropertyItem(SubItemSplit(0), SubItemSplit(0), False)) + End If + End If + Next + End Sub + + Friend Sub CreateNewPropertiesList(ByRef List As ObservableCollection(Of PropertyItem)) + For Each Item In OptionModule.m_PropertList + List.Add(New PropertyItem(Item.Name, Item.GraphicName, Item.IsChecked)) + Next + End Sub + Friend Sub SetEdgeTypeList(EdgeTypeList As ObservableCollection(Of String), bBevelUp As Boolean, bBevelDown As Boolean) If Not bBevelUp Then EdgeTypeList.Remove(ConstGen.BEVEL_UP)