Compare commits
17 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| a6cd836e0d | |||
| fbb0e948b3 | |||
| 9bb1b49883 | |||
| 5d4bd85f85 | |||
| 8169b5298a | |||
| cfda9196be | |||
| d5a2a25ade | |||
| f6641c858e | |||
| 6fe32752e1 | |||
| 4fead794f3 | |||
| 827c955d1d | |||
| 8b96a07386 | |||
| 3d957138ee | |||
| c38f9305c6 | |||
| f34b58a636 | |||
| 138499fdf4 | |||
| edfe32daed |
@@ -316,12 +316,13 @@ Public Class BTLFeatureM
|
||||
End Function
|
||||
|
||||
Public Shared Function CreateBTLFeature(nPRC As Integer, nGRP As Integer, nSIDE As Integer) As BTLFeatureM
|
||||
Dim NewBTLFeature As New BTLFeatureM
|
||||
NewBTLFeature.m_nPRC = nPRC
|
||||
NewBTLFeature.m_nSelGRP = nGRP
|
||||
NewBTLFeature.m_nSelSIDE = nSIDE
|
||||
NewBTLFeature.m_nPriority = 0
|
||||
NewBTLFeature.m_bDO = True
|
||||
Dim NewBTLFeature As New BTLFeatureM With {
|
||||
.m_nPRC = nPRC,
|
||||
.m_nSelGRP = nGRP,
|
||||
.m_nSelSIDE = nSIDE,
|
||||
.m_nPriority = 0,
|
||||
.m_bDO = True
|
||||
}
|
||||
' crea parametri per questa feature da file ini
|
||||
NewBTLFeature.CreateFeatureParams(NewBTLFeature)
|
||||
Return NewBTLFeature
|
||||
|
||||
@@ -68,7 +68,9 @@ Public Module ConstGen
|
||||
' Sottodirettorio per Csv automatico
|
||||
Public Const PRODS_DIR As String = "Prods"
|
||||
' Sottodirettorio per Macro
|
||||
Public Const MACRO_DIR As String = "Macro"
|
||||
Public Const MACRODEFAULT_DIR As String = "MacroDefault"
|
||||
' Sottodirettorio per MacroCustom
|
||||
Public Const MACROCUSTOM_DIR As String = "MacroCustom"
|
||||
' Sottodirettorio per Magazzino
|
||||
Public Const WAREHOUSE_DIR As String = "Warehouse"
|
||||
' Sottodirettorio per lavorazioni travi
|
||||
|
||||
@@ -482,6 +482,8 @@ Public Class PartM
|
||||
EgtGetInfo(nPartId, BTL_PRT_GROUP, NewPartM.m_sGROUP)
|
||||
EgtGetInfo(nPartId, BTL_PRT_STOREY, NewPartM.m_sSTOREY)
|
||||
EgtGetInfo(nPartId, BTL_PRT_MATERIAL, NewPartM.m_sMATERIAL)
|
||||
EgtGetInfo(nPartId, MGR_PRT_ROT, NewPartM.m_dROT)
|
||||
EgtGetInfo(nPartId, MGR_PRT_FLIP, NewPartM.m_nFLIP)
|
||||
Dim nTemp As Integer = 0
|
||||
If Not EgtGetInfo(nPartId, BTL_PRT_ROTATED, nTemp) Then
|
||||
nTemp = 0
|
||||
@@ -514,8 +516,6 @@ Public Class PartM
|
||||
' leggo PosX, PosY, Rot e Flip
|
||||
EgtGetInfo(nPartId, MGR_PRT_POSX, NewPartM.m_dPOSX)
|
||||
EgtGetInfo(nPartId, MGR_PRT_POSY, NewPartM.m_dPOSY)
|
||||
EgtGetInfo(nPartId, MGR_PRT_ROT, NewPartM.m_dROT)
|
||||
EgtGetInfo(nPartId, MGR_PRT_FLIP, NewPartM.m_nFLIP)
|
||||
End If
|
||||
' leggo volume
|
||||
If Not EgtGetInfo(nPartId, BTL_PRT_VOLUME, NewPartM.dVolume) Then
|
||||
|
||||
@@ -1,11 +1,9 @@
|
||||
Imports System.Collections.ObjectModel
|
||||
Imports System.Collections.Specialized
|
||||
Imports System.ComponentModel
|
||||
Imports System.IO
|
||||
Imports System.Windows
|
||||
Imports System.Windows.Input
|
||||
Imports System.Windows.Media
|
||||
Imports EgtBEAMWALL.Core
|
||||
Imports EgtUILib
|
||||
Imports EgtWPFLib5
|
||||
|
||||
|
||||
@@ -27,7 +27,6 @@
|
||||
<RowDefinition Height="1*"/>
|
||||
<RowDefinition Height="Auto"/>
|
||||
</Grid.RowDefinitions>
|
||||
|
||||
<Grid HorizontalAlignment="Center"
|
||||
Grid.Row="0"
|
||||
Margin="0,0,0,5">
|
||||
@@ -46,13 +45,14 @@
|
||||
Grid.Column="1"
|
||||
DisplayMemberPath="ghDesc"
|
||||
Width="200"
|
||||
HorizontalAlignment="Left"
|
||||
Style="{StaticResource FeatureComboBox}"/>
|
||||
<TextBlock Text="Macro"
|
||||
Grid.Row="1"
|
||||
Margin="0,5,0,0"
|
||||
Style="{StaticResource OptionTextBlock}"/>
|
||||
<ComboBox ItemsSource="{Binding MacroList}"
|
||||
SelectedIndex="{Binding nSelMacro}"
|
||||
<ComboBox ItemsSource="{Binding MacroCustomList}"
|
||||
SelectedIndex="{Binding nSelMacroCustom}"
|
||||
Grid.Row="1"
|
||||
Grid.Column="1"
|
||||
DisplayMemberPath="Name"
|
||||
@@ -66,7 +66,6 @@
|
||||
Height="300"
|
||||
Width="300"
|
||||
Margin="5,0,5,5"/>
|
||||
|
||||
<!--<StackPanel Orientation="Horizontal"
|
||||
HorizontalAlignment="Center"
|
||||
Grid.Row="2"
|
||||
@@ -84,7 +83,6 @@
|
||||
<TextBlock Text="{Binding sName}"
|
||||
Style="{StaticResource OptionTextBlock}"/>
|
||||
</StackPanel>-->
|
||||
|
||||
<Grid Grid.Row="2" Margin="0,0,0,5">
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="1*"/>
|
||||
@@ -94,18 +92,16 @@
|
||||
<ColumnDefinition Width="1*"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
<Button Content="Ok"
|
||||
Command="{Binding Ok_Command}"
|
||||
IsDefault="True"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource EgtWPFLib5_InputButton}"/>
|
||||
Command="{Binding Ok_Command}"
|
||||
IsDefault="True"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource EgtWPFLib5_InputButton}"/>
|
||||
<Button Content="Cancel"
|
||||
IsCancel="True"
|
||||
Grid.Column="3"
|
||||
Style="{StaticResource EgtWPFLib5_InputButton}"/>
|
||||
IsCancel="True"
|
||||
Grid.Column="3"
|
||||
Style="{StaticResource EgtWPFLib5_InputButton}"/>
|
||||
</Grid>
|
||||
|
||||
</Grid>
|
||||
</Border>
|
||||
|
||||
</StackPanel>
|
||||
</EgtWPFLib5:EgtCustomWindow>
|
||||
|
||||
@@ -11,6 +11,7 @@ Public Class AddFeatureWndVM
|
||||
|
||||
Friend Event m_CloseWindow(bDialogResult As Boolean)
|
||||
Friend m_MacroFilePathList As List(Of String)
|
||||
Friend m_MacroCustomFilePathList As List(Of String)
|
||||
|
||||
Private m_PrevSelPRCIndex_L As Integer = 0
|
||||
Private m_PrevSelPRCIndex_T As Integer = 0
|
||||
@@ -37,8 +38,8 @@ Public Class AddFeatureWndVM
|
||||
ElseIf m_SelGRPType = GRPType.T Then
|
||||
nSelPRC = PRCList(m_PrevSelPRCIndex_T)
|
||||
End If
|
||||
NotifyPropertyChanged("PRCList")
|
||||
NotifyPropertyChanged("nSelPRC")
|
||||
NotifyPropertyChanged(NameOf(PRCList))
|
||||
NotifyPropertyChanged(NameOf(nSelPRC))
|
||||
End Set
|
||||
End Property
|
||||
|
||||
@@ -49,6 +50,36 @@ Public Class AddFeatureWndVM
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Private m_PRCListView As New List(Of PRC)
|
||||
Public ReadOnly Property PRCListView As List(Of PRC)
|
||||
Get
|
||||
Return m_PRCListView
|
||||
End Get
|
||||
End Property
|
||||
|
||||
#Region "New Macro OnlyProdPage"
|
||||
|
||||
Private m_MacroDefaultList As New ObservableCollection(Of Object)
|
||||
Public ReadOnly Property MacroDefaultList As ObservableCollection(Of Object)
|
||||
Get
|
||||
Return m_MacroDefaultList
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Private m_nSelMacroDefault As Integer = -1
|
||||
Public Property nSelMacroDefault As Integer
|
||||
Get
|
||||
Return m_nSelMacroDefault
|
||||
End Get
|
||||
Set(value As Integer)
|
||||
If value <> m_nSelMacroDefault Then
|
||||
m_nSelMacroDefault = value
|
||||
End If
|
||||
End Set
|
||||
End Property
|
||||
|
||||
#End Region ' New Macro OnlyProdPage
|
||||
|
||||
Private m_nSelPRC As PRC = Nothing
|
||||
Public Property nSelPRC As PRC
|
||||
Get
|
||||
@@ -64,47 +95,31 @@ Public Class AddFeatureWndVM
|
||||
m_PrevSelPRCIndex_T = PRCList.IndexOf(m_nSelPRC)
|
||||
End If
|
||||
End If
|
||||
NotifyPropertyChanged("sDrawPath")
|
||||
NotifyPropertyChanged(NameOf(sDrawPath))
|
||||
' carico eventuali file Macro
|
||||
MacroList.Clear()
|
||||
MacroCustomList.Clear()
|
||||
If Core.Configuration.bOnlyProd Then
|
||||
MacroDefaultList.Clear()
|
||||
End If
|
||||
m_MacroFilePathList = New List(Of String)
|
||||
m_MacroCustomFilePathList = New List(Of String)
|
||||
If Not IsNothing(nSelPRC) Then
|
||||
Dim nGRPFromFileName As Integer = 0
|
||||
Dim nPRCFromFileName As Integer = 0
|
||||
Dim sMacroNameFromFileName As String = String.Empty
|
||||
Dim nIdMacroName As Integer = 0
|
||||
' ricavo lista file Macro
|
||||
Dim AllFilesInDir As IEnumerable(Of String) = IO.Directory.EnumerateFiles(Map.refMainWindowVM.MainWindowM.sMacroDir)
|
||||
For Each File In AllFilesInDir
|
||||
If Path.GetExtension(File).ToLower() = ".lua" Then
|
||||
If File.Contains(FILENAMESEPARATOR) Then
|
||||
Dim FileName As String = Path.GetFileNameWithoutExtension(File)
|
||||
Dim DataFromFileName As String() = FileName.Split(FILENAMESEPARATOR)
|
||||
If DataFromFileName.Count = 2 Then
|
||||
If Not String.IsNullOrEmpty(DataFromFileName(0)) Then
|
||||
Dim NumbersFromFileName As String() = DataFromFileName(0).Split(".")
|
||||
Integer.TryParse(NumbersFromFileName(0), nGRPFromFileName)
|
||||
Integer.TryParse(NumbersFromFileName(1), nPRCFromFileName)
|
||||
End If
|
||||
If Not String.IsNullOrEmpty(DataFromFileName(1)) Then
|
||||
sMacroNameFromFileName = DataFromFileName(1)
|
||||
End If
|
||||
If nGRPFromFileName = CalcBeamPrivateProfileGRP(nSelPRC.nGRP) AndAlso nPRCFromFileName = nSelPRC.nPRC Then
|
||||
MacroList.Add(New IdNameStruct(nIdMacroName, sMacroNameFromFileName))
|
||||
m_MacroFilePathList.Add(File)
|
||||
nIdMacroName = nIdMacroName + 1
|
||||
End If
|
||||
End If
|
||||
End If
|
||||
End If
|
||||
Next
|
||||
If MacroList.Count > 0 Then
|
||||
' ricavo lista file Macro Default
|
||||
GetMacroListDefault(nGRPFromFileName, nPRCFromFileName, sMacroNameFromFileName, nIdMacroName)
|
||||
' ricavo lista file Macro Custom
|
||||
If Core.Configuration.bOnlyProd Then GetMacroListCustom(nGRPFromFileName, nPRCFromFileName, sMacroNameFromFileName, nIdMacroName)
|
||||
If MacroCustomList.Count > 0 Then
|
||||
MacroList_IsEnabled = True
|
||||
Else
|
||||
MacroList_IsEnabled = False
|
||||
End If
|
||||
End If
|
||||
End If
|
||||
NotifyPropertyChanged(NameOf(nSelPRC))
|
||||
End Set
|
||||
End Property
|
||||
|
||||
@@ -116,26 +131,26 @@ Public Class AddFeatureWndVM
|
||||
Set(value As Boolean)
|
||||
If value <> m_MacroList_IsEnabled Then
|
||||
m_MacroList_IsEnabled = value
|
||||
NotifyPropertyChanged("MacroList_IsEnabled")
|
||||
NotifyPropertyChanged(NameOf(MacroList_IsEnabled))
|
||||
End If
|
||||
End Set
|
||||
End Property
|
||||
|
||||
Private m_MacroList As New ObservableCollection(Of Object)
|
||||
Public ReadOnly Property MacroList As ObservableCollection(Of Object)
|
||||
Private m_MacroCustomList As New ObservableCollection(Of Object)
|
||||
Public ReadOnly Property MacroCustomList As ObservableCollection(Of Object)
|
||||
Get
|
||||
Return m_MacroList
|
||||
Return m_MacroCustomList
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Private m_nSelMacro As Integer = -1
|
||||
Public Property nSelMacro As Integer
|
||||
Private m_nSelMacroCustom As Integer = -1
|
||||
Public Property nSelMacroCustom As Integer
|
||||
Get
|
||||
Return m_nSelMacro
|
||||
Return m_nSelMacroCustom
|
||||
End Get
|
||||
Set(value As Integer)
|
||||
If value <> m_nSelMacro Then
|
||||
m_nSelMacro = value
|
||||
If value <> m_nSelMacroCustom Then
|
||||
m_nSelMacroCustom = value
|
||||
End If
|
||||
End Set
|
||||
End Property
|
||||
@@ -157,17 +172,133 @@ Public Class AddFeatureWndVM
|
||||
' Definizione comandi
|
||||
Private m_cmdOk As ICommand
|
||||
|
||||
#Region "Messages"
|
||||
|
||||
Public ReadOnly Property Process_Msg As String
|
||||
Get
|
||||
Return EgtMsg(61805).ToUpper()
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Public ReadOnly Property Default_Msg As String
|
||||
Get
|
||||
Return EgtMsg(61899).ToUpper()
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Public ReadOnly Property Custom_Msg As String
|
||||
Get
|
||||
Return EgtMsg(61801).ToUpper()
|
||||
End Get
|
||||
End Property
|
||||
|
||||
#End Region
|
||||
|
||||
#End Region ' FIELDS & PROPERTIES
|
||||
|
||||
#Region "CONSTRUCTOR"
|
||||
|
||||
Sub New()
|
||||
SelGRPType = 0
|
||||
nSelPRC = PRCList(0)
|
||||
If Core.Configuration.bOnlyProd Then
|
||||
' carico lista process
|
||||
Dim TempPRCList As New ObservableCollection(Of Integer)
|
||||
Dim TempPRCLList As New ObservableCollection(Of Integer)
|
||||
Dim TempPRCLTist As New ObservableCollection(Of Integer)
|
||||
GetBeamPrivateProfileProcessList(0, TempPRCLList)
|
||||
GetBeamPrivateProfileProcessList(1, TempPRCLTist)
|
||||
' riporto le liste process in un unica lista
|
||||
For Each PRCL In TempPRCLList
|
||||
TempPRCList.Add(PRCL)
|
||||
Next
|
||||
For Each PRCT In TempPRCLTist
|
||||
TempPRCList.Add(PRCT)
|
||||
Next
|
||||
m_PRCList.Clear()
|
||||
' ciclo sulla lista process eliminado i doppi
|
||||
For Each PRC In TempPRCList.Distinct()
|
||||
' leggo gruppi
|
||||
Dim GRPLList As New ObservableCollection(Of Integer)
|
||||
Dim GRPTList As New ObservableCollection(Of Integer)
|
||||
GetBeamPrivateProfileGRPList(0, PRC, GRPLList)
|
||||
GetBeamPrivateProfileGRPList(1, PRC, GRPTList)
|
||||
If GRPLList.Count > 0 Then m_PRCList.Add(New PRC(GRPLList(0), PRC, GetBeamPrivateProfileName(0, PRC)))
|
||||
If GRPTList.Count > 0 Then m_PRCList.Add(New PRC(GRPTList(0), PRC, GetBeamPrivateProfileName(1, PRC)))
|
||||
Next
|
||||
m_PRCListView = m_PRCList.OrderBy(Function(x) x.nPRC).ToList()
|
||||
nSelPRC = m_PRCList(0)
|
||||
NotifyPropertyChanged(NameOf(PRCListView))
|
||||
NotifyPropertyChanged(NameOf(PRCList))
|
||||
Else
|
||||
SelGRPType = 0
|
||||
nSelPRC = PRCList(0)
|
||||
End If
|
||||
End Sub
|
||||
|
||||
#End Region ' CONSTRUCTOR
|
||||
|
||||
#Region "METHODS"
|
||||
|
||||
Private Sub GetMacroListDefault(ByRef nGRPFromFileName As Integer, ByRef nPRCFromFileName As Integer, ByRef sMacroNameFromFileName As String, ByRef nIdMacroName As Integer)
|
||||
Dim AllFilesInDir As IEnumerable(Of String) = IO.Directory.EnumerateFiles(Map.refMainWindowVM.MainWindowM.sMacroCustomDir)
|
||||
For Each File In AllFilesInDir
|
||||
If Path.GetExtension(File).ToLower() = ".lua" Then
|
||||
If File.Contains(FILENAMESEPARATOR) Then
|
||||
Dim FileName As String = Path.GetFileNameWithoutExtension(File)
|
||||
Dim DataFromFileName As String() = FileName.Split(FILENAMESEPARATOR)
|
||||
If DataFromFileName.Count = 2 Then
|
||||
If Not String.IsNullOrEmpty(DataFromFileName(0)) Then
|
||||
Dim NumbersFromFileName As String() = DataFromFileName(0).Split(".")
|
||||
Integer.TryParse(NumbersFromFileName(0), nGRPFromFileName)
|
||||
Integer.TryParse(NumbersFromFileName(1), nPRCFromFileName)
|
||||
End If
|
||||
If Not String.IsNullOrEmpty(DataFromFileName(1)) Then
|
||||
sMacroNameFromFileName = DataFromFileName(1)
|
||||
End If
|
||||
If nGRPFromFileName = CalcBeamPrivateProfileGRP(nSelPRC.nGRP) AndAlso nPRCFromFileName = nSelPRC.nPRC Then
|
||||
If Core.Configuration.bOnlyProd Then
|
||||
MacroCustomList.Add(New NewMacro(nIdMacroName, sMacroNameFromFileName, Map.refMainWindowVM.MainWindowM.sMacroCustomDir & "\Template\" & sMacroNameFromFileName & ".png"))
|
||||
Else
|
||||
MacroCustomList.Add(New IdNameStruct(nIdMacroName, sMacroNameFromFileName))
|
||||
End If
|
||||
m_MacroFilePathList.Add(File)
|
||||
nIdMacroName += 1
|
||||
End If
|
||||
End If
|
||||
End If
|
||||
End If
|
||||
Next
|
||||
End Sub
|
||||
|
||||
Private Sub GetMacroListCustom(ByRef nGRPFromFileName As Integer, ByRef nPRCFromFileName As Integer, ByRef sMacroNameFromFileName As String, ByRef nIdMacroName As Integer)
|
||||
nIdMacroName = 0
|
||||
Dim AllFilesInDirCustom As IEnumerable(Of String) = IO.Directory.EnumerateFiles(Map.refMainWindowVM.MainWindowM.sMacroDefaultDir)
|
||||
For Each File In AllFilesInDirCustom
|
||||
If Path.GetExtension(File).ToLower() = ".lua" Then
|
||||
If File.Contains(FILENAMESEPARATOR) Then
|
||||
Dim FileName As String = Path.GetFileNameWithoutExtension(File)
|
||||
Dim DataFromFileName As String() = FileName.Split(FILENAMESEPARATOR)
|
||||
If DataFromFileName.Count = 2 Then
|
||||
If Not String.IsNullOrEmpty(DataFromFileName(0)) Then
|
||||
Dim NumbersFromFileName As String() = DataFromFileName(0).Split(".")
|
||||
Integer.TryParse(NumbersFromFileName(0), nGRPFromFileName)
|
||||
Integer.TryParse(NumbersFromFileName(1), nPRCFromFileName)
|
||||
End If
|
||||
If Not String.IsNullOrEmpty(DataFromFileName(1)) Then
|
||||
sMacroNameFromFileName = DataFromFileName(1)
|
||||
End If
|
||||
If nGRPFromFileName = CalcBeamPrivateProfileGRP(nSelPRC.nGRP) AndAlso nPRCFromFileName = nSelPRC.nPRC Then
|
||||
MacroDefaultList.Add(New NewMacro(nIdMacroName, sMacroNameFromFileName))
|
||||
m_MacroCustomFilePathList.Add(File)
|
||||
nIdMacroName += 1
|
||||
End If
|
||||
End If
|
||||
End If
|
||||
End If
|
||||
Next
|
||||
End Sub
|
||||
|
||||
#End Region ' METHODS
|
||||
|
||||
#Region "COMMANDS"
|
||||
|
||||
#Region "Ok"
|
||||
@@ -259,4 +390,43 @@ Public Class PRC
|
||||
m_QBTLParamVMList = QBTLParamList
|
||||
End Sub
|
||||
|
||||
End Class
|
||||
|
||||
Public Class NewMacro
|
||||
|
||||
' Indice Macro
|
||||
Private m_nIndexMacro As Integer
|
||||
Public ReadOnly Property nIndexMacro As Integer
|
||||
Get
|
||||
Return m_nIndexMacro
|
||||
End Get
|
||||
End Property
|
||||
|
||||
' Nome Macro
|
||||
Private m_sMacroName As String
|
||||
Public ReadOnly Property sMacroName As String
|
||||
Get
|
||||
Return m_sMacroName.ToUpper()
|
||||
End Get
|
||||
End Property
|
||||
|
||||
' Cartella dove sono contenuti i templete delle macro
|
||||
Private m_sMacroDrawPath As String
|
||||
Public ReadOnly Property sMacroDrawPath As String
|
||||
Get
|
||||
Return m_sMacroDrawPath
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Sub New(IndexMacro As Integer, MacroName As String)
|
||||
m_nIndexMacro = IndexMacro
|
||||
m_sMacroName = MacroName
|
||||
End Sub
|
||||
|
||||
Sub New(IndexMacro As Integer, MacroName As String, MacroDrawPath As String)
|
||||
m_nIndexMacro = IndexMacro
|
||||
m_sMacroName = MacroName
|
||||
m_sMacroDrawPath = MacroDrawPath
|
||||
End Sub
|
||||
|
||||
End Class
|
||||
@@ -0,0 +1,159 @@
|
||||
<EgtWPFLib5:EgtCustomWindow x:Class="NewAddFeatureWndV"
|
||||
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||
xmlns:EgtWPFLib5="clr-namespace:EgtWPFLib5;assembly=EgtWPFLib5"
|
||||
Style="{DynamicResource {x:Type EgtWPFLib5:EgtCustomWindow}}"
|
||||
WindowStyle="None" ResizeMode="NoResize"
|
||||
SizeToContent="WidthAndHeight"
|
||||
WindowStartupLocation="CenterOwner"
|
||||
IsClosable="False"
|
||||
IsMinimizable="False"
|
||||
IsResizable="False"
|
||||
Title="AddProcess">
|
||||
<Grid Margin="5">
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="Auto"/>
|
||||
<ColumnDefinition Width="1*"/>
|
||||
<ColumnDefinition Width="Auto"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="Auto"/>
|
||||
<RowDefinition Height="1*"/>
|
||||
<RowDefinition Height="Auto"/>
|
||||
</Grid.RowDefinitions>
|
||||
<TextBlock Text="{Binding Process_Msg}"
|
||||
Style="{StaticResource ListTextBlock}"/>
|
||||
<ListBox ItemsSource="{Binding PRCListView}"
|
||||
SelectedItem="{Binding nSelPRC}"
|
||||
Grid.Row="1"
|
||||
BorderThickness="0"
|
||||
Height="585"
|
||||
Width="260"
|
||||
HorizontalAlignment="Left"
|
||||
Margin="5">
|
||||
<ListBox.Resources>
|
||||
<Style TargetType="ListBoxItem">
|
||||
<Setter Property="Template">
|
||||
<Setter.Value>
|
||||
<ControlTemplate TargetType="ListBoxItem">
|
||||
<Border Name="Border" Padding="2" SnapsToDevicePixels="True">
|
||||
<ContentPresenter/>
|
||||
</Border>
|
||||
<ControlTemplate.Triggers>
|
||||
<Trigger Property="IsSelected" Value="True">
|
||||
<Setter TargetName="Border" Property="Background" Value="{DynamicResource {x:Static SystemColors.HotTrackBrushKey}}"/>
|
||||
<Setter Property="FontWeight" Value="Bold"/>
|
||||
<Setter Property="Foreground" Value="White"/>
|
||||
<Setter Property="FontSize" Value="15"/>
|
||||
</Trigger>
|
||||
</ControlTemplate.Triggers>
|
||||
</ControlTemplate>
|
||||
</Setter.Value>
|
||||
</Setter>
|
||||
</Style>
|
||||
</ListBox.Resources>
|
||||
<ListBox.ItemTemplate>
|
||||
<DataTemplate>
|
||||
<TextBlock Text="{Binding ghDesc}"
|
||||
ToolTip="{Binding ghDesc}"
|
||||
HorizontalAlignment="Left"
|
||||
Width="{Binding ActualWidth, RelativeSource={RelativeSource AncestorType={x:Type ListBox}}}"
|
||||
Style="{StaticResource OptionTextBlock}"/>
|
||||
</DataTemplate>
|
||||
</ListBox.ItemTemplate>
|
||||
</ListBox>
|
||||
<TextBlock Text="{Binding Custom_Msg}"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource ListTextBlock}"/>
|
||||
<ListBox ItemsSource="{Binding MacroCustomList}"
|
||||
SelectedIndex="{Binding nSelMacroCustom}"
|
||||
Grid.Row="1"
|
||||
Grid.Column="1"
|
||||
ScrollViewer.HorizontalScrollBarVisibility="Disabled"
|
||||
BorderThickness="0"
|
||||
Width="980"
|
||||
Height="610"
|
||||
Margin="5">
|
||||
<ListBox.ItemsPanel>
|
||||
<ItemsPanelTemplate>
|
||||
<WrapPanel IsItemsHost="True" Orientation="Horizontal"/>
|
||||
</ItemsPanelTemplate>
|
||||
</ListBox.ItemsPanel>
|
||||
<ListBox.ItemTemplate>
|
||||
<DataTemplate>
|
||||
<Grid>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="Auto"/>
|
||||
<RowDefinition Height="1*"/>
|
||||
</Grid.RowDefinitions>
|
||||
<TextBlock Text="{Binding sMacroName}"
|
||||
Margin="5"
|
||||
FontSize="14"
|
||||
Style="{StaticResource OptionTextBlock}"/>
|
||||
<Image Source="{Binding sMacroDrawPath}"
|
||||
Grid.Row="1"
|
||||
Width="300"
|
||||
Margin="5,0,5,5"/>
|
||||
</Grid>
|
||||
</DataTemplate>
|
||||
</ListBox.ItemTemplate>
|
||||
</ListBox>
|
||||
<TextBlock Text="{Binding Default_Msg}"
|
||||
Grid.Column="2"
|
||||
Style="{StaticResource ListTextBlock}"/>
|
||||
<ListBox ItemsSource="{Binding MacroDefaultList}"
|
||||
SelectedIndex="{Binding nSelMacroDefault}"
|
||||
Grid.Row="1"
|
||||
Grid.Column="2"
|
||||
BorderThickness="0"
|
||||
Height="585"
|
||||
Width="250"
|
||||
HorizontalAlignment="Left"
|
||||
Margin="5">
|
||||
<ListBox.Resources>
|
||||
<Style TargetType="ListBoxItem">
|
||||
<Setter Property="Template">
|
||||
<Setter.Value>
|
||||
<ControlTemplate TargetType="ListBoxItem">
|
||||
<Border Name="Border" Padding="2" SnapsToDevicePixels="True">
|
||||
<ContentPresenter/>
|
||||
</Border>
|
||||
<ControlTemplate.Triggers>
|
||||
<Trigger Property="IsSelected" Value="True">
|
||||
<Setter TargetName="Border" Property="Background" Value="{DynamicResource {x:Static SystemColors.HotTrackBrushKey}}"/>
|
||||
<Setter Property="FontWeight" Value="Bold"/>
|
||||
<Setter Property="Foreground" Value="White"/>
|
||||
<Setter Property="FontSize" Value="14"/>
|
||||
<Setter Property="HorizontalAlignment" Value="Left"/>
|
||||
</Trigger>
|
||||
</ControlTemplate.Triggers>
|
||||
</ControlTemplate>
|
||||
</Setter.Value>
|
||||
</Setter>
|
||||
</Style>
|
||||
</ListBox.Resources>
|
||||
<ListBox.ItemTemplate>
|
||||
<DataTemplate>
|
||||
<TextBlock Text="{Binding sMacroName}"
|
||||
Margin="2.5"
|
||||
HorizontalAlignment="Left"
|
||||
Width="239"
|
||||
Style="{StaticResource OptionTextBlock}"/>
|
||||
</DataTemplate>
|
||||
</ListBox.ItemTemplate>
|
||||
</ListBox>
|
||||
|
||||
<UniformGrid Columns="2"
|
||||
Grid.Row="2"
|
||||
Grid.ColumnSpan="3"
|
||||
Margin="5">
|
||||
<Button Content="Ok"
|
||||
Command="{Binding Ok_Command}"
|
||||
IsDefault="True"
|
||||
Style="{StaticResource EgtWPFLib5_InputButton}"/>
|
||||
<Button Content="Cancel"
|
||||
IsCancel="True"
|
||||
Style="{StaticResource EgtWPFLib5_InputButton}"/>
|
||||
</UniformGrid>
|
||||
</Grid>
|
||||
</EgtWPFLib5:EgtCustomWindow>
|
||||
@@ -0,0 +1,17 @@
|
||||
Public Class NewAddFeatureWndV
|
||||
|
||||
Private WithEvents m_AddFeatureWndVM As AddFeatureWndVM
|
||||
|
||||
Sub New(Owner As Window, AddFeatureWndVM As AddFeatureWndVM)
|
||||
' La chiamata è richiesta dalla finestra di progettazione.
|
||||
InitializeComponent()
|
||||
Me.DataContext = AddFeatureWndVM
|
||||
' Aggiungere le eventuali istruzioni di inizializzazione dopo la chiamata a InitializeComponent().
|
||||
m_AddFeatureWndVM = AddFeatureWndVM
|
||||
End Sub
|
||||
|
||||
Private Sub CloseWindow(bDialogResult As Boolean) Handles m_AddFeatureWndVM.m_CloseWindow
|
||||
Me.DialogResult = bDialogResult
|
||||
End Sub
|
||||
|
||||
End Class
|
||||
@@ -189,12 +189,7 @@ Public Class BTLPartManagerVM
|
||||
End Sub
|
||||
|
||||
Public Sub NewRawPart(bLast As Boolean)
|
||||
'If IsNothing(Map.refProdManagerVM) OrElse IsNothing(ProjectManagerVM.CurrProd) Then Return
|
||||
If Map.refMainMenuVM.SelPage = Pages.MACHINING AndAlso IsNothing(Map.refProdManagerVM) Then
|
||||
Return
|
||||
ElseIf Map.refMainMenuVM.SelPage = Pages.ONLYPRODPAGE AndAlso IsNothing(Map.refOnlyProdManagerVM) Then
|
||||
Return
|
||||
End If
|
||||
If IsNothing(ProjectManagerVM.CurrProd) Then Return
|
||||
'Dim SelPart As BTLPartVM = Map.refProjectVM.BTLStructureVM.SelBTLPart
|
||||
Dim SelParts As List(Of BTLPartVM) = Map.refProjectVM.BTLStructureVM.SelBTLParts.ToList()
|
||||
If IsNothing(SelParts) OrElse SelParts.Count <= 0 Then Return
|
||||
@@ -616,12 +611,7 @@ Public Class BTLPartManagerVM
|
||||
''' Execute the Exec. This method is invoked by the ExecCommand.
|
||||
''' </summary>
|
||||
Public Sub AddToRawPart()
|
||||
'If IsNothing(ProjectManagerVM.CurrProd) Then Return
|
||||
If Map.refMainMenuVM.SelPage = Pages.MACHINING AndAlso IsNothing(Map.refProdManagerVM) Then
|
||||
Return
|
||||
ElseIf Map.refMainMenuVM.SelPage = Pages.ONLYPRODPAGE AndAlso IsNothing(Map.refOnlyProdManagerVM) Then
|
||||
Return
|
||||
End If
|
||||
If IsNothing(ProjectManagerVM.CurrProd) Then Return
|
||||
Dim SelPart As BTLPartVM = Map.refProjectVM.BTLStructureVM.SelBTLParts(0)
|
||||
Dim SelParts As List(Of BTLPartVM) = Map.refProjectVM.BTLStructureVM.SelBTLParts.ToList()
|
||||
For Index = 0 To SelParts.Count() - 1
|
||||
@@ -725,6 +715,7 @@ Public Class BTLPartManagerVM
|
||||
Dim dPosX As Double = BeamMachGroup.dStartCut
|
||||
Dim nPartIndex As Integer = 0
|
||||
Dim nIndex As Integer
|
||||
Dim bDuploInfo As Boolean = False
|
||||
' ciclo sui pezzi
|
||||
For nIndex = 0 To BeamMachGroup.PartVMList.Count - 1
|
||||
For PartsToAddIndex = nPartIndex To PartsToAdd.Count - 1
|
||||
@@ -777,7 +768,30 @@ Public Class BTLPartManagerVM
|
||||
End While
|
||||
Dim sLogPath As String = Map.refMainWindowVM.MainWindowM.sTempDir & "\RawPartLog.txt"
|
||||
If Not ExecBeam(sLogPath, Map.refMachinePanelVM.SelectedMachine.Name, CalcIntegration.CmdTypes.RAWPART, False) Then
|
||||
Return False
|
||||
EgtOutLog("Fallito inserimento grezzo nella barra in AddPartToBeam")
|
||||
' elimino duplo
|
||||
For Each nDuploId In nPartDuploIdList
|
||||
EgtErase(nDuploId)
|
||||
Next
|
||||
' aggiorno info grezzo
|
||||
For nIndex = 0 To BeamMachGroup.PartVMList.Count - 1
|
||||
EgtSetInfo(BeamMachGroup.Id, MGR_RPT_PART & nIndex + 1, BeamMachGroup.PartVMList(nIndex).nPartId & "," & DoubleToString(BeamMachGroup.PartVMList(nIndex).dPOSX, 3))
|
||||
Next
|
||||
' rimuovo info duplo
|
||||
While EgtGetInfo(BeamMachGroup.Id, MGR_RPT_PART & nIndex + 1, nPartDuploIdList(0))
|
||||
bDuploInfo = EgtGetInfo(BeamMachGroup.Id, MGR_RPT_PART & nIndex + 1, nPartDuploIdList(0))
|
||||
EgtRemoveInfo(BeamMachGroup.Id, MGR_RPT_PART & nIndex + 1)
|
||||
nIndex += 1
|
||||
End While
|
||||
' elimino vecchio grezzo ed eseguo script creazione nuovo
|
||||
nRawId = EgtGetFirstRawPart()
|
||||
While nRawId <> GDB_ID.NULL
|
||||
EgtRemoveRawPart(nRawId)
|
||||
nRawId = EgtGetFirstRawPart()
|
||||
End While
|
||||
If Not ExecBeam(sLogPath, Map.refMachinePanelVM.SelectedMachine.Name, CalcIntegration.CmdTypes.RAWPART, False) Then
|
||||
EgtOutLog("Fallita esecuzione ExecBeam. ERRORE")
|
||||
End If
|
||||
End If
|
||||
For nDuploIndex = 0 To PartsToAdd.Count - 1
|
||||
EgtSetInfo(nPartDuploIdList(nDuploIndex), MGR_PRT_ROT, PartsToAdd(nDuploIndex).nROTATED)
|
||||
@@ -786,7 +800,11 @@ Public Class BTLPartManagerVM
|
||||
' aggiorno lista pezzi
|
||||
BeamMachGroup.MyMachGroupM.RefreshPartList()
|
||||
' seleziono pezzo aggiunto
|
||||
If BeamMachGroup.PartVMList.Count > nInsertIndex Then BeamMachGroup.SelPart = BeamMachGroup.PartVMList(nInsertIndex)
|
||||
If BeamMachGroup.PartVMList.Count > nInsertIndex Then
|
||||
BeamMachGroup.SelPart = BeamMachGroup.PartVMList(nInsertIndex)
|
||||
ElseIf bDuploInfo Then
|
||||
BeamMachGroup.SelPart = BeamMachGroup.PartVMList(BeamMachGroup.PartVMList.Count - 1)
|
||||
End If
|
||||
Return True
|
||||
End Function
|
||||
|
||||
@@ -889,12 +907,7 @@ Public Class BTLPartManagerVM
|
||||
''' Execute the Exec. This method is invoked by the ExecCommand.
|
||||
''' </summary>
|
||||
Public Sub CopyPart()
|
||||
'If IsNothing(ProjectManagerVM.CurrProj) Then Return
|
||||
If Map.refMainMenuVM.SelPage = Pages.VIEW AndAlso IsNothing(Map.refProjManagerVM) AndAlso IsNothing(ProjectManagerVM.CurrProj) Then
|
||||
Return
|
||||
ElseIf Map.refMainMenuVM.SelPage = Pages.ONLYPRODPAGE AndAlso IsNothing(Map.refOnlyProdManagerVM) AndAlso IsNothing(ProjectManagerVM.CurrProj) Then
|
||||
Return
|
||||
End If
|
||||
If IsNothing(ProjectManagerVM.CurrProj) Then Return
|
||||
Dim SelPart As BTLPartVM = Map.refProjectVM.BTLStructureVM.SelBTLPart
|
||||
If IsNothing(SelPart) Then Return
|
||||
' creo copia
|
||||
@@ -925,12 +938,7 @@ Public Class BTLPartManagerVM
|
||||
''' Execute the Exec. This method is invoked by the ExecCommand.
|
||||
''' </summary>
|
||||
Public Sub AddPart(ByVal param As Object)
|
||||
'If IsNothing(ProjectManagerVM.CurrProj) Then Return
|
||||
If Map.refMainMenuVM.SelPage = Pages.VIEW AndAlso IsNothing(Map.refProjManagerVM) Then
|
||||
Return
|
||||
ElseIf Map.refMainMenuVM.SelPage = Pages.ONLYPRODPAGE AndAlso IsNothing(Map.refOnlyProdManagerVM) Then
|
||||
Return
|
||||
End If
|
||||
If IsNothing(ProjectManagerVM.CurrProj) Then Return
|
||||
' apro finestra di definizione nuovo part
|
||||
Dim AddPartWndVM As New AddPartWndVM()
|
||||
Dim AddPartWnd As New AddPartWndV(Application.Current.MainWindow, AddPartWndVM)
|
||||
@@ -938,12 +946,7 @@ Public Class BTLPartManagerVM
|
||||
' creo nuovo part
|
||||
Dim nNewPartId As Integer = EgtBeamCreatePart()
|
||||
' scrivo info proj
|
||||
'EgtSetInfo(nNewPartId, BTL_PRT_PROJ, ProjectManagerVM.CurrProj.nProjId)
|
||||
If Map.refMainMenuVM.SelPage = Pages.VIEW AndAlso IsNothing(Map.refProjManagerVM) Then
|
||||
EgtSetInfo(nNewPartId, BTL_PRT_PROJ, ProjectManagerVM.CurrProj.nProjId)
|
||||
ElseIf Map.refMainMenuVM.SelPage = Pages.ONLYPRODPAGE AndAlso IsNothing(Map.refOnlyProdManagerVM) Then
|
||||
EgtSetInfo(nNewPartId, BTL_PRT_PROJ, Map.refOnlyProdManagerVM.CurrProd.nProdId)
|
||||
End If
|
||||
EgtSetInfo(nNewPartId, BTL_PRT_PROJ, ProjectManagerVM.CurrProj.nProjId)
|
||||
EgtBeamSetPartProdNbr(AddPartWndVM.nPDN)
|
||||
If Not IsNothing(AddPartWndVM.sNAM) Then EgtBeamSetPartName(AddPartWndVM.sNAM)
|
||||
EgtBeamSetPartCount(AddPartWndVM.nCNT)
|
||||
@@ -1076,18 +1079,14 @@ Public Class BTLPartManagerVM
|
||||
''' Execute the Exec. This method is invoked by the ExecCommand.
|
||||
''' </summary>
|
||||
Public Sub Invert()
|
||||
If (Map.refMainMenuVM.SelPage = Pages.VIEW AndAlso IsNothing(Map.refProjManagerVM) AndAlso IsNothing(ProjectManagerVM.CurrProj)) OrElse IsNothing(Map.refProjectVM.BTLStructureVM) Then
|
||||
If (Map.refMainMenuVM.SelPage = Pages.VIEW AndAlso IsNothing(ProjectManagerVM.CurrProj)) OrElse IsNothing(Map.refProjectVM.BTLStructureVM) Then
|
||||
Return
|
||||
ElseIf (Map.refMainMenuVM.SelPage = Pages.ONLYPRODPAGE AndAlso IsNothing(Map.refOnlyProdManagerVM) AndAlso IsNothing(ProjectManagerVM.CurrProj)) OrElse IsNothing(Map.refProjectVM.BTLStructureVM) Then
|
||||
ElseIf (Map.refMainMenuVM.SelPage = Pages.ONLYPRODPAGE AndAlso IsNothing(ProjectManagerVM.CurrProj)) OrElse IsNothing(Map.refProjectVM.BTLStructureVM) Then
|
||||
Return
|
||||
End If
|
||||
' se modalita' assemblato
|
||||
Dim bShowBuilding As Boolean = Map.refShowBeamPanelVM.ShowBuilding_IsChecked
|
||||
Configuration.AssembledMode(bShowBuilding)
|
||||
'If bShowBuilding AndAlso Map.refShowBeamPanelVM.bShowAll Then
|
||||
' ' devo smontarlo prima di ruotare le travi
|
||||
' Map.refProjectVM.BTLStructureVM.ShowBuilding(False, False)
|
||||
'End If
|
||||
' inverto i pezzi selezionati
|
||||
For Each Part In Map.refProjectVM.BTLStructureVM.SelBTLParts
|
||||
Part.Invert()
|
||||
@@ -1116,20 +1115,12 @@ Public Class BTLPartManagerVM
|
||||
''' Execute the Exec. This method is invoked by the ExecCommand.
|
||||
''' </summary>
|
||||
Public Sub BackRotation()
|
||||
If (Map.refMainMenuVM.SelPage = Pages.VIEW AndAlso IsNothing(Map.refProjManagerVM) AndAlso IsNothing(ProjectManagerVM.CurrProj)) OrElse IsNothing(Map.refProjectVM.BTLStructureVM) Then
|
||||
Return
|
||||
ElseIf (Map.refMainMenuVM.SelPage = Pages.ONLYPRODPAGE AndAlso IsNothing(Map.refOnlyProdManagerVM) AndAlso IsNothing(ProjectManagerVM.CurrProj)) OrElse IsNothing(Map.refProjectVM.BTLStructureVM) Then
|
||||
Return
|
||||
End If
|
||||
If IsNothing(ProjectManagerVM.CurrProj) OrElse IsNothing(Map.refProjectVM.BTLStructureVM) Then Return
|
||||
' salvo sezione impostata
|
||||
Dim CurrSection As SectionXMaterial = Map.refProjectVM.BTLStructureVM.SelSection
|
||||
' se modalita' assemblato
|
||||
Dim bShowBuilding As Boolean = Map.refShowBeamPanelVM.ShowBuilding_IsChecked
|
||||
Configuration.AssembledMode(bShowBuilding)
|
||||
'If bShowBuilding AndAlso Map.refShowBeamPanelVM.bShowAll Then
|
||||
' ' devo smontarlo prima di ruotare le travi
|
||||
' Map.refProjectVM.BTLStructureVM.ShowBuilding(False, False)
|
||||
'End If
|
||||
' ruoto i pezzi selezionati
|
||||
For Each Part In Map.refProjectVM.BTLStructureVM.SelBTLParts
|
||||
Part.BackRotation(False, False)
|
||||
@@ -1165,20 +1156,12 @@ Public Class BTLPartManagerVM
|
||||
''' Execute the Exec. This method is invoked by the ExecCommand.
|
||||
''' </summary>
|
||||
Public Sub ForwardRotation()
|
||||
If (Map.refMainMenuVM.SelPage = Pages.VIEW AndAlso IsNothing(Map.refProjManagerVM) AndAlso IsNothing(ProjectManagerVM.CurrProj)) OrElse IsNothing(Map.refProjectVM.BTLStructureVM) Then
|
||||
Return
|
||||
ElseIf (Map.refMainMenuVM.SelPage = Pages.ONLYPRODPAGE AndAlso IsNothing(Map.refOnlyProdManagerVM) AndAlso IsNothing(ProjectManagerVM.CurrProj)) OrElse IsNothing(Map.refProjectVM.BTLStructureVM) Then
|
||||
Return
|
||||
End If
|
||||
If IsNothing(ProjectManagerVM.CurrProj) OrElse IsNothing(Map.refProjectVM.BTLStructureVM) Then Return
|
||||
' salvo sezione impostata
|
||||
Dim CurrSection As SectionXMaterial = Map.refProjectVM.BTLStructureVM.SelSection
|
||||
' se modalita' assemblato
|
||||
Dim bShowBuilding As Boolean = Map.refShowBeamPanelVM.ShowBuilding_IsChecked
|
||||
Configuration.AssembledMode(bShowBuilding)
|
||||
'If bShowBuilding AndAlso Map.refShowBeamPanelVM.bShowAll Then
|
||||
' ' devo smontarlo prima di ruotare le travi
|
||||
' Map.refProjectVM.BTLStructureVM.ShowBuilding(False, False)
|
||||
'End If
|
||||
' ruoto i pezzi selezionati
|
||||
For Each Part In Map.refProjectVM.BTLStructureVM.SelBTLParts
|
||||
Part.ForwardRotation(False, False)
|
||||
@@ -1198,5 +1181,4 @@ Public Class BTLPartManagerVM
|
||||
|
||||
#End Region ' COMMANDS
|
||||
|
||||
|
||||
End Class
|
||||
|
||||
@@ -165,7 +165,7 @@ Public Class BTLFeatureVM
|
||||
' se in View
|
||||
If Map.refMainMenuVM.SelPage = Pages.VIEW OrElse (Map.refMainMenuVM.SelPage = Pages.ONLYPRODPAGE AndAlso Not IsNothing(m_BTLPartM)) Then
|
||||
' imposto modificato per copie
|
||||
Dim cc = Map.refMachGroupPanelVM.MachGroupVMList
|
||||
'Dim cc = Map.refMachGroupPanelVM.MachGroupVMList
|
||||
MyMachGroupPanelM.SetDuploModified(m_BTLPartM.nPartId)
|
||||
End If
|
||||
NotifyPropertyChanged(NameOf(bDO))
|
||||
|
||||
@@ -135,6 +135,21 @@ Public Class BTLParamVM
|
||||
NotifyPropertyChanged("sValue")
|
||||
Return
|
||||
End If
|
||||
' recupero ParentPart
|
||||
Dim ParentPart As BTLPartM = TryCast(m_BTLParamM.ParentFeature.ParentPart, BTLPartM)
|
||||
' recupero PartId
|
||||
Dim nPartId As Integer = ParentPart.nPartId
|
||||
' numero di pezzi inseriti nelle barre
|
||||
Dim INPROD As Integer = 0
|
||||
EgtDuploInRawCount(nPartId, INPROD)
|
||||
' recupero pezzi lavorati da Db
|
||||
Dim nDoneCnt As Integer = DbControllers.m_ProjController.getCountItemState(ProjectManagerVM.CurrProj.nProjId, nPartId, ItemState.Assigned)
|
||||
' controllo se i pezzi sono lavorati se si messaggio di warning altrimenti messaggio informativo
|
||||
If nDoneCnt > 0 Then
|
||||
MessageBox.Show("Pezzo " & nPartId & " non modificato in " & INPROD & " barra/e perche' settata/e come da produrre", EgtMsg(30009), MessageBoxButton.OK, MessageBoxImage.Warning)
|
||||
ElseIf INPROD > 0 Then
|
||||
MessageBox.Show("Pezzo " & nPartId & " modificato in " & INPROD & " barra/e grezza/e", EgtMsg(30009), MessageBoxButton.OK, MessageBoxImage.Information)
|
||||
End If
|
||||
UpdateParamValue(dNewValue, "")
|
||||
Case Else
|
||||
UpdateParamValue(0, value)
|
||||
|
||||
@@ -84,10 +84,10 @@ Public Class BTLStructureVM
|
||||
Select Case m_SelectionType
|
||||
Case SelectionTypes.SELECT_
|
||||
' imposto modalita' proj su vista feature
|
||||
'Map.refProjectVM.SelProdProj = ProdProj.PROJ
|
||||
If Map.refMainMenuVM.SelPage = Pages.ONLYPRODPAGE Then Map.refProdProjManagerVM.SelProdProj = ProdProj.PROJ
|
||||
' rendo enable bottone parameters
|
||||
Map.refLeftPanelVM.SetParametersIsEnabled(True)
|
||||
Map.refLeftPanelVM.SetData_IsEnabled(False)
|
||||
' verifico reset mark su tutti i pezzi
|
||||
For Each BTLPart In m_BTLPartVMList
|
||||
EgtResetMark(BTLPart.nPartId)
|
||||
@@ -97,10 +97,10 @@ Public Class BTLStructureVM
|
||||
Map.refProjectVM.NotifyPropertyChanged(NameOf(Map.refProdProjManagerVM.PartManager_Visibility))
|
||||
Case SelectionTypes.HIGHLIGHT
|
||||
' imposto modalita' nulla su vista feature
|
||||
'Map.refProjectVM.SelProdProj = ProdProj.NULL
|
||||
If Map.refMainMenuVM.SelPage = Pages.ONLYPRODPAGE Then Map.refProdProjManagerVM.SelProdProj = ProdProj.NULL
|
||||
' rendo disable bottone parameters
|
||||
Map.refLeftPanelVM.SetParametersIsEnabled(False)
|
||||
Map.refLeftPanelVM.SetData_IsEnabled(True)
|
||||
If m_PrevSelectionType = SelectionTypes.SELECT_ Then
|
||||
EgtBeamShowFacesName(False)
|
||||
EgtBeamShowLoadingSide(False, False)
|
||||
@@ -120,8 +120,6 @@ Public Class BTLStructureVM
|
||||
' aggiornamento grafica
|
||||
'Map.refLeftPanelVM.PartShowAllChanged()
|
||||
Configuration.UpdateGraphics()
|
||||
'If Not IsNothing(Map.refFeatureListManagerVM) Then Map.refFeatureListManagerVM.PartShowAllChanged()
|
||||
'If Not IsNothing(Map.refBTLPartManagerVM) Then Map.refBTLPartManagerVM.PartShowAllChanged()
|
||||
'Map.refLeftPanelVM.FeatureSelectionChanged()
|
||||
If Not IsNothing(Map.refFeatureListManagerVM) Then Map.refFeatureListManagerVM.FeatureSelectionChanged()
|
||||
Map.refCALCPanelVM.SetIsEnabledForSelPart()
|
||||
@@ -215,39 +213,19 @@ Public Class BTLStructureVM
|
||||
SelBTLPart = Nothing
|
||||
End Select
|
||||
' aggiornamento grafica
|
||||
'Map.refLeftPanelVM.PartShowAllChanged()
|
||||
Configuration.UpdateGraphics()
|
||||
'If Not IsNothing(Map.refFeatureListManagerVM) Then Map.refFeatureListManagerVM.PartShowAllChanged()
|
||||
'If Not IsNothing(Map.refBTLPartManagerVM) Then Map.refBTLPartManagerVM.PartShowAllChanged()
|
||||
End Sub
|
||||
|
||||
Private Sub SelectBTLPart(BtlPart As BTLPartVM)
|
||||
m_SelBTLPart = BtlPart
|
||||
If Map.refMainMenuVM.SelPage = Pages.VIEW Then
|
||||
Configuration.SelectedPieces(BtlPart.nPartId, Me)
|
||||
'EgtBeamShowFacesName(False)
|
||||
'EgtBeamShowLoadingSide(False, False)
|
||||
'Map.refProjectVM.MacroFeature_IsEnabled = True
|
||||
'' se modalità building, la tolgo
|
||||
'If Map.refShowBeamPanelVM.ShowBuilding_IsChecked Then
|
||||
' ShowBuilding(False, False)
|
||||
'End If
|
||||
'' seleziono pezzo nella scena
|
||||
'SceneSelPartSelection()
|
||||
'' seleziono pezzo in Db geometrico
|
||||
'EgtBeamSetPart(BtlPart.nPartId)
|
||||
'EgtBeamShowFacesName(True)
|
||||
'Dim bLoadingSideShow As Boolean = (nPROJTYPE = BWType.BEAM)
|
||||
'Dim bLeftToRight As Boolean = Not (CurrentMachine.ViewDir = VT.ISO_NW OrElse CurrentMachine.ViewDir = VT.ISO_NE)
|
||||
'EgtBeamShowLoadingSide(bLoadingSideShow, bLeftToRight)
|
||||
' seleziono pagina BottomPanel
|
||||
If Not IsNothing(Map.refBottomPanelVM) Then
|
||||
Map.refBottomPanelVM.SetSelPartFeatureTab(BottomPanelVM.PartFeatureTab.PART)
|
||||
End If
|
||||
'' mostro barra di gestione pezzo
|
||||
'Map.refProjectVM.NotifyPropertyChanged(NameOf(Map.refProjectVM.PartManager_Visibility))
|
||||
' deseleziono le feature
|
||||
If Not IsNothing(BtlPart.SelBTLFeatureVM) Then SelBTLPart.SelBTLFeatureVM = Nothing
|
||||
' mostro barra di gestione pezzo
|
||||
If Not IsNothing(BtlPart.BTLFeatureVMList) AndAlso BtlPart.BTLFeatureVMList.Count > 0 Then SelBTLPart.SelBTLFeatureVM = BtlPart.BTLFeatureVMList(0)
|
||||
' aggiorno stato selezionato tutto
|
||||
Map.refShowBeamPanelVM.bShowAll = False
|
||||
Core.ViewPanelVM.BWSetView(If(Core.ViewPanelVM.Type = BWType.BEAM, VT.ISO_SW, VT.TOP), False)
|
||||
@@ -259,25 +237,6 @@ Public Class BTLStructureVM
|
||||
EgtBeamShowLoadingSide(False, False)
|
||||
' trovo ed evidenzio MachGroup e Duplo di questo pezzo
|
||||
Configuration.SetSearchPiece(BtlPart.nPartId)
|
||||
'If Not IsNothing(Map.refProjectVM.MachGroupPanelVM) Then
|
||||
' Dim MachGroupList As New List(Of MyMachGroupVM)
|
||||
' For Each Machgroup As MyMachGroupVM In Map.refProjectVM.MachGroupPanelVM.MachGroupVMList
|
||||
' Dim bFound As Boolean = False
|
||||
' For Each Part As PartVM In Machgroup.PartVMList
|
||||
' If EgtDuploGetOriginal(Part.nPartId) = BtlPart.nPartId Then
|
||||
' Part.SetSearchFound()
|
||||
' bFound = True
|
||||
' Else
|
||||
' Part.ResetSearchFound()
|
||||
' End If
|
||||
' Next
|
||||
' If bFound Then
|
||||
' Machgroup.SetSearchFound()
|
||||
' Else
|
||||
' Machgroup.ResetSearchFound()
|
||||
' End If
|
||||
' Next
|
||||
'End If
|
||||
' seleziono pezzo nella scena
|
||||
SceneSelPartSelection()
|
||||
Core.ViewPanelVM.BWSetView(If(Core.ViewPanelVM.Type = BWType.BEAM, VT.ISO_SW, VT.TOP), False)
|
||||
@@ -292,45 +251,10 @@ Public Class BTLStructureVM
|
||||
EgtResetCurrMachGroup()
|
||||
End If
|
||||
Configuration.SelectedPieces(BtlPart.nPartId, Me)
|
||||
'EgtBeamShowFacesName(False)
|
||||
'EgtBeamShowLoadingSide(False, False)
|
||||
'Map.refProjectVM.MacroFeature_IsEnabled = True
|
||||
'' se modalità building, la tolgo
|
||||
'If Map.refShowBeamPanelVM.ShowBuilding_IsChecked Then
|
||||
' ShowBuilding(False, False)
|
||||
'End If
|
||||
'' seleziono pezzo nella scena
|
||||
'SceneSelPartSelection()
|
||||
'' seleziono pezzo in Db geometrico
|
||||
'EgtBeamSetPart(BtlPart.nPartId)
|
||||
'EgtBeamShowFacesName(True)
|
||||
'Dim bLoadingSideShow As Boolean = (nPROJTYPE = BWType.BEAM)
|
||||
'Dim bLeftToRight As Boolean = Not (CurrentMachine.ViewDir = VT.ISO_NW OrElse CurrentMachine.ViewDir = VT.ISO_NE)
|
||||
'EgtBeamShowLoadingSide(bLoadingSideShow, bLeftToRight)
|
||||
' seleziono la prima feature
|
||||
If Not IsNothing(BtlPart.BTLFeatureVMList) AndAlso BtlPart.BTLFeatureVMList.Count > 0 Then SelBTLPart.SelBTLFeatureVM = BtlPart.BTLFeatureVMList(0)
|
||||
' aggiorno stato selezionato tutto
|
||||
Map.refShowBeamPanelVM.bShowAll = False
|
||||
'' trovo ed evidenzio MachGroup e Duplo di questo pezzo
|
||||
'If Not IsNothing(Map.refProjectVM.MachGroupPanelVM) Then
|
||||
' Dim MachGroupList As New List(Of MyMachGroupVM)
|
||||
' For Each Machgroup As MyMachGroupVM In Map.refProjectVM.MachGroupPanelVM.MachGroupVMList
|
||||
' Dim bFound As Boolean = False
|
||||
' For Each Part As PartVM In Machgroup.PartVMList
|
||||
' If EgtDuploGetOriginal(Part.nPartId) = BtlPart.nPartId Then
|
||||
' Part.SetSearchFound()
|
||||
' bFound = True
|
||||
' Else
|
||||
' Part.ResetSearchFound()
|
||||
' End If
|
||||
' Next
|
||||
' If bFound Then
|
||||
' Machgroup.SetSearchFound()
|
||||
' Else
|
||||
' Machgroup.ResetSearchFound()
|
||||
' End If
|
||||
' Next
|
||||
'End If
|
||||
Core.ViewPanelVM.BWSetView(If(Core.ViewPanelVM.Type = BWType.BEAM, VT.ISO_SW, VT.TOP), False)
|
||||
EgtZoom(ZM.ALL)
|
||||
End If
|
||||
@@ -339,11 +263,6 @@ Public Class BTLStructureVM
|
||||
Private Sub DeselectBTLPart(BtlPart As BTLPartVM)
|
||||
' se necessario tolgo solido dal precedentemente selezionato
|
||||
Configuration.DeselectSolid(BtlPart.nPartId, True)
|
||||
'If Map.refShowBeamPanelVM.ShowSolid_IsChecked Then
|
||||
' ' tolgo eventuale indicazione solido rimasta da pezzo precedente
|
||||
' Map.refShowBeamPanelVM.SetShowSolid(False)
|
||||
' Map.refProjectVM.BTLStructureVM.ShowSolid(BtlPart.nPartId, False, False)
|
||||
'End If
|
||||
If m_SelBTLPart Is BtlPart Then
|
||||
EgtBeamShowFacesName(False)
|
||||
EgtBeamShowLoadingSide(False, False)
|
||||
@@ -351,25 +270,7 @@ Public Class BTLStructureVM
|
||||
NotifyPropertyChanged(NameOf(SelBTLPart))
|
||||
End If
|
||||
' disabilito eventuale feature selezionata
|
||||
If Not IsNothing(BtlPart.m_SelBTLFeatureVM) Then BtlPart.SelBTLFeatureVM = Nothing
|
||||
'' deevidenzio MachGroup e Duplo di questo pezzo
|
||||
'If Not IsNothing(Map.refProjectVM.MachGroupPanelVM) Then
|
||||
' Dim MachGroupList As New List(Of MyMachGroupVM)
|
||||
' For Each Machgroup As MyMachGroupVM In Map.refProjectVM.MachGroupPanelVM.MachGroupVMList
|
||||
' Dim bFound As Boolean = False
|
||||
' For Each Part As PartVM In Machgroup.PartVMList
|
||||
' Dim i = EgtDuploGetOriginal(Part.nPartId)
|
||||
' If EgtDuploGetOriginal(Part.nPartId) = BtlPart.nPartId Then
|
||||
' Part.ResetSearchFound()
|
||||
' bFound = True
|
||||
' End If
|
||||
' Next
|
||||
' If bFound Then
|
||||
' Machgroup.ResetSearchFound()
|
||||
' End If
|
||||
' Next
|
||||
'End If
|
||||
EgtResetCurrMachGroup()
|
||||
If Not IsNothing(BtlPart.m_SelBTLFeatureVM) AndAlso (Map.refMainMenuVM.SelPage = Pages.VIEW OrElse Map.refMainMenuVM.SelPage = Pages.MACHINING) Then BtlPart.SelBTLFeatureVM = Nothing
|
||||
EgtDraw()
|
||||
End Sub
|
||||
Private Sub HighlightBTLPart(BtlPart As BTLPartVM)
|
||||
@@ -391,25 +292,6 @@ Public Class BTLStructureVM
|
||||
If Map.refMainMenuVM.SelPage = Pages.ONLYPRODPAGE Then
|
||||
' trovo ed evidenzio MachGroup e Duplo di questo pezzo
|
||||
Configuration.SetSearchPiece(BtlPart.nPartId)
|
||||
'If Not IsNothing(Map.refProjectVM.MachGroupPanelVM) Then
|
||||
' Dim MachGroupList As New List(Of MyMachGroupVM)
|
||||
' For Each Machgroup As MyMachGroupVM In Map.refProjectVM.MachGroupPanelVM.MachGroupVMList
|
||||
' Dim bFound As Boolean = False
|
||||
' For Each Part As PartVM In Machgroup.PartVMList
|
||||
' If EgtDuploGetOriginal(Part.nPartId) = BtlPart.nPartId Then
|
||||
' Part.SetSearchFound()
|
||||
' bFound = True
|
||||
' Else
|
||||
' Part.ResetSearchFound()
|
||||
' End If
|
||||
' Next
|
||||
' If bFound Then
|
||||
' Machgroup.SetSearchFound()
|
||||
' Else
|
||||
' Machgroup.ResetSearchFound()
|
||||
' End If
|
||||
' Next
|
||||
'End If
|
||||
End If
|
||||
' seleziono pagina BottomPanel
|
||||
If Not IsNothing(Map.refBottomPanelVM) Then Map.refBottomPanelVM.SetSelPartFeatureTab(BottomPanelVM.PartFeatureTab.NULL)
|
||||
@@ -433,22 +315,6 @@ Public Class BTLStructureVM
|
||||
End If
|
||||
' deevidenzio MachGroup e Duplo di questo pezzo
|
||||
Configuration.ResetSearchPiece(BtlPart.nPartId)
|
||||
'If Not IsNothing(Map.refProjectVM.MachGroupPanelVM) Then
|
||||
' Dim MachGroupList As New List(Of MyMachGroupVM)
|
||||
' For Each Machgroup As MyMachGroupVM In Map.refProjectVM.MachGroupPanelVM.MachGroupVMList
|
||||
' Dim bFound As Boolean = False
|
||||
' For Each Part As PartVM In Machgroup.PartVMList
|
||||
' Dim i = EgtDuploGetOriginal(Part.nPartId)
|
||||
' If EgtDuploGetOriginal(Part.nPartId) = BtlPart.nPartId Then
|
||||
' Part.ResetSearchFound()
|
||||
' bFound = True
|
||||
' End If
|
||||
' Next
|
||||
' If bFound Then
|
||||
' Machgroup.ResetSearchFound()
|
||||
' End If
|
||||
' Next
|
||||
'End If
|
||||
' seleziono pagina BottomPanel
|
||||
'Map.refBottomPanelVM.SetSelPartFeatureTab(BottomPanelVM.PartFeatureTab.NULL)
|
||||
If bDraw Then EgtDraw()
|
||||
@@ -474,16 +340,13 @@ Public Class BTLStructureVM
|
||||
If Not IsNothing(m_SelBTLPart) Then
|
||||
' se necessario tolgo solido dal precedentemente selezionato
|
||||
Configuration.DeselectSolid()
|
||||
'If Map.refShowBeamPanelVM.ShowSolid_IsChecked Then
|
||||
' Map.refShowBeamPanelVM.SetShowSolid(False)
|
||||
'End If
|
||||
' disabilito eventuale feature selezionata
|
||||
If Not IsNothing(m_SelBTLPart.m_SelBTLFeatureVM) Then m_SelBTLPart.SelBTLFeatureVM = Nothing
|
||||
End If
|
||||
m_SelBTLPart = value
|
||||
' se seleziono un pezzo
|
||||
If Not IsNothing(m_SelBTLPart) Then
|
||||
If Map.refMainMenuVM.SelPage = Pages.VIEW Then
|
||||
If Map.refMainMenuVM.SelPage = Pages.VIEW OrElse Map.refMainMenuVM.SelPage = Pages.ONLYPRODPAGE Then
|
||||
' se modalità building, la tolgo
|
||||
If Map.refShowBeamPanelVM.ShowBuilding_IsChecked Then
|
||||
ShowBuilding(False, False)
|
||||
@@ -495,7 +358,6 @@ Public Class BTLStructureVM
|
||||
' seleziono pagina BottomPanel
|
||||
Map.refBottomPanelVM.SetSelPartFeatureTab(BottomPanelVM.PartFeatureTab.PART)
|
||||
' mostro barra di gestione pezzo
|
||||
'Map.refProjectVM.NotifyPropertyChanged(NameOf(Map.refProjectVM.PartManager_Visibility))
|
||||
Map.refProjectVM.NotifyPropertyChanged(NameOf(Map.refProdProjManagerVM.PartManager_Visibility))
|
||||
' deseleziono le feature
|
||||
If Not IsNothing(m_SelBTLPart.SelBTLFeatureVM) Then SelBTLPart.SelBTLFeatureVM = Nothing
|
||||
@@ -506,70 +368,10 @@ Public Class BTLStructureVM
|
||||
ElseIf Map.refMainMenuVM.SelPage = Pages.MACHINING Then
|
||||
' trovo ed evidenzio MachGroup e Duplo di questo pezzo
|
||||
Configuration.SetSearchPiece(m_SelBTLPart.nPartId)
|
||||
'If Not IsNothing(Map.refProjectVM.MachGroupPanelVM) Then
|
||||
' Dim MachGroupList As New List(Of MyMachGroupVM)
|
||||
' For Each Machgroup As MyMachGroupVM In Map.refProjectVM.MachGroupPanelVM.MachGroupVMList
|
||||
' Dim bFound As Boolean = False
|
||||
' For Each Part As PartVM In Machgroup.PartVMList
|
||||
' If EgtDuploGetOriginal(Part.nPartId) = m_SelBTLPart.nPartId Then
|
||||
' Part.SetSearchFound()
|
||||
' bFound = True
|
||||
' Else
|
||||
' Part.ResetSearchFound()
|
||||
' End If
|
||||
' Next
|
||||
' If bFound Then
|
||||
' Machgroup.SetSearchFound()
|
||||
' Else
|
||||
' Machgroup.ResetSearchFound()
|
||||
' End If
|
||||
' Next
|
||||
'End If
|
||||
' seleziono pezzo nella scena
|
||||
SceneSelPartSelection()
|
||||
Core.ViewPanelVM.BWSetView(If(Core.ViewPanelVM.Type = BWType.BEAM, VT.ISO_SW, VT.TOP), False)
|
||||
EgtZoom(ZM.ALL)
|
||||
ElseIf Map.refMainMenuVM.SelPage = Pages.ONLYPRODPAGE Then
|
||||
' se modalità building, la tolgo
|
||||
If Map.refShowBeamPanelVM.ShowBuilding_IsChecked Then
|
||||
ShowBuilding(False, False)
|
||||
End If
|
||||
' seleziono pezzo nella scena
|
||||
SceneSelPartSelection()
|
||||
' seleziono pezzo in Db geometrico
|
||||
EgtBeamSetPart(m_SelBTLPart.nPartId)
|
||||
' seleziono pagina BottomPanel
|
||||
Map.refBottomPanelVM.SetSelPartFeatureTab(BottomPanelVM.PartFeatureTab.PART)
|
||||
' mostro barra di gestione pezzo
|
||||
'Map.refProjectVM.NotifyPropertyChanged(NameOf(Map.refProjectVM.PartManager_Visibility))
|
||||
Map.refProjectVM.NotifyPropertyChanged(NameOf(Map.refProdProjManagerVM.PartManager_Visibility))
|
||||
' deseleziono le feature
|
||||
If Not IsNothing(m_SelBTLPart.SelBTLFeatureVM) Then SelBTLPart.SelBTLFeatureVM = Nothing
|
||||
' aggiorno stato selezionato tutto
|
||||
Map.refShowBeamPanelVM.bShowAll = False
|
||||
' trovo ed evidenzio MachGroup e Duplo di questo pezzo
|
||||
Configuration.ResetSearchPiece(m_SelBTLPart.nPartId)
|
||||
'If Not IsNothing(Map.refProjectVM.MachGroupPanelVM) Then
|
||||
' Dim MachGroupList As New List(Of MyMachGroupVM)
|
||||
' For Each Machgroup As MyMachGroupVM In Map.refProjectVM.MachGroupPanelVM.MachGroupVMList
|
||||
' Dim bFound As Boolean = False
|
||||
' For Each Part As PartVM In Machgroup.PartVMList
|
||||
' If EgtDuploGetOriginal(Part.nPartId) = m_SelBTLPart.nPartId Then
|
||||
' Part.SetSearchFound()
|
||||
' bFound = True
|
||||
' Else
|
||||
' Part.ResetSearchFound()
|
||||
' End If
|
||||
' Next
|
||||
' If bFound Then
|
||||
' Machgroup.SetSearchFound()
|
||||
' Else
|
||||
' Machgroup.ResetSearchFound()
|
||||
' End If
|
||||
' Next
|
||||
'End If
|
||||
Core.ViewPanelVM.BWSetView(If(Core.ViewPanelVM.Type = BWType.BEAM, VT.ISO_SW, VT.TOP), False)
|
||||
EgtZoom(ZM.ALL)
|
||||
End If
|
||||
End If
|
||||
NotifyPropertyChanged(NameOf(SelBTLPart))
|
||||
|
||||
@@ -256,6 +256,9 @@
|
||||
<Compile Include="AboutBoxWindow\AboutBoxV.xaml.vb">
|
||||
<DependentUpon>AboutBoxV.xaml</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="AddFeatureWnd\NewAddFeatureWndV.xaml.vb">
|
||||
<DependentUpon>NewAddFeatureWndV.xaml</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="BTLPartManager\BTLPartManagerV.xaml.vb">
|
||||
<DependentUpon>BTLPartManagerV.xaml</DependentUpon>
|
||||
</Compile>
|
||||
@@ -272,6 +275,9 @@
|
||||
</Compile>
|
||||
<Compile Include="FeatureListManager\FeatureListManagerVM.vb" />
|
||||
<Compile Include="MachinePanel\MachinePanelVM.vb" />
|
||||
<Compile Include="MacroFeatureWnd\NewMacroFeatureWnd.xaml.vb">
|
||||
<DependentUpon>NewMacroFeatureWnd.xaml</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="PartInRawPartManager\PartInRawPartManagerWndV.xaml.vb">
|
||||
<DependentUpon>PartInRawPartManagerWndV.xaml</DependentUpon>
|
||||
</Compile>
|
||||
@@ -532,6 +538,10 @@
|
||||
<SubType>Designer</SubType>
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
</Page>
|
||||
<Page Include="AddFeatureWnd\NewAddFeatureWndV.xaml">
|
||||
<SubType>Designer</SubType>
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
</Page>
|
||||
<Page Include="BTLPartManager\BTLPartManagerV.xaml">
|
||||
<SubType>Designer</SubType>
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
@@ -544,6 +554,10 @@
|
||||
<SubType>Designer</SubType>
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
</Page>
|
||||
<Page Include="MacroFeatureWnd\NewMacroFeatureWnd.xaml">
|
||||
<SubType>Designer</SubType>
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
</Page>
|
||||
<Page Include="PartInRawPartManager\PartInRawPartManagerWndV.xaml">
|
||||
<SubType>Designer</SubType>
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
@@ -1136,6 +1150,12 @@
|
||||
<ItemGroup>
|
||||
<Resource Include="Resources\OpenProjectFileDialog\Archived.png" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Resource Include="Resources\InstrumentPanel\Ott.png" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Resource Include="Resources\InstrumentPanel\Vis.png" />
|
||||
</ItemGroup>
|
||||
<Import Project="$(MSBuildToolsPath)\Microsoft.VisualBasic.targets" />
|
||||
<PropertyGroup>
|
||||
<PostBuildEvent>IF "$(PlatformName)"=="x86" IF "$(ConfigurationName)" == "Release" copy $(TargetPath) c:\EgtProg\EgtBEAMWALL\EgtBEAMWALL.ViewerOptimizerR32.exe
|
||||
|
||||
@@ -112,13 +112,88 @@ Public Class FeatureListManagerVM
|
||||
NotifyPropertyChanged(NameOf(AddFeature_IsEnabled))
|
||||
End Sub
|
||||
|
||||
|
||||
Friend Sub FeatureSelectionChanged()
|
||||
NotifyPropertyChanged(NameOf(CopyFeature_IsEnabled))
|
||||
NotifyPropertyChanged(NameOf(MacroFeature_IsEnabled))
|
||||
NotifyPropertyChanged(NameOf(RemoveFeature_IsEnabled))
|
||||
End Sub
|
||||
|
||||
Private Sub CreateNewFeature(MacroListCount As Integer, nSelMacro As Integer, AddFeatureWndVM As AddFeatureWndVM, nNewFeatureId As Integer, bMacroFlag As Boolean, NewFeat As BTLFeatureM)
|
||||
' verifico se una Macro è selezionata
|
||||
If MacroListCount > 0 AndAlso nSelMacro >= 0 Then
|
||||
' Creo nuova feature sulla base della Macro selezionata
|
||||
' Creo table e setto variabili
|
||||
CreateMacroTable()
|
||||
Dim bOk As Boolean
|
||||
If AddFeatureWndVM.nSelMacroDefault >= 0 Then
|
||||
bOk = EgtLuaExecFile(AddFeatureWndVM.m_MacroCustomFilePathList(nSelMacro))
|
||||
Else
|
||||
bOk = EgtLuaExecFile(AddFeatureWndVM.m_MacroFilePathList(nSelMacro))
|
||||
End If
|
||||
' Leggo variabili
|
||||
EgtLuaGetGlobIntVar("MACRO.FEATUREID", nNewFeatureId)
|
||||
' Reset lua
|
||||
EgtLuaResetGlobVar("MACRO")
|
||||
If Not bOk Then
|
||||
MessageBox.Show(EgtMsg(61869), EgtMsg(30007))
|
||||
Return
|
||||
End If
|
||||
bMacroFlag = True
|
||||
Else
|
||||
' Creo nuova feature (Macro non selezionata)
|
||||
NewFeat = BTLFeatureM.CreateBTLFeature(AddFeatureWndVM.nSelPRC.nPRC, AddFeatureWndVM.nSelPRC.nGRP, AddFeatureWndVM.nSelPRC.nSIDE)
|
||||
NewFeat.SetDefaultValues()
|
||||
Dim vPar() As Double = Nothing
|
||||
Dim sPar As String = String.Empty
|
||||
Dim vParQ() As String = Nothing
|
||||
NewFeat.CalcParamArray(vPar, sPar, vParQ)
|
||||
If NewFeat.nPRC = 900 Then NewFeat.sDES = "2"
|
||||
' aggiorno la feature con nuovo valore
|
||||
EgtBeamSetPart(Map.refProjectVM.BTLStructureVM.SelBTLPart.nPartId)
|
||||
nNewFeatureId = EgtBeamAddProcess(NewFeat.nSelGRP, NewFeat.nPRC, NewFeat.nSelSIDE, NewFeat.sDES,
|
||||
Map.refProjectVM.BTLStructureVM.SelBTLPart.BTLPartM.NewProcId(),
|
||||
New Frame3d(), vPar, sPar, vParQ, GDB_ID.NULL, GDB_ID.NULL)
|
||||
bMacroFlag = False
|
||||
End If
|
||||
' se è stata creata
|
||||
If nNewFeatureId <> GDB_ID.NULL Then
|
||||
MyMachGroupPanelM.SetDuploModified(Map.refProjectVM.BTLStructureVM.SelBTLPart.nPartId)
|
||||
' la aggiungo a struttura BTL corrente
|
||||
NewFeat = BTLFeatureM.CreateBTLFeature(Map.refProjectVM.BTLStructureVM.SelBTLPart.BTLPartM, nNewFeatureId)
|
||||
If Not bMacroFlag Then NewFeat.SetDefaultValues()
|
||||
Map.refProjectVM.BTLStructureVM.SelBTLPart.BTLPartM.AddBTLFeature(NewFeat)
|
||||
Map.refProjectVM.BTLStructureVM.SelBTLPart.SelBTLFeatureVM = Map.refProjectVM.BTLStructureVM.SelBTLPart.BTLFeatureVMList.FirstOrDefault(Function(x) x.BTLFeatureM Is NewFeat)
|
||||
Map.refProjectVM.BTLStructureVM.SelBTLPart.ResetCalcPart()
|
||||
End If
|
||||
End Sub
|
||||
|
||||
Private Sub CreateMacroTable()
|
||||
Dim nMacroW, nMacroH As Integer
|
||||
If Map.refProjectVM.BTLStructureVM.SelBTLPart.nROTATED = 0 OrElse Map.refProjectVM.BTLStructureVM.SelBTLPart.nROTATED = 180 Then
|
||||
If Map.refProjectVM.BTLStructureVM.SelBTLPart.m_SelBTLFeatureVM.nSelSIDE = 1 OrElse Map.refProjectVM.BTLStructureVM.SelBTLPart.m_SelBTLFeatureVM.nSelSIDE = 3 Then
|
||||
nMacroW = Map.refProjectVM.BTLStructureVM.SelBTLPart.dBtlW
|
||||
nMacroH = Map.refProjectVM.BTLStructureVM.SelBTLPart.dBtlH
|
||||
Else
|
||||
nMacroW = Map.refProjectVM.BTLStructureVM.SelBTLPart.dBtlH
|
||||
nMacroH = Map.refProjectVM.BTLStructureVM.SelBTLPart.dBtlW
|
||||
End If
|
||||
ElseIf Map.refProjectVM.BTLStructureVM.SelBTLPart.nROTATED = 90 OrElse Map.refProjectVM.BTLStructureVM.SelBTLPart.nROTATED = 270 Then
|
||||
If Map.refProjectVM.BTLStructureVM.SelBTLPart.m_SelBTLFeatureVM.nSelSIDE = 1 OrElse Map.refProjectVM.BTLStructureVM.SelBTLPart.m_SelBTLFeatureVM.nSelSIDE = 3 Then
|
||||
nMacroW = Map.refProjectVM.BTLStructureVM.SelBTLPart.dBtlH
|
||||
nMacroH = Map.refProjectVM.BTLStructureVM.SelBTLPart.dBtlW
|
||||
Else
|
||||
nMacroW = Map.refProjectVM.BTLStructureVM.SelBTLPart.dBtlW
|
||||
nMacroH = Map.refProjectVM.BTLStructureVM.SelBTLPart.dBtlH
|
||||
End If
|
||||
End If
|
||||
|
||||
EgtLuaCreateGlobTable("MACRO")
|
||||
EgtLuaSetGlobNumVar("MACRO.L", Map.refProjectVM.BTLStructureVM.SelBTLPart.dBtlL)
|
||||
EgtLuaSetGlobNumVar("MACRO.W", nMacroW)
|
||||
EgtLuaSetGlobNumVar("MACRO.H", nMacroH)
|
||||
EgtLuaSetGlobIntVar("MACRO.PROCID", Map.refProjectVM.BTLStructureVM.SelBTLPart.BTLPartM.NewProcId())
|
||||
End Sub
|
||||
|
||||
#End Region ' Methods
|
||||
|
||||
#Region "COMMANDS"
|
||||
@@ -179,9 +254,14 @@ Public Class FeatureListManagerVM
|
||||
If IsNothing(Map.refProjectVM.BTLStructureVM.SelBTLPart) Then Return
|
||||
' apro finestra di creazione macro
|
||||
Dim MacroFeatureWndVM As New MacroFeatureWndVM()
|
||||
Dim MacroFeatureWnd As New MacroFeatureWndV(Application.Current.MainWindow, MacroFeatureWndVM)
|
||||
If MacroFeatureWnd.ShowDialog() Then
|
||||
|
||||
If bOnlyProd Then
|
||||
Dim NewMacroFeatureWnd As New NewMacroFeatureWnd(Application.Current.MainWindow, MacroFeatureWndVM)
|
||||
If NewMacroFeatureWnd.ShowDialog() Then
|
||||
End If
|
||||
Else
|
||||
Dim MacroFeatureWnd As New MacroFeatureWndV(Application.Current.MainWindow, MacroFeatureWndVM)
|
||||
If MacroFeatureWnd.ShowDialog() Then
|
||||
End If
|
||||
End If
|
||||
End Sub
|
||||
|
||||
@@ -209,54 +289,24 @@ Public Class FeatureListManagerVM
|
||||
If IsNothing(Map.refProjectVM.BTLStructureVM.SelBTLPart) Then Return
|
||||
' apro finestra di definizione nuova feature
|
||||
Dim AddFeatureWndVM As New AddFeatureWndVM()
|
||||
Dim AddFeatureWnd As New AddFeatureWndV(Application.Current.MainWindow, AddFeatureWndVM)
|
||||
If AddFeatureWnd.ShowDialog() Then
|
||||
Dim NewFeat As BTLFeatureM
|
||||
Dim nNewFeatureId As Integer = 0
|
||||
Dim bMacroFlag As Boolean = False
|
||||
' verifico se una Macro è selezionata
|
||||
If AddFeatureWndVM.MacroList.Count > 0 AndAlso AddFeatureWndVM.nSelMacro >= 0 Then
|
||||
' Creo nuova feature sulla base della Macro selezionata
|
||||
' Creo table e setto variabili
|
||||
EgtLuaCreateGlobTable("MACRO")
|
||||
EgtLuaSetGlobNumVar("MACRO.L", Map.refProjectVM.BTLStructureVM.SelBTLPart.dBtlL)
|
||||
EgtLuaSetGlobNumVar("MACRO.W", Map.refProjectVM.BTLStructureVM.SelBTLPart.dBtlW)
|
||||
EgtLuaSetGlobNumVar("MACRO.H", Map.refProjectVM.BTLStructureVM.SelBTLPart.dBtlH)
|
||||
EgtLuaSetGlobIntVar("MACRO.PROCID", Map.refProjectVM.BTLStructureVM.SelBTLPart.BTLPartM.NewProcId())
|
||||
Dim bOk = EgtLuaExecFile(AddFeatureWndVM.m_MacroFilePathList(AddFeatureWndVM.nSelMacro))
|
||||
' Leggo variabili
|
||||
EgtLuaGetGlobIntVar("MACRO.FEATUREID", nNewFeatureId)
|
||||
' Reset lua
|
||||
EgtLuaResetGlobVar("MACRO")
|
||||
If Not bOk Then
|
||||
MessageBox.Show(EgtMsg(61869), EgtMsg(30007))
|
||||
Return
|
||||
Dim NewFeat As BTLFeatureM = Nothing
|
||||
Dim nNewFeatureId As Integer = 0
|
||||
Dim bMacroFlag As Boolean = False
|
||||
If bOnlyProd Then
|
||||
Dim AddNewFeatureWnd As New NewAddFeatureWndV(Application.Current.MainWindow, AddFeatureWndVM)
|
||||
If AddNewFeatureWnd.ShowDialog() Then
|
||||
' verifico se una Macro è selezionata
|
||||
If AddFeatureWndVM.nSelMacroDefault >= 0 Then
|
||||
CreateNewFeature(AddFeatureWndVM.MacroDefaultList.Count, AddFeatureWndVM.nSelMacroDefault, AddFeatureWndVM, nNewFeatureId, bMacroFlag, NewFeat)
|
||||
Else
|
||||
CreateNewFeature(AddFeatureWndVM.MacroCustomList.Count, AddFeatureWndVM.nSelMacroCustom, AddFeatureWndVM, nNewFeatureId, bMacroFlag, NewFeat)
|
||||
End If
|
||||
bMacroFlag = True
|
||||
Else
|
||||
' Creo nuova feature (Macro non selezionata)
|
||||
NewFeat = BTLFeatureM.CreateBTLFeature(AddFeatureWndVM.nSelPRC.nPRC, AddFeatureWndVM.nSelPRC.nGRP, AddFeatureWndVM.nSelPRC.nSIDE)
|
||||
NewFeat.SetDefaultValues()
|
||||
Dim vPar() As Double = Nothing
|
||||
Dim sPar As String = String.Empty
|
||||
Dim vParQ() As String = Nothing
|
||||
NewFeat.CalcParamArray(vPar, sPar, vParQ)
|
||||
' aggiorno la feature con nuovo valore
|
||||
EgtBeamSetPart(Map.refProjectVM.BTLStructureVM.SelBTLPart.nPartId)
|
||||
nNewFeatureId = EgtBeamAddProcess(NewFeat.nSelGRP, NewFeat.nPRC, NewFeat.nSelSIDE, "",
|
||||
Map.refProjectVM.BTLStructureVM.SelBTLPart.BTLPartM.NewProcId(),
|
||||
New Frame3d(), vPar, sPar, vParQ, GDB_ID.NULL, GDB_ID.NULL)
|
||||
bMacroFlag = False
|
||||
End If
|
||||
' se è stata creata
|
||||
If nNewFeatureId <> GDB_ID.NULL Then
|
||||
MyMachGroupPanelM.SetDuploModified(Map.refProjectVM.BTLStructureVM.SelBTLPart.nPartId)
|
||||
' la aggiungo a struttura BTL corrente
|
||||
NewFeat = BTLFeatureM.CreateBTLFeature(Map.refProjectVM.BTLStructureVM.SelBTLPart.BTLPartM, nNewFeatureId)
|
||||
If Not bMacroFlag Then NewFeat.SetDefaultValues()
|
||||
Map.refProjectVM.BTLStructureVM.SelBTLPart.BTLPartM.AddBTLFeature(NewFeat)
|
||||
Map.refProjectVM.BTLStructureVM.SelBTLPart.SelBTLFeatureVM = Map.refProjectVM.BTLStructureVM.SelBTLPart.BTLFeatureVMList.FirstOrDefault(Function(x) x.BTLFeatureM Is NewFeat)
|
||||
Map.refProjectVM.BTLStructureVM.SelBTLPart.ResetCalcPart()
|
||||
Else
|
||||
Dim AddFeatureWnd As New AddFeatureWndV(Application.Current.MainWindow, AddFeatureWndVM)
|
||||
If AddFeatureWnd.ShowDialog() Then
|
||||
' verifico se una Macro è selezionata
|
||||
CreateNewFeature(AddFeatureWndVM.MacroCustomList.Count, AddFeatureWndVM.nSelMacroCustom, AddFeatureWndVM, nNewFeatureId, bMacroFlag, NewFeat)
|
||||
End If
|
||||
End If
|
||||
End Sub
|
||||
|
||||
@@ -15,7 +15,7 @@
|
||||
</Style>
|
||||
</StackPanel.Style>
|
||||
<TextBlock Text="{Binding Message}"
|
||||
Visibility="{Binding Message_Visibility}"
|
||||
Visibility="{Binding Message_Visibility}"
|
||||
Style="{StaticResource OptionTextBlock}"/>
|
||||
<TextBox Text="{Binding Text, UpdateSourceTrigger=PropertyChanged}"
|
||||
Width="200"
|
||||
|
||||
@@ -442,7 +442,6 @@ Public Class FreeContourManagerVM
|
||||
Map.refProjectVM.NotifyPropertyChanged(NameOf(Map.refProdProjManagerVM.PartManager_Visibility))
|
||||
' attivo pannello
|
||||
Map.refProjectVM.SetFreeContourManager_Visibility(True)
|
||||
Map.refProjWndVM.SetFreeContourManager_Visibility(True)
|
||||
EgtDraw()
|
||||
End Sub
|
||||
|
||||
@@ -531,7 +530,6 @@ Public Class FreeContourManagerVM
|
||||
End If
|
||||
' disattivo pannello
|
||||
Map.refProjectVM.SetFreeContourManager_Visibility(False)
|
||||
Map.refProjWndVM.SetFreeContourManager_Visibility(False)
|
||||
' attivo bottone edit
|
||||
SelFeature.RefreshFCMBtnVisibility()
|
||||
' resetto tutte le variabili correnti
|
||||
|
||||
@@ -45,18 +45,20 @@
|
||||
<Image Source="/Resources/InstrumentPanel/Statistics.png" Stretch="Uniform"/>
|
||||
</ToggleButton>
|
||||
|
||||
<Button Content="VIS"
|
||||
Command="{Binding Visualization_Command}"
|
||||
<Button Command="{Binding Visualization_Command}"
|
||||
ToolTip="{Binding Statistics_Msg}"
|
||||
Style="{StaticResource ToolBar_Button}"
|
||||
Visibility="{Binding VisStatistic_Visibility}"
|
||||
IsEnabled="{Binding VisStatistic_IsEnabled}"/>
|
||||
IsEnabled="{Binding VisStatistic_IsEnabled}">
|
||||
<Image Source="/Resources/InstrumentPanel/Vis.png" Stretch="Uniform"/>
|
||||
</Button>
|
||||
|
||||
<Button Content="OTT"
|
||||
Command="{Binding Optimizer_Command}"
|
||||
<Button Command="{Binding Optimizer_Command}"
|
||||
ToolTip="{Binding Statistics_Msg}"
|
||||
Style="{StaticResource ToolBar_Button}"
|
||||
Visibility="{Binding OtStatistic_Visibility}"
|
||||
IsEnabled="{Binding OtStatistic_IsEnabled}"/>
|
||||
IsEnabled="{Binding OtStatistic_IsEnabled}">
|
||||
<Image Source="/Resources/InstrumentPanel/Ott.png" Stretch="Uniform"/>
|
||||
</Button>
|
||||
|
||||
</EgtFloating:EgtFloatingPanel>
|
||||
|
||||
@@ -24,7 +24,8 @@
|
||||
<DataGridCheckBoxColumn x:Key="colDO" Binding="{Binding bDO, UpdateSourceTrigger=PropertyChanged}"
|
||||
MinWidth="28">
|
||||
<DataGridCheckBoxColumn.Header>
|
||||
<CheckBox IsChecked="{Binding Path=Tag.bDOALL, RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:FeatureListV}}}"/>
|
||||
<CheckBox IsChecked="{Binding Path=Tag.bDOALL, RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:FeatureListV}}}"
|
||||
HorizontalAlignment="Center"/>
|
||||
</DataGridCheckBoxColumn.Header>
|
||||
</DataGridCheckBoxColumn>
|
||||
<!--Validità feature-->
|
||||
|
||||
@@ -19,13 +19,16 @@
|
||||
Style="{StaticResource DataGrid_CustomHighLight}">
|
||||
<DataGrid.Resources>
|
||||
<!--DO - Abilitazione-->
|
||||
<DataGridCheckBoxColumn x:Key="colDO" Binding="{Binding bDO,UpdateSourceTrigger=PropertyChanged}">
|
||||
<DataGridCheckBoxColumn x:Key="colDO" Binding="{Binding bDO, UpdateSourceTrigger=PropertyChanged}"
|
||||
MinWidth="28">
|
||||
<!--<DataGridCheckBoxColumn.Header>
|
||||
<TextBlock Text="{Binding Path=DataContext.DO_Msg,RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:FeatureInPartInRawPartListV}}}"/>
|
||||
</DataGridCheckBoxColumn.Header>-->
|
||||
<DataGridCheckBoxColumn.HeaderTemplate>
|
||||
<DataTemplate>
|
||||
<TextBlock Text="{Binding DataContext.DO_Msg,RelativeSource={RelativeSource AncestorType={x:Type DataGrid}}}"/>
|
||||
<!--<TextBlock Text="{Binding DataContext.DO_Msg,RelativeSource={RelativeSource AncestorType={x:Type DataGrid}}}"/>-->
|
||||
<CheckBox IsChecked="{Binding Path=Tag.bDOALL, RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:OnlyProdFeatureListV}}}"
|
||||
HorizontalAlignment="Center"/>
|
||||
</DataTemplate>
|
||||
</DataGridCheckBoxColumn.HeaderTemplate>
|
||||
</DataGridCheckBoxColumn>
|
||||
|
||||
@@ -34,8 +34,8 @@
|
||||
<DataGridTemplateColumn.CellTemplate>
|
||||
<DataTemplate>
|
||||
<CheckBox IsChecked="{Binding bCustom, UpdateSourceTrigger=PropertyChanged}"
|
||||
Visibility="{Binding Tag, RelativeSource={RelativeSource AncestorType={x:Type DataGrid}}}"
|
||||
HorizontalAlignment="Center"/>
|
||||
Visibility="{Binding Tag, RelativeSource={RelativeSource AncestorType={x:Type DataGrid}}}"
|
||||
HorizontalAlignment="Center"/>
|
||||
</DataTemplate>
|
||||
</DataGridTemplateColumn.CellTemplate>
|
||||
</DataGridTemplateColumn>
|
||||
|
||||
@@ -108,9 +108,11 @@
|
||||
</DataGridTextColumn>
|
||||
<!--ROT - Rotazione-->
|
||||
<DataGridTemplateColumn x:Key="colROT" SortMemberPath="dROT">
|
||||
<DataGridTemplateColumn.Header>
|
||||
<TextBlock Text="Rotazione"/>
|
||||
</DataGridTemplateColumn.Header>
|
||||
<DataGridTemplateColumn.HeaderTemplate>
|
||||
<DataTemplate>
|
||||
<TextBlock Text="{Binding Path=DataContext.ROTATION_Msg,RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:PartInRawPartListV}}}"/>
|
||||
</DataTemplate>
|
||||
</DataGridTemplateColumn.HeaderTemplate>
|
||||
<DataGridTemplateColumn.CellTemplate>
|
||||
<DataTemplate>
|
||||
<Grid>
|
||||
@@ -143,9 +145,11 @@
|
||||
</DataGridTemplateColumn>
|
||||
<!--INV - Inversione-->
|
||||
<DataGridTemplateColumn x:Key="colFLIP">
|
||||
<DataGridTemplateColumn.Header>
|
||||
<TextBlock Text="Inversione"/>
|
||||
</DataGridTemplateColumn.Header>
|
||||
<DataGridTemplateColumn.HeaderTemplate>
|
||||
<DataTemplate>
|
||||
<TextBlock Text="{Binding Path=DataContext.INVERSION_Msg,RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:PartInRawPartListV}}}"/>
|
||||
</DataTemplate>
|
||||
</DataGridTemplateColumn.HeaderTemplate>
|
||||
<DataGridTemplateColumn.CellTemplate>
|
||||
<DataTemplate>
|
||||
<CheckBox IsChecked="{Binding bFLIP, UpdateSourceTrigger=PropertyChanged}"
|
||||
|
||||
@@ -114,6 +114,18 @@ Public Class PartInRawPartListVM
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Public ReadOnly Property ROTATION_Msg As String
|
||||
Get
|
||||
Return EgtMsg(61737)
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Public ReadOnly Property INVERSION_Msg As String
|
||||
Get
|
||||
Return EgtMsg(61738)
|
||||
End Get
|
||||
End Property
|
||||
|
||||
#End Region ' Messages
|
||||
|
||||
#Region "CONSTRUCTOR"
|
||||
@@ -143,6 +155,11 @@ Public Class PartInRawPartListVM
|
||||
m_colPartInRawPart_PosY = m_PartInRawPartColumns.FirstOrDefault(Function(x) x.Name = COL_POSY)
|
||||
' aggiorno la visibilità delle colonne
|
||||
For Each col In PartInRawPartColumns
|
||||
If Not bOnlyProd AndAlso nMachType = MachineType.BEAM AndAlso (col.Name.Equals(COL_ROT) OrElse col.Name.Equals(COL_FLIP) OrElse col.Name.Equals(COL_POSX)) Then
|
||||
col.Visible = False
|
||||
Else
|
||||
col.Visible = True
|
||||
End If
|
||||
col.ColumnVisibility = If(col.Visible, Visibility.Visible, Visibility.Collapsed)
|
||||
Next
|
||||
End Sub
|
||||
|
||||
@@ -133,10 +133,12 @@
|
||||
</DataGridTextColumn>
|
||||
<!--PosZ - Posizione in Z-->
|
||||
<DataGridTextColumn x:Key="colPOSZ" Binding="{Binding sPosZ}">
|
||||
<DataGridTextColumn.Header>
|
||||
<TextBlock Text="{Binding Path=DataContext.PosZ_Msg,
|
||||
<DataGridTextColumn.HeaderTemplate>
|
||||
<DataTemplate>
|
||||
<TextBlock Text="{Binding Path=DataContext.PosZ_Msg,
|
||||
RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:RawPartListV}}}"/>
|
||||
</DataGridTextColumn.Header>
|
||||
</DataTemplate>
|
||||
</DataGridTextColumn.HeaderTemplate>
|
||||
<DataGridTextColumn.EditingElementStyle>
|
||||
<Style TargetType="{x:Type TextBox}">
|
||||
<Setter Property="Foreground" Value="Blue" />
|
||||
|
||||
@@ -1,9 +1,7 @@
|
||||
Imports System.Collections.ObjectModel
|
||||
Imports System.IO
|
||||
Imports EgtBEAMWALL.Core
|
||||
Imports EgtUILib
|
||||
Imports EgtWPFLib5
|
||||
Imports Org.BouncyCastle.Crypto.Digests.SkeinEngine
|
||||
|
||||
Public Class LeftPanelVM
|
||||
Inherits VMBase
|
||||
@@ -45,6 +43,18 @@ Public Class LeftPanelVM
|
||||
NotifyPropertyChanged(NameOf(Parameters_IsEnabled))
|
||||
End Sub
|
||||
|
||||
Private m_Data_IsEnabled As Boolean = False
|
||||
Public ReadOnly Property Data_IsEnabled As Boolean
|
||||
Get
|
||||
Return m_Data_IsEnabled
|
||||
End Get
|
||||
End Property
|
||||
Friend Sub SetData_IsEnabled(bIsEnabled As Boolean)
|
||||
m_Data_IsEnabled = bIsEnabled
|
||||
NotifyPropertyChanged(NameOf(Data_IsEnabled))
|
||||
End Sub
|
||||
|
||||
|
||||
' Definizione comandi
|
||||
Private m_cmdData As ICommand
|
||||
Private m_cmdParameter As ICommand
|
||||
|
||||
@@ -83,6 +83,7 @@
|
||||
HorizontalAlignment="Left">
|
||||
<Button Command="{Binding Data_Command}"
|
||||
ToolTip="{Binding Data_ToolTip}"
|
||||
IsEnabled="{Binding Data_IsEnabled}"
|
||||
Style="{StaticResource LeftPanel_Button}">
|
||||
<Image Source="/Resources/InstrumentPanel/Analyze.png" Stretch="Uniform"/>
|
||||
</Button>
|
||||
|
||||
@@ -24,39 +24,13 @@ Public Class MyMachGroupPanelVM
|
||||
Dim nSelBTLPartId As Integer = Map.refProjectVM.BTLStructureVM.SelBTLParts(0).nPartId
|
||||
' deevidenzio MachGroup e Duplo di questo pezzo
|
||||
Configuration.ResetSearchPiece(nSelBTLPartId)
|
||||
'If Not IsNothing(Map.refProjectVM.MachGroupPanelVM) Then
|
||||
' Dim MachGroupList As New List(Of MyMachGroupVM)
|
||||
' For Each Machgroup As MyMachGroupVM In Map.refProjectVM.MachGroupPanelVM.MachGroupVMList
|
||||
' Dim bFound As Boolean = False
|
||||
' For Each Part As PartVM In Machgroup.PartVMList
|
||||
' If EgtDuploGetOriginal(Part.nPartId) = nSelBTLPartId Then
|
||||
' Part.ResetSearchFound()
|
||||
' bFound = True
|
||||
' End If
|
||||
' Next
|
||||
' If bFound Then
|
||||
' Machgroup.ResetSearchFound()
|
||||
' End If
|
||||
' Next
|
||||
'End If
|
||||
End If
|
||||
End If
|
||||
If Not IsNothing(SelectedMachGroup) AndAlso Not IsNothing(SelectedMachGroup.SelPart) AndAlso Not IsNothing(Map.refProjectVM.BTLStructureVM) Then
|
||||
Configuration.ResetSearch(SelectedMachGroup.SelPart.nPartId)
|
||||
'For BTLPartIndex = 0 To Map.refProjectVM.BTLStructureVM.BTLPartVMList.Count - 1
|
||||
' Dim nDuploOriginalId As Integer = 0
|
||||
' If EgtGetInfo(SelectedMachGroup.SelPart.nPartId, GDB_SI_DUPSOU, nDuploOriginalId) AndAlso nDuploOriginalId > 0 AndAlso nDuploOriginalId = Map.refProjectVM.BTLStructureVM.BTLPartVMList(BTLPartIndex).nPartId Then
|
||||
' Map.refProjectVM.BTLStructureVM.BTLPartVMList(BTLPartIndex).ResetSearchFound()
|
||||
' Exit For
|
||||
' End If
|
||||
'Next
|
||||
End If
|
||||
' se modalita' assemblato
|
||||
Configuration.AssembledMode(Map.refShowBeamPanelVM.ShowBuilding_IsChecked)
|
||||
'If Map.refShowBeamPanelVM.ShowBuilding_IsChecked AndAlso Map.refShowBeamPanelVM.bShowAll Then
|
||||
' ' devo smontarlo prima di calcolare le travi, altrimenti non trova i pezzi
|
||||
' Map.refProjectVM.BTLStructureVM.ShowBuilding(False, False)
|
||||
'End If
|
||||
' se precedente pezzo selezionato
|
||||
If Not IsNothing(value) AndAlso Map.refProjectVM.LastSelGridType = ProjectVM.GridSelTypes.PART AndAlso Map.refProjectVM.BTLStructureVM.SelBTLParts.Count > 0 Then
|
||||
Dim SelBTLPart As BTLPartVM = Map.refProjectVM.BTLStructureVM.SelBTLParts(0)
|
||||
|
||||
@@ -1,6 +1,4 @@
|
||||
Imports System.Collections.ObjectModel
|
||||
Imports System.Collections.Specialized
|
||||
Imports System.ComponentModel
|
||||
Imports System.IO
|
||||
Imports System.Windows.Threading
|
||||
Imports EgtBEAMWALL.Core
|
||||
@@ -30,47 +28,15 @@ Public Class MyMachGroupVM
|
||||
Dim nSelBTLPartId As Integer = Map.refProjectVM.BTLStructureVM.SelBTLParts(0).nPartId
|
||||
' deevidenzio MachGroup e Duplo di questo pezzo
|
||||
Configuration.ResetSearchPiece(nSelBTLPartId)
|
||||
'If Not IsNothing(Map.refProjectVM.MachGroupPanelVM) Then
|
||||
' Dim MachGroupList As New List(Of MyMachGroupVM)
|
||||
' For Each Machgroup As MyMachGroupVM In Map.refProjectVM.MachGroupPanelVM.MachGroupVMList
|
||||
' Dim bFound As Boolean = False
|
||||
' For Each Part As PartVM In Machgroup.PartVMList
|
||||
' If EgtDuploGetOriginal(Part.nPartId) = nSelBTLPartId Then
|
||||
' Part.ResetSearchFound()
|
||||
' bFound = True
|
||||
' End If
|
||||
' Next
|
||||
' If bFound Then
|
||||
' Machgroup.ResetSearchFound()
|
||||
' End If
|
||||
' Next
|
||||
'End If
|
||||
End If
|
||||
If Not IsNothing(m_SelPart) Then
|
||||
' deevidenzio BTLPart di questo pezzo
|
||||
If Not IsNothing(Map.refProjectVM.BTLStructureVM) Then
|
||||
Configuration.ResetSearch(m_SelPart.nPartId)
|
||||
'For BTLPartIndex = 0 To Map.refProjectVM.BTLStructureVM.BTLPartVMList.Count - 1
|
||||
' Dim nDuploOriginalId As Integer = 0
|
||||
' If EgtGetInfo(m_SelPart.nPartId, GDB_SI_DUPSOU, nDuploOriginalId) AndAlso nDuploOriginalId > 0 AndAlso nDuploOriginalId = Map.refProjectVM.BTLStructureVM.BTLPartVMList(BTLPartIndex).nPartId Then
|
||||
' Map.refProjectVM.BTLStructureVM.BTLPartVMList(BTLPartIndex).ResetSearchFound()
|
||||
' Exit For
|
||||
' End If
|
||||
'Next
|
||||
End If
|
||||
End If
|
||||
' se modalita' assemblato
|
||||
Configuration.AssembledMode(Map.refShowBeamPanelVM.ShowBuilding_IsChecked)
|
||||
'If Map.refShowBeamPanelVM.ShowBuilding_IsChecked AndAlso Map.refShowBeamPanelVM.bShowAll Then
|
||||
' ' devo smontarlo prima di calcolare le travi, altrimenti non trova i pezzi
|
||||
' Map.refProjectVM.BTLStructureVM.ShowBuilding(False, False)
|
||||
'End If
|
||||
'If Map.refProjectVM.BTLStructureVM.SelBTLParts.Count > 0 Then
|
||||
' ' deseleziono pezzo in lista BTLPart
|
||||
' For BTLPartIndex = Map.refProjectVM.BTLStructureVM.SelBTLParts.Count - 1 To 0 Step -1
|
||||
' Map.refProjectVM.BTLStructureVM.SelBTLParts.Remove(Map.refProjectVM.BTLStructureVM.SelBTLParts(BTLPartIndex))
|
||||
' Next
|
||||
'End If
|
||||
End If
|
||||
m_SelPart = value
|
||||
' seleziono pezzo
|
||||
@@ -78,10 +44,11 @@ Public Class MyMachGroupVM
|
||||
If Not IsNothing(value) Then
|
||||
If Map.refMainMenuVM.SelPage = Pages.ONLYPRODPAGE Then
|
||||
' imposto modalita' prod su vista feature
|
||||
'Map.refProjectVM.SelProdProj = ProdProj.PROD
|
||||
Map.refProdProjManagerVM.SelProdProj = ProdProj.PROD
|
||||
'' deseleziono pezzo in lista BTLPart
|
||||
'Map.refProjectVM.BTLStructureVM.SelBTLParts.Clear()
|
||||
' deseleziono pezzo in lista BTLPart
|
||||
For BTLPartIndex = Map.refProjectVM.BTLStructureVM.SelBTLParts.Count - 1 To 0 Step -1
|
||||
Map.refProjectVM.BTLStructureVM.SelBTLParts.RemoveFromList(Map.refProjectVM.BTLStructureVM.SelBTLParts(BTLPartIndex))
|
||||
Next
|
||||
End If
|
||||
EgtSelectObj(SelPart.nPartId)
|
||||
If Map.refMainMenuVM.SelPage = Pages.MACHINING Then
|
||||
@@ -89,15 +56,7 @@ Public Class MyMachGroupVM
|
||||
End If
|
||||
' trovo ed evidenzio BTLPart di questo pezzo
|
||||
If Not IsNothing(Map.refProjectVM.MachGroupPanelVM) Then
|
||||
'Dim MachGroupList As New List(Of MyMachGroupVM)
|
||||
Configuration.SetSearch(m_SelPart.nPartId)
|
||||
'For BTLPartIndex = 0 To Map.refProjectVM.BTLStructureVM.BTLPartVMList.Count - 1
|
||||
' Dim nDuploOriginalId As Integer = 0
|
||||
' If EgtGetInfo(m_SelPart.nPartId, GDB_SI_DUPSOU, nDuploOriginalId) AndAlso nDuploOriginalId > 0 AndAlso nDuploOriginalId = Map.refProjectVM.BTLStructureVM.BTLPartVMList(BTLPartIndex).nPartId Then
|
||||
' Map.refProjectVM.BTLStructureVM.BTLPartVMList(BTLPartIndex).SetSearchFound()
|
||||
' Exit For
|
||||
' End If
|
||||
'Next
|
||||
End If
|
||||
|
||||
End If
|
||||
@@ -150,14 +109,6 @@ Public Class MyMachGroupVM
|
||||
' verifico se la dimensione e' maggiore del box minimo dei pezzi
|
||||
Dim b3Parts As New BBox3d
|
||||
Configuration.VerifyMaxDimension(m_PartVMList, b3Parts)
|
||||
'Dim nBoxLayerId As Integer = EgtGetFirstNameInGroup(m_PartVMList(0).nPartId, "Box")
|
||||
'EgtGetBBoxGlob(nBoxLayerId, GDB_BB.EXACT, b3Parts)
|
||||
'For PartIndex = 1 To m_PartVMList.Count - 1
|
||||
' Dim b3Part As New BBox3d
|
||||
' nBoxLayerId = EgtGetFirstNameInGroup(m_PartVMList(PartIndex).nPartId, "Box")
|
||||
' EgtGetBBoxGlob(nBoxLayerId, GDB_BB.EXACT, b3Part)
|
||||
' b3Parts.Add(b3Part)
|
||||
'Next
|
||||
Dim b3RawPart As New BBox3d
|
||||
EgtGetRawPartBBox(nRawPartId, b3RawPart)
|
||||
Dim dMinValue As Double = 0
|
||||
@@ -175,19 +126,6 @@ Public Class MyMachGroupVM
|
||||
' riporto il grezzo nell'angolo tavola di origine
|
||||
Dim b3Tab As New BBox3d
|
||||
Configuration.SelectCorner(b3Tab, nRawPartId)
|
||||
'EgtGetTableArea(1, b3Tab)
|
||||
'Dim p3OrigOnTab As Point3d
|
||||
'Select Case CurrentMachine.OrigCorner
|
||||
' Case MCH_CR.BL
|
||||
' p3OrigOnTab = New Point3d(CurrentMachine.OrigOffsX, CurrentMachine.OrigOffsY, 0)
|
||||
' Case MCH_CR.BR
|
||||
' p3OrigOnTab = New Point3d(b3Tab.DimX() - CurrentMachine.OrigOffsX, CurrentMachine.OrigOffsY, 0)
|
||||
' Case MCH_CR.TL
|
||||
' p3OrigOnTab = New Point3d(CurrentMachine.OrigOffsX, b3Tab.DimY() - CurrentMachine.OrigOffsY, 0)
|
||||
' Case MCH_CR.TR
|
||||
' p3OrigOnTab = New Point3d(b3Tab.DimX() - CurrentMachine.OrigOffsX, b3Tab.DimY() - CurrentMachine.OrigOffsY, 0)
|
||||
'End Select
|
||||
'EgtMoveToCornerRawPart(nRawPartId, p3OrigOnTab, CurrentMachine.OrigCorner)
|
||||
' sposto tutti i pezzi di quanto si e' accorciato il grezzo
|
||||
If CurrentMachine.NestingCorner = MCH_CR.TR OrElse CurrentMachine.NestingCorner = MCH_CR.BR Then
|
||||
For Each Part In m_PartVMList
|
||||
@@ -223,14 +161,6 @@ Public Class MyMachGroupVM
|
||||
' verifico se la dimensione e' maggiore del box minimo dei pezzi
|
||||
Dim b3Parts As New BBox3d
|
||||
Configuration.VerifyMaxDimension(m_PartVMList, b3Parts)
|
||||
'Dim nBoxLayerId As Integer = EgtGetFirstNameInGroup(m_PartVMList(0).nPartId, "Box")
|
||||
'EgtGetBBoxGlob(nBoxLayerId, GDB_BB.EXACT, b3Parts)
|
||||
'For PartIndex = 1 To m_PartVMList.Count - 1
|
||||
' Dim b3Part As New BBox3d
|
||||
' nBoxLayerId = EgtGetFirstNameInGroup(m_PartVMList(PartIndex).nPartId, "Box")
|
||||
' EgtGetBBoxGlob(nBoxLayerId, GDB_BB.EXACT, b3Part)
|
||||
' b3Parts.Add(b3Part)
|
||||
'Next
|
||||
Dim b3RawPart As New BBox3d
|
||||
EgtGetRawPartBBox(nRawPartId, b3RawPart)
|
||||
Dim dMinValue As Double = 0
|
||||
@@ -248,19 +178,6 @@ Public Class MyMachGroupVM
|
||||
' riporto il grezzo nell'angolo tavola di origine
|
||||
Dim b3Tab As New BBox3d
|
||||
Configuration.SelectCorner(b3Tab, nRawPartId)
|
||||
'EgtGetTableArea(1, b3Tab)
|
||||
'Dim p3OrigOnTab As Point3d
|
||||
'Select Case CurrentMachine.OrigCorner
|
||||
' Case MCH_CR.BL
|
||||
' p3OrigOnTab = New Point3d(CurrentMachine.OrigOffsX, CurrentMachine.OrigOffsY, 0)
|
||||
' Case MCH_CR.BR
|
||||
' p3OrigOnTab = New Point3d(b3Tab.DimX() - CurrentMachine.OrigOffsX, CurrentMachine.OrigOffsY, 0)
|
||||
' Case MCH_CR.TL
|
||||
' p3OrigOnTab = New Point3d(CurrentMachine.OrigOffsX, b3Tab.DimY() - CurrentMachine.OrigOffsY, 0)
|
||||
' Case MCH_CR.TR
|
||||
' p3OrigOnTab = New Point3d(b3Tab.DimX() - CurrentMachine.OrigOffsX, b3Tab.DimY() - CurrentMachine.OrigOffsY, 0)
|
||||
'End Select
|
||||
'EgtMoveToCornerRawPart(nRawPartId, p3OrigOnTab, CurrentMachine.OrigCorner)
|
||||
' sposto tutti i pezzi di quanto si e' accorciato il grezzo
|
||||
If CurrentMachine.NestingCorner = MCH_CR.TR OrElse CurrentMachine.NestingCorner = MCH_CR.TL Then
|
||||
For Each Part In m_PartVMList
|
||||
|
||||
@@ -1,7 +1,6 @@
|
||||
Imports System.Collections.ObjectModel
|
||||
Imports System.Collections.Specialized
|
||||
Imports System.ComponentModel
|
||||
Imports System.IO
|
||||
Imports EgtBEAMWALL.Core
|
||||
Imports EgtBEAMWALL.DataLayer.DatabaseModels
|
||||
Imports EgtUILib
|
||||
@@ -201,19 +200,47 @@ Public Class PartVM
|
||||
' recupero box del layer box
|
||||
Dim b3Box As New BBox3d
|
||||
EgtGetBBoxGlob(nBoxLayerId, GDB_BB.STANDARD, b3Box)
|
||||
If EgtRotate(nPartId, b3Box.Center, Vector3d.X_AX, 180, GDB_RT.GLOB) Then
|
||||
Dim vtAxes As Vector3d
|
||||
' se travi ruoto attorno all'asse Z
|
||||
If Map.refProjectVM.BTLStructureVM.nPROJTYPE = MachineType.BEAM Then
|
||||
vtAxes = Vector3d.Z_AX
|
||||
' se pareti ruoto attorno all'asse X
|
||||
ElseIf Map.refProjectVM.BTLStructureVM.nPROJTYPE = MachineType.WALL Then
|
||||
vtAxes = Vector3d.X_AX
|
||||
End If
|
||||
If EgtRotate(nPartId, b3Box.Center, vtAxes, 180, GDB_RT.GLOB) Then
|
||||
m_PartM.nFLIP = If(value, 180, 0)
|
||||
EgtSetInfo(nPartId, MGR_PRT_FLIP, If(value, 180, 0))
|
||||
Else
|
||||
NotifyPropertyChanged(NameOf(bFLIP))
|
||||
End If
|
||||
' recupero box del pezzo
|
||||
Dim b3Part As New BBox3d
|
||||
EgtGetBBoxGlob(nPartId, GDB_BB.STANDARD, b3Part)
|
||||
' calcolo distanza tra i box
|
||||
Dim vtDeltaBox As Vector3d = b3Box.Min - b3Part.Min
|
||||
' reinserisco il pezzo nel grezzo
|
||||
EgtAddPartToRawPart(nPartId, New Point3d(dTempPosX - vtDeltaBox.x, dTempPosY - vtDeltaBox.y, 0), ParentMachGroupVM.MyMachGroupM.nRawPartId)
|
||||
If Map.refProjectVM.BTLStructureVM.nPROJTYPE = BWType.WALL Then
|
||||
' recupero box del pezzo
|
||||
Dim b3Part As New BBox3d
|
||||
EgtGetBBoxGlob(nPartId, GDB_BB.STANDARD, b3Part)
|
||||
' calcolo distanza tra i box
|
||||
Dim vtDeltaBox As Vector3d = b3Box.Min - b3Part.Min
|
||||
' reinserisco il pezzo nel grezzo
|
||||
EgtAddPartToRawPart(nPartId, New Point3d(dTempPosX - vtDeltaBox.x, dTempPosY - vtDeltaBox.y, 0), ParentMachGroupVM.MyMachGroupM.nRawPartId)
|
||||
ElseIf bOnlyProd AndAlso Map.refProjectVM.BTLStructureVM.nPROJTYPE = BWType.BEAM Then
|
||||
' elimino vecchio grezzo ed eseguo script creazione nuovo
|
||||
DeleteOldRaw()
|
||||
Dim sLogPath As String = Map.refMainWindowVM.MainWindowM.sTempDir & "\RawPartLog.txt"
|
||||
If Not ExecBeam(sLogPath, Map.refMachinePanelVM.SelectedMachine.Name, CalcIntegration.CmdTypes.RAWPART, False) Then
|
||||
EgtOutLog("Fallita creazione barra nell'ExecBeam in bFlip")
|
||||
' elimino vecchio grezzo ed eseguo script creazione nuovo
|
||||
DeleteOldRaw()
|
||||
If EgtRotate(nPartId, b3Box.Center, vtAxes, 180, GDB_RT.GLOB) Then
|
||||
m_PartM.nFLIP = 180
|
||||
EgtSetInfo(nPartId, MGR_PRT_FLIP, 180)
|
||||
Else
|
||||
NotifyPropertyChanged(NameOf(m_PartM.nFLIP))
|
||||
End If
|
||||
If Not ExecBeam(sLogPath, Map.refMachinePanelVM.SelectedMachine.Name, CalcIntegration.CmdTypes.RAWPART, False) Then
|
||||
EgtOutLog("Fallita esecuzione ExecBeam. ERRORE")
|
||||
End If
|
||||
End If
|
||||
End If
|
||||
' lo riseleziono
|
||||
EgtSelectObj(nPartId)
|
||||
' resetto validazione del pezzo
|
||||
@@ -293,66 +320,122 @@ Public Class PartVM
|
||||
End Sub
|
||||
|
||||
Private Sub Rotate(IsPositive As Boolean)
|
||||
' salvo posizione
|
||||
Dim dTempPosX As Double = m_PartM.dPOSX
|
||||
Dim dTempPosY As Double = m_PartM.dPOSY
|
||||
' tolgo il pezzo dal grezzo
|
||||
EgtRemovePartFromRawPart(nPartId)
|
||||
' recupero layer del box
|
||||
Dim nBoxLayerId As Integer = EgtGetFirstNameInGroup(nPartId, "Box")
|
||||
' recupero box del layer box
|
||||
Dim b3Box As New BBox3d
|
||||
EgtGetBBoxGlob(nBoxLayerId, GDB_BB.STANDARD, b3Box)
|
||||
' se invertito lo reinverto
|
||||
Dim bFliped As Boolean = bFLIP
|
||||
If bFliped Then EgtRotate(nPartId, b3Box.Center, Vector3d.X_AX, 180, GDB_RT.GLOB)
|
||||
Dim dAng As Double = If(IsPositive, 90, -90)
|
||||
' eseguo rotazione
|
||||
Dim bOk As Boolean = EgtRotate(nPartId, b3Box.Center, -Vector3d.Z_AX, dAng, GDB_RT.GLOB)
|
||||
If bOk Then
|
||||
Dim TempRot = m_PartM.dROT
|
||||
TempRot += dAng
|
||||
If TempRot >= 360 Then
|
||||
TempRot -= 360
|
||||
ElseIf TempRot < 0 Then
|
||||
TempRot += 360
|
||||
If bOnlyProd AndAlso Map.refProjectVM.BTLStructureVM.nPROJTYPE = BWType.BEAM Then
|
||||
' elimino vecchio grezzo ed eseguo script creazione nuovo
|
||||
DeleteOldRaw()
|
||||
' recupero layer del box
|
||||
Dim nBoxLayerId As Integer = EgtGetFirstNameInGroup(nPartId, "Box")
|
||||
' recupero box del layer box
|
||||
Dim b3Box As New BBox3d
|
||||
EgtGetBBoxGlob(nBoxLayerId, GDB_BB.STANDARD, b3Box)
|
||||
' se invertito lo reinverto
|
||||
If bFLIP Then EgtRotate(nPartId, b3Box.Center, Vector3d.Z_AX, 180, GDB_RT.GLOB)
|
||||
' eseguo rotazione attorno asse X
|
||||
Dim dRot As Integer = 0
|
||||
If dW <> dH Then
|
||||
dRot = If(IsPositive, 180, -180)
|
||||
ElseIf dW = dH Then
|
||||
dRot = If(IsPositive, 90, -90)
|
||||
End If
|
||||
m_PartM.dROT = TempRot
|
||||
EgtSetInfo(nPartId, MGR_PRT_ROT, m_PartM.dROT)
|
||||
End If
|
||||
' ripristino eventuale inversione
|
||||
If bFliped Then EgtRotate(nPartId, b3Box.Center, Vector3d.X_AX, 180, GDB_RT.GLOB)
|
||||
' recupero box del pezzo
|
||||
Dim b3Part As New BBox3d
|
||||
EgtGetBBoxGlob(nPartId, GDB_BB.STANDARD, b3Part)
|
||||
'aggiorno box del box con rotazione
|
||||
EgtGetBBoxGlob(nBoxLayerId, GDB_BB.STANDARD, b3Box)
|
||||
' calcolo distanza tra i box
|
||||
Dim vtDeltaBox As Vector3d = b3Box.Min - b3Part.Min ' Vector3d.NULL
|
||||
' calcolo posizione rispetto al riferimento
|
||||
Select Case Map.refProjectVM.BTLStructureVM.nPROJTYPE
|
||||
Case BWType.WALL
|
||||
' se parete, valuto angolo di posizionamento
|
||||
Select Case CurrentMachine.NestingCorner
|
||||
Case MCH_CR.TL
|
||||
'vtDeltaBox = New Vector3d(b3Box.Min.x - b3Part.Min.x, b3Box.Max.y - b3Part.Max.y, 0)
|
||||
dTempPosY = dTempPosY - dW + dL
|
||||
Case MCH_CR.BL
|
||||
Dim bOk As Boolean = EgtRotate(nPartId, b3Box.Center, Vector3d.X_AX, dRot, GDB_RT.GLOB)
|
||||
If bOk Then
|
||||
Dim TempRot = m_PartM.dROT
|
||||
TempRot += dRot
|
||||
If TempRot >= 360 Then
|
||||
TempRot -= 360
|
||||
ElseIf TempRot < 0 Then
|
||||
TempRot += 360
|
||||
End If
|
||||
m_PartM.dROT = TempRot
|
||||
EgtSetInfo(nPartId, MGR_PRT_ROT, m_PartM.dROT)
|
||||
End If
|
||||
' ripristino eventuale inversione
|
||||
If bFLIP Then EgtRotate(nPartId, b3Box.Center, Vector3d.Z_AX, 180, GDB_RT.GLOB)
|
||||
Dim sLogPath As String = Map.refMainWindowVM.MainWindowM.sTempDir & "\RawPartLog.txt"
|
||||
If Not ExecBeam(sLogPath, Map.refMachinePanelVM.SelectedMachine.Name, CalcIntegration.CmdTypes.RAWPART, False) Then
|
||||
EgtOutLog("Fallita creazione barra nell'ExecBeam in Rotate")
|
||||
' elimino vecchio grezzo ed eseguo script creazione nuovo
|
||||
DeleteOldRaw()
|
||||
' annullo Flip
|
||||
If bFLIP Then EgtRotate(nPartId, b3Box.Center, Vector3d.Z_AX, 180, GDB_RT.GLOB)
|
||||
' ripristino rotazione
|
||||
Dim TempRot = m_PartM.dROT
|
||||
TempRot -= dRot
|
||||
If TempRot >= 360 Then
|
||||
TempRot -= 360
|
||||
ElseIf TempRot < 0 Then
|
||||
TempRot += 360
|
||||
End If
|
||||
m_PartM.dROT = TempRot
|
||||
EgtSetInfo(nPartId, MGR_PRT_ROT, m_PartM.dROT)
|
||||
EgtRotate(nPartId, b3Box.Center, Vector3d.X_AX, -dRot, GDB_RT.GLOB)
|
||||
If bFLIP Then EgtRotate(nPartId, b3Box.Center, Vector3d.Z_AX, 180, GDB_RT.GLOB)
|
||||
If Not ExecBeam(sLogPath, Map.refMachinePanelVM.SelectedMachine.Name, CalcIntegration.CmdTypes.RAWPART, False) Then
|
||||
EgtOutLog("Fallita esecuzione ExecBeam. ERRORE")
|
||||
End If
|
||||
NotifyPropertyChanged(NameOf(sROT))
|
||||
End If
|
||||
ElseIf Map.refProjectVM.BTLStructureVM.nPROJTYPE = BWType.WALL Then
|
||||
' salvo posizione
|
||||
Dim dTempPosX As Double = m_PartM.dPOSX
|
||||
Dim dTempPosY As Double = m_PartM.dPOSY
|
||||
' tolgo il pezzo dal grezzo
|
||||
EgtRemovePartFromRawPart(nPartId)
|
||||
' recupero layer del box
|
||||
Dim nBoxLayerId As Integer = EgtGetFirstNameInGroup(nPartId, "Box")
|
||||
' recupero box del layer box
|
||||
Dim b3Box As New BBox3d
|
||||
EgtGetBBoxGlob(nBoxLayerId, GDB_BB.STANDARD, b3Box)
|
||||
' se invertito lo reinverto
|
||||
If bFLIP Then EgtRotate(nPartId, b3Box.Center, Vector3d.X_AX, 180, GDB_RT.GLOB)
|
||||
Dim dAng As Double = If(IsPositive, 90, -90)
|
||||
' eseguo rotazione
|
||||
Dim bOk As Boolean = EgtRotate(nPartId, b3Box.Center, -Vector3d.Z_AX, dAng, GDB_RT.GLOB)
|
||||
If bOk Then
|
||||
Dim TempRot = m_PartM.dROT
|
||||
TempRot += dAng
|
||||
If TempRot >= 360 Then
|
||||
TempRot -= 360
|
||||
ElseIf TempRot < 0 Then
|
||||
TempRot += 360
|
||||
End If
|
||||
m_PartM.dROT = TempRot
|
||||
EgtSetInfo(nPartId, MGR_PRT_ROT, m_PartM.dROT)
|
||||
End If
|
||||
' ripristino eventuale inversione
|
||||
If bFLIP Then EgtRotate(nPartId, b3Box.Center, Vector3d.X_AX, 180, GDB_RT.GLOB)
|
||||
' recupero box del pezzo
|
||||
Dim b3Part As New BBox3d
|
||||
EgtGetBBoxGlob(nPartId, GDB_BB.STANDARD, b3Part)
|
||||
'aggiorno box del box con rotazione
|
||||
EgtGetBBoxGlob(nBoxLayerId, GDB_BB.STANDARD, b3Box)
|
||||
' calcolo distanza tra i box
|
||||
Dim vtDeltaBox As Vector3d = b3Box.Min - b3Part.Min ' Vector3d.NULL
|
||||
' calcolo posizione rispetto al riferimento
|
||||
Select Case Map.refProjectVM.BTLStructureVM.nPROJTYPE
|
||||
Case BWType.WALL
|
||||
' se parete, valuto angolo di posizionamento
|
||||
Select Case CurrentMachine.NestingCorner
|
||||
Case MCH_CR.TL
|
||||
'vtDeltaBox = New Vector3d(b3Box.Min.x - b3Part.Min.x, b3Box.Max.y - b3Part.Max.y, 0)
|
||||
dTempPosY = dTempPosY - dW + dL
|
||||
Case MCH_CR.BL
|
||||
'vtDeltaBox = b3Box.Min - b3Part.Min
|
||||
' non cambio posizioni
|
||||
Case MCH_CR.TR
|
||||
'vtDeltaBox = b3Box.Max - b3Part.Max
|
||||
dTempPosX = dTempPosX - dL + dW
|
||||
dTempPosY = dTempPosY - dW + dL
|
||||
Case MCH_CR.BR
|
||||
'vtDeltaBox = New Vector3d(b3Box.Max.x - b3Part.Max.x, b3Box.Min.y - b3Part.Min.y, 0)
|
||||
dTempPosX = dTempPosX - dL + dW
|
||||
End Select
|
||||
Case Else
|
||||
' non cambio nulla
|
||||
End Select
|
||||
' reinserisco il pezzo nel grezzo
|
||||
EgtAddPartToRawPart(nPartId, New Point3d(dTempPosX - vtDeltaBox.x, dTempPosY - vtDeltaBox.y, 0), ParentMachGroupVM.MyMachGroupM.nRawPartId)
|
||||
Case MCH_CR.TR
|
||||
'vtDeltaBox = b3Box.Max - b3Part.Max
|
||||
dTempPosX = dTempPosX - dL + dW
|
||||
dTempPosY = dTempPosY - dW + dL
|
||||
Case MCH_CR.BR
|
||||
'vtDeltaBox = New Vector3d(b3Box.Max.x - b3Part.Max.x, b3Box.Min.y - b3Part.Min.y, 0)
|
||||
dTempPosX = dTempPosX - dL + dW
|
||||
End Select
|
||||
Case Else
|
||||
' non cambio nulla
|
||||
End Select
|
||||
' reinserisco il pezzo nel grezzo
|
||||
EgtAddPartToRawPart(nPartId, New Point3d(dTempPosX - vtDeltaBox.x, dTempPosY - vtDeltaBox.y, 0), ParentMachGroupVM.MyMachGroupM.nRawPartId)
|
||||
End If
|
||||
' lo riseleziono
|
||||
EgtSelectObj(nPartId)
|
||||
' resetto validazione del pezzo
|
||||
@@ -360,6 +443,13 @@ Public Class PartVM
|
||||
NotifyPropertyChanged(NameOf(sROT))
|
||||
End Sub
|
||||
|
||||
Private Sub DeleteOldRaw()
|
||||
Dim nRawId As Integer = EgtGetFirstRawPart()
|
||||
While nRawId <> GDB_ID.NULL
|
||||
EgtRemoveRawPart(nRawId)
|
||||
nRawId = EgtGetFirstRawPart()
|
||||
End While
|
||||
End Sub
|
||||
Friend Sub SelectBTLPart()
|
||||
' eseguo la selezione nella lista pezzi
|
||||
Dim nBTLPartId As Integer = MyMachGroupPanelM.DuploGetOriginal(nPartId)
|
||||
|
||||
@@ -59,6 +59,44 @@ Public Class MacroFeatureWndVM
|
||||
End Set
|
||||
End Property
|
||||
|
||||
Private m_sDescBTLFeature As String
|
||||
Public Property sDescBTLFeature As String
|
||||
Get
|
||||
Return m_sDescBTLFeature
|
||||
End Get
|
||||
Set(value As String)
|
||||
If value <> m_sDescBTLFeature Then
|
||||
m_sDescBTLFeature = value
|
||||
End If
|
||||
End Set
|
||||
End Property
|
||||
|
||||
Private m_sMacroCustom As String
|
||||
Public Property sMacroCustom As String
|
||||
Get
|
||||
Return m_sMacroCustom
|
||||
End Get
|
||||
Set(value As String)
|
||||
m_sMacroCustom = value
|
||||
End Set
|
||||
End Property
|
||||
|
||||
Private m_bIsCustomChecked As Boolean
|
||||
Public Property bIsCustomChecked As Boolean
|
||||
Get
|
||||
Return m_bIsCustomChecked
|
||||
End Get
|
||||
Set(value As Boolean)
|
||||
m_bIsCustomChecked = value
|
||||
End Set
|
||||
End Property
|
||||
|
||||
Public ReadOnly Property bCustomVisibility As Visibility
|
||||
Get
|
||||
Return If(Map.refMainWindowVM.MainWindowM.nUserLevel >= 10, Visibility.Visible, Visibility.Collapsed)
|
||||
End Get
|
||||
End Property
|
||||
|
||||
' Definizione comandi
|
||||
Private m_cmdOk As ICommand
|
||||
|
||||
@@ -70,6 +108,11 @@ Public Class MacroFeatureWndVM
|
||||
For Each FeatureItem In Map.refProjectVM.BTLStructureVM.SelBTLPart.BTLFeatureVMList
|
||||
FeatureList.Add(FeatureItem)
|
||||
Next
|
||||
|
||||
If bOnlyProd Then
|
||||
nSelFeature = Map.refProjectVM.BTLStructureVM.SelBTLPart.m_SelBTLFeatureVM
|
||||
sDescBTLFeature = nSelFeature.sDesc.ToUpper()
|
||||
End If
|
||||
End Sub
|
||||
|
||||
#End Region ' CONSTRUCTOR
|
||||
@@ -107,7 +150,7 @@ Public Class MacroFeatureWndVM
|
||||
|
||||
Friend Sub WriteMacro(sMacroName As String)
|
||||
' inizio routine di scrittura
|
||||
Dim FileContent As String() = File.ReadAllLines(Map.refMainWindowVM.MainWindowM.sMacroDir & "\" & MACROTEMPLATE_FILE)
|
||||
Dim FileContent As String() = File.ReadAllLines(Map.refMainWindowVM.MainWindowM.sConfigDir & "\" & MACROTEMPLATE_FILE)
|
||||
Dim FileName As String = CalcBeamPrivateProfileGRP(nSelFeature.nSelGRP) & "." & nSelFeature.nPRC & FILENAMESEPARATOR & sMacroName
|
||||
For LineIndex As Integer = 0 To FileContent.Count - 1
|
||||
Dim sCurrLine As String = FileContent(LineIndex)
|
||||
@@ -153,7 +196,17 @@ Public Class MacroFeatureWndVM
|
||||
"'" & nSelFeature.sDES & "', " &
|
||||
"MACRO.PROCID") 'nSelFeature.ParentPart.NewProcId() &
|
||||
Next
|
||||
File.WriteAllLines(Map.refMainWindowVM.MainWindowM.sMacroDir & "\" & FileName & ".lua", FileContent, Text.Encoding.UTF8)
|
||||
If bOnlyProd Then
|
||||
If m_bIsCustomChecked AndAlso Map.refMainWindowVM.MainWindowM.nUserLevel >= 10 Then
|
||||
File.WriteAllLines(Map.refMainWindowVM.MainWindowM.sMacroDefaultDir & "\" & FileName & ".lua", FileContent, Text.Encoding.UTF8)
|
||||
ElseIf Not bIsCustomChecked AndAlso Map.refMainWindowVM.MainWindowM.nUserLevel >= 10 Then
|
||||
File.WriteAllLines(Map.refMainWindowVM.MainWindowM.sMacroCustomDir & "\" & FileName & ".lua", FileContent, Text.Encoding.UTF8)
|
||||
Else
|
||||
File.WriteAllLines(Map.refMainWindowVM.MainWindowM.sMacroDefaultDir & "\" & FileName & ".lua", FileContent, Text.Encoding.UTF8)
|
||||
End If
|
||||
Else
|
||||
File.WriteAllLines(Map.refMainWindowVM.MainWindowM.sMacroCustomDir & "\" & FileName & ".lua", FileContent, Text.Encoding.UTF8)
|
||||
End If
|
||||
End Sub
|
||||
|
||||
#End Region ' Ok
|
||||
|
||||
@@ -0,0 +1,59 @@
|
||||
<EgtWPFLib5:EgtCustomWindow x:Class="NewMacroFeatureWnd"
|
||||
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||
xmlns:EgtWPFLib5="clr-namespace:EgtWPFLib5;assembly=EgtWPFLib5"
|
||||
xmlns:EgtBEAMWALL="clr-namespace:EgtBEAMWALL.ViewerOptimizer"
|
||||
Style="{DynamicResource {x:Type EgtWPFLib5:EgtCustomWindow}}"
|
||||
WindowStyle="None" ResizeMode="NoResize"
|
||||
SizeToContent="WidthAndHeight"
|
||||
WindowStartupLocation="CenterOwner"
|
||||
IsClosable="False"
|
||||
IsMinimizable="False"
|
||||
IsResizable="False"
|
||||
Title="NewMacroFeature">
|
||||
<Grid Margin="5">
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="Auto"/>
|
||||
<ColumnDefinition Width="Auto"/>
|
||||
<ColumnDefinition Width="Auto"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="Auto"/>
|
||||
<RowDefinition Height="Auto"/>
|
||||
<RowDefinition Height="Auto"/>
|
||||
</Grid.RowDefinitions>
|
||||
<TextBlock Text="Feature"
|
||||
Margin="5"
|
||||
Style="{StaticResource OptionTextBlock}"/>
|
||||
<TextBlock Text="{Binding sDescBTLFeature}"
|
||||
Grid.Column="1"
|
||||
HorizontalAlignment="Left"
|
||||
Style="{StaticResource OptionTextBlock}"/>
|
||||
<CheckBox Content="Default Macro"
|
||||
IsChecked="{Binding bIsCustomChecked}"
|
||||
Visibility="{Binding bCustomVisibility}"
|
||||
Grid.Column="2"
|
||||
Margin="0,6,5,0"/>
|
||||
<TextBlock Text="Name"
|
||||
Grid.Row="1"
|
||||
Style="{StaticResource OptionTextBlock}"/>
|
||||
<EgtWPFLib5:EgtTextBox Text="{Binding sFeatureName}"
|
||||
Grid.Row="1"
|
||||
Grid.Column="1"
|
||||
Grid.ColumnSpan="2"
|
||||
Margin="5"
|
||||
Width="200"/>
|
||||
<UniformGrid Columns="2"
|
||||
Grid.Row="2"
|
||||
Grid.ColumnSpan="3"
|
||||
Margin="5">
|
||||
<Button Content="Ok"
|
||||
Command="{Binding Ok_Command}"
|
||||
IsDefault="True"
|
||||
Style="{StaticResource EgtWPFLib5_InputButton}"/>
|
||||
<Button Content="Cancel"
|
||||
IsCancel="True"
|
||||
Style="{StaticResource EgtWPFLib5_InputButton}"/>
|
||||
</UniformGrid>
|
||||
</Grid>
|
||||
</EgtWPFLib5:EgtCustomWindow>
|
||||
@@ -0,0 +1,18 @@
|
||||
Public Class NewMacroFeatureWnd
|
||||
|
||||
Private WithEvents m_MacroFeatureWndVM As MacroFeatureWndVM
|
||||
|
||||
Sub New(Owner As Window, MacroFeatureWndVM As MacroFeatureWndVM)
|
||||
MyBase.New(Owner)
|
||||
' This call is required by the designer.
|
||||
InitializeComponent()
|
||||
Me.DataContext = MacroFeatureWndVM
|
||||
' Assegno al riferimento locale al VM il VM preso dal DataContext
|
||||
m_MacroFeatureWndVM = MacroFeatureWndVM
|
||||
End Sub
|
||||
|
||||
Private Sub CloseWindow(bDialogResult As Boolean) Handles m_MacroFeatureWndVM.m_CloseWindow
|
||||
Me.DialogResult = bDialogResult
|
||||
End Sub
|
||||
|
||||
End Class
|
||||
@@ -144,9 +144,15 @@ Public Class MainWindowM
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Friend ReadOnly Property sMacroDir As String
|
||||
Friend ReadOnly Property sMacroDefaultDir As String
|
||||
Get
|
||||
Return m_sDataDir & "\" & MACRO_DIR
|
||||
Return m_sDataDir & "\" & MACRODEFAULT_DIR
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Friend ReadOnly Property sMacroCustomDir As String
|
||||
Get
|
||||
Return m_sDataDir & "\" & MACROCUSTOM_DIR
|
||||
End Get
|
||||
End Property
|
||||
|
||||
|
||||
@@ -46,6 +46,8 @@
|
||||
<EgtBEAMWALL:ViewPanelV DataContext="{StaticResource ViewPanelVM}"/>
|
||||
<EgtBEAMWALL:InstrumentPanelV DataContext="{StaticResource InstrumentPanelVM}"/>
|
||||
<EgtBEAMWALL:CalcPanelV DataContext="{StaticResource CALCPanelVM}"/>
|
||||
<EgtBEAMWALL:SpecialPanelV DataContext="{StaticResource SpecialPanelVM}"
|
||||
Visibility="{Binding DataContext.SpecialPanel_Visibility, RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:ProjectV}}}"/>
|
||||
<EgtBEAMWALL:FreeContourManagerV DataContext="{StaticResource FreeContourManagerVM}"
|
||||
Visibility="{Binding DataContext.FreeContourManager_Visibility, RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:OnlyProdProjectV}}}"/>
|
||||
</WrapPanel>
|
||||
|
||||
@@ -20,7 +20,7 @@ Public Class ProdProjManagerVM
|
||||
|
||||
Public ReadOnly Property PartManager_Visibility As Visibility
|
||||
Get
|
||||
Return If((Map.refMainMenuVM.SelPage = Pages.VIEW OrElse Map.refMainMenuVM.SelPage = Pages.ONLYPRODPAGE) AndAlso Not IsNothing(Map.refProjectVM.BTLStructureVM) AndAlso Map.refProjectVM.BTLStructureVM.SelectionType = BTLStructureVM.SelectionTypes.SELECT_ AndAlso Not Map.refFreeContourManagerVM.bIsActive, Visibility.Visible, Visibility.Collapsed)
|
||||
Return Map.refProjectVM.PartManager_Visibility
|
||||
End Get
|
||||
End Property
|
||||
|
||||
|
||||
@@ -563,15 +563,6 @@ Public Class ProjManagerVM
|
||||
If bShowLoading Then LoadingWndHelper.OpenLoadingWnd(ActiveIds.SAVEPROJ, 1, EgtMsg(63007), "", 100) ' Project saving
|
||||
' se vista tutti i pezzi
|
||||
Configuration.ShowAllPieces(bShowBuilding, bShowSolid, True, False)
|
||||
'If Map.refShowBeamPanelVM.bShowAll Then
|
||||
' ' verifico se assemblato e lo annullo per salvataggio
|
||||
' bShowBuilding = Map.refShowBeamPanelVM.ShowBuilding_IsChecked
|
||||
' If bShowBuilding Then Map.refProjectVM.BTLStructureVM.ShowBuilding(False, False)
|
||||
' ' se vista singolo pezzo
|
||||
'Else
|
||||
' bShowSolid = Map.refShowBeamPanelVM.ShowSolid_IsChecked
|
||||
' If bShowSolid Then Map.refProjectVM.BTLStructureVM.ShowSolid(GDB_ID.NULL, False, False)
|
||||
'End If
|
||||
' imposto ProjId di caricamento
|
||||
m_nLoadingProjId = CurrProj.nProjId
|
||||
Map.refSceneHostVM.SaveProject()
|
||||
@@ -861,18 +852,6 @@ Public Class ProjManagerVM
|
||||
Dim bShowSolid As Boolean = False
|
||||
Dim nSelPartId As Integer = GDB_ID.NULL
|
||||
Configuration.ShowAllPieces(bShowBuilding, bShowSolid, nSelPartId, True)
|
||||
'If Map.refShowBeamPanelVM.bShowAll Then
|
||||
' ' verifico se assemblato e lo annullo per salvataggio
|
||||
' bShowBuilding = Map.refShowBeamPanelVM.ShowBuilding_IsChecked
|
||||
' If bShowBuilding Then Map.refProjectVM.BTLStructureVM.ShowBuilding(False, False)
|
||||
' ' se vista singolo pezzo
|
||||
'Else
|
||||
' bShowSolid = Map.refShowBeamPanelVM.ShowSolid_IsChecked
|
||||
' If bShowSolid Then Map.refProjectVM.BTLStructureVM.ShowSolid(GDB_ID.NULL, False, False)
|
||||
' ' se pezzo selezionato lo segno e metto vista tutti
|
||||
' nSelPartId = Map.refProjectVM.BTLStructureVM.SelBTLPart.nPartId
|
||||
' Map.refProjectVM.BTLStructureVM.ShowAll(False)
|
||||
'End If
|
||||
|
||||
Dim sDir As String = String.Empty
|
||||
GetMainPrivateProfileString(S_GENERAL, K_LASTUPDATEDIR, "", sDir)
|
||||
@@ -1182,26 +1161,6 @@ Public Class ProjManagerVM
|
||||
|
||||
' elimino i pezzi da sovrascrivere nel progetto corrente
|
||||
Configuration.DeletePieces(UpdateBTLWndVM.BTLPartList)
|
||||
'For Each BTLPartToOverwriteWith In UpdateBTLWndVM.BTLPartList
|
||||
' If BTLPartToOverwriteWith.bInsert Then
|
||||
' Dim BTLPartToUpdate As BTLPartVM = Map.refProjectVM.BTLStructureVM.BTLPartVMList.FirstOrDefault(Function(x) x.nPDN = BTLPartToOverwriteWith.nPDN)
|
||||
' ' se BTLPartToUpdate è Nothing significa che il pezzo è nuovo e quindi basta accodarlo senza eliminare nulla
|
||||
' If Not IsNothing(BTLPartToUpdate) Then
|
||||
' Dim nPartToDeleteId As Integer = BTLPartToUpdate.nPartId
|
||||
' Dim nCurrPartId = EgtGetCurrPart()
|
||||
' EgtErase(nPartToDeleteId)
|
||||
' nCurrPartId = EgtGetCurrPart()
|
||||
' ' verifico se rimuovere sezione dalla lista
|
||||
' If Not Map.refProjectVM.BTLStructureVM.BTLPartVMList.Any(Function(x) x IsNot BTLPartToUpdate AndAlso x.Section = BTLPartToUpdate.Section) Then
|
||||
' Map.refProjectVM.BTLStructureVM.SectionList.Remove(BTLPartToUpdate.Section)
|
||||
' End If
|
||||
' ' rimuovo dalla lista pezzi
|
||||
' Dim Index As Integer = Map.refProjectVM.BTLStructureVM.BTLPartVMList.IndexOf(BTLPartToUpdate)
|
||||
' Map.refProjectVM.BTLStructureVM.SetSelBTLPart(Nothing)
|
||||
' Map.refProjectVM.BTLStructureVM.BTLPartVMList.RemoveAt(Index)
|
||||
' End If
|
||||
' End If
|
||||
'Next
|
||||
|
||||
' salvo gli id degli AsseBase presenti nel progetto corrente
|
||||
Dim AsseBaseIdList As New List(Of Integer)
|
||||
@@ -1384,11 +1343,6 @@ Public Class ProjManagerVM
|
||||
Dim bShowBuilding As Boolean = False
|
||||
If Map.refMainMenuVM.SelPage = Pages.VIEW Then
|
||||
Configuration.ShowAllPieces(bShowBuilding)
|
||||
'If Map.refShowBeamPanelVM.bShowAll Then
|
||||
' ' verifico se assemblato e lo annullo per salvataggio
|
||||
' bShowBuilding = Map.refShowBeamPanelVM.ShowBuilding_IsChecked
|
||||
' If bShowBuilding Then Map.refProjectVM.BTLStructureVM.ShowBuilding(False, False)
|
||||
'End If
|
||||
End If
|
||||
|
||||
' per ogni BTLInfo nel progetto riporto il relativo nome del BTL
|
||||
|
||||
@@ -1,9 +1,7 @@
|
||||
Imports System.Windows.Threading
|
||||
Imports EgtBEAMWALL.Core
|
||||
Imports EgtWPFLib5
|
||||
Imports EgtUILib
|
||||
Imports System.Collections.ObjectModel
|
||||
Imports EgtBEAMWALL.DataLayer.Controllers
|
||||
|
||||
Public Class ProjectVM
|
||||
Inherits VMBase
|
||||
@@ -101,7 +99,7 @@ Public Class ProjectVM
|
||||
Private m_PartManager_Visibility As Boolean = True
|
||||
Public ReadOnly Property PartManager_Visibility As Visibility
|
||||
Get
|
||||
Return If(Map.refMainMenuVM.SelPage = Pages.VIEW AndAlso Not IsNothing(Map.refProjectVM.BTLStructureVM) AndAlso Map.refProjectVM.BTLStructureVM.SelectionType = BTLStructureVM.SelectionTypes.SELECT_ AndAlso Not Map.refFreeContourManagerVM.bIsActive, Visibility.Visible, Visibility.Collapsed)
|
||||
Return If(Map.refMainMenuVM.SelPage = Pages.VIEW OrElse Map.refMainMenuVM.SelPage = Pages.ONLYPRODPAGE AndAlso Not IsNothing(Map.refProjectVM.BTLStructureVM) AndAlso Map.refProjectVM.BTLStructureVM.SelectionType = BTLStructureVM.SelectionTypes.SELECT_ AndAlso Not Map.refFreeContourManagerVM.bIsActive, Visibility.Visible, Visibility.Collapsed)
|
||||
End Get
|
||||
End Property
|
||||
|
||||
|
||||
Binary file not shown.
|
After Width: | Height: | Size: 644 B |
Binary file not shown.
|
After Width: | Height: | Size: 682 B |
@@ -179,7 +179,6 @@ Public Class ShowBeamPanelVM
|
||||
End If
|
||||
' nascondo barra del pezzo
|
||||
Map.refProjectVM.BTLStructureVM.SetSelectionType(BTLStructureVM.SelectionTypes.NULL)
|
||||
'Map.refProjectVM.NotifyPropertyChanged(NameOf(Map.refProjectVM.PartManager_Visibility))
|
||||
Map.refProjectVM.NotifyPropertyChanged(NameOf(Map.refProdProjManagerVM.PartManager_Visibility))
|
||||
' mostro in parte bassa dati BTL
|
||||
If Not IsNothing(Map.refBottomPanelVM) Then Map.refBottomPanelVM.SetSelPartFeatureTab(BottomPanelVM.PartFeatureTab.STRUCTURE_)
|
||||
|
||||
@@ -166,7 +166,7 @@
|
||||
|
||||
</TabControl>
|
||||
|
||||
<Grid Grid.Row="1">
|
||||
<Grid Grid.Row="1" Margin="5">
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="1*"/>
|
||||
<ColumnDefinition Width="1*"/>
|
||||
|
||||
@@ -138,7 +138,7 @@
|
||||
|
||||
</EgtBEAMWALLCORE:EgtDataGrid>
|
||||
|
||||
<Grid Grid.Row="1">
|
||||
<Grid Grid.Row="1" Margin="5">
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="1*"/>
|
||||
<ColumnDefinition Width="Auto"/>
|
||||
|
||||
@@ -359,7 +359,7 @@ Public Class StatisticsVM
|
||||
sFileName = ProjectManagerVM.CurrProj.sProjDirPath & "\" & "Statistics.pdf"
|
||||
ElseIf Pages.MACHINING OrElse (Pages.ONLYPRODPAGE AndAlso Map.refInstrumentPanelVM.bVisOtt_Selected) Then
|
||||
sFileName = ProjectManagerVM.CurrProd.sProdDirPath & "\" & ProjectManagerVM.CurrProd.sProdId & " - " & "Statistics.pdf"
|
||||
PrevSelect()
|
||||
If Not bOnlyProd Then PrevSelect()
|
||||
End If
|
||||
|
||||
renderer.PdfDocument.Save(sFileName)
|
||||
|
||||
@@ -9,10 +9,10 @@
|
||||
</Grid.RowDefinitions>
|
||||
|
||||
<EgtBEAMWALL:FreeContourInputV DataContext="{StaticResource FreeContourInputVM}"
|
||||
Visibility="{Binding DataContext.FreeContourManager_Visibility, RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:ProjWndV}}}"/>
|
||||
Visibility="{Binding Tag.FreeContourManager_Visibility, RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:ProjWndV}}}"/>
|
||||
<EgtBEAMWALL:PartManagerV DataContext="{StaticResource PartManagerVM}"
|
||||
Tag="{Binding Tag.BTLStructureVM.SelBTLPart, RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:ProjWndV}}}"
|
||||
Visibility="{Binding DataContext.PartManager_Visibility, RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:ProjWndV}}}"/>
|
||||
Visibility="{Binding Tag.PartManager_Visibility, RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:ProjWndV}}}"/>
|
||||
|
||||
<Grid Grid.Row="1">
|
||||
|
||||
|
||||
@@ -1,7 +1,6 @@
|
||||
Imports System.Collections.ObjectModel
|
||||
Imports EgtBEAMWALL.Core
|
||||
Imports EgtUILib
|
||||
Imports EgtWPFLib5
|
||||
|
||||
Module Configuration
|
||||
|
||||
|
||||
@@ -357,6 +357,14 @@
|
||||
<Setter Property="HorizontalAlignment" Value="Center"/>
|
||||
<Setter Property="VerticalAlignment" Value="Center"/>
|
||||
<Setter Property="Margin" Value="10,0,10,0"/>
|
||||
|
||||
</Style>
|
||||
|
||||
<Style x:Key="ListTextBlock" TargetType="{x:Type TextBlock}" BasedOn="{StaticResource {x:Type TextBlock}}">
|
||||
<Setter Property="HorizontalAlignment" Value="Center"/>
|
||||
<Setter Property="VerticalAlignment" Value="Center"/>
|
||||
<Setter Property="Margin" Value="10,0,10,0"/>
|
||||
<Setter Property="FontSize" Value="20"/>
|
||||
</Style>
|
||||
|
||||
<Style x:Key="MachParamTextBlock" TargetType="{x:Type TextBlock}" BasedOn="{StaticResource {x:Type TextBlock}}">
|
||||
|
||||
Reference in New Issue
Block a user