diff --git a/EgtBEAMWALL.Optimizer/BTLViewModel/BTLStructureVM.vb b/EgtBEAMWALL.Optimizer/BTLViewModel/BTLStructureVM.vb index d37eeafc..3aa5b64b 100644 --- a/EgtBEAMWALL.Optimizer/BTLViewModel/BTLStructureVM.vb +++ b/EgtBEAMWALL.Optimizer/BTLViewModel/BTLStructureVM.vb @@ -149,16 +149,19 @@ Public Class BTLStructureVM If Not IsNothing(BtlPart) AndAlso Not IsNothing(BtlPart.BTLFeatureVMList) AndAlso BtlPart.BTLFeatureVMList.Count > 0 Then SelBTLPart.SelBTLFeatureVM = BtlPart.BTLFeatureVMList(0) ' Mostro le strategie forzate Dim bValue As Boolean = False - For Each FeatureParam In BtlPart.BTLFeatureVMList + Dim bValueForced As Boolean = False + For Each FeatureParam In SelBTLPart.BTLFeatureVMList + bValue = False + EgtGetInfo(FeatureParam.nFeatureId, ConstBeam.STRATEGY & FeatureParam.nFeatureId & "_FORCED", bValue) + If bValue Then FeatureParam.SetbStrategy_Visibility(Visibility.Visible) For Each StrategySetupParam In Map.refStrategyManagerVM.StrategySetupList For Each StrategyFeatureParam In StrategySetupParam.StrategyFeatureList For Each TopologyParam In StrategyFeatureParam.TopologyList For Each StrategyParam In TopologyParam.StrategyList - EgtGetInfo(FeatureParam.nFeatureId, ConstBeam.STRATEGY & "_FORCED", bValue) - If bValue Then FeatureParam.SetbStrategy_Visibility(Visibility.Visible) For Each Param In StrategyParam.ParameterList - EgtGetInfo(FeatureParam.nFeatureId, StrategyParam.sStrategyId & "_" & Param.sNameNge & "_FORCED", bValue) - If bValue Then FeatureParam.SetbStrategy_Visibility(Visibility.Visible) + bValueForced = False + EgtGetInfo(FeatureParam.nFeatureId, StrategyParam.sStrategyId & "_" & Param.sNameNge & "_FORCED", bValueForced) + If bValueForced Then FeatureParam.SetbStrategy_Visibility(Visibility.Visible) Next Next Next @@ -834,16 +837,20 @@ Public Class BTLStructureVM If BTLStructureM.nAsseBaseId = GDB_ID.NULL Then Map.refShowBeamPanelVM.SetShowBuilding(False) End If - Dim bValue As Boolean = False - Dim bValueForced As Boolean = False - For Each BTLPart As BTLPartVM In m_BTLPartVMList - For Each GeneralParameter As ProjectParameters In Map.refProdManagerVM.BTLDataWnd.GeneralParametersList - EgtGetInfo(m_BTLStructureM.nBTLInfoId, GeneralParameter.sNameNge & "_FORCED", bValue) - EgtGetInfo(BTLPart.nPartId, GeneralParameter.sNameNge & "_FORCED", bValueForced) - If bValue Then SetGeneralParameters("pack://application:,,,/Resources/NewPage/modify_adjustment.png") - If bValueForced Then BTLPart.SetStrategyModify_Visibility(Visibility.Visible) + If Not IsNothing(Map.refProdManagerVM.BTLDataWnd) Then + Dim bValue As Boolean = False + Dim bValueForced As Boolean = False + For Each BTLPart As BTLPartVM In m_BTLPartVMList + For Each GeneralParameter As ProjectParameters In Map.refProdManagerVM.BTLDataWnd.GeneralParametersList + bValue = False + bValueForced = False + EgtGetInfo(m_BTLStructureM.nBTLInfoId, GeneralParameter.sNameNge & "_FORCED", bValue) + EgtGetInfo(BTLPart.nPartId, GeneralParameter.sNameNge & "_FORCED", bValueForced) + If bValue Then SetGeneralParameters("pack://application:,,,/Resources/NewPage/modify_adjustment.png") + If bValueForced Then BTLPart.SetStrategyModify_Visibility(Visibility.Visible) + Next Next - Next + End If End Sub #End Region ' Constructor diff --git a/EgtBEAMWALL.Optimizer/ForcedStrategyPanel/ForcedStrategyPanelVM.vb b/EgtBEAMWALL.Optimizer/ForcedStrategyPanel/ForcedStrategyPanelVM.vb index 74581cb6..006f9748 100644 --- a/EgtBEAMWALL.Optimizer/ForcedStrategyPanel/ForcedStrategyPanelVM.vb +++ b/EgtBEAMWALL.Optimizer/ForcedStrategyPanel/ForcedStrategyPanelVM.vb @@ -283,13 +283,15 @@ Public Class ForcedStrategyPanelVM End If If Not IsNothing(m_SelStrategy) Then If m_SelStrategy.sStrategyId = AUTOMATICSTRATEGYID Then + m_SelStrategy.SetbIsStrategyModify(False) EgtRemoveInfo(m_CurrentFeature.nFeatureId, ConstBeam.STRATEGY) + EgtRemoveInfo(m_CurrentFeature.nFeatureId, ConstBeam.STRATEGY & m_CurrentFeature.nFeatureId & "_FORCED") Map.refProjectVM.BTLStructureVM.SelBTLPart.SelBTLFeatureVM.SetbStrategy_Visibility(Visibility.Collapsed) Else m_SelStrategy.SetbIsStrategyModify(True) Map.refProjectVM.BTLStructureVM.SelBTLPart.SelBTLFeatureVM.SetbStrategy_Visibility(Visibility.Visible) EgtSetInfo(m_CurrentFeature.nFeatureId, ConstBeam.STRATEGY, SelStrategy.sStrategyId) - EgtSetInfo(m_CurrentFeature.nFeatureId, ConstBeam.STRATEGY & "_FORCED", SelStrategy.bIsStrategyModify) + EgtSetInfo(m_CurrentFeature.nFeatureId, ConstBeam.STRATEGY & m_CurrentFeature.nFeatureId & "_FORCED", SelStrategy.bIsStrategyModify) Dim sInfo As String = String.Empty For Each Param In SelStrategy.ParameterList Select Case Param.GetType() @@ -340,6 +342,7 @@ Public Class ForcedStrategyPanelVM ' Abilito LeftPanel Map.refProjectVM.SetLeftPanel_IsEnabled(True) Map.refProjectVM.SetLeftPanel_Opacity(1) + Map.refSceneHostVM.SaveProject() End Sub #End Region ' Ok_Command diff --git a/EgtBEAMWALL.Optimizer/My Project/AssemblyInfo.vb b/EgtBEAMWALL.Optimizer/My Project/AssemblyInfo.vb index 41cb5c29..e1fd7df0 100644 --- a/EgtBEAMWALL.Optimizer/My Project/AssemblyInfo.vb +++ b/EgtBEAMWALL.Optimizer/My Project/AssemblyInfo.vb @@ -67,5 +67,5 @@ Imports System.Windows ' Revision ' - - + + diff --git a/EgtBEAMWALL.Optimizer/ProdManager/ProdManagerVM.vb b/EgtBEAMWALL.Optimizer/ProdManager/ProdManagerVM.vb index 88457fbc..8f3322e3 100644 --- a/EgtBEAMWALL.Optimizer/ProdManager/ProdManagerVM.vb +++ b/EgtBEAMWALL.Optimizer/ProdManager/ProdManagerVM.vb @@ -1048,6 +1048,7 @@ Public Class ProdManagerVM Map.refProjectVM.BTLStructureVM = New BTLStructureVM(BTLStructureM.CreateBTLStructure(0)) CopyBuilding() + If IsNothing(Map.refProjectVM.BTLStructureVM) Then m_MruFiles.Remove(sFilePath) If Not IsNothing(ProjectManagerVM.CurrProd) AndAlso sFilePath <> ProjectManagerVM.CurrProd.sProdPath Then diff --git a/EgtBEAMWALL.Optimizer/ProjectTypeWnd/ProjectTypeWndV.xaml b/EgtBEAMWALL.Optimizer/ProjectTypeWnd/ProjectTypeWndV.xaml index f07e26ee..757a934c 100644 --- a/EgtBEAMWALL.Optimizer/ProjectTypeWnd/ProjectTypeWndV.xaml +++ b/EgtBEAMWALL.Optimizer/ProjectTypeWnd/ProjectTypeWndV.xaml @@ -4,7 +4,7 @@ xmlns:EgtBEAMWALLCORE="clr-namespace:EgtBEAMWALL.Core;assembly=EgtBEAMWALL.Core" SizeToContent="WidthAndHeight" MinWidth="500" - WindowStartupLocation="CenterOwner" + WindowStartupLocation="CenterScreen" Title="ProjectType" Style="{StaticResource OptimizerWindow.Dialog.NoClose}"> diff --git a/EgtBEAMWALL.Supervisor/My Project/AssemblyInfo.vb b/EgtBEAMWALL.Supervisor/My Project/AssemblyInfo.vb index 3d1ab7d2..9383a019 100644 --- a/EgtBEAMWALL.Supervisor/My Project/AssemblyInfo.vb +++ b/EgtBEAMWALL.Supervisor/My Project/AssemblyInfo.vb @@ -71,4 +71,4 @@ Imports System.Windows ' - +