diff --git a/Assembly/Assembly.vb b/Assembly/Assembly.vb
index b945087..40c6634 100644
--- a/Assembly/Assembly.vb
+++ b/Assembly/Assembly.vb
@@ -1829,41 +1829,36 @@ Public Class Assembly
Else
SetDoorNumber("1")
End If
- 'For IndexDoor As Integer = 0 To CInt(DoorNumber) - 1
- ' ResearchMatchJamb(GetArrayPartDoor(IndexDoor).Door, Map.refAssemblyPageVM.CurrAssembly.LeftJamb)
- ' ResearchMatchJamb(GetArrayPartDoor(IndexDoor).Door, Map.refAssemblyPageVM.CurrAssembly.RightJamb)
- ' ResearchMatchJamb(GetArrayPartDoor(IndexDoor).Door, Map.refAssemblyPageVM.CurrAssembly.TopJamb)
- ' ResearchMatchJamb(GetArrayPartDoor(IndexDoor).Door, Map.refAssemblyPageVM.CurrAssembly.BottomJamb)
- 'Next
- 'If CInt(DoorNumber) > 1 Then
- ' ResearchMatchDoor(GetArrayPartDoor(0).Door, GetArrayPartDoor(1).Door)
- ' ResearchMatchDoor(GetArrayPartDoor(1).Door, GetArrayPartDoor(0).Door)
- 'End If
End Sub
Private Sub ResearchMatchJamb(Door As Part, Jamb As Part)
For IndexCompo As Integer = 0 To Door.CompoList.Count - 1
If Not String.IsNullOrEmpty(Door.CompoList(IndexCompo).IdCode) Then
- ' cerco l'associazione delle compo
+ ' cerco l'associazione delle compo sulla porta con le componenti sul telaio
For IndexCompoJamb As Integer = 0 To Jamb.CompoList.Count - 1
If Jamb.CompoList(IndexCompoJamb).IdCode = Door.CompoList(IndexCompo).IdCode Then
Door.CompoList(IndexCompo).refJambCompo = Jamb.CompoList(IndexCompoJamb)
Jamb.CompoList(IndexCompoJamb).refCompoDoor = Door.CompoList(IndexCompo)
Door.CompoList(IndexCompo).refJambCompo.IsReadOnly = False
Door.CompoList(IndexCompo).IsReadOnly = True
-
+ ' definisco la proprietà ReadOnly per i parametri inseriti
If Not LoadCompoParam(Door.CompoList(IndexCompo), Door.TypePart) Then Return
For IndexParam As Integer = 0 To Door.CompoList(IndexCompo).refJambCompo.CompoParamList.Count - 1
Dim CmpPar As CompoParam = Door.CompoList(IndexCompo).CompoParamList(IndexParam)
Dim CmpRefPar As CompoParam = Door.CompoList(IndexCompo).refJambCompo.CompoParamList(IndexParam)
- If TypeOf CmpRefPar Is TextBoxParam Then
+ If TypeOf CmpRefPar Is TextBoxOnOffParam Then
+ Dim TBoxPar As TextBoxOnOffParam = DirectCast(CmpPar, TextBoxOnOffParam)
+ Dim TBoxRefPar As TextBoxOnOffParam = DirectCast(CmpRefPar, TextBoxOnOffParam)
+ CalcCompoParamVisibility(TBoxPar.DDFName, TBoxRefPar.IsReadOnly)
+ TBoxPar.IsReadOnly = True
+ ElseIf TypeOf CmpRefPar Is TextBoxParam Then
Dim TBoxPar As TextBoxParam = DirectCast(CmpPar, TextBoxParam)
Dim TBoxRefPar As TextBoxParam = DirectCast(CmpRefPar, TextBoxParam)
CalcCompoParamVisibility(TBoxPar.DDFName, TBoxRefPar.IsReadOnly)
TBoxPar.IsReadOnly = True
- ElseIf TypeOf CmpRefPar Is TextBoxOnOffParam Then
- Dim TBoxPar As TextBoxOnOffParam = DirectCast(CmpPar, TextBoxOnOffParam)
- Dim TBoxRefPar As TextBoxOnOffParam = DirectCast(CmpRefPar, TextBoxOnOffParam)
+ ElseIf TypeOf CmpRefPar Is ComboBoxOnOffParam Then
+ Dim TBoxPar As ComboBoxOnOffParam = DirectCast(CmpPar, ComboBoxOnOffParam)
+ Dim TBoxRefPar As ComboBoxOnOffParam = DirectCast(CmpRefPar, ComboBoxOnOffParam)
CalcCompoParamVisibility(TBoxPar.DDFName, TBoxRefPar.IsReadOnly)
TBoxPar.IsReadOnly = True
ElseIf TypeOf CmpRefPar Is ComboBoxParam Then
@@ -1888,22 +1883,29 @@ Public Class Assembly
For IndexCompo As Integer = 0 To DoorActive.CompoList.Count - 1
If Not String.IsNullOrEmpty(DoorActive.CompoList(IndexCompo).IdCode) Then
For IndexCompoInactiveDoor As Integer = 0 To DoorInactive.CompoList.Count - 1
+ ' cerco l'associazione delle compo sulla porta attiva con le componenti sulla porta inattiva
If DoorInactive.CompoList(IndexCompoInactiveDoor).IdCode = DoorActive.CompoList(IndexCompo).IdCode Then
DoorActive.CompoList(IndexCompo).refJambCompo = DoorInactive.CompoList(IndexCompoInactiveDoor)
+ DoorInactive.CompoList(IndexCompoInactiveDoor).refCompoDoor = DoorActive.CompoList(IndexCompo).refJambCompo
DoorActive.CompoList(IndexCompo).refJambCompo.IsReadOnly = False
DoorActive.CompoList(IndexCompo).IsReadOnly = True
If Not LoadCompoParam(DoorActive.CompoList(IndexCompo), DoorActive.TypePart) Then Return
For IndexParam As Integer = 0 To DoorActive.CompoList(IndexCompo).refJambCompo.CompoParamList.Count - 1
Dim CmpPar As CompoParam = DoorActive.CompoList(IndexCompo).CompoParamList(IndexParam)
Dim CmpRefPar As CompoParam = DoorActive.CompoList(IndexCompo).refJambCompo.CompoParamList(IndexParam)
- If TypeOf CmpRefPar Is TextBoxParam Then
+ If TypeOf CmpRefPar Is TextBoxOnOffParam Then
+ Dim TBoxPar As TextBoxOnOffParam = DirectCast(CmpPar, TextBoxOnOffParam)
+ Dim TBoxRefPar As TextBoxOnOffParam = DirectCast(CmpRefPar, TextBoxOnOffParam)
+ CalcCompoParamVisibility(TBoxPar.DDFName, TBoxRefPar.IsReadOnly)
+ TBoxPar.IsReadOnly = True
+ ElseIf TypeOf CmpRefPar Is TextBoxParam Then
Dim TBoxPar As TextBoxParam = DirectCast(CmpPar, TextBoxParam)
Dim TBoxRefPar As TextBoxParam = DirectCast(CmpRefPar, TextBoxParam)
CalcCompoParamVisibility(TBoxPar.DDFName, TBoxRefPar.IsReadOnly)
TBoxPar.IsReadOnly = True
- ElseIf TypeOf CmpRefPar Is TextBoxOnOffParam Then
- Dim TBoxPar As TextBoxOnOffParam = DirectCast(CmpPar, TextBoxOnOffParam)
- Dim TBoxRefPar As TextBoxOnOffParam = DirectCast(CmpRefPar, TextBoxOnOffParam)
+ ElseIf TypeOf CmpRefPar Is ComboBoxOnOffParam Then
+ Dim TBoxPar As ComboBoxOnOffParam = DirectCast(CmpPar, ComboBoxOnOffParam)
+ Dim TBoxRefPar As ComboBoxOnOffParam = DirectCast(CmpRefPar, ComboBoxOnOffParam)
CalcCompoParamVisibility(TBoxPar.DDFName, TBoxRefPar.IsReadOnly)
TBoxPar.IsReadOnly = True
ElseIf TypeOf CmpRefPar Is ComboBoxParam Then
@@ -2340,31 +2342,31 @@ Public Class Assembly
PrecCompo.CompoParamList(IndexParam).DDFName = NewCompo.CompoParamList(IndexParam).DDFName Then
Dim TBoxPar As TextBoxOnOffParam = DirectCast(PrecCompo.CompoParamList(IndexParam), TextBoxOnOffParam)
Dim TBoxNewPar As TextBoxOnOffParam = DirectCast(NewCompo.CompoParamList(IndexParam), TextBoxOnOffParam)
- If TBoxPar.EnableCopy then
- TBoxNewPar.Value = TBoxPar.Value
- TBoxNewPar.IsActive = TBoxPar.IsActive
+ If TBoxPar.EnableCopy Then
+ TBoxNewPar.SetValue(TBoxPar.Value)
+ TBoxNewPar.SetIsActive(TBoxPar.IsActive)
End If
ElseIf TypeOf PrecCompo.CompoParamList(IndexParam) Is TextBoxParam AndAlso
PrecCompo.CompoParamList(IndexParam).DDFName = NewCompo.CompoParamList(IndexParam).DDFName Then
Dim TBoxPar As TextBoxParam = DirectCast(PrecCompo.CompoParamList(IndexParam), TextBoxParam)
Dim TBoxNewPar As TextBoxParam = DirectCast(NewCompo.CompoParamList(IndexParam), TextBoxParam)
- If TBoxPar.EnableCopy then
- TBoxNewPar.Value = TBoxPar.Value
+ If TBoxPar.EnableCopy Then
+ TBoxNewPar.SetValue(TBoxPar.Value)
End If
ElseIf TypeOf PrecCompo.CompoParamList(IndexParam) Is ComboBoxOnOffParam AndAlso
PrecCompo.CompoParamList(IndexParam).DDFName = NewCompo.CompoParamList(IndexParam).DDFName Then
Dim CBoxPar As ComboBoxOnOffParam = DirectCast(PrecCompo.CompoParamList(IndexParam), ComboBoxOnOffParam)
Dim CBoxNewPar As ComboBoxOnOffParam = DirectCast(NewCompo.CompoParamList(IndexParam), ComboBoxOnOffParam)
- If CBoxNewPar.EnableCopy then
- CBoxNewPar.SelItem = CBoxNewPar.ItemList(CBoxPar.ItemList.IndexOf(CBoxPar.SelItem))
- CBoxNewPar.IsActive = CBoxPar.IsActive
+ If CBoxNewPar.EnableCopy Then
+ CBoxNewPar.SetSelItem(CBoxNewPar.ItemList(CBoxPar.ItemList.IndexOf(CBoxPar.SelItem)))
+ CBoxNewPar.SetIsActive(CBoxPar.IsActive)
End If
ElseIf TypeOf PrecCompo.CompoParamList(IndexParam) Is ComboBoxParam AndAlso
PrecCompo.CompoParamList(IndexParam).DDFName = NewCompo.CompoParamList(IndexParam).DDFName Then
Dim CBoxPar As ComboBoxParam = DirectCast(PrecCompo.CompoParamList(IndexParam), ComboBoxParam)
Dim CBoxNewPar As ComboBoxParam = DirectCast(NewCompo.CompoParamList(IndexParam), ComboBoxParam)
- If CBoxNewPar.EnableCopy then
- CBoxNewPar.SelItem = CBoxNewPar.ItemList(CBoxNewPar.ItemList.IndexOf(CBoxPar.SelItem))
+ If CBoxNewPar.EnableCopy Then
+ CBoxNewPar.SetSelItem(CBoxNewPar.ItemList(CBoxNewPar.ItemList.IndexOf(CBoxPar.SelItem)))
End If
End If
Next
diff --git a/AssemblyManager/AssemblyManagerVM.vb b/AssemblyManager/AssemblyManagerVM.vb
index 41913ae..0e216fe 100644
--- a/AssemblyManager/AssemblyManagerVM.vb
+++ b/AssemblyManager/AssemblyManagerVM.vb
@@ -965,12 +965,15 @@ Public Class AssemblyManagerVM
Next
EgtZoom(ZM.ALL)
Else
- DdfFile.WriteDDFAssembly(OpenedAssName.SelAssembly, sTempFile, True)
+ If Not DdfFile.WriteDDFAssembly(OpenedAssName.SelAssembly, sTempFile, True) Then
+ Return False
+ End If
' aggiorno elenco quotature
Map.refDimensioningPanelVM.LoadHardwareDimList()
ExecDoors(Map.refSceneManagerVM.ProjectScene, sTempFile, False)
Map.refSceneManagerVM.ShowGraphicError()
EgtZoom(ZM.ALL)
+ m_CurrProject.SelAssemblyName.SelAssembly.MatchCompo()
Map.refMainWindowVM.SelectedPage = MainWindowVM.ListPageEnum.nAssemblyPage
End If
' ogni progetto salvato è l'ultimo da aprire, anche se il programma è chiuso dall'HardwareManager
diff --git a/DoorParameters/Part.vb b/DoorParameters/Part.vb
index 533c75b..79cc6c8 100644
--- a/DoorParameters/Part.vb
+++ b/DoorParameters/Part.vb
@@ -1279,7 +1279,7 @@ Public Class Part
End While
CompoList.Insert(CompoIndex + Lastindex, NewCompo)
bInsert = True
- If Not IsNothing(PrecCompo) AndAlso (Not IsFrame And NewCompo.CompoType.DDFName = "rabbet") Then
+ If Not IsNothing(PrecCompo) AndAlso Not (IsFrame And NewCompo.CompoType.DDFName = "rabbet") Then
Map.refAssemblyPageVM.CurrAssembly.CopyParam(PrecCompo, NewCompo)
Else
AdviceHinge(NewCompo)
diff --git a/ProjectManager/MySaveFileDialogVM.vb b/ProjectManager/MySaveFileDialogVM.vb
index 0e47f50..f26f5e9 100644
--- a/ProjectManager/MySaveFileDialogVM.vb
+++ b/ProjectManager/MySaveFileDialogVM.vb
@@ -12,6 +12,16 @@ Public Class MySaveFileDialogVM
End Get
End Property
+ Public ReadOnly Property VisibilityCreateFrameDir As Visibility
+ Get
+ If OptionModule.m_ConfigurationSoftware = ConfigType.Assembly Then
+ Return Visibility.Collapsed
+ Else
+ Return Visibility.Visible
+ End If
+ End Get
+ End Property
+
Private Property m_IsFrame As Boolean = False
Public Property IsFrame As Boolean
Get
diff --git a/SceneManager/InstrumentPanel/InstrumentPanelV.xaml b/SceneManager/InstrumentPanel/InstrumentPanelV.xaml
index b620d4d..72c14ae 100644
--- a/SceneManager/InstrumentPanel/InstrumentPanelV.xaml
+++ b/SceneManager/InstrumentPanel/InstrumentPanelV.xaml
@@ -15,6 +15,7 @@
diff --git a/SceneManager/InstrumentPanel/InstrumentPanelV.xaml.vb b/SceneManager/InstrumentPanel/InstrumentPanelV.xaml.vb
index fb813f4..060f0d0 100644
--- a/SceneManager/InstrumentPanel/InstrumentPanelV.xaml.vb
+++ b/SceneManager/InstrumentPanel/InstrumentPanelV.xaml.vb
@@ -1,3 +1,7 @@
-Public Class InstrumentPanelView
+Public Class InstrumentPanelV
+
+ Private Sub TextBox1_IsVisibleChanged() Handles TextBox1.IsVisibleChanged
+ TextBox1.Focus()
+ End Sub
End Class
diff --git a/SceneManager/SceneManagerVM.vb b/SceneManager/SceneManagerVM.vb
index 560725e..ffb0250 100644
--- a/SceneManager/SceneManagerVM.vb
+++ b/SceneManager/SceneManagerVM.vb
@@ -469,6 +469,7 @@ Public Class SceneManagerVM
Private Sub OnSetInputBoxText(ByVal sText As String) Handles m_Controller.SetInputBoxText
If sText = "<>" Then
Map.refInstrumentPanelVM.TextDimensionVisibility = Visibility.Visible
+ m_InstrumentPanel.TextBox1.Focus()
'm_Controller.Done(sText)
'm_ProjectScene.SetStatusNull()
End If