Optmizer 2.7.11.10

-aggiornato tabelle supervisore con egedatagrid
This commit is contained in:
Demetrio Cassarino
2025-11-20 08:56:31 +01:00
parent 1ab69a9cf3
commit 76a3fa6b78
21 changed files with 185 additions and 256 deletions
-8
View File
@@ -119,10 +119,6 @@
<Import Include="System.Xml.Linq" />
</ItemGroup>
<ItemGroup>
<Compile Include="BeamMachiningsWindow\MyBeamMachiningsWindowVM.vb" />
<Compile Include="BeamMachiningsWindow\BeamMachiningsWindowV.xaml.vb">
<DependentUpon>BeamMachiningsWindowV.xaml</DependentUpon>
</Compile>
<Compile Include="BTLViewModel\BTLFeatureVM.vb" />
<Compile Include="CALCPanel\CalcEditEndEventArgs.vb" />
<Compile Include="ConfigurationPage\Machine_ConfigurationPageV.xaml.vb">
@@ -261,10 +257,6 @@
<None Include="packages.config" />
</ItemGroup>
<ItemGroup>
<Page Include="BeamMachiningsWindow\BeamMachiningsWindowV.xaml">
<SubType>Designer</SubType>
<Generator>MSBuild:Compile</Generator>
</Page>
<Page Include="ConfigurationPage\Machine_ConfigurationPageV.xaml">
<Generator>MSBuild:Compile</Generator>
<SubType>Designer</SubType>
+2 -2
View File
@@ -38,5 +38,5 @@ Imports System.Windows
' by using the '*' as shown below:
' <Assembly: AssemblyVersion("1.0.*")>
<Assembly: AssemblyVersion("2.7.11.9")>
<Assembly: AssemblyFileVersion("2.7.11.9")>
<Assembly: AssemblyVersion("2.7.11.10")>
<Assembly: AssemblyFileVersion("2.7.11.10")>
@@ -129,10 +129,6 @@
<Compile Include="AddRawPartWnd\AddRawPartWndV.xaml.vb">
<DependentUpon>AddRawPartWndV.xaml</DependentUpon>
</Compile>
<Compile Include="AddSectionXMaterialWnd\AddSectionXMaterialWndV.xaml.vb">
<DependentUpon>AddSectionXMaterialWndV.xaml</DependentUpon>
</Compile>
<Compile Include="AddSectionXMaterialWnd\AddSectionXMaterialWndVM.vb" />
<Compile Include="Application.xaml.vb">
<DependentUpon>Application.xaml</DependentUpon>
<SubType>Code</SubType>
@@ -506,10 +502,6 @@
<Generator>MSBuild:Compile</Generator>
<SubType>Designer</SubType>
</Page>
<Page Include="AddSectionXMaterialWnd\AddSectionXMaterialWndV.xaml">
<Generator>MSBuild:Compile</Generator>
<SubType>Designer</SubType>
</Page>
<Page Include="BlockedWnd\BlockedWndV.xaml">
<Generator>MSBuild:Compile</Generator>
<SubType>Designer</SubType>
@@ -67,5 +67,5 @@ Imports System.Windows
' Revision
'
<Assembly: AssemblyVersion("2.7.11.9")>
<Assembly: AssemblyFileVersion("2.7.11.9")>
<Assembly: AssemblyVersion("2.7.11.10")>
<Assembly: AssemblyFileVersion("2.7.11.10")>
+11 -11
View File
@@ -22,7 +22,7 @@ Module Map
Private m_refStatisticsVM As StatisticsVM
Private m_refPParameterListVM As PParameterListVM
Private m_refFeatureManagerVM As FeatureManagerVM
Private m_refAddSectionXMaterialWndVM As AddSectionXMaterialWndVM
'Private m_refAddSectionXMaterialWndVM As AddSectionXMaterialWndVM
Private m_refStatisticsTimePanelVM As StatisticsTimePanelVM
Private m_refPDFEditorVM As PDFEditorVM
Private m_refProdManagerVM As ProdManagerVM
@@ -182,11 +182,11 @@ Module Map
End Get
End Property
Public ReadOnly Property refAddSectionXMaterialWndVM As AddSectionXMaterialWndVM
Get
Return m_refAddSectionXMaterialWndVM
End Get
End Property
'Public ReadOnly Property refAddSectionXMaterialWndVM As AddSectionXMaterialWndVM
' Get
' Return m_refAddSectionXMaterialWndVM
' End Get
'End Property
Public ReadOnly Property refStatisticsTimePanelVM As StatisticsTimePanelVM
Get
@@ -379,10 +379,10 @@ Module Map
Return Not IsNothing(m_refFeatureManagerVM)
End Function
Friend Function SetRefAddSectionXMaterialWndVM(AddSectionXMaterialWndVM As AddSectionXMaterialWndVM) As Boolean
m_refAddSectionXMaterialWndVM = AddSectionXMaterialWndVM
Return Not IsNothing(m_refAddSectionXMaterialWndVM)
End Function
'Friend Function SetRefAddSectionXMaterialWndVM(AddSectionXMaterialWndVM As AddSectionXMaterialWndVM) As Boolean
' m_refAddSectionXMaterialWndVM = AddSectionXMaterialWndVM
' Return Not IsNothing(m_refAddSectionXMaterialWndVM)
'End Function
Friend Function SetRefStatisticsTimePanelVM(StatisticsTimePanelVM As StatisticsTimePanelVM) As Boolean
m_refStatisticsTimePanelVM = StatisticsTimePanelVM
@@ -465,7 +465,7 @@ Module Map
Not IsNothing(m_refCALCPanelVM) AndAlso Not IsNothing(m_refPartListVM) AndAlso
Not IsNothing(m_refFeatureInPartInRawPartListVM) AndAlso Not IsNothing(m_refStatisticsVM) AndAlso
Not IsNothing(m_refPParameterListVM) AndAlso Not IsNothing(m_refFeatureManagerVM) AndAlso
Not IsNothing(m_refAddSectionXMaterialWndVM) AndAlso Not IsNothing(m_refStatisticsTimePanelVM) AndAlso
Not IsNothing(m_refStatisticsTimePanelVM) AndAlso
Not IsNothing(m_refPDFEditorVM) AndAlso Not IsNothing(m_refSpecialPanelVM) AndAlso
Not IsNothing(m_refProdManagerVM) AndAlso Not IsNothing(m_refBTLPartManagerVM) AndAlso
Not IsNothing(m_refRawPartManagerVM) AndAlso Not IsNothing(m_refFeatureListManagerVM) AndAlso
@@ -18,9 +18,9 @@ Public Class SectionXMaterialToBeAdded
' Se Alias è checkato seleziono subito il primo elemento nella CmBx altrimenti setto la selezione a Nothing
SelMaterialForSameSection = If(m_Alias_IsChecked, MaterialForSameSection_List(0), Nothing)
NotifyPropertyChanged(NameOf(SelMaterialForSameSection))
' Setto SelNewSectionXMaterial al suo stesso valore per aggiornare l'abilitazione della CmBx
Map.refAddSectionXMaterialWndVM.SelNewSectionXMaterial = Map.refAddSectionXMaterialWndVM.SelNewSectionXMaterial
Map.refAddSectionXMaterialWndVM.NotifyPropertyChanged(NameOf(Map.refAddSectionXMaterialWndVM.SelNewSectionXMaterial))
'' Setto SelNewSectionXMaterial al suo stesso valore per aggiornare l'abilitazione della CmBx
'Map.refAddSectionXMaterialWndVM.SelNewSectionXMaterial = Map.refAddSectionXMaterialWndVM.SelNewSectionXMaterial
'Map.refAddSectionXMaterialWndVM.NotifyPropertyChanged(NameOf(Map.refAddSectionXMaterialWndVM.SelNewSectionXMaterial))
NotifyPropertyChanged(NameOf(Alias_IsChecked))
NotifyPropertyChanged(NameOf(Alias_IsNotChecked))
End Set
@@ -1033,33 +1033,33 @@ Public Class WarehouseWndVM
NotifyPropertyChanged(NameOf(SParamColumns))
End Sub
Public Shared Sub CheckExistingSectionXMaterial()
Dim NewSectXMatList As New List(Of SectionXMaterialToBeAdded)
' Ricavo la lista dei SectionXMaterial presenti in Warehouse
Dim WhSectXMatList As List(Of SectionXMaterial) = GetSectionXMaterialsFromWarehouse()
For Each SectionListItem In Map.refProjectVM.BTLStructureVM.SectionList
Dim Index As Integer = 0
Dim bEqual As Boolean = False
' Confronto l'Item di SectionList con ciascuno di quelli presenti nella Warehouse
For Each SectXMatListItem In WhSectXMatList
If SectionListItem = WhSectXMatList(Index) Then
' Se l'Item di SectionList equivale ad uno presente nella Warehouse setto bEqual a True ed esco dal For
bEqual = True
Exit For
End If
Index += 1
Next
' Se l'Item di SectionList non equivale a nessuno di quelli della Warehouse lo aggiungo alla lista
If Not bEqual And IsSectionValid(SectionListItem) Then
NewSectXMatList.Add(New SectionXMaterialToBeAdded(SectionListItem))
End If
Next
' Se nel BTL importato ci sono SectionXMaterial non presenti nell'INI della Warehouse mostro il dialog per la gestione di questi
If NewSectXMatList.Count > 0 Then
Dim AddSectionXMaterialWnd As New AddSectionXMaterialWndV(Application.Current.MainWindow, New AddSectionXMaterialWndVM(NewSectXMatList))
AddSectionXMaterialWnd.ShowDialog()
End If
End Sub
'Public Shared Sub CheckExistingSectionXMaterial()
' Dim NewSectXMatList As New List(Of SectionXMaterialToBeAdded)
' ' Ricavo la lista dei SectionXMaterial presenti in Warehouse
' Dim WhSectXMatList As List(Of SectionXMaterial) = GetSectionXMaterialsFromWarehouse()
' For Each SectionListItem In Map.refProjectVM.BTLStructureVM.SectionList
' Dim Index As Integer = 0
' Dim bEqual As Boolean = False
' ' Confronto l'Item di SectionList con ciascuno di quelli presenti nella Warehouse
' For Each SectXMatListItem In WhSectXMatList
' If SectionListItem = WhSectXMatList(Index) Then
' ' Se l'Item di SectionList equivale ad uno presente nella Warehouse setto bEqual a True ed esco dal For
' bEqual = True
' Exit For
' End If
' Index += 1
' Next
' ' Se l'Item di SectionList non equivale a nessuno di quelli della Warehouse lo aggiungo alla lista
' If Not bEqual And IsSectionValid(SectionListItem) Then
' NewSectXMatList.Add(New SectionXMaterialToBeAdded(SectionListItem))
' End If
' Next
' ' Se nel BTL importato ci sono SectionXMaterial non presenti nell'INI della Warehouse mostro il dialog per la gestione di questi
' If NewSectXMatList.Count > 0 Then
' Dim AddSectionXMaterialWnd As New AddSectionXMaterialWndV(Application.Current.MainWindow, New AddSectionXMaterialWndVM(NewSectXMatList))
' AddSectionXMaterialWnd.ShowDialog()
' End If
'End Sub
Public Shared Sub UpdateSectionXMaterial()
' aggiungo tutte le sezioni al magazzino (verifica se esiste gia' viene fatta all'interno della funzione)
@@ -2,28 +2,29 @@
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:EgtBEAMWALLSUPERVISOR="clr-namespace:EgtBEAMWALL.Supervisor"
xmlns:EgtBEAMWALLCORE="clr-namespace:EgtBEAMWALL.Core;assembly=EgtBEAMWALL.Core">
<EgtBEAMWALLCORE:EgtDataGrid ItemsSource="{Binding Tag.FeatureVMList,
RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALLSUPERVISOR:FeatureInPartInRawPartListV}}}"
SelectedItem="{Binding Tag.SelFeatureVM,
RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALLSUPERVISOR:FeatureInPartInRawPartListV}}}"
BindingColumns="{Binding FeatureInPartInRawPartColumns}"
CanUserAddRows="False"
AutoGenerateColumns="False"
CanUserSortColumns="False"
CanUserResizeRows="False"
CanUserReorderColumns="False"
SelectionMode="Single"
ScrollViewer.CanContentScroll="True"
ScrollViewer.VerticalScrollBarVisibility="Auto"
ScrollViewer.HorizontalScrollBarVisibility="Auto"
Margin="0,0,0,5"
AlternatingRowBackground="{StaticResource BeamWall_LinkWater}"
AlternationCount="2"
ColumnHeaderStyle="{StaticResource Feature_DataGridColumnHeader}"
CellStyle="{StaticResource CellDataGrid_CustomHighLight_PartList}"
Style="{StaticResource Optimizer_DataGrid}">
xmlns:EgtBEAMWALLCORE="clr-namespace:EgtBEAMWALL.Core;assembly=EgtBEAMWALL.Core"
xmlns:EgwWPFBaseLib="clr-namespace:EgwWPFBaseLib;assembly=EgwWPFBaseLib">
<EgwWPFBaseLib:EgwDataGrid ItemsSource="{Binding Tag.FeatureVMList,
RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALLSUPERVISOR:FeatureInPartInRawPartListV}}}"
SelectedItem="{Binding Tag.SelFeatureVM,
RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALLSUPERVISOR:FeatureInPartInRawPartListV}}}"
ColumnLayouts="{Binding FeatureInPartInRawPartColumns}"
CanUserAddRows="False"
AutoGenerateColumns="False"
CanUserSortColumns="False"
CanUserResizeRows="False"
CanUserReorderColumns="False"
SelectionMode="Single"
ScrollViewer.CanContentScroll="True"
ScrollViewer.VerticalScrollBarVisibility="Auto"
ScrollViewer.HorizontalScrollBarVisibility="Auto"
Margin="0,0,0,5"
AlternatingRowBackground="{StaticResource BeamWall_LinkWater}"
AlternationCount="2"
ColumnHeaderStyle="{StaticResource Feature_DataGridColumnHeader}"
CellStyle="{StaticResource CellDataGrid_CustomHighLight_PartList}"
Style="{StaticResource Optimizer_DataGrid}">
<DataGrid.Resources>
<!--DO - Abilitazione-->
<DataGridCheckBoxColumn x:Key="colREDO" Binding="{Binding bDO, UpdateSourceTrigger=PropertyChanged}">
@@ -72,6 +73,6 @@
</DataGridTextColumn.Header>
</DataGridTextColumn>
</DataGrid.Resources>
</EgtBEAMWALLCORE:EgtDataGrid>
</EgwWPFBaseLib:EgwDataGrid>
</UserControl>
@@ -2,25 +2,26 @@
Imports EgtBEAMWALL.Core
Imports EgtUILib
Imports EgtWPFLib5
Imports System.IO
Public Class FeatureInPartInRawPartListVM
Inherits VMBase
#Region "FIELDS & PROPERTIES"
Private m_colFeatureInPartInRawPart_Redo As EgtDataGridColumn
Public ReadOnly Property colFeatureInPartInRawPart_Redo As EgtDataGridColumn
Private m_colFeatureInPartInRawPart_Redo As EgwWPFBaseLib.ColumnLayout
Public ReadOnly Property colFeatureInPartInRawPart_Redo As EgwWPFBaseLib.ColumnLayout
Get
Return m_colFeatureInPartInRawPart_Redo
End Get
End Property
Private m_FeatureInPartInRawPartColumns As New ObservableCollection(Of EgtDataGridColumn)
Public Property FeatureInPartInRawPartColumns As ObservableCollection(Of EgtDataGridColumn)
Private m_FeatureInPartInRawPartColumns As New ObservableCollection(Of EgwWPFBaseLib.ColumnLayout)
Public Property FeatureInPartInRawPartColumns As ObservableCollection(Of EgwWPFBaseLib.ColumnLayout)
Get
Return m_FeatureInPartInRawPartColumns
End Get
Set(value As ObservableCollection(Of EgtDataGridColumn))
Set(value As ObservableCollection(Of EgwWPFBaseLib.ColumnLayout))
m_FeatureInPartInRawPartColumns = value
End Set
End Property
@@ -56,9 +57,9 @@ Public Class FeatureInPartInRawPartListVM
' creo riferimento in Map
Map.SetRefFeatureInPartInRawPartListVM(Me)
' carico le colonne della datagrid
Core.GetPrivateProfileColumns(S_FEATUREINPARTINRAWPARTLIST_SUPERVISOR, FeatureInPartInRawPartColumns)
EgwWPFBaseLib.EgwDataGrid.ReadColumnLayout(Path.ChangeExtension(DataGridColumnsIniFile.m_sDataGridColumnsIniFile, ".json"), S_FEATUREINPARTINRAWPARTLIST_SUPERVISOR, FeatureInPartInRawPartColumns)
' recupero riferimento a colonna Redo
m_colFeatureInPartInRawPart_Redo = FeatureInPartInRawPartColumns.FirstOrDefault(Function(x) x.Name = COL_REDO)
m_colFeatureInPartInRawPart_Redo = FeatureInPartInRawPartColumns.FirstOrDefault(Function(x) x.Key = COL_REDO)
End Sub
#End Region ' CONSTRUCTOR
@@ -2,27 +2,28 @@
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:EgtBEAMWALLSUPERVISOR="clr-namespace:EgtBEAMWALL.Supervisor"
xmlns:EgtBEAMWALLCORE="clr-namespace:EgtBEAMWALL.Core;assembly=EgtBEAMWALL.Core">
xmlns:EgtBEAMWALLCORE="clr-namespace:EgtBEAMWALL.Core;assembly=EgtBEAMWALL.Core"
xmlns:EgwWPFBaseLib="clr-namespace:EgwWPFBaseLib;assembly=EgwWPFBaseLib">
<EgtBEAMWALLCORE:EgtDataGrid ItemsSource="{Binding Tag.PartVMList,
RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALLSUPERVISOR:PartInRawPartListV}}}"
SelectedItem="{Binding Tag.SelPart,
RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALLSUPERVISOR:PartInRawPartListV}}}"
AutoGenerateColumns="False"
CanUserAddRows="False"
CanUserDeleteRows="False"
CanUserResizeRows="False"
SelectionMode="Single"
ScrollViewer.CanContentScroll="True"
ScrollViewer.VerticalScrollBarVisibility="Auto"
ScrollViewer.HorizontalScrollBarVisibility="Auto"
Margin="0,0,0,5"
BindingColumns="{Binding PartInRawPartColumns}"
AlternatingRowBackground="{StaticResource BeamWall_LinkWater}"
AlternationCount="2"
ColumnHeaderStyle="{StaticResource Main_DataGridColumnHeader}"
CellStyle="{StaticResource CellDataGrid_CustomHighLight}"
Style="{StaticResource Optimizer_DataGrid}">
<EgwWPFBaseLib:EgwDataGrid ItemsSource="{Binding Tag.PartVMList,
RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALLSUPERVISOR:PartInRawPartListV}}}"
SelectedItem="{Binding Tag.SelPart,
RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALLSUPERVISOR:PartInRawPartListV}}}"
AutoGenerateColumns="False"
CanUserAddRows="False"
CanUserDeleteRows="False"
CanUserResizeRows="False"
SelectionMode="Single"
ScrollViewer.CanContentScroll="True"
ScrollViewer.VerticalScrollBarVisibility="Auto"
ScrollViewer.HorizontalScrollBarVisibility="Auto"
Margin="0,0,0,5"
ColumnLayouts="{Binding PartInRawPartColumns}"
AlternatingRowBackground="{StaticResource BeamWall_LinkWater}"
AlternationCount="2"
ColumnHeaderStyle="{StaticResource Main_DataGridColumnHeader}"
CellStyle="{StaticResource CellDataGrid_CustomHighLight}"
Style="{StaticResource Optimizer_DataGrid}">
<DataGrid.RowStyle>
<Style TargetType="DataGridRow" BasedOn="{StaticResource RowDataGrid_CustomHighLight}">
<Setter Property="Background" Value="{Binding Production_Background}"/>
@@ -180,6 +181,6 @@
</DataGridTextColumn>
</DataGrid.Resources>
</EgtBEAMWALLCORE:EgtDataGrid>
</EgwWPFBaseLib:EgwDataGrid>
</UserControl>
@@ -1,58 +1,59 @@
Imports System.Collections.ObjectModel
Imports EgtBEAMWALL.Core
Imports EgtUILib
Imports System.IO
Public Class PartInRawPartListVM
Private m_colPartInRawPart_Offset As EgtDataGridColumn
Public ReadOnly Property colPartInRawPart_Offset As EgtDataGridColumn
Private m_colPartInRawPart_Offset As EgwWPFBaseLib.ColumnLayout
Public ReadOnly Property colPartInRawPart_Offset As EgwWPFBaseLib.ColumnLayout
Get
Return m_colPartInRawPart_Offset
End Get
End Property
Private m_colPartInRawPart_Rot As EgtDataGridColumn
Public ReadOnly Property colPartInRawPart_Rot As EgtDataGridColumn
Private m_colPartInRawPart_Rot As EgwWPFBaseLib.ColumnLayout
Public ReadOnly Property colPartInRawPart_Rot As EgwWPFBaseLib.ColumnLayout
Get
Return m_colPartInRawPart_Rot
End Get
End Property
Private m_colPartInRawPart_Flip As EgtDataGridColumn
Public ReadOnly Property colPartInRawPart_Flip As EgtDataGridColumn
Private m_colPartInRawPart_Flip As EgwWPFBaseLib.ColumnLayout
Public ReadOnly Property colPartInRawPart_Flip As EgwWPFBaseLib.ColumnLayout
Get
Return m_colPartInRawPart_Flip
End Get
End Property
Private m_colPartInRawPart_PosX As EgtDataGridColumn
Public ReadOnly Property colPartInRawPart_PosX As EgtDataGridColumn
Private m_colPartInRawPart_PosX As EgwWPFBaseLib.ColumnLayout
Public ReadOnly Property colPartInRawPart_PosX As EgwWPFBaseLib.ColumnLayout
Get
Return m_colPartInRawPart_PosX
End Get
End Property
Private m_colPartInRawPart_PosY As EgtDataGridColumn
Public ReadOnly Property colPartInRawPart_PosY As EgtDataGridColumn
Private m_colPartInRawPart_PosY As EgwWPFBaseLib.ColumnLayout
Public ReadOnly Property colPartInRawPart_PosY As EgwWPFBaseLib.ColumnLayout
Get
Return m_colPartInRawPart_PosY
End Get
End Property
Private m_colPartInRawPart_Redo As EgtDataGridColumn
Public ReadOnly Property colPartInRawPart_Redo As EgtDataGridColumn
Private m_colPartInRawPart_Redo As EgwWPFBaseLib.ColumnLayout
Public ReadOnly Property colPartInRawPart_Redo As EgwWPFBaseLib.ColumnLayout
Get
Return m_colPartInRawPart_Redo
End Get
End Property
Private m_PartInRawPartColumns As New ObservableCollection(Of EgtDataGridColumn)
Public Property PartInRawPartColumns As ObservableCollection(Of EgtDataGridColumn)
Private m_PartInRawPartColumns As New ObservableCollection(Of EgwWPFBaseLib.ColumnLayout)
Public Property PartInRawPartColumns As ObservableCollection(Of EgwWPFBaseLib.ColumnLayout)
Get
Return m_PartInRawPartColumns
End Get
Set(value As ObservableCollection(Of EgtDataGridColumn))
Set(value As ObservableCollection(Of EgwWPFBaseLib.ColumnLayout))
m_PartInRawPartColumns = value
End Set
End Property
@@ -133,22 +134,22 @@ Public Class PartInRawPartListVM
'' aggiungo riferimento a map
Map.SetRefPartInRawPartListVM(Me)
' carico le colonne della datagrid
Core.GetPrivateProfileColumns(S_PARTINRAWPARTLIST_SUPERVISOR, PartInRawPartColumns)
EgwWPFBaseLib.EgwDataGrid.ReadColumnLayout(Path.ChangeExtension(DataGridColumnsIniFile.m_sDataGridColumnsIniFile, ".json"), S_PARTINRAWPARTLIST_SUPERVISOR, PartInRawPartColumns)
' recupero riferimento a colonna Redo
m_colPartInRawPart_Redo = PartInRawPartColumns.FirstOrDefault(Function(x) x.Name = COL_REDO)
m_colPartInRawPart_Redo = PartInRawPartColumns.FirstOrDefault(Function(x) x.Key = COL_REDO)
' recupero riferimento a colonne Offset, Rot, Flip, PosX, PosY
m_colPartInRawPart_Offset = m_PartInRawPartColumns.FirstOrDefault(Function(x) x.Name = COL_OFFSET)
m_colPartInRawPart_Rot = m_PartInRawPartColumns.FirstOrDefault(Function(x) x.Name = COL_ROT)
m_colPartInRawPart_Flip = m_PartInRawPartColumns.FirstOrDefault(Function(x) x.Name = COL_FLIP)
m_colPartInRawPart_PosX = m_PartInRawPartColumns.FirstOrDefault(Function(x) x.Name = COL_POSX)
m_colPartInRawPart_PosY = m_PartInRawPartColumns.FirstOrDefault(Function(x) x.Name = COL_POSY)
m_colPartInRawPart_Offset = m_PartInRawPartColumns.FirstOrDefault(Function(x) x.Key = COL_OFFSET)
m_colPartInRawPart_Rot = m_PartInRawPartColumns.FirstOrDefault(Function(x) x.Key = COL_ROT)
m_colPartInRawPart_Flip = m_PartInRawPartColumns.FirstOrDefault(Function(x) x.Key = COL_FLIP)
m_colPartInRawPart_PosX = m_PartInRawPartColumns.FirstOrDefault(Function(x) x.Key = COL_POSX)
m_colPartInRawPart_PosY = m_PartInRawPartColumns.FirstOrDefault(Function(x) x.Key = COL_POSY)
' aggiorno la visibilità delle colonne
For Each col In PartInRawPartColumns
col.ColumnVisibility = If(col.Visible, Visibility.Visible, Visibility.Collapsed)
col.IsVisible = If(col.IsVisible, Visibility.Visible, Visibility.Collapsed)
Next
' nascondo colonna redo
If Not IsNothing(colPartInRawPart_Redo) Then
colPartInRawPart_Redo.ColumnVisibility = Visibility.Collapsed
colPartInRawPart_Redo.IsVisible = Visibility.Collapsed
End If
End Sub
@@ -157,49 +158,49 @@ Public Class PartInRawPartListVM
Friend Sub UpdateColumns(nMachType As MachineType)
If nMachType = MachineType.BEAM Then
If Not IsNothing(m_colPartInRawPart_Offset) Then
m_colPartInRawPart_Offset.ColumnVisibility = Visibility.Visible
m_colPartInRawPart_Offset.IsVisible = Visibility.Visible
End If
' aggiorno la visibilità delle colonne
For Each col In PartInRawPartColumns
col.ColumnVisibility = If(col.Visible, Visibility.Visible, Visibility.Collapsed)
col.IsVisible = If(col.IsVisible, Visibility.Visible, Visibility.Collapsed)
Next
If Not IsNothing(colPartInRawPart_Redo) Then
colPartInRawPart_Redo.ColumnVisibility = Visibility.Collapsed
colPartInRawPart_Redo.IsVisible = Visibility.Collapsed
End If
If Not IsNothing(m_colPartInRawPart_Rot) Then
m_colPartInRawPart_Rot.ColumnVisibility = Visibility.Collapsed
m_colPartInRawPart_Rot.IsVisible = Visibility.Collapsed
End If
If Not IsNothing(m_colPartInRawPart_Flip) Then
m_colPartInRawPart_Flip.ColumnVisibility = Visibility.Collapsed
m_colPartInRawPart_Flip.IsVisible = Visibility.Collapsed
End If
If Not IsNothing(m_colPartInRawPart_PosX) Then
m_colPartInRawPart_PosX.ColumnVisibility = Visibility.Collapsed
m_colPartInRawPart_PosX.IsVisible = Visibility.Collapsed
End If
If Not IsNothing(m_colPartInRawPart_PosY) Then
m_colPartInRawPart_PosY.ColumnVisibility = Visibility.Collapsed
m_colPartInRawPart_PosY.IsVisible = Visibility.Collapsed
End If
ElseIf nMachType = MachineType.WALL Then
If Not IsNothing(m_colPartInRawPart_Rot) Then
m_colPartInRawPart_Rot.ColumnVisibility = Visibility.Visible
m_colPartInRawPart_Rot.IsVisible = Visibility.Visible
End If
If Not IsNothing(m_colPartInRawPart_Flip) Then
m_colPartInRawPart_Flip.ColumnVisibility = Visibility.Visible
m_colPartInRawPart_Flip.IsVisible = Visibility.Visible
End If
If Not IsNothing(m_colPartInRawPart_PosX) Then
m_colPartInRawPart_PosX.ColumnVisibility = Visibility.Visible
m_colPartInRawPart_PosX.IsVisible = Visibility.Visible
End If
If Not IsNothing(m_colPartInRawPart_PosY) Then
m_colPartInRawPart_PosY.ColumnVisibility = Visibility.Visible
m_colPartInRawPart_PosY.IsVisible = Visibility.Visible
End If
' aggiorno la visibilità delle colonne
For Each col In PartInRawPartColumns
col.ColumnVisibility = If(col.Visible, Visibility.Visible, Visibility.Collapsed)
col.IsVisible = If(col.IsVisible, Visibility.Visible, Visibility.Collapsed)
Next
If Not IsNothing(colPartInRawPart_Redo) Then
colPartInRawPart_Redo.ColumnVisibility = Visibility.Collapsed
colPartInRawPart_Redo.IsVisible = Visibility.Collapsed
End If
If Not IsNothing(m_colPartInRawPart_Offset) Then
m_colPartInRawPart_Offset.ColumnVisibility = Visibility.Collapsed
m_colPartInRawPart_Offset.IsVisible = Visibility.Collapsed
End If
End If
End Sub
@@ -2,14 +2,15 @@
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:EgtBEAMWALLSUPERVISOR="clr-namespace:EgtBEAMWALL.Supervisor"
xmlns:EgtBEAMWALLCORE="clr-namespace:EgtBEAMWALL.Core;assembly=EgtBEAMWALL.Core">
<EgtBEAMWALLCORE:EgtDataGrid x:Name="MachGroupDataGrid"
xmlns:EgtBEAMWALLCORE="clr-namespace:EgtBEAMWALL.Core;assembly=EgtBEAMWALL.Core"
xmlns:EgwWPFBaseLib="clr-namespace:EgwWPFBaseLib;assembly=EgwWPFBaseLib">
<EgwWPFBaseLib:EgwDataGrid x:Name="MachGroupDataGrid"
ItemsSource="{Binding Tag.MachGroupVMList_View,
RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALLSUPERVISOR:RawPartListV}}}"
SelectedItem="{Binding Tag.SelectedMachGroup,
RelativeSource={RelativeSource AncestorType={x:Type EgtBEAMWALLSUPERVISOR:RawPartListV}}}"
BindingColumns="{Binding RawPartColumns}"
ColumnLayouts="{Binding RawPartColumns}"
Sorting="MachGroupVMList_Sorting"
IsSynchronizedWithCurrentItem="True"
AutoGenerateColumns="False"
@@ -125,5 +126,5 @@
</DataGridTextColumn>
</DataGrid.Resources>
</EgtBEAMWALLCORE:EgtDataGrid>
</EgwWPFBaseLib:EgwDataGrid>
</UserControl>
@@ -10,7 +10,7 @@ Public Class RawPartListV
' Add any initialization after the InitializeComponent() call.
MyComparer.SetDataGrid(MachGroupDataGrid)
AddHandler MachGroupDataGrid.ResetSort, AddressOf MachGroupDataGrid_ResetSort
'AddHandler MachGroupDataGrid.ResetSort, AddressOf MachGroupDataGrid_ResetSort
End Sub
' funzione che permette di selezionare un RawPart anche quando gia' selezionato
@@ -61,7 +61,7 @@ Friend Class MyComparer
For Each col In DataGrid.Columns
If Not IsNothing(col.SortDirection) Then
m_ColumnList.Add(col)
m_EgtColumnList.Add(Map.refRawPartListVM.RawPartColumns(col.DisplayIndex))
'm_EgtColumnList.Add(Map.refRawPartListVM.RawPartColumns(col.DisplayIndex))
End If
Next
Map.refRawPartListVM.SetRawPartListSorted(m_ColumnList.Count > 0)
@@ -1,8 +1,11 @@
Imports System.Collections.ObjectModel
Imports EgtBEAMWALL.Core
Imports EgtUILib
Imports System.IO
Imports EgtWPFLib5
Public Class RawPartListVM
Inherits VMBase
#Region "FIELDS & PROPERTIES"
@@ -17,26 +20,26 @@ Public Class RawPartListVM
Map.refLeftPanelVM.NotifyPropertyChanged(NameOf(Map.refLeftPanelVM.MoveRawPart_IsEnabled))
End Sub
Private m_colRawPart_StartCut As EgtDataGridColumn
Public ReadOnly Property colRawPart_StartCut As EgtDataGridColumn
Private m_colRawPart_StartCut As EgwWPFBaseLib.ColumnLayout
Public ReadOnly Property colRawPart_StartCut As EgwWPFBaseLib.ColumnLayout
Get
Return m_colRawPart_StartCut
End Get
End Property
Private m_colRawPart_PosZ As EgtDataGridColumn
Public ReadOnly Property colRawPart_PosZ As EgtDataGridColumn
Private m_colRawPart_PosZ As EgwWPFBaseLib.ColumnLayout
Public ReadOnly Property colRawPart_PosZ As EgwWPFBaseLib.ColumnLayout
Get
Return m_colRawPart_PosZ
End Get
End Property
Private m_RawPartColumns As New ObservableCollection(Of EgtDataGridColumn)
Public Property RawPartColumns As ObservableCollection(Of EgtDataGridColumn)
Private m_RawPartColumns As New ObservableCollection(Of EgwWPFBaseLib.ColumnLayout)
Public Property RawPartColumns As ObservableCollection(Of EgwWPFBaseLib.ColumnLayout)
Get
Return m_RawPartColumns
End Get
Set(value As ObservableCollection(Of EgtDataGridColumn))
Set(value As ObservableCollection(Of EgwWPFBaseLib.ColumnLayout))
m_RawPartColumns = value
End Set
End Property
@@ -107,10 +110,10 @@ Public Class RawPartListVM
' Aggiungo riferimento a Map
Map.SetRefRawPartListVM(Me)
' carico le colonne della datagrid
GetPrivateProfileColumns(S_RAWPARTLIST_SUPERVISOR, RawPartColumns)
EgwWPFBaseLib.EgwDataGrid.ReadColumnLayout(Path.ChangeExtension(DataGridColumnsIniFile.m_sDataGridColumnsIniFile, ".json"), S_RAWPARTLIST_SUPERVISOR, RawPartColumns)
' recupero riferimento a colonna StartCut e PosZ
m_colRawPart_StartCut = m_RawPartColumns.FirstOrDefault(Function(x) x.Name = COL_STARTCUT)
m_colRawPart_PosZ = m_RawPartColumns.FirstOrDefault(Function(x) x.Name = COL_POSZ)
m_colRawPart_StartCut = m_RawPartColumns.FirstOrDefault(Function(x) x.Key = COL_STARTCUT)
m_colRawPart_PosZ = m_RawPartColumns.FirstOrDefault(Function(x) x.Key = COL_POSZ)
End Sub
#End Region ' CONSTRUCTOR
@@ -119,26 +122,29 @@ Public Class RawPartListVM
If nMachType = MachineType.BEAM Then
' aggiorno la visibilità delle colonne
For Each col In RawPartColumns
col.ColumnVisibility = If(col.Visible, Visibility.Visible, Visibility.Collapsed)
col.IsVisible = If(col.IsVisible, Visibility.Visible, Visibility.Collapsed)
Next
If Not IsNothing(m_colRawPart_StartCut) Then
m_colRawPart_StartCut.ColumnVisibility = Visibility.Visible
m_colRawPart_StartCut.IsVisible = Visibility.Collapsed
End If
If Not IsNothing(m_colRawPart_PosZ) Then
m_colRawPart_PosZ.ColumnVisibility = Visibility.Collapsed
m_colRawPart_PosZ.IsVisible = Visibility.Visible
End If
ElseIf nMachType = MachineType.WALL Then
' aggiorno la visibilità delle colonne
For Each col In RawPartColumns
col.ColumnVisibility = If(col.Visible, Visibility.Visible, Visibility.Collapsed)
col.IsVisible = If(col.IsVisible, Visibility.Visible, Visibility.Collapsed)
Next
If Not IsNothing(m_colRawPart_StartCut) Then
m_colRawPart_StartCut.ColumnVisibility = Visibility.Collapsed
m_colRawPart_StartCut.IsVisible = Visibility.Visible
End If
If Not IsNothing(m_colRawPart_PosZ) Then
m_colRawPart_PosZ.ColumnVisibility = Visibility.Visible
m_colRawPart_PosZ.IsVisible = Visibility.Collapsed
End If
End If
NotifyPropertyChanged(NameOf(colRawPart_StartCut))
NotifyPropertyChanged(NameOf(colRawPart_PosZ))
NotifyPropertyChanged(NameOf(RawPartColumns))
End Sub
End Class
@@ -156,19 +156,19 @@ Public Class LeftPanelVM
m_bRestart = value
If value Then
If Not IsNothing(Map.refPartInRawPartListVM.colPartInRawPart_Redo) Then
Map.refPartInRawPartListVM.colPartInRawPart_Redo.ColumnVisibility = Visibility.Visible
Map.refPartInRawPartListVM.colPartInRawPart_Redo.IsVisible = Visibility.Visible
End If
If Not IsNothing(Map.refFeatureInPartInRawPartListVM.colFeatureInPartInRawPart_Redo) Then
Map.refFeatureInPartInRawPartListVM.colFeatureInPartInRawPart_Redo.ColumnVisibility = Visibility.Visible
Map.refFeatureInPartInRawPartListVM.colFeatureInPartInRawPart_Redo.IsVisible = Visibility.Visible
End If
' disabilito interfaccia
Map.refProjectVM.ManageIsEnabled(False)
Else
If Not IsNothing(Map.refPartInRawPartListVM.colPartInRawPart_Redo) Then
Map.refPartInRawPartListVM.colPartInRawPart_Redo.ColumnVisibility = Visibility.Collapsed
Map.refPartInRawPartListVM.colPartInRawPart_Redo.IsVisible = Visibility.Collapsed
End If
If Not IsNothing(Map.refFeatureInPartInRawPartListVM.colFeatureInPartInRawPart_Redo) Then
Map.refFeatureInPartInRawPartListVM.colFeatureInPartInRawPart_Redo.ColumnVisibility = Visibility.Collapsed
Map.refFeatureInPartInRawPartListVM.colFeatureInPartInRawPart_Redo.IsVisible = Visibility.Collapsed
End If
' riabilito interfaccia
Map.refProjectVM.ManageIsEnabled(True)
@@ -186,44 +186,6 @@ Public Class MachinePanelVM
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)
@@ -318,43 +280,8 @@ Public Class MachinePanelVM
#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
#Region "ParameterMachine"
''' <summary>
''' Returns a command that do Exec.
''' </summary>
Public ReadOnly Property ParameterMachine_Command As ICommand
Get
If m_cmdParameterMachine Is Nothing Then
@@ -221,7 +221,7 @@ Public Class MainMenuVM
End If
' aggiorno la visibilità delle colonne
For Each col In Map.refFeatureInPartInRawPartListVM.FeatureInPartInRawPartColumns
col.ColumnVisibility = If(col.Visible, Visibility.Visible, Visibility.Collapsed)
col.IsVisible = If(col.IsVisible, Visibility.Visible, Visibility.Collapsed)
Next
Map.refMainWindowVM.NotifyPropertyChanged(NameOf(Map.refMainWindowVM.nSelTabPage))
Return True
@@ -203,7 +203,7 @@ Public Class MainWindowM
' Impostazione path BTL Ini File
BTLIniFile.m_sBTLIniFile = m_sConfigDir & "\" & BTLFEATURES_FILE_NAME
' Impostazione path Ini file DataGrid
DataGridColumnsIniFile.m_sDataGridColumnsIniFile = m_sConfigDir & "\" & DATAGRIDCOLUMNS_FILE_NAME
DataGridColumnsIniFile.m_sDataGridColumnsIniFile = m_sConfigDir & "\" & OPTIMIZERDATAGRIDCOLUMNS_FILE_NAME
' Impostazione path Ini file Dimensioni
DimensionsIniFile.m_sDimensionsIniFile = m_sConfigDir & "\" & ConstDims.DIMENSIONS_FILE_NAME
' Impostazione path resources dir
@@ -37,6 +37,7 @@ Public Class MainWindowV
End Sub
Private Sub MainWindowV_Closing(sender As Object, e As System.ComponentModel.CancelEventArgs)
m_MainWindowVM.CloseApplication()
' Salvo posizione finestra (se non minimizzata)
If WindowState <> WindowState.Minimized Then
WinPosFromWindowToIni(Me, S_GENERAL, K_SUPERVISORWINPLACE)
@@ -1,4 +1,5 @@
Imports System.IO
Imports System.Collections.ObjectModel
Imports System.IO
Imports System.Threading
Imports EgtBEAMWALL.Core
Imports EgtWPFLib5
@@ -207,10 +208,15 @@ Public Class MainWindowVM
ViewerOptimizerCommThread.StopThread()
' Verifico modifica parametri in Configurazione e chiedo il salvataggio
If Map.refMainMenuVM.SelPage = Pages.CONFIG Then Map.refConfigurationPageVM.VerifyConfigPageModification()
' salvo tabelle
Dim DataGridColumnDictionary As New Dictionary(Of String, ObservableCollection(Of EgwWPFBaseLib.ColumnLayout)) From {{S_RAWPARTLIST_SUPERVISOR, Map.refRawPartListVM.RawPartColumns},
{S_PARTINRAWPARTLIST_SUPERVISOR, Map.refPartInRawPartListVM.PartInRawPartColumns},
{S_FEATUREINPARTINRAWPARTLIST_SUPERVISOR, Map.refFeatureInPartInRawPartListVM.FeatureInPartInRawPartColumns}}
EgwWPFBaseLib.EgwDataGrid.WriteColumnLayout(Path.ChangeExtension(DataGridColumnsIniFile.m_sDataGridColumnsIniFile, ".json"), DataGridColumnDictionary)
' Termino il Model
MainWindowM.Close()
' Chiudo la finestra principale del programma
Application.Current.MainWindow.Close()
Application.Current.Shutdown()
End Sub
#End Region ' CloseApplication
@@ -70,5 +70,5 @@ Imports System.Windows
' by using the '*' as shown below:
' <Assembly: AssemblyVersion("1.0.*")>
<Assembly: AssemblyVersion("2.7.11.9")>
<Assembly: AssemblyFileVersion("2.7.11.9")>
<Assembly: AssemblyVersion("2.7.11.10")>
<Assembly: AssemblyFileVersion("2.7.11.10")>