Compare commits
53 Commits
| Author | SHA1 | Date | |
|---|---|---|---|
| a6cd836e0d | |||
| fbb0e948b3 | |||
| 9bb1b49883 | |||
| 5d4bd85f85 | |||
| 8169b5298a | |||
| cfda9196be | |||
| d5a2a25ade | |||
| f6641c858e | |||
| 6fe32752e1 | |||
| 4fead794f3 | |||
| 827c955d1d | |||
| 8b96a07386 | |||
| 3d957138ee | |||
| c38f9305c6 | |||
| f34b58a636 | |||
| 138499fdf4 | |||
| edfe32daed | |||
| c76b8550f8 | |||
| 804dee9236 | |||
| 1acf67aaa0 | |||
| b86ea9b7f8 | |||
| 641b1eb6d3 | |||
| 20357a3ebc | |||
| a6ef84ab32 | |||
| a8eb4910bc | |||
| 6e4da2e5ff | |||
| 192839961b | |||
| dd2cbb696f | |||
| dd0071244e | |||
| c73bd50beb | |||
| f2c5325e67 | |||
| 9a01374845 | |||
| 4f29587989 | |||
| aac9b09da7 | |||
| 9caa404aa5 | |||
| d06929d1dd | |||
| 970aabee17 | |||
| b181396c87 | |||
| 5132c3af81 | |||
| b87faa551f | |||
| 76169b0516 | |||
| 922d648ecc | |||
| f229e08ecf | |||
| 5bc70f9ff6 | |||
| 97957e0365 | |||
| df46f3b5a5 | |||
| 408b59ee9c | |||
| 5017e96cde | |||
| f359184505 | |||
| 2c3e3f74f9 | |||
| 91d943d0a7 | |||
| e1954b3731 | |||
| fe0db46b69 |
@@ -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
|
||||
@@ -548,7 +549,7 @@ Public Class BTLFeatureM
|
||||
EgtSetInfo( nFeatureId, BTL_FTR_PRIORITY, nPriority)
|
||||
SetFeatureId(nFeatureId)
|
||||
' imposto modificato per copie
|
||||
EgtDuploSetModified(ParentPart.nPartId)
|
||||
MyMachGroupPanelM.SetDuploModified(ParentPart.nPartId)
|
||||
bOk = True
|
||||
Else
|
||||
' Impossibile creare una feature con questi valori - ERRORE
|
||||
|
||||
@@ -1242,7 +1242,7 @@ Public Class BTLPartM
|
||||
m_nROTATED = If(dNewRotation >= 0, dNewRotation, 360 + dNewRotation)
|
||||
EgtSetInfo(nPartId, BTL_PRT_ROTATED, m_nROTATED)
|
||||
' imposto modificato per copie
|
||||
EgtDuploSetModified(nPartId)
|
||||
MyMachGroupPanelM.SetDuploModified(nPartId)
|
||||
End If
|
||||
' se era invertito
|
||||
If bInverted Then
|
||||
@@ -1275,7 +1275,7 @@ Public Class BTLPartM
|
||||
m_nINVERTED = If(m_nINVERTED = 0, 180, 0)
|
||||
EgtSetInfo(nPartId, BTL_PRT_INVERTED, m_nINVERTED)
|
||||
' imposto modificato per copie
|
||||
EgtDuploSetModified(nPartId)
|
||||
MyMachGroupPanelM.SetDuploModified(nPartId)
|
||||
End If
|
||||
End Sub
|
||||
|
||||
|
||||
@@ -264,6 +264,9 @@ Public Class BTLFeatureVM
|
||||
End If
|
||||
End Sub
|
||||
|
||||
Public Overridable Sub RefreshFeature()
|
||||
End Sub
|
||||
|
||||
#End Region ' METHODS
|
||||
|
||||
End Class
|
||||
|
||||
@@ -0,0 +1,155 @@
|
||||
<EgtWPFLib5:EgtCustomWindow x:Class="BeamMachiningsWindowV"
|
||||
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.Core"
|
||||
Title="{Binding Title}"
|
||||
Style="{DynamicResource {x:Type EgtWPFLib5:EgtCustomWindow}}"
|
||||
WindowStyle="None" ResizeMode="NoResize"
|
||||
Width="500" Height="450"
|
||||
IsResizable="False"
|
||||
IsMinimizable="False" WindowStartupLocation="CenterOwner" ShowInTaskbar="False"
|
||||
CloseCommand="{Binding Close_Command,Mode=OneWay,UpdateSourceTrigger=PropertyChanged}">
|
||||
|
||||
<Grid Margin="5,5,5,0">
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="Auto"/>
|
||||
<RowDefinition Height="1*"/>
|
||||
<RowDefinition Height="Auto"/>
|
||||
</Grid.RowDefinitions>
|
||||
|
||||
<TabControl ItemsSource="{Binding MachiningList}"
|
||||
SelectedItem="{Binding SelMachining}"
|
||||
IsSynchronizedWithCurrentItem="True"
|
||||
Margin="5,0,5,0"
|
||||
Style="{StaticResource TabControl_OnlyHeaders}"/>
|
||||
|
||||
<EgtBEAMWALL:EgtDataGrid Grid.Row="1"
|
||||
ItemsSource="{Binding TableRowList}"
|
||||
SelectedIndex="{Binding SelRowIndex}"
|
||||
AutoGenerateColumns="False"
|
||||
CanUserResizeRows="False"
|
||||
SelectionMode="Single"
|
||||
ScrollViewer.CanContentScroll="True"
|
||||
ScrollViewer.VerticalScrollBarVisibility="Auto"
|
||||
ScrollViewer.HorizontalScrollBarVisibility="Auto"
|
||||
Margin="0,0,0,5"
|
||||
BindingColumns="{Binding BeamMachiningsColumns}">
|
||||
|
||||
<DataGrid.RowStyle>
|
||||
<Style TargetType="DataGridRow">
|
||||
<Setter Property="Height" Value="25"/>
|
||||
<Setter Property="VerticalContentAlignment" Value="Center"/>
|
||||
</Style>
|
||||
</DataGrid.RowStyle>
|
||||
|
||||
<DataGrid.Resources>
|
||||
<Style x:Key="DataGridCheckBoxColumn_Style"
|
||||
TargetType="{x:Type DataGridCell}">
|
||||
<Setter Property="Template">
|
||||
<Setter.Value>
|
||||
<ControlTemplate TargetType="{x:Type DataGridCell}">
|
||||
<Grid Background="{TemplateBinding Background}">
|
||||
<ContentPresenter VerticalAlignment="Center" />
|
||||
</Grid>
|
||||
</ControlTemplate>
|
||||
</Setter.Value>
|
||||
</Setter>
|
||||
</Style>
|
||||
|
||||
<!--Colonna On-->
|
||||
<DataGridCheckBoxColumn x:Key="colON" Binding="{Binding OnPar, UpdateSourceTrigger=PropertyChanged}"
|
||||
CellStyle="{StaticResource DataGridCheckBoxColumn_Style}">
|
||||
<DataGridCheckBoxColumn.Header>
|
||||
<TextBlock Text="{Binding Path=DataContext.OnHdr,RelativeSource={RelativeSource AncestorType={x:Type EgtWPFLib5:EgtCustomWindow}}}"/>
|
||||
</DataGridCheckBoxColumn.Header>
|
||||
</DataGridCheckBoxColumn>
|
||||
|
||||
<!--Colonna Name-->
|
||||
<DataGridTemplateColumn x:Key="colNAME">
|
||||
<DataGridTemplateColumn.Header>
|
||||
<TextBlock Text="{Binding Path=DataContext.NameHdr,RelativeSource={RelativeSource AncestorType={x:Type EgtWPFLib5:EgtCustomWindow}}}"/>
|
||||
</DataGridTemplateColumn.Header>
|
||||
<DataGridTemplateColumn.CellEditingTemplate>
|
||||
<DataTemplate>
|
||||
<ComboBox IsEditable="False"
|
||||
SelectedItem="{Binding Name,Mode=TwoWay,UpdateSourceTrigger=PropertyChanged}"
|
||||
ItemsSource="{Binding Path=NamesList, Mode=OneWay, UpdateSourceTrigger=PropertyChanged}"/>
|
||||
</DataTemplate>
|
||||
</DataGridTemplateColumn.CellEditingTemplate>
|
||||
<DataGridTemplateColumn.CellTemplate>
|
||||
<DataTemplate>
|
||||
<TextBlock Text="{Binding Path=Name,Mode=TwoWay,UpdateSourceTrigger=PropertyChanged}"
|
||||
VerticalAlignment="Center"
|
||||
Margin="5,0,0,0"/>
|
||||
</DataTemplate>
|
||||
</DataGridTemplateColumn.CellTemplate>
|
||||
</DataGridTemplateColumn>
|
||||
|
||||
<!--Colonna Style-->
|
||||
<DataGridTemplateColumn x:Key="colTYPE">
|
||||
<DataGridTemplateColumn.Header>
|
||||
<TextBlock Text="{Binding Path=DataContext.TypeHdr,RelativeSource={RelativeSource AncestorType={x:Type EgtWPFLib5:EgtCustomWindow}}}"/>
|
||||
</DataGridTemplateColumn.Header>
|
||||
<DataGridTemplateColumn.CellEditingTemplate>
|
||||
<DataTemplate>
|
||||
<ComboBox IsEditable="False"
|
||||
SelectedItem="{Binding Type,Mode=TwoWay,UpdateSourceTrigger=PropertyChanged}"
|
||||
ItemsSource="{Binding Path=TypeList, Mode=OneWay, UpdateSourceTrigger=PropertyChanged}"/>
|
||||
</DataTemplate>
|
||||
</DataGridTemplateColumn.CellEditingTemplate>
|
||||
<DataGridTemplateColumn.CellTemplate>
|
||||
<DataTemplate>
|
||||
<TextBlock Text="{Binding Path=Type,Mode=TwoWay,UpdateSourceTrigger=PropertyChanged}"
|
||||
VerticalAlignment="Center"
|
||||
Margin="5,0,0,0"/>
|
||||
</DataTemplate>
|
||||
</DataGridTemplateColumn.CellTemplate>
|
||||
</DataGridTemplateColumn>
|
||||
|
||||
</DataGrid.Resources>
|
||||
|
||||
</EgtBEAMWALL:EgtDataGrid>
|
||||
|
||||
<Grid Grid.Row="2"
|
||||
Margin="0,0,0,5"
|
||||
HorizontalAlignment="Center">
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="Auto"/>
|
||||
<ColumnDefinition Width="Auto"/>
|
||||
<ColumnDefinition Width="Auto"/>
|
||||
<ColumnDefinition Width="Auto"/>
|
||||
<ColumnDefinition Width="Auto"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
|
||||
<Button Content="/\"
|
||||
Command="{Binding MoveRowUp_Command}"
|
||||
Grid.Column="0"
|
||||
Margin="0,0,2.5,0"
|
||||
Style="{StaticResource EgtWPFLib5_InputButton}"/>
|
||||
<Button Content="\/"
|
||||
Command="{Binding MoveRowDown_Command}"
|
||||
Grid.Column="1"
|
||||
Margin="2.5,0,2.5,0"
|
||||
Style="{StaticResource EgtWPFLib5_InputButton}"/>
|
||||
<Button Content="{Binding AddRowMsg}"
|
||||
Command="{Binding AddRow_Command}"
|
||||
Grid.Column="2"
|
||||
Margin="2.5,0,2.5,0"
|
||||
Style="{StaticResource EgtWPFLib5_InputButton}"/>
|
||||
<Button Content="{Binding DeleteRowMsg}"
|
||||
Command="{Binding DeleteRow_Command}"
|
||||
Grid.Column="3"
|
||||
Margin="2.5,0,2.5,0"
|
||||
Style="{StaticResource EgtWPFLib5_InputButton}"/>
|
||||
<Button Content="{Binding SaveMsg}"
|
||||
Command="{Binding Save_Command}"
|
||||
Grid.Column="4"
|
||||
Margin="2.5,0,0,0"
|
||||
Style="{StaticResource EgtWPFLib5_InputButton}"/>
|
||||
|
||||
</Grid>
|
||||
|
||||
</Grid>
|
||||
|
||||
</EgtWPFLib5:EgtCustomWindow>
|
||||
@@ -0,0 +1,20 @@
|
||||
Imports System.Windows
|
||||
|
||||
Public Class BeamMachiningsWindowV
|
||||
|
||||
Private WithEvents m_BeamMachiningsWindowVM As MyBeamMachiningsWindowVM
|
||||
|
||||
Sub New(Owner As Window, BeamMachiningsWindowVM As MyBeamMachiningsWindowVM)
|
||||
MyBase.New(Owner)
|
||||
' This call is required by the designer.
|
||||
InitializeComponent()
|
||||
Me.DataContext = BeamMachiningsWindowVM
|
||||
' Assegno al riferimento locale al VM il VM preso dal DataContext
|
||||
m_BeamMachiningsWindowVM = BeamMachiningsWindowVM
|
||||
End Sub
|
||||
|
||||
Private Sub CloseWindow(bDialogResult As Boolean) Handles m_BeamMachiningsWindowVM.m_CloseWindow
|
||||
Me.DialogResult = bDialogResult
|
||||
End Sub
|
||||
|
||||
End Class
|
||||
@@ -0,0 +1,36 @@
|
||||
Imports System.Collections.ObjectModel
|
||||
Imports EgtBEAMWALL.Core
|
||||
Imports EgtWPFLib5
|
||||
|
||||
Public Class MyBeamMachiningsWindowVM
|
||||
Inherits BeamMachiningsWindowVM
|
||||
|
||||
#Region "FIELDS & PROPERTIES"
|
||||
|
||||
Private m_BeamMachiningsColumns As New ObservableCollection(Of EgtDataGridColumn)
|
||||
Public Property BeamMachiningsColumns As ObservableCollection(Of EgtDataGridColumn)
|
||||
Get
|
||||
Return m_BeamMachiningsColumns
|
||||
End Get
|
||||
Set(value As ObservableCollection(Of EgtDataGridColumn))
|
||||
m_BeamMachiningsColumns = value
|
||||
End Set
|
||||
End Property
|
||||
|
||||
#End Region ' FIELDS & PROPERTIES
|
||||
|
||||
#Region "CONSTRUCTOR"
|
||||
|
||||
Sub New(sTitle As String, sBaseDir As String, sMachTypePath As String, sTabTemplPath As String, Optional bIsBeam As Boolean = True)
|
||||
MyBase.New(sTitle, sBaseDir, sMachTypePath, sTabTemplPath, bIsBeam)
|
||||
' carico le colonne della datagrid
|
||||
GetPrivateProfileColumns(S_BEAMMACHININGS, BeamMachiningsColumns)
|
||||
' aggiorno la visibilità delle colonne
|
||||
For Each col In BeamMachiningsColumns
|
||||
col.ColumnVisibility = If(col.Visible, Windows.Visibility.Visible, Windows.Visibility.Collapsed)
|
||||
Next
|
||||
End Sub
|
||||
|
||||
#End Region ' CONSTRUCTOR
|
||||
|
||||
End Class
|
||||
@@ -0,0 +1,80 @@
|
||||
<DockPanel x:Class="ConfigurationPageV"
|
||||
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||
xmlns:EgtBEAMWALL="clr-namespace:EgtBEAMWALL.Core">
|
||||
|
||||
<Grid>
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="1*"/>
|
||||
<ColumnDefinition Width="10*"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="1*"/>
|
||||
<RowDefinition Height="6*"/>
|
||||
</Grid.RowDefinitions>
|
||||
<TabControl Grid.Row="0" Grid.Column="0" Grid.RowSpan="2" Grid.ColumnSpan="2"
|
||||
SelectedIndex="{Binding SelConfigSubPage}">
|
||||
<TabItem>
|
||||
<TabItem.Header>
|
||||
<StackPanel Orientation="Horizontal">
|
||||
<TextBlock Text="{Binding General_Msg}"
|
||||
Style="{StaticResource OptionTextBlock}"/>
|
||||
<Button Command="{Binding SaveCommand}"
|
||||
ToolTip="{Binding SaveToolTip}"
|
||||
Visibility="{Binding General_Visibility}"
|
||||
Style="{StaticResource OptionPanel_Button}">
|
||||
<Image Source="/Resources/ProjectManager/Save.png" Stretch="Uniform"/>
|
||||
</Button>
|
||||
</StackPanel>
|
||||
</TabItem.Header>
|
||||
<TabItem.Content>
|
||||
<EgtBEAMWALL:General_ConfigurationPageV/>
|
||||
</TabItem.Content>
|
||||
</TabItem>
|
||||
<TabItem>
|
||||
<TabItem.Header>
|
||||
<StackPanel Orientation="Horizontal">
|
||||
<TextBlock Text="{Binding ParameterQ_Msg}"
|
||||
Style="{StaticResource OptionTextBlock}"/>
|
||||
<Button Command="{Binding SaveCommand}"
|
||||
ToolTip="{Binding SaveToolTip}"
|
||||
Visibility="{Binding ParameterQ_Visibility}"
|
||||
Style="{StaticResource OptionPanel_Button}">
|
||||
<Image Source="/Resources/ProjectManager/Save.png" Stretch="Uniform"/>
|
||||
</Button>
|
||||
</StackPanel>
|
||||
</TabItem.Header>
|
||||
<TabItem.Content>
|
||||
<EgtBEAMWALL:QParameter_ConfigurationPageV/>
|
||||
</TabItem.Content>
|
||||
</TabItem>
|
||||
<TabItem >
|
||||
<TabItem.Header>
|
||||
<StackPanel Orientation="Horizontal">
|
||||
<TextBlock Text="{Binding Machine_Msg}"
|
||||
Style="{StaticResource OptionTextBlock}"/>
|
||||
<Button Command="{Binding SaveCommand}"
|
||||
ToolTip="{Binding SaveToolTip}"
|
||||
Visibility="{Binding Machine_Visibility}"
|
||||
Style="{StaticResource OptionPanel_Button}">
|
||||
<Image Source="/Resources/ProjectManager/Save.png" Stretch="Uniform"/>
|
||||
</Button>
|
||||
</StackPanel>
|
||||
</TabItem.Header>
|
||||
|
||||
<TabItem.Content>
|
||||
<EgtBEAMWALL:Machine_ConfigurationPageV/>
|
||||
</TabItem.Content>
|
||||
</TabItem>
|
||||
</TabControl>
|
||||
|
||||
<!--<Button Command="{Binding SaveCommand}"
|
||||
ToolTip="{Binding SaveToolTip}"
|
||||
Grid.Row="1"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource OptionPanel_Button}">
|
||||
<Image Source="/Resources/ProjectManager/Save.png" Stretch="Uniform"/>
|
||||
</Button>-->
|
||||
|
||||
</Grid>
|
||||
</DockPanel>
|
||||
@@ -0,0 +1,3 @@
|
||||
Public Class ConfigurationPageV
|
||||
|
||||
End Class
|
||||
@@ -0,0 +1,118 @@
|
||||
<Grid x:Class="General_ConfigurationPageV"
|
||||
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">
|
||||
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="1*"/>
|
||||
<ColumnDefinition Width="1*"/>
|
||||
<ColumnDefinition Width="1*"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="1*"/>
|
||||
<RowDefinition Height="1*"/>
|
||||
</Grid.RowDefinitions>
|
||||
<StackPanel Grid.Row="0" Grid.Column="0" Margin="5,5,5,0">
|
||||
<GroupBox Header="{Binding CurrentLanguage_Msg}"
|
||||
Margin="0,0,0,5">
|
||||
<UniformGrid Rows="2" Margin="3,3,3,3">
|
||||
<ComboBox ItemsSource="{Binding LanguageList, Mode=OneWay}" Height="25"
|
||||
DisplayMemberPath="Name" SelectedItem="{Binding SelectedLanguage}"
|
||||
Margin="0,0,0,5"/>
|
||||
<TextBlock Text="{Binding LanguageAdvert_Msg}" TextWrapping="Wrap"
|
||||
TextAlignment="Center"/>
|
||||
</UniformGrid>
|
||||
</GroupBox>
|
||||
<UniformGrid Columns="2"
|
||||
Margin="0,0,0,5">
|
||||
<TextBlock Text="{Binding MMUnits_Msg}" VerticalAlignment="Center"/>
|
||||
<ComboBox ItemsSource="{Binding UnitMeasureList, Mode=OneWay}"
|
||||
SelectedIndex="{Binding SelMeasureUnit}" Height="25"
|
||||
Margin="0,5,0,0"/>
|
||||
</UniformGrid>
|
||||
<GroupBox Header="{Binding Nesting_Msg}"
|
||||
Margin="0,0,0,5">
|
||||
<StackPanel>
|
||||
<UniformGrid Columns="2"
|
||||
Margin="0,0,0,5">
|
||||
<TextBlock Text="{Binding SectionTime_Msg}"
|
||||
Grid.Row="0" Grid.Column="0"/>
|
||||
<EgtWPFLib5:EgtTextBox Text="{Binding SectionTime, UpdateSourceTrigger=Explicit}"
|
||||
Grid.Row="0" Grid.Column="1"/>
|
||||
</UniformGrid>
|
||||
<UniformGrid Columns="2"
|
||||
Margin="0,0,0,5">
|
||||
<TextBlock Text="{Binding PartTime_Msg}"
|
||||
Grid.Row="1" Grid.Column="0"/>
|
||||
<EgtWPFLib5:EgtTextBox Text="{Binding PartTime, UpdateSourceTrigger=Explicit}"
|
||||
Grid.Row="1" Grid.Column="1"/>
|
||||
</UniformGrid>
|
||||
</StackPanel>
|
||||
</GroupBox>
|
||||
<UniformGrid Columns="2"
|
||||
Margin="0,0,0,5">
|
||||
<TextBlock Text="{Binding PrintLabel_Msg}" VerticalAlignment="Center"/>
|
||||
<CheckBox IsChecked="{Binding bPrintLabel_IsChecked}"
|
||||
Margin="0,5,0,0"/>
|
||||
</UniformGrid>
|
||||
<GroupBox Header="Backup And Restore">
|
||||
<Grid>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="Auto"/>
|
||||
<RowDefinition Height="Auto"/>
|
||||
<RowDefinition Height="Auto"/>
|
||||
<RowDefinition Height="Auto"/>
|
||||
</Grid.RowDefinitions>
|
||||
<Grid Grid.Row="0"
|
||||
Margin="0,2,0,5">
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="Auto"/>
|
||||
<ColumnDefinition Width="1*"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
<CheckBox x:Name="ExternalBackup_CheckBox"
|
||||
IsChecked="{Binding bExternalBackupActive}"
|
||||
VerticalAlignment="Center"/>
|
||||
<TextBlock Grid.Column="1"
|
||||
Text="External file path:"
|
||||
VerticalAlignment="Center"/>
|
||||
</Grid>
|
||||
<Grid Grid.Row="1"
|
||||
Margin="0,2,0,5">
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="1*"/>
|
||||
<ColumnDefinition Width="Auto"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
<TextBox Text="{Binding ExternalBackupFolderPath}"
|
||||
IsEnabled="{Binding IsChecked, ElementName=ExternalBackup_CheckBox}"
|
||||
Margin="0,0,2.5,0"/>
|
||||
<Button Grid.Column="1"
|
||||
Content="..."
|
||||
Width="18"
|
||||
Command="{Binding ChooseExternalBackupFolderPath_Command}"
|
||||
IsEnabled="{Binding IsChecked, ElementName=ExternalBackup_CheckBox}"
|
||||
Margin="2.5,0,0,0"/>
|
||||
</Grid>
|
||||
<Grid Grid.Row="2">
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="1*"/>
|
||||
<ColumnDefinition Width="Auto"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
<TextBlock Text="Reminder Frequency"/>
|
||||
<ComboBox Grid.Column="1"
|
||||
ItemsSource="{Binding ReminderList}"
|
||||
SelectedItem="{Binding SelReminder}"/>
|
||||
</Grid>
|
||||
<StackPanel Grid.Row="3"
|
||||
Orientation="Horizontal">
|
||||
<Button Content="Backup"
|
||||
Command="{Binding Backup_Command}"
|
||||
Style="{StaticResource ToolBar_TextButton}"/>
|
||||
<Button Content="Restore"
|
||||
Command="{Binding Restore_Command}"
|
||||
Style="{StaticResource ToolBar_TextButton}"/>
|
||||
</StackPanel>
|
||||
</Grid>
|
||||
</GroupBox>
|
||||
</StackPanel>
|
||||
|
||||
</Grid>
|
||||
@@ -0,0 +1,3 @@
|
||||
Public Class General_ConfigurationPageV
|
||||
|
||||
End Class
|
||||
@@ -0,0 +1,70 @@
|
||||
<Grid x:Class="Machine_ConfigurationPageV"
|
||||
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||
xmlns:EgtBEAMWALL="clr-namespace:EgtBEAMWALL.Core"
|
||||
xmlns:EgtWPFLib5="clr-namespace:EgtWPFLib5;assembly=EgtWPFLib5">
|
||||
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="Auto"/>
|
||||
<ColumnDefinition Width="1*"/>
|
||||
<ColumnDefinition Width="1*"/>
|
||||
<ColumnDefinition Width="1*"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="Auto"/>
|
||||
<RowDefinition Height="10*"/>
|
||||
</Grid.RowDefinitions>
|
||||
|
||||
<StackPanel Grid.Row="0" Grid.Column="0" Orientation="Horizontal">
|
||||
<GroupBox Style="{StaticResource GroupBoxStyle_NoHeader}" Padding="5,10,5,5">
|
||||
<EgtBEAMWALL:MachinePanelV DataContext="{Binding MachinePanelVM}" VerticalAlignment="Center"/>
|
||||
</GroupBox>
|
||||
</StackPanel>
|
||||
|
||||
<StackPanel Grid.Row="1" Grid.Column="0" Orientation="Horizontal">
|
||||
<ItemsControl ItemsSource="{Binding ConfigMachTableList}">
|
||||
<ItemsControl.ItemsPanel>
|
||||
<ItemsPanelTemplate>
|
||||
<StackPanel x:Name="GroupStackPanel" Orientation="Horizontal"/>
|
||||
</ItemsPanelTemplate>
|
||||
</ItemsControl.ItemsPanel>
|
||||
<ItemsControl.ItemTemplate>
|
||||
<DataTemplate>
|
||||
<GroupBox Header="{Binding sName}" Width="Auto" VerticalAlignment="Top" Height="Auto">
|
||||
<ItemsControl Name="MachParamsItemsControl" ItemsSource="{Binding MachParamList}" Margin="0,5,0,0">
|
||||
<ItemsControl.ItemsPanel>
|
||||
<ItemsPanelTemplate>
|
||||
<WrapPanel Orientation="Vertical"/>
|
||||
</ItemsPanelTemplate>
|
||||
</ItemsControl.ItemsPanel>
|
||||
<ItemsControl.ItemTemplate>
|
||||
<DataTemplate>
|
||||
<Grid Margin="0,0,5,5">
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="*" />
|
||||
<ColumnDefinition Width="*" />
|
||||
<ColumnDefinition Width="*" />
|
||||
</Grid.ColumnDefinitions>
|
||||
<TextBlock Text="{Binding sName}"
|
||||
TextWrapping="WrapWithOverflow"
|
||||
Width="100"
|
||||
Style="{StaticResource MachParamTextBlock}"/>
|
||||
<EgtWPFLib5:EgtTextBox Text="{Binding sValue, UpdateSourceTrigger=Explicit}"
|
||||
Grid.Column="1"
|
||||
Width="70"/>
|
||||
<TextBlock Text="{Binding sDescription}"
|
||||
TextWrapping="WrapWithOverflow"
|
||||
Width="200"
|
||||
Style="{StaticResource MachParamTextBlock}"
|
||||
Grid.Column="2"/>
|
||||
</Grid>
|
||||
</DataTemplate>
|
||||
</ItemsControl.ItemTemplate>
|
||||
</ItemsControl>
|
||||
</GroupBox>
|
||||
</DataTemplate>
|
||||
</ItemsControl.ItemTemplate>
|
||||
</ItemsControl>
|
||||
</StackPanel>
|
||||
|
||||
</Grid>
|
||||
@@ -0,0 +1,3 @@
|
||||
Public Class Machine_ConfigurationPageV
|
||||
|
||||
End Class
|
||||
@@ -0,0 +1,80 @@
|
||||
<Grid x:Class="QParameter_ConfigurationPageV"
|
||||
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||
xmlns:EgtBEAMWALL="clr-namespace:EgtBEAMWALL.Core">
|
||||
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="2*"/>
|
||||
<ColumnDefinition Width="1*"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="1*"/>
|
||||
</Grid.RowDefinitions>
|
||||
<EgtBEAMWALL:QParamListV DataContext="{Binding}"
|
||||
ItemsSource="{Binding QBTLParamVMList}"
|
||||
SelectedItem="{Binding SelQParam}"
|
||||
Grid.Column="0"
|
||||
Margin="5">
|
||||
<DataGrid.GroupStyle>
|
||||
<GroupStyle>
|
||||
<GroupStyle.Panel>
|
||||
<ItemsPanelTemplate>
|
||||
<DataGridRowsPresenter/>
|
||||
</ItemsPanelTemplate>
|
||||
</GroupStyle.Panel>
|
||||
<GroupStyle.HeaderTemplate>
|
||||
<DataTemplate>
|
||||
<StackPanel>
|
||||
<TextBlock Text="{Binding Path=Name}"/>
|
||||
</StackPanel>
|
||||
</DataTemplate>
|
||||
</GroupStyle.HeaderTemplate>
|
||||
<GroupStyle.ContainerStyle>
|
||||
<Style TargetType="{x:Type GroupItem}">
|
||||
<Setter Property="Template">
|
||||
<Setter.Value>
|
||||
<ControlTemplate TargetType="{x:Type GroupItem}">
|
||||
<Expander IsExpanded="True">
|
||||
<Expander.Background>
|
||||
<SolidColorBrush Color="#FFBABABA"></SolidColorBrush>
|
||||
</Expander.Background>
|
||||
<Expander.Header>
|
||||
<StackPanel Orientation="Horizontal">
|
||||
<TextBlock Text="{Binding Path=Name}" />
|
||||
</StackPanel>
|
||||
</Expander.Header>
|
||||
<ItemsPresenter />
|
||||
</Expander>
|
||||
</ControlTemplate>
|
||||
</Setter.Value>
|
||||
</Setter>
|
||||
</Style>
|
||||
</GroupStyle.ContainerStyle>
|
||||
</GroupStyle>
|
||||
<GroupStyle>
|
||||
<GroupStyle.ContainerStyle>
|
||||
<Style TargetType="{x:Type GroupItem}">
|
||||
<Setter Property="Template">
|
||||
<Setter.Value>
|
||||
<ControlTemplate TargetType="{x:Type GroupItem}">
|
||||
<Expander IsExpanded="True">
|
||||
<Expander.Background>
|
||||
<SolidColorBrush Color="LightGray"></SolidColorBrush>
|
||||
</Expander.Background>
|
||||
<Expander.Header>
|
||||
<StackPanel Orientation="Horizontal">
|
||||
<TextBlock Text="{Binding Path=Name}" />
|
||||
</StackPanel>
|
||||
</Expander.Header>
|
||||
<ItemsPresenter />
|
||||
</Expander>
|
||||
</ControlTemplate>
|
||||
</Setter.Value>
|
||||
</Setter>
|
||||
</Style>
|
||||
</GroupStyle.ContainerStyle>
|
||||
</GroupStyle>
|
||||
</DataGrid.GroupStyle>
|
||||
</EgtBEAMWALL:QParamListV>
|
||||
|
||||
</Grid>
|
||||
@@ -0,0 +1,3 @@
|
||||
Public Class QParameter_ConfigurationPageV
|
||||
|
||||
End Class
|
||||
@@ -9,5 +9,6 @@
|
||||
Public Const TOPPANEL_OPTIMIZER As String = "TopPanel_Optimizer"
|
||||
Public Const LEFTPANEL_SUPERVISOR As String = "LeftPanel_Supervisor"
|
||||
Public Const PROJECT_SUPERVISOR As String = "Project_Supervisor"
|
||||
Public Const PROJECT_ONLYPROD As String = "Project_OnlyProd"
|
||||
|
||||
End Class
|
||||
|
||||
@@ -33,6 +33,7 @@ Public Module ConstGen
|
||||
CONFIG = 3
|
||||
INPUTS = 4
|
||||
OUTPUTS = 5
|
||||
ONLYPRODPAGE = 6
|
||||
End Enum
|
||||
|
||||
' Abilitazioni licenza
|
||||
@@ -45,6 +46,13 @@ Public Module ConstGen
|
||||
ANY_DB = 32
|
||||
End Enum
|
||||
|
||||
' Selezione Tab Prod / Proj
|
||||
Public Enum ProdProj As Integer
|
||||
NULL = 0
|
||||
PROJ = 1
|
||||
PROD = 2
|
||||
End Enum
|
||||
|
||||
' File di log generale
|
||||
Public Const VWOPTGENLOG_FILE_NAME As String = "EgtBEAMWALL.ViewerOptimizerLog#.txt"
|
||||
Public Const SUPGENLOG_FILE_NAME As String = "EgtBEAMWALL.SupervisorLog#.txt"
|
||||
@@ -60,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
|
||||
|
||||
@@ -168,6 +168,9 @@ Public Module ConstIni
|
||||
Public Const K_EXTERNALFILEPATH As String = "ExternalFilePath"
|
||||
Public Const K_REMINDERFREQUENCY As String = "ReminderFrequency"
|
||||
|
||||
Public Const K_ONLYPROD As String = "OnlyProd"
|
||||
Public Const K_MODIFYSETUP As String = "ModifySetup"
|
||||
|
||||
Public Const S_SPECIAL As String = "Special"
|
||||
Public Const K_SPECIALENABLE As String = "SpecialEnable"
|
||||
|
||||
|
||||
@@ -77,8 +77,21 @@
|
||||
<Import Include="System.Xml.Linq" />
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Compile Include="BeamMachiningsWindow\BeamMachiningsWindowV.xaml.vb">
|
||||
<DependentUpon>BeamMachiningsWindowV.xaml</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="BeamMachiningsWindow\MyBeamMachiningsWindowVM.vb" />
|
||||
<Compile Include="BTLViewModel\BTLFeatureVM.vb" />
|
||||
<Compile Include="CALCPanel\CalcEditEndEventArgs.vb" />
|
||||
<Compile Include="ConfigurationPage\General_ConfigurationPageV.xaml.vb">
|
||||
<DependentUpon>General_ConfigurationPageV.xaml</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="ConfigurationPage\Machine_ConfigurationPageV.xaml.vb">
|
||||
<DependentUpon>Machine_ConfigurationPageV.xaml</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="ConfigurationPage\QParameter_ConfigurationPageV.xaml.vb">
|
||||
<DependentUpon>QParameter_ConfigurationPageV.xaml</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Constants\ConstColumns.vb" />
|
||||
<Compile Include="Constants\ConstDataGridColumnsIni.vb" />
|
||||
<Compile Include="Constants\ConstDims.vb" />
|
||||
@@ -97,6 +110,9 @@
|
||||
<Compile Include="CALCPanel\CalcIntegration.vb" />
|
||||
<Compile Include="DataAccess\PartAddedEventArgs.vb" />
|
||||
<Compile Include="DataAccess\BTLParamAddedEventArgs.vb" />
|
||||
<Compile Include="ItemParamList\QParamListV.xaml.vb">
|
||||
<DependentUpon>QParamListV.xaml</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Lib\MachGroupAddedEventArgs.vb" />
|
||||
<Compile Include="Lib\MachGroupVM.vb" />
|
||||
<Compile Include="Lib\NewMachGroupPanelVM.vb" />
|
||||
@@ -112,10 +128,14 @@
|
||||
<DependentUpon>LoadingWndV.xaml</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="LoadingWnd\LoadingWndVM.vb" />
|
||||
<Compile Include="MachinePanel\MachinePanelV.xaml.vb">
|
||||
<DependentUpon>MachinePanelV.xaml</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="NewOpenProjectFileDialog\NewOpenProjectFileDialogV.xaml.vb">
|
||||
<DependentUpon>NewOpenProjectFileDialogV.xaml</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="NewOpenProjectFileDialog\NewOpenProjectFileDialogVM.vb" />
|
||||
<Compile Include="Utility\Configuration.vb" />
|
||||
<Compile Include="Utility\DimensionsIniFile.vb" />
|
||||
<Compile Include="Utility\Enum.vb" />
|
||||
<Compile Include="MachGroupPanel\MyMachGroupPanelVM.vb" />
|
||||
@@ -186,14 +206,38 @@
|
||||
</None>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Page Include="BeamMachiningsWindow\BeamMachiningsWindowV.xaml">
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
<SubType>Designer</SubType>
|
||||
</Page>
|
||||
<Page Include="ConfigurationPage\General_ConfigurationPageV.xaml">
|
||||
<SubType>Designer</SubType>
|
||||
<Generator>XamlIntelliSenseFileGenerator</Generator>
|
||||
</Page>
|
||||
<Page Include="ConfigurationPage\Machine_ConfigurationPageV.xaml">
|
||||
<SubType>Designer</SubType>
|
||||
<Generator>XamlIntelliSenseFileGenerator</Generator>
|
||||
</Page>
|
||||
<Page Include="ConfigurationPage\QParameter_ConfigurationPageV.xaml">
|
||||
<SubType>Designer</SubType>
|
||||
<Generator>XamlIntelliSenseFileGenerator</Generator>
|
||||
</Page>
|
||||
<Page Include="EgtDataGrid\EgtDataGrid.xaml">
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
<SubType>Designer</SubType>
|
||||
</Page>
|
||||
<Page Include="ItemParamList\QParamListV.xaml">
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
<SubType>Designer</SubType>
|
||||
</Page>
|
||||
<Page Include="LoadingWnd\LoadingWndV.xaml">
|
||||
<SubType>Designer</SubType>
|
||||
<Generator>XamlIntelliSenseFileGenerator</Generator>
|
||||
</Page>
|
||||
<Page Include="MachinePanel\MachinePanelV.xaml">
|
||||
<SubType>Designer</SubType>
|
||||
<Generator>XamlIntelliSenseFileGenerator</Generator>
|
||||
</Page>
|
||||
<Page Include="NewOpenProjectFileDialog\NewOpenProjectFileDialogV.xaml">
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
<SubType>Designer</SubType>
|
||||
@@ -207,6 +251,10 @@
|
||||
<SubType>Designer</SubType>
|
||||
</Page>
|
||||
</ItemGroup>
|
||||
<ItemGroup>
|
||||
<Content Include="Resources\ProjectManager\Save.png" />
|
||||
</ItemGroup>
|
||||
<ItemGroup />
|
||||
<Import Project="$(MSBuildToolsPath)\Microsoft.VisualBasic.targets" />
|
||||
<PropertyGroup>
|
||||
<PostBuildEvent>copy $(TargetPath) c:\EgtProg\EgtBEAMWALL\EgtBEAMWALL.Core.dll</PostBuildEvent>
|
||||
|
||||
@@ -0,0 +1,78 @@
|
||||
<DataGrid x:Class="QParamListV"
|
||||
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||
AutoGenerateColumns="False"
|
||||
CanUserSortColumns="False"
|
||||
CanUserResizeColumns="False"
|
||||
CanUserResizeRows="False"
|
||||
CanUserReorderColumns="False"
|
||||
SelectionMode="Single"
|
||||
ScrollViewer.CanContentScroll="True"
|
||||
ScrollViewer.VerticalScrollBarVisibility="Auto"
|
||||
ScrollViewer.HorizontalScrollBarVisibility="Hidden"
|
||||
Margin="0,0,0,5">
|
||||
|
||||
<DataGrid.Columns>
|
||||
|
||||
<!--BWType-->
|
||||
<DataGridTextColumn Binding="{Binding sBWType}"
|
||||
Width="40"
|
||||
IsReadOnly="True">
|
||||
<DataGridTextColumn.HeaderTemplate>
|
||||
<DataTemplate>
|
||||
<TextBlock Text="{Binding DataContext.Type_Msg,RelativeSource={RelativeSource AncestorType={x:Type DataGrid}}}"/>
|
||||
</DataTemplate>
|
||||
</DataGridTextColumn.HeaderTemplate>
|
||||
</DataGridTextColumn>
|
||||
<!--Nome-->
|
||||
<DataGridTextColumn Binding="{Binding sName}"
|
||||
Width="50"
|
||||
IsReadOnly="True">
|
||||
<DataGridTextColumn.HeaderTemplate>
|
||||
<DataTemplate>
|
||||
<TextBlock Text="{Binding DataContext.NAM_Msg,RelativeSource={RelativeSource AncestorType={x:Type DataGrid}}}"/>
|
||||
</DataTemplate>
|
||||
</DataGridTextColumn.HeaderTemplate>
|
||||
</DataGridTextColumn>
|
||||
<!--Descrizione-->
|
||||
<DataGridTextColumn Binding="{Binding sDescription}"
|
||||
Width="1*"
|
||||
IsReadOnly="True">
|
||||
<DataGridTextColumn.HeaderTemplate>
|
||||
<DataTemplate>
|
||||
<TextBlock Text="{Binding DataContext.Description_Msg,RelativeSource={RelativeSource AncestorType={x:Type DataGrid}}}"/>
|
||||
</DataTemplate>
|
||||
</DataGridTextColumn.HeaderTemplate>
|
||||
</DataGridTextColumn>
|
||||
<!--Default-->
|
||||
<DataGridTextColumn Binding="{Binding sDefault}"
|
||||
Width="65">
|
||||
<DataGridTextColumn.HeaderTemplate>
|
||||
<DataTemplate>
|
||||
<TextBlock Text="{Binding DataContext.Default_Msg,RelativeSource={RelativeSource AncestorType={x:Type DataGrid}}}"/>
|
||||
</DataTemplate>
|
||||
</DataGridTextColumn.HeaderTemplate>
|
||||
</DataGridTextColumn>
|
||||
<!--Minimo-->
|
||||
<DataGridTextColumn Binding="{Binding sMin}"
|
||||
Width="65"
|
||||
IsReadOnly="True">
|
||||
<DataGridTextColumn.HeaderTemplate>
|
||||
<DataTemplate>
|
||||
<TextBlock Text="{Binding DataContext.Min_Msg,RelativeSource={RelativeSource AncestorType={x:Type DataGrid}}}"/>
|
||||
</DataTemplate>
|
||||
</DataGridTextColumn.HeaderTemplate>
|
||||
</DataGridTextColumn>
|
||||
<!--Massimo-->
|
||||
<DataGridTextColumn Binding="{Binding sMax}"
|
||||
Width="65"
|
||||
IsReadOnly="True">
|
||||
<DataGridTextColumn.HeaderTemplate>
|
||||
<DataTemplate>
|
||||
<TextBlock Text="{Binding DataContext.Max_Msg,RelativeSource={RelativeSource AncestorType={x:Type DataGrid}}}"/>
|
||||
</DataTemplate>
|
||||
</DataGridTextColumn.HeaderTemplate>
|
||||
</DataGridTextColumn>
|
||||
</DataGrid.Columns>
|
||||
|
||||
</DataGrid>
|
||||
@@ -0,0 +1,3 @@
|
||||
Public Class QParamListV
|
||||
|
||||
End Class
|
||||
@@ -22,7 +22,7 @@ Public Class MyMachGroupPanelM
|
||||
' Assegno macchina di default
|
||||
NewMyMachGroupPanelM.m_DefaultMachine = ""
|
||||
' aggiorno copie
|
||||
UpdateDuplo()
|
||||
UpdateAllDuplo()
|
||||
' recupero i MachGroup
|
||||
NewMyMachGroupPanelM.m_MachGroupMList = LoadMyMachGroups(MachineList)
|
||||
Return NewMyMachGroupPanelM
|
||||
@@ -167,7 +167,7 @@ Public Class MyMachGroupPanelM
|
||||
End Function
|
||||
|
||||
' funzione che fa l'update di tutte le copie dei pezzi modificati
|
||||
Public Shared Sub UpdateDuplo()
|
||||
Public Shared Sub UpdateAllDuplo()
|
||||
' verifico tipo di progetto
|
||||
Dim nBtlInfoId As Integer = EgtGetFirstNameInGroup(GDB_ID.ROOT, BTLINFO)
|
||||
Dim nBWType As Integer = 0
|
||||
@@ -178,148 +178,7 @@ Public Class MyMachGroupPanelM
|
||||
While nPartId <> GDB_ID.NULL
|
||||
Dim bIsModified As Boolean = False
|
||||
If EgtDuploGetModified(nPartId, bIsModified) AndAlso bIsModified Then
|
||||
' verifico se c'é PRID sugli outline
|
||||
Dim nPRId As Integer = 1
|
||||
Dim nOutlineLayer As Integer = EgtGetFirstNameInGroup(nPartId, OUTLINE)
|
||||
If nOutlineLayer <> GDB_ID.NULL Then
|
||||
Dim nOutlineId As Integer = EgtGetFirstInGroup(nOutlineLayer)
|
||||
While nOutlineId <> GDB_ID.NULL
|
||||
' verifico che sia feature
|
||||
If EgtExistsInfo(nOutlineId, MGR_FTR_PRC) Then
|
||||
If EgtExistsInfo(nOutlineId, MGR_FTR_PRID) Then
|
||||
nOutlineId = EgtGetNext(nOutlineId)
|
||||
Continue While
|
||||
Else
|
||||
EgtSetInfo(nOutlineId, MGR_FTR_PRID, nPRId)
|
||||
nPRId += 1
|
||||
End If
|
||||
End If
|
||||
nOutlineId = EgtGetNext(nOutlineId)
|
||||
End While
|
||||
End If
|
||||
bTotIsModified = True
|
||||
Dim DuploList As New List(Of Integer)
|
||||
EgtDuploList(nPartId, DuploList)
|
||||
Dim DuploArray() As Integer
|
||||
Dim RotArray(DuploList.Count) As Integer
|
||||
Dim FlipArray(DuploList.Count) As Integer
|
||||
Dim QArray(DuploList.Count) As Dictionary(Of String, Dictionary(Of String, String))
|
||||
DuploArray = DuploList.ToArray()
|
||||
' recupero ROT (gradi) e FLIP (0/1) per non perderli
|
||||
For Duploindex = 0 To DuploArray.Length - 1
|
||||
RotArray(Duploindex) = 0
|
||||
EgtGetInfo(DuploArray(Duploindex), MGR_PRT_ROT, RotArray(Duploindex))
|
||||
FlipArray(Duploindex) = 0
|
||||
EgtGetInfo(DuploArray(Duploindex), MGR_PRT_FLIP, FlipArray(Duploindex))
|
||||
If FlipArray(Duploindex) <> 0 Then FlipArray(Duploindex) = 180
|
||||
If nBWType = BWType.WALL Then
|
||||
' salvo parametri Q
|
||||
QArray(Duploindex) = New Dictionary(Of String, Dictionary(Of String, String))
|
||||
' ciclo sugli outline
|
||||
nOutlineLayer = EgtGetFirstNameInGroup(DuploArray(Duploindex), OUTLINE)
|
||||
If nOutlineLayer <> GDB_ID.NULL Then
|
||||
Dim nGlobPRId As Integer = 1
|
||||
Dim nOutlineId As Integer = EgtGetFirstInGroup(nOutlineLayer)
|
||||
While nOutlineId <> GDB_ID.NULL
|
||||
' verifico che sia feature
|
||||
Dim nPRC As Integer
|
||||
If EgtGetInfo(nOutlineId, MGR_FTR_PRC, nPRC) Then
|
||||
nPRId = 0
|
||||
If Not EgtGetInfo(nOutlineId, MGR_FTR_PRID, nPRId) Then
|
||||
EgtSetInfo(nOutlineId, MGR_FTR_PRID, nGlobPRId)
|
||||
nPRId = nGlobPRId
|
||||
nGlobPRId += 1
|
||||
End If
|
||||
Dim sKey As String = nPRId & "." & nPRC
|
||||
QArray(Duploindex).Add(sKey, New Dictionary(Of String, String))
|
||||
For QIndex = 1 To 10
|
||||
Dim QKey As String = "Q" & QIndex.ToString("D2")
|
||||
Dim QValue As Integer = 0
|
||||
If EgtGetInfo(nOutlineId, QKey, QValue) Then
|
||||
QArray(Duploindex)(sKey).Add(QKey, QValue)
|
||||
End If
|
||||
Next
|
||||
End If
|
||||
nOutlineId = EgtGetNext(nOutlineId)
|
||||
End While
|
||||
End If
|
||||
' ciclo sulle feature
|
||||
Dim nFeatureLayer As Integer = EgtGetFirstNameInGroup(DuploArray(Duploindex), PROCESSINGS)
|
||||
If nFeatureLayer <> GDB_ID.NULL Then
|
||||
Dim nFeatureId As Integer = EgtGetFirstInGroup(nFeatureLayer)
|
||||
While nFeatureId <> GDB_ID.NULL
|
||||
' verifico che sia feature
|
||||
Dim nPRC As Integer
|
||||
If EgtGetInfo(nFeatureId, MGR_FTR_PRC, nPRC) Then
|
||||
nPRId = 0
|
||||
EgtGetInfo(nFeatureId, MGR_FTR_PRID, nPRId)
|
||||
Dim sKey As String = nPRId & "." & nPRC
|
||||
QArray(Duploindex).Add(sKey, New Dictionary(Of String, String))
|
||||
For QIndex = 1 To 10
|
||||
Dim QKey As String = "Q" & QIndex.ToString("D2")
|
||||
Dim QValue As Integer = 0
|
||||
If EgtGetInfo(nFeatureId, QKey, QValue) Then
|
||||
QArray(Duploindex)(sKey).Add(QKey, QValue)
|
||||
End If
|
||||
Next
|
||||
End If
|
||||
nFeatureId = EgtGetNext(nFeatureId)
|
||||
End While
|
||||
End If
|
||||
End If
|
||||
Next
|
||||
' aggiornamento dei Duplo
|
||||
EgtDuploUpdate(nPartId)
|
||||
' ripristino i valori di ROT e FLIP
|
||||
For Duploindex = 0 To DuploArray.Length - 1
|
||||
' ripristino info rot e flip
|
||||
EgtSetInfo(DuploArray(Duploindex), MGR_PRT_ROT, RotArray(Duploindex))
|
||||
EgtSetInfo(DuploArray(Duploindex), MGR_PRT_FLIP, FlipArray(Duploindex))
|
||||
If nBWType = BWType.WALL Then
|
||||
' ciclo sugli outline
|
||||
nOutlineLayer = EgtGetFirstNameInGroup(DuploArray(Duploindex), OUTLINE)
|
||||
If nOutlineLayer <> GDB_ID.NULL Then
|
||||
Dim nOutlineId As Integer = EgtGetFirstInGroup(nOutlineLayer)
|
||||
While nOutlineId <> GDB_ID.NULL
|
||||
' verifico che sia feature
|
||||
Dim nPRC As Integer
|
||||
If EgtGetInfo(nOutlineId, MGR_FTR_PRC, nPRC) Then
|
||||
nPRId = 0
|
||||
EgtGetInfo(nOutlineId, MGR_FTR_PRID, nPRId)
|
||||
Dim sKey As String = nPRId & "." & nPRC
|
||||
' ripristino parametri Q
|
||||
If QArray(Duploindex).ContainsKey(sKey) Then
|
||||
For Each QPar In QArray(Duploindex)(sKey)
|
||||
EgtSetInfo(nOutlineId, QPar.Key, QPar.Value)
|
||||
Next
|
||||
End If
|
||||
End If
|
||||
nOutlineId = EgtGetNext(nOutlineId)
|
||||
End While
|
||||
End If
|
||||
' ciclo sulle feature
|
||||
Dim nFeatureLayer As Integer = EgtGetFirstNameInGroup(DuploArray(Duploindex), PROCESSINGS)
|
||||
If nFeatureLayer <> GDB_ID.NULL Then
|
||||
Dim nFeatureId As Integer = EgtGetFirstInGroup(nFeatureLayer)
|
||||
While nFeatureId <> GDB_ID.NULL
|
||||
' verifico che sia feature
|
||||
Dim nPRC As Integer
|
||||
If EgtGetInfo(nFeatureId, MGR_FTR_PRC, nPRC) Then
|
||||
nPRId = 0
|
||||
EgtGetInfo(nFeatureId, MGR_FTR_PRID, nPRId)
|
||||
Dim sKey As String = nPRId & "." & nPRC
|
||||
' ripristino parametri Q
|
||||
If QArray(Duploindex).ContainsKey(sKey) Then
|
||||
For Each QPar In QArray(Duploindex)(sKey)
|
||||
EgtSetInfo(nFeatureId, QPar.Key, QPar.Value)
|
||||
Next
|
||||
End If
|
||||
End If
|
||||
nFeatureId = EgtGetNext(nFeatureId)
|
||||
End While
|
||||
End If
|
||||
End If
|
||||
Next
|
||||
UpdateDuplo(nPartId)
|
||||
End If
|
||||
nPartId = EgtGetNextPart(nPartId)
|
||||
End While
|
||||
@@ -330,6 +189,180 @@ Public Class MyMachGroupPanelM
|
||||
End If
|
||||
End Sub
|
||||
|
||||
Public Shared Sub UpdateDuplo(nPartId As Integer)
|
||||
' verifico tipo di progetto
|
||||
Dim nBtlInfoId As Integer = EgtGetFirstNameInGroup(GDB_ID.ROOT, BTLINFO)
|
||||
Dim nBWType As Integer = 0
|
||||
EgtGetInfo(nBtlInfoId, BTL_GEN_PROJTYPE, nBWType)
|
||||
' ciclo sui pezzi
|
||||
Dim bTotIsModified As Boolean = False
|
||||
Dim bIsModified As Boolean = False
|
||||
' verifico se c'é PRID sugli outline
|
||||
Dim nPRId As Integer = 1
|
||||
Dim nOutlineLayer As Integer = EgtGetFirstNameInGroup(nPartId, OUTLINE)
|
||||
If nOutlineLayer <> GDB_ID.NULL Then
|
||||
Dim nOutlineId As Integer = EgtGetFirstInGroup(nOutlineLayer)
|
||||
While nOutlineId <> GDB_ID.NULL
|
||||
' verifico che sia feature
|
||||
If EgtExistsInfo(nOutlineId, MGR_FTR_PRC) Then
|
||||
If EgtExistsInfo(nOutlineId, MGR_FTR_PRID) Then
|
||||
nOutlineId = EgtGetNext(nOutlineId)
|
||||
Continue While
|
||||
Else
|
||||
EgtSetInfo(nOutlineId, MGR_FTR_PRID, nPRId)
|
||||
nPRId += 1
|
||||
End If
|
||||
End If
|
||||
nOutlineId = EgtGetNext(nOutlineId)
|
||||
End While
|
||||
End If
|
||||
bTotIsModified = True
|
||||
Dim DuploList As New List(Of Integer)
|
||||
EgtDuploList(nPartId, DuploList)
|
||||
Dim DuploArray() As Integer
|
||||
Dim RotArray(DuploList.Count) As Integer
|
||||
Dim FlipArray(DuploList.Count) As Integer
|
||||
Dim QArray(DuploList.Count) As Dictionary(Of String, Dictionary(Of String, String))
|
||||
DuploArray = DuploList.ToArray()
|
||||
' recupero ROT (gradi) e FLIP (0/1) per non perderli
|
||||
For Duploindex = 0 To DuploArray.Length - 1
|
||||
RotArray(Duploindex) = 0
|
||||
EgtGetInfo(DuploArray(Duploindex), MGR_PRT_ROT, RotArray(Duploindex))
|
||||
FlipArray(Duploindex) = 0
|
||||
EgtGetInfo(DuploArray(Duploindex), MGR_PRT_FLIP, FlipArray(Duploindex))
|
||||
If FlipArray(Duploindex) <> 0 Then FlipArray(Duploindex) = 180
|
||||
If nBWType = BWType.WALL Then
|
||||
' salvo parametri Q
|
||||
QArray(Duploindex) = New Dictionary(Of String, Dictionary(Of String, String))
|
||||
' ciclo sugli outline
|
||||
nOutlineLayer = EgtGetFirstNameInGroup(DuploArray(Duploindex), OUTLINE)
|
||||
If nOutlineLayer <> GDB_ID.NULL Then
|
||||
Dim nGlobPRId As Integer = 1
|
||||
Dim nOutlineId As Integer = EgtGetFirstInGroup(nOutlineLayer)
|
||||
While nOutlineId <> GDB_ID.NULL
|
||||
' verifico che sia feature
|
||||
Dim nPRC As Integer
|
||||
If EgtGetInfo(nOutlineId, MGR_FTR_PRC, nPRC) Then
|
||||
nPRId = 0
|
||||
If Not EgtGetInfo(nOutlineId, MGR_FTR_PRID, nPRId) Then
|
||||
EgtSetInfo(nOutlineId, MGR_FTR_PRID, nGlobPRId)
|
||||
nPRId = nGlobPRId
|
||||
nGlobPRId += 1
|
||||
End If
|
||||
Dim sKey As String = nPRId & "." & nPRC
|
||||
QArray(Duploindex).Add(sKey, New Dictionary(Of String, String))
|
||||
For QIndex = 1 To 10
|
||||
Dim QKey As String = "Q" & QIndex.ToString("D2")
|
||||
Dim QValue As Integer = 0
|
||||
If EgtGetInfo(nOutlineId, QKey, QValue) Then
|
||||
QArray(Duploindex)(sKey).Add(QKey, QValue)
|
||||
End If
|
||||
Next
|
||||
End If
|
||||
nOutlineId = EgtGetNext(nOutlineId)
|
||||
End While
|
||||
End If
|
||||
' ciclo sulle feature
|
||||
Dim nFeatureLayer As Integer = EgtGetFirstNameInGroup(DuploArray(Duploindex), PROCESSINGS)
|
||||
If nFeatureLayer <> GDB_ID.NULL Then
|
||||
Dim nFeatureId As Integer = EgtGetFirstInGroup(nFeatureLayer)
|
||||
While nFeatureId <> GDB_ID.NULL
|
||||
' verifico che sia feature
|
||||
Dim nPRC As Integer
|
||||
If EgtGetInfo(nFeatureId, MGR_FTR_PRC, nPRC) Then
|
||||
nPRId = 0
|
||||
EgtGetInfo(nFeatureId, MGR_FTR_PRID, nPRId)
|
||||
Dim sKey As String = nPRId & "." & nPRC
|
||||
QArray(Duploindex).Add(sKey, New Dictionary(Of String, String))
|
||||
For QIndex = 1 To 10
|
||||
Dim QKey As String = "Q" & QIndex.ToString("D2")
|
||||
Dim QValue As Integer = 0
|
||||
If EgtGetInfo(nFeatureId, QKey, QValue) Then
|
||||
QArray(Duploindex)(sKey).Add(QKey, QValue)
|
||||
End If
|
||||
Next
|
||||
End If
|
||||
nFeatureId = EgtGetNext(nFeatureId)
|
||||
End While
|
||||
End If
|
||||
End If
|
||||
Next
|
||||
' aggiornamento dei Duplo
|
||||
EgtDuploUpdate(nPartId)
|
||||
' ripristino i valori di ROT e FLIP
|
||||
For Duploindex = 0 To DuploArray.Length - 1
|
||||
' ripristino info rot e flip
|
||||
EgtSetInfo(DuploArray(Duploindex), MGR_PRT_ROT, RotArray(Duploindex))
|
||||
EgtSetInfo(DuploArray(Duploindex), MGR_PRT_FLIP, FlipArray(Duploindex))
|
||||
If nBWType = BWType.WALL Then
|
||||
' ciclo sugli outline
|
||||
nOutlineLayer = EgtGetFirstNameInGroup(DuploArray(Duploindex), OUTLINE)
|
||||
If nOutlineLayer <> GDB_ID.NULL Then
|
||||
Dim nOutlineId As Integer = EgtGetFirstInGroup(nOutlineLayer)
|
||||
While nOutlineId <> GDB_ID.NULL
|
||||
' verifico che sia feature
|
||||
Dim nPRC As Integer
|
||||
If EgtGetInfo(nOutlineId, MGR_FTR_PRC, nPRC) Then
|
||||
nPRId = 0
|
||||
EgtGetInfo(nOutlineId, MGR_FTR_PRID, nPRId)
|
||||
Dim sKey As String = nPRId & "." & nPRC
|
||||
' ripristino parametri Q
|
||||
If QArray(Duploindex).ContainsKey(sKey) Then
|
||||
For Each QPar In QArray(Duploindex)(sKey)
|
||||
EgtSetInfo(nOutlineId, QPar.Key, QPar.Value)
|
||||
Next
|
||||
End If
|
||||
End If
|
||||
nOutlineId = EgtGetNext(nOutlineId)
|
||||
End While
|
||||
End If
|
||||
' ciclo sulle feature
|
||||
Dim nFeatureLayer As Integer = EgtGetFirstNameInGroup(DuploArray(Duploindex), PROCESSINGS)
|
||||
If nFeatureLayer <> GDB_ID.NULL Then
|
||||
Dim nFeatureId As Integer = EgtGetFirstInGroup(nFeatureLayer)
|
||||
While nFeatureId <> GDB_ID.NULL
|
||||
' verifico che sia feature
|
||||
Dim nPRC As Integer
|
||||
If EgtGetInfo(nFeatureId, MGR_FTR_PRC, nPRC) Then
|
||||
nPRId = 0
|
||||
EgtGetInfo(nFeatureId, MGR_FTR_PRID, nPRId)
|
||||
Dim sKey As String = nPRId & "." & nPRC
|
||||
' ripristino parametri Q
|
||||
If QArray(Duploindex).ContainsKey(sKey) Then
|
||||
For Each QPar In QArray(Duploindex)(sKey)
|
||||
EgtSetInfo(nFeatureId, QPar.Key, QPar.Value)
|
||||
Next
|
||||
End If
|
||||
End If
|
||||
nFeatureId = EgtGetNext(nFeatureId)
|
||||
End While
|
||||
End If
|
||||
End If
|
||||
Next
|
||||
End Sub
|
||||
|
||||
Public Shared Sub SetDuploModified(nPartId As Integer)
|
||||
If Configuration.bOnlyProd Then
|
||||
' segno modificato e aggiorno duplo
|
||||
EgtDuploSetModified(nPartId)
|
||||
UpdateDuplo(nPartId)
|
||||
' aggiorno grafica duplo
|
||||
Dim DuploIdList As New List(Of Integer)
|
||||
EgtDuploList(nPartId, DuploIdList)
|
||||
Dim DuploList As List(Of MachGroupVM) = CoreMap.refMachGroupPanelVM.MachGroupVMList.Where(Function(x) tt(x, DuploIdList)).ToList()
|
||||
For Each CurrMachGroup As MyMachGroupVM In DuploList
|
||||
CurrMachGroup.RefreshMachGroup()
|
||||
Next
|
||||
Else
|
||||
EgtDuploSetModified(nPartId)
|
||||
End If
|
||||
End Sub
|
||||
|
||||
Private Shared Function tt(x As MachGroupVM, DuploIdList As List(Of Integer)) As Boolean
|
||||
Dim TempMyMachGroupVM As MyMachGroupVM = DirectCast(x, MyMachGroupVM)
|
||||
Return TempMyMachGroupVM.PartVMList.Any(Function(y) DuploIdList.Contains(y.nPartId))
|
||||
End Function
|
||||
|
||||
Class DuploFeature
|
||||
' Id geometrico della feature
|
||||
Friend nFeatureId As Integer
|
||||
|
||||
@@ -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
|
||||
@@ -639,6 +639,10 @@ Public Class PartM
|
||||
Return New List(Of BTLFeatureM)(m_FeatureMList)
|
||||
End Function
|
||||
|
||||
Public Sub RefreshBTLFeatures()
|
||||
m_FeatureMList = LoadBTLFeatures(Me, nPartId)
|
||||
End Sub
|
||||
|
||||
#End Region ' Features
|
||||
|
||||
#End Region ' METHODS
|
||||
|
||||
@@ -91,7 +91,7 @@ Public MustInherit Class MyMachGroupPanelVM
|
||||
' Svuoto precedente lista di MachGroup
|
||||
MachGroupVMList.Clear()
|
||||
' aggiorno copie
|
||||
MyMachGroupPanelM.UpdateDuplo()
|
||||
MyMachGroupPanelM.UpdateAllDuplo()
|
||||
' verifico se esistono già gruppi di lavorazione o se devo creare il primo
|
||||
Dim bOk As Boolean = False
|
||||
Dim nId = EgtGetFirstMachGroup()
|
||||
|
||||
@@ -620,6 +620,10 @@ Public MustInherit Class MyMachGroupVM
|
||||
|
||||
Public MustOverride Sub RefreshPartList()
|
||||
|
||||
Public Overridable Sub RefreshMachGroup()
|
||||
|
||||
End Sub
|
||||
|
||||
#End Region ' Parts
|
||||
|
||||
#End Region ' METHODS
|
||||
|
||||
@@ -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
|
||||
|
||||
@@ -509,6 +507,10 @@ Public MustInherit Class PartVM
|
||||
|
||||
#Region "METHODS"
|
||||
|
||||
Public Overridable Sub RefreshPart()
|
||||
|
||||
End Sub
|
||||
|
||||
#Region "Feature"
|
||||
|
||||
Protected MustOverride Sub CreateBTLFeatureVMList()
|
||||
|
||||
@@ -0,0 +1,45 @@
|
||||
<Grid x:Class="MachinePanelV"
|
||||
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||
IsEnabled="{Binding MachPanel_IsEnabled}">
|
||||
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="1*"/>
|
||||
<ColumnDefinition Width="1*"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
|
||||
<Grid Margin="0,0,5,0">
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="1*"/>
|
||||
<ColumnDefinition Width="1*"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
<TextBlock Grid.Row="0" Grid.Column="0" Text="Macchina corrente" VerticalAlignment="Center" Margin="0,0,5,0"/>
|
||||
<!--Combobox per selezionare la macchina corrente-->
|
||||
<ComboBox ItemsSource="{Binding Path=MachineList}" DisplayMemberPath="Name"
|
||||
SelectedItem="{Binding Path=SelectedMachine}" SelectedValuePath="Name"
|
||||
Height="22" Width="150"
|
||||
Grid.Row="0" Grid.Column="1"/>
|
||||
</Grid>
|
||||
<StackPanel Grid.Column="1" Orientation="Horizontal" HorizontalAlignment="Center">
|
||||
<Button Command="{Binding ToolDbCommand}" ToolTip="{Binding ToolDBToolTip}"
|
||||
Style="{StaticResource ToolBar_TextButton}" Content="{Binding ToolDBMsg}"/>
|
||||
<Button Command="{Binding MachDbCommand}" ToolTip="{Binding MachiningDbToolTip}"
|
||||
Style="{StaticResource ToolBar_TextButton}" Content="{Binding MachiningDbMsg}"/>
|
||||
<Button Command="{Binding SetUpCommand}" ToolTip="{Binding SetUpToolTip}"
|
||||
Style="{StaticResource ToolBar_TextButton}" Content="{Binding SetUpMsg}"
|
||||
Visibility="{Binding SetUp_Visibility}"/>
|
||||
<Button ToolTip="{Binding BeamTable_ToolTip}"
|
||||
Style="{StaticResource ToolBar_Button}"
|
||||
Command="{Binding BeamTable_Command}"
|
||||
Visibility="{Binding BeamTable_Visibility}">
|
||||
<Image Source="/Resources/Configuration/MachiningsTable.png" Stretch="Uniform"/>
|
||||
</Button>
|
||||
<Button ToolTip="{Binding WallTable_ToolTip}"
|
||||
Style="{StaticResource ToolBar_Button}"
|
||||
Command="{Binding WallTable_Command}"
|
||||
Visibility="{Binding WallTable_Visibility}">
|
||||
<Image Source="/Resources/Configuration/MachiningsTable.png" Stretch="Uniform"/>
|
||||
</Button>
|
||||
</StackPanel>
|
||||
|
||||
</Grid>
|
||||
@@ -0,0 +1,3 @@
|
||||
Public Class MachinePanelV
|
||||
|
||||
End Class
|
||||
@@ -0,0 +1,357 @@
|
||||
Imports System.Collections.ObjectModel
|
||||
Imports System.IO
|
||||
Imports EgtBEAMWALL.Core
|
||||
Imports EgtUILib
|
||||
Imports EgtWPFLib5
|
||||
|
||||
Public Class MachinePanelVM
|
||||
Inherits EgtWPFLib5.MachinePanelVM
|
||||
|
||||
#Region "FIELDS & PROPERTIES"
|
||||
|
||||
' Radice del direttorio delle macchine
|
||||
Private m_sMachinesRoot As String
|
||||
|
||||
' Macchina correntemente selezionata e quindi attiva
|
||||
Private m_SelectedMachine As Machine = Nothing
|
||||
Public Overrides Property SelectedMachine As Machine
|
||||
Get
|
||||
Return m_SelectedMachine
|
||||
End Get
|
||||
Set(value As Machine)
|
||||
If value IsNot m_SelectedMachine Then
|
||||
' imposto macchina in DbGeometrico
|
||||
If Not IsNothing(value) AndAlso EgtSetCurrMachine(value.Name) Then
|
||||
m_SelectedMachine = value
|
||||
End If
|
||||
' Salvo impostazione macchina corrente
|
||||
SaveCurrentMachine()
|
||||
NotifyPropertyChanged(NameOf(SelectedMachine))
|
||||
' inizializzo la macchina selezionata come macchina corrente
|
||||
Dim nMachType As MachineType = DirectCast(m_SelectedMachine, MyMachine).nType
|
||||
SectionXMaterial.SetType(nMachType)
|
||||
If Not IsNothing(value) Then
|
||||
InitCurrentMachine(Map.refMainWindowVM.MainWindowM.sMachinesRoot, value.Name, nMachType)
|
||||
Else
|
||||
InitCurrentMachine(Map.refMainWindowVM.MainWindowM.sMachinesRoot, m_SelectedMachine.Name, nMachType)
|
||||
End If
|
||||
' mostro bottone tabella beam o wall a seconda del tipo
|
||||
m_BeamTable_Visibility = If(nMachType = MachineType.BEAM OrElse nMachType = MachineType.BOTH, Visibility.Visible, Visibility.Collapsed)
|
||||
m_WallTable_Visibility = If(nMachType = MachineType.WALL OrElse nMachType = MachineType.BOTH, Visibility.Visible, Visibility.Collapsed)
|
||||
NotifyPropertyChanged(NameOf(BeamTable_Visibility))
|
||||
NotifyPropertyChanged(NameOf(WallTable_Visibility))
|
||||
' carico i Parametri Q da mostrare (Beam, Wall o entrambi) in base al tipo di macchina selezionata
|
||||
If Not IsNothing(Map.refConfigurationPageVM) Then
|
||||
' carico i parametri Q dei Process letti dall'ini
|
||||
Map.refConfigurationPageVM.GetQParamsList()
|
||||
' carico la lista di tutti i parametri Q ciclando su ogni Process di PRCList
|
||||
If Not IsNothing(Map.refConfigurationPageVM.QBTLParamVMList) Then
|
||||
Map.refConfigurationPageVM.QBTLParamVMList.Clear()
|
||||
End If
|
||||
For Each PRCItem In Map.refConfigurationPageVM.PRCList
|
||||
For Each QBTLParam In PRCItem.QBTLParamVMList
|
||||
Map.refConfigurationPageVM.QBTLParamVMList.Add(QBTLParam)
|
||||
Next
|
||||
Next
|
||||
NotifyPropertyChanged(NameOf(Map.refConfigurationPageVM.QBTLParamVMList))
|
||||
End If
|
||||
' aggiorno nome macchina in statusbar
|
||||
Map.refMyStatusBarVM.RefreshMachName()
|
||||
End If
|
||||
End Set
|
||||
End Property
|
||||
|
||||
Private m_MachPanel_IsEnabled As Boolean = True
|
||||
Public Property MachPanel_IsEnabled As Boolean
|
||||
Get
|
||||
Return m_MachPanel_IsEnabled
|
||||
End Get
|
||||
Set(value As Boolean)
|
||||
m_MachPanel_IsEnabled = value
|
||||
NotifyPropertyChanged("MachPanel_IsEnabled")
|
||||
End Set
|
||||
End Property
|
||||
|
||||
Private m_BeamTable_Visibility As Visibility
|
||||
Public ReadOnly Property BeamTable_Visibility As Visibility
|
||||
Get
|
||||
Return m_BeamTable_Visibility
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Private m_WallTable_Visibility As Visibility
|
||||
Public ReadOnly Property WallTable_Visibility As Visibility
|
||||
Get
|
||||
Return m_WallTable_Visibility
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Public ReadOnly Property SetUp_Visibility As Visibility
|
||||
Get
|
||||
Return If(Map.refMainWindowVM.MainWindowM.bModifySetup, Visibility.Visible, Visibility.Collapsed)
|
||||
End Get
|
||||
End Property
|
||||
|
||||
|
||||
#Region "Messages"
|
||||
|
||||
Public ReadOnly Property ToolDBMsg As String
|
||||
Get
|
||||
Return EgtMsg(MSG_MACHINEPAGEUC + 6)
|
||||
End Get
|
||||
End Property
|
||||
Public ReadOnly Property MachiningDbMsg As String
|
||||
Get
|
||||
Return EgtMsg(MSG_MACHINEPAGEUC + 7)
|
||||
End Get
|
||||
End Property
|
||||
Public ReadOnly Property SetUpMsg As String
|
||||
Get
|
||||
Return EgtMsg(MSG_ALARMSPAGEUC + 33)
|
||||
End Get
|
||||
End Property
|
||||
|
||||
#End Region ' Messages
|
||||
|
||||
#Region "ToolTip"
|
||||
|
||||
Public ReadOnly Property ToolDBToolTip As String
|
||||
Get
|
||||
Return EgtMsg(5003)
|
||||
End Get
|
||||
End Property
|
||||
Public ReadOnly Property MachiningDbToolTip As String
|
||||
Get
|
||||
Return EgtMsg(5004)
|
||||
End Get
|
||||
End Property
|
||||
Public ReadOnly Property SetUpToolTip As String
|
||||
Get
|
||||
Return EgtMsg(31501)
|
||||
End Get
|
||||
End Property
|
||||
|
||||
#End Region ' ToolTip
|
||||
|
||||
' Definizione comandi
|
||||
Private m_cmdBeamTable As ICommand
|
||||
Private m_cmdWallTable As ICommand
|
||||
|
||||
#End Region 'FIELDS & PROPERTIES
|
||||
|
||||
#Region "CONSTRUCTOR"
|
||||
|
||||
Sub New()
|
||||
' Creo riferimento a questa classe in Map
|
||||
Map.SetRefMachinePanelVM(Me)
|
||||
' recupero cartella radice delle macchine
|
||||
m_sMachinesRoot = Map.refMainWindowVM.MainWindowM.sMachinesRoot
|
||||
' Carica macchine da cartella delle macchine
|
||||
MyMachine.MachineListInit(m_sMachinesRoot, MachineList)
|
||||
End Sub
|
||||
|
||||
#End Region ' CONSTRUCTOR
|
||||
|
||||
#Region "METHODS"
|
||||
|
||||
Friend Sub LoadCurrentMachine()
|
||||
If MachineList.Count = 0 Then Return
|
||||
Dim CurrMachine As Machine = Nothing
|
||||
Dim CurrMachineName As String = String.Empty
|
||||
GetMainPrivateProfileString(S_MACH, K_CURRMACH, String.Empty, CurrMachineName)
|
||||
Dim bFound As Boolean = False
|
||||
If Not String.IsNullOrEmpty(CurrMachineName) Then
|
||||
For Each Mach In MachineList
|
||||
If Mach.Name = CurrMachineName Then
|
||||
bFound = True
|
||||
CurrMachine = Mach
|
||||
Exit For
|
||||
End If
|
||||
Next
|
||||
End If
|
||||
If Not bFound And MachineList.Count > 0 Then
|
||||
CurrMachine = MachineList(0)
|
||||
End If
|
||||
If Not IsNothing(CurrMachine) Then
|
||||
If EgtSetCurrMachine(CurrMachine.Name) Then
|
||||
SelectedMachine = CurrMachine
|
||||
End If
|
||||
End If
|
||||
End Sub
|
||||
|
||||
Friend Sub SaveCurrentMachine()
|
||||
If IsNothing(m_SelectedMachine) Then Return
|
||||
WriteMainPrivateProfileString(S_MACH, K_CURRMACH, SelectedMachine.Name)
|
||||
End Sub
|
||||
|
||||
Friend Sub UpdateCurrentMachine()
|
||||
'EgtSetCurrentContext(IniFile.m_ProjectSceneContext)
|
||||
Dim sMachName As String = String.Empty
|
||||
If EgtGetCurrMachineName(sMachName) Then
|
||||
For Each Mach In MachineList
|
||||
If Mach.Name = sMachName Then
|
||||
SelectedMachine = Mach
|
||||
Exit For
|
||||
End If
|
||||
Next
|
||||
End If
|
||||
End Sub
|
||||
|
||||
Friend Function BeamMachDb() As Boolean
|
||||
' Assegno le path
|
||||
Dim sBaseDir As String = m_sMachinesRoot & "\" & m_SelectedMachine.Name & "\" & "Beam"
|
||||
' verifico se ci sono i file ini
|
||||
Dim sMachTypePath As String = sBaseDir & "\MachiningTypes.ini"
|
||||
Dim sTabTemplPath As String = sBaseDir & "\BeamTableTemplate.ini"
|
||||
If File.Exists(sMachTypePath) AndAlso File.Exists(sTabTemplPath) Then
|
||||
' apro finestra di gestione lavorazioni travi
|
||||
Dim sTitle = EgtMsg(9000) 'Tabelle delle lavorazioni delle travi
|
||||
Dim BeamMchsWinVM As New MyBeamMachiningsWindowVM(sTitle, sBaseDir, sMachTypePath, sTabTemplPath)
|
||||
Dim BeamMchsWinV As New BeamMachiningsWindowV(Application.Current.MainWindow, BeamMchsWinVM)
|
||||
BeamMchsWinV.ShowDialog()
|
||||
Else
|
||||
' Impossibile aprire l'Editor delle lavorazioni delle travi.<br/>Mancano i file di configurazione. - Errore
|
||||
MessageBox.Show(EgtMsg(9009), EgtMsg(9008), MessageBoxButton.OK, MessageBoxImage.Stop)
|
||||
End If
|
||||
Return True
|
||||
End Function
|
||||
|
||||
Friend Function WallMachDb() As Boolean
|
||||
' Assegno le path
|
||||
Dim sBaseDir As String = m_sMachinesRoot & "\" & m_SelectedMachine.Name & "\" & "Wall"
|
||||
' verifico se ci sono i file ini
|
||||
Dim sMachTypePath As String = sBaseDir & "\MachiningTypes.ini"
|
||||
Dim sTabTemplPath As String = sBaseDir & "\WallTableTemplate.ini"
|
||||
If File.Exists(sMachTypePath) AndAlso File.Exists(sTabTemplPath) Then
|
||||
' apro finestra di gestione lavorazioni pareti
|
||||
Dim sTitle = EgtMsg(9010) 'Tabelle delle lavorazioni delle pareti
|
||||
Dim WallMchsWinVM As New MyBeamMachiningsWindowVM(sTitle, sBaseDir, sMachTypePath, sTabTemplPath, False)
|
||||
Dim WallMchsWinV As New BeamMachiningsWindowV(Application.Current.MainWindow, WallMchsWinVM)
|
||||
WallMchsWinV.ShowDialog()
|
||||
Else
|
||||
' Impossibile aprire l'Editor delle lavorazioni delle pareti.<br/>Mancano i file di configurazione. - Errore
|
||||
MessageBox.Show(EgtMsg(9011), EgtMsg(9008), MessageBoxButton.OK, MessageBoxImage.Stop)
|
||||
End If
|
||||
Return True
|
||||
End Function
|
||||
|
||||
Public Overrides Sub ToolDb(ByVal param As Object)
|
||||
If Not VerifyMachinesDir(m_sMachinesRoot) Then Return
|
||||
' ricarico il database per intercettare eventuali aggiornamenti fatti da altre istanze del programma (se la cartella Machines è condivisa)
|
||||
If Not EgtTdbReload() Then
|
||||
EgtOutLog("Impossible reloading tool Db")
|
||||
MessageBox.Show(EgtMsg(MSG_TOOLDBERRORS + 30), EgtMsg(MSG_MESSAGEBOX + 1), MessageBoxButton.OK, MessageBoxImage.Error)
|
||||
Return
|
||||
End If
|
||||
|
||||
Dim ToolDbWindowVM As New MyToolDbWindowVM(CurrentMachine.sMachDir, CurrentMachine.sMachIniFile, Map.refSceneHostVM.MainScene.GetCtx(), "Beam")
|
||||
Dim ToolDbWindowV As New ToolDbWindowV(Application.Current.MainWindow, ToolDbWindowVM)
|
||||
If ToolDbWindowVM.MatType <> 0 Then
|
||||
ToolDbWindowV.Height = 640
|
||||
ToolDbWindowV.Width = 1024
|
||||
ToolDbWindowV.ShowDialog()
|
||||
Else
|
||||
Exit Sub
|
||||
End If
|
||||
|
||||
End Sub
|
||||
|
||||
Public Overrides Sub MachDb(ByVal param As Object)
|
||||
If Not VerifyMachinesDir(m_sMachinesRoot) Then Return
|
||||
' ricarico il database per intercettare eventuali aggiornamenti fatti da altre istanze del programma (se la cartella Machines è condivisa)
|
||||
If Not EgtMdbReload() Then
|
||||
EgtOutLog("Impossible reloading machining Db")
|
||||
MessageBox.Show(EgtMsg(MSG_MACHININGDBERRORS + 8), EgtMsg(MSG_MESSAGEBOX + 1), MessageBoxButton.OK, MessageBoxImage.Error)
|
||||
Return
|
||||
End If
|
||||
Dim MachDbWindowVM As New EgtWPFLib5.MachiningDbWindowVM(CurrentMachine.sMachIniFile, Map.refSceneHostVM.MainScene.GetCtx(), "Stone")
|
||||
Dim MachDbWindowV As New EgtWPFLib5.MachiningDbWindowV(Application.Current.MainWindow, MachDbWindowVM)
|
||||
|
||||
If EgtWPFLib5.MachiningTreeViewItem.m_MatType <> 0 Then
|
||||
MachDbWindowV.Height = 768
|
||||
MachDbWindowV.Width = 1024
|
||||
MachDbWindowV.ShowDialog()
|
||||
Else
|
||||
Exit Sub
|
||||
End If
|
||||
|
||||
End Sub
|
||||
|
||||
Public Overrides Sub SetUp(ByVal param As Object)
|
||||
' verifico che il file di configurazione attrezzaggio (lua) della macchina esista
|
||||
If Not File.Exists(CurrentMachine.sMachDir & "\Scripts\" & SETUP_LUA) Then
|
||||
EgtOutLog("SetUp error: SetUp configuration file doesn't exist ")
|
||||
MessageBox.Show(EgtMsg(MSG_SETUPERRORS + 7), EgtMsg(MSG_SETUPERRORS + 1), MessageBoxButton.OK, MessageBoxImage.Error)
|
||||
Return
|
||||
End If
|
||||
' carico Lua che contiene le funzioni per ottenere le posizioni valide dell'utensile selezionato,
|
||||
' e testa e uscita dell'utensile attrezzato
|
||||
EgtLuaExecFile(CurrentMachine.sMachDir & "\Scripts\" & SETUP_LUA)
|
||||
' verifico che le teste riportate in configurazione esistano
|
||||
Dim Index As Integer = 1
|
||||
Dim nErr As Integer = 0
|
||||
While nErr = 0
|
||||
Dim sHead As String = String.Empty
|
||||
nErr = 999
|
||||
EgtLuaSetGlobIntVar("STU.INDEX", Index)
|
||||
EgtLuaCallFunction("STU.GetTcPosHeadGroupFromPos")
|
||||
' Leggo variabili
|
||||
EgtLuaGetGlobStringVar("STU.HEAD", sHead)
|
||||
EgtLuaGetGlobIntVar("STU.ERR", nErr)
|
||||
If nErr = 0 Then
|
||||
If EgtGetHeadExitCount(sHead) = 0 Then
|
||||
MessageBox.Show(EgtMsg(MSG_SETUPERRORS + 8), EgtMsg(MSG_SETUPERRORS + 1), MessageBoxButton.OK, MessageBoxImage.Error)
|
||||
Return
|
||||
End If
|
||||
End If
|
||||
Index += 1
|
||||
End While
|
||||
' Reset lua
|
||||
EgtLuaResetGlobVar("STU")
|
||||
|
||||
Dim SetUpWindow As New SetUpWindowV(Application.Current.MainWindow, New SetUpWindowVM(CurrentMachine.sMachDir, CurrentMachine.sMachineName))
|
||||
SetUpWindow.Height = 614
|
||||
SetUpWindow.Width = 1024
|
||||
SetUpWindow.ShowDialog()
|
||||
|
||||
End Sub
|
||||
|
||||
#End Region
|
||||
|
||||
#Region "COMMANDS"
|
||||
|
||||
#Region "BeamTable"
|
||||
|
||||
''' <summary>
|
||||
''' Returns a command that do Exec.
|
||||
''' </summary>
|
||||
Public ReadOnly Property BeamTable_Command As ICommand
|
||||
Get
|
||||
If m_cmdBeamTable Is Nothing Then
|
||||
m_cmdBeamTable = New Command(AddressOf BeamMachDb)
|
||||
End If
|
||||
Return m_cmdBeamTable
|
||||
End Get
|
||||
End Property
|
||||
|
||||
#End Region ' BeamTable
|
||||
|
||||
#Region "WallTable"
|
||||
|
||||
''' <summary>
|
||||
''' Returns a command that do Exec.
|
||||
''' </summary>
|
||||
Public ReadOnly Property WallTable_Command As ICommand
|
||||
Get
|
||||
If m_cmdWallTable Is Nothing Then
|
||||
m_cmdWallTable = New Command(AddressOf WallMachDb)
|
||||
End If
|
||||
Return m_cmdWallTable
|
||||
End Get
|
||||
End Property
|
||||
|
||||
#End Region ' WallTable
|
||||
|
||||
#End Region ' COMMANDS
|
||||
|
||||
End Class
|
||||
Binary file not shown.
|
After Width: | Height: | Size: 610 B |
@@ -0,0 +1,24 @@
|
||||
Public Module Configuration
|
||||
|
||||
Private m_bOnlyProd As Boolean
|
||||
Public ReadOnly Property bOnlyProd As Boolean
|
||||
Get
|
||||
Return m_bOnlyProd
|
||||
End Get
|
||||
End Property
|
||||
Public Sub SetOnlyProd(value As Boolean)
|
||||
m_bOnlyProd = value
|
||||
End Sub
|
||||
|
||||
Private m_bModifySetup As Boolean
|
||||
Public ReadOnly Property bModifySetup As Boolean
|
||||
Get
|
||||
Return m_bModifySetup
|
||||
End Get
|
||||
End Property
|
||||
Public Sub SetModifySetup(value As Boolean)
|
||||
m_bModifySetup = value
|
||||
End Sub
|
||||
|
||||
|
||||
End Module
|
||||
@@ -63,6 +63,7 @@ Public Enum StatusMapOpType
|
||||
ChangeProdInProdRequest = 16
|
||||
OpenPageInViewOptimRequest = 17
|
||||
MachGroupValidationUpdate = 18
|
||||
ChangeProdInOnlyProdRequest = 19
|
||||
End Enum
|
||||
|
||||
Public Enum DimensionType
|
||||
|
||||
@@ -0,0 +1,155 @@
|
||||
<EgtWPFLib5:EgtCustomWindow x:Class="BeamMachiningsWindowV"
|
||||
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:EgtBEAMWALLCORE="clr-namespace:EgtBEAMWALL.Core;assembly=EgtBEAMWALL.Core"
|
||||
Title="{Binding Title}"
|
||||
Style="{DynamicResource {x:Type EgtWPFLib5:EgtCustomWindow}}"
|
||||
WindowStyle="None" ResizeMode="NoResize"
|
||||
Width="500" Height="450"
|
||||
IsResizable="False"
|
||||
IsMinimizable="False" WindowStartupLocation="CenterOwner" ShowInTaskbar="False"
|
||||
CloseCommand="{Binding Close_Command,Mode=OneWay,UpdateSourceTrigger=PropertyChanged}">
|
||||
|
||||
<Grid Margin="5,5,5,0">
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="Auto"/>
|
||||
<RowDefinition Height="1*"/>
|
||||
<RowDefinition Height="Auto"/>
|
||||
</Grid.RowDefinitions>
|
||||
|
||||
<TabControl ItemsSource="{Binding MachiningList}"
|
||||
SelectedItem="{Binding SelMachining}"
|
||||
IsSynchronizedWithCurrentItem="True"
|
||||
Margin="5,0,5,0"
|
||||
Style="{StaticResource TabControl_OnlyHeaders}"/>
|
||||
|
||||
<EgtBEAMWALLCORE:EgtDataGrid Grid.Row="1"
|
||||
ItemsSource="{Binding TableRowList}"
|
||||
SelectedIndex="{Binding SelRowIndex}"
|
||||
AutoGenerateColumns="False"
|
||||
CanUserResizeRows="False"
|
||||
SelectionMode="Single"
|
||||
ScrollViewer.CanContentScroll="True"
|
||||
ScrollViewer.VerticalScrollBarVisibility="Auto"
|
||||
ScrollViewer.HorizontalScrollBarVisibility="Auto"
|
||||
Margin="0,0,0,5"
|
||||
BindingColumns="{Binding BeamMachiningsColumns}">
|
||||
|
||||
<DataGrid.RowStyle>
|
||||
<Style TargetType="DataGridRow">
|
||||
<Setter Property="Height" Value="25"/>
|
||||
<Setter Property="VerticalContentAlignment" Value="Center"/>
|
||||
</Style>
|
||||
</DataGrid.RowStyle>
|
||||
|
||||
<DataGrid.Resources>
|
||||
<Style x:Key="DataGridCheckBoxColumn_Style"
|
||||
TargetType="{x:Type DataGridCell}">
|
||||
<Setter Property="Template">
|
||||
<Setter.Value>
|
||||
<ControlTemplate TargetType="{x:Type DataGridCell}">
|
||||
<Grid Background="{TemplateBinding Background}">
|
||||
<ContentPresenter VerticalAlignment="Center" />
|
||||
</Grid>
|
||||
</ControlTemplate>
|
||||
</Setter.Value>
|
||||
</Setter>
|
||||
</Style>
|
||||
|
||||
<!--Colonna On-->
|
||||
<DataGridCheckBoxColumn x:Key="colON" Binding="{Binding OnPar, UpdateSourceTrigger=PropertyChanged}"
|
||||
CellStyle="{StaticResource DataGridCheckBoxColumn_Style}">
|
||||
<DataGridCheckBoxColumn.Header>
|
||||
<TextBlock Text="{Binding Path=DataContext.OnHdr,RelativeSource={RelativeSource AncestorType={x:Type EgtWPFLib5:EgtCustomWindow}}}"/>
|
||||
</DataGridCheckBoxColumn.Header>
|
||||
</DataGridCheckBoxColumn>
|
||||
|
||||
<!--Colonna Name-->
|
||||
<DataGridTemplateColumn x:Key="colNAME">
|
||||
<DataGridTemplateColumn.Header>
|
||||
<TextBlock Text="{Binding Path=DataContext.NameHdr,RelativeSource={RelativeSource AncestorType={x:Type EgtWPFLib5:EgtCustomWindow}}}"/>
|
||||
</DataGridTemplateColumn.Header>
|
||||
<DataGridTemplateColumn.CellEditingTemplate>
|
||||
<DataTemplate>
|
||||
<ComboBox IsEditable="False"
|
||||
SelectedItem="{Binding Name,Mode=TwoWay,UpdateSourceTrigger=PropertyChanged}"
|
||||
ItemsSource="{Binding Path=NamesList, Mode=OneWay, UpdateSourceTrigger=PropertyChanged}"/>
|
||||
</DataTemplate>
|
||||
</DataGridTemplateColumn.CellEditingTemplate>
|
||||
<DataGridTemplateColumn.CellTemplate>
|
||||
<DataTemplate>
|
||||
<TextBlock Text="{Binding Path=Name,Mode=TwoWay,UpdateSourceTrigger=PropertyChanged}"
|
||||
VerticalAlignment="Center"
|
||||
Margin="5,0,0,0"/>
|
||||
</DataTemplate>
|
||||
</DataGridTemplateColumn.CellTemplate>
|
||||
</DataGridTemplateColumn>
|
||||
|
||||
<!--Colonna Style-->
|
||||
<DataGridTemplateColumn x:Key="colTYPE">
|
||||
<DataGridTemplateColumn.Header>
|
||||
<TextBlock Text="{Binding Path=DataContext.TypeHdr,RelativeSource={RelativeSource AncestorType={x:Type EgtWPFLib5:EgtCustomWindow}}}"/>
|
||||
</DataGridTemplateColumn.Header>
|
||||
<DataGridTemplateColumn.CellEditingTemplate>
|
||||
<DataTemplate>
|
||||
<ComboBox IsEditable="False"
|
||||
SelectedItem="{Binding Type,Mode=TwoWay,UpdateSourceTrigger=PropertyChanged}"
|
||||
ItemsSource="{Binding Path=TypeList, Mode=OneWay, UpdateSourceTrigger=PropertyChanged}"/>
|
||||
</DataTemplate>
|
||||
</DataGridTemplateColumn.CellEditingTemplate>
|
||||
<DataGridTemplateColumn.CellTemplate>
|
||||
<DataTemplate>
|
||||
<TextBlock Text="{Binding Path=Type,Mode=TwoWay,UpdateSourceTrigger=PropertyChanged}"
|
||||
VerticalAlignment="Center"
|
||||
Margin="5,0,0,0"/>
|
||||
</DataTemplate>
|
||||
</DataGridTemplateColumn.CellTemplate>
|
||||
</DataGridTemplateColumn>
|
||||
|
||||
</DataGrid.Resources>
|
||||
|
||||
</EgtBEAMWALLCORE:EgtDataGrid>
|
||||
|
||||
<Grid Grid.Row="2"
|
||||
Margin="0,0,0,5"
|
||||
HorizontalAlignment="Center">
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="Auto"/>
|
||||
<ColumnDefinition Width="Auto"/>
|
||||
<ColumnDefinition Width="Auto"/>
|
||||
<ColumnDefinition Width="Auto"/>
|
||||
<ColumnDefinition Width="Auto"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
|
||||
<Button Content="/\"
|
||||
Command="{Binding MoveRowUp_Command}"
|
||||
Grid.Column="0"
|
||||
Margin="0,0,2.5,0"
|
||||
Style="{StaticResource EgtWPFLib5_InputButton}"/>
|
||||
<Button Content="\/"
|
||||
Command="{Binding MoveRowDown_Command}"
|
||||
Grid.Column="1"
|
||||
Margin="2.5,0,2.5,0"
|
||||
Style="{StaticResource EgtWPFLib5_InputButton}"/>
|
||||
<Button Content="{Binding AddRowMsg}"
|
||||
Command="{Binding AddRow_Command}"
|
||||
Grid.Column="2"
|
||||
Margin="2.5,0,2.5,0"
|
||||
Style="{StaticResource EgtWPFLib5_InputButton}"/>
|
||||
<Button Content="{Binding DeleteRowMsg}"
|
||||
Command="{Binding DeleteRow_Command}"
|
||||
Grid.Column="3"
|
||||
Margin="2.5,0,2.5,0"
|
||||
Style="{StaticResource EgtWPFLib5_InputButton}"/>
|
||||
<Button Content="{Binding SaveMsg}"
|
||||
Command="{Binding Save_Command}"
|
||||
Grid.Column="4"
|
||||
Margin="2.5,0,0,0"
|
||||
Style="{StaticResource EgtWPFLib5_InputButton}"/>
|
||||
|
||||
</Grid>
|
||||
|
||||
</Grid>
|
||||
|
||||
</EgtWPFLib5:EgtCustomWindow>
|
||||
@@ -0,0 +1,20 @@
|
||||
Imports EgtBEAMWALL.Core
|
||||
|
||||
Public Class BeamMachiningsWindowV
|
||||
|
||||
Private WithEvents m_BeamMachiningsWindowVM As MyBeamMachiningsWindowVM
|
||||
|
||||
Sub New(Owner As Window, BeamMachiningsWindowVM As MyBeamMachiningsWindowVM)
|
||||
MyBase.New(Owner)
|
||||
' This call is required by the designer.
|
||||
InitializeComponent()
|
||||
Me.DataContext = BeamMachiningsWindowVM
|
||||
' Assegno al riferimento locale al VM il VM preso dal DataContext
|
||||
m_BeamMachiningsWindowVM = BeamMachiningsWindowVM
|
||||
End Sub
|
||||
|
||||
Private Sub CloseWindow(bDialogResult As Boolean) Handles m_BeamMachiningsWindowVM.m_CloseWindow
|
||||
Me.DialogResult = bDialogResult
|
||||
End Sub
|
||||
|
||||
End Class
|
||||
@@ -0,0 +1,36 @@
|
||||
Imports System.Collections.ObjectModel
|
||||
Imports EgtBEAMWALL.Core
|
||||
Imports EgtWPFLib5
|
||||
|
||||
Public Class MyBeamMachiningsWindowVM
|
||||
Inherits BeamMachiningsWindowVM
|
||||
|
||||
#Region "FIELDS & PROPERTIES"
|
||||
|
||||
Private m_BeamMachiningsColumns As New ObservableCollection(Of EgtDataGridColumn)
|
||||
Public Property BeamMachiningsColumns As ObservableCollection(Of EgtDataGridColumn)
|
||||
Get
|
||||
Return m_BeamMachiningsColumns
|
||||
End Get
|
||||
Set(value As ObservableCollection(Of EgtDataGridColumn))
|
||||
m_BeamMachiningsColumns = value
|
||||
End Set
|
||||
End Property
|
||||
|
||||
#End Region ' FIELDS & PROPERTIES
|
||||
|
||||
#Region "CONSTRUCTOR"
|
||||
|
||||
Sub New(sTitle As String, sBaseDir As String, sMachTypePath As String, sTabTemplPath As String, Optional bIsBeam As Boolean = True)
|
||||
MyBase.New(sTitle, sBaseDir, sMachTypePath, sTabTemplPath, bIsBeam)
|
||||
' carico le colonne della datagrid
|
||||
GetPrivateProfileColumns(S_BEAMMACHININGS, BeamMachiningsColumns)
|
||||
' aggiorno la visibilità delle colonne
|
||||
For Each col In BeamMachiningsColumns
|
||||
col.ColumnVisibility = If(col.Visible, Visibility.Visible, Visibility.Collapsed)
|
||||
Next
|
||||
End Sub
|
||||
|
||||
#End Region ' CONSTRUCTOR
|
||||
|
||||
End Class
|
||||
@@ -1,24 +1,36 @@
|
||||
<DockPanel x:Class="ConfigurationPageV"
|
||||
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||
xmlns:EgtFloating="clr-namespace:EgtWPFLib5.EgtFloating;assembly=EgtWPFLib5"
|
||||
xmlns:EgtWPFLib5="clr-namespace:EgtWPFLib5;assembly=EgtWPFLib5"
|
||||
xmlns:EgtBEAMWALL="clr-namespace:EgtBEAMWALL.Supervisor"
|
||||
xmlns:EgtBEAMWALLCORE="clr-namespace:EgtBEAMWALL.Core;assembly=EgtBEAMWALL.Core">
|
||||
|
||||
<Grid>
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="10*"/>
|
||||
<ColumnDefinition Width="1*"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="6*"/>
|
||||
<RowDefinition Height="1*"/>
|
||||
</Grid.RowDefinitions>
|
||||
<TabControl Grid.Row="0" Grid.Column="0" Grid.RowSpan="2" Grid.ColumnSpan="2">
|
||||
<TabItem Header="General">
|
||||
<TabItem.Content>
|
||||
<Grid>
|
||||
<Grid>
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="10*"/>
|
||||
<ColumnDefinition Width="1*"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="6*"/>
|
||||
<RowDefinition Height="1*"/>
|
||||
</Grid.RowDefinitions>
|
||||
<TabControl Grid.Row="0" Grid.Column="0" Grid.RowSpan="2" Grid.ColumnSpan="2"
|
||||
SelectedIndex="{Binding SelConfigSubPage}">
|
||||
<TabItem>
|
||||
<TabItem.Header>
|
||||
<StackPanel Orientation="Horizontal">
|
||||
<TextBlock Text="{Binding General_Msg}"
|
||||
Style="{StaticResource OptionTextBlock}"/>
|
||||
<Button Command="{Binding SaveCommand}"
|
||||
ToolTip="{Binding SaveToolTip}"
|
||||
Visibility="{Binding General_Visibility}"
|
||||
Style="{StaticResource OptionPanel_Button}">
|
||||
<Image Source="/Resources/ProjectManager/Save.png" Stretch="Uniform"/>
|
||||
</Button>
|
||||
</StackPanel>
|
||||
</TabItem.Header>
|
||||
<TabItem.Content>
|
||||
<EgtBEAMWALLCORE:General_ConfigurationPageV/>
|
||||
<!--<Grid>
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="1*"/>
|
||||
<ColumnDefinition Width="1*"/>
|
||||
@@ -47,91 +59,25 @@
|
||||
Margin="0,5,0,0"/>
|
||||
</UniformGrid>
|
||||
</StackPanel>
|
||||
</Grid>
|
||||
</TabItem.Content>
|
||||
</TabItem>
|
||||
<!--<TabItem Header="Parametri Q">
|
||||
<TabItem.Content>
|
||||
<Grid>
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="2*"/>
|
||||
<ColumnDefinition Width="1*"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="1*"/>
|
||||
</Grid.RowDefinitions>
|
||||
<EgtBEAMWALL:QParamListV DataContext="{Binding}"
|
||||
ItemsSource="{Binding QBTLParamVMList}"
|
||||
SelectedItem="{Binding SelQParam}"
|
||||
Grid.Column="0"
|
||||
Margin="5">
|
||||
<DataGrid.GroupStyle>
|
||||
<GroupStyle>
|
||||
<GroupStyle.Panel>
|
||||
<ItemsPanelTemplate>
|
||||
<DataGridRowsPresenter/>
|
||||
</ItemsPanelTemplate>
|
||||
</GroupStyle.Panel>
|
||||
<GroupStyle.HeaderTemplate>
|
||||
<DataTemplate>
|
||||
<StackPanel>
|
||||
<TextBlock Text="{Binding Path=Name}"/>
|
||||
</StackPanel>
|
||||
</DataTemplate>
|
||||
</GroupStyle.HeaderTemplate>
|
||||
<GroupStyle.ContainerStyle>
|
||||
<Style TargetType="{x:Type GroupItem}">
|
||||
<Setter Property="Template">
|
||||
<Setter.Value>
|
||||
<ControlTemplate TargetType="{x:Type GroupItem}">
|
||||
<Expander IsExpanded="True">
|
||||
<Expander.Background>
|
||||
<SolidColorBrush Color="#FFBABABA"></SolidColorBrush>
|
||||
</Expander.Background>
|
||||
<Expander.Header>
|
||||
<StackPanel Orientation="Horizontal">
|
||||
<TextBlock Text="{Binding Path=Name}" />
|
||||
</StackPanel>
|
||||
</Expander.Header>
|
||||
<ItemsPresenter />
|
||||
</Expander>
|
||||
</ControlTemplate>
|
||||
</Setter.Value>
|
||||
</Setter>
|
||||
</Style>
|
||||
</GroupStyle.ContainerStyle>
|
||||
</GroupStyle>
|
||||
<GroupStyle>
|
||||
<GroupStyle.ContainerStyle>
|
||||
<Style TargetType="{x:Type GroupItem}">
|
||||
<Setter Property="Template">
|
||||
<Setter.Value>
|
||||
<ControlTemplate TargetType="{x:Type GroupItem}">
|
||||
<Expander IsExpanded="True">
|
||||
<Expander.Background>
|
||||
<SolidColorBrush Color="LightGray"></SolidColorBrush>
|
||||
</Expander.Background>
|
||||
<Expander.Header>
|
||||
<StackPanel Orientation="Horizontal">
|
||||
<TextBlock Text="{Binding Path=Name}" />
|
||||
</StackPanel>
|
||||
</Expander.Header>
|
||||
<ItemsPresenter />
|
||||
</Expander>
|
||||
</ControlTemplate>
|
||||
</Setter.Value>
|
||||
</Setter>
|
||||
</Style>
|
||||
</GroupStyle.ContainerStyle>
|
||||
</GroupStyle>
|
||||
</DataGrid.GroupStyle>
|
||||
</EgtBEAMWALL:QParamListV>
|
||||
</Grid>
|
||||
</TabItem.Content>
|
||||
</TabItem>-->
|
||||
<!--<TabItem Header="Macchina">
|
||||
<TabItem.Content>
|
||||
<Grid>
|
||||
</Grid>-->
|
||||
</TabItem.Content>
|
||||
</TabItem>
|
||||
<TabItem>
|
||||
<TabItem.Header>
|
||||
<StackPanel Orientation="Horizontal">
|
||||
<TextBlock Text="{Binding Machine_Msg}"
|
||||
Style="{StaticResource OptionTextBlock}"/>
|
||||
<Button Command="{Binding SaveCommand}"
|
||||
ToolTip="{Binding SaveToolTip}"
|
||||
Visibility="{Binding Machine_Visibility}"
|
||||
Style="{StaticResource OptionPanel_Button}">
|
||||
<Image Source="/Resources/ProjectManager/Save.png" Stretch="Uniform"/>
|
||||
</Button>
|
||||
</StackPanel>
|
||||
</TabItem.Header>
|
||||
<TabItem.Content>
|
||||
<EgtBEAMWALLCORE:Machine_ConfigurationPageV/>
|
||||
<!--<Grid>
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="Auto"/>
|
||||
<ColumnDefinition Width="1*"/>
|
||||
@@ -194,47 +140,47 @@
|
||||
</ItemsControl.ItemTemplate>
|
||||
</ItemsControl>
|
||||
</StackPanel>
|
||||
</Grid>
|
||||
</TabItem.Content>
|
||||
</TabItem>-->
|
||||
<TabItem Header="Variabili">
|
||||
<TabItem.Content>
|
||||
<Grid>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="Auto"/>
|
||||
<RowDefinition Height="1*"/>
|
||||
</Grid.RowDefinitions>
|
||||
<Grid Grid.Row="0" Margin="5">
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="1*"/>
|
||||
<ColumnDefinition Width="1*"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
<Grid Grid.Column="0" Margin="5">
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="1*"/>
|
||||
<ColumnDefinition Width="1*"/>
|
||||
<ColumnDefinition Width="Auto"/>
|
||||
<ColumnDefinition Width="Auto"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
<Button Content="+"
|
||||
</Grid>-->
|
||||
</TabItem.Content>
|
||||
</TabItem>
|
||||
<!--<TabItem Header="Variabili">
|
||||
<TabItem.Content>
|
||||
<Grid>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="Auto"/>
|
||||
<RowDefinition Height="1*"/>
|
||||
</Grid.RowDefinitions>
|
||||
<Grid Grid.Row="0" Margin="5">
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="1*"/>
|
||||
<ColumnDefinition Width="1*"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
<Grid Grid.Column="0" Margin="5">
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="1*"/>
|
||||
<ColumnDefinition Width="1*"/>
|
||||
<ColumnDefinition Width="Auto"/>
|
||||
<ColumnDefinition Width="Auto"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
<Button Content="+"
|
||||
Grid.Column="2"
|
||||
Command="{Binding AddVariable_Command}"
|
||||
Style="{StaticResource ToolBar_SmallButton}"/>
|
||||
<Button Content="-"
|
||||
<Button Content="-"
|
||||
Grid.Column="3"
|
||||
Command="{Binding RemoveVariable_Command}"
|
||||
Style="{StaticResource ToolBar_SmallButton}"/>
|
||||
</Grid>
|
||||
</Grid>
|
||||
<Grid Grid.Row="1">
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="1*"/>
|
||||
<ColumnDefinition Width="1*"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="1*"/>
|
||||
</Grid.RowDefinitions>
|
||||
<EgtBEAMWALLCORE:EgtDataGrid
|
||||
</Grid>
|
||||
</Grid>
|
||||
<Grid Grid.Row="1">
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="1*"/>
|
||||
<ColumnDefinition Width="1*"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="1*"/>
|
||||
</Grid.RowDefinitions>
|
||||
<EgtBEAMWALLCORE:EgtDataGrid
|
||||
ItemsSource="{Binding VariablesList}"
|
||||
SelectedItem="{Binding SelVariable}"
|
||||
CanUserAddRows="False"
|
||||
@@ -246,58 +192,58 @@
|
||||
ScrollViewer.HorizontalScrollBarVisibility="Auto"
|
||||
Margin="5"
|
||||
BindingColumns="{Binding VariablesColumns}">
|
||||
<DataGrid.Resources>
|
||||
<!-- Name -->
|
||||
<DataGridTextColumn x:Key="colNAME" Binding="{Binding sName}">
|
||||
<DataGridTextColumn.HeaderTemplate>
|
||||
<DataTemplate>
|
||||
<TextBlock Text="{Binding Path=DataContext.Name_Msg,RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:ConfigurationPageV}}}"/>
|
||||
</DataTemplate>
|
||||
</DataGridTextColumn.HeaderTemplate>
|
||||
</DataGridTextColumn>
|
||||
<!-- VariablePath -->
|
||||
<DataGridTextColumn x:Key="colVARPATH" Binding="{Binding sVarPath}">
|
||||
<DataGridTextColumn.HeaderTemplate>
|
||||
<DataTemplate>
|
||||
<TextBlock Text="{Binding Path=DataContext.VarPath_Msg,RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:ConfigurationPageV}}}"/>
|
||||
</DataTemplate>
|
||||
</DataGridTextColumn.HeaderTemplate>
|
||||
</DataGridTextColumn>
|
||||
<!-- Type -->
|
||||
<DataGridComboBoxColumn x:Key="colTYPE">
|
||||
<DataGridComboBoxColumn.HeaderTemplate>
|
||||
<DataTemplate>
|
||||
<TextBlock Text="{Binding Path=DataContext.Type_Msg,RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:ConfigurationPageV}}}"/>
|
||||
</DataTemplate>
|
||||
</DataGridComboBoxColumn.HeaderTemplate>
|
||||
<DataGridComboBoxColumn.ElementStyle>
|
||||
<Style TargetType="ComboBox">
|
||||
<Setter Property="ItemsSource" Value="{Binding TypeList}"/>
|
||||
<Setter Property="SelectedItem" Value="{Binding SelType, UpdateSourceTrigger=PropertyChanged}" />
|
||||
</Style>
|
||||
</DataGridComboBoxColumn.ElementStyle>
|
||||
<DataGridComboBoxColumn.EditingElementStyle>
|
||||
<Style TargetType="ComboBox">
|
||||
<Setter Property="ItemsSource" Value="{Binding TypeList}"/>
|
||||
<Setter Property="SelectedItem" Value="{Binding SelType, UpdateSourceTrigger=PropertyChanged}" />
|
||||
</Style>
|
||||
</DataGridComboBoxColumn.EditingElementStyle>
|
||||
</DataGridComboBoxColumn>
|
||||
</DataGrid.Resources>
|
||||
</EgtBEAMWALLCORE:EgtDataGrid>
|
||||
</Grid>
|
||||
</Grid>
|
||||
</TabItem.Content>
|
||||
</TabItem>
|
||||
</TabControl>
|
||||
|
||||
<Button Command="{Binding SaveCommand}"
|
||||
<DataGrid.Resources>
|
||||
--><!-- Name --><!--
|
||||
<DataGridTextColumn x:Key="colNAME" Binding="{Binding sName}">
|
||||
<DataGridTextColumn.HeaderTemplate>
|
||||
<DataTemplate>
|
||||
<TextBlock Text="{Binding Path=DataContext.Name_Msg,RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:ConfigurationPageV}}}"/>
|
||||
</DataTemplate>
|
||||
</DataGridTextColumn.HeaderTemplate>
|
||||
</DataGridTextColumn>
|
||||
--><!-- VariablePath --><!--
|
||||
<DataGridTextColumn x:Key="colVARPATH" Binding="{Binding sVarPath}">
|
||||
<DataGridTextColumn.HeaderTemplate>
|
||||
<DataTemplate>
|
||||
<TextBlock Text="{Binding Path=DataContext.VarPath_Msg,RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:ConfigurationPageV}}}"/>
|
||||
</DataTemplate>
|
||||
</DataGridTextColumn.HeaderTemplate>
|
||||
</DataGridTextColumn>
|
||||
--><!-- Type --><!--
|
||||
<DataGridComboBoxColumn x:Key="colTYPE">
|
||||
<DataGridComboBoxColumn.HeaderTemplate>
|
||||
<DataTemplate>
|
||||
<TextBlock Text="{Binding Path=DataContext.Type_Msg,RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:ConfigurationPageV}}}"/>
|
||||
</DataTemplate>
|
||||
</DataGridComboBoxColumn.HeaderTemplate>
|
||||
<DataGridComboBoxColumn.ElementStyle>
|
||||
<Style TargetType="ComboBox">
|
||||
<Setter Property="ItemsSource" Value="{Binding TypeList}"/>
|
||||
<Setter Property="SelectedItem" Value="{Binding SelType, UpdateSourceTrigger=PropertyChanged}" />
|
||||
</Style>
|
||||
</DataGridComboBoxColumn.ElementStyle>
|
||||
<DataGridComboBoxColumn.EditingElementStyle>
|
||||
<Style TargetType="ComboBox">
|
||||
<Setter Property="ItemsSource" Value="{Binding TypeList}"/>
|
||||
<Setter Property="SelectedItem" Value="{Binding SelType, UpdateSourceTrigger=PropertyChanged}" />
|
||||
</Style>
|
||||
</DataGridComboBoxColumn.EditingElementStyle>
|
||||
</DataGridComboBoxColumn>
|
||||
</DataGrid.Resources>
|
||||
</EgtBEAMWALLCORE:EgtDataGrid>
|
||||
</Grid>
|
||||
</Grid>
|
||||
</TabItem.Content>
|
||||
</TabItem>-->
|
||||
</TabControl>
|
||||
|
||||
<!--<Button Command="{Binding SaveCommand}"
|
||||
ToolTip="{Binding SaveToolTip}"
|
||||
Grid.Row="1"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource OptionPanel_Button}">
|
||||
<Image Source="/Resources/ProjectManager/Save.png" Stretch="Uniform"/>
|
||||
</Button>
|
||||
|
||||
</Grid>
|
||||
<Image Source="/Resources/ProjectManager/Save.png" Stretch="Uniform"/>
|
||||
</Button>-->
|
||||
|
||||
</Grid>
|
||||
</DockPanel>
|
||||
|
||||
@@ -1,5 +1,4 @@
|
||||
Imports System.Collections.ObjectModel
|
||||
Imports System.IO
|
||||
Imports EgtUILib
|
||||
Imports EgtWPFLib5
|
||||
Imports EgtBEAMWALL.Core
|
||||
@@ -7,10 +6,37 @@ Imports EgtBEAMWALL.Core
|
||||
Public Class ConfigurationPageVM
|
||||
Inherits VMBase
|
||||
|
||||
' Definizione comandi
|
||||
Private m_cmdSave As ICommand
|
||||
Private m_cmdAddVariable As ICommand
|
||||
Private m_cmdRemoveVariable As ICommand
|
||||
Public Enum ConfigSubPages As Integer
|
||||
GENERAL = 0
|
||||
MACHINE = 1
|
||||
VARIABLE = 2
|
||||
End Enum
|
||||
|
||||
Private m_SelConfigSubPage As ConfigSubPages = ConfigSubPages.GENERAL
|
||||
Public Property SelConfigSubPage As Integer
|
||||
Get
|
||||
Return m_SelConfigSubPage
|
||||
End Get
|
||||
Set(value As Integer)
|
||||
m_SelConfigSubPage = value
|
||||
If m_SelConfigSubPage = ConfigSubPages.GENERAL Then
|
||||
m_bGeneral_Visibility = Visibility.Visible
|
||||
m_bMachine_Visibility = Visibility.Collapsed
|
||||
ElseIf m_SelConfigSubPage = ConfigSubPages.MACHINE Then
|
||||
m_bMachine_Visibility = Visibility.Visible
|
||||
m_bGeneral_Visibility = Visibility.Collapsed
|
||||
End If
|
||||
NotifyPropertyChanged(NameOf(General_Visibility))
|
||||
NotifyPropertyChanged(NameOf(Machine_Visibility))
|
||||
End Set
|
||||
End Property
|
||||
|
||||
Public ReadOnly Property MachinePanelVM As MachinePanelVM
|
||||
Get
|
||||
Return Map.refMachinePanelVM
|
||||
End Get
|
||||
End Property
|
||||
|
||||
|
||||
' Contatore delle variabili rimosse per successiva rimozione dal file INI
|
||||
Friend m_RemovedVarsCount As Integer = 0
|
||||
@@ -85,6 +111,88 @@ Public Class ConfigurationPageVM
|
||||
End Set
|
||||
End Property
|
||||
|
||||
Private m_bGeneral_Visibility As Visibility = Visibility.Visible
|
||||
Public Property General_Visibility As Visibility
|
||||
Get
|
||||
Return m_bGeneral_Visibility
|
||||
End Get
|
||||
Set(value As Visibility)
|
||||
m_bGeneral_Visibility = value
|
||||
NotifyPropertyChanged(NameOf(General_Visibility))
|
||||
End Set
|
||||
End Property
|
||||
|
||||
Private m_bMachine_Visibility As Visibility = Visibility.Collapsed
|
||||
Public Property Machine_Visibility As Visibility
|
||||
Get
|
||||
Return m_bMachine_Visibility
|
||||
End Get
|
||||
Set(value As Visibility)
|
||||
m_bMachine_Visibility = value
|
||||
NotifyPropertyChanged(NameOf(Machine_Visibility))
|
||||
End Set
|
||||
End Property
|
||||
|
||||
Private m_SectionTime As Double
|
||||
Public Property SectionTime As String
|
||||
Get
|
||||
Return DoubleToString(m_SectionTime, 5)
|
||||
End Get
|
||||
Set(value As String)
|
||||
Dim dVal As Double = 0
|
||||
If StringToDoubleAdv(value, dVal, True) AndAlso dVal > 0 Then
|
||||
m_SectionTime = dVal
|
||||
End If
|
||||
End Set
|
||||
End Property
|
||||
|
||||
Private m_PartTime As Double
|
||||
Public Property PartTime As String
|
||||
Get
|
||||
Return DoubleToString(m_PartTime, 5)
|
||||
End Get
|
||||
Set(value As String)
|
||||
Dim dVal As Double = 0
|
||||
If StringToDoubleAdv(value, dVal, True) AndAlso dVal > 0 Then
|
||||
m_PartTime = dVal
|
||||
End If
|
||||
End Set
|
||||
End Property
|
||||
|
||||
Private m_ReminderList As New List(Of IdNameStruct)({New IdNameStruct(0, EgtMsg(61988)), New IdNameStruct(1, EgtMsg(61989)), New IdNameStruct(2, EgtMsg(61990)), New IdNameStruct(7, EgtMsg(61991)), New IdNameStruct(14, EgtMsg(61992)), New IdNameStruct(30, EgtMsg(61993))})
|
||||
Public ReadOnly Property ReminderList As List(Of IdNameStruct)
|
||||
Get
|
||||
Return m_ReminderList
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Private m_SelReminder As IdNameStruct
|
||||
Public Property SelReminder As IdNameStruct
|
||||
Get
|
||||
Return m_SelReminder
|
||||
End Get
|
||||
Set(value As IdNameStruct)
|
||||
m_SelReminder = value
|
||||
WriteMainPrivateProfileString(S_BACKUPANDRESTORE, K_REMINDERFREQUENCY, m_SelReminder.Id)
|
||||
End Set
|
||||
End Property
|
||||
|
||||
Private m_ConfigMachTableList As New ObservableCollection(Of MachTable)
|
||||
Public Property ConfigMachTableList As ObservableCollection(Of MachTable)
|
||||
Get
|
||||
Return m_ConfigMachTableList
|
||||
End Get
|
||||
Set(value As ObservableCollection(Of MachTable))
|
||||
m_ConfigMachTableList = value
|
||||
End Set
|
||||
End Property
|
||||
|
||||
|
||||
' Definizione comandi
|
||||
Private m_cmdSave As ICommand
|
||||
Private m_cmdAddVariable As ICommand
|
||||
Private m_cmdRemoveVariable As ICommand
|
||||
|
||||
#Region "Messages"
|
||||
|
||||
Public ReadOnly Property L_Msg As String
|
||||
@@ -209,6 +317,41 @@ Public Class ConfigurationPageVM
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Public ReadOnly Property General_Msg As String
|
||||
Get
|
||||
Return EgtMsg(62535)
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Public ReadOnly Property Machine_Msg As String
|
||||
Get
|
||||
Return EgtMsg(62537)
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Public ReadOnly Property SectionTime_Msg As String
|
||||
Get
|
||||
Return EgtMsg(61806)
|
||||
End Get
|
||||
End Property
|
||||
Public ReadOnly Property PartTime_Msg As String
|
||||
Get
|
||||
Return EgtMsg(61807)
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Public ReadOnly Property Nesting_Msg As String
|
||||
Get
|
||||
Return EgtMsg(61829)
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Public ReadOnly Property PrintLabel_Msg As String
|
||||
Get
|
||||
Return EgtMsg(61894)
|
||||
End Get
|
||||
End Property
|
||||
|
||||
#End Region ' Messages
|
||||
|
||||
#Region "Constructor"
|
||||
@@ -244,6 +387,13 @@ Public Class ConfigurationPageVM
|
||||
GetPrivateProfileColumns(S_VARIABLESLIST, VariablesColumns)
|
||||
' carico le Variables della macchina
|
||||
LoadVariables()
|
||||
' leggo SectionTime e PartTime
|
||||
GetMainPrivateProfileString(S_NEST, K_SECTIONTIME, "", SectionTime)
|
||||
GetMainPrivateProfileString(S_NEST, K_PARTTIME, "", PartTime)
|
||||
' assegno le liste dei parametri della macchina corrente alla ConfigMachTableList alla pagina di Configurazione
|
||||
ConfigMachTableList = CurrentMachine.MachTableList
|
||||
Dim nDefaultReminderFrequency As Integer = GetMainPrivateProfileInt(S_BACKUPANDRESTORE, K_REMINDERFREQUENCY, 1)
|
||||
SelReminder = m_ReminderList.FirstOrDefault(Function(x) x.Id = nDefaultReminderFrequency)
|
||||
End Sub
|
||||
|
||||
#End Region ' Constructor
|
||||
@@ -407,11 +557,196 @@ Public Class ConfigVariable
|
||||
|
||||
End Class
|
||||
|
||||
'' Tipo parametro nel file di configurazione Macchina
|
||||
'Public Enum MachParamType As Integer
|
||||
' DOUBLE_ = 1
|
||||
' STRING_ = 2
|
||||
' COMBO = 3
|
||||
' LENGTH = 4
|
||||
' CHECKBOX = 5
|
||||
'End Enum
|
||||
Public Class MachParam
|
||||
Inherits VMBase
|
||||
|
||||
' table a cui appartiene il parametro
|
||||
Private m_nParentTable As Integer
|
||||
Friend ReadOnly Property nParentTable As Integer
|
||||
Get
|
||||
Return m_nParentTable
|
||||
End Get
|
||||
End Property
|
||||
|
||||
' indice del parametro
|
||||
Private m_nParamIndex As Integer
|
||||
Friend ReadOnly Property nParamIndex As Integer
|
||||
Get
|
||||
Return m_nParamIndex
|
||||
End Get
|
||||
End Property
|
||||
|
||||
' tipo della variabile
|
||||
Private m_nType As MachParamType
|
||||
Friend ReadOnly Property nType As MachParamType
|
||||
Get
|
||||
Return m_nType
|
||||
End Get
|
||||
End Property
|
||||
|
||||
' parametri da struttura
|
||||
Private m_sName As String
|
||||
Public Property sName As String
|
||||
Get
|
||||
Return m_sName
|
||||
End Get
|
||||
Set(value As String)
|
||||
m_sName = value
|
||||
End Set
|
||||
End Property
|
||||
|
||||
' parametri da geometria
|
||||
Private m_IsModifiedValue As Boolean = False
|
||||
Private m_dValue As Double
|
||||
Private m_sValue As String
|
||||
Public Property sValue As String
|
||||
Get
|
||||
Select Case nType
|
||||
Case MachParamType.DOUBLE_
|
||||
Return DoubleToString(m_dValue, 3)
|
||||
Case MachParamType.LENGTH
|
||||
Return LenToString(m_dValue, 3)
|
||||
Case Else ' stringhe
|
||||
Return m_sValue
|
||||
End Select
|
||||
Return If(nType = MachParamType.LENGTH, LenToString(m_dValue, 3), DoubleToString(m_dValue, 3))
|
||||
End Get
|
||||
Set(value As String)
|
||||
Dim dNewValue As Double
|
||||
' verifico se valore immesso è diverso dall'originale
|
||||
If nParentTable > 0 Then
|
||||
' trasformo valori
|
||||
Select Case nType
|
||||
Case MachParamType.DOUBLE_
|
||||
StringToDoubleAdv(value, dNewValue, True)
|
||||
m_IsModifiedValue = Math.Abs(dNewValue - m_dValue) > EPS_SMALL
|
||||
Case MachParamType.LENGTH
|
||||
StringToLenAdv(value, dNewValue, True)
|
||||
m_IsModifiedValue = Math.Abs(dNewValue - m_dValue) > EPS_SMALL
|
||||
Case Else
|
||||
m_IsModifiedValue = String.Compare(value, m_sValue) <> 0
|
||||
End Select
|
||||
End If
|
||||
' se valore immesso è diverso e password non inserita
|
||||
'If m_IsModifiedValue AndAlso Not Map.refConfigurationPageVM.bModifyMachParam Then
|
||||
' Map.refConfigurationPageVM.bModifyMachParam = Map.refConfigurationPageVM.VerifyConfigPagePassword()
|
||||
' If Not Map.refConfigurationPageVM.bModifyMachParam Then
|
||||
' NotifyPropertyChanged("sValue")
|
||||
' m_IsModifiedValue = False
|
||||
' Return
|
||||
' End If
|
||||
'End If
|
||||
|
||||
Select Case nType
|
||||
Case MachParamType.DOUBLE_, MachParamType.LENGTH
|
||||
UpdateParamValue(dNewValue, "")
|
||||
Case Else
|
||||
UpdateParamValue(0, value)
|
||||
End Select
|
||||
End Set
|
||||
End Property
|
||||
Public Property dValue As Double
|
||||
Get
|
||||
Return m_dValue
|
||||
End Get
|
||||
Set(value As Double)
|
||||
m_dValue = value
|
||||
NotifyPropertyChanged("sValue")
|
||||
End Set
|
||||
End Property
|
||||
|
||||
' descrizione del parametro
|
||||
Private m_sDescription As String
|
||||
Public Property sDescription As String
|
||||
Get
|
||||
Return m_sDescription
|
||||
End Get
|
||||
Set(value As String)
|
||||
m_sDescription = value
|
||||
End Set
|
||||
End Property
|
||||
|
||||
Private Sub StdInit(nParentTable As Integer, nParamIndex As Integer, Type As MachParamType, sName As String, sDescription As String)
|
||||
m_nParentTable = nParentTable
|
||||
m_nParamIndex = nParamIndex
|
||||
m_nType = Type
|
||||
m_sName = sName
|
||||
m_sDescription = MsgToString(sDescription)
|
||||
End Sub
|
||||
|
||||
' new per double e length
|
||||
Sub New(nParentTable As Integer, nParamIndex As Integer, nType As MachParamType, sParamName As String, dValue As Double, sDescription As String)
|
||||
StdInit(nParentTable, nParamIndex, nType, sParamName, sDescription)
|
||||
m_dValue = dValue 'sValue = DoubleToString(dValue, 3)
|
||||
End Sub
|
||||
|
||||
' new per stringhe
|
||||
Sub New(nParentTable As Integer, nParamIndex As Integer, nType As MachParamType, sParamName As String, sDescription As String)
|
||||
StdInit(nParentTable, nParamIndex, nType, sParamName, sDescription)
|
||||
End Sub
|
||||
|
||||
' new per parametro vuoto
|
||||
Sub New(nType As MachParamType, nParamIndex As Integer, sParamName As String)
|
||||
StdInit(Nothing, nParamIndex, nType, sParamName, "")
|
||||
End Sub
|
||||
|
||||
Friend Sub UpdateParamValue(dNewValue As Double, sNewValue As String, Optional bDraw As Boolean = True)
|
||||
Select Case nType
|
||||
Case MachParamType.DOUBLE_, MachParamType.LENGTH
|
||||
m_dValue = dNewValue
|
||||
Case MachParamType.STRING_
|
||||
m_sValue = sNewValue
|
||||
End Select
|
||||
End Sub
|
||||
|
||||
Public ReadOnly Property IsModified() As Boolean
|
||||
Get
|
||||
Return m_IsModifiedValue
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Public Sub IsModifiedReset()
|
||||
m_IsModifiedValue = False
|
||||
End Sub
|
||||
|
||||
End Class
|
||||
|
||||
Public Class MachTable
|
||||
Inherits VMBase
|
||||
|
||||
' nome della table
|
||||
Private m_sName As String
|
||||
Public Property sName As String
|
||||
Get
|
||||
Return m_sName
|
||||
End Get
|
||||
Set(value As String)
|
||||
m_sName = value
|
||||
End Set
|
||||
End Property
|
||||
|
||||
Private m_MachParamList As New ObservableCollection(Of MachParam)
|
||||
Public Property MachParamList As ObservableCollection(Of MachParam)
|
||||
Get
|
||||
Return m_MachParamList
|
||||
End Get
|
||||
Set(value As ObservableCollection(Of MachParam))
|
||||
m_MachParamList = value
|
||||
End Set
|
||||
End Property
|
||||
|
||||
Sub New(Name As String, ParamList As ObservableCollection(Of MachParam))
|
||||
sName = Name
|
||||
MachParamList = ParamList
|
||||
End Sub
|
||||
|
||||
End Class
|
||||
|
||||
' Tipo parametro nel file di configurazione Macchina
|
||||
Public Enum MachParamType As Integer
|
||||
DOUBLE_ = 1
|
||||
STRING_ = 2
|
||||
COMBO = 3
|
||||
LENGTH = 4
|
||||
CHECKBOX = 5
|
||||
End Enum
|
||||
|
||||
@@ -332,6 +332,7 @@
|
||||
<DependentUpon>MachineLogPageV.xaml</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="MachineLogPage\MachineLogPageVM.vb" />
|
||||
<Compile Include="MachinePanel\MachinePanelVM.vb" />
|
||||
<Compile Include="MDIPage\MDIPageV.xaml.vb">
|
||||
<DependentUpon>MDIPageV.xaml</DependentUpon>
|
||||
</Compile>
|
||||
@@ -373,10 +374,6 @@
|
||||
<Compile Include="MachGroupPanel\PartVM.vb" />
|
||||
<Compile Include="MachGroupPanel\SupervisorMachGroupPanelVM.vb" />
|
||||
<Compile Include="MachGroupPanel\MyMachGroupPanelVM.vb" />
|
||||
<Compile Include="MachinePanel\MachinePanelV.xaml.vb">
|
||||
<DependentUpon>MachinePanelV.xaml</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="MachinePanel\MachinePanelVM.vb" />
|
||||
<Compile Include="MachManagingThread\MachCommConst.vb" />
|
||||
<Compile Include="MachManagingThread\MachManaging.vb" />
|
||||
<Compile Include="MachManagingThread\MachManagingThread.vb" />
|
||||
@@ -416,6 +413,7 @@
|
||||
<Compile Include="Utility\DisableModifiedMgr.vb" />
|
||||
<Compile Include="Utility\LogEvent.vb" />
|
||||
<Compile Include="Utility\LuaExec.vb" />
|
||||
<Compile Include="Utility\MachParamIniFile.vb" />
|
||||
<Compile Include="Utility\ManageBTLParts.vb" />
|
||||
<Compile Include="Utility\Map.vb" />
|
||||
<Compile Include="VariablesList\VariablesListV.xaml.vb">
|
||||
@@ -484,10 +482,6 @@
|
||||
<SubType>Designer</SubType>
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
</Page>
|
||||
<Page Include="MachinePanel\MachinePanelV.xaml">
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
<SubType>Designer</SubType>
|
||||
</Page>
|
||||
<Page Include="MainMenu\MainMenuV.xaml">
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
<SubType>Designer</SubType>
|
||||
@@ -670,6 +664,10 @@
|
||||
<Install>false</Install>
|
||||
</BootstrapperPackage>
|
||||
</ItemGroup>
|
||||
<ItemGroup />
|
||||
<ItemGroup>
|
||||
<Resource Include="Resources\Configuration\MachiningsTable.png" />
|
||||
</ItemGroup>
|
||||
<Import Project="$(MSBuildToolsPath)\Microsoft.VisualBasic.targets" />
|
||||
<Target Name="EnsureNuGetPackageBuildImports" BeforeTargets="PrepareForBuild">
|
||||
<PropertyGroup>
|
||||
|
||||
@@ -16,8 +16,7 @@
|
||||
<Button Command="{Binding MachDbCommand}" ToolTip="{Binding MachiningDbToolTip}"
|
||||
Style="{StaticResource ToolBar_TextButton}" Width="55" Content="{Binding MachiningDbMsg}"/>
|
||||
<Button Command="{Binding SetUpCommand}" ToolTip="{Binding SetUpToolTip}"
|
||||
Style="{StaticResource ToolBar_TextButton}" Width="55" Content="{Binding SetUpMsg}"
|
||||
Background="{Binding SetUp_Background}"/>
|
||||
Style="{StaticResource ToolBar_TextButton}" Width="55" Content="{Binding SetUpMsg}"/>
|
||||
<!--<Button Command="{Binding MachOptionsCommand}" ToolTip="{Binding OptionsToolTip}">
|
||||
<Image Source="/Resources/ProjectManager/Options.png" Height="22" />
|
||||
</Button>-->
|
||||
|
||||
@@ -1,58 +1,50 @@
|
||||
Imports System.Collections.ObjectModel
|
||||
Imports System.IO
|
||||
Imports System.IO
|
||||
Imports EgtBEAMWALL.Core
|
||||
Imports EgtUILib
|
||||
Imports EgtWPFLib5
|
||||
|
||||
Public Class MachinePanelVM
|
||||
Inherits VMBase
|
||||
Inherits EgtWPFLib5.MachinePanelVM
|
||||
|
||||
#Region "FIELDS & PROPERTIES"
|
||||
|
||||
' Radice del direttorio delle macchine
|
||||
Private m_sMachinesRoot As String
|
||||
|
||||
' Lista delle macchine disponibili
|
||||
Private m_MachineList As New ObservableCollection(Of Machine)
|
||||
Public Property MachineList As ObservableCollection(Of Machine)
|
||||
Get
|
||||
Return m_MachineList
|
||||
End Get
|
||||
Set(value As ObservableCollection(Of Machine))
|
||||
m_MachineList = value
|
||||
End Set
|
||||
End Property
|
||||
' Macchina correntemente selezionata e quindi attiva
|
||||
Private m_SelectedMachine As Machine = Nothing
|
||||
Public Property SelectedMachine As MyMachine
|
||||
Public Overrides Property SelectedMachine As Machine
|
||||
Get
|
||||
Return m_SelectedMachine
|
||||
End Get
|
||||
Set(value As MyMachine)
|
||||
Set(value As Machine)
|
||||
If value IsNot m_SelectedMachine Then
|
||||
'EgtSetCurrentContext(Map.refSceneHostVM.MainScene.GetCtx())
|
||||
'EgtResetCurrMachGroup()
|
||||
' se sono in modalità disegno
|
||||
m_SelectedMachine = value
|
||||
' imposto macchina in DbGeometrico
|
||||
If Not IsNothing(value) AndAlso EgtSetCurrMachine(value.Name) Then
|
||||
m_SelectedMachine = value
|
||||
End If
|
||||
' Salvo impostazione macchina corrente
|
||||
SaveCurrentMachine()
|
||||
NotifyPropertyChanged(NameOf(SelectedMachine))
|
||||
' inizializzo la macchina selezionata come macchina corrente
|
||||
Dim nMachType As MachineType = DirectCast(m_SelectedMachine, MyMachine).nType
|
||||
SectionXMaterial.SetType(nMachType)
|
||||
InitCurrentMachine(Map.refMainWindowVM.MainWindowM.sMachinesRoot, value.Name, nMachType)
|
||||
If Not IsNothing(value) Then
|
||||
InitCurrentMachine(Map.refMainWindowVM.MainWindowM.sMachinesRoot, value.Name, nMachType)
|
||||
Else
|
||||
InitCurrentMachine(Map.refMainWindowVM.MainWindowM.sMachinesRoot, m_SelectedMachine.Name, nMachType)
|
||||
End If
|
||||
' mostro bottone tabella beam o wall a seconda del tipo
|
||||
m_BeamTable_Visibility = If(nMachType = MachineType.BEAM OrElse nMachType = MachineType.BOTH, Visibility.Visible, Visibility.Collapsed)
|
||||
m_WallTable_Visibility = If(nMachType = MachineType.WALL OrElse nMachType = MachineType.BOTH, Visibility.Visible, Visibility.Collapsed)
|
||||
NotifyPropertyChanged(NameOf(BeamTable_Visibility))
|
||||
NotifyPropertyChanged(NameOf(WallTable_Visibility))
|
||||
' aggiorno nome macchina in statusbar
|
||||
Map.refMyStatusBarVM.RefreshMachName()
|
||||
End If
|
||||
End Set
|
||||
End Property
|
||||
|
||||
Private m_SetUp_Background As Brush = New BrushConverter().ConvertFrom("#FFDDDDDD")
|
||||
Public Property SetUp_Background As Brush
|
||||
Get
|
||||
Return m_SetUp_Background
|
||||
End Get
|
||||
Set(value As Brush)
|
||||
m_SetUp_Background = value
|
||||
NotifyPropertyChanged("SetUp_Background")
|
||||
End Set
|
||||
End Property
|
||||
|
||||
Private m_MachPanel_IsEnabled As Boolean = True
|
||||
Public Property MachPanel_IsEnabled As Boolean
|
||||
Get
|
||||
@@ -60,10 +52,30 @@ Public Class MachinePanelVM
|
||||
End Get
|
||||
Set(value As Boolean)
|
||||
m_MachPanel_IsEnabled = value
|
||||
NotifyPropertyChanged("MachPanel_IsEnabled")
|
||||
NotifyPropertyChanged(NameOf(MachPanel_IsEnabled))
|
||||
End Set
|
||||
End Property
|
||||
|
||||
Private m_BeamTable_Visibility As Visibility
|
||||
Public ReadOnly Property BeamTable_Visibility As Visibility
|
||||
Get
|
||||
Return m_BeamTable_Visibility
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Private m_WallTable_Visibility As Visibility
|
||||
Public ReadOnly Property WallTable_Visibility As Visibility
|
||||
Get
|
||||
Return m_WallTable_Visibility
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Public ReadOnly Property SetUp_Visibility As Visibility
|
||||
Get
|
||||
Return If(Map.refMainWindowVM.MainWindowM.bModifySetup, Visibility.Visible, Visibility.Collapsed)
|
||||
End Get
|
||||
End Property
|
||||
|
||||
#Region "Messages"
|
||||
|
||||
Public ReadOnly Property ToolDBMsg As String
|
||||
@@ -88,27 +100,25 @@ Public Class MachinePanelVM
|
||||
|
||||
Public ReadOnly Property ToolDBToolTip As String
|
||||
Get
|
||||
Return "Tool DB"
|
||||
Return EgtMsg(5003)
|
||||
End Get
|
||||
End Property
|
||||
Public ReadOnly Property MachiningDbToolTip As String
|
||||
Get
|
||||
Return "Machining DB"
|
||||
Return EgtMsg(5004)
|
||||
End Get
|
||||
End Property
|
||||
Public ReadOnly Property SetUpToolTip As String
|
||||
Get
|
||||
Return "SetUp"
|
||||
Return EgtMsg(31501)
|
||||
End Get
|
||||
End Property
|
||||
|
||||
#End Region ' ToolTip
|
||||
|
||||
' Definizione comandi
|
||||
Private m_cmdToolDb As ICommand
|
||||
Private m_cmdMachDb As ICommand
|
||||
Private m_cmdSetUp As ICommand
|
||||
Private m_cmdMachOptions As ICommand
|
||||
Private m_cmdBeamTable As ICommand
|
||||
Private m_cmdWallTable As ICommand
|
||||
|
||||
#End Region 'FIELDS & PROPERTIES
|
||||
|
||||
@@ -131,7 +141,7 @@ Public Class MachinePanelVM
|
||||
If MachineList.Count = 0 Then Return
|
||||
Dim CurrMachine As Machine = Nothing
|
||||
Dim CurrMachineName As String = String.Empty
|
||||
GetMainPrivateProfileString(S_MACH, K_SUPERVISORMACH, String.Empty, CurrMachineName)
|
||||
GetMainPrivateProfileString(S_MACH, K_CURRMACH, String.Empty, CurrMachineName)
|
||||
Dim bFound As Boolean = False
|
||||
If Not String.IsNullOrEmpty(CurrMachineName) Then
|
||||
For Each Mach In MachineList
|
||||
@@ -170,28 +180,45 @@ Public Class MachinePanelVM
|
||||
End If
|
||||
End Sub
|
||||
|
||||
#End Region
|
||||
Friend Function BeamMachDb() As Boolean
|
||||
' Assegno le path
|
||||
Dim sBaseDir As String = m_sMachinesRoot & "\" & m_SelectedMachine.Name & "\" & "Beam"
|
||||
' verifico se ci sono i file ini
|
||||
Dim sMachTypePath As String = sBaseDir & "\MachiningTypes.ini"
|
||||
Dim sTabTemplPath As String = sBaseDir & "\BeamTableTemplate.ini"
|
||||
If File.Exists(sMachTypePath) AndAlso File.Exists(sTabTemplPath) Then
|
||||
' apro finestra di gestione lavorazioni travi
|
||||
Dim sTitle = EgtMsg(9000) 'Tabelle delle lavorazioni delle travi
|
||||
Dim BeamMchsWinVM As New MyBeamMachiningsWindowVM(sTitle, sBaseDir, sMachTypePath, sTabTemplPath)
|
||||
Dim BeamMchsWinV As New BeamMachiningsWindowV(Application.Current.MainWindow, BeamMchsWinVM)
|
||||
BeamMchsWinV.ShowDialog()
|
||||
Else
|
||||
' Impossibile aprire l'Editor delle lavorazioni delle travi.<br/>Mancano i file di configurazione. - Errore
|
||||
MessageBox.Show(EgtMsg(9009), EgtMsg(9008), MessageBoxButton.OK, MessageBoxImage.Stop)
|
||||
End If
|
||||
Return True
|
||||
End Function
|
||||
|
||||
#Region "COMMANDS"
|
||||
Friend Function WallMachDb() As Boolean
|
||||
' Assegno le path
|
||||
Dim sBaseDir As String = m_sMachinesRoot & "\" & m_SelectedMachine.Name & "\" & "Wall"
|
||||
' verifico se ci sono i file ini
|
||||
Dim sMachTypePath As String = sBaseDir & "\MachiningTypes.ini"
|
||||
Dim sTabTemplPath As String = sBaseDir & "\WallTableTemplate.ini"
|
||||
If File.Exists(sMachTypePath) AndAlso File.Exists(sTabTemplPath) Then
|
||||
' apro finestra di gestione lavorazioni pareti
|
||||
Dim sTitle = EgtMsg(9010) 'Tabelle delle lavorazioni delle pareti
|
||||
Dim WallMchsWinVM As New MyBeamMachiningsWindowVM(sTitle, sBaseDir, sMachTypePath, sTabTemplPath, False)
|
||||
Dim WallMchsWinV As New BeamMachiningsWindowV(Application.Current.MainWindow, WallMchsWinVM)
|
||||
WallMchsWinV.ShowDialog()
|
||||
Else
|
||||
' Impossibile aprire l'Editor delle lavorazioni delle pareti.<br/>Mancano i file di configurazione. - Errore
|
||||
MessageBox.Show(EgtMsg(9011), EgtMsg(9008), MessageBoxButton.OK, MessageBoxImage.Stop)
|
||||
End If
|
||||
Return True
|
||||
End Function
|
||||
|
||||
#Region "ToolDbCommand"
|
||||
|
||||
''' <summary>
|
||||
''' Returns a command that do Exec.
|
||||
''' </summary>
|
||||
Public ReadOnly Property ToolDbCommand As ICommand
|
||||
Get
|
||||
If m_cmdToolDb Is Nothing Then
|
||||
m_cmdToolDb = New Command(AddressOf ToolDb)
|
||||
End If
|
||||
Return m_cmdToolDb
|
||||
End Get
|
||||
End Property
|
||||
|
||||
''' <summary>
|
||||
''' Execute the Exec. This method is invoked by the ExecCommand.
|
||||
''' </summary>
|
||||
Public Sub ToolDb(ByVal param As Object)
|
||||
Public Overrides Sub ToolDb(ByVal param As Object)
|
||||
If Not VerifyMachinesDir(m_sMachinesRoot) Then Return
|
||||
' ricarico il database per intercettare eventuali aggiornamenti fatti da altre istanze del programma (se la cartella Machines è condivisa)
|
||||
If Not EgtTdbReload() Then
|
||||
@@ -200,7 +227,7 @@ Public Class MachinePanelVM
|
||||
Return
|
||||
End If
|
||||
|
||||
Dim ToolDbWindowVM As New ToolDbWindowVM(CurrentMachine.sMachDir, CurrentMachine.sMachIniFile, Map.refSceneHostVM.MainScene.GetCtx(), "Beam")
|
||||
Dim ToolDbWindowVM As New EgtWPFLib5.ToolDbWindowVM(CurrentMachine.sMachDir, CurrentMachine.sMachIniFile, Map.refSceneHostVM.MainScene.GetCtx(), "Beam")
|
||||
Dim ToolDbWindowV As New ToolDbWindowV(Application.Current.MainWindow, ToolDbWindowVM)
|
||||
If ToolDbWindowVM.MatType <> 0 Then
|
||||
ToolDbWindowV.Height = 640
|
||||
@@ -217,26 +244,7 @@ Public Class MachinePanelVM
|
||||
End If
|
||||
End Sub
|
||||
|
||||
#End Region ' ToolDbCommand
|
||||
|
||||
#Region "MachDbCommand"
|
||||
|
||||
''' <summary>
|
||||
''' Returns a command that do Exec.
|
||||
''' </summary>
|
||||
Public ReadOnly Property MachDbCommand As ICommand
|
||||
Get
|
||||
If m_cmdMachDb Is Nothing Then
|
||||
m_cmdMachDb = New Command(AddressOf MachDb)
|
||||
End If
|
||||
Return m_cmdMachDb
|
||||
End Get
|
||||
End Property
|
||||
|
||||
''' <summary>
|
||||
''' Execute the Exec. This method is invoked by the ExecCommand.
|
||||
''' </summary>
|
||||
Public Sub MachDb(ByVal param As Object)
|
||||
Public Overrides Sub MachDb(ByVal param As Object)
|
||||
If Not VerifyMachinesDir(m_sMachinesRoot) Then Return
|
||||
' ricarico il database per intercettare eventuali aggiornamenti fatti da altre istanze del programma (se la cartella Machines è condivisa)
|
||||
If Not EgtMdbReload() Then
|
||||
@@ -257,26 +265,7 @@ Public Class MachinePanelVM
|
||||
|
||||
End Sub
|
||||
|
||||
#End Region ' MachDbCommand
|
||||
|
||||
#Region "SetUpCommand"
|
||||
|
||||
''' <summary>
|
||||
''' Returns a command that do Exec.
|
||||
''' </summary>
|
||||
Public ReadOnly Property SetUpCommand As ICommand
|
||||
Get
|
||||
If m_cmdSetUp Is Nothing Then
|
||||
m_cmdSetUp = New Command(AddressOf SetUp)
|
||||
End If
|
||||
Return m_cmdSetUp
|
||||
End Get
|
||||
End Property
|
||||
|
||||
''' <summary>
|
||||
''' Execute the Exec. This method is invoked by the ExecCommand.
|
||||
''' </summary>
|
||||
Public Sub SetUp(ByVal param As Object)
|
||||
Public Overrides Sub SetUp(ByVal param As Object)
|
||||
' verifico che il file di configurazione attrezzaggio (lua) della macchina esista
|
||||
If Not File.Exists(CurrentMachine.sMachDir & "\Scripts\" & SETUP_LUA) Then
|
||||
EgtOutLog("SetUp error: SetUp configuration file doesn't exist ")
|
||||
@@ -315,31 +304,389 @@ Public Class MachinePanelVM
|
||||
|
||||
End Sub
|
||||
|
||||
#End Region ' SetUpCommand
|
||||
#End Region
|
||||
|
||||
#Region "MachOptionsCommand"
|
||||
#Region "COMMANDS"
|
||||
|
||||
#Region "BeamTable"
|
||||
|
||||
''' <summary>
|
||||
''' Returns a command that do Exec.
|
||||
''' </summary>
|
||||
Public ReadOnly Property MachOptionsCommand As ICommand
|
||||
Public ReadOnly Property BeamTable_Command As ICommand
|
||||
Get
|
||||
If m_cmdMachOptions Is Nothing Then
|
||||
m_cmdMachOptions = New Command(AddressOf MachOptions)
|
||||
If m_cmdBeamTable Is Nothing Then
|
||||
m_cmdBeamTable = New Command(AddressOf BeamMachDb)
|
||||
End If
|
||||
Return m_cmdMachOptions
|
||||
Return m_cmdBeamTable
|
||||
End Get
|
||||
End Property
|
||||
|
||||
#End Region ' BeamTable
|
||||
|
||||
#Region "WallTable"
|
||||
|
||||
''' <summary>
|
||||
''' Execute the Exec. This method is invoked by the ExecCommand.
|
||||
''' Returns a command that do Exec.
|
||||
''' </summary>
|
||||
Public Sub MachOptions(ByVal param As Object)
|
||||
Public ReadOnly Property WallTable_Command As ICommand
|
||||
Get
|
||||
If m_cmdWallTable Is Nothing Then
|
||||
m_cmdWallTable = New Command(AddressOf WallMachDb)
|
||||
End If
|
||||
Return m_cmdWallTable
|
||||
End Get
|
||||
End Property
|
||||
|
||||
End Sub
|
||||
|
||||
#End Region ' MachOptionsCommand
|
||||
#End Region ' WallTable
|
||||
|
||||
#End Region ' COMMANDS
|
||||
|
||||
End Class
|
||||
|
||||
|
||||
'Imports System.Collections.ObjectModel
|
||||
'Imports System.IO
|
||||
'Imports EgtBEAMWALL.Core
|
||||
'Imports EgtUILib
|
||||
'Imports EgtWPFLib5
|
||||
|
||||
'Public Class MachinePanelVM
|
||||
' Inherits VMBase
|
||||
|
||||
'#Region "FIELDS & PROPERTIES"
|
||||
|
||||
' ' Radice del direttorio delle macchine
|
||||
' Private m_sMachinesRoot As String
|
||||
|
||||
' ' Lista delle macchine disponibili
|
||||
' Private m_MachineList As New ObservableCollection(Of Machine)
|
||||
' Public Property MachineList As ObservableCollection(Of Machine)
|
||||
' Get
|
||||
' Return m_MachineList
|
||||
' End Get
|
||||
' Set(value As ObservableCollection(Of Machine))
|
||||
' m_MachineList = value
|
||||
' End Set
|
||||
' End Property
|
||||
' ' Macchina correntemente selezionata e quindi attiva
|
||||
' Private m_SelectedMachine As Machine = Nothing
|
||||
' Public Property SelectedMachine As MyMachine
|
||||
' Get
|
||||
' Return m_SelectedMachine
|
||||
' End Get
|
||||
' Set(value As MyMachine)
|
||||
' If value IsNot m_SelectedMachine Then
|
||||
' 'EgtSetCurrentContext(Map.refSceneHostVM.MainScene.GetCtx())
|
||||
' 'EgtResetCurrMachGroup()
|
||||
' ' se sono in modalità disegno
|
||||
' m_SelectedMachine = value
|
||||
' ' inizializzo la macchina selezionata come macchina corrente
|
||||
' Dim nMachType As MachineType = DirectCast(m_SelectedMachine, MyMachine).nType
|
||||
' SectionXMaterial.SetType(nMachType)
|
||||
' InitCurrentMachine(Map.refMainWindowVM.MainWindowM.sMachinesRoot, value.Name, nMachType)
|
||||
' End If
|
||||
' End Set
|
||||
' End Property
|
||||
|
||||
' Private m_SetUp_Background As Brush = New BrushConverter().ConvertFrom("#FFDDDDDD")
|
||||
' Public Property SetUp_Background As Brush
|
||||
' Get
|
||||
' Return m_SetUp_Background
|
||||
' End Get
|
||||
' Set(value As Brush)
|
||||
' m_SetUp_Background = value
|
||||
' NotifyPropertyChanged("SetUp_Background")
|
||||
' End Set
|
||||
' End Property
|
||||
|
||||
' Private m_MachPanel_IsEnabled As Boolean = True
|
||||
' Public Property MachPanel_IsEnabled As Boolean
|
||||
' Get
|
||||
' Return m_MachPanel_IsEnabled
|
||||
' End Get
|
||||
' Set(value As Boolean)
|
||||
' m_MachPanel_IsEnabled = value
|
||||
' NotifyPropertyChanged("MachPanel_IsEnabled")
|
||||
' End Set
|
||||
' End Property
|
||||
|
||||
'#Region "Messages"
|
||||
|
||||
' Public ReadOnly Property ToolDBMsg As String
|
||||
' Get
|
||||
' Return EgtMsg(MSG_MACHINEPAGEUC + 6)
|
||||
' End Get
|
||||
' End Property
|
||||
' Public ReadOnly Property MachiningDbMsg As String
|
||||
' Get
|
||||
' Return EgtMsg(MSG_MACHINEPAGEUC + 7)
|
||||
' End Get
|
||||
' End Property
|
||||
' Public ReadOnly Property SetUpMsg As String
|
||||
' Get
|
||||
' Return EgtMsg(MSG_ALARMSPAGEUC + 33)
|
||||
' End Get
|
||||
' End Property
|
||||
|
||||
'#End Region ' Messages
|
||||
|
||||
'#Region "ToolTip"
|
||||
|
||||
' Public ReadOnly Property ToolDBToolTip As String
|
||||
' Get
|
||||
' Return "Tool DB"
|
||||
' End Get
|
||||
' End Property
|
||||
' Public ReadOnly Property MachiningDbToolTip As String
|
||||
' Get
|
||||
' Return "Machining DB"
|
||||
' End Get
|
||||
' End Property
|
||||
' Public ReadOnly Property SetUpToolTip As String
|
||||
' Get
|
||||
' Return "SetUp"
|
||||
' End Get
|
||||
' End Property
|
||||
|
||||
'#End Region ' ToolTip
|
||||
|
||||
' ' Definizione comandi
|
||||
' Private m_cmdToolDb As ICommand
|
||||
' Private m_cmdMachDb As ICommand
|
||||
' Private m_cmdSetUp As ICommand
|
||||
' Private m_cmdMachOptions As ICommand
|
||||
|
||||
'#End Region 'FIELDS & PROPERTIES
|
||||
|
||||
'#Region "CONSTRUCTOR"
|
||||
|
||||
' Sub New()
|
||||
' ' Creo riferimento a questa classe in Map
|
||||
' Map.SetRefMachinePanelVM(Me)
|
||||
' ' recupero cartella radice delle macchine
|
||||
' m_sMachinesRoot = Map.refMainWindowVM.MainWindowM.sMachinesRoot
|
||||
' ' Carica macchine da cartella delle macchine
|
||||
' MyMachine.MachineListInit(m_sMachinesRoot, MachineList)
|
||||
' End Sub
|
||||
|
||||
'#End Region ' CONSTRUCTOR
|
||||
|
||||
'#Region "METHODS"
|
||||
|
||||
' Friend Sub LoadCurrentMachine()
|
||||
' If MachineList.Count = 0 Then Return
|
||||
' Dim CurrMachine As Machine = Nothing
|
||||
' Dim CurrMachineName As String = String.Empty
|
||||
' GetMainPrivateProfileString(S_MACH, K_SUPERVISORMACH, String.Empty, CurrMachineName)
|
||||
' Dim bFound As Boolean = False
|
||||
' If Not String.IsNullOrEmpty(CurrMachineName) Then
|
||||
' For Each Mach In MachineList
|
||||
' If Mach.Name = CurrMachineName Then
|
||||
' bFound = True
|
||||
' CurrMachine = Mach
|
||||
' Exit For
|
||||
' End If
|
||||
' Next
|
||||
' End If
|
||||
' If Not bFound And MachineList.Count > 0 Then
|
||||
' CurrMachine = MachineList(0)
|
||||
' End If
|
||||
' If Not IsNothing(CurrMachine) Then
|
||||
' If EgtSetCurrMachine(CurrMachine.Name) Then
|
||||
' SelectedMachine = CurrMachine
|
||||
' End If
|
||||
' End If
|
||||
' End Sub
|
||||
|
||||
' Friend Sub SaveCurrentMachine()
|
||||
' If IsNothing(m_SelectedMachine) Then Return
|
||||
' WriteMainPrivateProfileString(S_MACH, K_CURRMACH, SelectedMachine.Name)
|
||||
' End Sub
|
||||
|
||||
' Friend Sub UpdateCurrentMachine()
|
||||
' 'EgtSetCurrentContext(IniFile.m_ProjectSceneContext)
|
||||
' Dim sMachName As String = String.Empty
|
||||
' If EgtGetCurrMachineName(sMachName) Then
|
||||
' For Each Mach In MachineList
|
||||
' If Mach.Name = sMachName Then
|
||||
' SelectedMachine = Mach
|
||||
' Exit For
|
||||
' End If
|
||||
' Next
|
||||
' End If
|
||||
' End Sub
|
||||
|
||||
'#End Region
|
||||
|
||||
'#Region "COMMANDS"
|
||||
|
||||
'#Region "ToolDbCommand"
|
||||
|
||||
' ''' <summary>
|
||||
' ''' Returns a command that do Exec.
|
||||
' ''' </summary>
|
||||
' Public ReadOnly Property ToolDbCommand As ICommand
|
||||
' Get
|
||||
' If m_cmdToolDb Is Nothing Then
|
||||
' m_cmdToolDb = New Command(AddressOf ToolDb)
|
||||
' End If
|
||||
' Return m_cmdToolDb
|
||||
' End Get
|
||||
' End Property
|
||||
|
||||
' ''' <summary>
|
||||
' ''' Execute the Exec. This method is invoked by the ExecCommand.
|
||||
' ''' </summary>
|
||||
' Public Sub ToolDb(ByVal param As Object)
|
||||
' If Not VerifyMachinesDir(m_sMachinesRoot) Then Return
|
||||
' ' ricarico il database per intercettare eventuali aggiornamenti fatti da altre istanze del programma (se la cartella Machines è condivisa)
|
||||
' If Not EgtTdbReload() Then
|
||||
' EgtOutLog("Impossible reloading tool Db")
|
||||
' MessageBox.Show(EgtMsg(MSG_TOOLDBERRORS + 30), EgtMsg(MSG_MESSAGEBOX + 1), MessageBoxButton.OK, MessageBoxImage.Error)
|
||||
' Return
|
||||
' End If
|
||||
|
||||
' Dim ToolDbWindowVM As New ToolDbWindowVM(CurrentMachine.sMachDir, CurrentMachine.sMachIniFile, Map.refSceneHostVM.MainScene.GetCtx(), "Beam")
|
||||
' Dim ToolDbWindowV As New ToolDbWindowV(Application.Current.MainWindow, ToolDbWindowVM)
|
||||
' If ToolDbWindowVM.MatType <> 0 Then
|
||||
' ToolDbWindowV.Height = 640
|
||||
' ToolDbWindowV.Width = 1024
|
||||
' ToolDbWindowV.ShowDialog()
|
||||
' Else
|
||||
' Exit Sub
|
||||
' End If
|
||||
|
||||
' If Not SetUpUtility.IsValidToolHeadExitInSetUp() Then
|
||||
' SetUp_Background = Brushes.Red
|
||||
' Else
|
||||
' SetUp_Background = OmagOFFICEDictionary.Button_Static_Background
|
||||
' End If
|
||||
' End Sub
|
||||
|
||||
'#End Region ' ToolDbCommand
|
||||
|
||||
'#Region "MachDbCommand"
|
||||
|
||||
' ''' <summary>
|
||||
' ''' Returns a command that do Exec.
|
||||
' ''' </summary>
|
||||
' Public ReadOnly Property MachDbCommand As ICommand
|
||||
' Get
|
||||
' If m_cmdMachDb Is Nothing Then
|
||||
' m_cmdMachDb = New Command(AddressOf MachDb)
|
||||
' End If
|
||||
' Return m_cmdMachDb
|
||||
' End Get
|
||||
' End Property
|
||||
|
||||
' ''' <summary>
|
||||
' ''' Execute the Exec. This method is invoked by the ExecCommand.
|
||||
' ''' </summary>
|
||||
' Public Sub MachDb(ByVal param As Object)
|
||||
' If Not VerifyMachinesDir(m_sMachinesRoot) Then Return
|
||||
' ' ricarico il database per intercettare eventuali aggiornamenti fatti da altre istanze del programma (se la cartella Machines è condivisa)
|
||||
' If Not EgtMdbReload() Then
|
||||
' EgtOutLog("Impossible reloading machining Db")
|
||||
' MessageBox.Show(EgtMsg(MSG_MACHININGDBERRORS + 8), EgtMsg(MSG_MESSAGEBOX + 1), MessageBoxButton.OK, MessageBoxImage.Error)
|
||||
' Return
|
||||
' End If
|
||||
' Dim MachDbWindowVM As New EgtWPFLib5.MachiningDbWindowVM(CurrentMachine.sMachIniFile, Map.refSceneHostVM.MainScene.GetCtx(), "Stone")
|
||||
' Dim MachDbWindowV As New EgtWPFLib5.MachiningDbWindowV(Application.Current.MainWindow, MachDbWindowVM)
|
||||
|
||||
' If EgtWPFLib5.MachiningTreeViewItem.m_MatType <> 0 Then
|
||||
' MachDbWindowV.Height = 768
|
||||
' MachDbWindowV.Width = 1024
|
||||
' MachDbWindowV.ShowDialog()
|
||||
' Else
|
||||
' Exit Sub
|
||||
' End If
|
||||
|
||||
' End Sub
|
||||
|
||||
'#End Region ' MachDbCommand
|
||||
|
||||
'#Region "SetUpCommand"
|
||||
|
||||
' ''' <summary>
|
||||
' ''' Returns a command that do Exec.
|
||||
' ''' </summary>
|
||||
' Public ReadOnly Property SetUpCommand As ICommand
|
||||
' Get
|
||||
' If m_cmdSetUp Is Nothing Then
|
||||
' m_cmdSetUp = New Command(AddressOf SetUp)
|
||||
' End If
|
||||
' Return m_cmdSetUp
|
||||
' End Get
|
||||
' End Property
|
||||
|
||||
' ''' <summary>
|
||||
' ''' Execute the Exec. This method is invoked by the ExecCommand.
|
||||
' ''' </summary>
|
||||
' Public Sub SetUp(ByVal param As Object)
|
||||
' ' verifico che il file di configurazione attrezzaggio (lua) della macchina esista
|
||||
' If Not File.Exists(CurrentMachine.sMachDir & "\Scripts\" & SETUP_LUA) Then
|
||||
' EgtOutLog("SetUp error: SetUp configuration file doesn't exist ")
|
||||
' MessageBox.Show(EgtMsg(MSG_SETUPERRORS + 7), EgtMsg(MSG_SETUPERRORS + 1), MessageBoxButton.OK, MessageBoxImage.Error)
|
||||
' Return
|
||||
' End If
|
||||
' ' carico Lua che contiene le funzioni per ottenere le posizioni valide dell'utensile selezionato,
|
||||
' ' e testa e uscita dell'utensile attrezzato
|
||||
' EgtLuaExecFile(CurrentMachine.sMachDir & "\Scripts\" & SETUP_LUA)
|
||||
' ' verifico che le teste riportate in configurazione esistano
|
||||
' Dim Index As Integer = 1
|
||||
' Dim nErr As Integer = 0
|
||||
' While nErr = 0
|
||||
' Dim sHead As String = String.Empty
|
||||
' nErr = 999
|
||||
' EgtLuaSetGlobIntVar("STU.INDEX", Index)
|
||||
' EgtLuaCallFunction("STU.GetTcPosHeadGroupFromPos")
|
||||
' ' Leggo variabili
|
||||
' EgtLuaGetGlobStringVar("STU.HEAD", sHead)
|
||||
' EgtLuaGetGlobIntVar("STU.ERR", nErr)
|
||||
' If nErr = 0 Then
|
||||
' If EgtGetHeadExitCount(sHead) = 0 Then
|
||||
' MessageBox.Show(EgtMsg(MSG_SETUPERRORS + 8), EgtMsg(MSG_SETUPERRORS + 1), MessageBoxButton.OK, MessageBoxImage.Error)
|
||||
' Return
|
||||
' End If
|
||||
' End If
|
||||
' Index += 1
|
||||
' End While
|
||||
' ' Reset lua
|
||||
' EgtLuaResetGlobVar("STU")
|
||||
|
||||
' Dim SetUpWindow As New SetUpWindowV(Application.Current.MainWindow, New SetUpWindowVM(CurrentMachine.sMachDir, CurrentMachine.sMachineName))
|
||||
' SetUpWindow.Height = 614
|
||||
' SetUpWindow.Width = 1024
|
||||
' SetUpWindow.ShowDialog()
|
||||
|
||||
' End Sub
|
||||
|
||||
'#End Region ' SetUpCommand
|
||||
|
||||
'#Region "MachOptionsCommand"
|
||||
|
||||
' ''' <summary>
|
||||
' ''' Returns a command that do Exec.
|
||||
' ''' </summary>
|
||||
' Public ReadOnly Property MachOptionsCommand As ICommand
|
||||
' Get
|
||||
' If m_cmdMachOptions Is Nothing Then
|
||||
' m_cmdMachOptions = New Command(AddressOf MachOptions)
|
||||
' End If
|
||||
' Return m_cmdMachOptions
|
||||
' End Get
|
||||
' End Property
|
||||
|
||||
' ''' <summary>
|
||||
' ''' Execute the Exec. This method is invoked by the ExecCommand.
|
||||
' ''' </summary>
|
||||
' Public Sub MachOptions(ByVal param As Object)
|
||||
|
||||
' End Sub
|
||||
|
||||
'#End Region ' MachOptionsCommand
|
||||
|
||||
'#End Region ' COMMANDS
|
||||
|
||||
'End Class
|
||||
|
||||
@@ -6,12 +6,18 @@
|
||||
|
||||
<!--Barra superiore dei comandi-->
|
||||
<UniformGrid Rows="1">
|
||||
<Button Content="{Binding OnlyProdPage_Msg}"
|
||||
Command="{Binding OnlyProdPage_Command}"
|
||||
Visibility="{Binding OnlyProdPage_Visibility}"
|
||||
Style="{StaticResource MainMenu_Button}"/>
|
||||
<Button Content="{Binding Viewer_Msg}"
|
||||
Command="{Binding Viewer_Command}"
|
||||
Style="{StaticResource MainMenu_Button}"/>
|
||||
Command="{Binding Viewer_Command}"
|
||||
Visibility="{Binding ViewerOptimizer_Visibility}"
|
||||
Style="{StaticResource MainMenu_Button}"/>
|
||||
<Button Content="{Binding Optimizer_Msg}"
|
||||
Command="{Binding Optimizer_Command}"
|
||||
Style="{StaticResource MainMenu_Button}"/>
|
||||
Command="{Binding Optimizer_Command}"
|
||||
Visibility="{Binding ViewerOptimizer_Visibility}"
|
||||
Style="{StaticResource MainMenu_Button}"/>
|
||||
<RadioButton Content="{Binding Supervisor_Msg}"
|
||||
IsChecked="{Binding Supervisor_IsChecked}"
|
||||
Style="{StaticResource MainMenu_ToggleButton}"/>
|
||||
|
||||
@@ -1,5 +1,4 @@
|
||||
Imports System.Collections.ObjectModel
|
||||
Imports System.IO
|
||||
Imports System.IO
|
||||
Imports EgtBEAMWALL.Core
|
||||
Imports EgtBEAMWALL.Core.ConstBeam
|
||||
Imports EgtUILib
|
||||
@@ -67,6 +66,18 @@ Public Class MainMenuVM
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Public ReadOnly Property OnlyProdPage_Visibility As Visibility
|
||||
Get
|
||||
Return If(bOnlyProd, Visibility.Visible, Visibility.Collapsed)
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Public ReadOnly Property ViewerOptimizer_Visibility As Visibility
|
||||
Get
|
||||
Return If(bOnlyProd, Visibility.Collapsed, Visibility.Visible)
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Private m_SelPage As Integer = -1
|
||||
Public Property SelPage As Integer
|
||||
Get
|
||||
@@ -156,11 +167,18 @@ Public Class MainMenuVM
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Public ReadOnly Property OnlyProdPage_Msg As String
|
||||
Get
|
||||
Return EgtMsg(61896)
|
||||
End Get
|
||||
End Property
|
||||
|
||||
#End Region ' Messages
|
||||
|
||||
' Definizione comandi
|
||||
Private m_cmdViewer As ICommand
|
||||
Private m_cmdOptimizer As ICommand
|
||||
Private m_cmdOnlyProdPage As ICommand
|
||||
|
||||
#End Region ' Fields & Properties
|
||||
|
||||
@@ -375,7 +393,41 @@ Public Class MainMenuVM
|
||||
End If
|
||||
End Sub
|
||||
|
||||
#End Region ' Optimizer
|
||||
#End Region ' OnlyProdPage
|
||||
|
||||
#Region "OnlyProdPage"
|
||||
|
||||
Public ReadOnly Property OnlyProdPage_Command As ICommand
|
||||
Get
|
||||
If m_cmdOnlyProdPage Is Nothing Then
|
||||
m_cmdOnlyProdPage = New Command(AddressOf OnlyProdPage)
|
||||
End If
|
||||
Return m_cmdOnlyProdPage
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Public Sub OnlyProdPage()
|
||||
Dim sViewerOptimizerName As String = "EgtBEAMWALL.ViewerOptimizerR32"
|
||||
' recupero processo del supervisore
|
||||
Dim localProc As Process() = Process.GetProcessesByName(sViewerOptimizerName)
|
||||
If localProc.Length > 0 Then
|
||||
For Each p As Process In localProc
|
||||
' porto in primo piano il ViewerOptimizer
|
||||
BringWindowToFront(p.MainWindowHandle)
|
||||
DbControllers.m_StatusMapController.UpdateAction(DbControllers.m_SupervisorId, Map.refSupervisorManagerVM.CurrProd.nProdId, -Pages.ONLYPRODPAGE, StatusMapItemType.Comm, StatusMapOpType.OpenPageInViewOptimRequest, "")
|
||||
Exit For
|
||||
Next
|
||||
Else
|
||||
Dim sViewerOptimizerPath As String = Path.GetDirectoryName(System.AppDomain.CurrentDomain.BaseDirectory) & "\" & sViewerOptimizerName & ".exe"
|
||||
Try
|
||||
Process.Start(sViewerOptimizerPath, "2 " & Pages.ONLYPRODPAGE)
|
||||
Catch ex As Exception
|
||||
EgtOutLog("Error: impossible starting vieweroptimizer from path " & sViewerOptimizerPath)
|
||||
End Try
|
||||
End If
|
||||
End Sub
|
||||
|
||||
#End Region ' OnlyProdPage
|
||||
|
||||
#End Region ' COMMANDS
|
||||
|
||||
|
||||
@@ -170,6 +170,20 @@ Public Class MainWindowM
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Private m_bOnlyProd As Boolean = False
|
||||
Friend ReadOnly Property bOnlyProd As Boolean
|
||||
Get
|
||||
Return m_bOnlyProd
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Private m_bModifySetup As Boolean = False
|
||||
Friend ReadOnly Property bModifySetup As Boolean
|
||||
Get
|
||||
Return m_bModifySetup
|
||||
End Get
|
||||
End Property
|
||||
|
||||
#End Region ' FIELDS
|
||||
|
||||
#Region "CONSTRUCTOR"
|
||||
@@ -301,9 +315,17 @@ Public Class MainWindowM
|
||||
Dim sLuaLibsDir As String = String.Empty
|
||||
GetMainPrivateProfileString(S_LUA, K_LIBSDIR, "", sLuaLibsDir)
|
||||
EgtSetLuaLibs(sLuaLibsDir)
|
||||
' Recupero flag OnlyProd
|
||||
m_bOnlyProd = GetMainPrivateProfileInt(S_GENERAL, K_ONLYPROD, 0) = 1
|
||||
' e lo imposto nel core
|
||||
Core.Configuration.SetOnlyProd(m_bOnlyProd)
|
||||
Dim sLuaBaseLib As String = String.Empty
|
||||
GetMainPrivateProfileString(S_LUA, K_BASELIB, "EgtBase", sLuaBaseLib)
|
||||
EgtLuaRequire(sLuaBaseLib)
|
||||
' Recupero flag ModifySetup
|
||||
m_bModifySetup = GetMainPrivateProfileInt(S_GENERAL, K_MODIFYSETUP, 0) = 1
|
||||
' e lo imposto nel core
|
||||
Core.Configuration.SetModifySetup(m_bModifySetup)
|
||||
' verifico se stampante attiva
|
||||
Dim sPrinterLink As String = ""
|
||||
Dim nPrinterLink As Integer = 0
|
||||
|
||||
@@ -107,8 +107,14 @@ Public Class MainWindowVM
|
||||
|
||||
' leggo riga di comando
|
||||
Dim nCommandType As Integer = 0
|
||||
Dim nPage As Pages = Pages.VIEW
|
||||
Dim nPage As Pages = Nothing
|
||||
Dim nProdId As Integer = 0
|
||||
If Map.refMainWindowVM.MainWindowM.bOnlyProd Then
|
||||
nPage = Pages.ONLYPRODPAGE
|
||||
Else
|
||||
nPage = Pages.VIEW
|
||||
End If
|
||||
|
||||
If ProcessCommandLine(nCommandType, nProdId) AndAlso nCommandType = 1 Then
|
||||
Map.refSupervisorManagerVM.SetCurrProd(nProdId)
|
||||
Else
|
||||
|
||||
@@ -2,13 +2,13 @@
|
||||
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||
xmlns:EgtFloating="clr-namespace:EgtWPFLib5.EgtFloating;assembly=EgtWPFLib5"
|
||||
xmlns:EgtWPFLib5="clr-namespace:EgtWPFLib5;assembly=EgtWPFLib5"
|
||||
xmlns:EgtBEAMWALLCORE="clr-namespace:EgtBEAMWALL.Core;assembly=EgtBEAMWALL.Core"
|
||||
xmlns:EgtBEAMWALL="clr-namespace:EgtBEAMWALL.Supervisor">
|
||||
|
||||
<EgtFloating:EgtFloatingTray x:Name="PROJECTTOPTRAY" DockPanel.Dock="Top">
|
||||
<EgtBEAMWALL:SupervisorManagerV DataContext="{StaticResource SupervisorManagerVM}"/>
|
||||
<EgtBEAMWALL:MachinePanelV DataContext="{StaticResource MachinePanelVM}"
|
||||
Visibility="Collapsed"/>
|
||||
<EgtBEAMWALLCORE:MachinePanelV DataContext="{StaticResource MachinePanelVM}"
|
||||
Visibility="Collapsed"/>
|
||||
</EgtFloating:EgtFloatingTray>
|
||||
|
||||
<Grid>
|
||||
|
||||
Binary file not shown.
|
After Width: | Height: | Size: 434 B |
@@ -87,15 +87,14 @@ Public Class SupervisorManagerVM
|
||||
End Property
|
||||
Public ReadOnly Property GoToProd_ToolTip As String
|
||||
Get
|
||||
Return EgtMsg(61835)
|
||||
Return If(refMainWindowVM.MainWindowM.bOnlyProd, EgtMsg(61800), EgtMsg(61835))
|
||||
End Get
|
||||
End Property
|
||||
|
||||
|
||||
|
||||
|
||||
#End Region ' ToolTip
|
||||
|
||||
#End Region ' Fields & Properties
|
||||
|
||||
#Region "CONSTRUCTOR"
|
||||
|
||||
Sub New()
|
||||
@@ -372,13 +371,22 @@ Public Class SupervisorManagerVM
|
||||
Else
|
||||
Dim sOptimizerPath As String = Path.GetDirectoryName(System.AppDomain.CurrentDomain.BaseDirectory) & "\" & sOptimizerName & ".exe"
|
||||
Try
|
||||
Process.Start(sOptimizerPath, "1 " & CurrProd.nProdId)
|
||||
If bOnlyProd Then
|
||||
Process.Start(sOptimizerPath, "2 " & Pages.ONLYPRODPAGE)
|
||||
Else
|
||||
Process.Start(sOptimizerPath, "1 " & CurrProd.nProdId)
|
||||
End If
|
||||
Catch ex As Exception
|
||||
EgtOutLog("Error: impossible starting optimizer from path " & sOptimizerPath)
|
||||
End Try
|
||||
End If
|
||||
' mando richiesta di apertura progetto in ottimizzatore
|
||||
DbControllers.m_StatusMapController.UpdateAction(DbControllers.m_SupervisorId, Map.refSupervisorManagerVM.CurrProd.nProdId, Map.refSupervisorManagerVM.CurrProd.nProdId, StatusMapItemType.Comm, StatusMapOpType.ChangeProdInProdRequest, "")
|
||||
If bOnlyProd Then
|
||||
' mando richiesta di apertura progetto in progettazione
|
||||
DbControllers.m_StatusMapController.UpdateAction(DbControllers.m_SupervisorId, Map.refSupervisorManagerVM.CurrProd.nProdId, Map.refSupervisorManagerVM.CurrProd.nProdId, StatusMapItemType.Comm, StatusMapOpType.ChangeProdInOnlyProdRequest, "")
|
||||
Else
|
||||
' mando richiesta di apertura progetto in ottimizzatore
|
||||
DbControllers.m_StatusMapController.UpdateAction(DbControllers.m_SupervisorId, Map.refSupervisorManagerVM.CurrProd.nProdId, Map.refSupervisorManagerVM.CurrProd.nProdId, StatusMapItemType.Comm, StatusMapOpType.ChangeProdInProdRequest, "")
|
||||
End If
|
||||
End Sub
|
||||
|
||||
#End Region ' GoToProd
|
||||
|
||||
@@ -28,9 +28,15 @@ Public Module CurrentMachine
|
||||
Private m_sMachIniFile As String = String.Empty
|
||||
' File ini dei parametri macchina
|
||||
Private m_sMachParamIniFile As String = String.Empty
|
||||
' File lettura Ts3Data
|
||||
Private m_sGetTs3DataFile As String = String.Empty
|
||||
' File Ts3Data
|
||||
Private m_sTs3DataFile As String = String.Empty
|
||||
' Cartella degli script
|
||||
Private m_sMachScriptDir As String = String.Empty
|
||||
' Ffile dei messaggi macchina
|
||||
' Cartella dei setup
|
||||
Private m_sMachSetupDir As String = String.Empty
|
||||
' File dei messaggi macchina
|
||||
Private m_sMachMessagesFile As String = String.Empty
|
||||
|
||||
' Tipo macchina
|
||||
@@ -45,12 +51,6 @@ Public Module CurrentMachine
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Friend ReadOnly Property nType As MachineType
|
||||
Get
|
||||
Return m_nType
|
||||
End Get
|
||||
End Property
|
||||
|
||||
' tipo di CN della macchina
|
||||
Private m_NCType As NCTypes = NCTypes.NULL
|
||||
Public ReadOnly Property NCType As Integer
|
||||
@@ -92,17 +92,41 @@ Public Module CurrentMachine
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Friend ReadOnly Property sTs3DataFile As String
|
||||
Get
|
||||
Return m_sTs3DataFile
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Friend ReadOnly Property sMachScriptDir As String
|
||||
Get
|
||||
Return m_sMachScriptDir
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Friend ReadOnly Property sMachSetupDir As String
|
||||
Get
|
||||
Return m_sMachSetupDir
|
||||
End Get
|
||||
End Property
|
||||
|
||||
#End Region
|
||||
|
||||
'Private m_MachTableList As New ObservableCollection(Of MachTable)
|
||||
'Public Property MachTableList As ObservableCollection(Of MachTable)
|
||||
' Get
|
||||
' Return m_MachTableList
|
||||
' End Get
|
||||
' Set(value As ObservableCollection(Of MachTable))
|
||||
' m_MachTableList = value
|
||||
' End Set
|
||||
'End Property
|
||||
Friend ReadOnly Property nType As MachineType
|
||||
Get
|
||||
Return m_nType
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Private m_MachTableList As New ObservableCollection(Of MachTable)
|
||||
Public Property MachTableList As ObservableCollection(Of MachTable)
|
||||
Get
|
||||
Return m_MachTableList
|
||||
End Get
|
||||
Set(value As ObservableCollection(Of MachTable))
|
||||
m_MachTableList = value
|
||||
End Set
|
||||
End Property
|
||||
|
||||
#Region "Init"
|
||||
|
||||
@@ -138,21 +162,30 @@ Public Module CurrentMachine
|
||||
' Impostazione path MachParamIni file
|
||||
If nType = MachineType.BEAM Then
|
||||
m_sMachParamIniFile = sMachinesRootDir & "\" & sMachineName & "\" & K_BEAM & "\" & MACH_INI_FILE_NAME
|
||||
m_sGetTs3DataFile = sMachinesRootDir & "\" & sMachineName & "\" & K_BEAM & "\" & GETTS3DATA_FILE_NAME
|
||||
m_sTs3DataFile = sMachinesRootDir & "\" & sMachineName & "\" & K_BEAM & "\" & TS3DATA_FILE
|
||||
ElseIf nType = MachineType.WALL Then
|
||||
m_sMachParamIniFile = sMachinesRootDir & "\" & sMachineName & "\" & K_WALL & "\" & MACH_INI_FILE_NAME
|
||||
m_sGetTs3DataFile = sMachinesRootDir & "\" & sMachineName & "\" & K_WALL & "\" & GETTS3DATA_FILE_NAME
|
||||
m_sTs3DataFile = sMachinesRootDir & "\" & sMachineName & "\" & K_WALL & "\" & TS3DATA_FILE
|
||||
Else
|
||||
' Se macchina di tipo BOTH prendo quello presente in Beam, se esiste, altrimenti prendo quello in Wall
|
||||
Dim sBeamMachParamIniFile = sMachinesRootDir & "\" & sMachineName & "\" & K_BEAM & "\" & MACH_INI_FILE_NAME
|
||||
Dim sWallMachParamIniFile = sMachinesRootDir & "\" & sMachineName & "\" & K_WALL & "\" & MACH_INI_FILE_NAME
|
||||
Dim sBeamGetTs3File = sMachinesRootDir & "\" & sMachineName & "\" & K_BEAM & "\" & GETTS3DATA_FILE_NAME
|
||||
Dim sWallGetTs3File = sMachinesRootDir & "\" & sMachineName & "\" & K_WALL & "\" & GETTS3DATA_FILE_NAME
|
||||
Dim sBeamTs3DataFile = sMachinesRootDir & "\" & sMachineName & "\" & K_BEAM & "\" & TS3DATA_FILE
|
||||
Dim sWallTs3DataFile = sMachinesRootDir & "\" & sMachineName & "\" & K_WALL & "\" & TS3DATA_FILE
|
||||
If nType = MachineType.BOTH Then
|
||||
m_sMachParamIniFile = If(File.Exists(sBeamMachParamIniFile), sBeamMachParamIniFile, sWallMachParamIniFile)
|
||||
m_sGetTs3DataFile = If(File.Exists(sBeamGetTs3File), sBeamGetTs3File, sWallGetTs3File)
|
||||
m_sTs3DataFile = If(File.Exists(sBeamTs3DataFile), sBeamTs3DataFile, sWallTs3DataFile)
|
||||
End If
|
||||
End If
|
||||
|
||||
' leggo tipo di avanzamento pezzi
|
||||
m_Flow = GetPrivateProfileInt(S_GENERAL, K_FLOW, 1, m_sMachIniFile)
|
||||
' Impostazione path Script dir
|
||||
m_sMachScriptDir = sMachinesRootDir & "\" & sMachineName & "\" & K_SCRIPT
|
||||
' Impostazione path Setup dir
|
||||
m_sMachSetupDir = sMachinesRootDir & "\" & sMachineName & "\" & K_SETUP
|
||||
|
||||
' crea l'elenco dei parametri della macchina corrente
|
||||
CreateMachParams()
|
||||
@@ -165,8 +198,9 @@ Public Module CurrentMachine
|
||||
|
||||
' imposto visibilita' input output
|
||||
Map.refMainMenuVM.SetInputOutputVisibility()
|
||||
' leggo parametri macchina da WallData
|
||||
If nType = MachineType.BEAM Then
|
||||
|
||||
' leggo parametri macchina da BeamData
|
||||
If nType = MachineType.BEAM OrElse nType = MachineType.BOTH Then
|
||||
' Assegno i dati
|
||||
EgtLuaCreateGlobTable("GWD")
|
||||
EgtLuaSetGlobStringVar("GWD.BASEDIR", Map.refMainWindowVM.MainWindowM.sBeamRoot)
|
||||
@@ -185,7 +219,7 @@ Public Module CurrentMachine
|
||||
EgtOutLog("Error executing GetBeamData script " & sExecPath)
|
||||
End If
|
||||
If bOk Then
|
||||
Dim nTemp As Integer
|
||||
Dim nTemp As Integer = 0
|
||||
EgtLuaGetGlobIntVar("GWD.SIMUL_VIEW_DIR", nTemp)
|
||||
Select Case nTemp
|
||||
Case 0
|
||||
@@ -207,7 +241,7 @@ Public Module CurrentMachine
|
||||
' aggiorno parametro in gestore viste
|
||||
Core.ViewPanelVM.UpdateMachParam(m_nViewDir)
|
||||
End If
|
||||
If nType = MachineType.WALL Then
|
||||
If nType = MachineType.WALL OrElse nType = MachineType.BOTH Then
|
||||
' Assegno i dati
|
||||
EgtLuaCreateGlobTable("GWD")
|
||||
EgtLuaSetGlobStringVar("GWD.BASEDIR", Map.refMainWindowVM.MainWindowM.sWallRoot)
|
||||
@@ -226,9 +260,11 @@ Public Module CurrentMachine
|
||||
EgtOutLog("Error executing GetWallData script " & sExecPath)
|
||||
End If
|
||||
If bOk Then
|
||||
Dim nTemp As Integer
|
||||
Dim nTemp As Integer = 0
|
||||
EgtLuaGetGlobIntVar("GWD.SIMUL_VIEW_DIR", nTemp)
|
||||
Select Case nTemp
|
||||
Case 0
|
||||
m_nViewDir = VT.ISO_SW
|
||||
Case 1
|
||||
m_nViewDir = VT.ISO_NW
|
||||
Case 2
|
||||
@@ -276,25 +312,41 @@ Public Module CurrentMachine
|
||||
|
||||
' funzione che crea l'elenco dei parametri Macchina
|
||||
Friend Sub CreateMachParams()
|
||||
'MachTableList.Clear()
|
||||
'Dim NewMachParam As MachParam = Nothing
|
||||
'Dim MachParamList As New ObservableCollection(Of MachParam)
|
||||
'Dim TableIndex = 1
|
||||
'Dim ParamIndex As Integer = 1
|
||||
'Dim TableName As String = String.Empty
|
||||
'' verifico che ci sia una table con l'indice designato e ne leggo il nome
|
||||
'While GetMachPrivateProfileString(TableIndex, K_NAME, "", TableName)
|
||||
' ' leggo tutti i parametri della table
|
||||
' While MachParamIniFile.GetMachPrivateProfileParam(TableIndex, ParamIndex, NewMachParam)
|
||||
' MachParamList.Add(NewMachParam)
|
||||
' ParamIndex += 1
|
||||
' End While
|
||||
' MachTableList.Add(New MachTable(TableName, MachParamList))
|
||||
' ' aggiorno indici e resetto lista per lettura dell'eventuale table successiva
|
||||
' TableIndex += 1
|
||||
' ParamIndex = 1
|
||||
' MachParamList = New ObservableCollection(Of MachParam)
|
||||
'End While
|
||||
MachTableList.Clear()
|
||||
If String.IsNullOrWhiteSpace(m_sMachParamIniFile) OrElse Not File.Exists(m_sMachParamIniFile) Then
|
||||
EgtOutLog("Impossible loading Mach parameters: MachData.ini file not found or not readable")
|
||||
Return
|
||||
End If
|
||||
Dim NewMachParam As MachParam = Nothing
|
||||
Dim MachParamList As New ObservableCollection(Of MachParam)
|
||||
Dim TableIndex = 1
|
||||
Dim ParamIndex As Integer = 1
|
||||
Dim TableName As String = String.Empty
|
||||
' carico lua ts3data
|
||||
Dim bTs3DataLoaded As Boolean = False
|
||||
EgtLuaCreateGlobTable("GTSD")
|
||||
EgtLuaSetGlobStringVar("GTSD.TS3PATH", m_sTs3DataFile)
|
||||
Dim sExecPath As String = m_sGetTs3DataFile
|
||||
bTs3DataLoaded = File.Exists(m_sTs3DataFile) AndAlso EgtLuaExecFile(sExecPath)
|
||||
If Not bTs3DataLoaded Then
|
||||
EgtOutLog("Error executing Ts3Data file " & m_sTs3DataFile)
|
||||
End If
|
||||
|
||||
' verifico che ci sia una table con l'indice designato e ne leggo il nome
|
||||
While GetMachPrivateProfileString(TableIndex, K_NAME, "", TableName)
|
||||
' leggo tutti i parametri della table
|
||||
While MachParamIniFile.GetMachPrivateProfileParam(TableIndex, ParamIndex, NewMachParam, TableName, bTs3DataLoaded)
|
||||
MachParamList.Add(NewMachParam)
|
||||
ParamIndex += 1
|
||||
End While
|
||||
MachTableList.Add(New MachTable(TableName, MachParamList))
|
||||
' aggiorno indici e resetto lista per lettura dell'eventuale table successiva
|
||||
TableIndex += 1
|
||||
ParamIndex = 1
|
||||
MachParamList = New ObservableCollection(Of MachParam)
|
||||
End While
|
||||
' Cancello tavola globale
|
||||
EgtLuaResetGlobVar("GTSD")
|
||||
End Sub
|
||||
|
||||
Public Function MachMsg(Paragraph As MsgParagraphs, nId As Integer) As String
|
||||
|
||||
@@ -159,8 +159,11 @@
|
||||
<Setter Property="Width" Value="80"/>
|
||||
</Style>
|
||||
<Style x:Key="OptionPanel_Button" TargetType="{x:Type Button}" BasedOn="{StaticResource {x:Type Button}}">
|
||||
<Setter Property="Height" Value="60"/>
|
||||
<Setter Property="Width" Value="60"/>
|
||||
<Setter Property="Height" Value="25"/>
|
||||
<Setter Property="Width" Value="25"/>
|
||||
<Setter Property="Margin" Value="5,0,0,0"/>
|
||||
<Setter Property="VerticalAlignment" Value="Center"/>
|
||||
<Setter Property="HorizontalAlignment" Value="Center"/>
|
||||
</Style>
|
||||
<Style x:Key="OptionPanel_TextButton" TargetType="{x:Type Button}" BasedOn="{StaticResource {x:Type Button}}">
|
||||
<Setter Property="Height" Value="30"/>
|
||||
@@ -268,8 +271,8 @@
|
||||
<Setter Property="Background" Value="{StaticResource Omag_White}"/>
|
||||
<Setter Property="Foreground" Value="{StaticResource Omag_DarkGray}"/>
|
||||
<Setter Property="TextBlock.FontWeight" Value="Normal"/>
|
||||
<Setter Property="Height" Value="30"/>
|
||||
<Setter Property="Width" Value="90"/>
|
||||
<!--<Setter Property="Height" Value="30"/>
|
||||
<Setter Property="Width" Value="90"/>-->
|
||||
<Style.Triggers>
|
||||
<Trigger Property="IsChecked" Value="true">
|
||||
<Setter Property="TextBlock.FontWeight" Value="ExtraBold"/>
|
||||
@@ -353,6 +356,12 @@
|
||||
<Setter Property="Margin" Value="2.5,0,2.5,0"/>
|
||||
</Style>
|
||||
|
||||
<Style x:Key="MachParamTextBlock" TargetType="{x:Type TextBlock}" BasedOn="{StaticResource {x:Type TextBlock}}">
|
||||
<Setter Property="HorizontalAlignment" Value="Left"/>
|
||||
<Setter Property="VerticalAlignment" Value="Center"/>
|
||||
<Setter Property="Margin" Value="5,0,5,0"/>
|
||||
</Style>
|
||||
|
||||
<!-- ______________________________________________________________________________________________________________________________________________ -->
|
||||
|
||||
<!-- TextBox -->
|
||||
@@ -748,4 +757,38 @@
|
||||
|
||||
<!-- ______________________________________________________________________________________________________________________________________________ -->
|
||||
|
||||
<!-- TabControl that have only Headers and no Pages -->
|
||||
|
||||
<Style x:Key="TabControl_OnlyHeaders" TargetType="{x:Type TabControl}">
|
||||
<Setter Property="OverridesDefaultStyle" Value="True" />
|
||||
<Setter Property="SnapsToDevicePixels" Value="True" />
|
||||
<Setter Property="Template">
|
||||
<Setter.Value>
|
||||
<ControlTemplate TargetType="{x:Type TabControl}">
|
||||
<Grid KeyboardNavigation.TabNavigation="Local">
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="Auto"/>
|
||||
<RowDefinition Height="*"/>
|
||||
</Grid.RowDefinitions>
|
||||
<TabPanel Name="HeaderPanel"
|
||||
Grid.Row="0"
|
||||
Panel.ZIndex="1"
|
||||
Margin="0,0,4,-1"
|
||||
IsItemsHost="True"
|
||||
KeyboardNavigation.TabIndex="1"
|
||||
Background="Transparent" />
|
||||
</Grid>
|
||||
<ControlTemplate.Triggers>
|
||||
<Trigger Property="IsEnabled" Value="False">
|
||||
<Setter Property="Foreground" Value="{DynamicResource {x:Static SystemColors.GrayTextBrushKey}}" />
|
||||
</Trigger>
|
||||
</ControlTemplate.Triggers>
|
||||
</ControlTemplate>
|
||||
</Setter.Value>
|
||||
</Setter>
|
||||
</Style>
|
||||
|
||||
<!-- ______________________________________________________________________________________________________________________________________________ -->
|
||||
|
||||
|
||||
</ResourceDictionary>
|
||||
|
||||
@@ -0,0 +1,70 @@
|
||||
Imports System.Collections.ObjectModel
|
||||
Imports EgtUILib
|
||||
Imports EgtWPFLib5
|
||||
|
||||
Friend Module MachParamIniFile
|
||||
|
||||
Public Function GetMachPrivateProfileParam(IpParentTable As Integer, IpMachParamIndex As String, ByRef IpMachParam As MachParam, TableName As String, bTs3dataLoaded As Boolean) As Boolean
|
||||
Dim sMachParam As String = String.Empty
|
||||
If EgtUILib.GetPrivateProfileString(IpParentTable, IpMachParamIndex, String.Empty, sMachParam, sMachParamIniFile) > 0 Then
|
||||
Dim sMachParamParams() As String = sMachParam.Split(","c)
|
||||
' verifico numero minimo di parametri
|
||||
If sMachParamParams.Count >= 4 Then
|
||||
' cancello spazi
|
||||
For Index = 0 To sMachParamParams.Count - 1
|
||||
sMachParamParams(Index) = sMachParamParams(Index).Trim()
|
||||
Next
|
||||
' creo parametro
|
||||
If sMachParamParams(0) = "d" OrElse sMachParamParams(0) = "l" Then
|
||||
Dim dDefault As Double
|
||||
StringToDoubleAdv(sMachParamParams(2), dDefault)
|
||||
Dim ParamType As MachParamType
|
||||
If sMachParamParams(0) = "d" Then
|
||||
ParamType = MachParamType.DOUBLE_
|
||||
Else
|
||||
ParamType = MachParamType.LENGTH
|
||||
End If
|
||||
If bTs3dataLoaded Then
|
||||
Dim dTs3DataValue As Double
|
||||
If EgtLuaGetGlobNumVar(TableName & "." & sMachParamParams(1), dTs3DataValue) Then
|
||||
dDefault = dTs3DataValue
|
||||
End If
|
||||
End If
|
||||
IpMachParam = New MachParam(IpParentTable, IpMachParamIndex, ParamType, sMachParamParams(1), dDefault, sMachParamParams(3))
|
||||
Return Not IsNothing(IpMachParam)
|
||||
ElseIf sMachParamParams(0) = "s" Then
|
||||
IpMachParam = New MachParam(IpParentTable, IpMachParamIndex, MachParamType.STRING_, sMachParamParams(1), sMachParamParams(3))
|
||||
Return Not IsNothing(IpMachParam)
|
||||
End If
|
||||
End If
|
||||
End If
|
||||
Return False
|
||||
End Function
|
||||
|
||||
Public Function GetMachPrivateProfileString(IpAppName As String, IpKeyName As String, IpDefault As String, ByRef IpString As String) As Integer
|
||||
Return EgtUILib.GetPrivateProfileString(IpAppName, IpKeyName, IpDefault, IpString, sMachParamIniFile)
|
||||
End Function
|
||||
|
||||
Public Function GetMachPrivateProfileParamValue(IpParentTable As Integer, IpMachParamIndex As String, ByRef IpMachParamValue As String) As Boolean
|
||||
Dim sMachParam As String = String.Empty
|
||||
If EgtUILib.GetPrivateProfileString(IpParentTable, IpMachParamIndex, String.Empty, sMachParam, sMachParamIniFile) > 0 Then
|
||||
Dim sMachParamParams() As String = sMachParam.Split(","c)
|
||||
' verifico numero minimo di parametri
|
||||
If sMachParamParams.Count >= 4 Then
|
||||
' cancello spazi
|
||||
For Index = 0 To sMachParamParams.Count - 1
|
||||
sMachParamParams(Index) = sMachParamParams(Index).Trim()
|
||||
Next
|
||||
'restituisco il valore del parametro
|
||||
IpMachParamValue = sMachParamParams(2)
|
||||
Return Not IsNothing(IpMachParamValue)
|
||||
End If
|
||||
End If
|
||||
Return False
|
||||
End Function
|
||||
|
||||
Public Function WriteMachPrivateProfileString(IpAppName As String, IpKeyName As String, ByRef IpString As String) As Boolean
|
||||
Return EgtUILib.WritePrivateProfileString(IpAppName, IpKeyName, IpString, sMachParamIniFile)
|
||||
End Function
|
||||
|
||||
End Module
|
||||
@@ -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
|
||||
@@ -14,146 +14,146 @@
|
||||
Name="BTLDataWndV">
|
||||
|
||||
<UniformGrid Margin="5"
|
||||
Columns="6" Rows="7">
|
||||
Columns="6" Rows="7">
|
||||
|
||||
<TextBlock Text="{Binding PROJNUM_MSG}"
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
<EgtWPFLib5:EgtTextBox Text="{Binding Tag.sPROJNUM, UpdateSourceTrigger=Explicit,
|
||||
RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:BTLDataWndV}}}"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource PartParam_TextBox}"/>
|
||||
RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:BTLDataWndV}}}"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource PartParam_TextBox}"/>
|
||||
<TextBlock Text="{Binding PROJNAME_MSG}"
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
<EgtWPFLib5:EgtTextBox Text="{Binding Tag.sPROJNAME, UpdateSourceTrigger=Explicit,
|
||||
RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:BTLDataWndV}}}"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource PartParam_TextBox}"/>
|
||||
RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:BTLDataWndV}}}"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource PartParam_TextBox}"/>
|
||||
<TextBlock Text="{Binding PROJPART_MSG}"
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
<EgtWPFLib5:EgtTextBox Text="{Binding Tag.sPROJPART, UpdateSourceTrigger=Explicit,
|
||||
RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:BTLDataWndV}}}"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource PartParam_TextBox}"/>
|
||||
RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:BTLDataWndV}}}"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource PartParam_TextBox}"/>
|
||||
<TextBlock Text="{Binding PROJGUID_MSG}"
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
<EgtWPFLib5:EgtTextBox Text="{Binding Tag.sPROJGUID, UpdateSourceTrigger=Explicit,
|
||||
RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:BTLDataWndV}}}"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource PartParam_TextBox}"/>
|
||||
RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:BTLDataWndV}}}"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource PartParam_TextBox}"/>
|
||||
<TextBlock Text="{Binding LISTNAME_MSG}"
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
<EgtWPFLib5:EgtTextBox Text="{Binding Tag.sLISTNAME, UpdateSourceTrigger=Explicit,
|
||||
RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:BTLDataWndV}}}"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource PartParam_TextBox}"/>
|
||||
RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:BTLDataWndV}}}"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource PartParam_TextBox}"/>
|
||||
<TextBlock Text="{Binding CUSTOMER_MSG}"
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
<EgtWPFLib5:EgtTextBox Text="{Binding Tag.sCUSTOMER, UpdateSourceTrigger=Explicit,
|
||||
RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:BTLDataWndV}}}"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource PartParam_TextBox}"/>
|
||||
RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:BTLDataWndV}}}"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource PartParam_TextBox}"/>
|
||||
<TextBlock Text="{Binding ARCHITECT_MSG}"
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
<EgtWPFLib5:EgtTextBox Text="{Binding Tag.sARCHITECT, UpdateSourceTrigger=Explicit,
|
||||
RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:BTLDataWndV}}}"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource PartParam_TextBox}"/>
|
||||
RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:BTLDataWndV}}}"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource PartParam_TextBox}"/>
|
||||
<TextBlock Text="{Binding EDITOR_MSG}"
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
<EgtWPFLib5:EgtTextBox Text="{Binding Tag.sEDITOR, UpdateSourceTrigger=Explicit,
|
||||
RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:BTLDataWndV}}}"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource PartParam_TextBox}"/>
|
||||
RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:BTLDataWndV}}}"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource PartParam_TextBox}"/>
|
||||
<TextBlock Text="{Binding DELIVDATE_MSG}"
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
<EgtWPFLib5:EgtTextBox Text="{Binding Tag.sDELIVDATE, UpdateSourceTrigger=Explicit,
|
||||
RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:BTLDataWndV}}}"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource PartParam_TextBox}"/>
|
||||
RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:BTLDataWndV}}}"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource PartParam_TextBox}"/>
|
||||
<TextBlock Text="{Binding EXPDATE_MSG}"
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
<EgtWPFLib5:EgtTextBox Text="{Binding Tag.sEXPDATE, UpdateSourceTrigger=Explicit,
|
||||
RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:BTLDataWndV}}}"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource PartParam_TextBox}"/>
|
||||
RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:BTLDataWndV}}}"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource PartParam_TextBox}"/>
|
||||
<TextBlock Text="{Binding EXPTIME_MSG}"
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
<EgtWPFLib5:EgtTextBox Text="{Binding Tag.sEXPTIME, UpdateSourceTrigger=Explicit,
|
||||
RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:BTLDataWndV}}}"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource PartParam_TextBox}"/>
|
||||
RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:BTLDataWndV}}}"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource PartParam_TextBox}"/>
|
||||
<TextBlock Text="{Binding EXPRELEASE_MSG}"
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
<EgtWPFLib5:EgtTextBox Text="{Binding Tag.sEXPRELEASE, UpdateSourceTrigger=Explicit,
|
||||
RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:BTLDataWndV}}}"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource PartParam_TextBox}"/>
|
||||
RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:BTLDataWndV}}}"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource PartParam_TextBox}"/>
|
||||
<TextBlock Text="{Binding LANGUAGE_MSG}"
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
<EgtWPFLib5:EgtTextBox Text="{Binding Tag.sLANGUAGE, UpdateSourceTrigger=Explicit,
|
||||
RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:BTLDataWndV}}}"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource PartParam_TextBox}"/>
|
||||
RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:BTLDataWndV}}}"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource PartParam_TextBox}"/>
|
||||
<TextBlock Text="{Binding RANGE_MSG}"
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
<ComboBox ItemsSource="{Binding RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:BTLDataWndV}},
|
||||
Path=Tag.ocRANGE,
|
||||
Mode=OneWay}"
|
||||
SelectedIndex="{Binding RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:BTLDataWndV}},
|
||||
Path=Tag.SelRANGE,
|
||||
Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource BtlData_ComboBox}"/>
|
||||
Path=Tag.ocRANGE,
|
||||
Mode=OneWay}"
|
||||
SelectedIndex="{Binding RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:BTLDataWndV}},
|
||||
Path=Tag.SelRANGE,
|
||||
Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource BtlData_ComboBox}"/>
|
||||
<TextBlock Text="{Binding PROCESSINGQUALITY_MSG}"
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
<ComboBox ItemsSource="{Binding RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:BTLDataWndV}},
|
||||
Path=Tag.ocPROCESSINGQUALITY,
|
||||
Mode=OneWay}"
|
||||
SelectedIndex="{Binding RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:BTLDataWndV}},
|
||||
Path=Tag.SelPROCESSINGQUALITY,
|
||||
Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource BtlData_ComboBox}"/>
|
||||
Path=Tag.ocPROCESSINGQUALITY,
|
||||
Mode=OneWay}"
|
||||
SelectedIndex="{Binding RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:BTLDataWndV}},
|
||||
Path=Tag.SelPROCESSINGQUALITY,
|
||||
Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource BtlData_ComboBox}"/>
|
||||
<TextBlock Text="{Binding COMPUTERNAME_MSG}"
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
<EgtWPFLib5:EgtTextBox Text="{Binding Tag.sCOMPUTERNAME, UpdateSourceTrigger=Explicit,
|
||||
RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:BTLDataWndV}}}"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource PartParam_TextBox}"/>
|
||||
RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:BTLDataWndV}}}"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource PartParam_TextBox}"/>
|
||||
<TextBlock Text="{Binding USER_MSG}"
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
<EgtWPFLib5:EgtTextBox Text="{Binding Tag.sUSER, UpdateSourceTrigger=Explicit,
|
||||
RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:BTLDataWndV}}}"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource PartParam_TextBox}"/>
|
||||
RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:BTLDataWndV}}}"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource PartParam_TextBox}"/>
|
||||
<TextBlock Text="{Binding SRCFILE_MSG}"
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
<EgtWPFLib5:EgtTextBox Text="{Binding Tag.sSRCFILE, UpdateSourceTrigger=Explicit,
|
||||
RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:BTLDataWndV}}}"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource PartParam_TextBox}"/>
|
||||
RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:BTLDataWndV}}}"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource PartParam_TextBox}"/>
|
||||
<TextBlock Text="{Binding EXPFILE_MSG}"
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
<EgtWPFLib5:EgtTextBox Text="{Binding Tag.sEXPFILE, UpdateSourceTrigger=Explicit,
|
||||
RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:BTLDataWndV}}}"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource PartParam_TextBox}"/>
|
||||
RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:BTLDataWndV}}}"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource PartParam_TextBox}"/>
|
||||
<TextBlock Text="{Binding RECESS_MSG}"
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
<ComboBox ItemsSource="{Binding RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:BTLDataWndV}},
|
||||
Path=Tag.ocRECESS,
|
||||
Mode=OneWay}"
|
||||
SelectedIndex="{Binding RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:BTLDataWndV}},
|
||||
Path=Tag.SelRECESS,
|
||||
Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource BtlData_ComboBox}"/>
|
||||
Path=Tag.ocRECESS,
|
||||
Mode=OneWay}"
|
||||
SelectedIndex="{Binding RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:BTLDataWndV}},
|
||||
Path=Tag.SelRECESS,
|
||||
Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource BtlData_ComboBox}"/>
|
||||
<TextBlock Text="{Binding USERATTRIBUTE_MSG}"
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
<EgtWPFLib5:EgtTextBox Text="{Binding Tag.sUSERATTRIBUTE, UpdateSourceTrigger=Explicit,
|
||||
RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:BTLDataWndV}}}"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource PartParam_TextBox}"/>
|
||||
RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:BTLDataWndV}}}"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource PartParam_TextBox}"/>
|
||||
|
||||
</UniformGrid>
|
||||
</EgtWPFLib5:EgtCustomWindow>
|
||||
|
||||
@@ -0,0 +1,79 @@
|
||||
<StackPanel x:Class="BTLPartManagerV"
|
||||
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||
Orientation="Horizontal"
|
||||
HorizontalAlignment="Right"
|
||||
DataContext="{StaticResource BTLPartManagerVM}">
|
||||
|
||||
<Button Command="{Binding NewRawPart_Command}"
|
||||
Visibility="{Binding MachiningPage_Visibility}"
|
||||
ToolTip="{Binding NewRawPart_ToolTip}"
|
||||
IsEnabled="{Binding BTLPartManager_IsEnabled}"
|
||||
Style="{StaticResource LeftPanel_Button}">
|
||||
<Image Source="/Resources/LeftPanel/NewRawPart.png" Stretch="Uniform"/>
|
||||
</Button>
|
||||
<Button Command="{Binding NewRawPartLast_Command}"
|
||||
Visibility="{Binding MachiningPage_Visibility}"
|
||||
ToolTip="{Binding NewRawPartLast_ToolTip}"
|
||||
IsEnabled="{Binding BTLPartManager_IsEnabled}"
|
||||
Style="{StaticResource LeftPanel_Button}">
|
||||
<Image Source="/Resources/LeftPanel/NewRawPartAuto.png" Stretch="Uniform"/>
|
||||
</Button>
|
||||
<Button Command="{Binding AddToRawPart_Command}"
|
||||
Visibility="{Binding MachiningPage_Visibility}"
|
||||
ToolTip="{Binding AddToRawPart_ToolTip}"
|
||||
IsEnabled="{Binding BTLPartManager_IsEnabled}"
|
||||
Style="{StaticResource LeftPanel_Button}">
|
||||
<Image Source="/Resources/LeftPanel/AddToRawPart.png" Stretch="Uniform"/>
|
||||
</Button>
|
||||
<Button Command="{Binding CopyPart_Command}"
|
||||
Visibility="{Binding ViewPage_Visibility}"
|
||||
ToolTip="{Binding CopyPart_ToolTip}"
|
||||
IsEnabled="{Binding CopyPart_IsEnabled}"
|
||||
Style="{StaticResource LeftPanel_Button}">
|
||||
<Image Source="/Resources/LeftPanel/CopyPart.png" Stretch="Uniform"/>
|
||||
</Button>
|
||||
<Button Command="{Binding AddPart_Command}"
|
||||
Visibility="{Binding ViewPage_Visibility}"
|
||||
ToolTip="{Binding AddPart_ToolTip}"
|
||||
IsEnabled="{Binding BTLPartManager_IsEnabled}"
|
||||
Style="{StaticResource LeftPanel_Button}">
|
||||
<Image Source="/Resources/LeftPanel/AddPart.png" Stretch="Uniform"/>
|
||||
</Button>
|
||||
<Button Command="{Binding RemovePart_Command}"
|
||||
Visibility="{Binding ViewPage_Visibility}"
|
||||
ToolTip="{Binding RemovePart_ToolTip}"
|
||||
IsEnabled="{Binding RemovePart_IsEnabled}"
|
||||
Style="{StaticResource LeftPanel_Button}">
|
||||
<Image Source="/Resources/LeftPanel/RemovePart.png" Stretch="Uniform"/>
|
||||
</Button>
|
||||
<Button Command="{Binding Invert_Command}"
|
||||
Visibility="{Binding ViewPage_Visibility}"
|
||||
ToolTip="{Binding InvertSx_ToolTip}"
|
||||
IsEnabled="{Binding RotatePart_IsEnabled}"
|
||||
Style="{StaticResource LeftPanel_Button}">
|
||||
<Image Source="/Resources/PartManager/LeftInvert.png" Stretch="Uniform"/>
|
||||
</Button>
|
||||
<Button Command="{Binding Invert_Command}"
|
||||
Visibility="{Binding ViewPage_Visibility}"
|
||||
ToolTip="{Binding InvertDx_ToolTip}"
|
||||
IsEnabled="{Binding RotatePart_IsEnabled}"
|
||||
Style="{StaticResource LeftPanel_Button}">
|
||||
<Image Source="/Resources/PartManager/RightInvert.png" Stretch="Uniform"/>
|
||||
</Button>
|
||||
<Button Command="{Binding BackRotation_Command}"
|
||||
Visibility="{Binding ViewPage_Visibility}"
|
||||
ToolTip="{Binding BackRotation_ToolTip}"
|
||||
IsEnabled="{Binding RotatePart_IsEnabled}"
|
||||
Style="{StaticResource LeftPanel_Button}">
|
||||
<Image Source="/Resources/PartManager/LeftRotate.png" Stretch="Uniform"/>
|
||||
</Button>
|
||||
<Button Command="{Binding ForwardRotation_Command}"
|
||||
Visibility="{Binding ViewPage_Visibility}"
|
||||
ToolTip="{Binding ForwardRotation_ToolTip}"
|
||||
IsEnabled="{Binding RotatePart_IsEnabled}"
|
||||
Style="{StaticResource LeftPanel_Button}">
|
||||
<Image Source="/Resources/PartManager/RightRotate.png" Stretch="Uniform"/>
|
||||
</Button>
|
||||
|
||||
</StackPanel>
|
||||
@@ -0,0 +1,3 @@
|
||||
Public Class BTLPartManagerV
|
||||
|
||||
End Class
|
||||
File diff suppressed because it is too large
Load Diff
@@ -126,9 +126,9 @@ Public Class BTLFeatureVM
|
||||
' setto feature da ricalcolare
|
||||
ResetCalcFeature()
|
||||
' se in View
|
||||
If Map.refMainMenuVM.SelPage = Pages.VIEW Then
|
||||
If Map.refMainMenuVM.SelPage = Pages.VIEW OrElse Map.refMainMenuVM.SelPage = Pages.ONLYPRODPAGE Then
|
||||
' imposto modificato per copie
|
||||
EgtDuploSetModified(m_BTLPartM.nPartId)
|
||||
MyMachGroupPanelM.SetDuploModified(m_BTLPartM.nPartId)
|
||||
End If
|
||||
End If
|
||||
End If
|
||||
@@ -163,9 +163,10 @@ Public Class BTLFeatureVM
|
||||
' setto feature da ricalcolare
|
||||
ResetCalcFeature()
|
||||
' se in View
|
||||
If Map.refMainMenuVM.SelPage = Pages.VIEW Then
|
||||
If Map.refMainMenuVM.SelPage = Pages.VIEW OrElse (Map.refMainMenuVM.SelPage = Pages.ONLYPRODPAGE AndAlso Not IsNothing(m_BTLPartM)) Then
|
||||
' imposto modificato per copie
|
||||
EgtDuploSetModified(m_BTLPartM.nPartId)
|
||||
'Dim cc = Map.refMachGroupPanelVM.MachGroupVMList
|
||||
MyMachGroupPanelM.SetDuploModified(m_BTLPartM.nPartId)
|
||||
End If
|
||||
NotifyPropertyChanged(NameOf(bDO))
|
||||
' aggiorno messaggio su context menu
|
||||
@@ -209,7 +210,9 @@ Public Class BTLFeatureVM
|
||||
m_SelPBTLParam = value
|
||||
If Not IsNothing(m_SelPBTLParam) Then
|
||||
' imposto path disegno da mostrare in BottomPanel
|
||||
Map.refBottomPanelVM.SetCurrDraw(m_SelPBTLParam.sDrawPath)
|
||||
If Not IsNothing(Map.refBottomPanelVM) Then
|
||||
Map.refBottomPanelVM.SetCurrDraw(m_SelPBTLParam.sDrawPath)
|
||||
End If
|
||||
End If
|
||||
NotifyPropertyChanged(NameOf(SelPBTLParam))
|
||||
End Set
|
||||
@@ -232,7 +235,7 @@ Public Class BTLFeatureVM
|
||||
End Get
|
||||
Set(value As BTLParamVM)
|
||||
m_SelQParam = value
|
||||
If Not IsNothing(m_SelQParam) Then
|
||||
If Not IsNothing(m_SelQParam) AndAlso Not IsNothing(Map.refBottomPanelVM) Then
|
||||
' imposto path disegno da mostrare in BottomPanel
|
||||
Map.refBottomPanelVM.SetCurrDraw(m_SelQParam.sDrawPath)
|
||||
End If
|
||||
@@ -403,6 +406,28 @@ Public Class BTLFeatureVM
|
||||
Return Nothing
|
||||
End Function
|
||||
|
||||
Public Overrides Sub RefreshFeature()
|
||||
' leggo gruppo, numero feature, lato e priorità
|
||||
EgtGetInfo(nFeatureId, BTL_FTR_GRP, m_BTLFeatureM.nSelGRP)
|
||||
EgtGetInfo(nFeatureId, BTL_FTR_PRC, m_BTLFeatureM.nPRC)
|
||||
EgtGetInfo(nFeatureId, BTL_FTR_SIDE, m_BTLFeatureM.nSelSIDE)
|
||||
EgtGetInfo(nFeatureId, BTL_FTR_PRIORITY, m_BTLFeatureM.nPriority)
|
||||
Dim nDO As Integer = 1
|
||||
If EgtGetInfo(nFeatureId, BTL_FTR_DO, nDO) Then
|
||||
m_BTLFeatureM.bDO = (nDO <> 0)
|
||||
Else
|
||||
m_BTLFeatureM.bDO = True
|
||||
End If
|
||||
NotifyPropertyChanged(NameOf(bDO))
|
||||
' leggo des,prid e frame
|
||||
EgtGetInfo(nFeatureId, BTL_FTR_DES, m_BTLFeatureM.sDES)
|
||||
EgtGetInfo(nFeatureId, BTL_FTR_PRID, m_BTLFeatureM.nPRID)
|
||||
EgtGetInfo(nFeatureId, BTL_FTR_FRAME, m_BTLFeatureM.frFRAME)
|
||||
|
||||
' aggiorno parametri della feature
|
||||
|
||||
End Sub
|
||||
|
||||
#End Region ' METHODS
|
||||
|
||||
#Region "COMMANDS"
|
||||
@@ -419,7 +444,7 @@ Public Class BTLFeatureVM
|
||||
End Property
|
||||
|
||||
Public Sub DeleteFeature()
|
||||
If Map.refMainMenuVM.SelPage = Pages.VIEW Then Map.refLeftPanelVM.RemoveFeature()
|
||||
If Map.refMainMenuVM.SelPage = Pages.VIEW Then Map.refFeatureListManagerVM.RemoveFeature()
|
||||
End Sub
|
||||
|
||||
#End Region ' DeleteFeature
|
||||
|
||||
@@ -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)
|
||||
|
||||
@@ -19,21 +19,21 @@ Public Class BTLPartVM
|
||||
End Property
|
||||
Private m_BTLStructureM As BTLStructureM
|
||||
|
||||
Private m_IsSelected As Boolean
|
||||
Public Property IsSelected As Boolean
|
||||
Get
|
||||
Return m_IsSelected
|
||||
End Get
|
||||
Set(value As Boolean)
|
||||
m_IsSelected = value
|
||||
Map.refProjectVM.BTLStructureVM.UpdateSelBTLParts()
|
||||
End Set
|
||||
End Property
|
||||
Friend Sub SetIsSelected(value As Boolean, Optional bByOptim As Boolean = False)
|
||||
m_IsSelected = value
|
||||
Map.refProjectVM.BTLStructureVM.UpdateSelBTLParts(False, bByOptim)
|
||||
NotifyPropertyChanged(NameOf(IsSelected))
|
||||
End Sub
|
||||
'Private m_IsSelected As Boolean
|
||||
'Public Property IsSelected As Boolean
|
||||
' Get
|
||||
' Return m_IsSelected
|
||||
' End Get
|
||||
' Set(value As Boolean)
|
||||
' m_IsSelected = value
|
||||
' Map.refProjectVM.BTLStructureVM.UpdateSelBTLParts()
|
||||
' End Set
|
||||
'End Property
|
||||
'Friend Sub SetIsSelected(value As Boolean, Optional bByOptim As Boolean = False)
|
||||
' m_IsSelected = value
|
||||
' Map.refProjectVM.BTLStructureVM.UpdateSelBTLParts(False, bByOptim)
|
||||
' NotifyPropertyChanged(NameOf(IsSelected))
|
||||
'End Sub
|
||||
|
||||
Public ReadOnly Property nPartId As Integer
|
||||
Get
|
||||
@@ -96,8 +96,13 @@ Public Class BTLPartVM
|
||||
If nMachgroupId = GDB_ID.NULL Then
|
||||
EgtOutLog("Trovato Duplo Ghost")
|
||||
Else
|
||||
Dim MachGroupModel = DbControllers.m_MachGroupController.FindByMachGroupId(Map.refProjManagerVM.CurrProj.nProdId, nMachgroupId)
|
||||
If MachGroupModel.State > ItemState.ND Then
|
||||
Dim MachGroupModel = Nothing
|
||||
If Map.refMainMenuVM.SelPage = Pages.VIEW AndAlso Not IsNothing(Map.refProjManagerVM) Then
|
||||
MachGroupModel = DbControllers.m_MachGroupController.FindByMachGroupId(ProjectManagerVM.CurrProj.nProdId, nMachgroupId)
|
||||
ElseIf Map.refMainMenuVM.SelPage = Pages.ONLYPRODPAGE AndAlso Not IsNothing(Map.refOnlyProdManagerVM) Then
|
||||
MachGroupModel = DbControllers.m_MachGroupController.FindByMachGroupId(Map.refOnlyProdManagerVM.CurrProj.nProdId, nMachgroupId)
|
||||
End If
|
||||
If Not IsNothing(MachGroupModel) AndAlso MachGroupModel.State > ItemState.ND Then
|
||||
bDuploInProduction = True
|
||||
Exit For
|
||||
End If
|
||||
@@ -112,6 +117,7 @@ Public Class BTLPartVM
|
||||
' avviso che tutti i pezzi verranno tolti dai grezzi e chiedo di confermare
|
||||
If MessageBox.Show(String.Format(EgtMsg(61851), nDuploCount), EgtMsg(15003), MessageBoxButton.YesNo, MessageBoxImage.Information) = MessageBoxResult.Yes Then
|
||||
MyMachGroupPanelM.DuploSetToDelete(m_BTLPartM.nPartId)
|
||||
If Map.refMainMenuVM.SelPage = Pages.ONLYPRODPAGE Then DeleteDuplo_OnlyProdPage(DuploList)
|
||||
Else
|
||||
' reimposto vecchio valore
|
||||
Return False
|
||||
@@ -127,7 +133,7 @@ Public Class BTLPartVM
|
||||
If Not EgtBeamSetPartBox(dBtlL, dBtlH, dBtlW, False) Then Return False
|
||||
|
||||
' imposto modificato per copie
|
||||
EgtDuploSetModified(m_BTLPartM.nPartId)
|
||||
MyMachGroupPanelM.SetDuploModified(m_BTLPartM.nPartId)
|
||||
' ricalcolo tutte le feature contenute
|
||||
UpdateFeatures()
|
||||
' setto part da ricalcolare
|
||||
@@ -144,6 +150,34 @@ Public Class BTLPartVM
|
||||
Return True
|
||||
End Function
|
||||
|
||||
Private Sub DeleteDuplo_OnlyProdPage(DuploList As List(Of Integer))
|
||||
For Each nDuploId In DuploList
|
||||
' recupero grezzo cui appartiene
|
||||
Dim nRawPartId As Integer = MyMachGroupPanelM.DuploGetRawPart(nDuploId)
|
||||
' recupero gruppo di lavorazione
|
||||
Dim nMachGroupId As Integer = EgtGetParent(EgtGetParent(nRawPartId))
|
||||
' lo setto come corrente
|
||||
EgtSetCurrMachGroup(nMachGroupId)
|
||||
' elimino pezzo copia
|
||||
EgtRemovePartFromRawPart(nDuploId)
|
||||
EgtErase(nDuploId)
|
||||
'' recupero gruppo di lavorazione e trave dell'interfaccia
|
||||
Dim BeamMachGroup As MyMachGroupVM = Map.refMachGroupPanelVM.MachGroupVMList.FirstOrDefault(Function(x) x.Id = nMachGroupId)
|
||||
If Not IsNothing(BeamMachGroup) Then
|
||||
Dim Beam As PartVM = BeamMachGroup.PartVMList.FirstOrDefault(Function(x) x.nPartId = nDuploId)
|
||||
EgtSetCurrMachGroup(BeamMachGroup.Id)
|
||||
Beam.DeletePart()
|
||||
End If
|
||||
' reset necessario per poter ottenere nMachGroupId corretto
|
||||
EgtResetCurrMachGroup()
|
||||
' aggiorno dati utilizzo barra
|
||||
BeamMachGroup.UpdateUsage()
|
||||
Next
|
||||
' aggiorno quantita' in prod
|
||||
Dim BTLPart As BTLPartVM = CALCPanelVM.GetBTLPartVMFromBTLPartId(m_BTLPartM.nPartId)
|
||||
BTLPart.RefreshPartInProd()
|
||||
End Sub
|
||||
|
||||
Private Function GetOrigFrameGroup(nPartId As Integer) As Integer
|
||||
Dim nCOP As Integer = GDB_ID.NULL
|
||||
Dim nBAS As Integer = GDB_ID.NULL
|
||||
@@ -1521,13 +1555,15 @@ Public Class BTLPartVM
|
||||
End Get
|
||||
Set(value As BTLFeatureVM)
|
||||
m_SelBTLFeatureVM = value
|
||||
If Map.refMainMenuVM.SelPage = Pages.VIEW Then
|
||||
If Map.refMainMenuVM.SelPage = Pages.VIEW OrElse (Map.refMainMenuVM.SelPage = Pages.ONLYPRODPAGE AndAlso Map.refProjectVM.LastSelGridType = ProjectVM.GridSelTypes.PART) Then
|
||||
If Not IsNothing(m_SelBTLFeatureVM) Then
|
||||
DirectCast(m_SelBTLFeatureVM, BTLFeatureVM).SelGeomFeature()
|
||||
' imposto path disegno da mostrare in BottomPanel
|
||||
Map.refBottomPanelVM.SetCurrDraw(DirectCast(m_SelBTLFeatureVM, BTLFeatureVM).sDrawPath)
|
||||
' seleziono pagina BottomPanel
|
||||
Map.refBottomPanelVM.SetSelPartFeatureTab(BottomPanelVM.PartFeatureTab.FEATURE)
|
||||
If Map.refMainMenuVM.SelPage = Pages.VIEW Then
|
||||
' imposto path disegno da mostrare in BottomPanel
|
||||
Map.refBottomPanelVM.SetCurrDraw(DirectCast(m_SelBTLFeatureVM, BTLFeatureVM).sDrawPath)
|
||||
' seleziono pagina BottomPanel
|
||||
Map.refBottomPanelVM.SetSelPartFeatureTab(BottomPanelVM.PartFeatureTab.FEATURE)
|
||||
End If
|
||||
' deseleziono i parametri
|
||||
If Not IsNothing(SelBTLFeatureVM.SelPBTLParam) Then SelBTLFeatureVM.SelPBTLParam = Nothing
|
||||
' rinfresco bottoni freecontour
|
||||
@@ -1538,7 +1574,12 @@ Public Class BTLPartVM
|
||||
Else
|
||||
EgtDeselectAll()
|
||||
End If
|
||||
Map.refLeftPanelVM.FeatureSelectionChanged()
|
||||
'Map.refLeftPanelVM.FeatureSelectionChanged()
|
||||
If Not IsNothing(Map.refFeatureListManagerVM) Then Map.refFeatureListManagerVM.FeatureSelectionChanged()
|
||||
End If
|
||||
If Map.refMainMenuVM.SelPage = Pages.ONLYPRODPAGE Then
|
||||
EgtResetCurrMachGroup()
|
||||
ResetSearchFound()
|
||||
End If
|
||||
EgtDraw()
|
||||
NotifyPropertyChanged(NameOf(SelBTLFeatureVM))
|
||||
@@ -1552,6 +1593,27 @@ Public Class BTLPartVM
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Private m_bSearchFound As Boolean
|
||||
Public ReadOnly Property bSearchFound As Boolean
|
||||
Get
|
||||
Return m_bSearchFound
|
||||
End Get
|
||||
End Property
|
||||
Friend Sub SetSearchFound()
|
||||
m_bSearchFound = True
|
||||
NotifyPropertyChanged(NameOf(Search_Background))
|
||||
End Sub
|
||||
Friend Sub ResetSearchFound()
|
||||
m_bSearchFound = False
|
||||
NotifyPropertyChanged(NameOf(Search_Background))
|
||||
End Sub
|
||||
|
||||
Public ReadOnly Property Search_Background As SolidColorBrush
|
||||
Get
|
||||
Return If(m_bSearchFound AndAlso Map.refMainMenuVM.SelPage = Pages.ONLYPRODPAGE, Brushes.Purple, Brushes.Transparent)
|
||||
End Get
|
||||
End Property
|
||||
|
||||
' Definizione comandi
|
||||
Private m_cmdInvert As ICommand
|
||||
Private m_cmdBackRotation As ICommand
|
||||
@@ -1768,7 +1830,11 @@ Public Class BTLPartVM
|
||||
Dim nNewPartId As Integer = EgtBeamCreatePart()
|
||||
If nNewPartId = GDB_ID.NULL Then Return Nothing
|
||||
' scrivo info proj
|
||||
EgtSetInfo(nNewPartId, BTL_PRT_PROJ, Map.refProjManagerVM.CurrProj.nProjId)
|
||||
If Map.refMainMenuVM.SelPage = Pages.VIEW AndAlso Not IsNothing(Map.refProjManagerVM) Then
|
||||
EgtSetInfo(nNewPartId, BTL_PRT_PROJ, ProjectManagerVM.CurrProj.nProjId)
|
||||
ElseIf Map.refMainMenuVM.SelPage = Pages.ONLYPRODPAGE AndAlso Not IsNothing(Map.refOnlyProdManagerVM) Then
|
||||
EgtSetInfo(nNewPartId, BTL_PRT_PROJ, Map.refOnlyProdManagerVM.CurrProd.nProdId)
|
||||
End If
|
||||
EgtBeamSetPartProdNbr(m_BTLStructureM.NewPDN())
|
||||
EgtBeamSetPartName(m_BTLPartM.sNAM)
|
||||
EgtBeamSetPartCount(m_BTLPartM.nCNT)
|
||||
@@ -2065,7 +2131,7 @@ Public Class BTLPartVM
|
||||
' eseguo rotazione di 90 gradi
|
||||
If EgtRotate(nPartId, b3Solid.Center, vtAxes, 90, GDB_RT.GLOB) Then
|
||||
' imposto modificato per copie
|
||||
EgtDuploSetModified(nPartId)
|
||||
MyMachGroupPanelM.SetDuploModified(nPartId)
|
||||
End If
|
||||
' aggiorno visualizzazione dimensioni
|
||||
NotifyPropertyChanged(NameOf(sW))
|
||||
@@ -2167,7 +2233,7 @@ Public Class BTLPartVM
|
||||
CalcGlobalUpdate(True)
|
||||
' imposto path disegno da mostrare in BottomPanel
|
||||
Dim SelPBTLParam As BTLParamVM = Map.refProjectVM.BTLStructureVM.SelBTLPart.SelBTLFeatureVM.SelPBTLParam
|
||||
If Not IsNothing(SelPBTLParam) Then Map.refBottomPanelVM.SetCurrDraw(SelPBTLParam.sDrawPath)
|
||||
If Not IsNothing(Map.refBottomPanelVM) AndAlso Not IsNothing(SelPBTLParam) Then Map.refBottomPanelVM.SetCurrDraw(SelPBTLParam.sDrawPath)
|
||||
Case NameOf(sender.bDO), NameOf(sender.sPriority)
|
||||
NotifyPropertyChanged(NameOf(bDOALL))
|
||||
' setto pezzo da ricalcolare
|
||||
|
||||
@@ -66,21 +66,44 @@ Public Class BTLStructureVM
|
||||
End Get
|
||||
End Property
|
||||
Friend Sub SetSelectionType(value As SelectionTypes)
|
||||
If Map.refMainMenuVM.SelPage = Pages.ONLYPRODPAGE And Map.refProjectVM.LastSelGridType = ProjectVM.GridSelTypes.MACHGROUP Then
|
||||
' resetto gruppo di lavorazione corrente
|
||||
EgtResetCurrMachGroup()
|
||||
End If
|
||||
If Map.refMainMenuVM.SelPage = Pages.ONLYPRODPAGE Then
|
||||
' rimuovo selezione da pezzo in MachGroup
|
||||
If Not IsNothing(Map.refProjectVM.MachGroupPanelVM.SelectedMachGroup) Then
|
||||
If Not IsNothing(Map.refProjectVM.MachGroupPanelVM.SelectedMachGroup.SelPart) Then
|
||||
Map.refProjectVM.MachGroupPanelVM.SelectedMachGroup.SelPart = Nothing
|
||||
End If
|
||||
End If
|
||||
End If
|
||||
m_PrevSelectionType = m_SelectionType
|
||||
If value = m_SelectionType Then Return
|
||||
If value = m_SelectionType And (Map.refProjectVM.LastSelGridType = ProjectVM.GridSelTypes.PART Or Map.refProjectVM.LastSelGridType = ProjectVM.GridSelTypes.PARTLIST) Then Return
|
||||
m_SelectionType = value
|
||||
Select Case m_SelectionType
|
||||
Case SelectionTypes.SELECT_
|
||||
' imposto modalita' proj su vista feature
|
||||
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)
|
||||
Next
|
||||
' mostro barra di gestione pezzo
|
||||
Map.refProjectVM.NotifyPropertyChanged(NameOf(Map.refProjectVM.PartManager_Visibility))
|
||||
'Map.refProjectVM.NotifyPropertyChanged(NameOf(Map.refProjectVM.PartManager_Visibility))
|
||||
Map.refProjectVM.NotifyPropertyChanged(NameOf(Map.refProdProjManagerVM.PartManager_Visibility))
|
||||
Case SelectionTypes.HIGHLIGHT
|
||||
' imposto modalita' nulla su vista feature
|
||||
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)
|
||||
EgtBeamShowFacesName(False)
|
||||
EgtBeamShowLoadingSide(False, False)
|
||||
End If
|
||||
If Not IsNothing(m_SelBTLPart) Then
|
||||
m_SelBTLPart = Nothing
|
||||
@@ -89,15 +112,19 @@ Public Class BTLStructureVM
|
||||
' mostro pezzi selezionati
|
||||
Map.refProjectVM.BTLStructureVM.ShowAll(False)
|
||||
' se attivata opzione, li assemblo
|
||||
Map.refProjectVM.BTLStructureVM.ShowBuilding(If(Map.refMainMenuVM.SelPage = Pages.VIEW, Map.refShowBeamPanelVM.ShowBuilding_IsChecked, False), False)
|
||||
Map.refProjectVM.BTLStructureVM.ShowBuilding(If(Map.refMainMenuVM.SelPage = Pages.VIEW OrElse Map.refMainMenuVM.SelPage = Pages.ONLYPRODPAGE, Map.refShowBeamPanelVM.ShowBuilding_IsChecked, False), False)
|
||||
' nascondo barra di gestione pezzo
|
||||
Map.refProjectVM.NotifyPropertyChanged(NameOf(Map.refProjectVM.PartManager_Visibility))
|
||||
'Map.refProjectVM.NotifyPropertyChanged(NameOf(Map.refProjectVM.PartManager_Visibility))
|
||||
Map.refProjectVM.NotifyPropertyChanged(NameOf(Map.refProdProjManagerVM.PartManager_Visibility))
|
||||
End Select
|
||||
' aggiornamento grafica
|
||||
Map.refLeftPanelVM.PartShowAllChanged()
|
||||
Map.refLeftPanelVM.FeatureSelectionChanged()
|
||||
'Map.refLeftPanelVM.PartShowAllChanged()
|
||||
Configuration.UpdateGraphics()
|
||||
'Map.refLeftPanelVM.FeatureSelectionChanged()
|
||||
If Not IsNothing(Map.refFeatureListManagerVM) Then Map.refFeatureListManagerVM.FeatureSelectionChanged()
|
||||
Map.refCALCPanelVM.SetIsEnabledForSelPart()
|
||||
Map.refProjectVM.NotifyPropertyChanged(NameOf(Map.refProjectVM.PartManager_Visibility))
|
||||
'Map.refProjectVM.NotifyPropertyChanged(NameOf(Map.refProjectVM.PartManager_Visibility))
|
||||
Map.refProjectVM.NotifyPropertyChanged(NameOf(Map.refProdProjManagerVM.PartManager_Visibility))
|
||||
End Sub
|
||||
|
||||
Private m_SelBTLParts As New PartsObservableCollection(Of BTLPartVM)
|
||||
@@ -113,44 +140,52 @@ Public Class BTLStructureVM
|
||||
Return m_SelBTLPartsCnt
|
||||
End Get
|
||||
End Property
|
||||
Friend Sub UpdateSelBTLParts(Optional bFromSelPart As Boolean = False, Optional bByOptim As Boolean = False)
|
||||
Dim nOldSelCount As Integer = m_SelBTLPartsCnt
|
||||
Dim nSelCount As Integer = BTLPartVMList.LongCount(Function(x) x.IsSelected)
|
||||
m_SelBTLPartsCnt = nSelCount
|
||||
If Not bByOptim AndAlso (nOldSelCount <> nSelCount AndAlso (nOldSelCount = 1 OrElse nSelCount = 1)) OrElse bFromSelPart Then
|
||||
Map.refLeftPanelVM.PartShowAllChanged()
|
||||
Map.refLeftPanelVM.FeatureSelectionChanged()
|
||||
Map.refCALCPanelVM.SetIsEnabledForSelPart()
|
||||
Map.refProjectVM.NotifyPropertyChanged(NameOf(Map.refProjectVM.PartManager_Visibility))
|
||||
End If
|
||||
If nSelCount = 1 Then
|
||||
If bByOptim Then
|
||||
m_SelBTLPart = BTLPartVMList.FirstOrDefault(Function(x) x.IsSelected)
|
||||
Else
|
||||
SelBTLPart = BTLPartVMList.FirstOrDefault(Function(x) x.IsSelected)
|
||||
End If
|
||||
Else
|
||||
If bByOptim Then
|
||||
m_SelBTLPart = Nothing
|
||||
Else
|
||||
SelBTLPart = Nothing
|
||||
' mostro in parte bassa dati BTL
|
||||
Map.refBottomPanelVM.SetSelPartFeatureTab(BottomPanelVM.PartFeatureTab.STRUCTURE_)
|
||||
' mostro pezzi selezionati
|
||||
Map.refProjectVM.BTLStructureVM.ShowAll(False, True)
|
||||
Core.ViewPanelVM.BWSetView(VT.ISO_SW, False)
|
||||
EgtZoom(ZM.ALL)
|
||||
End If
|
||||
NotifyPropertyChanged(NameOf(SelBTLPart))
|
||||
End If
|
||||
End Sub
|
||||
|
||||
'Friend Sub UpdateSelBTLParts(Optional bFromSelPart As Boolean = False, Optional bByOptim As Boolean = False)
|
||||
' Dim nOldSelCount As Integer = m_SelBTLPartsCnt
|
||||
' Dim nSelCount As Integer = BTLPartVMList.LongCount(Function(x) x.IsSelected)
|
||||
' m_SelBTLPartsCnt = nSelCount
|
||||
' If Not bByOptim AndAlso (nOldSelCount <> nSelCount AndAlso (nOldSelCount = 1 OrElse nSelCount = 1)) OrElse bFromSelPart Then
|
||||
' 'Map.refLeftPanelVM.PartShowAllChanged()
|
||||
' If Not IsNothing(Map.refFeatureListManagerVM) Then Map.refFeatureListManagerVM.PartShowAllChanged()
|
||||
' If Not IsNothing(Map.refBTLPartManagerVM) Then Map.refBTLPartManagerVM.PartShowAllChanged()
|
||||
' Map.refFeatureListManagerVM.FeatureSelectionChanged()
|
||||
' 'Map.refLeftPanelVM.FeatureSelectionChanged()
|
||||
' Map.refCALCPanelVM.SetIsEnabledForSelPart()
|
||||
' Map.refProjectVM.NotifyPropertyChanged(NameOf(Map.refProjectVM.PartManager_Visibility))
|
||||
' End If
|
||||
' If nSelCount = 1 Then
|
||||
' If bByOptim Then
|
||||
' m_SelBTLPart = BTLPartVMList.FirstOrDefault(Function(x) x.IsSelected)
|
||||
' Else
|
||||
' SelBTLPart = BTLPartVMList.FirstOrDefault(Function(x) x.IsSelected)
|
||||
' End If
|
||||
' Else
|
||||
' If bByOptim Then
|
||||
' m_SelBTLPart = Nothing
|
||||
' Else
|
||||
' SelBTLPart = Nothing
|
||||
' ' mostro in parte bassa dati BTL
|
||||
' Map.refBottomPanelVM.SetSelPartFeatureTab(BottomPanelVM.PartFeatureTab.STRUCTURE_)
|
||||
' ' mostro pezzi selezionati
|
||||
' Map.refProjectVM.BTLStructureVM.ShowAll(False, True)
|
||||
' Core.ViewPanelVM.BWSetView(VT.ISO_SW, False)
|
||||
' EgtZoom(ZM.ALL)
|
||||
' End If
|
||||
' NotifyPropertyChanged(NameOf(SelBTLPart))
|
||||
' End If
|
||||
'End Sub
|
||||
|
||||
Private Sub SelBTLParts_CollectionChanged(sender As Object, e As NotifyCollectionChangedEventArgs)
|
||||
If m_bOnlySelectItem Then Return
|
||||
Select Case e.Action
|
||||
Case NotifyCollectionChangedAction.Add
|
||||
If Map.refMainMenuVM.SelPage = Pages.ONLYPRODPAGE And Map.refProjectVM.LastSelGridType = ProjectVM.GridSelTypes.MACHGROUP Then
|
||||
' resetto gruppo di lavorazione corrente
|
||||
EgtResetCurrMachGroup()
|
||||
End If
|
||||
If e.NewItems.Count > 0 AndAlso Not IsNothing(e.NewItems(0)) Then
|
||||
If (Map.refMainMenuVM.SelPage = Pages.VIEW AndAlso m_SelectionType = SelectionTypes.SELECT_) OrElse Map.refMainMenuVM.SelPage = Pages.MACHINING Then
|
||||
If ((Map.refMainMenuVM.SelPage = Pages.VIEW OrElse Map.refMainMenuVM.SelPage = Pages.ONLYPRODPAGE) AndAlso m_SelectionType = SelectionTypes.SELECT_) OrElse Map.refMainMenuVM.SelPage = Pages.MACHINING Then
|
||||
SelectBTLPart(e.NewItems(0))
|
||||
Else ' SelectionTypes.HIGHLIGHT
|
||||
HighlightBTLPart(e.NewItems(0))
|
||||
@@ -158,14 +193,14 @@ Public Class BTLStructureVM
|
||||
End If
|
||||
Case NotifyCollectionChangedAction.Remove
|
||||
If e.OldItems.Count > 0 AndAlso Not IsNothing(e.OldItems(0)) Then
|
||||
If (Map.refMainMenuVM.SelPage = Pages.VIEW AndAlso m_PrevSelectionType = SelectionTypes.SELECT_) OrElse Map.refMainMenuVM.SelPage = Pages.MACHINING Then
|
||||
If ((Map.refMainMenuVM.SelPage = Pages.VIEW OrElse Map.refMainMenuVM.SelPage = Pages.ONLYPRODPAGE) AndAlso m_PrevSelectionType = SelectionTypes.SELECT_) OrElse Map.refMainMenuVM.SelPage = Pages.MACHINING Then
|
||||
DeselectBTLPart(e.OldItems(0))
|
||||
Else ' SelectionTypes.HIGHLIGHT
|
||||
DeHighlightBTLPart(e.OldItems(0))
|
||||
End If
|
||||
End If
|
||||
Case NotifyCollectionChangedAction.Reset
|
||||
If (Map.refMainMenuVM.SelPage = Pages.VIEW AndAlso m_PrevSelectionType = SelectionTypes.SELECT_) OrElse Map.refMainMenuVM.SelPage = Pages.MACHINING Then
|
||||
If ((Map.refMainMenuVM.SelPage = Pages.VIEW OrElse Map.refMainMenuVM.SelPage = Pages.ONLYPRODPAGE) AndAlso m_PrevSelectionType = SelectionTypes.SELECT_) OrElse Map.refMainMenuVM.SelPage = Pages.MACHINING Then
|
||||
If Not IsNothing(m_SelBTLPart) Then
|
||||
DeselectBTLPart(m_SelBTLPart)
|
||||
End If
|
||||
@@ -178,32 +213,19 @@ Public Class BTLStructureVM
|
||||
SelBTLPart = Nothing
|
||||
End Select
|
||||
' aggiornamento grafica
|
||||
Map.refLeftPanelVM.PartShowAllChanged()
|
||||
Configuration.UpdateGraphics()
|
||||
End Sub
|
||||
|
||||
Private Sub SelectBTLPart(BtlPart As BTLPartVM)
|
||||
EgtBeamShowFacesName( False)
|
||||
EgtBeamShowLoadingSide( False, False)
|
||||
m_SelBTLPart = BtlPart
|
||||
If Map.refMainMenuVM.SelPage = Pages.VIEW 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(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)
|
||||
Configuration.SelectedPieces(BtlPart.nPartId, Me)
|
||||
' seleziono pagina BottomPanel
|
||||
Map.refBottomPanelVM.SetSelPartFeatureTab(BottomPanelVM.PartFeatureTab.PART)
|
||||
'' 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
|
||||
If Not IsNothing(Map.refBottomPanelVM) Then
|
||||
Map.refBottomPanelVM.SetSelPartFeatureTab(BottomPanelVM.PartFeatureTab.PART)
|
||||
End If
|
||||
' 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)
|
||||
@@ -211,48 +233,44 @@ Public Class BTLStructureVM
|
||||
ElseIf Map.refMainMenuVM.SelPage = Pages.MACHINING Then
|
||||
' resetto gruppo di lavorazione corrente
|
||||
EgtResetCurrMachGroup()
|
||||
EgtBeamShowFacesName(False)
|
||||
EgtBeamShowLoadingSide(False, 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
|
||||
Configuration.SetSearchPiece(BtlPart.nPartId)
|
||||
' 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
|
||||
' deseleziono eventuale MachGroup selezionato
|
||||
If Not IsNothing(Map.refMachGroupPanelVM.SelectedMachGroup) Then
|
||||
Map.refMachGroupPanelVM.SelectedMachGroup = Nothing
|
||||
End If
|
||||
If Map.refProjectVM.LastSelGridType = ProjectVM.GridSelTypes.MACHGROUP Then
|
||||
' resetto gruppo di lavorazione corrente
|
||||
EgtResetCurrMachGroup()
|
||||
End If
|
||||
Configuration.SelectedPieces(BtlPart.nPartId, Me)
|
||||
' 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
|
||||
Core.ViewPanelVM.BWSetView(If(Core.ViewPanelVM.Type = BWType.BEAM, VT.ISO_SW, VT.TOP), False)
|
||||
EgtZoom(ZM.ALL)
|
||||
End If
|
||||
NotifyPropertyChanged(NameOf(SelBTLPart))
|
||||
End Sub
|
||||
Private Sub DeselectBTLPart(BtlPart As BTLPartVM)
|
||||
' se necessario tolgo solido dal precedentemente selezionato
|
||||
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
|
||||
Configuration.DeselectSolid(BtlPart.nPartId, True)
|
||||
If m_SelBTLPart Is BtlPart Then
|
||||
EgtBeamShowFacesName( False)
|
||||
EgtBeamShowLoadingSide( False, False)
|
||||
EgtBeamShowFacesName(False)
|
||||
EgtBeamShowLoadingSide(False, False)
|
||||
m_SelBTLPart = Nothing
|
||||
NotifyPropertyChanged(NameOf(SelBTLPart))
|
||||
End If
|
||||
' disabilito eventuale feature selezionata
|
||||
If Not IsNothing(BtlPart.m_SelBTLFeatureVM) Then BtlPart.SelBTLFeatureVM = Nothing
|
||||
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)
|
||||
@@ -271,15 +289,19 @@ Public Class BTLStructureVM
|
||||
nNextPartId = EgtGetNext(nNextPartId)
|
||||
End While
|
||||
End If
|
||||
If Map.refMainMenuVM.SelPage = Pages.ONLYPRODPAGE Then
|
||||
' trovo ed evidenzio MachGroup e Duplo di questo pezzo
|
||||
Configuration.SetSearchPiece(BtlPart.nPartId)
|
||||
End If
|
||||
' seleziono pagina BottomPanel
|
||||
Map.refBottomPanelVM.SetSelPartFeatureTab(BottomPanelVM.PartFeatureTab.NULL)
|
||||
If Not IsNothing(Map.refBottomPanelVM) Then Map.refBottomPanelVM.SetSelPartFeatureTab(BottomPanelVM.PartFeatureTab.NULL)
|
||||
EgtDraw()
|
||||
End Sub
|
||||
Private Sub DeHighlightBTLPart(BtlPart As BTLPartVM, Optional bDraw As Boolean = True)
|
||||
EgtResetMark(BtlPart.nPartId)
|
||||
' se modalità building
|
||||
If Map.refShowBeamPanelVM.ShowBuilding_IsChecked Then
|
||||
' evidenzio anche copie
|
||||
' deevidenzio anche copie
|
||||
Dim nNextPartId As Integer = EgtGetNext(BtlPart.nPartId)
|
||||
While nNextPartId <> GDB_ID.NULL
|
||||
Dim nOrigId As Integer = GDB_ID.NULL
|
||||
@@ -291,16 +313,18 @@ Public Class BTLStructureVM
|
||||
nNextPartId = EgtGetNext(nNextPartId)
|
||||
End While
|
||||
End If
|
||||
' deevidenzio MachGroup e Duplo di questo pezzo
|
||||
Configuration.ResetSearchPiece(BtlPart.nPartId)
|
||||
' seleziono pagina BottomPanel
|
||||
'Map.refBottomPanelVM.SetSelPartFeatureTab(BottomPanelVM.PartFeatureTab.NULL)
|
||||
If bDraw Then EgtDraw()
|
||||
End Sub
|
||||
|
||||
Friend ReadOnly Property SelBTLPartList As List(Of BTLPartVM)
|
||||
Get
|
||||
Return m_BTLPartVMList.Where(Function(x) x.IsSelected).ToList()
|
||||
End Get
|
||||
End Property
|
||||
'Friend ReadOnly Property SelBTLPartList As List(Of BTLPartVM)
|
||||
' Get
|
||||
' Return m_BTLPartVMList.Where(Function(x) x.IsSelected).ToList()
|
||||
' End Get
|
||||
'End Property
|
||||
|
||||
Private m_SelBTLPart As BTLPartVM = Nothing
|
||||
Public Property SelBTLPart As BTLPartVM
|
||||
@@ -308,18 +332,21 @@ Public Class BTLStructureVM
|
||||
Return m_SelBTLPart
|
||||
End Get
|
||||
Set(value As BTLPartVM)
|
||||
If Map.refMainMenuVM.SelPage = Pages.MACHINING Or (Map.refMainMenuVM.SelPage = Pages.ONLYPRODPAGE And Map.refProjectVM.LastSelGridType = ProjectVM.GridSelTypes.MACHGROUP) AndAlso
|
||||
Not IsNothing(value) Then
|
||||
' resetto gruppo di lavorazione corrente
|
||||
EgtResetCurrMachGroup()
|
||||
End If
|
||||
If Not IsNothing(m_SelBTLPart) Then
|
||||
' se necessario tolgo solido dal precedentemente selezionato
|
||||
If Map.refShowBeamPanelVM.ShowSolid_IsChecked Then
|
||||
Map.refShowBeamPanelVM.SetShowSolid(False)
|
||||
End If
|
||||
Configuration.DeselectSolid()
|
||||
' 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)
|
||||
@@ -331,7 +358,7 @@ 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
|
||||
' aggiorno stato selezionato tutto
|
||||
@@ -339,28 +366,8 @@ Public Class BTLStructureVM
|
||||
Core.ViewPanelVM.BWSetView(If(Core.ViewPanelVM.Type = BWType.BEAM, VT.ISO_SW, VT.TOP), False)
|
||||
EgtZoom(ZM.ALL)
|
||||
ElseIf Map.refMainMenuVM.SelPage = Pages.MACHINING Then
|
||||
' resetto gruppo di lavorazione corrente
|
||||
EgtResetCurrMachGroup()
|
||||
' 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) = 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
|
||||
Configuration.SetSearchPiece(m_SelBTLPart.nPartId)
|
||||
' seleziono pezzo nella scena
|
||||
SceneSelPartSelection()
|
||||
Core.ViewPanelVM.BWSetView(If(Core.ViewPanelVM.Type = BWType.BEAM, VT.ISO_SW, VT.TOP), False)
|
||||
@@ -618,6 +625,8 @@ Public Class BTLStructureVM
|
||||
Return Map.refProjManagerVM.nProjType
|
||||
Case Pages.MACHINING
|
||||
Return Map.refProdManagerVM.nProdType
|
||||
Case Pages.ONLYPRODPAGE
|
||||
Return Map.refOnlyProdManagerVM.nProdType
|
||||
Case Else
|
||||
Return BWType.NULL
|
||||
End Select
|
||||
@@ -638,7 +647,7 @@ Public Class BTLStructureVM
|
||||
End Get
|
||||
Set(value As String)
|
||||
If EgtSetInfo(m_BTLStructureM.nBTLInfoId, BTL_GEN_LISTNAME, value) Then
|
||||
DbControllers.m_ProjController.UpdateListName(Map.refProjManagerVM.CurrProj.nProjId, value)
|
||||
DbControllers.m_ProjController.UpdateListName(ProjectManagerVM.CurrProj.nProjId, value)
|
||||
m_BTLStructureM.m_sLISTNAME = value
|
||||
Else
|
||||
NotifyPropertyChanged("sLISTNAME")
|
||||
@@ -1021,7 +1030,7 @@ Public Class BTLStructureVM
|
||||
Next
|
||||
End Sub
|
||||
|
||||
Private Sub SceneSelPartSelection()
|
||||
Friend Sub SceneSelPartSelection()
|
||||
' deseleziono tutto
|
||||
EgtDeselectAll()
|
||||
' disabilito impostazione modificato
|
||||
@@ -1044,9 +1053,10 @@ Public Class BTLStructureVM
|
||||
Dim DisableMgr As New DisableModifiedMgr
|
||||
If Not IsNothing(SelBTLPart) Then
|
||||
' se pezzo solido, lo riporto normale
|
||||
If Map.refShowBeamPanelVM.ShowSolid_IsChecked Then
|
||||
Map.refShowBeamPanelVM.SetShowSolid(False)
|
||||
End If
|
||||
Configuration.DeselectSolid()
|
||||
'If Map.refShowBeamPanelVM.ShowSolid_IsChecked Then
|
||||
' Map.refShowBeamPanelVM.SetShowSolid(False)
|
||||
'End If
|
||||
' tolgo pezzo selezionato
|
||||
SelBTLPart.SelBTLFeatureVM = Nothing
|
||||
End If
|
||||
@@ -1059,7 +1069,8 @@ Public Class BTLStructureVM
|
||||
Dim nGeomPartId As Integer = EgtGetFirstPart()
|
||||
While nGeomPartId <> GDB_ID.NULL
|
||||
Dim CurrPart As BTLPartVM = BTLPartVMList.FirstOrDefault(Function(x) x.nPartId = nGeomPartId)
|
||||
If Not IsNothing(CurrPart) AndAlso (Not bOnlySelected OrElse (bOnlySelected AndAlso CurrPart.IsSelected)) Then
|
||||
' If Not IsNothing(CurrPart) AndAlso (Not bOnlySelected OrElse (bOnlySelected AndAlso CurrPart.IsSelected)) Then
|
||||
If Not IsNothing(CurrPart) AndAlso Not bOnlySelected Then
|
||||
Dim nMode As Integer
|
||||
EgtGetMode(CurrPart.nPartId, nMode)
|
||||
If nMode <> GDB_MD.STD Then
|
||||
@@ -1083,10 +1094,11 @@ Public Class BTLStructureVM
|
||||
Dim DisableMgr As New DisableModifiedMgr
|
||||
If Not IsNothing(SelBTLPart) Then
|
||||
' se pezzo solido, lo riporto normale
|
||||
If Map.refShowBeamPanelVM.ShowSolid_IsChecked Then
|
||||
ShowSolid(GDB_ID.NULL, False, False)
|
||||
Map.refShowBeamPanelVM.SetShowSolid(False)
|
||||
End If
|
||||
Configuration.DeselectSolid(GDB_ID.NULL, True)
|
||||
'If Map.refShowBeamPanelVM.ShowSolid_IsChecked Then
|
||||
' ShowSolid(GDB_ID.NULL, False, False)
|
||||
' Map.refShowBeamPanelVM.SetShowSolid(False)
|
||||
'End If
|
||||
' tolgo pezzo selezionato
|
||||
SelBTLPart.SelBTLFeatureVM = Nothing
|
||||
End If
|
||||
@@ -1225,7 +1237,7 @@ Public Class BTLStructureVM
|
||||
bSearchTextOk = False
|
||||
End If
|
||||
Dim bResult As Boolean = bSectionOk AndAlso bGroupOk AndAlso bSubGroupOk AndAlso bSearchTextOk
|
||||
If Not bResult And CurrBTLPart.IsSelected Then CurrBTLPart.IsSelected = False
|
||||
' If Not bResult And CurrBTLPart.IsSelected Then CurrBTLPart.IsSelected = False
|
||||
Return bResult
|
||||
End Function
|
||||
|
||||
@@ -1329,7 +1341,7 @@ Public Class BTLStructureVM
|
||||
End Property
|
||||
|
||||
Public Sub DeletePart()
|
||||
If Map.refMainMenuVM.SelPage = Pages.VIEW Then Map.refLeftPanelVM.RemovePartCmd()
|
||||
If Map.refMainMenuVM.SelPage = Pages.VIEW OrElse Map.refMainMenuVM.SelPage = Pages.ONLYPRODPAGE Then Map.refBTLPartManagerVM.RemovePartCmd()
|
||||
End Sub
|
||||
|
||||
#End Region ' DeletePart
|
||||
|
||||
@@ -2,7 +2,6 @@
|
||||
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"
|
||||
xmlns:EgtBEAMWALLCORE="clr-namespace:EgtBEAMWALL.Core;assembly=EgtBEAMWALL.Core"
|
||||
Title="{Binding Title}"
|
||||
Style="{DynamicResource {x:Type EgtWPFLib5:EgtCustomWindow}}"
|
||||
|
||||
@@ -1,4 +1,6 @@
|
||||
Public Class BeamMachiningsWindowV
|
||||
Imports EgtBEAMWALL.Core
|
||||
|
||||
Public Class BeamMachiningsWindowV
|
||||
|
||||
Private WithEvents m_BeamMachiningsWindowVM As MyBeamMachiningsWindowVM
|
||||
|
||||
|
||||
@@ -100,7 +100,7 @@ Public Class BlockedWndVM
|
||||
NotifyPropertyChanged(NameOf(Buttons_Visibility))
|
||||
NotifyPropertyChanged(NameOf(Msg_Text))
|
||||
' mando messaggio di blocco avvenuto
|
||||
DbControllers.m_StatusMapController.UpdateAction("", Map.refProdManagerVM.CurrProd.nProdId, Map.refProdManagerVM.CurrProd.nProdId, StatusMapItemType.Comm, StatusMapOpType.ViewOptimStoped, "")
|
||||
DbControllers.m_StatusMapController.UpdateAction("", ProjectManagerVM.CurrProd.nProdId, ProjectManagerVM.CurrProd.nProdId, StatusMapItemType.Comm, StatusMapOpType.ViewOptimStoped, "")
|
||||
'ElseIf m_nIndex > 17 Then
|
||||
' 'If m_Waiting_Timer.IsEnabled Then m_Waiting_Timer.Stop()
|
||||
' If Not SupervisorCommThread.bViewerOptimizerBlocked Then
|
||||
@@ -136,7 +136,7 @@ Public Class BlockedWndVM
|
||||
' salvo progetto
|
||||
Map.refProdManagerVM.Save()
|
||||
' mando messaggio di blocco avvenuto
|
||||
DbControllers.m_StatusMapController.UpdateAction("", Map.refProdManagerVM.CurrProd.nProdId, Map.refProdManagerVM.CurrProd.nProdId, StatusMapItemType.Comm, StatusMapOpType.ViewOptimStoped, "")
|
||||
DbControllers.m_StatusMapController.UpdateAction("", ProjectManagerVM.CurrProd.nProdId, ProjectManagerVM.CurrProd.nProdId, StatusMapItemType.Comm, StatusMapOpType.ViewOptimStoped, "")
|
||||
End Sub
|
||||
|
||||
#End Region ' Save
|
||||
@@ -160,7 +160,7 @@ Public Class BlockedWndVM
|
||||
''' </summary>
|
||||
Public Sub DoNotSave()
|
||||
' mando messaggio di blocco avvenuto
|
||||
DbControllers.m_StatusMapController.UpdateAction("", Map.refProdManagerVM.CurrProd.nProdId, Map.refProdManagerVM.CurrProd.nProdId, StatusMapItemType.Comm, StatusMapOpType.ViewOptimStoped, "")
|
||||
DbControllers.m_StatusMapController.UpdateAction("", ProjectManagerVM.CurrProd.nProdId, ProjectManagerVM.CurrProd.nProdId, StatusMapItemType.Comm, StatusMapOpType.ViewOptimStoped, "")
|
||||
End Sub
|
||||
|
||||
#End Region ' DoNotSave
|
||||
|
||||
@@ -33,8 +33,8 @@
|
||||
</Grid.RowDefinitions>
|
||||
<EgtWPFLib5:EgtScrollViewer Focusable="False">
|
||||
<EgtBEAMWALL:PartParametersV DataContext="{StaticResource PartParametersVM}"
|
||||
Tag="{Binding Tag.SelBTLPart, RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:BottomPanelV}}}"
|
||||
Margin="5"/>
|
||||
Tag="{Binding Tag.SelBTLPart, RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:BottomPanelV}}}"
|
||||
Margin="5"/>
|
||||
</EgtWPFLib5:EgtScrollViewer>
|
||||
<TextBlock Grid.Row="1"
|
||||
Text="{Binding Tag.SelBTLPart.sCALC_MSG, RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:BottomPanelV}}}"
|
||||
@@ -99,7 +99,7 @@
|
||||
<Image Grid.Column="1"
|
||||
Grid.Row="1"
|
||||
Source="{Binding sCurrDraw}"
|
||||
Margin="5"/>
|
||||
Margin="5"/>
|
||||
<!--</TabItem.Content>
|
||||
</TabItem>
|
||||
</TabControl>-->
|
||||
|
||||
@@ -4,6 +4,7 @@ Imports EgtWPFLib5
|
||||
Imports EgtBEAMWALL.Core
|
||||
Imports System.Collections.ObjectModel
|
||||
Imports System.Windows.Threading
|
||||
Imports System.Data.Entity.Core.Metadata.Edm
|
||||
|
||||
Public Class CALCPanelVM
|
||||
Inherits VMBase
|
||||
@@ -45,6 +46,16 @@ Public Class CALCPanelVM
|
||||
End Set
|
||||
End Property
|
||||
|
||||
Private m_VerifyAll_IsEnabled As Boolean = True
|
||||
Public Property VerifyAll_IsEnabled As Boolean
|
||||
Get
|
||||
Return m_VerifyAll_IsEnabled
|
||||
End Get
|
||||
Set(value As Boolean)
|
||||
m_VerifyAll_IsEnabled = value
|
||||
End Set
|
||||
End Property
|
||||
|
||||
Private m_ChooseMachineBtn_Visibility As Boolean = True
|
||||
Public Property ChooseMachineBtn_Visibility As Visibility
|
||||
Get
|
||||
@@ -207,16 +218,25 @@ Public Class CALCPanelVM
|
||||
|
||||
Friend Sub SetCalcPanelIsEnabled(bIsEnabled As Boolean)
|
||||
m_CALCPanel_IsEnabled = bIsEnabled
|
||||
m_VerifyAll_IsEnabled = bIsEnabled
|
||||
NotifyPropertyChanged(NameOf(CALCPanel_IsEnabled))
|
||||
NotifyPropertyChanged(NameOf(VerifyAll_IsEnabled))
|
||||
NotifyPropertyChanged(NameOf(Verify_IsEnabled))
|
||||
NotifyPropertyChanged(NameOf(Simulate_IsEnabled))
|
||||
NotifyPropertyChanged(NameOf(Edit_IsEnabled))
|
||||
End Sub
|
||||
Friend Sub SetIsEnabledForSelPart()
|
||||
NotifyPropertyChanged(NameOf(Verify_IsEnabled))
|
||||
m_VerifyAll_IsEnabled = False
|
||||
NotifyPropertyChanged(NameOf(VerifyAll_IsEnabled))
|
||||
NotifyPropertyChanged(NameOf(Simulate_IsEnabled))
|
||||
NotifyPropertyChanged(NameOf(Edit_IsEnabled))
|
||||
End Sub
|
||||
Friend Sub SetVerifyIsEnabled(bIsEnabled As Boolean)
|
||||
m_CALCPanel_IsEnabled = bIsEnabled
|
||||
NotifyPropertyChanged(NameOf(CALCPanel_IsEnabled))
|
||||
NotifyPropertyChanged(NameOf(Verify_IsEnabled))
|
||||
End Sub
|
||||
|
||||
Private Sub Calc_ProcessResult(sender As Object, e As CalcResultEventArgs)
|
||||
ProcessResults(e.m_Result)
|
||||
@@ -249,9 +269,9 @@ Public Class CALCPanelVM
|
||||
If m_FromProduce <> ProduceType.NULL Then
|
||||
Select Case m_FromProduce
|
||||
Case ProduceType.PRODUCE
|
||||
Map.refTopPanelVM.ProduceRawPart()
|
||||
Map.refRawPartManagerVM.ProduceRawPart()
|
||||
Case ProduceType.PRODUCEALL
|
||||
Map.refTopPanelVM.ProduceAllRawPart()
|
||||
Map.refRawPartManagerVM.ProduceAllRawPart()
|
||||
End Select
|
||||
m_FromProduce = ProduceType.NULL
|
||||
End If
|
||||
@@ -266,7 +286,7 @@ Public Class CALCPanelVM
|
||||
EgtGetCurrFilePath(sCurrFilePath)
|
||||
EgtOpenFile(sCurrFilePath)
|
||||
' imposto duplo modificato
|
||||
EgtDuploSetModified(Map.refProjectVM.BTLStructureVM.SelBTLPart.nPartId)
|
||||
MyMachGroupPanelM.SetDuploModified(Map.refProjectVM.BTLStructureVM.SelBTLPart.nPartId)
|
||||
' riseleziono il pezzo precedentemente selezionato
|
||||
Map.refProjectVM.BTLStructureVM.SetSelBTLPart(Map.refProjectVM.BTLStructureVM.SelBTLPart)
|
||||
Map.refMyStatusBarVM.SetOutputMessage("Modified file reloaded", 1)
|
||||
@@ -276,7 +296,7 @@ Public Class CALCPanelVM
|
||||
End Sub
|
||||
|
||||
Friend Shared Sub ProcessResults(MachGroupId As MyMachGroupVM)
|
||||
ProcessResults(Map.refProdManagerVM.CurrProd.sProdDirPath & "/" & MachGroupId.nName & ".txt", ProjectType.PROD, MachGroupId.Id)
|
||||
ProcessResults(ProjectManagerVM.CurrProd.sProdDirPath & "/" & MachGroupId.nName & ".txt", ProjectType.PROD, MachGroupId.Id)
|
||||
End Sub
|
||||
|
||||
Private Shared Sub ProcessResults(Bar As Bar)
|
||||
@@ -574,14 +594,15 @@ Public Class CALCPanelVM
|
||||
Dim sMachineName As String = ""
|
||||
If Map.refMainMenuVM.SelPage = Pages.VIEW Then
|
||||
nProjType = Map.refProjManagerVM.nProjType
|
||||
sMachineName = If(Not IsNothing(Map.refProjManagerVM.CurrProj), Map.refProjManagerVM.CurrProj.sMachine, "")
|
||||
sMachineName = If(Not IsNothing(ProjectManagerVM.CurrProj), ProjectManagerVM.CurrProj.sMachine, "")
|
||||
ElseIf Map.refMainMenuVM.SelPage = Pages.MACHINING Then
|
||||
nProjType = Map.refProdManagerVM.nProdType
|
||||
sMachineName = If(Not IsNothing(Map.refProdManagerVM.CurrProd), Map.refProdManagerVM.CurrProd.sMachine, "")
|
||||
sMachineName = If(Not IsNothing(ProjectManagerVM.CurrProd), ProjectManagerVM.CurrProd.sMachine, "")
|
||||
End If
|
||||
If nMachType = nProjType OrElse
|
||||
(nMachType = 3 And Map.refMainMenuVM.SelPage = Pages.VIEW And Not IsNothing(Map.refProjManagerVM.CurrProj)) OrElse
|
||||
(nMachType = 3 And Map.refMainMenuVM.SelPage = Pages.MACHINING And Not IsNothing(Map.refProdManagerVM.CurrProd)) Then
|
||||
(nMachType = 3 And Map.refMainMenuVM.SelPage = Pages.VIEW And Not IsNothing(Map.refProjManagerVM) AndAlso Not IsNothing(ProjectManagerVM.CurrProj)) OrElse
|
||||
(nMachType = 3 And Map.refMainMenuVM.SelPage = Pages.MACHINING And Not IsNothing(Map.refProdManagerVM) AndAlso Not IsNothing(ProjectManagerVM.CurrProd)) OrElse
|
||||
(nMachType = 3 And Map.refMainMenuVM.SelPage = Pages.ONLYPRODPAGE And Not IsNothing(Map.refOnlyProdManagerVM) AndAlso Not IsNothing(Map.refOnlyProdManagerVM.CurrProd)) Then
|
||||
MachineList.Add(Machine)
|
||||
' Se il nome Macchina coincide setto la macchina selezionata con la macchina associata al progetto
|
||||
If Machine.Name = sMachineName Then
|
||||
@@ -645,19 +666,40 @@ Public Class CALCPanelVM
|
||||
''' Execute the Open. This method is invoked by the OpenCommand.
|
||||
''' </summary>
|
||||
Friend Sub Verify()
|
||||
If (Map.refMainMenuVM.SelPage = Pages.VIEW AndAlso (IsNothing(Map.refProjManagerVM.CurrProj) OrElse IsNothing(Map.refProjectVM.BTLStructureVM)) OrElse
|
||||
(Map.refMainMenuVM.SelPage = Pages.MACHINING AndAlso (IsNothing(Map.refProdManagerVM.CurrProd) OrElse IsNothing(Map.refProjectVM.MachGroupPanelVM)))) Then Return
|
||||
If (Map.refMainMenuVM.SelPage = Pages.VIEW AndAlso (IsNothing(ProjectManagerVM.CurrProj) OrElse IsNothing(Map.refProjectVM.BTLStructureVM))) OrElse
|
||||
(Map.refMainMenuVM.SelPage = Pages.MACHINING AndAlso (IsNothing(ProjectManagerVM.CurrProd) OrElse IsNothing(Map.refProjectVM.MachGroupPanelVM))) OrElse
|
||||
(Map.refMainMenuVM.SelPage = Pages.ONLYPRODPAGE AndAlso (IsNothing(Map.refOnlyProdManagerVM.CurrProd) OrElse IsNothing(Map.refProjectVM.BTLStructureVM) OrElse IsNothing(Map.refProjectVM.MachGroupPanelVM))) Then Return
|
||||
Dim ProjType As BWType
|
||||
Dim BarList() As EgtBEAMWALL.Core.Bar = Nothing
|
||||
If Map.refMainMenuVM.SelPage = Pages.VIEW Then
|
||||
ProjType = Map.refProjManagerVM.CurrProj.nType
|
||||
Else
|
||||
ProjType = Map.refProdManagerVM.CurrProd.nType
|
||||
ProjType = ProjectManagerVM.CurrProj.nType
|
||||
If Not CreateBarToVerify(Pages.VIEW, ProjType, BarList) Then Return
|
||||
' lancio calcolo
|
||||
EgtBEAMWALL.Core.CalcIntegration.Run(BarList, ProjectManagerVM.CurrProj.sProjDirPath, AddressOf ManageCalc)
|
||||
ElseIf Map.refMainMenuVM.SelPage = Pages.MACHINING Then
|
||||
ProjType = ProjectManagerVM.CurrProd.nType
|
||||
If Not CreateBarToVerify(Pages.MACHINING, ProjType, BarList) Then Return
|
||||
' lancio calcolo
|
||||
EgtBEAMWALL.Core.CalcIntegration.Run(BarList, ProjectManagerVM.CurrProd.sProdDirPath, AddressOf ManageCalc)
|
||||
ElseIf Map.refMainMenuVM.SelPage = Pages.ONLYPRODPAGE Then
|
||||
ProjType = Map.refOnlyProdManagerVM.CurrProd.nType
|
||||
If Map.refProjectVM.LastSelGridType = ProjectVM.GridSelTypes.PART Then
|
||||
If Not CreateBarToVerify(Pages.VIEW, ProjType, BarList) Then Return
|
||||
' lancio calcolo
|
||||
EgtBEAMWALL.Core.CalcIntegration.Run(BarList, Map.refOnlyProdManagerVM.CurrProj.sProjDirPath, AddressOf ManageCalc)
|
||||
ElseIf Map.refProjectVM.LastSelGridType = ProjectVM.GridSelTypes.MACHGROUP Then
|
||||
If Not CreateBarToVerify(Pages.MACHINING, ProjType, BarList) Then Return
|
||||
' lancio calcolo
|
||||
EgtBEAMWALL.Core.CalcIntegration.Run(BarList, Map.refOnlyProdManagerVM.CurrProd.sProdDirPath, AddressOf ManageCalc)
|
||||
End If
|
||||
End If
|
||||
Dim BarList() As EgtBEAMWALL.Core.Bar
|
||||
If Map.refMainMenuVM.SelPage = Pages.VIEW Then
|
||||
End Sub
|
||||
|
||||
Private Function CreateBarToVerify(SelPage As Pages, ProjType As BWType, ByRef BarList As Bar()) As Boolean
|
||||
If SelPage = Pages.VIEW Then
|
||||
If Not IsNothing(Map.refProjectVM.BTLStructureVM.SelBTLPart) Then
|
||||
Dim TempBarList(0) As EgtBEAMWALL.Core.Bar
|
||||
If Not Map.refProjectVM.BTLStructureVM.SelBTLPart.bDO Then Return
|
||||
If Not Map.refProjectVM.BTLStructureVM.SelBTLPart.bDO Then Return False
|
||||
Dim Bar As New EgtBEAMWALL.Core.Bar With {.nBarId = Map.refProjectVM.BTLStructureVM.SelBTLPart.nPartId,
|
||||
.nProgramPage = ProjectType.PROJ,
|
||||
.nProjType = ProjType,
|
||||
@@ -669,7 +711,7 @@ Public Class CALCPanelVM
|
||||
Bar.nCmdType = CalcIntegration.CmdTypes.GENERATE
|
||||
Case Else
|
||||
If Map.refProjectVM.BTLStructureVM.SelBTLPart.nGlobalState = CalcStates.NOTCALCULATED OrElse Map.refProjectVM.BTLStructureVM.SelBTLPart.nFeaturesGlobalState > CalcStates.INFO Then
|
||||
Dim sBTLPartFilePath As String = Map.refProjManagerVM.CurrProj.sProjDirPath & "\" & Map.refProjectVM.BTLStructureVM.SelBTLPart.nPDN.ToString() & ".ori.bwe"
|
||||
Dim sBTLPartFilePath As String = ProjectManagerVM.CurrProj.sProjDirPath & "\" & Map.refProjectVM.BTLStructureVM.SelBTLPart.nPDN.ToString() & ".ori.bwe"
|
||||
If File.Exists(sBTLPartFilePath) Then File.Delete(sBTLPartFilePath)
|
||||
End If
|
||||
Bar.nCmdType = CalcIntegration.CmdTypes.CHECKGEN
|
||||
@@ -677,18 +719,15 @@ Public Class CALCPanelVM
|
||||
TempBarList(0) = Bar
|
||||
BarList = TempBarList
|
||||
Else
|
||||
Return
|
||||
Return False
|
||||
End If
|
||||
' disabilito interfaccia
|
||||
Map.refProjectVM.SetCalcRunning(True)
|
||||
' lancio calcolo
|
||||
EgtBEAMWALL.Core.CalcIntegration.Run(BarList, Map.refProjManagerVM.CurrProj.sProjDirPath, AddressOf ManageCalc)
|
||||
|
||||
ElseIf Map.refMainMenuVM.SelPage = Pages.MACHINING Then
|
||||
ElseIf SelPage = Pages.MACHINING Then
|
||||
If Not IsNothing(Map.refMachGroupPanelVM.SelectedMachGroup) Then
|
||||
Dim SelMachGroup As MyMachGroupVM = Map.refMachGroupPanelVM.SelectedMachGroup
|
||||
' se barra gia' assegnata a supervisore, esco
|
||||
If SelMachGroup.nProduction_State >= ItemState.Assigned Then Return
|
||||
If SelMachGroup.nProduction_State >= ItemState.Assigned Then Return False
|
||||
Dim TempBarList(0) As EgtBEAMWALL.Core.Bar
|
||||
Dim MachineName As String = ""
|
||||
EgtGetMachGroupMachineName(SelMachGroup.Id, MachineName)
|
||||
@@ -703,7 +742,7 @@ Public Class CALCPanelVM
|
||||
Bar.nCmdType = CalcIntegration.CmdTypes.GENERATE
|
||||
Case Else
|
||||
If SelMachGroup.nGlobalState = CalcStates.NOTCALCULATED OrElse (SelMachGroup.nPartsGlobalState > CalcStates.INFO) Then
|
||||
Dim sMachGroupFilePath As String = Map.refProdManagerVM.CurrProd.sProdDirPath & "\" & SelMachGroup.Name.ToString() & ".ori.bwe"
|
||||
Dim sMachGroupFilePath As String = ProjectManagerVM.CurrProd.sProdDirPath & "\" & SelMachGroup.Name.ToString() & ".ori.bwe"
|
||||
If File.Exists(sMachGroupFilePath) Then File.Delete(sMachGroupFilePath)
|
||||
End If
|
||||
Bar.nCmdType = CalcIntegration.CmdTypes.CHECKGEN
|
||||
@@ -711,14 +750,13 @@ Public Class CALCPanelVM
|
||||
TempBarList(0) = Bar
|
||||
BarList = TempBarList
|
||||
Else
|
||||
Return
|
||||
Return False
|
||||
End If
|
||||
' disabilito interfaccia
|
||||
Map.refProjectVM.SetCalcRunning(True)
|
||||
' lancio calcolo
|
||||
EgtBEAMWALL.Core.CalcIntegration.Run(BarList, Map.refProdManagerVM.CurrProd.sProdDirPath, AddressOf ManageCalc)
|
||||
End If
|
||||
End Sub
|
||||
Return True
|
||||
End Function
|
||||
|
||||
' funzione che gestisce risposta da thread di verifica, aggiorna progress e segnala comando di interruzione
|
||||
Private Sub ManageCalc(dProgress As Double, sProgress As String, ByRef bCancel As Boolean)
|
||||
@@ -760,21 +798,43 @@ Public Class CALCPanelVM
|
||||
''' Execute the Open. This method is invoked by the OpenCommand.
|
||||
''' </summary>
|
||||
Friend Sub VerifyAll()
|
||||
If (Map.refMainMenuVM.SelPage = Pages.VIEW AndAlso (IsNothing(Map.refProjManagerVM.CurrProj) OrElse IsNothing(Map.refProjectVM.BTLStructureVM)) OrElse
|
||||
(Map.refMainMenuVM.SelPage = Pages.MACHINING AndAlso (IsNothing(Map.refProdManagerVM.CurrProd) OrElse IsNothing(Map.refProjectVM.MachGroupPanelVM)))) Then Return
|
||||
If (Map.refMainMenuVM.SelPage = Pages.VIEW AndAlso (IsNothing(ProjectManagerVM.CurrProj) OrElse IsNothing(Map.refProjectVM.BTLStructureVM))) OrElse
|
||||
(Map.refMainMenuVM.SelPage = Pages.MACHINING AndAlso (IsNothing(ProjectManagerVM.CurrProd) OrElse IsNothing(Map.refProjectVM.MachGroupPanelVM))) OrElse
|
||||
(Map.refMainMenuVM.SelPage = Pages.ONLYPRODPAGE AndAlso (IsNothing(ProjectManagerVM.CurrProj) OrElse IsNothing(Map.refProjectVM.BTLStructureVM)) AndAlso (IsNothing(ProjectManagerVM.CurrProd) OrElse IsNothing(Map.refProjectVM.MachGroupPanelVM))) Then Return
|
||||
' se modalita' assemblato
|
||||
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
|
||||
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
|
||||
Dim BarList() As EgtBEAMWALL.Core.Bar = Nothing
|
||||
Dim ProjType As BWType
|
||||
If Map.refMainMenuVM.SelPage = Pages.VIEW Then
|
||||
ProjType = Map.refProjManagerVM.CurrProj.nType
|
||||
Else
|
||||
ProjType = Map.refProdManagerVM.CurrProd.nType
|
||||
ProjType = ProjectManagerVM.CurrProj.nType
|
||||
If Not CreateBarListToVerify(Pages.VIEW, ProjType, BarList) Then Return
|
||||
' lancio calcolo
|
||||
EgtBEAMWALL.Core.CalcIntegration.Run(BarList, ProjectManagerVM.CurrProj.sProjDirPath, AddressOf ManageCalc)
|
||||
ElseIf Map.refMainMenuVM.SelPage = Pages.MACHINING Then
|
||||
ProjType = ProjectManagerVM.CurrProd.nType
|
||||
If Not CreateBarListToVerify(Pages.MACHINING, ProjType, BarList) Then Return
|
||||
' lancio calcolo
|
||||
EgtBEAMWALL.Core.CalcIntegration.Run(BarList, ProjectManagerVM.CurrProd.sProdDirPath, AddressOf ManageCalc)
|
||||
ElseIf Map.refMainMenuVM.SelPage = Pages.ONLYPRODPAGE Then
|
||||
ProjType = ProjectManagerVM.CurrProd.nType
|
||||
If Map.refProjectVM.LastSelGridType = ProjectVM.GridSelTypes.PART OrElse Map.refProjectVM.LastSelGridType = ProjectVM.GridSelTypes.PARTLIST Then
|
||||
If Not CreateBarListToVerify(Pages.VIEW, ProjType, BarList) Then Return
|
||||
' lancio calcolo
|
||||
EgtBEAMWALL.Core.CalcIntegration.Run(BarList, ProjectManagerVM.CurrProj.sProjDirPath, AddressOf ManageCalc)
|
||||
ElseIf Map.refProjectVM.LastSelGridType = ProjectVM.GridSelTypes.MACHGROUP Then
|
||||
If Not CreateBarListToVerify(Pages.MACHINING, ProjType, BarList) Then Return
|
||||
' lancio calcolo
|
||||
EgtBEAMWALL.Core.CalcIntegration.Run(BarList, ProjectManagerVM.CurrProd.sProdDirPath, AddressOf ManageCalc)
|
||||
End If
|
||||
End If
|
||||
Dim BarList() As EgtBEAMWALL.Core.Bar
|
||||
If Map.refMainMenuVM.SelPage = Pages.VIEW Then
|
||||
End Sub
|
||||
|
||||
Private Function CreateBarListToVerify(SelPage As Pages, ProjType As BWType, ByRef BarList As Bar()) As Boolean
|
||||
If SelPage = Pages.VIEW Then
|
||||
Dim TempBarList As New List(Of EgtBEAMWALL.Core.Bar)
|
||||
For PartIndex = 0 To Map.refProjectVM.BTLStructureVM.BTLPartVMList.Count - 1
|
||||
Dim CurrPart As BTLPartVM = Map.refProjectVM.BTLStructureVM.BTLPartVMList(PartIndex)
|
||||
@@ -790,7 +850,7 @@ Public Class CALCPanelVM
|
||||
Bar.nCmdType = CalcIntegration.CmdTypes.GENERATE
|
||||
Case Else
|
||||
If CurrPart.nGlobalState = CalcStates.NOTCALCULATED OrElse CurrPart.nFeaturesGlobalState > CalcStates.INFO Then
|
||||
Dim sBTLPartFilePath As String = Map.refProjManagerVM.CurrProj.sProjDirPath & "\" & CurrPart.nPDN.ToString() & ".ori.bwe"
|
||||
Dim sBTLPartFilePath As String = ProjectManagerVM.CurrProj.sProjDirPath & "\" & CurrPart.nPDN.ToString() & ".ori.bwe"
|
||||
If File.Exists(sBTLPartFilePath) Then File.Delete(sBTLPartFilePath)
|
||||
End If
|
||||
Bar.nCmdType = CalcIntegration.CmdTypes.CHECKGEN
|
||||
@@ -800,9 +860,7 @@ Public Class CALCPanelVM
|
||||
BarList = TempBarList.ToArray()
|
||||
' disabilito interfaccia
|
||||
Map.refProjectVM.SetCalcRunning(True)
|
||||
' lancio calcolo
|
||||
EgtBEAMWALL.Core.CalcIntegration.Run(BarList, Map.refProjManagerVM.CurrProj.sProjDirPath, AddressOf ManageCalc)
|
||||
ElseIf Map.refMainMenuVM.SelPage = Pages.MACHINING Then
|
||||
ElseIf SelPage = Pages.MACHINING Then
|
||||
Dim TempBarList As New List(Of EgtBEAMWALL.Core.Bar)
|
||||
For PartIndex = 0 To Map.refMachGroupPanelVM.MachGroupVMList.Count - 1
|
||||
Dim CurrMachGroup As MyMachGroupVM = Map.refMachGroupPanelVM.MachGroupVMList(PartIndex)
|
||||
@@ -821,21 +879,20 @@ Public Class CALCPanelVM
|
||||
Bar.nCmdType = CalcIntegration.CmdTypes.GENERATE
|
||||
Case Else
|
||||
If CurrMachGroup.nGlobalState = CalcStates.NOTCALCULATED OrElse (CurrMachGroup.nPartsGlobalState > CalcStates.INFO) Then
|
||||
Dim sMachGroupFilePath As String = Map.refProdManagerVM.CurrProd.sProdDirPath & "\" & CurrMachGroup.Name.ToString() & ".ori.bwe"
|
||||
Dim sMachGroupFilePath As String = ProjectManagerVM.CurrProd.sProdDirPath & "\" & CurrMachGroup.Name.ToString() & ".ori.bwe"
|
||||
If File.Exists(sMachGroupFilePath) Then File.Delete(sMachGroupFilePath)
|
||||
End If
|
||||
Bar.nCmdType = CalcIntegration.CmdTypes.CHECKGEN
|
||||
End Select
|
||||
TempBarList.Add(Bar)
|
||||
Next
|
||||
If TempBarList.Count = 0 Then Return
|
||||
If TempBarList.Count = 0 Then Return False
|
||||
BarList = TempBarList.ToArray()
|
||||
' disabilito interfaccia
|
||||
Map.refProjectVM.SetCalcRunning(True)
|
||||
' lancio calcolo
|
||||
EgtBEAMWALL.Core.CalcIntegration.Run(BarList, Map.refProdManagerVM.CurrProd.sProdDirPath, AddressOf ManageCalc)
|
||||
End If
|
||||
End Sub
|
||||
Return True
|
||||
End Function
|
||||
|
||||
#End Region ' VerifyAll
|
||||
|
||||
@@ -857,9 +914,10 @@ Public Class CALCPanelVM
|
||||
''' Execute the Exec. This method is invoked by the ExecCommand.
|
||||
''' </summary>
|
||||
Public Sub ResetCalc()
|
||||
If (Map.refMainMenuVM.SelPage = Pages.VIEW AndAlso (IsNothing(Map.refProjManagerVM.CurrProj) OrElse IsNothing(Map.refProjectVM.BTLStructureVM)) OrElse
|
||||
(Map.refMainMenuVM.SelPage = Pages.MACHINING AndAlso (IsNothing(Map.refProdManagerVM.CurrProd) OrElse IsNothing(Map.refProjectVM.MachGroupPanelVM)))) Then Return
|
||||
If Map.refMainMenuVM.SelPage = Pages.VIEW Then
|
||||
If (Map.refMainMenuVM.SelPage = Pages.VIEW AndAlso (IsNothing(ProjectManagerVM.CurrProj) OrElse IsNothing(Map.refProjectVM.BTLStructureVM))) OrElse
|
||||
(Map.refMainMenuVM.SelPage = Pages.MACHINING AndAlso (IsNothing(ProjectManagerVM.CurrProd) OrElse IsNothing(Map.refProjectVM.MachGroupPanelVM))) OrElse
|
||||
(Map.refMainMenuVM.SelPage = Pages.ONLYPRODPAGE AndAlso (IsNothing(ProjectManagerVM.CurrProj) OrElse IsNothing(Map.refProjectVM.BTLStructureVM)) AndAlso (IsNothing(ProjectManagerVM.CurrProd) OrElse IsNothing(Map.refProjectVM.MachGroupPanelVM))) Then Return
|
||||
If Map.refMainMenuVM.SelPage = Pages.VIEW OrElse (Map.refMainMenuVM.SelPage = Pages.ONLYPRODPAGE AndAlso (Map.refProjectVM.LastSelGridType = ProjectVM.GridSelTypes.PART OrElse Map.refProjectVM.LastSelGridType = ProjectVM.GridSelTypes.PARTLIST)) Then
|
||||
If (Keyboard.Modifiers And ModifierKeys.Shift) = ModifierKeys.Shift Then
|
||||
For Each Part In Map.refProjectVM.BTLStructureVM.BTLPartVMList
|
||||
If Part.nGlobalState <> CalcStates.NOTCALCULATED Then
|
||||
@@ -868,11 +926,11 @@ Public Class CALCPanelVM
|
||||
End If
|
||||
Next
|
||||
ElseIf Map.refProjectVM.BTLStructureVM.SelBTLPartsCnt > 1 Then
|
||||
For Each SelPart In Map.refProjectVM.BTLStructureVM.SelBTLPartList
|
||||
If Not IsNothing(SelPart) AndAlso SelPart.nGlobalState <> CalcStates.NOTCALCULATED Then
|
||||
SelPart.ResetCalcTotalPart()
|
||||
End If
|
||||
Next
|
||||
'For Each SelPart In Map.refProjectVM.BTLStructureVM.SelBTLPartList
|
||||
' If Not IsNothing(SelPart) AndAlso SelPart.nGlobalState <> CalcStates.NOTCALCULATED Then
|
||||
' SelPart.ResetCalcTotalPart()
|
||||
' End If
|
||||
'Next
|
||||
Else
|
||||
Dim SelPart As BTLPartVM = Map.refProjectVM.BTLStructureVM.SelBTLPart
|
||||
If IsNothing(SelPart) Then Return
|
||||
@@ -880,7 +938,7 @@ Public Class CALCPanelVM
|
||||
SelPart.ResetCalcTotalPart()
|
||||
End If
|
||||
End If
|
||||
ElseIf Map.refMainMenuVM.SelPage = Pages.MACHINING Then
|
||||
ElseIf Map.refMainMenuVM.SelPage = Pages.MACHINING OrElse (Map.refMainMenuVM.SelPage = Pages.ONLYPRODPAGE AndAlso Map.refProjectVM.LastSelGridType = ProjectVM.GridSelTypes.MACHGROUP) Then
|
||||
If (Keyboard.Modifiers And ModifierKeys.Shift) = ModifierKeys.Shift Then
|
||||
For Each MachGroup As MyMachGroupVM In Map.refProjectVM.MachGroupPanelVM.MachGroupVMList
|
||||
If MachGroup.nProduction_State >= ItemState.Assigned Then Continue For
|
||||
@@ -920,16 +978,37 @@ Public Class CALCPanelVM
|
||||
''' Execute the Open. This method is invoked by the OpenCommand.
|
||||
''' </summary>
|
||||
Friend Sub Simulate()
|
||||
If (Map.refMainMenuVM.SelPage = Pages.VIEW AndAlso (IsNothing(Map.refProjManagerVM.CurrProj) OrElse IsNothing(Map.refProjectVM.BTLStructureVM)) OrElse
|
||||
(Map.refMainMenuVM.SelPage = Pages.MACHINING AndAlso (IsNothing(Map.refProdManagerVM.CurrProd) OrElse IsNothing(Map.refProjectVM.MachGroupPanelVM)))) Then Return
|
||||
If (Map.refMainMenuVM.SelPage = Pages.VIEW AndAlso (IsNothing(ProjectManagerVM.CurrProj) OrElse IsNothing(Map.refProjectVM.BTLStructureVM))) OrElse
|
||||
(Map.refMainMenuVM.SelPage = Pages.MACHINING AndAlso (IsNothing(ProjectManagerVM.CurrProd) OrElse IsNothing(Map.refProjectVM.MachGroupPanelVM))) OrElse
|
||||
(Map.refMainMenuVM.SelPage = Pages.ONLYPRODPAGE AndAlso (IsNothing(ProjectManagerVM.CurrProj) OrElse IsNothing(Map.refProjectVM.BTLStructureVM)) AndAlso (IsNothing(ProjectManagerVM.CurrProd) OrElse IsNothing(Map.refProjectVM.MachGroupPanelVM))) Then Return
|
||||
Dim ProjType As BWType
|
||||
Dim BarList() As EgtBEAMWALL.Core.Bar = Nothing
|
||||
If Map.refMainMenuVM.SelPage = Pages.VIEW Then
|
||||
ProjType = Map.refProjManagerVM.CurrProj.nType
|
||||
Else
|
||||
ProjType = Map.refProdManagerVM.CurrProd.nType
|
||||
ProjType = ProjectManagerVM.CurrProj.nType
|
||||
If Not CreateBarToSimulate(Pages.VIEW, ProjType, BarList) Then Return
|
||||
' lancio simulazione
|
||||
EgtBEAMWALL.Core.CalcIntegration.Run(BarList, ProjectManagerVM.CurrProj.sProjDirPath, AddressOf ManageCalc)
|
||||
ElseIf Map.refMainMenuVM.SelPage = Pages.MACHINING Then
|
||||
ProjType = ProjectManagerVM.CurrProd.nType
|
||||
If Not CreateBarToSimulate(Pages.MACHINING, ProjType, BarList) Then Return
|
||||
' lancio simulazione
|
||||
EgtBEAMWALL.Core.CalcIntegration.Run(BarList, ProjectManagerVM.CurrProd.sProdDirPath, AddressOf ManageCalc)
|
||||
ElseIf Map.refMainMenuVM.SelPage = Pages.ONLYPRODPAGE Then
|
||||
ProjType = Map.refOnlyProdManagerVM.CurrProd.nType
|
||||
If Map.refProjectVM.LastSelGridType = ProjectVM.GridSelTypes.PART Then
|
||||
If Not CreateBarToSimulate(Pages.VIEW, ProjType, BarList) Then Return
|
||||
' lancio simulazione
|
||||
EgtBEAMWALL.Core.CalcIntegration.Run(BarList, ProjectManagerVM.CurrProj.sProjDirPath, AddressOf ManageCalc)
|
||||
ElseIf Map.refProjectVM.LastSelGridType = ProjectVM.GridSelTypes.MACHGROUP Then
|
||||
If Not CreateBarToSimulate(Pages.MACHINING, ProjType, BarList) Then Return
|
||||
' lancio simulazione
|
||||
EgtBEAMWALL.Core.CalcIntegration.Run(BarList, ProjectManagerVM.CurrProd.sProdDirPath, AddressOf ManageCalc)
|
||||
End If
|
||||
End If
|
||||
Dim BarList() As EgtBEAMWALL.Core.Bar
|
||||
If Map.refMainMenuVM.SelPage = Pages.VIEW Then
|
||||
End Sub
|
||||
|
||||
Private Function CreateBarToSimulate(SelPage As Pages, ProjType As BWType, ByRef BarList As Bar()) As Boolean
|
||||
If SelPage = Pages.VIEW Then
|
||||
If Not IsNothing(Map.refProjectVM.BTLStructureVM.SelBTLPart) Then
|
||||
Dim TempBarList(0) As EgtBEAMWALL.Core.Bar
|
||||
Dim Bar As New EgtBEAMWALL.Core.Bar With {.nBarId = Map.refProjectVM.BTLStructureVM.SelBTLPart.nPartId,
|
||||
@@ -940,19 +1019,17 @@ Public Class CALCPanelVM
|
||||
.nCmdType = CalcIntegration.CmdTypes.SIMULATE,
|
||||
.nGlobState = Map.refProjectVM.BTLStructureVM.SelBTLPart.nGlobalState}
|
||||
If Map.refProjectVM.BTLStructureVM.SelBTLPart.nGlobalState = CalcStates.NOTCALCULATED Then
|
||||
Dim sBTLPartFilePath As String = Map.refProjManagerVM.CurrProj.sProjDirPath & "\" & Map.refProjectVM.BTLStructureVM.SelBTLPart.nPDN.ToString() & ".ori.bwe"
|
||||
Dim sBTLPartFilePath As String = ProjectManagerVM.CurrProj.sProjDirPath & "\" & Map.refProjectVM.BTLStructureVM.SelBTLPart.nPDN.ToString() & ".ori.bwe"
|
||||
If File.Exists(sBTLPartFilePath) Then File.Delete(sBTLPartFilePath)
|
||||
End If
|
||||
TempBarList(0) = Bar
|
||||
BarList = TempBarList
|
||||
Else
|
||||
Return
|
||||
Return False
|
||||
End If
|
||||
' disabilito interfaccia
|
||||
Map.refProjectVM.SetCalcRunning(True)
|
||||
' lancio simulazione
|
||||
EgtBEAMWALL.Core.CalcIntegration.Run(BarList, Map.refProjManagerVM.CurrProj.sProjDirPath, AddressOf ManageCalc)
|
||||
ElseIf Map.refMainMenuVM.SelPage = Pages.MACHINING Then
|
||||
ElseIf SelPage = Pages.MACHINING Then
|
||||
If Not IsNothing(Map.refMachGroupPanelVM.SelectedMachGroup) Then
|
||||
Dim SelMachGroup As MyMachGroupVM = Map.refMachGroupPanelVM.SelectedMachGroup
|
||||
Dim TempBarList(0) As EgtBEAMWALL.Core.Bar
|
||||
@@ -966,20 +1043,19 @@ Public Class CALCPanelVM
|
||||
.nCmdType = CalcIntegration.CmdTypes.SIMULATE,
|
||||
.nGlobState = SelMachGroup.nGlobalState}
|
||||
If SelMachGroup.nGlobalState = CalcStates.NOTCALCULATED Then
|
||||
Dim sMachGroupFilePath As String = Map.refProdManagerVM.CurrProd.sProdDirPath & "\" & SelMachGroup.Name.ToString() & ".ori.bwe"
|
||||
Dim sMachGroupFilePath As String = ProjectManagerVM.CurrProd.sProdDirPath & "\" & SelMachGroup.Name.ToString() & ".ori.bwe"
|
||||
If File.Exists(sMachGroupFilePath) Then File.Delete(sMachGroupFilePath)
|
||||
End If
|
||||
TempBarList(0) = Bar
|
||||
BarList = TempBarList
|
||||
Else
|
||||
Return
|
||||
Return False
|
||||
End If
|
||||
' disabilito interfaccia
|
||||
Map.refProjectVM.SetCalcRunning(True)
|
||||
' lancio simulazione
|
||||
EgtBEAMWALL.Core.CalcIntegration.Run(BarList, Map.refProdManagerVM.CurrProd.sProdDirPath, AddressOf ManageCalc)
|
||||
End If
|
||||
End Sub
|
||||
Return True
|
||||
End Function
|
||||
|
||||
#End Region ' Simulate
|
||||
|
||||
@@ -1001,12 +1077,12 @@ Public Class CALCPanelVM
|
||||
''' Execute the Open. This method is invoked by the OpenCommand.
|
||||
''' </summary>
|
||||
Friend Sub Edit()
|
||||
If Map.refMainMenuVM.SelPage = Pages.VIEW AndAlso (IsNothing(Map.refProjManagerVM.CurrProj) OrElse IsNothing(Map.refProjectVM.BTLStructureVM)) Then Return
|
||||
If Map.refMainMenuVM.SelPage = Pages.VIEW AndAlso (IsNothing(ProjectManagerVM.CurrProj) OrElse IsNothing(Map.refProjectVM.BTLStructureVM)) Then Return
|
||||
Dim ProjType As BWType
|
||||
If Map.refMainMenuVM.SelPage = Pages.VIEW Then
|
||||
ProjType = Map.refProjManagerVM.CurrProj.nType
|
||||
ProjType = ProjectManagerVM.CurrProj.nType
|
||||
Else
|
||||
ProjType = Map.refProdManagerVM.CurrProd.nType
|
||||
ProjType = ProjectManagerVM.CurrProd.nType
|
||||
End If
|
||||
Dim BarList() As EgtBEAMWALL.Core.Bar
|
||||
If Map.refMainMenuVM.SelPage = Pages.VIEW Then
|
||||
@@ -1029,7 +1105,7 @@ Public Class CALCPanelVM
|
||||
' disabilito interfaccia
|
||||
Map.refProjectVM.SetCalcRunning(True)
|
||||
' lancio edit
|
||||
EgtBEAMWALL.Core.CalcIntegration.Run(BarList, Map.refProjManagerVM.CurrProj.sProjDirPath, AddressOf ManageCalc)
|
||||
EgtBEAMWALL.Core.CalcIntegration.Run(BarList, ProjectManagerVM.CurrProj.sProjDirPath, AddressOf ManageCalc)
|
||||
End If
|
||||
End Sub
|
||||
|
||||
@@ -1054,7 +1130,7 @@ Public Class CALCPanelVM
|
||||
''' </summary>
|
||||
Friend Sub ChooseMachine()
|
||||
' rendo visibile la CmBx per la scelta e il pulsante di conferma solo se il Proj corrente non ha associato alcun Prod
|
||||
If Map.refProjManagerVM.CurrProj.nProdId > 0 Then
|
||||
If ProjectManagerVM.CurrProj.nProdId > 0 Then
|
||||
MessageBox.Show(EgtMsg(61929), EgtMsg(30009), MessageBoxButton.OK, MessageBoxImage.Exclamation)
|
||||
Else
|
||||
SetChooseMachine_Visibility(True)
|
||||
@@ -1086,7 +1162,7 @@ Public Class CALCPanelVM
|
||||
m_IsMachineApplied = True
|
||||
SetChooseMachine_Visibility(False)
|
||||
' resetto i parametri errori integration ciclando su ogni Part e per ogni Part ogni Feature
|
||||
Dim ProjId = Map.refProjManagerVM.CurrProj.nProjId
|
||||
Dim ProjId = ProjectManagerVM.CurrProj.nProjId
|
||||
Dim TempList As New List(Of BTLPartM)
|
||||
Dim nPartId As Integer = EgtGetFirstPart()
|
||||
While nPartId <> GDB_ID.NULL
|
||||
|
||||
@@ -18,7 +18,7 @@
|
||||
ToolTip="{Binding VerifyAll_ToolTip}"
|
||||
Style="{StaticResource ToolBar_Button}"
|
||||
Command="{Binding VerifyAll_Command}"
|
||||
IsEnabled="{Binding CALCPanel_IsEnabled}">
|
||||
IsEnabled="{Binding VerifyAll_IsEnabled}">
|
||||
<Image Source="/Resources/CALCPanel/VerifyAll.png" Stretch="Uniform"/>
|
||||
</Button>
|
||||
<Button Command="{Binding ResetCalc_Command}"
|
||||
|
||||
@@ -1,294 +1,79 @@
|
||||
<DockPanel x:Class="ConfigurationPageV"
|
||||
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||
xmlns:EgtFloating="clr-namespace:EgtWPFLib5.EgtFloating;assembly=EgtWPFLib5"
|
||||
xmlns:EgtWPFLib5="clr-namespace:EgtWPFLib5;assembly=EgtWPFLib5"
|
||||
xmlns:EgtBEAMWALL="clr-namespace:EgtBEAMWALL.ViewerOptimizer">
|
||||
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||
xmlns:EgtBEAMWALLCORE="clr-namespace:EgtBEAMWALL.Core;assembly=EgtBEAMWALL.Core">
|
||||
|
||||
<Grid>
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="10*"/>
|
||||
<ColumnDefinition Width="1*"/>
|
||||
<ColumnDefinition Width="10*"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="6*"/>
|
||||
<RowDefinition Height="1*"/>
|
||||
<RowDefinition Height="6*"/>
|
||||
</Grid.RowDefinitions>
|
||||
<TabControl Grid.Row="0" Grid.Column="0" Grid.RowSpan="2" Grid.ColumnSpan="2"
|
||||
SelectedIndex="{Binding SelConfigSubPage}">
|
||||
<TabItem Header="General">
|
||||
SelectedIndex="{Binding SelConfigSubPage}">
|
||||
<TabItem>
|
||||
<TabItem.Header>
|
||||
<StackPanel Orientation="Horizontal">
|
||||
<TextBlock Text="{Binding General_Msg}"
|
||||
Style="{StaticResource OptionTextBlock}"/>
|
||||
<Button Command="{Binding SaveCommand}"
|
||||
ToolTip="{Binding SaveToolTip}"
|
||||
Visibility="{Binding General_Visibility}"
|
||||
Style="{StaticResource OptionPanel_Button}">
|
||||
<Image Source="/Resources/ProjectManager/Save.png" Stretch="Uniform"/>
|
||||
</Button>
|
||||
</StackPanel>
|
||||
</TabItem.Header>
|
||||
<TabItem.Content>
|
||||
<Grid>
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="1*"/>
|
||||
<ColumnDefinition Width="1*"/>
|
||||
<ColumnDefinition Width="1*"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="1*"/>
|
||||
<RowDefinition Height="1*"/>
|
||||
</Grid.RowDefinitions>
|
||||
<StackPanel Grid.Row="0" Grid.Column="0" Margin="5,5,5,0">
|
||||
<GroupBox Header="{Binding CurrentLanguage_Msg}"
|
||||
Margin="0,0,0,5">
|
||||
<UniformGrid Rows="2" Margin="3,3,3,3">
|
||||
<ComboBox ItemsSource="{Binding LanguageList, Mode=OneWay}" Height="25"
|
||||
DisplayMemberPath="Name" SelectedItem="{Binding SelectedLanguage}"
|
||||
Margin="0,0,0,5"/>
|
||||
<TextBlock Text="{Binding LanguageAdvert_Msg}" TextWrapping="Wrap"
|
||||
TextAlignment="Center"/>
|
||||
</UniformGrid>
|
||||
</GroupBox>
|
||||
<UniformGrid Columns="2"
|
||||
Margin="0,0,0,5">
|
||||
<TextBlock Text="{Binding MMUnits_Msg}" VerticalAlignment="Center"/>
|
||||
<ComboBox ItemsSource="{Binding UnitMeasureList, Mode=OneWay}"
|
||||
SelectedIndex="{Binding SelMeasureUnit}" Height="25"
|
||||
Margin="0,5,0,0"/>
|
||||
</UniformGrid>
|
||||
<GroupBox Header="{Binding Nesting_Msg}"
|
||||
Margin="0,0,0,5">
|
||||
<StackPanel>
|
||||
<UniformGrid Columns="2"
|
||||
Margin="0,0,0,5">
|
||||
<TextBlock Text="{Binding SectionTime_Msg}"
|
||||
Grid.Row="0" Grid.Column="0"/>
|
||||
<EgtWPFLib5:EgtTextBox Text="{Binding SectionTime, UpdateSourceTrigger=Explicit}"
|
||||
Grid.Row="0" Grid.Column="1"/>
|
||||
</UniformGrid>
|
||||
<UniformGrid Columns="2"
|
||||
Margin="0,0,0,5">
|
||||
<TextBlock Text="{Binding PartTime_Msg}"
|
||||
Grid.Row="1" Grid.Column="0"/>
|
||||
<EgtWPFLib5:EgtTextBox Text="{Binding PartTime, UpdateSourceTrigger=Explicit}"
|
||||
Grid.Row="1" Grid.Column="1"/>
|
||||
</UniformGrid>
|
||||
</StackPanel>
|
||||
</GroupBox>
|
||||
<UniformGrid Columns="2"
|
||||
Margin="0,0,0,5">
|
||||
<TextBlock Text="{Binding PrintLabel_Msg}" VerticalAlignment="Center"/>
|
||||
<CheckBox IsChecked="{Binding bPrintLabel_IsChecked}"
|
||||
Margin="0,5,0,0"/>
|
||||
</UniformGrid>
|
||||
<GroupBox Header="Backup And Restore">
|
||||
<Grid>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="Auto"/>
|
||||
<RowDefinition Height="Auto"/>
|
||||
<RowDefinition Height="Auto"/>
|
||||
<RowDefinition Height="Auto"/>
|
||||
</Grid.RowDefinitions>
|
||||
<Grid Grid.Row="0"
|
||||
Margin="0,2,0,5">
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="Auto"/>
|
||||
<ColumnDefinition Width="1*"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
<CheckBox x:Name="ExternalBackup_CheckBox"
|
||||
IsChecked="{Binding bExternalBackupActive}"
|
||||
VerticalAlignment="Center"/>
|
||||
<TextBlock Grid.Column="1"
|
||||
Text="External file path:"
|
||||
VerticalAlignment="Center"/>
|
||||
</Grid>
|
||||
<Grid Grid.Row="1"
|
||||
Margin="0,2,0,5">
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="1*"/>
|
||||
<ColumnDefinition Width="Auto"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
<TextBox Text="{Binding ExternalBackupFolderPath}"
|
||||
IsEnabled="{Binding IsChecked, ElementName=ExternalBackup_CheckBox}"
|
||||
Margin="0,0,2.5,0"/>
|
||||
<Button Grid.Column="1"
|
||||
Content="..."
|
||||
Width="18"
|
||||
Command="{Binding ChooseExternalBackupFolderPath_Command}"
|
||||
IsEnabled="{Binding IsChecked, ElementName=ExternalBackup_CheckBox}"
|
||||
Margin="2.5,0,0,0"/>
|
||||
</Grid>
|
||||
<Grid Grid.Row="2">
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="1*"/>
|
||||
<ColumnDefinition Width="Auto"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
<TextBlock Text="Reminder Frequency"/>
|
||||
<ComboBox Grid.Column="1"
|
||||
ItemsSource="{Binding ReminderList}"
|
||||
SelectedItem="{Binding SelReminder}"/>
|
||||
</Grid>
|
||||
<StackPanel Grid.Row="3"
|
||||
Orientation="Horizontal">
|
||||
<Button Content="Backup"
|
||||
Command="{Binding Backup_Command}"
|
||||
Style="{StaticResource ToolBar_TextButton}"/>
|
||||
<Button Content="Restore"
|
||||
Command="{Binding Restore_Command}"
|
||||
Style="{StaticResource ToolBar_TextButton}"/>
|
||||
</StackPanel>
|
||||
</Grid>
|
||||
</GroupBox>
|
||||
</StackPanel>
|
||||
</Grid>
|
||||
<EgtBEAMWALLCORE:General_ConfigurationPageV/>
|
||||
</TabItem.Content>
|
||||
</TabItem>
|
||||
<TabItem Header="Parametri Q">
|
||||
<TabItem>
|
||||
<TabItem.Header>
|
||||
<StackPanel Orientation="Horizontal">
|
||||
<TextBlock Text="{Binding ParameterQ_Msg}"
|
||||
Style="{StaticResource OptionTextBlock}"/>
|
||||
<Button Command="{Binding SaveCommand}"
|
||||
ToolTip="{Binding SaveToolTip}"
|
||||
Visibility="{Binding ParameterQ_Visibility}"
|
||||
Style="{StaticResource OptionPanel_Button}">
|
||||
<Image Source="/Resources/ProjectManager/Save.png" Stretch="Uniform"/>
|
||||
</Button>
|
||||
</StackPanel>
|
||||
</TabItem.Header>
|
||||
<TabItem.Content>
|
||||
<Grid>
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="2*"/>
|
||||
<ColumnDefinition Width="1*"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="1*"/>
|
||||
</Grid.RowDefinitions>
|
||||
<EgtBEAMWALL:QParamListV DataContext="{Binding}"
|
||||
ItemsSource="{Binding QBTLParamVMList}"
|
||||
SelectedItem="{Binding SelQParam}"
|
||||
Grid.Column="0"
|
||||
Margin="5">
|
||||
<DataGrid.GroupStyle>
|
||||
<GroupStyle>
|
||||
<GroupStyle.Panel>
|
||||
<ItemsPanelTemplate>
|
||||
<DataGridRowsPresenter/>
|
||||
</ItemsPanelTemplate>
|
||||
</GroupStyle.Panel>
|
||||
<GroupStyle.HeaderTemplate>
|
||||
<DataTemplate>
|
||||
<StackPanel>
|
||||
<TextBlock Text="{Binding Path=Name}"/>
|
||||
</StackPanel>
|
||||
</DataTemplate>
|
||||
</GroupStyle.HeaderTemplate>
|
||||
<GroupStyle.ContainerStyle>
|
||||
<Style TargetType="{x:Type GroupItem}">
|
||||
<Setter Property="Template">
|
||||
<Setter.Value>
|
||||
<ControlTemplate TargetType="{x:Type GroupItem}">
|
||||
<Expander IsExpanded="True">
|
||||
<Expander.Background>
|
||||
<SolidColorBrush Color="#FFBABABA"></SolidColorBrush>
|
||||
</Expander.Background>
|
||||
<Expander.Header>
|
||||
<StackPanel Orientation="Horizontal">
|
||||
<TextBlock Text="{Binding Path=Name}" />
|
||||
</StackPanel>
|
||||
</Expander.Header>
|
||||
<ItemsPresenter />
|
||||
</Expander>
|
||||
</ControlTemplate>
|
||||
</Setter.Value>
|
||||
</Setter>
|
||||
</Style>
|
||||
</GroupStyle.ContainerStyle>
|
||||
</GroupStyle>
|
||||
<GroupStyle>
|
||||
<GroupStyle.ContainerStyle>
|
||||
<Style TargetType="{x:Type GroupItem}">
|
||||
<Setter Property="Template">
|
||||
<Setter.Value>
|
||||
<ControlTemplate TargetType="{x:Type GroupItem}">
|
||||
<Expander IsExpanded="True">
|
||||
<Expander.Background>
|
||||
<SolidColorBrush Color="LightGray"></SolidColorBrush>
|
||||
</Expander.Background>
|
||||
<Expander.Header>
|
||||
<StackPanel Orientation="Horizontal">
|
||||
<TextBlock Text="{Binding Path=Name}" />
|
||||
</StackPanel>
|
||||
</Expander.Header>
|
||||
<ItemsPresenter />
|
||||
</Expander>
|
||||
</ControlTemplate>
|
||||
</Setter.Value>
|
||||
</Setter>
|
||||
</Style>
|
||||
</GroupStyle.ContainerStyle>
|
||||
</GroupStyle>
|
||||
</DataGrid.GroupStyle>
|
||||
</EgtBEAMWALL:QParamListV>
|
||||
</Grid>
|
||||
<EgtBEAMWALLCORE:QParameter_ConfigurationPageV/>
|
||||
</TabItem.Content>
|
||||
</TabItem>
|
||||
<TabItem Header="Macchina">
|
||||
<TabItem >
|
||||
<TabItem.Header>
|
||||
<StackPanel Orientation="Horizontal">
|
||||
<TextBlock Text="{Binding Machine_Msg}"
|
||||
Style="{StaticResource OptionTextBlock}"/>
|
||||
<Button Command="{Binding SaveCommand}"
|
||||
ToolTip="{Binding SaveToolTip}"
|
||||
Visibility="{Binding Machine_Visibility}"
|
||||
Style="{StaticResource OptionPanel_Button}">
|
||||
<Image Source="/Resources/ProjectManager/Save.png" Stretch="Uniform"/>
|
||||
</Button>
|
||||
</StackPanel>
|
||||
</TabItem.Header>
|
||||
<TabItem.Content>
|
||||
<Grid>
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="Auto"/>
|
||||
<ColumnDefinition Width="1*"/>
|
||||
<ColumnDefinition Width="1*"/>
|
||||
<ColumnDefinition Width="1*"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="Auto"/>
|
||||
<RowDefinition Height="10*"/>
|
||||
</Grid.RowDefinitions>
|
||||
|
||||
<StackPanel Grid.Row="0" Grid.Column="0" Orientation="Horizontal">
|
||||
<GroupBox Style="{StaticResource GroupBoxStyle_NoHeader}" Padding="5,10,5,5">
|
||||
<EgtBEAMWALL:MachinePanelV DataContext="{Binding MachinePanelVM}" VerticalAlignment="Center"/>
|
||||
</GroupBox>
|
||||
</StackPanel>
|
||||
|
||||
<StackPanel Grid.Row="1" Grid.Column="0" Orientation="Horizontal">
|
||||
<ItemsControl ItemsSource="{Binding ConfigMachTableList}">
|
||||
<ItemsControl.ItemsPanel>
|
||||
<ItemsPanelTemplate>
|
||||
<StackPanel x:Name="GroupStackPanel" Orientation="Horizontal"/>
|
||||
</ItemsPanelTemplate>
|
||||
</ItemsControl.ItemsPanel>
|
||||
<ItemsControl.ItemTemplate>
|
||||
<DataTemplate>
|
||||
<GroupBox Header="{Binding sName}" Width="Auto" VerticalAlignment="Top" Height="Auto">
|
||||
<ItemsControl Name="MachParamsItemsControl" ItemsSource="{Binding MachParamList}" Margin="0,5,0,0">
|
||||
<ItemsControl.ItemsPanel>
|
||||
<ItemsPanelTemplate>
|
||||
<WrapPanel Orientation="Vertical"/>
|
||||
</ItemsPanelTemplate>
|
||||
</ItemsControl.ItemsPanel>
|
||||
<ItemsControl.ItemTemplate>
|
||||
<DataTemplate>
|
||||
<Grid Margin="0,0,5,5">
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="*" />
|
||||
<ColumnDefinition Width="*" />
|
||||
<ColumnDefinition Width="*" />
|
||||
</Grid.ColumnDefinitions>
|
||||
<TextBlock Text="{Binding sName}"
|
||||
TextWrapping="WrapWithOverflow"
|
||||
Width="100"
|
||||
Style="{StaticResource MachParamTextBlock}"/>
|
||||
<EgtWPFLib5:EgtTextBox Text="{Binding sValue, UpdateSourceTrigger=Explicit}"
|
||||
Grid.Column="1"
|
||||
Width="70"/>
|
||||
<TextBlock Text="{Binding sDescription}"
|
||||
TextWrapping="WrapWithOverflow"
|
||||
Width="200"
|
||||
Style="{StaticResource MachParamTextBlock}"
|
||||
Grid.Column="2"/>
|
||||
</Grid>
|
||||
</DataTemplate>
|
||||
</ItemsControl.ItemTemplate>
|
||||
</ItemsControl>
|
||||
</GroupBox>
|
||||
</DataTemplate>
|
||||
</ItemsControl.ItemTemplate>
|
||||
</ItemsControl>
|
||||
</StackPanel>
|
||||
</Grid>
|
||||
<EgtBEAMWALLCORE:Machine_ConfigurationPageV/>
|
||||
</TabItem.Content>
|
||||
</TabItem>
|
||||
</TabControl>
|
||||
|
||||
<Button Command="{Binding SaveCommand}"
|
||||
<!--<Button Command="{Binding SaveCommand}"
|
||||
ToolTip="{Binding SaveToolTip}"
|
||||
Grid.Row="1"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource OptionPanel_Button}">
|
||||
<Image Source="/Resources/ProjectManager/Save.png" Stretch="Uniform"/>
|
||||
</Button>
|
||||
</Button>-->
|
||||
|
||||
</Grid>
|
||||
</DockPanel>
|
||||
|
||||
@@ -4,11 +4,7 @@ Imports EgtUILib
|
||||
Imports EgtWPFLib5
|
||||
Imports EgtBEAMWALL.Core
|
||||
Imports MS.Internal
|
||||
Imports Org.BouncyCastle.X509
|
||||
Imports Ionic.Zip
|
||||
Imports Org.BouncyCastle.Bcpg
|
||||
Imports Microsoft.VisualBasic.ApplicationServices
|
||||
Imports Renci.SshNet.Security
|
||||
|
||||
Public Class ConfigurationPageVM
|
||||
Inherits VMBase
|
||||
@@ -36,13 +32,28 @@ Public Class ConfigurationPageVM
|
||||
End Get
|
||||
Set(value As Integer)
|
||||
m_SelConfigSubPage = value
|
||||
If m_SelConfigSubPage = ConfigSubPages.GENERAL Then
|
||||
m_bGeneral_Visibility = Visibility.Visible
|
||||
m_bParameterQ_Visibility = Visibility.Collapsed
|
||||
m_bMachine_Visibility = Visibility.Collapsed
|
||||
ElseIf m_SelConfigSubPage = ConfigSubPages.QPARAMETERS Then
|
||||
m_bParameterQ_Visibility = Visibility.Visible
|
||||
m_bGeneral_Visibility = Visibility.Collapsed
|
||||
m_bMachine_Visibility = Visibility.Collapsed
|
||||
ElseIf m_SelConfigSubPage = ConfigSubPages.MACHINE Then
|
||||
m_bMachine_Visibility = Visibility.Visible
|
||||
m_bGeneral_Visibility = Visibility.Collapsed
|
||||
m_bParameterQ_Visibility = Visibility.Collapsed
|
||||
End If
|
||||
NotifyPropertyChanged(NameOf(General_Visibility))
|
||||
NotifyPropertyChanged(NameOf(ParameterQ_Visibility))
|
||||
NotifyPropertyChanged(NameOf(Machine_Visibility))
|
||||
End Set
|
||||
End Property
|
||||
|
||||
' flag modifica parametri Macchina
|
||||
Friend bModifyMachParam As Boolean
|
||||
|
||||
|
||||
Public ReadOnly Property MachinePanelVM As MachinePanelVM
|
||||
Get
|
||||
Return Map.refMachinePanelVM
|
||||
@@ -218,6 +229,39 @@ Public Class ConfigurationPageVM
|
||||
End Set
|
||||
End Property
|
||||
|
||||
Private m_bGeneral_Visibility As Visibility = Visibility.Visible
|
||||
Public Property General_Visibility As Visibility
|
||||
Get
|
||||
Return m_bGeneral_Visibility
|
||||
End Get
|
||||
Set(value As Visibility)
|
||||
m_bGeneral_Visibility = value
|
||||
NotifyPropertyChanged(NameOf(General_Visibility))
|
||||
End Set
|
||||
End Property
|
||||
|
||||
Private m_bParameterQ_Visibility As Visibility = Visibility.Collapsed
|
||||
Public Property ParameterQ_Visibility As Visibility
|
||||
Get
|
||||
Return m_bParameterQ_Visibility
|
||||
End Get
|
||||
Set(value As Visibility)
|
||||
m_bParameterQ_Visibility = value
|
||||
NotifyPropertyChanged(NameOf(ParameterQ_Visibility))
|
||||
End Set
|
||||
End Property
|
||||
|
||||
Private m_bMachine_Visibility As Visibility = Visibility.Collapsed
|
||||
Public Property Machine_Visibility As Visibility
|
||||
Get
|
||||
Return m_bMachine_Visibility
|
||||
End Get
|
||||
Set(value As Visibility)
|
||||
m_bMachine_Visibility = value
|
||||
NotifyPropertyChanged(NameOf(Machine_Visibility))
|
||||
End Set
|
||||
End Property
|
||||
|
||||
' Definizione comandi
|
||||
Private m_cmdSave As ICommand
|
||||
Private m_cmdChooseExternalBackupFolderPath As ICommand
|
||||
@@ -357,6 +401,24 @@ Public Class ConfigurationPageVM
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Public ReadOnly Property General_Msg As String
|
||||
Get
|
||||
Return EgtMsg(62535)
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Public ReadOnly Property ParameterQ_Msg As String
|
||||
Get
|
||||
Return EgtMsg(62536)
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Public ReadOnly Property Machine_Msg As String
|
||||
Get
|
||||
Return EgtMsg(62537)
|
||||
End Get
|
||||
End Property
|
||||
|
||||
#End Region ' Messages
|
||||
|
||||
#Region "Constructor"
|
||||
|
||||
@@ -0,0 +1,118 @@
|
||||
<Grid x:Class="General_ConfigurationPageV"
|
||||
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">
|
||||
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="1*"/>
|
||||
<ColumnDefinition Width="1*"/>
|
||||
<ColumnDefinition Width="1*"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="1*"/>
|
||||
<RowDefinition Height="1*"/>
|
||||
</Grid.RowDefinitions>
|
||||
<StackPanel Grid.Row="0" Grid.Column="0" Margin="5,5,5,0">
|
||||
<GroupBox Header="{Binding CurrentLanguage_Msg}"
|
||||
Margin="0,0,0,5">
|
||||
<UniformGrid Rows="2" Margin="3,3,3,3">
|
||||
<ComboBox ItemsSource="{Binding LanguageList, Mode=OneWay}" Height="25"
|
||||
DisplayMemberPath="Name" SelectedItem="{Binding SelectedLanguage}"
|
||||
Margin="0,0,0,5"/>
|
||||
<TextBlock Text="{Binding LanguageAdvert_Msg}" TextWrapping="Wrap"
|
||||
TextAlignment="Center"/>
|
||||
</UniformGrid>
|
||||
</GroupBox>
|
||||
<UniformGrid Columns="2"
|
||||
Margin="0,0,0,5">
|
||||
<TextBlock Text="{Binding MMUnits_Msg}" VerticalAlignment="Center"/>
|
||||
<ComboBox ItemsSource="{Binding UnitMeasureList, Mode=OneWay}"
|
||||
SelectedIndex="{Binding SelMeasureUnit}" Height="25"
|
||||
Margin="0,5,0,0"/>
|
||||
</UniformGrid>
|
||||
<GroupBox Header="{Binding Nesting_Msg}"
|
||||
Margin="0,0,0,5">
|
||||
<StackPanel>
|
||||
<UniformGrid Columns="2"
|
||||
Margin="0,0,0,5">
|
||||
<TextBlock Text="{Binding SectionTime_Msg}"
|
||||
Grid.Row="0" Grid.Column="0"/>
|
||||
<EgtWPFLib5:EgtTextBox Text="{Binding SectionTime, UpdateSourceTrigger=Explicit}"
|
||||
Grid.Row="0" Grid.Column="1"/>
|
||||
</UniformGrid>
|
||||
<UniformGrid Columns="2"
|
||||
Margin="0,0,0,5">
|
||||
<TextBlock Text="{Binding PartTime_Msg}"
|
||||
Grid.Row="1" Grid.Column="0"/>
|
||||
<EgtWPFLib5:EgtTextBox Text="{Binding PartTime, UpdateSourceTrigger=Explicit}"
|
||||
Grid.Row="1" Grid.Column="1"/>
|
||||
</UniformGrid>
|
||||
</StackPanel>
|
||||
</GroupBox>
|
||||
<UniformGrid Columns="2"
|
||||
Margin="0,0,0,5">
|
||||
<TextBlock Text="{Binding PrintLabel_Msg}" VerticalAlignment="Center"/>
|
||||
<CheckBox IsChecked="{Binding bPrintLabel_IsChecked}"
|
||||
Margin="0,5,0,0"/>
|
||||
</UniformGrid>
|
||||
<GroupBox Header="Backup And Restore">
|
||||
<Grid>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="Auto"/>
|
||||
<RowDefinition Height="Auto"/>
|
||||
<RowDefinition Height="Auto"/>
|
||||
<RowDefinition Height="Auto"/>
|
||||
</Grid.RowDefinitions>
|
||||
<Grid Grid.Row="0"
|
||||
Margin="0,2,0,5">
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="Auto"/>
|
||||
<ColumnDefinition Width="1*"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
<CheckBox x:Name="ExternalBackup_CheckBox"
|
||||
IsChecked="{Binding bExternalBackupActive}"
|
||||
VerticalAlignment="Center"/>
|
||||
<TextBlock Grid.Column="1"
|
||||
Text="External file path:"
|
||||
VerticalAlignment="Center"/>
|
||||
</Grid>
|
||||
<Grid Grid.Row="1"
|
||||
Margin="0,2,0,5">
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="1*"/>
|
||||
<ColumnDefinition Width="Auto"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
<TextBox Text="{Binding ExternalBackupFolderPath}"
|
||||
IsEnabled="{Binding IsChecked, ElementName=ExternalBackup_CheckBox}"
|
||||
Margin="0,0,2.5,0"/>
|
||||
<Button Grid.Column="1"
|
||||
Content="..."
|
||||
Width="18"
|
||||
Command="{Binding ChooseExternalBackupFolderPath_Command}"
|
||||
IsEnabled="{Binding IsChecked, ElementName=ExternalBackup_CheckBox}"
|
||||
Margin="2.5,0,0,0"/>
|
||||
</Grid>
|
||||
<Grid Grid.Row="2">
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="1*"/>
|
||||
<ColumnDefinition Width="Auto"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
<TextBlock Text="Reminder Frequency"/>
|
||||
<ComboBox Grid.Column="1"
|
||||
ItemsSource="{Binding ReminderList}"
|
||||
SelectedItem="{Binding SelReminder}"/>
|
||||
</Grid>
|
||||
<StackPanel Grid.Row="3"
|
||||
Orientation="Horizontal">
|
||||
<Button Content="Backup"
|
||||
Command="{Binding Backup_Command}"
|
||||
Style="{StaticResource ToolBar_TextButton}"/>
|
||||
<Button Content="Restore"
|
||||
Command="{Binding Restore_Command}"
|
||||
Style="{StaticResource ToolBar_TextButton}"/>
|
||||
</StackPanel>
|
||||
</Grid>
|
||||
</GroupBox>
|
||||
</StackPanel>
|
||||
|
||||
</Grid>
|
||||
@@ -0,0 +1,3 @@
|
||||
Public Class General_ConfigurationPageV
|
||||
|
||||
End Class
|
||||
@@ -0,0 +1,70 @@
|
||||
<Grid x:Class="Machine_ConfigurationPageV"
|
||||
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||
xmlns:EgtBEAMWALL="clr-namespace:EgtBEAMWALL.ViewerOptimizer"
|
||||
xmlns:EgtWPFLib5="clr-namespace:EgtWPFLib5;assembly=EgtWPFLib5">
|
||||
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="Auto"/>
|
||||
<ColumnDefinition Width="1*"/>
|
||||
<ColumnDefinition Width="1*"/>
|
||||
<ColumnDefinition Width="1*"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="Auto"/>
|
||||
<RowDefinition Height="10*"/>
|
||||
</Grid.RowDefinitions>
|
||||
|
||||
<StackPanel Grid.Row="0" Grid.Column="0" Orientation="Horizontal">
|
||||
<GroupBox Style="{StaticResource GroupBoxStyle_NoHeader}" Padding="5,10,5,5">
|
||||
<EgtBEAMWALL:MachinePanelV DataContext="{Binding MachinePanelVM}" VerticalAlignment="Center"/>
|
||||
</GroupBox>
|
||||
</StackPanel>
|
||||
|
||||
<StackPanel Grid.Row="1" Grid.Column="0" Orientation="Horizontal">
|
||||
<ItemsControl ItemsSource="{Binding ConfigMachTableList}">
|
||||
<ItemsControl.ItemsPanel>
|
||||
<ItemsPanelTemplate>
|
||||
<StackPanel x:Name="GroupStackPanel" Orientation="Horizontal"/>
|
||||
</ItemsPanelTemplate>
|
||||
</ItemsControl.ItemsPanel>
|
||||
<ItemsControl.ItemTemplate>
|
||||
<DataTemplate>
|
||||
<GroupBox Header="{Binding sName}" Width="Auto" VerticalAlignment="Top" Height="Auto">
|
||||
<ItemsControl Name="MachParamsItemsControl" ItemsSource="{Binding MachParamList}" Margin="0,5,0,0">
|
||||
<ItemsControl.ItemsPanel>
|
||||
<ItemsPanelTemplate>
|
||||
<WrapPanel Orientation="Vertical"/>
|
||||
</ItemsPanelTemplate>
|
||||
</ItemsControl.ItemsPanel>
|
||||
<ItemsControl.ItemTemplate>
|
||||
<DataTemplate>
|
||||
<Grid Margin="0,0,5,5">
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="*" />
|
||||
<ColumnDefinition Width="*" />
|
||||
<ColumnDefinition Width="*" />
|
||||
</Grid.ColumnDefinitions>
|
||||
<TextBlock Text="{Binding sName}"
|
||||
TextWrapping="WrapWithOverflow"
|
||||
Width="100"
|
||||
Style="{StaticResource MachParamTextBlock}"/>
|
||||
<EgtWPFLib5:EgtTextBox Text="{Binding sValue, UpdateSourceTrigger=Explicit}"
|
||||
Grid.Column="1"
|
||||
Width="70"/>
|
||||
<TextBlock Text="{Binding sDescription}"
|
||||
TextWrapping="WrapWithOverflow"
|
||||
Width="200"
|
||||
Style="{StaticResource MachParamTextBlock}"
|
||||
Grid.Column="2"/>
|
||||
</Grid>
|
||||
</DataTemplate>
|
||||
</ItemsControl.ItemTemplate>
|
||||
</ItemsControl>
|
||||
</GroupBox>
|
||||
</DataTemplate>
|
||||
</ItemsControl.ItemTemplate>
|
||||
</ItemsControl>
|
||||
</StackPanel>
|
||||
|
||||
</Grid>
|
||||
@@ -0,0 +1,3 @@
|
||||
Public Class Machine_ConfigurationPageV
|
||||
|
||||
End Class
|
||||
@@ -0,0 +1,80 @@
|
||||
<Grid x:Class="QParameter_ConfigurationPageV"
|
||||
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||
xmlns:EgtBEAMWALL="clr-namespace:EgtBEAMWALL.ViewerOptimizer">
|
||||
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="2*"/>
|
||||
<ColumnDefinition Width="1*"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="1*"/>
|
||||
</Grid.RowDefinitions>
|
||||
<EgtBEAMWALL:QParamListV DataContext="{Binding}"
|
||||
ItemsSource="{Binding QBTLParamVMList}"
|
||||
SelectedItem="{Binding SelQParam}"
|
||||
Grid.Column="0"
|
||||
Margin="5">
|
||||
<DataGrid.GroupStyle>
|
||||
<GroupStyle>
|
||||
<GroupStyle.Panel>
|
||||
<ItemsPanelTemplate>
|
||||
<DataGridRowsPresenter/>
|
||||
</ItemsPanelTemplate>
|
||||
</GroupStyle.Panel>
|
||||
<GroupStyle.HeaderTemplate>
|
||||
<DataTemplate>
|
||||
<StackPanel>
|
||||
<TextBlock Text="{Binding Path=Name}"/>
|
||||
</StackPanel>
|
||||
</DataTemplate>
|
||||
</GroupStyle.HeaderTemplate>
|
||||
<GroupStyle.ContainerStyle>
|
||||
<Style TargetType="{x:Type GroupItem}">
|
||||
<Setter Property="Template">
|
||||
<Setter.Value>
|
||||
<ControlTemplate TargetType="{x:Type GroupItem}">
|
||||
<Expander IsExpanded="True">
|
||||
<Expander.Background>
|
||||
<SolidColorBrush Color="#FFBABABA"></SolidColorBrush>
|
||||
</Expander.Background>
|
||||
<Expander.Header>
|
||||
<StackPanel Orientation="Horizontal">
|
||||
<TextBlock Text="{Binding Path=Name}" />
|
||||
</StackPanel>
|
||||
</Expander.Header>
|
||||
<ItemsPresenter />
|
||||
</Expander>
|
||||
</ControlTemplate>
|
||||
</Setter.Value>
|
||||
</Setter>
|
||||
</Style>
|
||||
</GroupStyle.ContainerStyle>
|
||||
</GroupStyle>
|
||||
<GroupStyle>
|
||||
<GroupStyle.ContainerStyle>
|
||||
<Style TargetType="{x:Type GroupItem}">
|
||||
<Setter Property="Template">
|
||||
<Setter.Value>
|
||||
<ControlTemplate TargetType="{x:Type GroupItem}">
|
||||
<Expander IsExpanded="True">
|
||||
<Expander.Background>
|
||||
<SolidColorBrush Color="LightGray"></SolidColorBrush>
|
||||
</Expander.Background>
|
||||
<Expander.Header>
|
||||
<StackPanel Orientation="Horizontal">
|
||||
<TextBlock Text="{Binding Path=Name}" />
|
||||
</StackPanel>
|
||||
</Expander.Header>
|
||||
<ItemsPresenter />
|
||||
</Expander>
|
||||
</ControlTemplate>
|
||||
</Setter.Value>
|
||||
</Setter>
|
||||
</Style>
|
||||
</GroupStyle.ContainerStyle>
|
||||
</GroupStyle>
|
||||
</DataGrid.GroupStyle>
|
||||
</EgtBEAMWALL:QParamListV>
|
||||
|
||||
</Grid>
|
||||
@@ -0,0 +1,3 @@
|
||||
Public Class QParameter_ConfigurationPageV
|
||||
|
||||
End Class
|
||||
@@ -256,6 +256,13 @@
|
||||
<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>
|
||||
<Compile Include="BTLPartManager\BTLPartManagerVM.vb" />
|
||||
<Compile Include="ChangeMaterialWnd\ChangeMaterialWndV.xaml.vb">
|
||||
<DependentUpon>ChangeMaterialWndV.xaml</DependentUpon>
|
||||
</Compile>
|
||||
@@ -263,6 +270,42 @@
|
||||
<Compile Include="DataGridMultiselectManaging\IListItemConverter.vb" />
|
||||
<Compile Include="DataGridMultiselectManaging\MultiSelectorBehaviours.vb" />
|
||||
<Compile Include="DataGridMultiselectManaging\TwoListSynchronizer.vb" />
|
||||
<Compile Include="FeatureListManager\FeatureListManagerV.xaml.vb">
|
||||
<DependentUpon>FeatureListManagerV.xaml</DependentUpon>
|
||||
</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>
|
||||
<Compile Include="RawPartManager\RawPartManagerWndV.xaml.vb">
|
||||
<DependentUpon>RawPartManagerWndV.xaml</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="TabWnd\ProdWndV.xaml.vb">
|
||||
<DependentUpon>ProdWndV.xaml</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="TabWnd\ProjWndV.xaml.vb">
|
||||
<DependentUpon>ProjWndV.xaml</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="ItemParamList\OnlyProdFeatureListV.xaml.vb">
|
||||
<DependentUpon>OnlyProdFeatureListV.xaml</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="ItemParamList\OnlyProdPParameterListV.xaml.vb">
|
||||
<DependentUpon>OnlyProdPParameterListV.xaml</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="ItemParamList\OnlyProdQParameterListV.xaml.vb">
|
||||
<DependentUpon>OnlyProdQParameterListV.xaml</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="LeftPanel\OnlyProdLeftPanelV.xaml.vb">
|
||||
<DependentUpon>OnlyProdLeftPanelV.xaml</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="OnlyProdManager\OnlyProdManagerV.vb">
|
||||
<DependentUpon>OnlyProdManagerV.xaml</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="OnlyProdManager\OnlyProdManagerVM.vb" />
|
||||
<Compile Include="MovePartInRawPartWnd\MovePartInRawPartWndV.xaml.vb">
|
||||
<DependentUpon>MovePartInRawPartWndV.xaml</DependentUpon>
|
||||
</Compile>
|
||||
@@ -280,10 +323,6 @@
|
||||
<DependentUpon>AddSectionXMaterialWndV.xaml</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="AddSectionXMaterialWnd\AddSectionXMaterialWndVM.vb" />
|
||||
<Compile Include="BeamMachiningsWindow\BeamMachiningsWindowV.xaml.vb">
|
||||
<DependentUpon>BeamMachiningsWindowV.xaml</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="BeamMachiningsWindow\MyBeamMachiningsWindowVM.vb" />
|
||||
<Compile Include="BlockedWnd\BlockedWndV.xaml.vb">
|
||||
<DependentUpon>BlockedWndV.xaml</DependentUpon>
|
||||
</Compile>
|
||||
@@ -328,11 +367,34 @@
|
||||
</Compile>
|
||||
<Compile Include="NestingRunningWnd\NestingRunningWndVM.vb" />
|
||||
<Compile Include="NewOpenProjectFileDialog\NewOpenProjectFileDialogVM.vb" />
|
||||
<Compile Include="OnlyProdProject\OnlyProdProjectV.xaml.vb">
|
||||
<DependentUpon>OnlyProdProjectV.xaml</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="OptimizePanel\OnlyProdOptimizePanelV.xaml.vb">
|
||||
<DependentUpon>OnlyProdOptimizePanelV.xaml</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="PartInRawPartManager\PartInRawPartManagerV.xaml.vb">
|
||||
<DependentUpon>PartInRawPartManagerV.xaml</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="PartInRawPartManager\PartInRawPartManagerVM.vb" />
|
||||
<Compile Include="PartParametersWnd\PartParametersWndV.xaml.vb">
|
||||
<DependentUpon>PartParametersWndV.xaml</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="PartParametersWnd\PartParametersWndVM.vb" />
|
||||
<Compile Include="ProdProjManager\ProdProjManagerV.xaml.vb">
|
||||
<DependentUpon>ProdProjManagerV.xaml</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="ProdProjManager\ProdProjManagerVM.vb" />
|
||||
<Compile Include="ProjectManager\ProjectManagerVM.vb" />
|
||||
<Compile Include="ProjectTypeWnd\ProjectTypeWndV.xaml.vb">
|
||||
<DependentUpon>ProjectTypeWndV.xaml</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="ProjectTypeWnd\ProjectTypeWndVM.vb" />
|
||||
<Compile Include="ProjectFileVM\ProdFileVM.vb" />
|
||||
<Compile Include="RawPartManager\RawPartManagerV.xaml.vb">
|
||||
<DependentUpon>RawPartManagerV.xaml</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="RawPartManager\RawPartManagerVM.vb" />
|
||||
<Compile Include="SetUp\SetUpSupportClass.vb" />
|
||||
<Compile Include="SetUp\SetUpV.xaml.vb">
|
||||
<DependentUpon>SetUpV.xaml</DependentUpon>
|
||||
@@ -346,6 +408,12 @@
|
||||
<DependentUpon>StatisticsTimePanelV.xaml</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="StatisticsTimePanel\StatisticsTimePanelVM.vb" />
|
||||
<Compile Include="StatisticsWnd\OptimizerStatisticsWndV.xaml.vb">
|
||||
<DependentUpon>OptimizerStatisticsWndV.xaml</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="StatisticsWnd\StatisticsWndV.xaml.vb">
|
||||
<DependentUpon>StatisticsWndV.xaml</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Statistics\OptimizerStatisticsV.xaml.vb">
|
||||
<DependentUpon>OptimizerStatisticsV.xaml</DependentUpon>
|
||||
</Compile>
|
||||
@@ -357,6 +425,7 @@
|
||||
<Compile Include="Statistics\StatisticsUtility.vb" />
|
||||
<Compile Include="SupervisorCommThread\SupervisorComm.vb" />
|
||||
<Compile Include="SupervisorCommThread\SupervisorCommThread.vb" />
|
||||
<Compile Include="TabWnd\ProjWndVM.vb" />
|
||||
<Compile Include="ToolsDbWindow\MyToolDbWindowVM.vb" />
|
||||
<Compile Include="ToolsDbWindow\ToolsUpdate.vb" />
|
||||
<Compile Include="UpdateBTLWnd\UpdateOrAppendWndVM.vb" />
|
||||
@@ -367,6 +436,7 @@
|
||||
<Compile Include="UpdateBTLWnd\UpdateOrAppendWndV.xaml.vb">
|
||||
<DependentUpon>UpdateOrAppendWndV.xaml</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="Utility\Configuration.vb" />
|
||||
<Compile Include="Utility\DbControllers.vb" />
|
||||
<Compile Include="Utility\DisableModifiedMgr.vb" />
|
||||
<Compile Include="Utility\LuaExec.vb" />
|
||||
@@ -412,10 +482,6 @@
|
||||
<DependentUpon>ConfigurationPageV.xaml</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="ConfigurationPage\ConfigurationPageVM.vb" />
|
||||
<Compile Include="MachinePanel\MachinePanelV.xaml.vb">
|
||||
<DependentUpon>MachinePanelV.xaml</DependentUpon>
|
||||
</Compile>
|
||||
<Compile Include="MachinePanel\MachinePanelVM.vb" />
|
||||
<Compile Include="OpenProjectFileDialog\OpenProjectFileDialogVM.vb" />
|
||||
<Compile Include="OptimizePanel\OptimizePanelV.xaml.vb">
|
||||
<DependentUpon>OptimizePanelV.xaml</DependentUpon>
|
||||
@@ -472,10 +538,62 @@
|
||||
<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>
|
||||
</Page>
|
||||
<Page Include="ChangeMaterialWnd\ChangeMaterialWndV.xaml">
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
<SubType>Designer</SubType>
|
||||
</Page>
|
||||
<Page Include="FeatureListManager\FeatureListManagerV.xaml">
|
||||
<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>
|
||||
</Page>
|
||||
<Page Include="RawPartManager\RawPartManagerWndV.xaml">
|
||||
<SubType>Designer</SubType>
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
</Page>
|
||||
<Page Include="TabWnd\ProdWndV.xaml">
|
||||
<SubType>Designer</SubType>
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
</Page>
|
||||
<Page Include="TabWnd\ProjWndV.xaml">
|
||||
<SubType>Designer</SubType>
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
</Page>
|
||||
<Page Include="ItemParamList\OnlyProdFeatureListV.xaml">
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
<SubType>Designer</SubType>
|
||||
</Page>
|
||||
<Page Include="ItemParamList\OnlyProdPParameterListV.xaml">
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
<SubType>Designer</SubType>
|
||||
</Page>
|
||||
<Page Include="ItemParamList\OnlyProdQParameterListV.xaml">
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
<SubType>Designer</SubType>
|
||||
</Page>
|
||||
<Page Include="LeftPanel\OnlyProdLeftPanelV.xaml">
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
<SubType>Designer</SubType>
|
||||
</Page>
|
||||
<Page Include="OnlyProdManager\OnlyProdManagerV.xaml">
|
||||
<SubType>Designer</SubType>
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
</Page>
|
||||
<Page Include="MovePartInRawPartWnd\MovePartInRawPartWndV.xaml">
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
<SubType>Designer</SubType>
|
||||
@@ -500,10 +618,6 @@
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
<SubType>Designer</SubType>
|
||||
</Page>
|
||||
<Page Include="BeamMachiningsWindow\BeamMachiningsWindowV.xaml">
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
<SubType>Designer</SubType>
|
||||
</Page>
|
||||
<Page Include="BlockedWnd\BlockedWndV.xaml">
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
<SubType>Designer</SubType>
|
||||
@@ -540,22 +654,54 @@
|
||||
<SubType>Designer</SubType>
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
</Page>
|
||||
<Page Include="OnlyProdProject\OnlyProdProjectV.xaml">
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
<SubType>Designer</SubType>
|
||||
</Page>
|
||||
<Page Include="OptimizePanel\OnlyProdOptimizePanelV.xaml">
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
<SubType>Designer</SubType>
|
||||
</Page>
|
||||
<Page Include="PartInRawPartManager\PartInRawPartManagerV.xaml">
|
||||
<SubType>Designer</SubType>
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
</Page>
|
||||
<Page Include="PartParametersWnd\PartParametersWndV.xaml">
|
||||
<SubType>Designer</SubType>
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
</Page>
|
||||
<Page Include="ProdProjManager\ProdProjManagerV.xaml">
|
||||
<SubType>Designer</SubType>
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
</Page>
|
||||
<Page Include="ProjectTypeWnd\ProjectTypeWndV.xaml">
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
<SubType>Designer</SubType>
|
||||
</Page>
|
||||
<Page Include="RawPartManager\RawPartManagerV.xaml">
|
||||
<SubType>Designer</SubType>
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
</Page>
|
||||
<Page Include="SetUp\SetUpV.xaml">
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
<SubType>Designer</SubType>
|
||||
</Page>
|
||||
<Page Include="SpecialPanel\SpecialPanelV.xaml">
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
<SubType>Designer</SubType>
|
||||
<Generator>XamlIntelliSenseFileGenerator</Generator>
|
||||
</Page>
|
||||
<Page Include="StatisticsTimePanel\StatisticsTimePanelV.xaml">
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
<SubType>Designer</SubType>
|
||||
</Page>
|
||||
<Page Include="StatisticsWnd\OptimizerStatisticsWndV.xaml">
|
||||
<SubType>Designer</SubType>
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
</Page>
|
||||
<Page Include="StatisticsWnd\StatisticsWndV.xaml">
|
||||
<SubType>Designer</SubType>
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
</Page>
|
||||
<Page Include="Statistics\OptimizerStatisticsV.xaml">
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
<SubType>Designer</SubType>
|
||||
@@ -628,10 +774,6 @@
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
<SubType>Designer</SubType>
|
||||
</Page>
|
||||
<Page Include="MachinePanel\MachinePanelV.xaml">
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
<SubType>Designer</SubType>
|
||||
</Page>
|
||||
<Page Include="MacroFeatureWnd\MacroFeatureWndV.xaml">
|
||||
<SubType>Designer</SubType>
|
||||
<Generator>MSBuild:Compile</Generator>
|
||||
@@ -1008,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
|
||||
|
||||
@@ -0,0 +1,36 @@
|
||||
<StackPanel x:Class="FeatureListManagerV"
|
||||
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||
Orientation="Horizontal"
|
||||
HorizontalAlignment="Right"
|
||||
DataContext="{StaticResource FeatureListManagerVM}">
|
||||
|
||||
<Button Command="{Binding CopyFeature_Command}"
|
||||
Visibility="{Binding ViewPage_Visibility}"
|
||||
ToolTip="{Binding CopyFeature_ToolTip}"
|
||||
IsEnabled="{Binding CopyFeature_IsEnabled}"
|
||||
Style="{StaticResource LeftPanel_Button}">
|
||||
<Image Source="/Resources/LeftPanel/CopyFeature.png" Stretch="Uniform"/>
|
||||
</Button>
|
||||
<Button Command="{Binding MacroFeature_Command}"
|
||||
Visibility="{Binding ViewPage_Visibility}"
|
||||
ToolTip="{Binding MacroFeature_ToolTip}"
|
||||
IsEnabled="{Binding MacroFeature_IsEnabled}"
|
||||
Style="{StaticResource LeftPanel_Button}">
|
||||
<Image Source="/Resources/LeftPanel/MacroFeature.png" Stretch="Uniform"/>
|
||||
</Button>
|
||||
<Button Command="{Binding AddFeature_Command}"
|
||||
Visibility="{Binding ViewPage_Visibility}"
|
||||
ToolTip="{Binding AddFeature_ToolTip}"
|
||||
IsEnabled="{Binding AddFeature_IsEnabled}"
|
||||
Style="{StaticResource LeftPanel_Button}">
|
||||
<Image Source="/Resources/LeftPanel/AddFeature.png" Stretch="Uniform"/>
|
||||
</Button>
|
||||
<Button Command="{Binding RemoveFeature_Command}"
|
||||
Visibility="{Binding ViewPage_Visibility}"
|
||||
ToolTip="{Binding RemoveFeature_ToolTip}"
|
||||
IsEnabled="{Binding RemoveFeature_IsEnabled}"
|
||||
Style="{StaticResource LeftPanel_Button}">
|
||||
<Image Source="/Resources/LeftPanel/RemoveFeature.png" Stretch="Uniform"/>
|
||||
</Button>
|
||||
</StackPanel>
|
||||
@@ -0,0 +1,3 @@
|
||||
Public Class FeatureListManagerV
|
||||
|
||||
End Class
|
||||
@@ -0,0 +1,366 @@
|
||||
Imports EgtBEAMWALL.Core
|
||||
Imports EgtUILib.EgtInterface
|
||||
Imports EgtWPFLib5
|
||||
|
||||
Public Class FeatureListManagerVM
|
||||
Inherits VMBase
|
||||
|
||||
#Region "FIELDS & PROPERTIES"
|
||||
|
||||
Public ReadOnly Property ViewPage_Visibility As Visibility
|
||||
Get
|
||||
Return If(Map.refMainMenuVM.SelPage = Pages.VIEW OrElse Map.refMainMenuVM.SelPage = Pages.ONLYPRODPAGE, Visibility.Visible, Visibility.Collapsed)
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Public ReadOnly Property PartIsSelected As Boolean
|
||||
Get
|
||||
Return Not IsNothing(Map.refProjectVM) AndAlso Not IsNothing(Map.refProjectVM.BTLStructureVM) AndAlso Not IsNothing(Map.refProjectVM.BTLStructureVM.SelBTLPart)
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Public ReadOnly Property FeatureIsSelected As Boolean
|
||||
Get
|
||||
Return PartIsSelected AndAlso Not IsNothing(Map.refProjectVM.BTLStructureVM.SelBTLPart.SelBTLFeatureVM)
|
||||
End Get
|
||||
End Property
|
||||
|
||||
|
||||
Public ReadOnly Property CopyFeature_IsEnabled As Boolean
|
||||
Get
|
||||
Return Map.refBTLPartManagerVM.BTLPartManager_IsEnabled AndAlso PartIsSelected AndAlso FeatureIsSelected
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Public ReadOnly Property MacroFeature_IsEnabled As Boolean
|
||||
Get
|
||||
Return Map.refBTLPartManagerVM.BTLPartManager_IsEnabled AndAlso PartIsSelected AndAlso FeatureIsSelected
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Public ReadOnly Property AddFeature_IsEnabled As Boolean
|
||||
Get
|
||||
Return Map.refBTLPartManagerVM.BTLPartManager_IsEnabled AndAlso PartIsSelected AndAlso Not IsNothing(Map.refProjectVM.BTLStructureVM) AndAlso Not Map.refProjectVM.BTLStructureVM.SelBTLPartsCnt > 1
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Public ReadOnly Property RemoveFeature_IsEnabled As Boolean
|
||||
Get
|
||||
Return Map.refBTLPartManagerVM.BTLPartManager_IsEnabled AndAlso PartIsSelected AndAlso FeatureIsSelected
|
||||
End Get
|
||||
End Property
|
||||
|
||||
|
||||
Private m_cmdCopyFeature As ICommand
|
||||
Private m_cmdMacroFeature As ICommand
|
||||
Private m_cmdAddFeature As ICommand
|
||||
Private m_cmdRemoveFeature As ICommand
|
||||
|
||||
#End Region ' Fields & Properties
|
||||
|
||||
#Region "Messages"
|
||||
|
||||
Public ReadOnly Property CopyFeature_ToolTip As String
|
||||
Get
|
||||
Return EgtMsg(61908)
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Public ReadOnly Property MacroFeature_ToolTip As String
|
||||
Get
|
||||
Return EgtMsg(61909)
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Public ReadOnly Property AddFeature_ToolTip As String
|
||||
Get
|
||||
Return EgtMsg(61910)
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Public ReadOnly Property RemoveFeature_ToolTip As String
|
||||
Get
|
||||
Return EgtMsg(61911)
|
||||
End Get
|
||||
End Property
|
||||
|
||||
|
||||
#End Region ' Messages
|
||||
|
||||
#Region "CONSTRUCTOR"
|
||||
|
||||
Sub New()
|
||||
Map.SetRefFeatureListManagerVM(Me)
|
||||
End Sub
|
||||
|
||||
#End Region ' Constructor
|
||||
|
||||
#Region "METHODS"
|
||||
|
||||
Friend Sub UpdateView()
|
||||
NotifyPropertyChanged(NameOf(ViewPage_Visibility))
|
||||
End Sub
|
||||
|
||||
Friend Sub SetLeftPanelIsEnabled(bIsEnabled As Boolean)
|
||||
NotifyPropertyChanged(NameOf(CopyFeature_IsEnabled))
|
||||
NotifyPropertyChanged(NameOf(AddFeature_IsEnabled))
|
||||
NotifyPropertyChanged(NameOf(RemoveFeature_IsEnabled))
|
||||
NotifyPropertyChanged(NameOf(MacroFeature_IsEnabled))
|
||||
End Sub
|
||||
|
||||
Friend Sub PartShowAllChanged()
|
||||
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"
|
||||
|
||||
#Region "CopyFeature"
|
||||
|
||||
''' <summary>
|
||||
''' Returns a command that do Exec.
|
||||
''' </summary>
|
||||
Public ReadOnly Property CopyFeature_Command As ICommand
|
||||
Get
|
||||
If m_cmdCopyFeature Is Nothing Then
|
||||
m_cmdCopyFeature = New Command(AddressOf CopyFeature)
|
||||
End If
|
||||
Return m_cmdCopyFeature
|
||||
End Get
|
||||
End Property
|
||||
|
||||
''' <summary>
|
||||
''' Execute the Exec. This method is invoked by the ExecCommand.
|
||||
''' </summary>
|
||||
Public Sub CopyFeature()
|
||||
If IsNothing(ProjectManagerVM.CurrProj) Then Return
|
||||
Dim SelPart As BTLPartVM = Map.refProjectVM.BTLStructureVM.SelBTLPart
|
||||
If IsNothing(SelPart) Then Return
|
||||
Dim SelFeature As BTLFeatureVM = SelPart.SelBTLFeatureVM
|
||||
If IsNothing(SelFeature) Then Return
|
||||
' creo copia
|
||||
Dim NewFeature = SelFeature.Copy()
|
||||
If Not IsNothing(NewFeature) Then
|
||||
SelPart.SelBTLFeatureVM = Map.refProjectVM.BTLStructureVM.SelBTLPart.BTLFeatureVMList.FirstOrDefault(Function(x) x.BTLFeatureM Is NewFeature)
|
||||
MyMachGroupPanelM.SetDuploModified(SelPart.nPartId)
|
||||
End If
|
||||
SelPart.ResetCalcPart()
|
||||
End Sub
|
||||
|
||||
#End Region ' CopyFeature
|
||||
|
||||
#Region "MacroFeature"
|
||||
|
||||
''' <summary>
|
||||
''' Returns a command that do Exec.
|
||||
''' </summary>
|
||||
Public ReadOnly Property MacroFeature_Command As ICommand
|
||||
Get
|
||||
If m_cmdMacroFeature Is Nothing Then
|
||||
m_cmdMacroFeature = New Command(AddressOf MacroFeature)
|
||||
End If
|
||||
Return m_cmdMacroFeature
|
||||
End Get
|
||||
End Property
|
||||
|
||||
''' <summary>
|
||||
''' Execute the Exec. This method is invoked by the ExecCommand.
|
||||
''' </summary>
|
||||
Public Sub MacroFeature()
|
||||
If IsNothing(ProjectManagerVM.CurrProj) Then Return
|
||||
If IsNothing(Map.refProjectVM.BTLStructureVM.SelBTLPart) Then Return
|
||||
' apro finestra di creazione macro
|
||||
Dim MacroFeatureWndVM As New MacroFeatureWndVM()
|
||||
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
|
||||
|
||||
#End Region ' MacroFeature
|
||||
|
||||
#Region "AddFeature"
|
||||
|
||||
''' <summary>
|
||||
''' Returns a command that do Exec.
|
||||
''' </summary>
|
||||
Public ReadOnly Property AddFeature_Command As ICommand
|
||||
Get
|
||||
If m_cmdAddFeature Is Nothing Then
|
||||
m_cmdAddFeature = New Command(AddressOf AddFeature)
|
||||
End If
|
||||
Return m_cmdAddFeature
|
||||
End Get
|
||||
End Property
|
||||
|
||||
''' <summary>
|
||||
''' Execute the Exec. This method is invoked by the ExecCommand.
|
||||
''' </summary>
|
||||
Public Sub AddFeature(ByVal param As Object)
|
||||
If IsNothing(ProjectManagerVM.CurrProj) Then Return
|
||||
If IsNothing(Map.refProjectVM.BTLStructureVM.SelBTLPart) Then Return
|
||||
' apro finestra di definizione nuova feature
|
||||
Dim AddFeatureWndVM As New AddFeatureWndVM()
|
||||
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
|
||||
End If
|
||||
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
|
||||
|
||||
#End Region ' AddFeature
|
||||
|
||||
#Region "RemoveFeature"
|
||||
|
||||
''' <summary>
|
||||
''' Returns a command that do Exec.
|
||||
''' </summary>
|
||||
Public ReadOnly Property RemoveFeature_Command As ICommand
|
||||
Get
|
||||
If m_cmdRemoveFeature Is Nothing Then
|
||||
m_cmdRemoveFeature = New Command(AddressOf RemoveFeature)
|
||||
End If
|
||||
Return m_cmdRemoveFeature
|
||||
End Get
|
||||
End Property
|
||||
|
||||
''' <summary>
|
||||
''' Execute the Exec. This method is invoked by the ExecCommand.
|
||||
''' </summary>
|
||||
Public Sub RemoveFeature()
|
||||
If IsNothing(ProjectManagerVM.CurrProj) Then Return
|
||||
If IsNothing(Map.refProjectVM.BTLStructureVM.SelBTLPart) Then Return
|
||||
If IsNothing(Map.refProjectVM.BTLStructureVM.SelBTLPart.SelBTLFeatureVM) Then Return
|
||||
If EgtBeamEraseProcess(Map.refProjectVM.BTLStructureVM.SelBTLPart.SelBTLFeatureVM.nFeatureId) Then
|
||||
MyMachGroupPanelM.SetDuploModified(Map.refProjectVM.BTLStructureVM.SelBTLPart.nPartId)
|
||||
' rimuovo dalla lista feature
|
||||
Dim Index As Integer = Map.refProjectVM.BTLStructureVM.SelBTLPart.BTLFeatureVMList.IndexOf(Map.refProjectVM.BTLStructureVM.SelBTLPart.SelBTLFeatureVM)
|
||||
If Index = 0 Then
|
||||
If Map.refProjectVM.BTLStructureVM.SelBTLPart.BTLFeatureVMList.Count > 0 Then
|
||||
Map.refProjectVM.BTLStructureVM.SelBTLPart.SelBTLFeatureVM = Map.refProjectVM.BTLStructureVM.SelBTLPart.BTLFeatureVMList(0)
|
||||
Else
|
||||
Map.refProjectVM.BTLStructureVM.SelBTLPart.SelBTLFeatureVM = Nothing
|
||||
End If
|
||||
ElseIf Index = Map.refProjectVM.BTLStructureVM.SelBTLPart.BTLFeatureVMList.Count - 1 Then
|
||||
If Map.refProjectVM.BTLStructureVM.SelBTLPart.BTLFeatureVMList.Count > 1 Then
|
||||
Map.refProjectVM.BTLStructureVM.SelBTLPart.SelBTLFeatureVM = Map.refProjectVM.BTLStructureVM.SelBTLPart.BTLFeatureVMList(Map.refProjectVM.BTLStructureVM.SelBTLPart.BTLFeatureVMList.Count - 2)
|
||||
Else
|
||||
Map.refProjectVM.BTLStructureVM.SelBTLPart.SelBTLFeatureVM = Nothing
|
||||
End If
|
||||
Else
|
||||
Map.refProjectVM.BTLStructureVM.SelBTLPart.SelBTLFeatureVM = Map.refProjectVM.BTLStructureVM.SelBTLPart.BTLFeatureVMList(Index - 1)
|
||||
End If
|
||||
Map.refProjectVM.BTLStructureVM.SelBTLPart.BTLFeatureVMList.RemoveAt(Index)
|
||||
EgtDraw()
|
||||
Map.refProjectVM.BTLStructureVM.SelBTLPart.ResetCalcPart()
|
||||
End If
|
||||
End Sub
|
||||
|
||||
#End Region ' RemoveFeature
|
||||
|
||||
#End Region ' Commands
|
||||
|
||||
End Class
|
||||
@@ -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"
|
||||
|
||||
@@ -321,7 +321,8 @@ Public Class FreeContourManagerVM
|
||||
nSideAngTextLayer = GDB_ID.NULL
|
||||
SideAngValues.Clear()
|
||||
' nascondo PartManager
|
||||
Map.refProjectVM.NotifyPropertyChanged(NameOf(Map.refProjectVM.PartManager_Visibility))
|
||||
'Map.refProjectVM.NotifyPropertyChanged(NameOf(Map.refProjectVM.PartManager_Visibility))
|
||||
Map.refProjectVM.NotifyPropertyChanged(NameOf(Map.refProdProjManagerVM.PartManager_Visibility))
|
||||
' verifico se solido attivo
|
||||
m_bPrevShowSolid = Map.refShowBeamPanelVM.ShowSolid_IsChecked
|
||||
If m_bPrevShowSolid Then Map.refProjectVM.BTLStructureVM.ShowSolid(GDB_ID.NULL, False, False)
|
||||
@@ -437,7 +438,8 @@ Public Class FreeContourManagerVM
|
||||
' attivo bottoni save e cancel
|
||||
SelFeature.RefreshFCMBtnVisibility()
|
||||
' nascondo Part Manager
|
||||
Map.refProjectVM.NotifyPropertyChanged(NameOf(Map.refProjectVM.PartManager_Visibility))
|
||||
'Map.refProjectVM.NotifyPropertyChanged(NameOf(Map.refProjectVM.PartManager_Visibility))
|
||||
Map.refProjectVM.NotifyPropertyChanged(NameOf(Map.refProdProjManagerVM.PartManager_Visibility))
|
||||
' attivo pannello
|
||||
Map.refProjectVM.SetFreeContourManager_Visibility(True)
|
||||
EgtDraw()
|
||||
@@ -537,7 +539,8 @@ Public Class FreeContourManagerVM
|
||||
nSelFeatureId = GDB_ID.NULL
|
||||
nProcessingLayerId = GDB_ID.NULL
|
||||
' riattivo Part Manager
|
||||
Map.refProjectVM.NotifyPropertyChanged(NameOf(Map.refProjectVM.PartManager_Visibility))
|
||||
'Map.refProjectVM.NotifyPropertyChanged(NameOf(Map.refProjectVM.PartManager_Visibility))
|
||||
Map.refProjectVM.NotifyPropertyChanged(NameOf(Map.refProdProjManagerVM.PartManager_Visibility))
|
||||
' disattivo modifiche su scena
|
||||
Map.refSceneHostVM.MainScene.SetStatusNull()
|
||||
If m_bPrevShowSolid Then Map.refProjectVM.BTLStructureVM.ShowSolid(GDB_ID.NULL, True, False)
|
||||
@@ -557,7 +560,8 @@ Public Class FreeContourManagerVM
|
||||
Core.ViewPanelVM.BWSetView(If(Core.ViewPanelVM.Type = BWType.BEAM, VT.ISO_SW, VT.TOP), False)
|
||||
EgtZoom(ZM.ALL)
|
||||
' rimetto PartManager
|
||||
Map.refProjectVM.NotifyPropertyChanged(NameOf(Map.refProjectVM.PartManager_Visibility))
|
||||
'Map.refProjectVM.NotifyPropertyChanged(NameOf(Map.refProjectVM.PartManager_Visibility))
|
||||
Map.refProjectVM.NotifyPropertyChanged(NameOf(Map.refProdProjManagerVM.PartManager_Visibility))
|
||||
End Sub
|
||||
|
||||
' funzione lanciata su fine creazione percorso
|
||||
|
||||
@@ -39,9 +39,26 @@
|
||||
|
||||
<ToggleButton ToolTip="{Binding Statistics_Msg}"
|
||||
Style="{StaticResource ToolBar_ToggleButton}"
|
||||
Visibility="{Binding Statistic_Visibility}"
|
||||
IsChecked="{Binding Statistics_IsChecked}"
|
||||
IsEnabled="{Binding Statistics_IsEnabled}">
|
||||
<Image Source="/Resources/InstrumentPanel/Statistics.png" Stretch="Uniform"/>
|
||||
</ToggleButton>
|
||||
|
||||
|
||||
<Button Command="{Binding Visualization_Command}"
|
||||
ToolTip="{Binding Statistics_Msg}"
|
||||
Style="{StaticResource ToolBar_Button}"
|
||||
Visibility="{Binding VisStatistic_Visibility}"
|
||||
IsEnabled="{Binding VisStatistic_IsEnabled}">
|
||||
<Image Source="/Resources/InstrumentPanel/Vis.png" Stretch="Uniform"/>
|
||||
</Button>
|
||||
|
||||
<Button Command="{Binding Optimizer_Command}"
|
||||
ToolTip="{Binding Statistics_Msg}"
|
||||
Style="{StaticResource ToolBar_Button}"
|
||||
Visibility="{Binding OtStatistic_Visibility}"
|
||||
IsEnabled="{Binding OtStatistic_IsEnabled}">
|
||||
<Image Source="/Resources/InstrumentPanel/Ott.png" Stretch="Uniform"/>
|
||||
</Button>
|
||||
|
||||
</EgtFloating:EgtFloatingPanel>
|
||||
|
||||
@@ -19,6 +19,24 @@ Public Class MyInstrumentPanelVM
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Public ReadOnly Property Statistic_Visibility As Visibility
|
||||
Get
|
||||
Return If(Map.refMainMenuVM.SelPage = Pages.VIEW OrElse Map.refMainMenuVM.SelPage = Pages.MACHINING, Visibility.Visible, Visibility.Collapsed)
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Public ReadOnly Property VisStatistic_Visibility As Visibility
|
||||
Get
|
||||
Return If(Map.refMainMenuVM.SelPage = Pages.ONLYPRODPAGE, Visibility.Visible, Visibility.Collapsed)
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Public ReadOnly Property OtStatistic_Visibility As Visibility
|
||||
Get
|
||||
Return If(Map.refMainMenuVM.SelPage = Pages.ONLYPRODPAGE, Visibility.Visible, Visibility.Collapsed)
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Private m_InstrumentPanel_IsEnabled As Boolean = True
|
||||
Public Property InstrumentPanel_IsEnabled As Boolean
|
||||
Get
|
||||
@@ -39,6 +57,19 @@ Public Class MyInstrumentPanelVM
|
||||
End Set
|
||||
End Property
|
||||
|
||||
' flag per verificare se è stato selezionato il pulsante VIS o OTT se 0 = VIS se 1 = OTT
|
||||
Private m_bVisOtt_Selected As Boolean = False
|
||||
Public Property bVisOtt_Selected As Boolean
|
||||
Get
|
||||
Return m_bVisOtt_Selected
|
||||
End Get
|
||||
Set(value As Boolean)
|
||||
m_bVisOtt_Selected = value
|
||||
NotifyPropertyChanged(NameOf(bVisOtt_Selected))
|
||||
End Set
|
||||
End Property
|
||||
|
||||
|
||||
Dim m_PrevBottomPanelPage As BottomPanelVM.PartFeatureTab = BottomPanelVM.PartFeatureTab.STRUCTURE_
|
||||
Private m_Statistics_IsChecked As Boolean = False
|
||||
Public Property Statistics_IsChecked As Boolean
|
||||
@@ -64,7 +95,7 @@ Public Class MyInstrumentPanelVM
|
||||
' aggiorno valori totali
|
||||
If Not IsNothing(Map.refProjectVM.MachGroupPanelVM) Then Map.refProjectVM.MachGroupPanelVM.CalcGlobalUpdate()
|
||||
' aggiorno conto materiali usati
|
||||
If Not IsNothing(Map.refProdManagerVM.CurrProd) Then Map.refStatisticsVM.LoadRawPart()
|
||||
If Not IsNothing(ProjectManagerVM.CurrProd) Then Map.refStatisticsVM.LoadRawPart()
|
||||
' seleziono pagina Statistics
|
||||
Map.refTopPanelVM.SetSelTab(TopPanelVM.Tabs.STATISTICS)
|
||||
Else
|
||||
@@ -79,11 +110,33 @@ Public Class MyInstrumentPanelVM
|
||||
NotifyPropertyChanged(NameOf(Statistics_IsChecked))
|
||||
End Sub
|
||||
|
||||
Private m_VisStatistic_IsEnabled As Boolean = True
|
||||
Public Property VisStatistic_IsEnabled As Boolean
|
||||
Get
|
||||
Return m_VisStatistic_IsEnabled
|
||||
End Get
|
||||
Set(value As Boolean)
|
||||
m_VisStatistic_IsEnabled = value
|
||||
End Set
|
||||
End Property
|
||||
|
||||
Private m_OtStatistic_IsEnabled As Boolean = True
|
||||
Public Property OtStatistic_IsEnabled As Boolean
|
||||
Get
|
||||
Return m_OtStatistic_IsEnabled
|
||||
End Get
|
||||
Set(value As Boolean)
|
||||
m_OtStatistic_IsEnabled = value
|
||||
End Set
|
||||
End Property
|
||||
|
||||
' Definizione comandi
|
||||
Private m_cmdData As ICommand
|
||||
Private m_cmdChangeParameter As ICommand
|
||||
Private m_cmdChangeMaterial As ICommand
|
||||
Private m_cmdStatistics As ICommand
|
||||
Private m_cmdVisualization As ICommand
|
||||
Private m_cmdOptimizer As ICommand
|
||||
|
||||
#Region "Messages"
|
||||
|
||||
@@ -139,39 +192,45 @@ Public Class MyInstrumentPanelVM
|
||||
NotifyPropertyChanged(NameOf(InstrumentPanel_IsEnabled))
|
||||
If Map.refFreeContourManagerVM.bIsActive Then
|
||||
m_Statistics_IsEnabled = bIsEnabled
|
||||
m_VisStatistic_IsEnabled = bIsEnabled
|
||||
m_OtStatistic_IsEnabled = bIsEnabled
|
||||
Else
|
||||
m_Statistics_IsEnabled = True
|
||||
m_VisStatistic_IsEnabled = True
|
||||
m_OtStatistic_IsEnabled = True
|
||||
End If
|
||||
NotifyPropertyChanged(NameOf(Statistics_IsEnabled))
|
||||
NotifyPropertyChanged(NameOf(VisStatistic_IsEnabled))
|
||||
NotifyPropertyChanged(NameOf(OtStatistic_IsEnabled))
|
||||
End Sub
|
||||
|
||||
#End Region ' METHODS
|
||||
|
||||
#Region "COMMANDS"
|
||||
|
||||
#Region "Data"
|
||||
'#Region "Data"
|
||||
|
||||
''' <summary>
|
||||
''' Returns a command that do Open.
|
||||
''' </summary>
|
||||
Public ReadOnly Property Data_Command As ICommand
|
||||
Get
|
||||
If m_cmdData Is Nothing Then
|
||||
m_cmdData = New Command(AddressOf Data)
|
||||
End If
|
||||
Return m_cmdData
|
||||
End Get
|
||||
End Property
|
||||
' ''' <summary>
|
||||
' ''' Returns a command that do Open.
|
||||
' ''' </summary>
|
||||
' Public ReadOnly Property Data_Command As ICommand
|
||||
' Get
|
||||
' If m_cmdData Is Nothing Then
|
||||
' m_cmdData = New Command(AddressOf Data)
|
||||
' End If
|
||||
' Return m_cmdData
|
||||
' End Get
|
||||
' End Property
|
||||
|
||||
''' <summary>
|
||||
''' Execute the Open. This method is invoked by the OpenCommand.
|
||||
''' </summary>
|
||||
Friend Sub Data()
|
||||
Dim BTLDataWnd As New BTLDataWndV(Application.Current.MainWindow, New BTLDataWndVM())
|
||||
BTLDataWnd.ShowDialog()
|
||||
End Sub
|
||||
' ''' <summary>
|
||||
' ''' Execute the Open. This method is invoked by the OpenCommand.
|
||||
' ''' </summary>
|
||||
' Friend Sub Data()
|
||||
' Dim BTLDataWnd As New BTLDataWndV(Application.Current.MainWindow, New BTLDataWndVM())
|
||||
' BTLDataWnd.ShowDialog()
|
||||
' End Sub
|
||||
|
||||
#End Region ' Data
|
||||
'#End Region ' Data
|
||||
|
||||
#Region "ChangeParameter"
|
||||
|
||||
@@ -191,8 +250,8 @@ Public Class MyInstrumentPanelVM
|
||||
''' Execute the Open. This method is invoked by the OpenCommand.
|
||||
''' </summary>
|
||||
Friend Sub ChangeParameter()
|
||||
If (Map.refMainMenuVM.SelPage = Pages.VIEW AndAlso (IsNothing(Map.refProjManagerVM.CurrProj) OrElse IsNothing(Map.refProjectVM.BTLStructureVM)) OrElse
|
||||
(Map.refMainMenuVM.SelPage = Pages.MACHINING AndAlso (IsNothing(Map.refProdManagerVM.CurrProd) OrElse IsNothing(Map.refProjectVM.MachGroupPanelVM)))) Then Return
|
||||
If (Map.refMainMenuVM.SelPage = Pages.VIEW AndAlso (IsNothing(ProjectManagerVM.CurrProj) OrElse IsNothing(Map.refProjectVM.BTLStructureVM)) OrElse
|
||||
(Map.refMainMenuVM.SelPage = Pages.MACHINING AndAlso (IsNothing(ProjectManagerVM.CurrProd) OrElse IsNothing(Map.refProjectVM.MachGroupPanelVM)))) Then Return
|
||||
Dim ChangeParameterWndVM As New ChangeParameterWndVM
|
||||
Dim ChangeParameterWnd As New ChangeParameterWndV(Application.Current.MainWindow, ChangeParameterWndVM)
|
||||
If ChangeParameterWnd.ShowDialog() Then
|
||||
@@ -250,8 +309,8 @@ Public Class MyInstrumentPanelVM
|
||||
''' Execute the Open. This method is invoked by the OpenCommand.
|
||||
''' </summary>
|
||||
Friend Sub ChangeMaterial()
|
||||
If (Map.refMainMenuVM.SelPage = Pages.VIEW AndAlso (IsNothing(Map.refProjManagerVM.CurrProj) OrElse IsNothing(Map.refProjectVM.BTLStructureVM)) OrElse
|
||||
(Map.refMainMenuVM.SelPage = Pages.MACHINING AndAlso (IsNothing(Map.refProdManagerVM.CurrProd) OrElse IsNothing(Map.refProjectVM.MachGroupPanelVM)))) Then Return
|
||||
If (Map.refMainMenuVM.SelPage = Pages.VIEW AndAlso (IsNothing(ProjectManagerVM.CurrProj) OrElse IsNothing(Map.refProjectVM.BTLStructureVM)) OrElse
|
||||
(Map.refMainMenuVM.SelPage = Pages.MACHINING AndAlso (IsNothing(ProjectManagerVM.CurrProd) OrElse IsNothing(Map.refProjectVM.MachGroupPanelVM)))) Then Return
|
||||
Dim ChangeMaterialWndVM As New ChangeMaterialWndVM
|
||||
Dim ChangeMaterialWnd As New ChangeMaterialWndV(Application.Current.MainWindow, ChangeMaterialWndVM)
|
||||
If ChangeMaterialWnd.ShowDialog() Then
|
||||
@@ -268,6 +327,56 @@ Public Class MyInstrumentPanelVM
|
||||
|
||||
#End Region ' ChangeMaterial
|
||||
|
||||
#Region "Visualization"
|
||||
|
||||
''' <summary>
|
||||
''' Returns a command that do Open.
|
||||
''' </summary>
|
||||
Public ReadOnly Property Visualization_Command As ICommand
|
||||
Get
|
||||
If m_cmdVisualization Is Nothing Then
|
||||
m_cmdVisualization = New Command(AddressOf Visualization)
|
||||
End If
|
||||
Return m_cmdVisualization
|
||||
End Get
|
||||
End Property
|
||||
|
||||
''' <summary>
|
||||
''' Execute the Open. This method is invoked by the OpenCommand.
|
||||
''' </summary>
|
||||
Friend Sub Visualization()
|
||||
m_bVisOtt_Selected = False
|
||||
Dim StatisticsWndV As New StatisticsWndV(Application.Current.MainWindow, New StatisticsVM())
|
||||
StatisticsWndV.ShowDialog()
|
||||
End Sub
|
||||
|
||||
#End Region ' Visualization
|
||||
|
||||
#Region "Ottimization"
|
||||
|
||||
''' <summary>
|
||||
''' Returns a command that do Open.
|
||||
''' </summary>
|
||||
Public ReadOnly Property Optimizer_Command As ICommand
|
||||
Get
|
||||
If m_cmdOptimizer Is Nothing Then
|
||||
m_cmdOptimizer = New Command(AddressOf Optimizer)
|
||||
End If
|
||||
Return m_cmdOptimizer
|
||||
End Get
|
||||
End Property
|
||||
|
||||
''' <summary>
|
||||
''' Execute the Open. This method is invoked by the OpenCommand.
|
||||
''' </summary>
|
||||
Friend Sub Optimizer()
|
||||
m_bVisOtt_Selected = True
|
||||
Dim OptimizerStatisticsWndV As New OptimizerStatisticsWndV(Application.Current.MainWindow, New StatisticsVM())
|
||||
OptimizerStatisticsWndV.ShowDialog()
|
||||
End Sub
|
||||
|
||||
#End Region ' Ottimization
|
||||
|
||||
#End Region ' COMMANDS
|
||||
|
||||
End Class
|
||||
|
||||
@@ -5,146 +5,146 @@
|
||||
xmlns:EgtBEAMWALL="clr-namespace:EgtBEAMWALL.ViewerOptimizer">
|
||||
|
||||
<UniformGrid Margin="5"
|
||||
Columns="6" Rows="7">
|
||||
Columns="6" Rows="7">
|
||||
|
||||
<TextBlock Text="{Binding PROJNUM_MSG}"
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
<EgtWPFLib5:EgtTextBox Text="{Binding Tag.sPROJNUM, UpdateSourceTrigger=Explicit,
|
||||
RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:BTLDataV}}}"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource PartParam_TextBox}"/>
|
||||
RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:BTLDataV}}}"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource PartParam_TextBox}"/>
|
||||
<TextBlock Text="{Binding PROJNAME_MSG}"
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
<EgtWPFLib5:EgtTextBox Text="{Binding Tag.sPROJNAME, UpdateSourceTrigger=Explicit,
|
||||
RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:BTLDataV}}}"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource PartParam_TextBox}"/>
|
||||
RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:BTLDataV}}}"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource PartParam_TextBox}"/>
|
||||
<TextBlock Text="{Binding PROJPART_MSG}"
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
<EgtWPFLib5:EgtTextBox Text="{Binding Tag.sPROJPART, UpdateSourceTrigger=Explicit,
|
||||
RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:BTLDataV}}}"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource PartParam_TextBox}"/>
|
||||
RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:BTLDataV}}}"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource PartParam_TextBox}"/>
|
||||
<TextBlock Text="{Binding PROJGUID_MSG}"
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
<EgtWPFLib5:EgtTextBox Text="{Binding Tag.sPROJGUID, UpdateSourceTrigger=Explicit,
|
||||
RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:BTLDataV}}}"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource PartParam_TextBox}"/>
|
||||
RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:BTLDataV}}}"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource PartParam_TextBox}"/>
|
||||
<TextBlock Text="{Binding LISTNAME_MSG}"
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
<EgtWPFLib5:EgtTextBox Text="{Binding Tag.sLISTNAME, UpdateSourceTrigger=Explicit,
|
||||
RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:BTLDataV}}}"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource PartParam_TextBox}"/>
|
||||
RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:BTLDataV}}}"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource PartParam_TextBox}"/>
|
||||
<TextBlock Text="{Binding CUSTOMER_MSG}"
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
<EgtWPFLib5:EgtTextBox Text="{Binding Tag.sCUSTOMER, UpdateSourceTrigger=Explicit,
|
||||
RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:BTLDataV}}}"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource PartParam_TextBox}"/>
|
||||
RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:BTLDataV}}}"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource PartParam_TextBox}"/>
|
||||
<TextBlock Text="{Binding ARCHITECT_MSG}"
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
<EgtWPFLib5:EgtTextBox Text="{Binding Tag.sARCHITECT, UpdateSourceTrigger=Explicit,
|
||||
RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:BTLDataV}}}"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource PartParam_TextBox}"/>
|
||||
RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:BTLDataV}}}"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource PartParam_TextBox}"/>
|
||||
<TextBlock Text="{Binding EDITOR_MSG}"
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
<EgtWPFLib5:EgtTextBox Text="{Binding Tag.sEDITOR, UpdateSourceTrigger=Explicit,
|
||||
RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:BTLDataV}}}"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource PartParam_TextBox}"/>
|
||||
RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:BTLDataV}}}"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource PartParam_TextBox}"/>
|
||||
<TextBlock Text="{Binding DELIVDATE_MSG}"
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
<EgtWPFLib5:EgtTextBox Text="{Binding Tag.sDELIVDATE, UpdateSourceTrigger=Explicit,
|
||||
RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:BTLDataV}}}"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource PartParam_TextBox}"/>
|
||||
RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:BTLDataV}}}"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource PartParam_TextBox}"/>
|
||||
<TextBlock Text="{Binding EXPDATE_MSG}"
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
<EgtWPFLib5:EgtTextBox Text="{Binding Tag.sEXPDATE, UpdateSourceTrigger=Explicit,
|
||||
RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:BTLDataV}}}"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource PartParam_TextBox}"/>
|
||||
RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:BTLDataV}}}"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource PartParam_TextBox}"/>
|
||||
<TextBlock Text="{Binding EXPTIME_MSG}"
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
<EgtWPFLib5:EgtTextBox Text="{Binding Tag.sEXPTIME, UpdateSourceTrigger=Explicit,
|
||||
RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:BTLDataV}}}"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource PartParam_TextBox}"/>
|
||||
RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:BTLDataV}}}"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource PartParam_TextBox}"/>
|
||||
<TextBlock Text="{Binding EXPRELEASE_MSG}"
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
<EgtWPFLib5:EgtTextBox Text="{Binding Tag.sEXPRELEASE, UpdateSourceTrigger=Explicit,
|
||||
RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:BTLDataV}}}"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource PartParam_TextBox}"/>
|
||||
RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:BTLDataV}}}"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource PartParam_TextBox}"/>
|
||||
<TextBlock Text="{Binding LANGUAGE_MSG}"
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
<EgtWPFLib5:EgtTextBox Text="{Binding Tag.sLANGUAGE, UpdateSourceTrigger=Explicit,
|
||||
RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:BTLDataV}}}"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource PartParam_TextBox}"/>
|
||||
RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:BTLDataV}}}"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource PartParam_TextBox}"/>
|
||||
<TextBlock Text="{Binding RANGE_MSG}"
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
<ComboBox ItemsSource="{Binding RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:BTLDataV}},
|
||||
Path=Tag.ocRANGE,
|
||||
Mode=OneWay}"
|
||||
SelectedIndex="{Binding RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:BTLDataV}},
|
||||
Path=Tag.SelRANGE,
|
||||
Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource BtlData_ComboBox}"/>
|
||||
Path=Tag.ocRANGE,
|
||||
Mode=OneWay}"
|
||||
SelectedIndex="{Binding RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:BTLDataV}},
|
||||
Path=Tag.SelRANGE,
|
||||
Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource BtlData_ComboBox}"/>
|
||||
<TextBlock Text="{Binding PROCESSINGQUALITY_MSG}"
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
<ComboBox ItemsSource="{Binding RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:BTLDataV}},
|
||||
Path=Tag.ocPROCESSINGQUALITY,
|
||||
Mode=OneWay}"
|
||||
SelectedIndex="{Binding RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:BTLDataV}},
|
||||
Path=Tag.SelPROCESSINGQUALITY,
|
||||
Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource BtlData_ComboBox}"/>
|
||||
Path=Tag.ocPROCESSINGQUALITY,
|
||||
Mode=OneWay}"
|
||||
SelectedIndex="{Binding RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:BTLDataV}},
|
||||
Path=Tag.SelPROCESSINGQUALITY,
|
||||
Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource BtlData_ComboBox}"/>
|
||||
<TextBlock Text="{Binding COMPUTERNAME_MSG}"
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
<EgtWPFLib5:EgtTextBox Text="{Binding Tag.sCOMPUTERNAME, UpdateSourceTrigger=Explicit,
|
||||
RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:BTLDataV}}}"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource PartParam_TextBox}"/>
|
||||
RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:BTLDataV}}}"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource PartParam_TextBox}"/>
|
||||
<TextBlock Text="{Binding USER_MSG}"
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
<EgtWPFLib5:EgtTextBox Text="{Binding Tag.sUSER, UpdateSourceTrigger=Explicit,
|
||||
RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:BTLDataV}}}"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource PartParam_TextBox}"/>
|
||||
RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:BTLDataV}}}"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource PartParam_TextBox}"/>
|
||||
<TextBlock Text="{Binding SRCFILE_MSG}"
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
<EgtWPFLib5:EgtTextBox Text="{Binding Tag.sSRCFILE, UpdateSourceTrigger=Explicit,
|
||||
RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:BTLDataV}}}"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource PartParam_TextBox}"/>
|
||||
RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:BTLDataV}}}"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource PartParam_TextBox}"/>
|
||||
<TextBlock Text="{Binding EXPFILE_MSG}"
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
<EgtWPFLib5:EgtTextBox Text="{Binding Tag.sEXPFILE, UpdateSourceTrigger=Explicit,
|
||||
RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:BTLDataV}}}"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource PartParam_TextBox}"/>
|
||||
RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:BTLDataV}}}"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource PartParam_TextBox}"/>
|
||||
<TextBlock Text="{Binding RECESS_MSG}"
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
<ComboBox ItemsSource="{Binding RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:BTLDataV}},
|
||||
Path=Tag.ocRECESS,
|
||||
Mode=OneWay}"
|
||||
SelectedIndex="{Binding RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:BTLDataV}},
|
||||
Path=Tag.SelRECESS,
|
||||
Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource BtlData_ComboBox}"/>
|
||||
Path=Tag.ocRECESS,
|
||||
Mode=OneWay}"
|
||||
SelectedIndex="{Binding RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:BTLDataV}},
|
||||
Path=Tag.SelRECESS,
|
||||
Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource BtlData_ComboBox}"/>
|
||||
<TextBlock Text="{Binding USERATTRIBUTE_MSG}"
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
<EgtWPFLib5:EgtTextBox Text="{Binding Tag.sUSERATTRIBUTE, UpdateSourceTrigger=Explicit,
|
||||
RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:BTLDataV}}}"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource PartParam_TextBox}"/>
|
||||
RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:BTLDataV}}}"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource PartParam_TextBox}"/>
|
||||
|
||||
</UniformGrid>
|
||||
|
||||
|
||||
@@ -3,6 +3,9 @@
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||
xmlns:EgtBEAMWALL="clr-namespace:EgtBEAMWALL.ViewerOptimizer"
|
||||
xmlns:EgtBEAMWALLCORE="clr-namespace:EgtBEAMWALL.Core;assembly=EgtBEAMWALL.Core">
|
||||
<UserControl.Resources>
|
||||
<EgtBEAMWALL:DataGridCellBorderThicknessConverter x:Key="DataGridCellBorderThicknessConverter"/>
|
||||
</UserControl.Resources>
|
||||
<EgtBEAMWALLCORE:EgtDataGrid x:Name="BTLPart_DataGrid"
|
||||
ItemsSource="{Binding Tag.BTLPartVMList,
|
||||
RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:BTLPartListV}}}"
|
||||
@@ -27,6 +30,32 @@
|
||||
<KeyBinding Key="Delete" Command="{Binding Tag.DeletePart_Command,
|
||||
RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:BTLPartListV}}}" />
|
||||
</DataGrid.InputBindings>
|
||||
<DataGrid.CellStyle>
|
||||
<Style TargetType="{x:Type DataGridCell}">
|
||||
<Style.Resources>
|
||||
<SolidColorBrush x:Key="{x:Static SystemColors.HighlightBrushKey}" Color="Transparent" />
|
||||
<SolidColorBrush x:Key="{x:Static SystemColors.HighlightTextBrushKey}" Color="Black" />
|
||||
<SolidColorBrush x:Key="{x:Static SystemColors.InactiveSelectionHighlightBrushKey}" Color="Transparent" />
|
||||
<SolidColorBrush x:Key="{x:Static SystemColors.InactiveSelectionHighlightTextBrushKey}" Color="Black" />
|
||||
</Style.Resources>
|
||||
<Setter Property="BorderBrush" Value="{Binding Search_Background}"/>
|
||||
<Setter Property="BorderThickness">
|
||||
<Setter.Value>
|
||||
<MultiBinding Converter="{StaticResource DataGridCellBorderThicknessConverter}"
|
||||
ConverterParameter="3">
|
||||
<Binding Path="Column.DisplayIndex" RelativeSource="{RelativeSource Self}"/>
|
||||
</MultiBinding>
|
||||
</Setter.Value>
|
||||
</Setter>
|
||||
<Style.Triggers>
|
||||
<Trigger Property="IsSelected" Value="True">
|
||||
<Setter Property="BorderBrush" Value="Cyan" />
|
||||
<Setter Property="FontWeight" Value="Bold" />
|
||||
<Setter Property="Foreground" Value="Blue" />
|
||||
</Trigger>
|
||||
</Style.Triggers>
|
||||
</Style>
|
||||
</DataGrid.CellStyle>
|
||||
<DataGrid.Resources>
|
||||
<!--PDN - Nome-->
|
||||
<DataGridTextColumn x:Key="colPDN"
|
||||
@@ -34,13 +63,25 @@
|
||||
<DataGridTextColumn.Header>
|
||||
<TextBlock Text="{Binding Path=DataContext.PDN_Msg,RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:BTLPartListV}}}"/>
|
||||
</DataGridTextColumn.Header>
|
||||
<!--<DataGridTextColumn.CellStyle>
|
||||
<Style TargetType="{x:Type DataGridCell}">
|
||||
<Setter Property="BorderBrush" Value="{Binding Search_Background}"/>
|
||||
<Setter Property="BorderThickness" Value="3,3,0,3"/>
|
||||
<Style.Triggers>
|
||||
<Trigger Property="IsSelected" Value="True">
|
||||
<Setter Property="BorderBrush" Value="Cyan" />
|
||||
<Setter Property="Foreground" Value="Blue" />
|
||||
</Trigger>
|
||||
</Style.Triggers>
|
||||
</Style>
|
||||
</DataGridTextColumn.CellStyle>-->
|
||||
</DataGridTextColumn>
|
||||
<!--Validità pezzo-->
|
||||
<DataGridTemplateColumn x:Key="colCALC" CanUserResize="False"
|
||||
SortMemberPath="nGlobalState">
|
||||
<DataGridTemplateColumn.CellTemplate>
|
||||
<DataTemplate>
|
||||
<Grid>
|
||||
<Grid Margin="2,0,0,0">
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="Auto"/>
|
||||
<ColumnDefinition Width="25"/>
|
||||
@@ -214,7 +255,7 @@
|
||||
</DataGridTextColumn>-->
|
||||
</DataGrid.Resources>
|
||||
<DataGrid.RowStyle>
|
||||
<Style TargetType="DataGridRow" BasedOn="{StaticResource RowDataGrid_CustomHighLight}">
|
||||
<Style TargetType="DataGridRow">
|
||||
<Setter Property="Background" Value="{Binding Background}"/>
|
||||
<Setter Property="Foreground" Value="{Binding Foreground}"/>
|
||||
<Setter Property="FontWeight" Value="{Binding FontWeight}"/>
|
||||
|
||||
@@ -1,4 +1,5 @@
|
||||
Imports System.Reflection
|
||||
Imports EgtBEAMWALL.Core.ConstGen
|
||||
|
||||
Public Class BTLPartListV
|
||||
|
||||
@@ -46,7 +47,11 @@ Public Class BTLPartListV
|
||||
e.Handled = True
|
||||
ElseIf e.ChangedButton = m_HighlightBtn Then
|
||||
Map.refProjectVM.BTLStructureVM.SetSelectionType(BTLStructureVM.SelectionTypes.HIGHLIGHT)
|
||||
'Map.refProjectVM.SelProdProj = ProdProj.NULL
|
||||
'If Map.refMainMenuVM.SelPage = Pages.ONLYPRODPAGE Then Map.refProdProjManagerVM.SelProdProj = ProdProj.NULL
|
||||
End If
|
||||
' imposto tipo di grid selezionata
|
||||
If Map.refMainMenuVM.SelPage = Pages.ONLYPRODPAGE Then Map.refProjectVM.SetLastSelGridType(ProjectVM.GridSelTypes.PARTLIST)
|
||||
End If
|
||||
'If e.ChangedButton = Input.MouseButton.Left Then
|
||||
' If (Keyboard.Modifiers And ModifierKeys.Shift) = ModifierKeys.Shift OrElse (Keyboard.Modifiers And ModifierKeys.Control) = ModifierKeys.Control Then
|
||||
@@ -82,6 +87,8 @@ Public Class BTLPartListV
|
||||
' End If
|
||||
' m_MainWindowVM.SetMouseButton("Highlight")
|
||||
'End If
|
||||
' imposto tipo di grid selezionata
|
||||
If Map.refMainMenuVM.SelPage = Pages.ONLYPRODPAGE Then Map.refProjectVM.SetLastSelGridType(ProjectVM.GridSelTypes.PART)
|
||||
End If
|
||||
End Sub
|
||||
|
||||
|
||||
@@ -1,10 +1,11 @@
|
||||
Imports System.Collections.ObjectModel
|
||||
Imports System.Globalization
|
||||
Imports EgtBEAMWALL.Core
|
||||
Imports EgtUILib
|
||||
Imports EgtWPFLib5
|
||||
|
||||
Public Class BTLPartListVM
|
||||
Inherits vmbase
|
||||
Inherits VMBase
|
||||
|
||||
Private m_colPart_Do As EgtDataGridColumn
|
||||
Public ReadOnly Property colPart_Do As EgtDataGridColumn
|
||||
@@ -148,3 +149,30 @@ Public Class BTLPartListVM
|
||||
End Sub
|
||||
|
||||
End Class
|
||||
|
||||
Class DataGridCellBorderThicknessConverter
|
||||
Implements IMultiValueConverter
|
||||
|
||||
Public Function Convert(values() As Object, targetType As Type, parameter As Object, culture As CultureInfo) As Object Implements IMultiValueConverter.Convert
|
||||
Dim ColumnList As ObservableCollection(Of EgtDataGridColumn) = Map.refPartListVM.PartColumns
|
||||
Dim ColumnIndex As Integer = CInt(values(0))
|
||||
Dim bLeft As Boolean = False
|
||||
Dim bRight As Boolean = False
|
||||
Dim dThickness As Double = CDbl(parameter)
|
||||
If Not IsNothing(ColumnList) AndAlso Not IsNothing(ColumnIndex) Then
|
||||
If ColumnIndex = 0 Then
|
||||
bLeft = True
|
||||
ElseIf ColumnIndex = ColumnList.Count - 1 Then
|
||||
bRight = True
|
||||
End If
|
||||
Else
|
||||
Return New Thickness(0, dThickness, 0, dThickness)
|
||||
End If
|
||||
Return New Thickness(If(bLeft, dThickness, 0), dThickness, If(bRight, dThickness, 0), dThickness)
|
||||
End Function
|
||||
|
||||
Public Function ConvertBack(value As Object, targetTypes() As Type, parameter As Object, culture As CultureInfo) As Object() Implements IMultiValueConverter.ConvertBack
|
||||
Throw New NotImplementedException()
|
||||
End Function
|
||||
|
||||
End Class
|
||||
@@ -25,18 +25,23 @@
|
||||
BeginningEdit="FeatureInPartInRawPartList_BeginningEdit"
|
||||
Style="{StaticResource DataGrid_CustomHighLight}">
|
||||
<DataGrid.InputBindings>
|
||||
<KeyBinding Key="Delete" Command="{Binding Tag.SelFeatureVM.DeleteFeature_Command,
|
||||
RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:FeatureInPartInRawPartListV}}}"/>
|
||||
</DataGrid.InputBindings>
|
||||
<DataGrid.Resources>
|
||||
<!--DO - Abilitazione-->
|
||||
<DataGridCheckBoxColumn x:Key="colDO" Binding="{Binding bDO,UpdateSourceTrigger=PropertyChanged}">
|
||||
<DataGridCheckBoxColumn.Header>
|
||||
<KeyBinding Key="Delete" Command="{Binding Tag.SelFeatureVM.DeleteFeature_Command,
|
||||
RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:FeatureInPartInRawPartListV}}}"/>
|
||||
</DataGrid.InputBindings>
|
||||
<DataGrid.Resources>
|
||||
<!--DO - Abilitazione-->
|
||||
<DataGridCheckBoxColumn x:Key="colDO" Binding="{Binding bDO,UpdateSourceTrigger=PropertyChanged}">
|
||||
<!--<DataGridCheckBoxColumn.Header>
|
||||
<TextBlock Text="{Binding Path=DataContext.DO_Msg,RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:FeatureInPartInRawPartListV}}}"/>
|
||||
</DataGridCheckBoxColumn.Header>
|
||||
</DataGridCheckBoxColumn>
|
||||
<!--Validità feature-->
|
||||
<DataGridTemplateColumn x:Key="colCALC">
|
||||
</DataGridCheckBoxColumn.Header>-->
|
||||
<DataGridCheckBoxColumn.HeaderTemplate>
|
||||
<DataTemplate>
|
||||
<TextBlock Text="{Binding DataContext.DO_Msg,RelativeSource={RelativeSource AncestorType={x:Type DataGrid}}}"/>
|
||||
</DataTemplate>
|
||||
</DataGridCheckBoxColumn.HeaderTemplate>
|
||||
</DataGridCheckBoxColumn>
|
||||
<!--Validità feature-->
|
||||
<DataGridTemplateColumn x:Key="colCALC">
|
||||
<DataGridTemplateColumn.CellTemplate>
|
||||
<DataTemplate>
|
||||
<Grid>
|
||||
@@ -80,22 +85,32 @@
|
||||
</DataTemplate>
|
||||
</DataGridTemplateColumn.CellTemplate>
|
||||
</DataGridTemplateColumn>
|
||||
<!--Descrizione-->
|
||||
<DataGridTextColumn x:Key="colDESC" Binding="{Binding sDesc}">
|
||||
<DataGridTextColumn.Header>
|
||||
<!--Descrizione-->
|
||||
<DataGridTextColumn x:Key="colDESC" Binding="{Binding sDesc}">
|
||||
<!--<DataGridTextColumn.Header>
|
||||
<TextBlock Text="{Binding Path=DataContext.Description_Msg, RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:FeatureInPartInRawPartListV}}}"/>
|
||||
</DataGridTextColumn.Header>
|
||||
</DataGridTextColumn>
|
||||
</DataGridTextColumn.Header>-->
|
||||
<DataGridTextColumn.HeaderTemplate>
|
||||
<DataTemplate>
|
||||
<TextBlock Text="{Binding DataContext.Description_Msg,RelativeSource={RelativeSource AncestorType={x:Type DataGrid}}}"/>
|
||||
</DataTemplate>
|
||||
</DataGridTextColumn.HeaderTemplate>
|
||||
</DataGridTextColumn>
|
||||
<!--Descrizione-->
|
||||
<DataGridTextColumn x:Key="colPRIORITY" Binding="{Binding sPriority}">
|
||||
<DataGridTextColumn.Header>
|
||||
<!--<DataGridTextColumn.Header>
|
||||
<TextBlock Text="{Binding Path=DataContext.Priority_Msg, RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:FeatureInPartInRawPartListV}}}"/>
|
||||
</DataGridTextColumn.Header>
|
||||
</DataGridTextColumn.Header>-->
|
||||
<DataGridTextColumn.HeaderTemplate>
|
||||
<DataTemplate>
|
||||
<TextBlock Text="{Binding DataContext.Priority_Msg,RelativeSource={RelativeSource AncestorType={x:Type DataGrid}}}"/>
|
||||
</DataTemplate>
|
||||
</DataGridTextColumn.HeaderTemplate>
|
||||
</DataGridTextColumn>
|
||||
</DataGrid.Resources>
|
||||
|
||||
</EgtBEAMWALLCORE:EgtDataGrid>
|
||||
<!--<TextBlock Grid.Row="1"
|
||||
</EgtBEAMWALLCORE:EgtDataGrid>
|
||||
<!--<TextBlock Grid.Row="1"
|
||||
Text="{Binding Tag.sCALC_MSG,
|
||||
RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:FeatureInPartInRawPartListV}}}"/>
|
||||
<TextBlock Grid.Row="2"
|
||||
|
||||
@@ -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-->
|
||||
|
||||
@@ -41,6 +41,12 @@ Public Class FeatureListVM
|
||||
End Get
|
||||
End Property
|
||||
|
||||
Public ReadOnly Property DO_Msg As String
|
||||
Get
|
||||
Return EgtMsg(61610)
|
||||
End Get
|
||||
End Property
|
||||
|
||||
#End Region ' Messages
|
||||
|
||||
Sub New()
|
||||
|
||||
@@ -0,0 +1,136 @@
|
||||
<UserControl x:Class="OnlyProdFeatureListV"
|
||||
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||
xmlns:EgtBEAMWALL="clr-namespace:EgtBEAMWALL.ViewerOptimizer"
|
||||
xmlns:EgtBEAMWALLCORE="clr-namespace:EgtBEAMWALL.Core;assembly=EgtBEAMWALL.Core">
|
||||
|
||||
<EgtBEAMWALLCORE:EgtDataGrid ItemsSource="{Binding Tag.BTLFeatureVMList, RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:OnlyProdFeatureListV}}}"
|
||||
SelectedItem="{Binding Tag.SelBTLFeatureVM, RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:OnlyProdFeatureListV}}}"
|
||||
CanUserAddRows="False"
|
||||
AutoGenerateColumns="False"
|
||||
CanUserResizeRows="False"
|
||||
SelectionMode="Single"
|
||||
ScrollViewer.CanContentScroll="True"
|
||||
ScrollViewer.VerticalScrollBarVisibility="Auto"
|
||||
ScrollViewer.HorizontalScrollBarVisibility="Auto"
|
||||
Margin="0,0,0,5"
|
||||
IsEnabled="{Binding FeatureList_IsEnabled}"
|
||||
BindingColumns="{Binding FeatureColumns}"
|
||||
Style="{StaticResource DataGrid_CustomHighLight}">
|
||||
<DataGrid.Resources>
|
||||
<!--DO - Abilitazione-->
|
||||
<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}}}"/>-->
|
||||
<CheckBox IsChecked="{Binding Path=Tag.bDOALL, RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:OnlyProdFeatureListV}}}"
|
||||
HorizontalAlignment="Center"/>
|
||||
</DataTemplate>
|
||||
</DataGridCheckBoxColumn.HeaderTemplate>
|
||||
</DataGridCheckBoxColumn>
|
||||
<!--Validità feature-->
|
||||
<DataGridTemplateColumn x:Key="colCALC">
|
||||
<DataGridTemplateColumn.CellTemplate>
|
||||
<DataTemplate>
|
||||
<Grid>
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="1*"/>
|
||||
<ColumnDefinition Width="10"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
<Border Width="{Binding ActualHeight, RelativeSource={RelativeSource self}}"
|
||||
Background="{Binding Calc_Background}"/>
|
||||
<!--Width="{Binding ActualHeigth, Source=Self}"/>-->
|
||||
<Grid Grid.Column="1"
|
||||
HorizontalAlignment="Center">
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="1*"/>
|
||||
<RowDefinition Height="Auto"/>
|
||||
</Grid.RowDefinitions>
|
||||
<Ellipse Width="5"
|
||||
Height="5"
|
||||
Fill="Red"
|
||||
Visibility="{Binding CALC_ROT_Visibility}"
|
||||
HorizontalAlignment="Center"/>
|
||||
<TextBlock Grid.Row="1"
|
||||
Text="{Binding CALC_ERR_Letter}"
|
||||
Foreground="{Binding CALC_ERR_Foreground}"
|
||||
TextAlignment="Center"
|
||||
FontWeight="Bold"
|
||||
FontSize="12"
|
||||
Margin="0,-6,0,-2"/>
|
||||
</Grid>
|
||||
</Grid>
|
||||
</DataTemplate>
|
||||
</DataGridTemplateColumn.CellTemplate>
|
||||
</DataGridTemplateColumn>
|
||||
<!--Descrizione-->
|
||||
<DataGridTextColumn x:Key="colDESC" Binding="{Binding sDesc}">
|
||||
<!--<DataGridTextColumn.Header>
|
||||
<TextBlock Text="{Binding Path=DataContext.Description_Msg, RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:OnlyProdFeatureListV}}}"/>
|
||||
</DataGridTextColumn.Header>-->
|
||||
<DataGridTextColumn.HeaderTemplate>
|
||||
<DataTemplate>
|
||||
<TextBlock Text="{Binding DataContext.Description_Msg,RelativeSource={RelativeSource AncestorType={x:Type DataGrid}}}"/>
|
||||
</DataTemplate>
|
||||
</DataGridTextColumn.HeaderTemplate>
|
||||
<DataGridTextColumn.CellStyle>
|
||||
<Style TargetType="{x:Type DataGridCell}">
|
||||
<Setter Property="Template">
|
||||
<Setter.Value>
|
||||
<ControlTemplate TargetType="{x:Type DataGridCell}">
|
||||
<TextBlock Text="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=Content.Text}"
|
||||
TextTrimming="CharacterEllipsis"
|
||||
Margin="4,0,0,0">
|
||||
<TextBlock.ToolTip>
|
||||
<!--<ToolTip Visibility="{Binding RelativeSource={RelativeSource Self}, Path=PlacementTarget, Converter={StaticResource TrimToVisConverter}}">-->
|
||||
<ToolTip>
|
||||
<ToolTip.Content>
|
||||
<StackPanel Orientation="Vertical">
|
||||
<TextBlock Text="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=Content.Text}"/>
|
||||
<Image Source="{Binding sDrawPath}"
|
||||
Stretch="Uniform"
|
||||
Margin="2.5"/>
|
||||
</StackPanel>
|
||||
</ToolTip.Content>
|
||||
</ToolTip>
|
||||
</TextBlock.ToolTip>
|
||||
</TextBlock>
|
||||
</ControlTemplate>
|
||||
</Setter.Value>
|
||||
</Setter>
|
||||
<Style.Triggers>
|
||||
<Trigger Property="IsSelected" Value="True">
|
||||
<Setter Property="Foreground" Value="Blue"/>
|
||||
</Trigger>
|
||||
</Style.Triggers>
|
||||
</Style>
|
||||
</DataGridTextColumn.CellStyle>
|
||||
</DataGridTextColumn>
|
||||
<!-- Menu' tasto destro -->
|
||||
<ContextMenu x:Key="RowMenu" ItemsSource="{Binding MenuList}" >
|
||||
<ContextMenu.ItemContainerStyle>
|
||||
<Style TargetType="MenuItem">
|
||||
<Setter Property="Command" Value="{Binding MenuItem_Command}"/>
|
||||
<Setter Property="Header" Value="{Binding sMsg}"/>
|
||||
</Style>
|
||||
</ContextMenu.ItemContainerStyle>
|
||||
</ContextMenu>
|
||||
</DataGrid.Resources>
|
||||
<DataGrid.InputBindings>
|
||||
<KeyBinding Key="Delete" Command="{Binding Tag.SelBTLFeatureVM.DeleteFeature_Command,
|
||||
RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:OnlyProdFeatureListV}}}" />
|
||||
</DataGrid.InputBindings>
|
||||
<DataGrid.RowStyle>
|
||||
<Style TargetType="DataGridRow" BasedOn="{StaticResource RowDataGrid_CustomHighLight}">
|
||||
<Setter Property="ContextMenu" Value="{StaticResource RowMenu}" />
|
||||
<EventSetter Event="PreviewMouseDown" Handler="FeatureList_PreviewMouseDown"/>
|
||||
</Style>
|
||||
</DataGrid.RowStyle>
|
||||
|
||||
</EgtBEAMWALLCORE:EgtDataGrid>
|
||||
|
||||
</UserControl>
|
||||
@@ -0,0 +1,12 @@
|
||||
Public Class OnlyProdFeatureListV
|
||||
|
||||
Private Sub FeatureList_PreviewMouseDown(sender As Object, e As MouseButtonEventArgs)
|
||||
If TypeOf sender Is DataGridRow Then
|
||||
Dim Row As DataGridRow = DirectCast(sender, DataGridRow)
|
||||
If Not IsNothing(Row) AndAlso Row.IsSelected AndAlso Not IsNothing(Map.refProjectVM.BTLStructureVM.SelBTLPart) Then
|
||||
Map.refProjectVM.BTLStructureVM.SelBTLPart.SelBTLFeatureVM = Map.refProjectVM.BTLStructureVM.SelBTLPart.SelBTLFeatureVM
|
||||
End If
|
||||
End If
|
||||
End Sub
|
||||
|
||||
End Class
|
||||
@@ -0,0 +1,138 @@
|
||||
<UserControl x:Class="OnlyProdPParameterListV"
|
||||
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||
xmlns:EgtBEAMWALL="clr-namespace:EgtBEAMWALL.ViewerOptimizer"
|
||||
xmlns:EgtBEAMWALLCORE="clr-namespace:EgtBEAMWALL.Core;assembly=EgtBEAMWALL.Core">
|
||||
|
||||
<EgtBEAMWALLCORE:EgtDataGrid AutoGenerateColumns="False"
|
||||
CanUserDeleteRows="False"
|
||||
CanUserResizeRows="False"
|
||||
SelectionMode="Single"
|
||||
ScrollViewer.CanContentScroll="True"
|
||||
ScrollViewer.VerticalScrollBarVisibility="Auto"
|
||||
ScrollViewer.HorizontalScrollBarVisibility="Auto"
|
||||
Margin="0,0,0,5"
|
||||
ItemsSource="{Binding Tag.PBTLParamVMList, RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:OnlyProdPParameterListV}}}"
|
||||
SelectedItem="{Binding Tag.SelPBTLParam, RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:OnlyProdPParameterListV}}}"
|
||||
IsEnabled="{Binding PParameterList_IsEnabled}"
|
||||
BindingColumns="{Binding PParameterListColumns}"
|
||||
Style="{StaticResource DataGrid_CustomHighLight}">
|
||||
<DataGrid.RowStyle>
|
||||
<Style TargetType="DataGridRow" BasedOn="{StaticResource RowDataGrid_CustomHighLight}">
|
||||
<EventSetter Event="PreviewMouseDown" Handler="PParameterList_PreviewMouseDown"/>
|
||||
</Style>
|
||||
</DataGrid.RowStyle>
|
||||
<DataGrid.Resources>
|
||||
<EgtBEAMWALL:TrimmedTextBlockVisibilityConverter x:Key="TrimToVisConverter" />
|
||||
<!--Custom-->
|
||||
<DataGridTemplateColumn x:Key="colCUSTOM">
|
||||
<DataGridTemplateColumn.HeaderTemplate>
|
||||
<DataTemplate>
|
||||
<TextBlock Text="{Binding DataContext.Custom_Msg, RelativeSource={RelativeSource AncestorType={x:Type DataGrid}}}"/>
|
||||
</DataTemplate>
|
||||
</DataGridTemplateColumn.HeaderTemplate>
|
||||
<DataGridTemplateColumn.CellTemplate>
|
||||
<DataTemplate>
|
||||
<CheckBox IsChecked="{Binding bCustom, UpdateSourceTrigger=PropertyChanged}"
|
||||
Visibility="{Binding Tag, RelativeSource={RelativeSource AncestorType={x:Type DataGrid}}}"
|
||||
HorizontalAlignment="Center"/>
|
||||
</DataTemplate>
|
||||
</DataGridTemplateColumn.CellTemplate>
|
||||
</DataGridTemplateColumn>
|
||||
<!--Nome-->
|
||||
<DataGridTextColumn x:Key="colNAME" Binding="{Binding sName}">
|
||||
<DataGridTextColumn.HeaderTemplate>
|
||||
<DataTemplate>
|
||||
<TextBlock Text="{Binding Path=DataContext.NAM_Msg,RelativeSource={RelativeSource AncestorType={x:Type DataGrid}}}"/>
|
||||
</DataTemplate>
|
||||
</DataGridTextColumn.HeaderTemplate>
|
||||
</DataGridTextColumn>
|
||||
<!--Descrizione-->
|
||||
<DataGridTextColumn x:Key="colDESC" Binding="{Binding sDescription}">
|
||||
<DataGridTextColumn.HeaderTemplate>
|
||||
<DataTemplate>
|
||||
<TextBlock Text="{Binding Path=DataContext.Description_Msg,RelativeSource={RelativeSource AncestorType={x:Type DataGrid}}}"/>
|
||||
</DataTemplate>
|
||||
</DataGridTextColumn.HeaderTemplate>
|
||||
<DataGridTextColumn.CellStyle>
|
||||
<Style TargetType="{x:Type DataGridCell}">
|
||||
<Setter Property="Template">
|
||||
<Setter.Value>
|
||||
<ControlTemplate TargetType="{x:Type DataGridCell}">
|
||||
<TextBlock Text="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=Content.Text}"
|
||||
TextTrimming="CharacterEllipsis"
|
||||
Margin="4,0,0,0">
|
||||
<TextBlock.ToolTip>
|
||||
<!--<ToolTip Visibility="{Binding RelativeSource={RelativeSource Self}, Path=PlacementTarget, Converter={StaticResource TrimToVisConverter}}">-->
|
||||
<ToolTip>
|
||||
<ToolTip.Content>
|
||||
<StackPanel Orientation="Vertical">
|
||||
<TextBlock Text="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=Content.Text}"/>
|
||||
<Image Source="{Binding sDrawPath}"
|
||||
Stretch="Uniform"
|
||||
Margin="2.5"/>
|
||||
</StackPanel>
|
||||
</ToolTip.Content>
|
||||
</ToolTip>
|
||||
</TextBlock.ToolTip>
|
||||
</TextBlock>
|
||||
</ControlTemplate>
|
||||
</Setter.Value>
|
||||
</Setter>
|
||||
<Style.Triggers>
|
||||
<Trigger Property="IsSelected" Value="True">
|
||||
<Setter Property="Foreground" Value="Blue"/>
|
||||
</Trigger>
|
||||
</Style.Triggers>
|
||||
</Style>
|
||||
</DataGridTextColumn.CellStyle>
|
||||
<DataGridTextColumn.EditingElementStyle>
|
||||
<Style TargetType="{x:Type TextBox}">
|
||||
<Setter Property="Foreground" Value="Blue" />
|
||||
</Style>
|
||||
</DataGridTextColumn.EditingElementStyle>
|
||||
</DataGridTextColumn>
|
||||
<!--Valore-->
|
||||
<DataGridTextColumn x:Key="colVALUE" Binding="{Binding sValue}" SortMemberPath="dValue">
|
||||
<DataGridTextColumn.HeaderTemplate>
|
||||
<DataTemplate>
|
||||
<TextBlock Text="{Binding Path=DataContext.Value_Msg,RelativeSource={RelativeSource AncestorType={x:Type DataGrid}}}"/>
|
||||
</DataTemplate>
|
||||
</DataGridTextColumn.HeaderTemplate>
|
||||
<DataGridTextColumn.EditingElementStyle>
|
||||
<Style TargetType="{x:Type TextBox}">
|
||||
<Setter Property="Foreground" Value="Blue" />
|
||||
</Style>
|
||||
</DataGridTextColumn.EditingElementStyle>
|
||||
</DataGridTextColumn>
|
||||
<!--Minimo-->
|
||||
<DataGridTextColumn x:Key="colMIN" Binding="{Binding sMin}" SortMemberPath="dMin">
|
||||
<DataGridTextColumn.HeaderTemplate>
|
||||
<DataTemplate>
|
||||
<TextBlock Text="{Binding Path=DataContext.Min_Msg,RelativeSource={RelativeSource AncestorType={x:Type DataGrid}}}"/>
|
||||
</DataTemplate>
|
||||
</DataGridTextColumn.HeaderTemplate>
|
||||
</DataGridTextColumn>
|
||||
<!--Massimo-->
|
||||
<DataGridTextColumn x:Key="colMAX" Binding="{Binding sMax}" SortMemberPath="dMax">
|
||||
<DataGridTextColumn.HeaderTemplate>
|
||||
<DataTemplate>
|
||||
<TextBlock Text="{Binding Path=DataContext.Max_Msg,RelativeSource={RelativeSource AncestorType={x:Type DataGrid}}}"/>
|
||||
</DataTemplate>
|
||||
</DataGridTextColumn.HeaderTemplate>
|
||||
</DataGridTextColumn>
|
||||
<!--Default-->
|
||||
<!--
|
||||
<DataGridTextColumn Binding="{Binding dDefault}"
|
||||
IsReadOnly="True">
|
||||
<DataGridTextColumn.Header>
|
||||
<TextBlock Text="Name"/>
|
||||
</DataGridTextColumn.Header>
|
||||
</DataGridTextColumn>-->
|
||||
</DataGrid.Resources>
|
||||
|
||||
<!--</DataGrid>-->
|
||||
|
||||
</EgtBEAMWALLCORE:EgtDataGrid>
|
||||
|
||||
</UserControl>
|
||||
@@ -0,0 +1,12 @@
|
||||
Public Class OnlyProdPParameterListV
|
||||
|
||||
Private Sub PParameterList_PreviewMouseDown(sender As Object, e As MouseButtonEventArgs)
|
||||
If TypeOf sender Is DataGridRow Then
|
||||
Dim Row As DataGridRow = DirectCast(sender, DataGridRow)
|
||||
If Not IsNothing(Row) AndAlso Row.IsSelected AndAlso Not IsNothing(Map.refProjectVM.BTLStructureVM.SelBTLPart) AndAlso Not IsNothing(Map.refProjectVM.BTLStructureVM.SelBTLPart.SelBTLFeatureVM) Then
|
||||
Map.refProjectVM.BTLStructureVM.SelBTLPart.SelBTLFeatureVM.SelPBTLParam = Map.refProjectVM.BTLStructureVM.SelBTLPart.SelBTLFeatureVM.SelPBTLParam
|
||||
End If
|
||||
End If
|
||||
End Sub
|
||||
|
||||
End Class
|
||||
@@ -0,0 +1,134 @@
|
||||
<UserControl x:Class="OnlyProdQParameterListV"
|
||||
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
|
||||
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
|
||||
xmlns:EgtBEAMWALL="clr-namespace:EgtBEAMWALL.ViewerOptimizer"
|
||||
xmlns:EgtBEAMWALLCORE="clr-namespace:EgtBEAMWALL.Core;assembly=EgtBEAMWALL.Core">
|
||||
|
||||
<EgtBEAMWALLCORE:EgtDataGrid AutoGenerateColumns="False"
|
||||
CanUserDeleteRows="False"
|
||||
CanUserResizeRows="False"
|
||||
SelectionMode="Single"
|
||||
ScrollViewer.CanContentScroll="True"
|
||||
ScrollViewer.VerticalScrollBarVisibility="Auto"
|
||||
ScrollViewer.HorizontalScrollBarVisibility="Auto"
|
||||
Margin="0,0,0,5"
|
||||
ItemsSource="{Binding Tag.QBTLParamVMList, RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:OnlyProdQParameterListV}}}"
|
||||
SelectedItem="{Binding Tag.SelQBTLParam, RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:OnlyProdQParameterListV}}}"
|
||||
BeginningEdit="QParameterList_BeginningEdit"
|
||||
IsEnabled="{Binding QParameterList_IsEnabled}"
|
||||
BindingColumns="{Binding QParameterListColumns}"
|
||||
Style="{StaticResource DataGrid_CustomHighLight}">
|
||||
|
||||
<DataGrid.RowStyle>
|
||||
<Style TargetType="DataGridRow" BasedOn="{StaticResource RowDataGrid_CustomHighLight}">
|
||||
<EventSetter Event="PreviewMouseDown" Handler="QParameterList_PreviewMouseDown"/>
|
||||
</Style>
|
||||
</DataGrid.RowStyle>
|
||||
<DataGrid.Resources>
|
||||
<EgtBEAMWALL:TrimmedTextBlockVisibilityConverter x:Key="TrimToVisConverter" />
|
||||
<!--Custom-->
|
||||
<DataGridTemplateColumn x:Key="colCUSTOM">
|
||||
<DataGridTemplateColumn.HeaderTemplate>
|
||||
<DataTemplate>
|
||||
<TextBlock Text="{Binding DataContext.Custom_Msg,RelativeSource={RelativeSource AncestorType={x:Type DataGrid}}}"/>
|
||||
</DataTemplate>
|
||||
</DataGridTemplateColumn.HeaderTemplate>
|
||||
<DataGridTemplateColumn.CellTemplate>
|
||||
<DataTemplate>
|
||||
<CheckBox IsChecked="{Binding bCustom, UpdateSourceTrigger=PropertyChanged}"
|
||||
Visibility="{Binding Tag, RelativeSource={RelativeSource AncestorType={x:Type DataGrid}}}"
|
||||
HorizontalAlignment="Center"/>
|
||||
</DataTemplate>
|
||||
</DataGridTemplateColumn.CellTemplate>
|
||||
</DataGridTemplateColumn>
|
||||
<!--Nome-->
|
||||
<DataGridTextColumn x:Key="colNAME" Binding="{Binding sName}">
|
||||
<DataGridTextColumn.HeaderTemplate>
|
||||
<DataTemplate>
|
||||
<TextBlock Text="{Binding Path=DataContext.NAM_Msg,RelativeSource={RelativeSource AncestorType={x:Type DataGrid}}}"/>
|
||||
</DataTemplate>
|
||||
</DataGridTextColumn.HeaderTemplate>
|
||||
</DataGridTextColumn>
|
||||
<!--Descrizione-->
|
||||
<DataGridTextColumn x:Key="colDESC" Binding="{Binding sDescription}">
|
||||
<DataGridTextColumn.HeaderTemplate>
|
||||
<DataTemplate>
|
||||
<TextBlock Text="{Binding Path=DataContext.Description_Msg,RelativeSource={RelativeSource AncestorType={x:Type DataGrid}}}"/>
|
||||
</DataTemplate>
|
||||
</DataGridTextColumn.HeaderTemplate>
|
||||
<DataGridTextColumn.CellStyle>
|
||||
<Style TargetType="{x:Type DataGridCell}">
|
||||
<Setter Property="Template">
|
||||
<Setter.Value>
|
||||
<ControlTemplate TargetType="{x:Type DataGridCell}">
|
||||
<TextBlock Text="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=Content.Text}"
|
||||
TextTrimming="CharacterEllipsis"
|
||||
Margin="4,0,0,0">
|
||||
<TextBlock.ToolTip>
|
||||
<!--<ToolTip Visibility="{Binding RelativeSource={RelativeSource Self}, Path=PlacementTarget, Converter={StaticResource TrimToVisConverter}}">-->
|
||||
<ToolTip>
|
||||
<ToolTip.Content>
|
||||
<StackPanel Orientation="Vertical">
|
||||
<TextBlock Text="{Binding RelativeSource={RelativeSource TemplatedParent}, Path=Content.Text}"/>
|
||||
<Image Source="{Binding sDrawPath}"
|
||||
Stretch="Uniform"
|
||||
Margin="2.5"/>
|
||||
</StackPanel>
|
||||
</ToolTip.Content>
|
||||
</ToolTip>
|
||||
</TextBlock.ToolTip>
|
||||
</TextBlock>
|
||||
</ControlTemplate>
|
||||
</Setter.Value>
|
||||
</Setter>
|
||||
<Style.Triggers>
|
||||
<Trigger Property="IsSelected" Value="True">
|
||||
<Setter Property="Foreground" Value="Blue"/>
|
||||
</Trigger>
|
||||
</Style.Triggers>
|
||||
</Style>
|
||||
</DataGridTextColumn.CellStyle>
|
||||
</DataGridTextColumn>
|
||||
<!--Valore-->
|
||||
<DataGridTextColumn x:Key="colVALUE" Binding="{Binding sValue}" SortMemberPath="dValue">
|
||||
<DataGridTextColumn.HeaderTemplate>
|
||||
<DataTemplate>
|
||||
<TextBlock Text="{Binding Path=DataContext.Value_Msg,RelativeSource={RelativeSource AncestorType={x:Type DataGrid}}}"/>
|
||||
</DataTemplate>
|
||||
</DataGridTextColumn.HeaderTemplate>
|
||||
<DataGridTextColumn.EditingElementStyle>
|
||||
<Style TargetType="{x:Type TextBox}">
|
||||
<Setter Property="Foreground" Value="Blue" />
|
||||
</Style>
|
||||
</DataGridTextColumn.EditingElementStyle>
|
||||
</DataGridTextColumn>
|
||||
<!--Minimo-->
|
||||
<DataGridTextColumn x:Key="colMIN" Binding="{Binding sMin}" SortMemberPath="dMin">
|
||||
<DataGridTextColumn.HeaderTemplate>
|
||||
<DataTemplate>
|
||||
<TextBlock Text="{Binding Path=DataContext.Min_Msg,RelativeSource={RelativeSource AncestorType={x:Type DataGrid}}}"/>
|
||||
</DataTemplate>
|
||||
</DataGridTextColumn.HeaderTemplate>
|
||||
</DataGridTextColumn>
|
||||
<!--Massimo-->
|
||||
<DataGridTextColumn x:Key="colMAX" Binding="{Binding sMax}" SortMemberPath="dMax">
|
||||
<DataGridTextColumn.HeaderTemplate>
|
||||
<DataTemplate>
|
||||
<TextBlock Text="{Binding Path=DataContext.Max_Msg,RelativeSource={RelativeSource AncestorType={x:Type DataGrid}}}"/>
|
||||
</DataTemplate>
|
||||
</DataGridTextColumn.HeaderTemplate>
|
||||
</DataGridTextColumn>
|
||||
<!--Default-->
|
||||
<!--
|
||||
<DataGridTextColumn Binding="{Binding dDefault}"
|
||||
IsReadOnly="True">
|
||||
<DataGridTextColumn.Header>
|
||||
<TextBlock Text="Name"/>
|
||||
</DataGridTextColumn.Header>
|
||||
</DataGridTextColumn>-->
|
||||
</DataGrid.Resources>
|
||||
|
||||
<!--</DataGrid>-->
|
||||
|
||||
</EgtBEAMWALLCORE:EgtDataGrid>
|
||||
</UserControl>
|
||||
@@ -0,0 +1,27 @@
|
||||
Imports EgtBEAMWALL.Core
|
||||
Imports EgtBEAMWALL.Core.ConstGen
|
||||
|
||||
Public Class OnlyProdQParameterListV
|
||||
|
||||
Private Sub QParameterList_PreviewMouseDown(sender As Object, e As MouseButtonEventArgs)
|
||||
If TypeOf sender Is DataGridRow Then
|
||||
Dim Row As DataGridRow = DirectCast(sender, DataGridRow)
|
||||
If Not IsNothing(Row) AndAlso Row.IsSelected AndAlso Not IsNothing(Map.refProjectVM.BTLStructureVM.SelBTLPart) AndAlso Not IsNothing(Map.refProjectVM.BTLStructureVM.SelBTLPart.SelBTLFeatureVM) Then
|
||||
Map.refProjectVM.BTLStructureVM.SelBTLPart.SelBTLFeatureVM.SelPBTLParam = Map.refProjectVM.BTLStructureVM.SelBTLPart.SelBTLFeatureVM.SelPBTLParam
|
||||
End If
|
||||
End If
|
||||
End Sub
|
||||
|
||||
' funzione che impedisce di editare le righe che sono gia' in produzione
|
||||
Private Sub QParameterList_BeginningEdit(sender As Object, e As DataGridBeginningEditEventArgs)
|
||||
If IsNothing(e.Row) Then Return
|
||||
If Map.refMainMenuVM.SelPage <> Pages.MACHINING Then Return
|
||||
Dim RowVM As BTLParamVM = DirectCast(e.Row.DataContext, BTLParamVM)
|
||||
' se in produzione impedisco modifica dei parametri
|
||||
If DirectCast(RowVM.BTLParamM.ParentFeature.ParentPart, PartM).nProductionState > ItemState.ND Then
|
||||
'For Each cell In Row.Item
|
||||
e.Cancel = True
|
||||
End If
|
||||
End Sub
|
||||
|
||||
End Class
|
||||
@@ -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
|
||||
|
||||
@@ -18,191 +18,191 @@
|
||||
<RowDefinition Height="1*"/>
|
||||
</Grid.RowDefinitions>
|
||||
<UniformGrid Columns="2" Margin="0,0,0,-45">
|
||||
<TextBlock Text="{Binding NAM_MSG}"
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
<EgtWPFLib5:EgtTextBox Text="{Binding Tag.sNAM, UpdateSourceTrigger=Explicit,
|
||||
<TextBlock Text="{Binding NAM_MSG}"
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
<EgtWPFLib5:EgtTextBox Text="{Binding Tag.sNAM, UpdateSourceTrigger=Explicit,
|
||||
RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:PartParametersV}}}"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource PartParam_TextBox}"/>
|
||||
<TextBlock Text="{Binding COUNT_MSG}"
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
<EgtWPFLib5:EgtTextBox Text="{Binding Tag.sCNT, UpdateSourceTrigger=Explicit,
|
||||
RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:PartParametersV}}}"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource PartParam_TextBox}"/>
|
||||
<TextBlock Text="{Binding ORDERNUM_MSG}"
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
<EgtWPFLib5:EgtTextBox Text="{Binding Tag.nORDERNUM, UpdateSourceTrigger=Explicit,
|
||||
RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:PartParametersV}}}"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource PartParam_TextBox}"/>
|
||||
<TextBlock Text="{Binding PLANINGLEN_MSG}"
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
<EgtWPFLib5:EgtTextBox Text="{Binding Tag.dPLANINGLEN, UpdateSourceTrigger=Explicit,
|
||||
RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:PartParametersV}}}"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource PartParam_TextBox}"/>
|
||||
<TextBlock Text="{Binding STARTOFFSET_MSG}"
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
<EgtWPFLib5:EgtTextBox Text="{Binding Tag.dSTARTOFFSET, UpdateSourceTrigger=Explicit,
|
||||
RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:PartParametersV}}}"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource PartParam_TextBox}"/>
|
||||
<TextBlock Text="{Binding ENDOFFSET_MSG}"
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
<EgtWPFLib5:EgtTextBox Text="{Binding Tag.dENDOFFSET, UpdateSourceTrigger=Explicit,
|
||||
RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:PartParametersV}}}"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource PartParam_TextBox}"/>
|
||||
<TextBlock Text="{Binding COUNT_MSG}"
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
<EgtWPFLib5:EgtTextBox Text="{Binding Tag.sCNT, UpdateSourceTrigger=Explicit,
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource PartParam_TextBox}"/>
|
||||
<TextBlock Text="{Binding DESIGN_MSG}"
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
<EgtWPFLib5:EgtTextBox Text="{Binding Tag.sDESIGN, UpdateSourceTrigger=Explicit,
|
||||
RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:PartParametersV}}}"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource PartParam_TextBox}"/>
|
||||
<TextBlock Text="{Binding ORDERNUM_MSG}"
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
<EgtWPFLib5:EgtTextBox Text="{Binding Tag.nORDERNUM, UpdateSourceTrigger=Explicit,
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource PartParam_TextBox}"/>
|
||||
<TextBlock Text="{Binding GROUP_MSG}"
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
<EgtWPFLib5:EgtTextBox Text="{Binding Tag.sGROUP, UpdateSourceTrigger=Explicit,
|
||||
RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:PartParametersV}}}"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource PartParam_TextBox}"/>
|
||||
<TextBlock Text="{Binding PLANINGLEN_MSG}"
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
<EgtWPFLib5:EgtTextBox Text="{Binding Tag.dPLANINGLEN, UpdateSourceTrigger=Explicit,
|
||||
RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:PartParametersV}}}"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource PartParam_TextBox}"/>
|
||||
<TextBlock Text="{Binding STARTOFFSET_MSG}"
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
<EgtWPFLib5:EgtTextBox Text="{Binding Tag.dSTARTOFFSET, UpdateSourceTrigger=Explicit,
|
||||
RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:PartParametersV}}}"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource PartParam_TextBox}"/>
|
||||
<TextBlock Text="{Binding ENDOFFSET_MSG}"
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
<EgtWPFLib5:EgtTextBox Text="{Binding Tag.dENDOFFSET, UpdateSourceTrigger=Explicit,
|
||||
RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:PartParametersV}}}"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource PartParam_TextBox}"/>
|
||||
<TextBlock Text="{Binding DESIGN_MSG}"
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
<EgtWPFLib5:EgtTextBox Text="{Binding Tag.sDESIGN, UpdateSourceTrigger=Explicit,
|
||||
RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:PartParametersV}}}"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource PartParam_TextBox}"/>
|
||||
<TextBlock Text="{Binding GROUP_MSG}"
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
<EgtWPFLib5:EgtTextBox Text="{Binding Tag.sGROUP, UpdateSourceTrigger=Explicit,
|
||||
RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:PartParametersV}}}"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource PartParam_TextBox}"/>
|
||||
<TextBlock Text="{Binding STOREY_MSG}"
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
<EgtWPFLib5:EgtTextBox Text="{Binding Tag.sSTOREY, UpdateSourceTrigger=Explicit,
|
||||
RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:PartParametersV}}}"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource PartParam_TextBox}"/>
|
||||
<TextBlock Text="{Binding ANNOT_MSG}"
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
<EgtWPFLib5:EgtTextBox Text="{Binding Tag.sANNOT, UpdateSourceTrigger=Explicit,
|
||||
RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:PartParametersV}}}"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource PartParam_TextBox}"/>
|
||||
<TextBlock Text="{Binding MATERIAL_MSG}"
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
<EgtWPFLib5:EgtTextBox Text="{Binding Tag.sMATERIAL, UpdateSourceTrigger=Explicit,
|
||||
RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:PartParametersV}}}"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource PartParam_TextBox}"/>
|
||||
<!--<TextBlock Text="{Binding USERATTRIBUTE_MSG}"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource PartParam_TextBox}"/>
|
||||
<TextBlock Text="{Binding STOREY_MSG}"
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
<EgtWPFLib5:EgtTextBox Text="{Binding Tag.sSTOREY, UpdateSourceTrigger=Explicit,
|
||||
RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:PartParametersV}}}"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource PartParam_TextBox}"/>
|
||||
<TextBlock Text="{Binding ANNOT_MSG}"
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
<EgtWPFLib5:EgtTextBox Text="{Binding Tag.sANNOT, UpdateSourceTrigger=Explicit,
|
||||
RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:PartParametersV}}}"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource PartParam_TextBox}"/>
|
||||
<TextBlock Text="{Binding MATERIAL_MSG}"
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
<EgtWPFLib5:EgtTextBox Text="{Binding Tag.sMATERIAL, UpdateSourceTrigger=Explicit,
|
||||
RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:PartParametersV}}}"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource PartParam_TextBox}"/>
|
||||
<!--<TextBlock Text="{Binding USERATTRIBUTE_MSG}"
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
<EgtWPFLib5:EgtTextBox Text="{Binding Tag.sUSERATTRIBUTE, UpdateSourceTrigger=PropertyChanged,
|
||||
RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:PartParametersV}}}"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource PartParam_TextBox}"/>-->
|
||||
</UniformGrid>
|
||||
</UniformGrid>
|
||||
|
||||
<GroupBox Style="{DynamicResource GroupBoxStyle_NoHeader}" Grid.Row="1" Margin="0,55">
|
||||
<Grid Margin="0,5,0,0">
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="1*"/>
|
||||
<ColumnDefinition Width="1*"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="1*"/>
|
||||
<RowDefinition Height="1*"/>
|
||||
</Grid.RowDefinitions>
|
||||
<TextBlock Text="{Binding COLOUR_MSG}"
|
||||
<Grid Margin="0,5,0,0">
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="1*"/>
|
||||
<ColumnDefinition Width="1*"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="1*"/>
|
||||
<RowDefinition Height="1*"/>
|
||||
</Grid.RowDefinitions>
|
||||
<TextBlock Text="{Binding COLOUR_MSG}"
|
||||
Grid.Row="0"
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
<Button Background="{Binding Tag.PartColour, UpdateSourceTrigger=PropertyChanged,
|
||||
RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:PartParametersV}}}"
|
||||
Command="{Binding Tag.PartColour_Command, UpdateSourceTrigger=PropertyChanged,
|
||||
RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:PartParametersV}}}"
|
||||
Grid.Row="0"
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
<Button Background="{Binding Tag.PartColour, UpdateSourceTrigger=PropertyChanged,
|
||||
RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:PartParametersV}}}"
|
||||
Command="{Binding Tag.PartColour_Command, UpdateSourceTrigger=PropertyChanged,
|
||||
RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:PartParametersV}}}"
|
||||
Grid.Row="0"
|
||||
Grid.Column="1"
|
||||
Width="100"
|
||||
Style="{StaticResource ToolBar_SmallButton}"/>
|
||||
<TextBlock Text="{Binding TRANSPARENCY_MSG}"
|
||||
Grid.Row="1"
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
<EgtWPFLib5:EgtTextBox Text="{Binding Tag.nCOLA, UpdateSourceTrigger=Explicit,
|
||||
RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:PartParametersV}}}"
|
||||
Grid.Row="1"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource PartParam_TextBox}"/>
|
||||
</Grid>
|
||||
</GroupBox>
|
||||
Grid.Column="1"
|
||||
Width="100"
|
||||
Style="{StaticResource ToolBar_SmallButton}"/>
|
||||
<TextBlock Text="{Binding TRANSPARENCY_MSG}"
|
||||
Grid.Row="1"
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
<EgtWPFLib5:EgtTextBox Text="{Binding Tag.nCOLA, UpdateSourceTrigger=Explicit,
|
||||
RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:PartParametersV}}}"
|
||||
Grid.Row="1"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource PartParam_TextBox}"/>
|
||||
</Grid>
|
||||
</GroupBox>
|
||||
|
||||
<UniformGrid Grid.Column="1" Columns="2" Margin="0,0,0,-45">
|
||||
<TextBlock Text="{Binding TIMBERGRADE_MSG}"
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
<EgtWPFLib5:EgtTextBox Text="{Binding Tag.sTIMBERGRADE, UpdateSourceTrigger=Explicit,
|
||||
RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:PartParametersV}}}"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource PartParam_TextBox}"/>
|
||||
<TextBlock Text="{Binding QUALITYGRADE_MSG}"
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
<EgtWPFLib5:EgtTextBox Text="{Binding Tag.sQUALITYGRADE, UpdateSourceTrigger=Explicit,
|
||||
RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:PartParametersV}}}"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource PartParam_TextBox}"/>
|
||||
<TextBlock Text="{Binding PACKAGE_MSG}"
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
<EgtWPFLib5:EgtTextBox Text="{Binding Tag.sPACKAGE, UpdateSourceTrigger=Explicit,
|
||||
RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:PartParametersV}}}"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource PartParam_TextBox}"/>
|
||||
<TextBlock Text="{Binding ASSEMBLYNUM_MSG}"
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
<EgtWPFLib5:EgtTextBox Text="{Binding Tag.sASSEMBLYNUM, UpdateSourceTrigger=Explicit,
|
||||
RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:PartParametersV}}}"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource PartParam_TextBox}"/>
|
||||
<TextBlock Text="{Binding ELEMENTNUM_MSG}"
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
<EgtWPFLib5:EgtTextBox Text="{Binding Tag.sELEMENTNUM, UpdateSourceTrigger=Explicit,
|
||||
RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:PartParametersV}}}"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource PartParam_TextBox}"/>
|
||||
<TextBlock Text="{Binding MODULENUM_MSG}"
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
<EgtWPFLib5:EgtTextBox Text="{Binding Tag.sMODULENUM, UpdateSourceTrigger=Explicit,
|
||||
RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:PartParametersV}}}"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource PartParam_TextBox}"/>
|
||||
<TextBlock Text="{Binding PROCESSINGQUALITY_MSG}"
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
<ComboBox ItemsSource="{Binding RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:PartParametersV}},
|
||||
Path=Tag.ocPROCESSINGQUALITY,
|
||||
Mode=OneWay}"
|
||||
SelectedIndex="{Binding RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:PartParametersV}},
|
||||
Path=Tag.SelPROCESSINGQUALITY,
|
||||
Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource PartParam_ComboBox}"/>
|
||||
<TextBlock Text="{Binding RECESS_MSG}"
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
<ComboBox ItemsSource="{Binding RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:PartParametersV}},
|
||||
Path=Tag.ocRECESS,
|
||||
Mode=OneWay}"
|
||||
SelectedIndex="{Binding RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:PartParametersV}},
|
||||
Path=Tag.SelRECESS,
|
||||
Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource PartParam_ComboBox}"/>
|
||||
<TextBlock Text="{Binding STOREYTYPE_MSG}"
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
<ComboBox ItemsSource="{Binding RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:PartParametersV}},
|
||||
Path=Tag.ocSTOREYTYPE,
|
||||
Mode=OneWay}"
|
||||
SelectedIndex="{Binding RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:PartParametersV}},
|
||||
Path=Tag.SelSTOREYTYPE,
|
||||
Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource PartParam_ComboBox}"/>
|
||||
<TextBlock Text="{Binding LAYER_MSG}"
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
<EgtWPFLib5:EgtTextBox Text="{Binding Tag.nLAYER, UpdateSourceTrigger=Explicit,
|
||||
RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:PartParametersV}}}"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource PartParam_TextBox}"/>
|
||||
<TextBlock Text="{Binding COMMENT_MSG}"
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
<TextBlock Text="{Binding TIMBERGRADE_MSG}"
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
<EgtWPFLib5:EgtTextBox Text="{Binding Tag.sTIMBERGRADE, UpdateSourceTrigger=Explicit,
|
||||
RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:PartParametersV}}}"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource PartParam_TextBox}"/>
|
||||
<TextBlock Text="{Binding QUALITYGRADE_MSG}"
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
<EgtWPFLib5:EgtTextBox Text="{Binding Tag.sQUALITYGRADE, UpdateSourceTrigger=Explicit,
|
||||
RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:PartParametersV}}}"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource PartParam_TextBox}"/>
|
||||
<TextBlock Text="{Binding PACKAGE_MSG}"
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
<EgtWPFLib5:EgtTextBox Text="{Binding Tag.sPACKAGE, UpdateSourceTrigger=Explicit,
|
||||
RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:PartParametersV}}}"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource PartParam_TextBox}"/>
|
||||
<TextBlock Text="{Binding ASSEMBLYNUM_MSG}"
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
<EgtWPFLib5:EgtTextBox Text="{Binding Tag.sASSEMBLYNUM, UpdateSourceTrigger=Explicit,
|
||||
RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:PartParametersV}}}"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource PartParam_TextBox}"/>
|
||||
<TextBlock Text="{Binding ELEMENTNUM_MSG}"
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
<EgtWPFLib5:EgtTextBox Text="{Binding Tag.sELEMENTNUM, UpdateSourceTrigger=Explicit,
|
||||
RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:PartParametersV}}}"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource PartParam_TextBox}"/>
|
||||
<TextBlock Text="{Binding MODULENUM_MSG}"
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
<EgtWPFLib5:EgtTextBox Text="{Binding Tag.sMODULENUM, UpdateSourceTrigger=Explicit,
|
||||
RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:PartParametersV}}}"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource PartParam_TextBox}"/>
|
||||
<TextBlock Text="{Binding PROCESSINGQUALITY_MSG}"
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
<ComboBox ItemsSource="{Binding RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:PartParametersV}},
|
||||
Path=Tag.ocPROCESSINGQUALITY,
|
||||
Mode=OneWay}"
|
||||
SelectedIndex="{Binding RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:PartParametersV}},
|
||||
Path=Tag.SelPROCESSINGQUALITY,
|
||||
Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource PartParam_ComboBox}"/>
|
||||
<TextBlock Text="{Binding RECESS_MSG}"
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
<ComboBox ItemsSource="{Binding RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:PartParametersV}},
|
||||
Path=Tag.ocRECESS,
|
||||
Mode=OneWay}"
|
||||
SelectedIndex="{Binding RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:PartParametersV}},
|
||||
Path=Tag.SelRECESS,
|
||||
Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource PartParam_ComboBox}"/>
|
||||
<TextBlock Text="{Binding STOREYTYPE_MSG}"
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
<ComboBox ItemsSource="{Binding RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:PartParametersV}},
|
||||
Path=Tag.ocSTOREYTYPE,
|
||||
Mode=OneWay}"
|
||||
SelectedIndex="{Binding RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:PartParametersV}},
|
||||
Path=Tag.SelSTOREYTYPE,
|
||||
Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource PartParam_ComboBox}"/>
|
||||
<TextBlock Text="{Binding LAYER_MSG}"
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
<EgtWPFLib5:EgtTextBox Text="{Binding Tag.nLAYER, UpdateSourceTrigger=Explicit,
|
||||
RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:PartParametersV}}}"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource PartParam_TextBox}"/>
|
||||
<TextBlock Text="{Binding COMMENT_MSG}"
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
<EgtWPFLib5:EgtTextBox Text="{Binding Tag.sCOMMENT, UpdateSourceTrigger=Explicit,
|
||||
RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:PartParametersV}}}"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource PartParam_TextBox}"/>
|
||||
RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:PartParametersV}}}"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource PartParam_TextBox}"/>
|
||||
</UniformGrid>
|
||||
|
||||
<GroupBox Style="{DynamicResource GroupBoxStyle_NoHeader}" Grid.Row="1" Grid.Column="1" Margin="0,55">
|
||||
@@ -216,50 +216,50 @@
|
||||
<RowDefinition Height="1*"/>
|
||||
</Grid.RowDefinitions>
|
||||
<TextBlock Text="{Binding REFSIDE_MSG}"
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
<ComboBox ItemsSource="{Binding RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:PartParametersV}},
|
||||
Path=Tag.ocREFSIDE,
|
||||
Mode=OneWay}"
|
||||
SelectedIndex="{Binding RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:PartParametersV}},
|
||||
Path=Tag.SelREFSIDE,
|
||||
Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource PartParam_ComboBox}"/>
|
||||
Path=Tag.ocREFSIDE,
|
||||
Mode=OneWay}"
|
||||
SelectedIndex="{Binding RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:PartParametersV}},
|
||||
Path=Tag.SelREFSIDE,
|
||||
Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource PartParam_ComboBox}"/>
|
||||
<TextBlock Text="{Binding REFSIDEALIGN_MSG}"
|
||||
Grid.Row="1"
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
<CheckBox IsChecked="{Binding RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:PartParametersV}},
|
||||
Path=Tag.bREFSIDEALIGN,
|
||||
Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
|
||||
HorizontalAlignment="Center"
|
||||
VerticalAlignment="Center"
|
||||
Path=Tag.bREFSIDEALIGN,
|
||||
Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
|
||||
HorizontalAlignment="Center"
|
||||
VerticalAlignment="Center"
|
||||
Grid.Row="1"
|
||||
Grid.Column="1"/>
|
||||
Grid.Column="1"/>
|
||||
</Grid>
|
||||
</GroupBox>
|
||||
|
||||
|
||||
<Grid Grid.Row="0" Grid.Column="2" Grid.RowSpan="2">
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="1*"/>
|
||||
<ColumnDefinition Width="1*"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="1*"/>
|
||||
<RowDefinition Height="1*"/>
|
||||
<RowDefinition Height="1*"/>
|
||||
<RowDefinition Height="1*"/>
|
||||
<RowDefinition Height="1*"/>
|
||||
<RowDefinition Height="1*"/>
|
||||
<RowDefinition Height="1*"/>
|
||||
<RowDefinition Height="1*"/>
|
||||
<RowDefinition Height="1*"/>
|
||||
<RowDefinition Height="1*"/>
|
||||
<RowDefinition Height="1*"/>
|
||||
<RowDefinition Height="1*"/>
|
||||
<RowDefinition Height="1*"/>
|
||||
<RowDefinition Height="1*"/>
|
||||
</Grid.RowDefinitions>
|
||||
<Grid Grid.Row="0" Grid.Column="2" Grid.RowSpan="2">
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="1*"/>
|
||||
<ColumnDefinition Width="1*"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="1*"/>
|
||||
<RowDefinition Height="1*"/>
|
||||
<RowDefinition Height="1*"/>
|
||||
<RowDefinition Height="1*"/>
|
||||
<RowDefinition Height="1*"/>
|
||||
<RowDefinition Height="1*"/>
|
||||
<RowDefinition Height="1*"/>
|
||||
<RowDefinition Height="1*"/>
|
||||
<RowDefinition Height="1*"/>
|
||||
<RowDefinition Height="1*"/>
|
||||
<RowDefinition Height="1*"/>
|
||||
<RowDefinition Height="1*"/>
|
||||
<RowDefinition Height="1*"/>
|
||||
<RowDefinition Height="1*"/>
|
||||
</Grid.RowDefinitions>
|
||||
<GroupBox Style="{DynamicResource GroupBoxStyle_NoHeader}" Grid.Row="0" Grid.RowSpan="2" Grid.ColumnSpan="2">
|
||||
<Grid>
|
||||
<Grid.ColumnDefinitions>
|
||||
@@ -271,21 +271,21 @@
|
||||
<RowDefinition Height="1*"/>
|
||||
</Grid.RowDefinitions>
|
||||
<TextBlock Text="{Binding GRAINDIRECTION_MSG}"
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
<EgtWPFLib5:EgtTextBox Text="{Binding Tag.GrainDirection, UpdateSourceTrigger=Explicit,
|
||||
RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:PartParametersV}}}"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource PartParam_TextBox}"/>
|
||||
RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:PartParametersV}}}"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource PartParam_TextBox}"/>
|
||||
<TextBlock Text="{Binding GRAINDIRALIGN_MSG}"
|
||||
Grid.Row="1"
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
Grid.Row="1"
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
<CheckBox IsChecked="{Binding RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:PartParametersV}},
|
||||
Path=Tag.bGRAINDIRALIGN,
|
||||
Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
|
||||
HorizontalAlignment="Center"
|
||||
VerticalAlignment="Center"
|
||||
Grid.Row="1"
|
||||
Grid.Column="1"
|
||||
Path=Tag.bGRAINDIRALIGN,
|
||||
Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
|
||||
HorizontalAlignment="Center"
|
||||
VerticalAlignment="Center"
|
||||
Grid.Row="1"
|
||||
Grid.Column="1"
|
||||
Margin="0,5"/>
|
||||
</Grid>
|
||||
</GroupBox>
|
||||
@@ -300,53 +300,53 @@
|
||||
<RowDefinition Height="1*"/>
|
||||
</Grid.RowDefinitions>
|
||||
<TextBlock Text="{Binding CAMBERSIDE_MSG}"
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
<ComboBox ItemsSource="{Binding RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:PartParametersV}},
|
||||
Path=Tag.ocCAMBERSIDE,
|
||||
Mode=OneWay}"
|
||||
SelectedIndex="{Binding RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:PartParametersV}},
|
||||
Path=Tag.SelCAMBERSIDE,
|
||||
Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource PartParam_ComboBox}"/>
|
||||
Path=Tag.ocCAMBERSIDE,
|
||||
Mode=OneWay}"
|
||||
SelectedIndex="{Binding RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:PartParametersV}},
|
||||
Path=Tag.SelCAMBERSIDE,
|
||||
Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource PartParam_ComboBox}"/>
|
||||
<TextBlock Text="{Binding CAMBERPARAMS_MSG}"
|
||||
Grid.Row="1"
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
<EgtWPFLib5:EgtTextBox Text="{Binding Tag.CamberParams, UpdateSourceTrigger=Explicit,
|
||||
RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:PartParametersV}}}"
|
||||
RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:PartParametersV}}}"
|
||||
Grid.Row="1"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource PartParam_TextBox}"/>
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource PartParam_TextBox}"/>
|
||||
</Grid>
|
||||
</GroupBox>
|
||||
<GroupBox Style="{DynamicResource GroupBoxStyle_NoHeader}" Grid.Row="4" Grid.RowSpan="2" Grid.ColumnSpan="2">
|
||||
<Grid Margin="0,5,0,0">
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="1*"/>
|
||||
<ColumnDefinition Width="1*"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="1*"/>
|
||||
<RowDefinition Height="1*"/>
|
||||
</Grid.RowDefinitions>
|
||||
<TextBlock Text="{Binding REFSIDEFIXCLAMP_MSG}"
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
<ComboBox ItemsSource="{Binding RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:PartParametersV}},
|
||||
Path=Tag.ocREFSIDEFIXCLAMP,
|
||||
Mode=OneWay}"
|
||||
SelectedIndex="{Binding RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:PartParametersV}},
|
||||
Path=Tag.SelREFSIDEFIXCLAMP,
|
||||
Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource PartParam_ComboBox}"/>
|
||||
<TextBlock Text="{Binding PARTOFFSETPARAMS_MSG}"
|
||||
Grid.Row="1"
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
<EgtWPFLib5:EgtTextBox Text="{Binding Tag.PartOffsetParams, UpdateSourceTrigger=Explicit,
|
||||
RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:PartParametersV}}}"
|
||||
Grid.Row="1"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource PartParam_TextBox}"/>
|
||||
<Grid.ColumnDefinitions>
|
||||
<ColumnDefinition Width="1*"/>
|
||||
<ColumnDefinition Width="1*"/>
|
||||
</Grid.ColumnDefinitions>
|
||||
<Grid.RowDefinitions>
|
||||
<RowDefinition Height="1*"/>
|
||||
<RowDefinition Height="1*"/>
|
||||
</Grid.RowDefinitions>
|
||||
<TextBlock Text="{Binding REFSIDEFIXCLAMP_MSG}"
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
<ComboBox ItemsSource="{Binding RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:PartParametersV}},
|
||||
Path=Tag.ocREFSIDEFIXCLAMP,
|
||||
Mode=OneWay}"
|
||||
SelectedIndex="{Binding RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:PartParametersV}},
|
||||
Path=Tag.SelREFSIDEFIXCLAMP,
|
||||
Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource PartParam_ComboBox}"/>
|
||||
<TextBlock Text="{Binding PARTOFFSETPARAMS_MSG}"
|
||||
Grid.Row="1"
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
<EgtWPFLib5:EgtTextBox Text="{Binding Tag.PartOffsetParams, UpdateSourceTrigger=Explicit,
|
||||
RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:PartParametersV}}}"
|
||||
Grid.Row="1"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource PartParam_TextBox}"/>
|
||||
</Grid>
|
||||
</GroupBox>
|
||||
<GroupBox Style="{DynamicResource GroupBoxStyle_NoHeader}" Grid.Row="6" Grid.RowSpan="2" Grid.ColumnSpan="2">
|
||||
@@ -360,23 +360,23 @@
|
||||
<RowDefinition Height="1*"/>
|
||||
</Grid.RowDefinitions>
|
||||
<TextBlock Text="{Binding MATERIALTYPEGRP_MSG}"
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
<ComboBox ItemsSource="{Binding RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:PartParametersV}},
|
||||
Path=Tag.ocMATERIALTYPEGRP,
|
||||
Mode=OneWay}"
|
||||
SelectedIndex="{Binding RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:PartParametersV}},
|
||||
Path=Tag.SelMATERIALTYPEGRP,
|
||||
Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource PartParam_ComboBox}"/>
|
||||
<TextBlock Text="{Binding MATERIALTYPESPEC_MSG}"
|
||||
Grid.Row="1"
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
<EgtWPFLib5:EgtTextBox Text="{Binding Tag.sMATERIALTYPESPEC, UpdateSourceTrigger=Explicit,
|
||||
RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:PartParametersV}}}"
|
||||
Grid.Row="1"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource PartParam_TextBox}"/>
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
<ComboBox ItemsSource="{Binding RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:PartParametersV}},
|
||||
Path=Tag.ocMATERIALTYPEGRP,
|
||||
Mode=OneWay}"
|
||||
SelectedIndex="{Binding RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:PartParametersV}},
|
||||
Path=Tag.SelMATERIALTYPEGRP,
|
||||
Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource PartParam_ComboBox}"/>
|
||||
<TextBlock Text="{Binding MATERIALTYPESPEC_MSG}"
|
||||
Grid.Row="1"
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
<EgtWPFLib5:EgtTextBox Text="{Binding Tag.sMATERIALTYPESPEC, UpdateSourceTrigger=Explicit,
|
||||
RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:PartParametersV}}}"
|
||||
Grid.Row="1"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource PartParam_TextBox}"/>
|
||||
</Grid>
|
||||
</GroupBox>
|
||||
<GroupBox Style="{DynamicResource GroupBoxStyle_NoHeader}" Grid.Row="8" Grid.RowSpan="2" Grid.ColumnSpan="2">
|
||||
@@ -390,28 +390,28 @@
|
||||
<RowDefinition Height="1*"/>
|
||||
</Grid.RowDefinitions>
|
||||
<TextBlock Text="{Binding ALIGNLOCATION_MSG}"
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
<ComboBox ItemsSource="{Binding RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:PartParametersV}},
|
||||
Path=Tag.ocALIGNLOCATION,
|
||||
Mode=OneWay}"
|
||||
SelectedIndex="{Binding RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:PartParametersV}},
|
||||
Path=Tag.SelALIGNLOCATION,
|
||||
Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource PartParam_ComboBox}"/>
|
||||
<TextBlock Text="{Binding ALIGNENDTYPE_MSG}"
|
||||
Grid.Row="1"
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
<ComboBox ItemsSource="{Binding RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:PartParametersV}},
|
||||
Path=Tag.ocALIGNENDTYPE,
|
||||
Mode=OneWay}"
|
||||
SelectedIndex="{Binding RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:PartParametersV}},
|
||||
Path=Tag.SelALIGNENDTYPE,
|
||||
Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
|
||||
Grid.Row="1"
|
||||
Grid.Column="1"
|
||||
Margin="0,5"
|
||||
Style="{StaticResource PartParam_ComboBox}"/>
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
<ComboBox ItemsSource="{Binding RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:PartParametersV}},
|
||||
Path=Tag.ocALIGNLOCATION,
|
||||
Mode=OneWay}"
|
||||
SelectedIndex="{Binding RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:PartParametersV}},
|
||||
Path=Tag.SelALIGNLOCATION,
|
||||
Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource PartParam_ComboBox}"/>
|
||||
<TextBlock Text="{Binding ALIGNENDTYPE_MSG}"
|
||||
Grid.Row="1"
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
<ComboBox ItemsSource="{Binding RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:PartParametersV}},
|
||||
Path=Tag.ocALIGNENDTYPE,
|
||||
Mode=OneWay}"
|
||||
SelectedIndex="{Binding RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:PartParametersV}},
|
||||
Path=Tag.SelALIGNENDTYPE,
|
||||
Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
|
||||
Grid.Row="1"
|
||||
Grid.Column="1"
|
||||
Margin="0,5"
|
||||
Style="{StaticResource PartParam_ComboBox}"/>
|
||||
</Grid>
|
||||
</GroupBox>
|
||||
<GroupBox Style="{DynamicResource GroupBoxStyle_NoHeader}" Grid.Row="10" Grid.RowSpan="4" Grid.ColumnSpan="2">
|
||||
@@ -427,43 +427,43 @@
|
||||
<RowDefinition Height="1*"/>
|
||||
</Grid.RowDefinitions>
|
||||
<TextBlock Text="{Binding UID_MSG}"
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
<ComboBox ItemsSource="{Binding RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:PartParametersV}},
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
<ComboBox ItemsSource="{Binding RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:PartParametersV}},
|
||||
Path=Tag.ocUID,
|
||||
Mode=OneWay}"
|
||||
SelectedIndex="{Binding RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:PartParametersV}},
|
||||
Path=Tag.SelUID,
|
||||
Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
|
||||
SelectedIndex="{Binding RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:PartParametersV}},
|
||||
Path=Tag.SelUID,
|
||||
Mode=TwoWay, UpdateSourceTrigger=PropertyChanged}"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource PartParam_ComboBox}"/>
|
||||
<TextBlock Text="{Binding TRANSFORIG_MSG}"
|
||||
Grid.Row="1"
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
<EgtWPFLib5:EgtTextBox Text="{Binding Tag.TransfOrig, UpdateSourceTrigger=Explicit,
|
||||
RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:PartParametersV}}}"
|
||||
Grid.Row="1"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource PartParam_TextBox}"/>
|
||||
<TextBlock Text="{Binding TRANSFVERSX_MSG}"
|
||||
Grid.Row="2"
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
<EgtWPFLib5:EgtTextBox Text="{Binding Tag.TransfVersX, UpdateSourceTrigger=Explicit,
|
||||
RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:PartParametersV}}}"
|
||||
Grid.Row="2"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource PartParam_TextBox}"/>
|
||||
<TextBlock Text="{Binding TRANSFVERSY_MSG}"
|
||||
Grid.Row="3"
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
<EgtWPFLib5:EgtTextBox Text="{Binding Tag.TransfVersY, UpdateSourceTrigger=Explicit,
|
||||
RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:PartParametersV}}}"
|
||||
Grid.Row="3"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource PartParam_TextBox}"/>
|
||||
<TextBlock Text="{Binding TRANSFORIG_MSG}"
|
||||
Grid.Row="1"
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
<EgtWPFLib5:EgtTextBox Text="{Binding Tag.TransfOrig, UpdateSourceTrigger=Explicit,
|
||||
RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:PartParametersV}}}"
|
||||
Grid.Row="1"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource PartParam_TextBox}"/>
|
||||
<TextBlock Text="{Binding TRANSFVERSX_MSG}"
|
||||
Grid.Row="2"
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
<EgtWPFLib5:EgtTextBox Text="{Binding Tag.TransfVersX, UpdateSourceTrigger=Explicit,
|
||||
RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:PartParametersV}}}"
|
||||
Grid.Row="2"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource PartParam_TextBox}"/>
|
||||
<TextBlock Text="{Binding TRANSFVERSY_MSG}"
|
||||
Grid.Row="3"
|
||||
Style="{StaticResource PartParam_TextBlock}"/>
|
||||
<EgtWPFLib5:EgtTextBox Text="{Binding Tag.TransfVersY, UpdateSourceTrigger=Explicit,
|
||||
RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALL:PartParametersV}}}"
|
||||
Grid.Row="3"
|
||||
Grid.Column="1"
|
||||
Style="{StaticResource PartParam_TextBox}"/>
|
||||
</Grid>
|
||||
</GroupBox>
|
||||
|
||||
</Grid>
|
||||
</Grid>
|
||||
|
||||
</Grid>
|
||||
</UniformGrid>
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user