diff --git a/Constants/ConstMachIni.vb b/Constants/ConstMachIni.vb
index 7e83cf0..1119149 100644
--- a/Constants/ConstMachIni.vb
+++ b/Constants/ConstMachIni.vb
@@ -276,6 +276,7 @@
Public Const K_CURRDRIPSAWING As String = "CurrDripSawing"
Public Const K_CURRDRIPDRILLING As String = "CurrDripDrilling"
Public Const K_CURRWATERJETTING As String = "CurrWaterJetting"
+ Public Const K_CURRWATERJETTINGQUALITY As String = "CurrWaterJettingQualilty"
Public Const S_MATERIALS As String = "Materials"
Public Const K_CURRMATERIAL As String = "CurrMaterial"
diff --git a/Machine/AlarmsPageUC.xaml.vb b/Machine/AlarmsPageUC.xaml.vb
index 8d1e2f9..65ceda1 100644
--- a/Machine/AlarmsPageUC.xaml.vb
+++ b/Machine/AlarmsPageUC.xaml.vb
@@ -184,6 +184,11 @@ Public Class AlarmsPageUC
' Seleziono lama corrente
CurrSawCmBx.SelectedItem = m_CurrentMachine.sCurrSaw
+ ' nascondo la lista dei materiali solo se macchina WaterJet
+ If m_CurrentMachine.bWaterJet Then
+ MaterialsGpBx.Visibility = Visibility.Hidden
+ End If
+
' Verifico la configurazione della macchina per creare i combobox
Select Case m_CurrentMachine.MountedToolConfig
Case CurrentMachine.MountedToolConfigs.SAW
diff --git a/Machine/CurrentMachine.vb b/Machine/CurrentMachine.vb
index 5588f9b..77b7c72 100644
--- a/Machine/CurrentMachine.vb
+++ b/Machine/CurrentMachine.vb
@@ -1,4 +1,5 @@
Imports System.Collections.ObjectModel
+Imports EgtWPFLib5
Imports EgtUILib
Public Class CurrentMachine
@@ -114,6 +115,7 @@ Public Class CurrentMachine
Private m_sCurrDripSawing As String = String.Empty
Private m_sCurrDripDrilling As String = String.Empty
Private m_sCurrWaterJetting As String = String.Empty
+ Private m_sCurrWaterJettingQuality As String = String.Empty
' Spessore sottopezzo
Private m_dAdditionalTable As Double = 0
@@ -157,6 +159,9 @@ Public Class CurrentMachine
' Lista dei materiali
Private m_Materials As New ObservableCollection(Of Material)
+ ' Lista delle qualità di lavorazioni disponibili nel WaterJet
+ Private m_Qaulities As New ObservableCollection(Of String)
+
' Massimo id della lista materiali nel file ini
Private m_MaxIdMat As Integer = 0
@@ -709,6 +714,17 @@ Public Class CurrentMachine
End Set
End Property
+ Friend Property sCurrWaterJettingQuality As String
+ Get
+ Return m_sCurrWaterJettingQuality
+ End Get
+ Set(value As String)
+ If WritePrivateProfileString(S_MACH_MACH, K_CURRWATERJETTINGQUALITY, value, sMachIniFile) Then
+ m_sCurrWaterJettingQuality = value
+ End If
+ End Set
+ End Property
+
Friend ReadOnly Property WaterJettingActive As Double
Get
Return m_bWaterJetting AndAlso Not String.IsNullOrWhiteSpace(m_sCurrWaterJetting)
@@ -903,6 +919,12 @@ Public Class CurrentMachine
End Get
End Property
+ Friend ReadOnly Property Qualities As ObservableCollection(Of String)
+ Get
+ Return m_Qaulities
+ End Get
+ End Property
+
Friend Sub AddMaterial(value As Material)
For Each Material As Material In Materials
If Material.nId = value.nId Then
@@ -984,7 +1006,11 @@ Public Class CurrentMachine
End Get
Set(value As Material)
Dim CurrMatId As String = If(Not IsNothing(value), value.nId.ToString, "")
- WritePrivateProfileString(S_MATERIALS, K_CURRMATERIAL, CurrMatId, sMachIniFile)
+ If bWaterJet Then
+ WritePrivateProfileString(S_MATERIALS, K_CURRMATERIAL, CurrMatId & If(Not IsNothing(value), "." & value.SubId, ""), sMachIniFile)
+ Else
+ WritePrivateProfileString(S_MATERIALS, K_CURRMATERIAL, CurrMatId, sMachIniFile)
+ End If
m_CurrMat = value
End Set
End Property
@@ -1157,6 +1183,8 @@ Public Class CurrentMachine
GetPrivateProfileString(S_MACH_MACH, K_CURRDRIPDRILLING, Nothing, m_sCurrDripDrilling, sMachIniFile)
' waterjetting
GetPrivateProfileString(S_MACH_MACH, K_CURRWATERJETTING, Nothing, m_sCurrWaterJetting, sMachIniFile)
+ ' waterjettingquality
+ GetPrivateProfileString(S_MACH_MACH, K_CURRWATERJETTINGQUALITY, Nothing, m_sCurrWaterJettingQuality, sMachIniFile)
' Leggo numero di portautensili
m_ToolChangerNbr = GetPrivateProfileInt(S_TOOLCHANGER, K_NUMBER, 0, sMachIniFile)
@@ -1218,27 +1246,84 @@ Public Class CurrentMachine
' Leggo la lista dei materiali
Dim Material As Material = Nothing
Dim nIndex As Integer = 1
- While (GetPrivateProfileMaterial(S_MATERIALS, K_MATERIAL & nIndex, Material, sMachIniFile))
- m_Materials.Add(Material)
- nIndex += 1
- End While
+
+ If m_bWaterJet Then
+ LoadWJMaterial(True)
+ Else
+ While (GetPrivateProfileMaterial(S_MATERIALS, K_MATERIAL & nIndex, Material, sMachIniFile))
+ m_Materials.Add(Material)
+ nIndex += 1
+ End While
+ End If
+
' Salvo massimo indice a cui sono arrivato per usarlo quando devo aggiungere nuovi elementi alla lista
m_MaxIdMat = nIndex - 1
' Leggo materiale correntemente attivo
- Dim CurrMatId As Integer = GetPrivateProfileInt(S_MATERIALS, K_CURRMATERIAL, 0, sMachIniFile)
- For Each Material In Materials
- If Material.nId = CurrMatId Then
- m_CurrMat = Material
- Exit For
+ Dim sCurrMatId As String = String.Empty
+ EgtUILib.GetPrivateProfileString(S_MATERIALS, K_CURRMATERIAL, "0", sCurrMatId, sMachIniFile)
+ If bWaterJet Then
+ Dim sCurrMatIds As String()
+ sCurrMatIds = sCurrMatId.Split("."c)
+ If sCurrMatIds.Length > 1 Then
+ Dim nCurrMatId As Integer
+ Dim nCurrSubMatId As Integer
+ If Not Integer.TryParse(sCurrMatIds(0), nCurrMatId) Then nCurrMatId = 0
+ If Not Integer.TryParse(sCurrMatIds(1), nCurrSubMatId) Then nCurrSubMatId = 0
+ For Each Material In Materials
+ If Material.nId = nCurrMatId AndAlso Material.SubId = nCurrSubMatId Then
+ m_CurrMat = Material
+ Exit For
+ End If
+ Next
End If
- Next
+ Else
+ Dim nCurrMatId As Integer
+ If Not Integer.TryParse(sCurrMatId, nCurrMatId) Then nCurrMatId = 0
+ For Each Material In Materials
+ If Material.nId = nCurrMatId Then
+ m_CurrMat = Material
+ Exit For
+ End If
+ Next
+ End If
' leggo se la macchina ha il tastatore dello spessore tavola
m_HasRawProbe = (GetPrivateProfileInt(S_MACH_PROBING, K_ENABLERAWPROBE, 1, sMachIniFile) <> 0)
' leggo se la macchina ha il lettore di codice a barre della lastra
m_nEnableBarCodeReader = GetPrivateProfileInt(S_MACH_BARCODEREADER, K_ENABLEBCR, 0, sMachIniFile)
End Sub
+ Public Sub LoadWJMaterial(Optional bIsStart As Boolean = False)
+ Dim TempCurrMat As Material = CurrMat
+ ' Svuoto l'attuale lista di materiali
+ m_Materials.Clear()
+ ' Leggo valori da file INI e li carico nelle proprietà
+ Dim sFilePath As String = sMachDir & "\" & "WaterjetDb" & ".ini"
+ Dim Local_MaterialList = New ObservableCollection(Of EgtWPFLib5.WjMaterial)
+ Local_MaterialList = EgtWPFLib5.WaterjetDbWindowVM.LoadWjMaterials(sFilePath)
+ ' definisco la lista delle qualità
+ m_Qaulities.Add("")
+ m_Qaulities.Add("Q1")
+ m_Qaulities.Add("Q2")
+ m_Qaulities.Add("Q3")
+ m_Qaulities.Add("Q4")
+ m_Qaulities.Add("Q5")
+ m_Qaulities.Add("QExtra")
+ ' inserisco il materiale generico di default -- IN SOSPESO
+ 'm_Materials.Add(New Material(0, "***", 0))
+ ' costruiscoi la lista
+ Dim i As Integer = 0
+ Dim sName As String = String.Empty
+ For i = 0 To Local_MaterialList.Count - 1
+ sName = Local_MaterialList(i).Name
+ Dim j As Integer = 0
+ For j = 0 To Local_MaterialList(i).SubMaterialList.Count - 1
+ m_Materials.Add(New Material(i + 1, sName & "." & Local_MaterialList(i).SubMaterialList(j).Name, j + 1))
+ Next
+ Next
+ If Not bIsStart Then CurrMat = TempCurrMat
+ End Sub
+
Friend Function IsVacuumMovePossible() As Boolean
' Recupero diametro lama corrente
EgtTdbSetCurrTool(sCurrSaw)
@@ -1333,6 +1418,7 @@ Friend Class Material
Private m_nId As Integer
Private m_sName As String
+ Private m_SubId As Integer = 0
Public ReadOnly Property nId As Integer
Get
@@ -1349,6 +1435,15 @@ Friend Class Material
End Set
End Property
+ Public Property SubId As Integer
+ Get
+ Return m_SubId
+ End Get
+ Set(value As Integer)
+ m_SubId = value
+ End Set
+ End Property
+
Sub New(sName As String, MaterialList As ObservableCollection(Of Material))
Dim nMaxId As Integer = 0
For Each Material As Material In MaterialList
@@ -1365,4 +1460,11 @@ Friend Class Material
m_sName = sName
End Sub
+ Sub New(nId As Integer, sName As String, nSubId As Integer)
+ m_nId = nId
+ m_sName = sName
+ m_SubId = nSubId
+ End Sub
+
End Class
+
diff --git a/Machine/MachinePageUC.xaml b/Machine/MachinePageUC.xaml
index add5cff..c884f5f 100644
--- a/Machine/MachinePageUC.xaml
+++ b/Machine/MachinePageUC.xaml
@@ -24,9 +24,10 @@
-
-
+
+
+
@@ -41,10 +42,13 @@
-
+
+
+
+
-
+
diff --git a/Machine/MachinePageUC.xaml.vb b/Machine/MachinePageUC.xaml.vb
index 8fb3167..8b6c32c 100644
--- a/Machine/MachinePageUC.xaml.vb
+++ b/Machine/MachinePageUC.xaml.vb
@@ -10,6 +10,7 @@ Public Class MachinePageUC
Friend m_ToolsDbPageUC As ToolsDbPageUC
Friend m_MachiningDbPageUC As MachiningDbPageUC
Friend m_PolishingsPageUC As PolishingsPageUC
+ Friend m_WaterJetPageUC As WaterJetPageUC
Friend m_MachineCNPageUC As MachineCNPageUC
Friend m_StatisticsPageUC As StatisticsPageUC
@@ -21,6 +22,7 @@ Public Class MachinePageUC
ToolsDb
MachiningDb
Polishings
+ WaterJet
MachineCN
Statistics
End Enum
@@ -32,6 +34,7 @@ Public Class MachinePageUC
m_ToolsDbPageUC = New ToolsDbPageUC
m_MachiningDbPageUC = New MachiningDbPageUC
m_PolishingsPageUC = New PolishingsPageUC
+ m_WaterJetPageUC = New WaterJetPageUC
m_MachineCNPageUC = New MachineCNPageUC
m_StatisticsPageUC = New StatisticsPageUC
@@ -40,6 +43,7 @@ Public Class MachinePageUC
m_ToolsDbPageUC.SetValue(Grid.RowProperty, 1)
m_MachiningDbPageUC.SetValue(Grid.RowProperty, 1)
m_PolishingsPageUC.SetValue(Grid.RowProperty, 1)
+ m_WaterJetPageUC.SetValue(Grid.RowProperty, 1)
m_MachineCNPageUC.SetValue(Grid.RowProperty, 1)
m_StatisticsPageUC.SetValue(Grid.RowProperty, 1)
@@ -47,6 +51,7 @@ Public Class MachinePageUC
ToolsDBBtn.ToolTip = EgtMsg(MSG_MACHINEPAGEUC + 6)
MachiningDBBtn.ToolTip = EgtMsg(MSG_MACHINEPAGEUC + 7)
PolishingsBtn.Content = EgtMsg(91090)
+ WaterJetBtn.Content = EgtMsg(91128)
TestingPageBtn.ToolTip = EgtMsg(MSG_MACHINEPAGEUC + 8)
StatisticsBtn.Content = EgtMsg(90709)
@@ -55,10 +60,14 @@ Public Class MachinePageUC
m_ActiveMachinePage = MachinePages.Alarms
' Se lucidature non abilitate, disattivo la pagina DB lucidature
- If Not m_MainWindow.m_CurrentMachine.bPolishing Then
+ If Not m_MainWindow.m_CurrentMachine.bPolishing Then
PolishingsBtn.IsEnabled = False
End If
+ If Not m_MainWindow.m_CurrentMachine.bWaterJet Then
+ WaterJetBtn.IsEnabled = False
+ End If
+
' Se controllo numerico 0, disattivo la pagina macchina
If GetPrivateProfileInt(S_NUMERICALCONTROL, K_TYPE, 0, m_MainWindow.GetMachIniFile()) = 0 Then
TestingPageBtn.IsEnabled = False
@@ -134,6 +143,22 @@ Public Class MachinePageUC
MachinePageGrid.Children.Remove(m_PolishingsPageUC)
MachinePageGrid.Children.Add(m_AlarmsPageUC)
m_ActiveMachinePage = MachinePages.Alarms
+ Case MachinePages.WaterJet
+ ' Verifica ed eventuale salvataggio Db Waterjet
+ Dim nPressedBtn As Integer = DirectCast(m_WaterJetPageUC.DataContext, EgtWPFLib5.WaterjetDbWindowVM).CloseWaterjetDb_OmagCut(m_MainWindow)
+ If nPressedBtn = EgtWPFLib5.WaterjetDbWindowVM.SaveWndBtnEnum.CANCEL Then
+ AlarmsBtn.IsChecked = False
+ WaterJetBtn.IsChecked = True
+ Return
+ ElseIf nPressedBtn = EgtWPFLib5.WaterjetDbWindowVM.SaveWndBtnEnum.NO Then
+ m_WaterJetPageUC.WaterJetPage_Reinitialize()
+ End If
+ ' passo alla pagina Dati Macchina
+ AlarmsBtn.IsChecked = True
+ WaterJetBtn.IsChecked = False
+ MachinePageGrid.Children.Remove(m_WaterJetPageUC)
+ MachinePageGrid.Children.Add(m_AlarmsPageUC)
+ m_ActiveMachinePage = MachinePages.Alarms
Case MachinePages.MachineCN
AlarmsBtn.IsChecked = True
TestingPageBtn.IsChecked = False
@@ -188,6 +213,22 @@ Public Class MachinePageUC
MachinePageGrid.Children.Remove(m_PolishingsPageUC)
MachinePageGrid.Children.Add(m_ToolsDbPageUC)
m_ActiveMachinePage = MachinePages.ToolsDb
+ Case MachinePages.WaterJet
+ 'Verifica ed eventuale salvataggio Db Waterjet
+ Dim nPressedBtn As Integer = DirectCast(m_WaterJetPageUC.DataContext, EgtWPFLib5.WaterjetDbWindowVM).CloseWaterjetDb_OmagCut(m_MainWindow)
+ If nPressedBtn = EgtWPFLib5.WaterjetDbWindowVM.SaveWndBtnEnum.CANCEL Then
+ ToolsDBBtn.IsChecked = False
+ WaterJetBtn.IsChecked = True
+ Return
+ ElseIf nPressedBtn = EgtWPFLib5.WaterjetDbWindowVM.SaveWndBtnEnum.NO Then
+ m_WaterJetPageUC.WaterJetPage_Reinitialize()
+ End If
+ ' passo alla pagina Dati Macchina
+ ToolsDBBtn.IsChecked = True
+ WaterJetBtn.IsChecked = False
+ MachinePageGrid.Children.Remove(m_WaterJetPageUC)
+ MachinePageGrid.Children.Add(m_ToolsDbPageUC)
+ m_ActiveMachinePage = MachinePages.ToolsDb
Case MachinePages.MachineCN
ToolsDBBtn.IsChecked = True
TestingPageBtn.IsChecked = False
@@ -242,6 +283,22 @@ Public Class MachinePageUC
MachinePageGrid.Children.Remove(m_PolishingsPageUC)
MachinePageGrid.Children.Add(m_MachiningDbPageUC)
m_ActiveMachinePage = MachinePages.MachiningDb
+ Case MachinePages.WaterJet
+ ' Verifica ed eventuale salvataggio Db Waterjet
+ Dim nPressedBtn As Integer = DirectCast(m_WaterJetPageUC.DataContext, EgtWPFLib5.WaterjetDbWindowVM).CloseWaterjetDb_OmagCut(m_MainWindow)
+ If nPressedBtn = EgtWPFLib5.WaterjetDbWindowVM.SaveWndBtnEnum.CANCEL Then
+ MachiningDBBtn.IsChecked = False
+ WaterJetBtn.IsChecked = True
+ Return
+ ElseIf nPressedBtn = EgtWPFLib5.WaterjetDbWindowVM.SaveWndBtnEnum.NO Then
+ m_WaterJetPageUC.WaterJetPage_Reinitialize()
+ End If
+ ' passo alla pagina Dati Macchina
+ MachiningDBBtn.IsChecked = True
+ WaterJetBtn.IsChecked = False
+ MachinePageGrid.Children.Remove(m_WaterJetPageUC)
+ MachinePageGrid.Children.Add(m_MachiningDbPageUC)
+ m_ActiveMachinePage = MachinePages.MachiningDb
Case MachinePages.MachineCN
MachiningDBBtn.IsChecked = True
TestingPageBtn.IsChecked = False
@@ -299,6 +356,22 @@ Public Class MachinePageUC
m_ActiveMachinePage = MachinePages.Polishings
Case MachinePages.Polishings
PolishingsBtn.IsChecked = True
+ Case MachinePages.WaterJet
+ ' Verifica ed eventuale salvataggio Db Waterjet
+ Dim nPressedBtn As Integer = DirectCast(m_WaterJetPageUC.DataContext, EgtWPFLib5.WaterjetDbWindowVM).CloseWaterjetDb_OmagCut(m_MainWindow)
+ If nPressedBtn = EgtWPFLib5.WaterjetDbWindowVM.SaveWndBtnEnum.CANCEL Then
+ PolishingsBtn.IsChecked = False
+ WaterJetBtn.IsChecked = True
+ Return
+ ElseIf nPressedBtn = EgtWPFLib5.WaterjetDbWindowVM.SaveWndBtnEnum.NO Then
+ m_WaterJetPageUC.WaterJetPage_Reinitialize()
+ End If
+ ' passo alla pagina Dati Macchina
+ PolishingsBtn.IsChecked = True
+ WaterJetBtn.IsChecked = False
+ MachinePageGrid.Children.Remove(m_WaterJetPageUC)
+ MachinePageGrid.Children.Add(m_PolishingsPageUC)
+ m_ActiveMachinePage = MachinePages.Polishings
Case MachinePages.MachineCN
PolishingsBtn.IsChecked = True
TestingPageBtn.IsChecked = False
@@ -314,6 +387,77 @@ Public Class MachinePageUC
End Select
End Sub
+ Private Sub WaterJetBtn_Click(sender As Object, e As RoutedEventArgs) Handles WaterJetBtn.Click
+ Select Case m_ActiveMachinePage
+ Case MachinePages.Alarms
+ AlarmsBtn.IsChecked = False
+ WaterJetBtn.IsChecked = True
+ MachinePageGrid.Children.Remove(m_AlarmsPageUC)
+ MachinePageGrid.Children.Add(m_WaterJetPageUC)
+ m_ActiveMachinePage = MachinePages.WaterJet
+ 'DirectCast(m_WaterJetPageUC.DataContext, WaterjetDbWindowVM).RefreshDImensionPage()
+ Case MachinePages.ToolsDb
+ ' Verifica ed eventuale salvataggio utensile corrente
+ If Not m_ToolsDbPageUC.SaveCurrTool() Then
+ PolishingsBtn.IsChecked = False
+ ToolsDBBtn.IsChecked = True
+ Return
+ End If
+ ' salvo il DB utensili
+ EgtSetCurrentContext(m_MainWindow.m_CurrentProjectPageUC.CurrentProjectScene.GetCtx())
+ EgtTdbSave()
+ ' passo alla pagina WaterJet
+ WaterJetBtn.IsChecked = True
+ ToolsDBBtn.IsChecked = False
+ MachinePageGrid.Children.Remove(m_ToolsDbPageUC)
+ MachinePageGrid.Children.Add(m_WaterJetPageUC)
+ m_ActiveMachinePage = MachinePages.WaterJet
+ Case MachinePages.MachiningDb
+ ' Verifica ed eventuale salvataggio lavorazione corrente
+ If Not m_MachiningDbPageUC.SaveCurrMachining() Then
+ WaterJetBtn.IsChecked = False
+ MachiningDBBtn.IsChecked = True
+ Return
+ End If
+ ' salvo il DB lavorazioni
+ EgtSetCurrentContext(m_MainWindow.m_CurrentProjectPageUC.CurrentProjectScene.GetCtx())
+ EgtMdbSave()
+ ' passo alla pagina WaterJet
+ WaterJetBtn.IsChecked = True
+ MachiningDBBtn.IsChecked = False
+ MachinePageGrid.Children.Remove(m_MachiningDbPageUC)
+ MachinePageGrid.Children.Add(m_WaterJetPageUC)
+ m_ActiveMachinePage = MachinePages.WaterJet
+ Case MachinePages.Polishings
+ ' Verifica ed eventuale salvataggio Lucidatura corrente
+ If Not m_PolishingsPageUC.SaveKit() Then
+ WaterJetBtn.IsChecked = False
+ PolishingsBtn.IsChecked = True
+ Return
+ End If
+ ' passo alla pagina WaterJet
+ WaterJetBtn.IsChecked = True
+ PolishingsBtn.IsChecked = False
+ MachinePageGrid.Children.Remove(m_PolishingsPageUC)
+ MachinePageGrid.Children.Add(m_WaterJetPageUC)
+ m_ActiveMachinePage = MachinePages.WaterJet
+ Case MachinePages.WaterJet
+ WaterJetBtn.IsChecked = True
+ Case MachinePages.MachineCN
+ WaterJetBtn.IsChecked = True
+ TestingPageBtn.IsChecked = False
+ MachinePageGrid.Children.Remove(m_MachineCNPageUC)
+ MachinePageGrid.Children.Add(m_WaterJetPageUC)
+ m_ActiveMachinePage = MachinePages.WaterJet
+ Case MachinePages.Statistics
+ WaterJetBtn.IsChecked = True
+ StatisticsBtn.IsChecked = False
+ MachinePageGrid.Children.Remove(m_StatisticsPageUC)
+ MachinePageGrid.Children.Add(m_WaterJetPageUC)
+ m_ActiveMachinePage = MachinePages.WaterJet
+ End Select
+ End Sub
+
Private Sub TestingPageBtn_Checked(sender As Object, e As RoutedEventArgs) Handles TestingPageBtn.Checked
Select Case m_ActiveMachinePage
Case MachinePages.Alarms
@@ -367,6 +511,22 @@ Public Class MachinePageUC
MachinePageGrid.Children.Remove(m_PolishingsPageUC)
MachinePageGrid.Children.Add(m_MachineCNPageUC)
m_ActiveMachinePage = MachinePages.MachineCN
+ Case MachinePages.WaterJet
+ ' Verifica ed eventuale salvataggio Db Waterjet
+ Dim nPressedBtn As Integer = DirectCast(m_WaterJetPageUC.DataContext, EgtWPFLib5.WaterjetDbWindowVM).CloseWaterjetDb_OmagCut(m_MainWindow)
+ If nPressedBtn = EgtWPFLib5.WaterjetDbWindowVM.SaveWndBtnEnum.CANCEL Then
+ TestingPageBtn.IsChecked = False
+ WaterJetBtn.IsChecked = True
+ Return
+ ElseIf nPressedBtn = EgtWPFLib5.WaterjetDbWindowVM.SaveWndBtnEnum.NO Then
+ m_WaterJetPageUC.WaterJetPage_Reinitialize()
+ End If
+ ' passo alla pagina Dati Macchina
+ TestingPageBtn.IsChecked = True
+ WaterJetBtn.IsChecked = False
+ MachinePageGrid.Children.Remove(m_WaterJetPageUC)
+ MachinePageGrid.Children.Add(m_MachineCNPageUC)
+ m_ActiveMachinePage = MachinePages.MachineCN
Case MachinePages.MachineCN
TestingPageBtn.IsChecked = True
Case MachinePages.Statistics
@@ -431,6 +591,22 @@ Public Class MachinePageUC
MachinePageGrid.Children.Remove(m_PolishingsPageUC)
MachinePageGrid.Children.Add(m_StatisticsPageUC)
m_ActiveMachinePage = MachinePages.Statistics
+ Case MachinePages.WaterJet
+ ' Verifica ed eventuale salvataggio Db Waterjet
+ Dim nPressedBtn As Integer = DirectCast(m_WaterJetPageUC.DataContext, EgtWPFLib5.WaterjetDbWindowVM).CloseWaterjetDb_OmagCut(m_MainWindow)
+ If nPressedBtn = EgtWPFLib5.WaterjetDbWindowVM.SaveWndBtnEnum.CANCEL Then
+ StatisticsBtn.IsChecked = False
+ WaterJetBtn.IsChecked = True
+ Return
+ ElseIf nPressedBtn = EgtWPFLib5.WaterjetDbWindowVM.SaveWndBtnEnum.NO Then
+ m_WaterJetPageUC.WaterJetPage_Reinitialize()
+ End If
+ ' passo alla pagina Dati Macchina
+ TestingPageBtn.IsChecked = True
+ WaterJetBtn.IsChecked = False
+ MachinePageGrid.Children.Remove(m_WaterJetPageUC)
+ MachinePageGrid.Children.Add(m_StatisticsPageUC)
+ m_ActiveMachinePage = MachinePages.Statistics
Case MachinePages.MachineCN
StatisticsBtn.IsChecked = True
TestingPageBtn.IsChecked = False
@@ -467,6 +643,19 @@ Public Class MachinePageUC
MachinePageGrid.Children.Remove(m_PolishingsPageUC)
MachinePageGrid.Children.Add(m_AlarmsPageUC)
m_ActiveMachinePage = MachinePages.Alarms
+ Case MachinePages.WaterJet
+ ' Verifica ed eventuale salvataggio Lucidatura corrente
+ 'If Not m_PolishingsPageUC.SaveKit() Then
+ ' AlarmsBtn.IsChecked = False
+ ' PolishingsBtn.IsChecked = True
+ ' Return
+ 'End If
+ ' passo alla pagina Dati Macchina
+ AlarmsBtn.IsChecked = True
+ WaterJetBtn.IsChecked = False
+ MachinePageGrid.Children.Remove(m_WaterJetPageUC)
+ MachinePageGrid.Children.Add(m_AlarmsPageUC)
+ m_ActiveMachinePage = MachinePages.Alarms
Case MachinePages.MachineCN
AlarmsBtn.IsChecked = True
TestingPageBtn.IsChecked = False
diff --git a/Machine/MachiningDbPageUC.xaml.vb b/Machine/MachiningDbPageUC.xaml.vb
index 8e04934..6e1f699 100644
--- a/Machine/MachiningDbPageUC.xaml.vb
+++ b/Machine/MachiningDbPageUC.xaml.vb
@@ -705,7 +705,11 @@ Public Class MachiningDbPageUC
' Lista materiali
m_MaterialsList.Clear()
For Each Material As Material In m_MainWindow.m_CurrentMachine.Materials
- m_MaterialsList.Add(New MachiningMaterial(Material.nId, Material.sName))
+ If m_MainWindow.m_CurrentMachine.bWaterJet Then
+ m_MaterialsList.Add(New MachiningMaterial(Material.nId, Material.sName, Material.SubId))
+ Else
+ m_MaterialsList.Add(New MachiningMaterial(Material.nId, Material.sName))
+ End If
Next
EgtMdbGetCurrMachiningParam(MCH_MP.SYSNOTES, ToolString)
If ToolString <> String.Empty Then
@@ -713,14 +717,30 @@ Public Class MachiningDbPageUC
Dim Index As Integer = 0
For Each Material As MachiningMaterial In m_MaterialsList
Dim Param() As String = sItems(Index).Split(",".ToCharArray)
+ Dim SubParam() As String = Param(0).Split(".".ToCharArray)
Dim nParId As Integer = 0
- If StringToInt(Param(0), nParId) AndAlso nParId = Material.nId Then
- StringToDouble(Param(1), Material.dMinThickness)
- StringToDouble(Param(2), Material.dMaxThickness)
- Material.VerifyIfActive()
- Index += 1
+ Dim nSubParId As Integer = 0
+ If m_MainWindow.m_CurrentMachine.bWaterJet Then
+ If StringToInt(SubParam(0), nParId) AndAlso nParId = Material.nId AndAlso SubParam.Count > 1 AndAlso
+ StringToInt(SubParam(1), nSubParId) AndAlso nSubParId = Material.nSubId Then
+
+ StringToDouble(Param(1), Material.dMinThickness)
+ StringToDouble(Param(2), Material.dMaxThickness)
+ Material.VerifyIfActive()
+ Index += 1
+ Else
+ Material.VerifyIfActive()
+ End If
Else
- Material.VerifyIfActive()
+ If StringToInt(Param(0), nParId) AndAlso nParId = Material.nId Then
+
+ StringToDouble(Param(1), Material.dMinThickness)
+ StringToDouble(Param(2), Material.dMaxThickness)
+ Material.VerifyIfActive()
+ Index += 1
+ Else
+ Material.VerifyIfActive()
+ End If
End If
Next
End If
@@ -874,8 +894,14 @@ Public Class MachiningDbPageUC
' Scrivo stringa materiali da lista
Dim sMaterialString As String = String.Empty
For Each Material As MachiningMaterial In m_MaterialsList
- If Material.bIsActive Then
- sMaterialString += Material.nId.ToString & "," & DoubleToString(Material.dMinThickness, 0) & "," & DoubleToString(Material.dMaxThickness, 0) & ";"
+ If m_MainWindow.m_CurrentMachine.bWaterJet Then
+ If Material.bIsActive Then
+ sMaterialString += Material.nId.ToString & "." & Material.nSubId.ToString & "," & DoubleToString(Material.dMinThickness, 0) & "," & DoubleToString(Material.dMaxThickness, 0) & ";"
+ End If
+ Else
+ If Material.bIsActive Then
+ sMaterialString += Material.nId.ToString & "," & DoubleToString(Material.dMinThickness, 0) & "," & DoubleToString(Material.dMaxThickness, 0) & ";"
+ End If
End If
Next
EgtMdbSetCurrMachiningParam(MCH_MP.SYSNOTES, sMaterialString)
@@ -2405,6 +2431,7 @@ Class MachiningMaterial
Implements INotifyPropertyChanged
Private m_nId As Integer
+ Private m_nSubId As Integer
Private m_sName As String
Private m_dMinThickness As Double
Private m_dMaxThickness As Double
@@ -2416,6 +2443,12 @@ Class MachiningMaterial
End Get
End Property
+ Public ReadOnly Property nSubId As Integer
+ Get
+ Return m_nSubId
+ End Get
+ End Property
+
Public ReadOnly Property Name As String
Get
Return m_sName
@@ -2454,6 +2487,15 @@ Class MachiningMaterial
m_bIsActive = False
End Sub
+ Sub New(nId As Integer, sName As String, nSubId As Integer)
+ m_nId = nId
+ m_nSubId = nSubId
+ m_sName = sName
+ m_dMinThickness = 0
+ m_dMaxThickness = 0
+ m_bIsActive = False
+ End Sub
+
Public Sub VerifyIfActive()
Dim bIsActive As Boolean = ( m_dMaxThickness > m_dMinThickness + EPS_SMALL)
If bIsActive <> m_bIsActive Then
diff --git a/Machine/ToolsDbPageUC.xaml.vb b/Machine/ToolsDbPageUC.xaml.vb
index 074e30e..42bc070 100644
--- a/Machine/ToolsDbPageUC.xaml.vb
+++ b/Machine/ToolsDbPageUC.xaml.vb
@@ -56,8 +56,8 @@ Public Class ToolsDbPageUC
NewBtn.Content = EgtMsg(MSG_MACHINEPAGEUC + 15)
SaveBtn.Content = EgtMsg(MSG_MACHINEPAGEUC + 17)
RemoveBtn.Content = EgtMsg(MSG_MACHINEPAGEUC + 18)
- ExportBtn.Content = "Export"
- ImportBtn.Content = "Import"
+ ExportBtn.Content = EgtMsg(91126)
+ ImportBtn.Content = EgtMsg(91127)
NameTxBl.Text = EgtMsg(MSG_TOOLSDBPAGEUC + 1)
TCPosTxBl.Text = EgtMsg(MSG_TOOLSDBPAGEUC + 2)
diff --git a/Machine/WaterJetPageUC.xaml b/Machine/WaterJetPageUC.xaml
new file mode 100644
index 0000000..7de4b93
--- /dev/null
+++ b/Machine/WaterJetPageUC.xaml
@@ -0,0 +1,263 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/Machine/WaterJetPageUC.xaml.vb b/Machine/WaterJetPageUC.xaml.vb
new file mode 100644
index 0000000..be33a3d
--- /dev/null
+++ b/Machine/WaterJetPageUC.xaml.vb
@@ -0,0 +1,55 @@
+Imports System.Collections.ObjectModel
+Imports System.ComponentModel
+Imports EgtUILib
+Imports EgtWPFLib
+Imports EgtWPFLib5
+
+Public Class WaterJetPageUC
+
+ ' Riferimento alla MainWindow
+ Private m_MainWindow As MainWindow = DirectCast(Application.Current.MainWindow, MainWindow)
+ Private m_refWaterjetDbWindowVM As EgtWPFLib5.WaterjetDbWindowVM
+ Private m_sOrigNewMaterial As String = String.Empty
+ Private m_sOrigNewSubMaterial As String = String.Empty
+
+ Private Sub WaterJetPage_Initialized(sender As Object, e As EventArgs)
+ m_refWaterjetDbWindowVM = New EgtWPFLib5.WaterjetDbWindowVM(m_MainWindow.m_CurrentMachine.sMachDir)
+ Me.DataContext = m_refWaterjetDbWindowVM
+ EgtWPFLib.Utility.MainWindow = m_MainWindow
+ End Sub
+
+ Public Sub WaterJetPage_Reinitialize()
+ m_refWaterjetDbWindowVM = New EgtWPFLib5.WaterjetDbWindowVM(m_MainWindow.m_CurrentMachine.sMachDir)
+ Me.DataContext = m_refWaterjetDbWindowVM
+ End Sub
+
+ Private Sub NewMaterial_EgtOpening(sender As Object, e As EventArgs) Handles NewMaterialNameTxBx.EgtOpening
+ m_sOrigNewMaterial = NewMaterialNameTxBx.Text
+ End Sub
+
+ Private Sub NewSubMaterial_EgtOpening(sender As Object, e As EventArgs) Handles NewSubMaterialNameTxBx.EgtOpening
+ m_sOrigNewSubMaterial = NewSubMaterialNameTxBx.Text
+ End Sub
+
+ Private Sub NewMaterial_EgtClosed(sender As Object, e As EventArgs) Handles NewMaterialNameTxBx.EgtClosed
+ m_refWaterjetDbWindowVM.sNewMaterial = NewMaterialNameTxBx.Text
+ If String.IsNullOrEmpty(m_refWaterjetDbWindowVM.sNewMaterial) OrElse m_refWaterjetDbWindowVM.sNewMaterial = m_sOrigNewMaterial Then
+ m_refWaterjetDbWindowVM.NewMaterial_Visibility = Visibility.Collapsed
+ Else
+ m_refWaterjetDbWindowVM.Done("")
+ NewMaterialNameTxBx.Clear()
+ End If
+ End Sub
+
+ Private Sub NewSubMaterial_EgtClosed(sender As Object, e As EventArgs) Handles NewSubMaterialNameTxBx.EgtClosed
+ m_refWaterjetDbWindowVM.sNewSubMaterial = NewSubMaterialNameTxBx.Text
+ If String.IsNullOrEmpty(m_refWaterjetDbWindowVM.sNewSubMaterial) OrElse m_refWaterjetDbWindowVM.sNewSubMaterial = m_sOrigNewSubMaterial Then
+ m_refWaterjetDbWindowVM.NewSubMaterial_Visibility = Visibility.Collapsed
+ Else
+ m_refWaterjetDbWindowVM.Done("")
+ NewSubMaterialNameTxBx.Clear()
+ End If
+ End Sub
+
+End Class
+
diff --git a/Machine/WaterJetPageVM.vb b/Machine/WaterJetPageVM.vb
new file mode 100644
index 0000000..0c845d0
--- /dev/null
+++ b/Machine/WaterJetPageVM.vb
@@ -0,0 +1,899 @@
+'Imports System.Collections.ObjectModel
+'Imports System.ComponentModel
+'Imports EgtUILib
+'Imports EgtWPFLib
+
+'Public Class WaterJetPageVM
+' Private m_refWaterPageV As WaterJetPageUC
+
+' ' lista dei materiali
+' Private m_ListMaterial As New ObservableCollection(Of MaterialWJ)
+' Public ReadOnly Property ListMaterial As ObservableCollection(Of MaterialWJ)
+' Get
+' Return m_ListMaterial
+' End Get
+' End Property
+' ' materiale selezionato
+' Private m_SelectedMaterial As MaterialWJ
+' Public Property SelectedMaterial As MaterialWJ
+' Get
+' Return m_SelectedMaterial
+' End Get
+' Set(value As MaterialWJ)
+' m_SelectedMaterial = value
+' End Set
+' End Property
+' ' submateriale selezionato
+' Private m_SelectedSubMaterial As SubMaterialWJ
+' Public Property SelectedSubMaterial As SubMaterialWJ
+' Get
+' Return m_SelectedSubMaterial
+' End Get
+' Set(value As SubMaterialWJ)
+' m_SelectedSubMaterial = value
+' End Set
+' End Property
+' ' lista parametri selezionata
+' Private m_SelectedParam As ParamWJ
+' Public Property SelectedParam As ParamWJ
+' Get
+' Return m_SelectedParam
+' End Get
+' Set(value As ParamWJ)
+' m_SelectedParam = value
+' End Set
+' End Property
+
+' Private m_sNewMaterial As MaterialWJ
+' Public Property sNewMaterial As String
+' Get
+' Return m_sNewMaterial.sMaterial
+' End Get
+' Set(value As String)
+' m_sNewMaterial = New MaterialWJ(value)
+' End Set
+' End Property
+
+' Private m_NewMaterialVisibility As Visibility = Visibility.Hidden
+' Public Property NewMaterialVisibility As Visibility
+' Get
+' Return m_NewMaterialVisibility
+' End Get
+' Set(value As Visibility)
+' m_NewMaterialVisibility = value
+' End Set
+' End Property
+
+' Sub New(WaterJetPageV As WaterJetPageUC)
+' m_refWaterPageV = WaterJetPageV
+' ' Creo una lista di materiali come esempio
+' ListMaterial.Add(New MaterialWJ("Marmo"))
+' ListMaterial.Last.ListOfSubMaterial.Add(New SubMaterialWJ("Binaco"))
+' ListMaterial.Last.ListOfSubMaterial.Last.ListOfParam.Add(New ParamWJ("10", "Bq1", "Bq2", "Bq3", "Bq4", "Bq5"))
+' ListMaterial.Last.ListOfSubMaterial.Add(New SubMaterialWJ("Nero"))
+' ListMaterial.Last.ListOfSubMaterial.Last.ListOfParam.Add(New ParamWJ("20", "Nq1", "Nq2", "Nq3", "Nq4", "Nq5"))
+' ListMaterial.Add(New MaterialWJ("Granito"))
+' ListMaterial.Last.ListOfSubMaterial.Add(New SubMaterialWJ("GR_Binaco"))
+' ListMaterial.Last.ListOfSubMaterial.Last.ListOfParam.Add(New ParamWJ("15", "gBq1", "gBq2", "Bq3", "gBq4", "gBq5"))
+' ListMaterial.Last.ListOfSubMaterial.Last.ListOfParam.Add(New ParamWJ("15.5", "g_Bq1", "g_Bq2", "g_Bq3", "g_Bq4", "g_Bq5"))
+' ListMaterial.Last.ListOfSubMaterial.Last.ListOfParam.Add(New ParamWJ("15.8", "G_Bq1", "G_Bq2", "G_Bq3", "G_Bq4", "G_Bq5"))
+' ListMaterial.Last.ListOfSubMaterial.Add(New SubMaterialWJ("GR_Nero"))
+' ListMaterial.Last.ListOfSubMaterial.Last.ListOfParam.Add(New ParamWJ("18", "gNq1", "gNq2", "gNq3", "gNq4", "gNq5"))
+
+' SelectedMaterial = m_ListMaterial(0)
+' SelectedSubMaterial = m_SelectedMaterial.ListOfSubMaterial(0)
+' SelectedParam = SelectedSubMaterial.ListOfParam(0)
+' End Sub
+
+' Private m_cmdOk As ICommand
+' Public ReadOnly Property OkCommand() As ICommand
+' Get
+' If m_cmdOk Is Nothing Then
+' m_cmdOk = New Command(AddressOf Ok)
+' End If
+' Return m_cmdOk
+' End Get
+' End Property
+
+' Private Sub Ok()
+' ' Mostro textbox per il nome
+' m_refWaterPageV.KitNameTxBx.Text = String.Empty
+' m_refWaterPageV.KitNameTxBx.Visibility = Windows.Visibility.Visible
+' m_refWaterPageV.KitsLstBx.SetValue(Grid.RowSpanProperty, 1)
+' MessageBox.Show("Prova di Binding", "Prova di Binding", MessageBoxButton.OK, MessageBoxImage.Asterisk, MessageBoxResult.OK)
+' m_refWaterPageV.KitNameTxBx.Visibility = Windows.Visibility.Hidden
+' m_refWaterPageV.KitsLstBx.SetValue(Grid.RowSpanProperty, 2)
+' End Sub
+
+'End Class
+
+
+'Public Class MaterialWJ
+
+' Private m_sMaterial As String = String.Empty
+' Public ReadOnly Property sMaterial As String
+' Get
+' Return m_sMaterial
+' End Get
+' End Property
+
+' Private m_ListOfSubMaterial As New ObservableCollection(Of SubMaterialWJ)
+' Public Property ListOfSubMaterial As ObservableCollection(Of SubMaterialWJ)
+' Get
+' Return m_ListOfSubMaterial
+' End Get
+' Set(value As ObservableCollection(Of SubMaterialWJ))
+' m_ListOfSubMaterial = value
+' End Set
+' End Property
+
+' Sub New(sMat As String)
+' m_sMaterial = sMat
+' End Sub
+
+'End Class
+
+'Public Class SubMaterialWJ
+
+' Dim m_sSubMaterial As String
+' Public Property sSubMaterial As String
+' Get
+' Return m_sSubMaterial
+' End Get
+' Set(value As String)
+' m_sSubMaterial = value
+' End Set
+' End Property
+
+' Private m_ListOfParam As New ObservableCollection(Of ParamWJ)
+' Public Property ListOfParam As ObservableCollection(Of ParamWJ)
+' Get
+' Return m_ListOfParam
+' End Get
+' Set(value As ObservableCollection(Of ParamWJ))
+' m_ListOfParam = value
+' End Set
+' End Property
+
+' Sub New(sName As String)
+' m_sSubMaterial = sName
+' End Sub
+'End Class
+
+'Public Class ParamWJ
+
+' Private m_Thickness As String
+' Private m_Q1 As String
+' Private m_Q2 As String
+' Private m_Q3 As String
+' Private m_Q4 As String
+' Private m_Q5 As String
+
+' Public Property Q1 As String
+' Get
+' Return m_Q1
+' End Get
+' Set(value As String)
+' m_Q1 = value
+' End Set
+' End Property
+
+' Public Property Thickness As String
+' Get
+' Return m_Thickness
+' End Get
+' Set(value As String)
+' m_Thickness = value
+' End Set
+' End Property
+
+' Public Property Q2 As String
+' Get
+' Return m_Q2
+' End Get
+' Set(value As String)
+' m_Q2 = value
+' End Set
+' End Property
+
+' Public Property Q3 As String
+' Get
+' Return m_Q3
+' End Get
+' Set(value As String)
+' m_Q3 = value
+' End Set
+' End Property
+
+' Public Property Q4 As String
+' Get
+' Return m_Q4
+' End Get
+' Set(value As String)
+' m_Q4 = value
+' End Set
+' End Property
+
+' Public Property Q5 As String
+' Get
+' Return m_Q5
+' End Get
+' Set(value As String)
+' m_Q5 = value
+' End Set
+' End Property
+
+' Sub New(sT As String, sQ1 As String, sQ2 As String, sQ3 As String, sQ4 As String, sQ5 As String)
+' m_Thickness = sT
+' m_Q1 = sQ1
+' m_Q2 = sQ2
+' m_Q3 = sQ3
+' m_Q4 = sQ4
+' m_Q5 = sQ5
+' End Sub
+
+'End Class
+
+Imports System.Collections.ObjectModel
+Imports System.IO
+Imports EgtUILib
+Imports EgtWPFLib5
+
+Public Class WaterjetDbWindowVM
+ Inherits VMBase
+ ' Riferimento alla MainWindow
+ Private m_MainWindow As MainWindow = DirectCast(Application.Current.MainWindow, MainWindow)
+ Private m_refWaterPageV As WaterJetPageUC
+
+#Region "FIELDS & PROPERTIES"
+
+
+#Region "Materiali"
+ Private Property m_MaterialList As ObservableCollection(Of WjMaterial)
+ Public Property MaterialList As ObservableCollection(Of WjMaterial)
+ Get
+ Return m_MaterialList
+ End Get
+ Set(value As ObservableCollection(Of WjMaterial))
+ m_MaterialList = value
+ End Set
+ End Property
+
+ Private Property m_SelMaterial As WjMaterial
+ Public Property SelMaterial As WjMaterial
+ Get
+ Return m_SelMaterial
+ End Get
+ Set(value As WjMaterial)
+ m_SelMaterial = value
+ End Set
+ End Property
+
+ Private Property m_sNewMaterial As String
+ Public Property sNewMaterial As String
+ Get
+ Return m_sNewMaterial
+ End Get
+ Set(value As String)
+ m_sNewMaterial = value
+ End Set
+ End Property
+
+ Private Property m_NewMaterial_Visibility As Visibility = Visibility.Collapsed
+ Public Property NewMaterial_Visibility As Visibility
+ Get
+ Return m_NewMaterial_Visibility
+ End Get
+ Set(value As Visibility)
+ m_NewMaterial_Visibility = value
+ NotifyPropertyChanged(NameOf(NewMaterial_Visibility))
+ End Set
+ End Property
+
+#End Region
+
+#Region "SubMateriali"
+ Private Property m_SubMaterialList As New ObservableCollection(Of WjSubMaterial)
+ Public Property SubMaterialList As ObservableCollection(Of WjSubMaterial)
+ Get
+ Return m_SubMaterialList
+ End Get
+ Set(value As ObservableCollection(Of WjSubMaterial))
+ m_SubMaterialList = value
+ End Set
+ End Property
+
+ 'Private Property m_SelSubMaterial As WjSubMaterial
+ 'Public Property SelSubMaterial As WjSubMaterial
+ ' Get
+ ' Return m_SelSubMaterial
+ ' End Get
+ ' Set(value As WjSubMaterial)
+ ' m_SelSubMaterial = value
+ ' End Set
+ 'End Property
+
+ Private Property m_sNewSubMaterial As String
+ Public Property sNewSubMaterial As String
+ Get
+ Return m_sNewSubMaterial
+ End Get
+ Set(value As String)
+ m_sNewSubMaterial = value
+ End Set
+ End Property
+
+ Private Property m_NewSubMaterial_Visibility As Visibility = Visibility.Collapsed
+ Public Property NewSubMaterial_Visibility As Visibility
+ Get
+ Return m_NewSubMaterial_Visibility
+ End Get
+ Set(value As Visibility)
+ m_NewSubMaterial_Visibility = value
+ NotifyPropertyChanged(NameOf(NewSubMaterial_Visibility))
+ End Set
+ End Property
+
+#End Region
+
+#Region "Parametri"
+ Private Property m_ParamList As ObservableCollection(Of WjParam)
+ Public Property ParamList As ObservableCollection(Of WjParam)
+ Get
+ Return m_ParamList
+ End Get
+ Set(value As ObservableCollection(Of WjParam))
+ m_ParamList = value
+ End Set
+ End Property
+
+ 'Private Property m_SelParam As WjParam
+ 'Public Property SelParam As WjParam
+ ' Get
+ ' Return m_SelParam
+ ' End Get
+ ' Set(value As WjParam)
+ ' m_SelParam = value
+ ' End Set
+ 'End Property
+
+ Private m_HeadParamLstBx_Width As Double
+ Public ReadOnly Property HeadParamLstBx_Width As Double
+ Get
+ If m_HeadParamLstBx_Width < 10 Then
+ Return 700
+ End If
+ Return m_HeadParamLstBx_Width
+ End Get
+ End Property
+
+#End Region
+
+
+ Const K_WATERJETDB As String = "WaterjetDb"
+ Const S_MATERIALS As String = "Materials"
+
+ ' Definizione comandi
+ Private m_cmdNewMaterial As ICommand
+ Private m_cmdDeleteMaterial As ICommand
+ Private m_cmdNewSubMaterial As ICommand
+ Private m_cmdDeleteSubMaterial As ICommand
+ Private m_cmdNewWjParam As ICommand
+ Private m_cmdDeleteWjParam As ICommand
+ Private m_cmdSave As ICommand
+ Private m_cmdDone As ICommand
+
+#End Region
+
+#Region "MESSAGES"
+
+ Public ReadOnly Property Material_Msg As String
+ Get
+ Return "Materiale"
+ End Get
+ End Property
+
+ Public ReadOnly Property SubMaterial_Msg As String
+ Get
+ Return "SubMateriale"
+ End Get
+ End Property
+
+ Public ReadOnly Property Id_Msg As String
+ Get
+ Return "Id"
+ End Get
+ End Property
+
+ Public ReadOnly Property Thickness_Msg As String
+ Get
+ Return "Spessore"
+ End Get
+ End Property
+
+ Public ReadOnly Property Q1_Msg As String
+ Get
+ Return "Q1"
+ End Get
+ End Property
+
+ Public ReadOnly Property Q2_Msg As String
+ Get
+ Return "Q2"
+ End Get
+ End Property
+
+ Public ReadOnly Property Q3_Msg As String
+ Get
+ Return "Q3"
+ End Get
+ End Property
+
+ Public ReadOnly Property Q4_Msg As String
+ Get
+ Return "Q4"
+ End Get
+ End Property
+
+ Public ReadOnly Property Q5_Msg As String
+ Get
+ Return "Q5"
+ End Get
+ End Property
+
+ Public ReadOnly Property QExtra_Msg As String
+ Get
+ Return "QExtra"
+ End Get
+ End Property
+
+ Public ReadOnly Property New_Msg As String
+ Get
+ Return "Nuovo"
+ End Get
+ End Property
+
+ Public ReadOnly Property Delete_Msg As String
+ Get
+ Return "Elimina"
+ End Get
+ End Property
+
+ Public ReadOnly Property Save_Msg As String
+ Get
+ Return "Salva"
+ End Get
+ End Property
+
+ Public ReadOnly Property Modify_Msg As String
+ Get
+ Return "Modifica"
+ End Get
+ End Property
+
+#End Region
+
+#Region "CONSTRUCTOR"
+
+ 'Sub New(sMachineDirPath As String, sMachineIniPath As String, ProjectSceneContext As Integer)
+ ' MyBase.New(sMachineDirPath, sMachineIniPath, ProjectSceneContext)
+ 'End Sub
+
+ Sub New(refContext As WaterJetPageUC)
+ ' definisco il riferiento con la pagina xaml
+ m_refWaterPageV = refContext
+ ' Leggo valori da file INI e li carico nelle proprietà
+
+ 'Dim sMachineDir As String = OmagOFFICEMap.refMainWindowVM.MainWindowM.sMachinesRoot & "\" & sMachineName
+ Dim sFilePath As String = m_MainWindow.m_CurrentMachine.sMachDir & "\" & K_WATERJETDB & ".ini"
+ MaterialList = New ObservableCollection(Of WjMaterial)
+
+ If File.Exists(sFilePath) Then
+ Dim sMaterial As String = String.Empty
+
+ If EgtUILib.GetPrivateProfileString(S_MATERIALS, "1", "", sMaterial, sFilePath) > 0 Then
+ Dim sMaterials() As String = sMaterial.Split(","c)
+ Dim ind As Integer = 0
+ For ind = 0 To sMaterials.Length() - 1
+
+ 'recupero i sottomateriali
+ Dim Index As Integer = 1
+ Dim sSubMat As String = String.Empty
+ Dim SubMatList As New ObservableCollection(Of WjSubMaterial)
+ While EgtUILib.GetPrivateProfileString(sMaterials(ind), Index.ToString(), "", sSubMat, sFilePath) > 0
+
+
+ ' recupero la lista dei Q
+ Dim QInd As Integer = 1
+ Dim sParam As String = String.Empty
+ Dim QParamList As New ObservableCollection(Of WjParam)
+ While EgtUILib.GetPrivateProfileString(sMaterials(ind) & "." & sSubMat, QInd.ToString(), "", sParam, sFilePath) > 0
+ Dim sParams() As String = sParam.Split(","c)
+ If sParams.Length() >= 7 Then
+ Dim dThickness As Double
+ Dim dQ1 As Double
+ Dim dQ2 As Double
+ Dim dQ3 As Double
+ Dim dQ4 As Double
+ Dim dQ5 As Double
+ Dim dQExtra As Double
+ StringToDouble(sParams(0), dThickness)
+ StringToDouble(sParams(1), dQ1)
+ StringToDouble(sParams(2), dQ2)
+ StringToDouble(sParams(3), dQ3)
+ StringToDouble(sParams(4), dQ4)
+ StringToDouble(sParams(5), dQ5)
+ StringToDouble(sParams(6), dQExtra)
+ QParamList.Add(New WjParam(QInd, dThickness, dQ1, dQ2, dQ3, dQ4, dQ5, dQExtra, m_refWaterPageV))
+ End If
+ QInd += 1
+ End While
+
+ SubMatList.Add(New WjSubMaterial(sSubMat, QParamList))
+ Index += 1
+ End While
+
+ MaterialList.Add(New WjMaterial(sMaterials(ind), SubMatList))
+ Next
+
+ End If
+
+ End If
+
+ End Sub
+
+ Public Sub RefreshDImensionPage()
+ m_HeadParamLstBx_Width = m_refWaterPageV.ParamsGpBx.ActualWidth - 20
+ NotifyPropertyChanged(NameOf(HeadParamLstBx_Width))
+ End Sub
+
+#End Region ' Constructor
+
+#Region "COMMANDS"
+
+#Region "NewMaterialCommand"
+
+ Public ReadOnly Property NewMaterialCommand As ICommand
+ Get
+ If m_cmdNewMaterial Is Nothing Then
+ m_cmdNewMaterial = New Command(AddressOf NewMaterial)
+ End If
+ Return m_cmdNewMaterial
+ End Get
+ End Property
+
+ Public Sub NewMaterial(ByVal param As Object)
+ NewSubMaterial_Visibility = Visibility.Collapsed
+ NewMaterial_Visibility = Visibility.Visible
+ End Sub
+
+#End Region ' NewMaterial
+
+#Region "DeleteMaterialCommand"
+
+ Public ReadOnly Property DeleteMaterialCommand As ICommand
+ Get
+ If m_cmdDeleteMaterial Is Nothing Then
+ m_cmdDeleteMaterial = New Command(AddressOf DeleteMaterial)
+ End If
+ Return m_cmdDeleteMaterial
+ End Get
+ End Property
+
+ Public Sub DeleteMaterial(ByVal param As Object)
+ If Not IsNothing(SelMaterial) Then
+ MaterialList.Remove(SelMaterial)
+ 'SelMaterial.NotifyPropertyChanged(NameOf(MaterialList))
+ End If
+ End Sub
+
+#End Region ' DeleteMaterial
+
+#Region "NewSubMaterialCommand"
+
+ Public ReadOnly Property NewSubMaterialCommand As ICommand
+ Get
+ If m_cmdNewSubMaterial Is Nothing Then
+ m_cmdNewSubMaterial = New Command(AddressOf NewSubMaterial)
+ End If
+ Return m_cmdNewSubMaterial
+ End Get
+ End Property
+
+ Public Sub NewSubMaterial(ByVal param As Object)
+ If Not IsNothing(SelMaterial) Then
+ NewMaterial_Visibility = Visibility.Collapsed
+ NewSubMaterial_Visibility = Visibility.Visible
+
+ End If
+ End Sub
+
+#End Region ' NewSubMaterial
+
+#Region "DeleteSubMaterialCommand"
+
+ Public ReadOnly Property DeleteSubMaterialCommand As ICommand
+ Get
+ If m_cmdDeleteSubMaterial Is Nothing Then
+ m_cmdDeleteSubMaterial = New Command(AddressOf DeleteSubMaterial)
+ End If
+ Return m_cmdDeleteSubMaterial
+ End Get
+ End Property
+
+ Public Sub DeleteSubMaterial(ByVal param As Object)
+ If Not IsNothing(SelMaterial.SelSubMaterial) Then
+ SelMaterial.SubMaterialList.Remove(SelMaterial.SelSubMaterial)
+ SelMaterial.NotifyPropertyChanged(NameOf(SubMaterialList))
+ End If
+ End Sub
+
+#End Region ' DeleteSubMaterial
+
+#Region "NewWjParamCommand"
+
+ Public ReadOnly Property NewWjParamCommand As ICommand
+ Get
+ If m_cmdNewWjParam Is Nothing Then
+ m_cmdNewWjParam = New Command(AddressOf NewWjParam)
+ End If
+ Return m_cmdNewWjParam
+ End Get
+ End Property
+
+ Public Sub NewWjParam(ByVal param As Object)
+ If Not IsNothing(SelMaterial.SelSubMaterial) Then
+ Dim nId As Integer = 0
+ If IsNothing(SelMaterial.SelSubMaterial.ParamList) Then
+ nId = 1
+ SelMaterial.SelSubMaterial.ParamList = New ObservableCollection(Of WjParam)
+ Else
+ nId = SelMaterial.SelSubMaterial.ParamList.Count + 1
+ End If
+ SelMaterial.SelSubMaterial.ParamList.Add(New WjParam(nId, 0, 0, 0, 0, 0, 0, 0, m_refWaterPageV))
+ SelMaterial.SelSubMaterial.NotifyPropertyChanged(NameOf(ParamList))
+ End If
+ End Sub
+
+#End Region ' NewWjParam
+
+#Region "DeleteWjParamCommand"
+
+ Public ReadOnly Property DeleteWjParamCommand As ICommand
+ Get
+ If m_cmdDeleteWjParam Is Nothing Then
+ m_cmdDeleteWjParam = New Command(AddressOf DeleteWjParam)
+ End If
+ Return m_cmdDeleteWjParam
+ End Get
+ End Property
+
+ Public Sub DeleteWjParam(ByVal param As Object)
+ If Not IsNothing(SelMaterial.SelSubMaterial.SelWjParam) Then
+ SelMaterial.SelSubMaterial.ParamList.Remove(SelMaterial.SelSubMaterial.SelWjParam)
+ SelMaterial.SelSubMaterial.NotifyPropertyChanged(NameOf(ParamList))
+ End If
+ End Sub
+
+#End Region ' DeleteWjParam
+
+#Region "DoneCommand"
+
+ Public ReadOnly Property DoneCommand As ICommand
+ Get
+ If m_cmdDone Is Nothing Then
+ m_cmdDone = New Command(AddressOf Done)
+ End If
+ Return m_cmdDone
+ End Get
+ End Property
+
+ Public Sub Done(ByVal param As Object)
+ If NewMaterial_Visibility = Visibility.Visible Then
+ MaterialList.Add(New WjMaterial(sNewMaterial))
+ NotifyPropertyChanged(NameOf(MaterialList))
+ NewMaterial_Visibility = Visibility.Collapsed
+ ElseIf NewSubMaterial_Visibility = Visibility.Visible Then
+ SelMaterial.SubMaterialList.Add(New WjSubMaterial(sNewSubMaterial))
+ NotifyPropertyChanged(NameOf(SubMaterialList))
+ NewSubMaterial_Visibility = Visibility.Collapsed
+ End If
+ End Sub
+
+#End Region ' Done
+
+#End Region ' Commands
+
+End Class
+
+Public Class WjMaterial
+ Inherits VMBase
+
+ Private m_Name As String
+ Public Property Name As String
+ Get
+ Return m_Name
+ End Get
+ Set(value As String)
+ m_Name = value
+ End Set
+ End Property
+
+ Private m_SubMaterialList As ObservableCollection(Of WjSubMaterial)
+ Public Property SubMaterialList As ObservableCollection(Of WjSubMaterial)
+ Get
+ Return m_SubMaterialList
+ End Get
+ Set(value As ObservableCollection(Of WjSubMaterial))
+ m_SubMaterialList = value
+ End Set
+ End Property
+
+ Private Property m_SelSubMaterial As WjSubMaterial
+ Public Property SelSubMaterial As WjSubMaterial
+ Get
+ Return m_SelSubMaterial
+ End Get
+ Set(value As WjSubMaterial)
+ m_SelSubMaterial = value
+ End Set
+ End Property
+
+ Sub New(sName As String, SubMatList As ObservableCollection(Of WjSubMaterial))
+ m_Name = sName
+ m_SubMaterialList = SubMatList
+ End Sub
+
+ Sub New(sName As String)
+ m_Name = sName
+ End Sub
+
+End Class
+
+Public Class WjSubMaterial
+ Inherits VMBase
+
+ Private m_Name As String
+ Public Property Name As String
+ Get
+ Return m_Name
+ End Get
+ Set(value As String)
+ m_Name = value
+ End Set
+ End Property
+
+ Private m_ParamList As ObservableCollection(Of WjParam)
+ Public Property ParamList As ObservableCollection(Of WjParam)
+ Get
+ Return m_ParamList
+ End Get
+ Set(value As ObservableCollection(Of WjParam))
+ m_ParamList = value
+ End Set
+ End Property
+
+ Private Property m_SelWjParam As WjParam
+ Public Property SelWjParam As WjParam
+ Get
+ Return m_SelWjParam
+ End Get
+ Set(value As WjParam)
+ m_SelWjParam = value
+ End Set
+ End Property
+
+ Sub New(sName As String, ParamList As ObservableCollection(Of WjParam))
+ m_Name = sName
+ m_ParamList = ParamList
+ End Sub
+
+ Sub New(sName As String)
+ m_Name = sName
+ End Sub
+
+End Class
+
+Public Class WjParam
+
+ Private m_Id As Integer
+ Public Property Id As Integer
+ Get
+ Return m_Id
+ End Get
+ Set(value As Integer)
+ m_Id = value
+ End Set
+ End Property
+
+ Private m_Thickness As Double
+ Public Property Thickness As Double
+ Get
+ Return m_Thickness
+ End Get
+ Set(value As Double)
+ m_Thickness = value
+ End Set
+ End Property
+
+ Private m_Q1 As Double
+ Public Property Q1 As Double
+ Get
+ Return m_Q1
+ End Get
+ Set(value As Double)
+ m_Q1 = value
+ End Set
+ End Property
+
+ Private m_Q2 As Double
+ Public Property Q2 As Double
+ Get
+ Return m_Q2
+ End Get
+ Set(value As Double)
+ m_Q2 = value
+ End Set
+ End Property
+
+ Private m_Q3 As Double
+ Public Property Q3 As Double
+ Get
+ Return m_Q3
+ End Get
+ Set(value As Double)
+ m_Q3 = value
+ End Set
+ End Property
+
+ Private m_Q4 As Double
+ Public Property Q4 As Double
+ Get
+ Return m_Q4
+ End Get
+ Set(value As Double)
+ m_Q4 = value
+ End Set
+ End Property
+
+ Private m_Q5 As Double
+ Public Property Q5 As Double
+ Get
+ Return m_Q5
+ End Get
+ Set(value As Double)
+ m_Q5 = value
+ End Set
+ End Property
+
+ Private m_QExtra As Double
+ Public Property QExtra As Double
+ Get
+ Return m_QExtra
+ End Get
+ Set(value As Double)
+ m_QExtra = value
+ End Set
+ End Property
+
+ Public ReadOnly Property ParamLstBx_Width As Double
+ Get
+ Return m_refWaterPageV.ParamsGpBx.ActualWidth - 20
+ End Get
+ End Property
+
+ Private m_refWaterPageV As WaterJetPageUC
+
+ Sub New(nId As Integer, dThickness As Double, dQ1 As Double, dQ2 As Double, dQ3 As Double, dQ4 As Double, dQ5 As Double, dQExtra As Double, ByRef refWJPage As WaterJetPageUC)
+ m_Id = nId
+ m_Thickness = dThickness
+ m_Q1 = dQ1
+ m_Q2 = dQ2
+ m_Q3 = dQ3
+ m_Q4 = dQ4
+ m_Q5 = dQ5
+ m_QExtra = dQExtra
+ m_refWaterPageV = refWJPage
+ End Sub
+
+End Class
diff --git a/MainWindow.xaml.vb b/MainWindow.xaml.vb
index f4936e4..1c434d4 100644
--- a/MainWindow.xaml.vb
+++ b/MainWindow.xaml.vb
@@ -1068,6 +1068,15 @@ Class MainWindow
If Not m_MachinePageUC.m_PolishingsPageUC.SaveKit() Then
Return False
End If
+ Case MachinePageUC.MachinePages.WaterJet
+ ' Verifica ed eventuale salvataggio Db Waterjet
+ Dim m_MainWindow As MainWindow = DirectCast(Application.Current.MainWindow, MainWindow)
+ Dim nPressedBtn As Integer = DirectCast(m_MachinePageUC.m_WaterJetPageUC.DataContext, EgtWPFLib5.WaterjetDbWindowVM).CloseWaterjetDb_OmagCut(m_MainWindow)
+ If nPressedBtn = EgtWPFLib5.WaterjetDbWindowVM.SaveWndBtnEnum.CANCEL Then
+ Return False
+ ElseIf nPressedBtn = EgtWPFLib5.WaterjetDbWindowVM.SaveWndBtnEnum.NO Then
+ m_MachinePageUC.m_WaterJetPageUC.WaterJetPage_Reinitialize()
+ End If
End Select
Return True
End Function
diff --git a/OmagCUT.vbproj b/OmagCUT.vbproj
index 97eed91..4a07131 100644
--- a/OmagCUT.vbproj
+++ b/OmagCUT.vbproj
@@ -202,6 +202,10 @@
ImportExportToolWD.xaml
+
+
+ WaterJetPageUC.xaml
+ StartLauncheWD.xaml
@@ -444,6 +448,10 @@
Designer
+
+ Designer
+ MSBuild:Compile
+
diff --git a/OmagCUTDarkDictionary.xaml b/OmagCUTDarkDictionary.xaml
index 54c3a30..2b1a76f 100644
--- a/OmagCUTDarkDictionary.xaml
+++ b/OmagCUTDarkDictionary.xaml
@@ -332,6 +332,13 @@
+
+
+
+
@@ -1198,7 +1205,13 @@
-
+
+
diff --git a/RawPhoto/ChooseMachining.xaml b/RawPhoto/ChooseMachining.xaml
index 025a233..0810827 100644
--- a/RawPhoto/ChooseMachining.xaml
+++ b/RawPhoto/ChooseMachining.xaml
@@ -80,17 +80,35 @@
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/RawPhoto/ChooseMachining.xaml.vb b/RawPhoto/ChooseMachining.xaml.vb
index 4927e60..f4391a9 100644
--- a/RawPhoto/ChooseMachining.xaml.vb
+++ b/RawPhoto/ChooseMachining.xaml.vb
@@ -41,6 +41,7 @@ Public Class ChooseMachining
CurrMillingCmBx.ItemsSource = m_MillingList
CurrPocketingCmBx.ItemsSource = m_PocketingList
CurrWJettingCmBx.ItemsSource = m_WJettingList
+ CurrWJettingQualityCmBx.ItemsSource = m_CurrentMachine.Qualities
CurrSawingTxBl.Text = EgtMsg(MSG_CHOOSEMACHININGPAGEUC + 1)
AuxiliaryMachiningTxBl.Text = EgtMsg(MSG_CHOOSEMACHININGPAGEUC + 2)
@@ -256,19 +257,38 @@ Public Class ChooseMachining
If SysNotes <> String.Empty Then
Dim MachiningMaterials() = SysNotes.Split(";".ToCharArray)
SysNotes = String.Empty
- For Each Material As Object In MachiningMaterials
- Dim Param() As String = Material.Split(",".ToCharArray)
- If Param(0) = m_CurrentMachine.CurrMat.nId.ToString() Then
- Dim dRawHeight = GetRawHeight()
- Dim MatMinH As Double = 0
- StringToDouble(Param(1), MatMinH)
- Dim MatMaxH As Double = 0
- StringToDouble(Param(2), MatMaxH)
- If dRawHeight > MatMinH - EPS_SMALL And dRawHeight < MatMaxH + EPS_SMALL Then
- Return True
+ If m_CurrentMachine.bWaterJet Then
+ For Each Material As Object In MachiningMaterials
+ Dim Param() As String = Material.Split(",".ToCharArray)
+ Dim SubParam() As String = Param(0).Split(".".ToCharArray)
+ If SubParam(0) = m_CurrentMachine.CurrMat.nId.ToString() AndAlso SubParam.Count > 1 AndAlso SubParam(1) = m_CurrentMachine.CurrMat.SubId.ToString() Then
+ Dim dRawHeight = GetRawHeight()
+ Dim MatMinH As Double = 0
+ StringToDouble(Param(1), MatMinH)
+ Dim MatMaxH As Double = 0
+ StringToDouble(Param(2), MatMaxH)
+ If dRawHeight > MatMinH - EPS_SMALL And dRawHeight < MatMaxH + EPS_SMALL Then
+ Return True
+ End If
End If
- End If
- Next
+ Next
+ Else
+ For Each Material As Object In MachiningMaterials
+ Dim Param() As String = Material.Split(",".ToCharArray)
+ If Param(0) = m_CurrentMachine.CurrMat.nId.ToString() Then
+ Dim dRawHeight = GetRawHeight()
+ Dim MatMinH As Double = 0
+ StringToDouble(Param(1), MatMinH)
+ Dim MatMaxH As Double = 0
+ StringToDouble(Param(2), MatMaxH)
+ If dRawHeight > MatMinH - EPS_SMALL And dRawHeight < MatMaxH + EPS_SMALL Then
+ Return True
+ End If
+ End If
+ Next
+ End If
+
+
Return False
Else
Return False
@@ -553,7 +573,8 @@ Public Class ChooseMachining
Next
m_RowNumber = m_RowNumber + nNewRow
CurrWJettingTxBl.SetValue(Grid.RowProperty, m_RowNumber - nDeltaRow - nNewRow)
- CurrWJettingCmBx.SetValue(Grid.RowProperty, m_RowNumber - nDeltaRow - nNewRow + 1)
+ 'CurrWJettingCmBx.SetValue(Grid.RowProperty, m_RowNumber - nDeltaRow - nNewRow + 1)
+ WaterJettingUGrd.SetValue(Grid.RowProperty, m_RowNumber - nDeltaRow - nNewRow + 1)
If m_CurrentMachine.sCurrWaterJetting <> String.Empty Then
CurrWJettingCmBx.SelectedItem = m_CurrentMachine.sCurrWaterJetting
End If
@@ -562,6 +583,16 @@ Public Class ChooseMachining
' verifico che sia stato inserito veramente una lavorazione prima di comunicare una modifica
If CurrMillingCmBx.SelectedItem <> m_CurrentMachine.sCurrWaterJetting Then m_MachIsModified = True
End If
+ If String.IsNullOrEmpty(CurrWJettingQualityCmBx.SelectedItem) Then
+ CurrWJettingQualityCmBx.SelectedItem = m_CurrentMachine.sCurrWaterJettingQuality
+ End If
+ ' verifico che la selezione sia andata a buon fine, altrimenti comunico l'avvenuta modifica
+ If String.IsNullOrEmpty(CurrWJettingQualityCmBx.SelectedItem) Then
+ ' verifico che sia stato inserito veramente una lavorazione prima di comunicare una modifica
+ If CurrWJettingQualityCmBx.SelectedItem <> m_CurrentMachine.sCurrWaterJettingQuality Then m_MachIsModified = True
+ End If
+
+ CurrWJettingQualityCmBx.Visibility = Windows.Visibility.Visible
CurrWJettingTxBl.Visibility = Windows.Visibility.Visible
CurrWJettingCmBx.Visibility = Windows.Visibility.Visible
End If
@@ -590,6 +621,10 @@ Public Class ChooseMachining
m_MainWindow.m_CurrentMachine.sCurrWaterJetting = CurrWJettingCmBx.SelectedItem.ToString()
End Sub
+ Private Sub CurrQaulityWJettingCmBx_SelectionChanged(sender As Object, e As SelectionChangedEventArgs) Handles CurrWJettingQualityCmBx.SelectionChanged
+ m_MainWindow.m_CurrentMachine.sCurrWaterJettingQuality = CurrWJettingQualityCmBx.SelectedItem.ToString()
+ End Sub
+
Private Sub OkBtn_Click(sender As Object, e As RoutedEventArgs) Handles OkBtn.Click
DialogResult = True
End Sub
diff --git a/RawPhoto/RawPartPageUC.xaml.vb b/RawPhoto/RawPartPageUC.xaml.vb
index 49d43d6..ecfc1b4 100644
--- a/RawPhoto/RawPartPageUC.xaml.vb
+++ b/RawPhoto/RawPartPageUC.xaml.vb
@@ -140,7 +140,7 @@ Public Class RawPartPageUC
' Nascondo bottone dati lastra se non attivato da file .ini
m_bSlabId = (Not m_CurrentMachine.bHasRawBarCodeReader And
GetPrivateProfileInt(S_RAWPART, K_SLABID, 0, m_MainWindow.GetIniFile()) <> 0)
- SlabIdBtn.Visibility = If( m_bSlabId, Windows.Visibility.Visible, Windows.Visibility.Collapsed)
+ SlabIdBtn.Visibility = If(m_bSlabId, Windows.Visibility.Visible, Windows.Visibility.Collapsed)
m_SmartMachiningPage = GetPrivateProfileInt(S_GENERAL, "SmartMachiningPage", 0, m_MainWindow.GetIniFile()) <> 0
@@ -165,10 +165,16 @@ Public Class RawPartPageUC
End Sub
Private Sub RawPartPage_Loaded(sender As Object, e As RoutedEventArgs)
+ ' aggiorno la lista dei materiali
+ Dim Index As Integer = 1
+ If m_CurrentMachine.bWaterJet Then
+ m_CurrentMachine.LoadWJMaterial()
+ End If
+
m_CurrProjPage = m_MainWindow.m_CurrentProjectPageUC
m_bActive = True
' Assegno modalità acquisizione punti laser (da disegno se non collegato alla macchina)
- m_bFromDraw = ( m_MainWindow.m_CNCommunication.m_nNCType = 0)
+ m_bFromDraw = (m_MainWindow.m_CNCommunication.m_nNCType = 0)
' Correggo differenza tra machinebuttons che ha 10 colonne e spazio disponibile solo per 9 facendolo sbordare(non si vede perchè la parte che avanza è vuota)
m_MachineButtons.Width = LowerButtonGrid.ActualWidth / 12 * 10
' Se disponibile, imposto possibilità di contorno da foto
@@ -226,7 +232,7 @@ Public Class RawPartPageUC
End If
' aggiorno l'apparenza del grezzo
AdjustRawPartOnStart()
- ' Altrimenti lo definisco
+ ' Altrimenti lo definisco
Else
' Leggo da Ini gli ultimi valori
m_RawLength = GetPrivateProfileDouble(S_RAWPART, K_RAWLENGTH, 2500, m_MainWindow.GetIniFile())
@@ -241,12 +247,12 @@ Public Class RawPartPageUC
' Eventuale gestione dati lastra
If m_bSlabId Then
Dim sBlock As String = ""
- GetPrivateProfileString( S_RAWPART, K_BLOCKNAME, "", sBlock, m_MainWindow.GetIniFile())
- Dim nSlabNbr As Integer = GetPrivateProfileInt( S_RAWPART, K_SLABNBR, 0, m_MainWindow.GetIniFile())
+ GetPrivateProfileString(S_RAWPART, K_BLOCKNAME, "", sBlock, m_MainWindow.GetIniFile())
+ Dim nSlabNbr As Integer = GetPrivateProfileInt(S_RAWPART, K_SLABNBR, 0, m_MainWindow.GetIniFile())
nSlabNbr += 1
Dim sSlabNbr As String = nSlabNbr.ToString()
- WritePrivateProfileString( S_RAWPART, K_SLABNBR, sSlabNbr, m_MainWindow.GetIniFile())
- Utility.SetBlockAndSlabNbr( sBlock, sSlabNbr)
+ WritePrivateProfileString(S_RAWPART, K_SLABNBR, sSlabNbr, m_MainWindow.GetIniFile())
+ Utility.SetBlockAndSlabNbr(sBlock, sSlabNbr)
End If
End If
' Assegno dati grezzo rettangolare ai textbox
@@ -282,8 +288,14 @@ Public Class RawPartPageUC
End If
EgtZoom(ZM.ALL)
End If
- ' Imposto il materiale corrente nella combobox
- MaterialsCmbx.SelectedItem = m_CurrentMachine.CurrMat
+ 'Imposto il materiale corrente nella combobox
+ 'MaterialsCmbx.SelectedItem = m_CurrentMachine.CurrMat
+ Dim Item As Material
+ For Each Item In MaterialsCmbx.Items
+ If Not IsNothing(m_CurrentMachine.CurrMat) AndAlso Item.sName = m_CurrentMachine.CurrMat.sName Then
+ MaterialsCmbx.SelectedItem = Item
+ End If
+ Next
End Sub
Private Sub OnMyMouseDownScene(sender As Object, e As System.Windows.Forms.MouseEventArgs) Handles m_CurrProjPage.OnMouseDownScene
@@ -1776,7 +1788,7 @@ Public Class RawPartPageUC
m_MainWindow.m_CNCommunication.m_CN.n_DReadELS_handle = 0
' Definisco flag tastatura
Dim bProbingOk As Boolean = False
- For I As integer = 0 To 120
+ For I As Integer = 0 To 120
' Devo rileggere la variabile ad ogni ciclo
m_MainWindow.m_CNCommunication.m_CN.ReadEls_Add_Parameter(ProbingStateNameVar, 3)
System.Threading.Thread.Sleep(100)
@@ -1813,7 +1825,7 @@ Public Class RawPartPageUC
Dim RawThicknessNameVar As String = String.Empty
GetPrivateProfileString(S_MACH_PROBING, K_RAWTHICKNESS, "", RawThicknessNameVar, m_MainWindow.GetMachIniFile())
m_MainWindow.m_CNCommunication.m_CN.n_DReadELS_handle = 0
- For I As integer = 0 To 20
+ For I As Integer = 0 To 20
' Devo rileggere la variabile ad ogni ciclo
m_MainWindow.m_CNCommunication.m_CN.ReadEls_Add_Parameter(RawThicknessNameVar, 3)
If m_MainWindow.m_CNCommunication.m_CN.n_DReadELS_handle = 3 Then
@@ -1900,10 +1912,10 @@ Public Class RawPartPageUC
Dim SlabIdWindow As New SlabIdWD(m_MainWindow)
' Recupero eventuali vecchi dati della lastra
If nRawId <> GDB_ID.NULL Then
- Dim sBlock As String = "" : EgtGetInfo( nRawId, INFO_RAW_BLOCK, sBlock)
- Dim sSlabNbr As String = "" : EgtGetInfo( nRawId, INFO_RAW_SLABNBR, sSlabNbr)
- SlabIdWindow.SetBlockName( sBlock)
- SlabIdWindow.SetSlabNbr( sSlabNbr)
+ Dim sBlock As String = "" : EgtGetInfo(nRawId, INFO_RAW_BLOCK, sBlock)
+ Dim sSlabNbr As String = "" : EgtGetInfo(nRawId, INFO_RAW_SLABNBR, sSlabNbr)
+ SlabIdWindow.SetBlockName(sBlock)
+ SlabIdWindow.SetSlabNbr(sSlabNbr)
End If
' Visualizzo finestra richiesta dati
If SlabIdWindow.ShowDialog() Then
@@ -1911,10 +1923,10 @@ Public Class RawPartPageUC
Dim sBlock As String = SlabIdWindow.GetBlockName()
Dim sSlabNbr As String = SlabIdWindow.GetSlabNbr()
' Li assegno
- Utility.SetBlockAndSlabNbr( sBlock, sSlabNbr)
+ Utility.SetBlockAndSlabNbr(sBlock, sSlabNbr)
' Li salvo
- WritePrivateProfileString( S_RAWPART, K_BLOCKNAME, sBlock, m_MainWindow.GetIniFile())
- WritePrivateProfileString( S_RAWPART, K_SLABNBR, sSlabNbr, m_MainWindow.GetIniFile())
+ WritePrivateProfileString(S_RAWPART, K_BLOCKNAME, sBlock, m_MainWindow.GetIniFile())
+ WritePrivateProfileString(S_RAWPART, K_SLABNBR, sSlabNbr, m_MainWindow.GetIniFile())
' Aggiorno visualizzazione
EgtDraw()
End If