EgtDOORCreator 1.9g2 :
- la lista degli swing è configurabile - è possibile usare le costanti anche nell'assemblato - è possibile salvare un assemblato in forma di template.
This commit is contained in:
@@ -24,6 +24,7 @@ Friend Module OptionModule
|
||||
|
||||
Friend m_DisableProperties As Visibility
|
||||
Friend m_PropertList As New ObservableCollection(Of PropertyItem)
|
||||
Friend m_PropertListJamb As New ObservableCollection(Of PropertyItem)
|
||||
|
||||
Friend Enum LauncherWindow As Integer
|
||||
Open_window = 0
|
||||
@@ -44,7 +45,10 @@ Friend Module OptionModule
|
||||
Friend m_Height As String
|
||||
Friend m_Thickness As String
|
||||
Friend m_Weight As String
|
||||
|
||||
Friend m_SwingTypeList As New List(Of String)
|
||||
Friend m_SwingList As New List(Of SwingItemTypeList)
|
||||
|
||||
Friend m_Swing As String
|
||||
Friend m_StaticEdgeTypeList As New ObservableCollection(Of String)
|
||||
Friend m_LockEdgeType As New EdgeType("", Visibility.Visible)
|
||||
@@ -155,7 +159,7 @@ Friend Module OptionModule
|
||||
' 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)
|
||||
|
||||
@@ -282,6 +286,9 @@ Friend Module OptionModule
|
||||
Dim PropertyList As New ObservableCollection(Of String)
|
||||
DefaultGetPrivateProfileObservableCollection(ConstIni.S_PROPERTIES_INI, ConstIni.K_PROPRTIESLIST_INI, PropertyList)
|
||||
LoadPropertiesList(PropertyList, m_PropertList)
|
||||
PropertyList.Clear()
|
||||
DefaultGetPrivateProfileObservableCollection(ConstIni.S_PROPERTIES_INI, ConstIni.K_PROPRTIESLISTJAMB_INI, PropertyList)
|
||||
LoadPropertiesList(PropertyList, m_PropertListJamb)
|
||||
|
||||
' Leggo le dimensioni della porta dal file Default.ini
|
||||
Dim Width As String = String.Empty
|
||||
@@ -299,14 +306,18 @@ Friend Module OptionModule
|
||||
m_Thickness = Thickness
|
||||
Dim dThickness As Double
|
||||
If StringToDouble(m_Thickness, dThickness) Then EgtLuaSetGlobNumVar("T", dThickness)
|
||||
|
||||
' carico i valori associati allo swing della porta
|
||||
Dim SwingTypeList As New List(Of String)
|
||||
DefaultGetPrivateProfileList(S_SIZE_INI, K_SWING_LIST_INI, SwingTypeList)
|
||||
m_SwingTypeList = SwingTypeList
|
||||
LoadSwingTypeList(SwingTypeList)
|
||||
'm_SwingTypeList = SwingTypeList
|
||||
|
||||
Dim Swing As String = String.Empty
|
||||
DefaultGetPrivateProfileString(S_SIZE_INI, K_SWING_INI, ConstGen.RIGHTHAND, Swing)
|
||||
m_Swing = Swing
|
||||
LoadSwingList()
|
||||
|
||||
Dim Weight As String = String.Empty
|
||||
DefaultGetPrivateProfileString(S_SIZE_INI, K_WEIGHT_INI, "25", Weight)
|
||||
m_Weight = Weight
|
||||
@@ -548,11 +559,27 @@ Friend Module OptionModule
|
||||
End Sub
|
||||
|
||||
Friend Sub CreateNewPropertiesList(ByRef List As ObservableCollection(Of PropertyItem))
|
||||
If OptionModule.m_DisableProperties <> Visibility.Visible Then Return
|
||||
If List.Count > 0 Then List.Clear()
|
||||
For Each Item In OptionModule.m_PropertList
|
||||
List.Add(New PropertyItem(Item.Name, Item.GraphicName, Item.IsChecked))
|
||||
Next
|
||||
End Sub
|
||||
|
||||
Friend Sub CreateNewPropertiesListJamb(ByRef List As ObservableCollection(Of PropertyItem))
|
||||
If OptionModule.m_DisableProperties <> Visibility.Visible Then Return
|
||||
Dim LocalList As ObservableCollection(Of PropertyItem)
|
||||
If Not String.IsNullOrEmpty(OptionModule.m_PropertListJamb(0).Name) Then
|
||||
LocalList = OptionModule.m_PropertListJamb
|
||||
Else
|
||||
LocalList = OptionModule.m_PropertList
|
||||
End If
|
||||
If List.Count > 0 Then List.Clear()
|
||||
For Each Item In LocalList
|
||||
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)
|
||||
@@ -562,18 +589,94 @@ Friend Module OptionModule
|
||||
End If
|
||||
End Sub
|
||||
|
||||
Private Sub LoadSwingTypeList(ByRef List As List(Of String))
|
||||
If List.Count = 0 Then Return
|
||||
For Each ItemSwing In List
|
||||
If ItemSwing.Contains("/"c) Then
|
||||
Dim ItemAlias() As String = ItemSwing.Split("/"c)
|
||||
Dim Swing As New SwingItemTypeList(ItemAlias(0))
|
||||
For IndexItem As Integer = 1 To ItemAlias.Count - 1
|
||||
Swing.AliasList.Add(ItemAlias(IndexItem))
|
||||
Next
|
||||
m_SwingList.Add(Swing)
|
||||
Else
|
||||
Dim Swing As New SwingItemTypeList(ItemSwing)
|
||||
m_SwingList.Add(Swing)
|
||||
End If
|
||||
Next
|
||||
End Sub
|
||||
|
||||
' carico le liste che devono essere rappresentate a video
|
||||
Private Sub LoadSwingList()
|
||||
For Index As Integer = 0 To 3
|
||||
m_SwingTypeListSinlgeDoor.Add(m_SwingTypeList(Index))
|
||||
' carico gli swing della porta singola da mostrare a video
|
||||
If m_SwingList(Index).AliasList.Count = 0 Then
|
||||
m_SwingTypeListSinlgeDoor.Add(m_SwingList(Index).Name)
|
||||
m_SwingTypeList.Add(m_SwingList(Index).Name)
|
||||
Else
|
||||
For Each Item In m_SwingList(Index).AliasList
|
||||
m_SwingTypeListSinlgeDoor.Add(Item)
|
||||
m_SwingTypeList.Add(Item)
|
||||
Next
|
||||
End If
|
||||
Next
|
||||
For Index As Integer = 4 To 7
|
||||
m_SwingTypeListLeftDoor.Add(m_SwingTypeList(Index))
|
||||
' carico gli swing della prima anta
|
||||
If m_SwingList(Index).AliasList.Count = 0 Then
|
||||
m_SwingTypeListLeftDoor.Add(m_SwingList(Index).Name)
|
||||
m_SwingTypeList.Add(m_SwingList(Index).Name)
|
||||
Else
|
||||
For Each Item In m_SwingList(Index).AliasList
|
||||
m_SwingTypeListLeftDoor.Add(Item)
|
||||
m_SwingTypeList.Add(Item)
|
||||
Next
|
||||
End If
|
||||
Next
|
||||
For Index As Integer = 8 To 11
|
||||
m_SwingTypeListRightDoor.Add(m_SwingTypeList(Index))
|
||||
' carico gli swing della seconda anta
|
||||
If m_SwingList(Index).AliasList.Count = 0 Then
|
||||
m_SwingTypeListRightDoor.Add(m_SwingList(Index).Name)
|
||||
m_SwingTypeList.Add(m_SwingList(Index).Name)
|
||||
Else
|
||||
For Each Item In m_SwingList(Index).AliasList
|
||||
m_SwingTypeListRightDoor.Add(Item)
|
||||
m_SwingTypeList.Add(Item)
|
||||
Next
|
||||
End If
|
||||
Next
|
||||
End Sub
|
||||
|
||||
Public Sub SetCurrSwing(ByRef SwingAlias As SwingItemTypeList, ByRef SwingDDF As String)
|
||||
SwingAlias = Nothing
|
||||
For Each Item In OptionModule.m_SwingList
|
||||
If Trim(SwingDDF) = Trim(Item.Name) Then
|
||||
SwingAlias = Item
|
||||
If Item.AliasList.Count > 0 Then
|
||||
SwingAlias = Item
|
||||
If Item.AliasList.Count > 0 Then
|
||||
SwingAlias.AliasName = Item.AliasList(0)
|
||||
Swing = Item.AliasList(0)
|
||||
End If
|
||||
Else
|
||||
SwingAlias.AliasName = Item.Name
|
||||
End If
|
||||
Exit For
|
||||
End If
|
||||
Next
|
||||
' se arrivo fni qui significa che sicuramente deve esistere un alias
|
||||
If IsNothing(SwingAlias) Then
|
||||
For Each ItemSwingList In OptionModule.m_SwingList
|
||||
For Each ItemAlias In ItemSwingList.AliasList
|
||||
If Trim(SwingDDF) = Trim(ItemAlias) Then
|
||||
SwingAlias = ItemSwingList
|
||||
SwingAlias.AliasName = ItemAlias
|
||||
Exit For
|
||||
End If
|
||||
Next
|
||||
Next
|
||||
End If
|
||||
End Sub
|
||||
|
||||
Public Function DispositionVisibility() As Visibility
|
||||
' se non è selezionata nessuna disposizione allora deve essere selezionabile da interfaccia
|
||||
If IsNothing(m_Disposition) Then
|
||||
|
||||
Reference in New Issue
Block a user