From bcfe9f3258e53fbce6f804773aca7969e71858d4 Mon Sep 17 00:00:00 2001 From: Demetrio Cassarino Date: Wed, 2 Jul 2025 16:32:40 +0200 Subject: [PATCH] -aggiunto nuovo tab final cut in machining --- Constants/ConstIni.vb | 2 + Machine/Alarms2PageUC.xaml | 58 ++++++++++++++ Machine/Alarms2PageUC.xaml.vb | 30 ++++++++ Machine/AlarmsPageUC.xaml | 26 +++---- Machine/CurrentMachine.vb | 30 ++++++++ Machine/MachinePageUC.xaml | 65 ++++++++-------- Machine/MachinePageUC.xaml.vb | 137 ++++++++++++++++++++++++++++++++++ OmagCUT.vbproj | 7 ++ 8 files changed, 311 insertions(+), 44 deletions(-) create mode 100644 Machine/Alarms2PageUC.xaml create mode 100644 Machine/Alarms2PageUC.xaml.vb diff --git a/Constants/ConstIni.vb b/Constants/ConstIni.vb index 0d959a0..86452af 100644 --- a/Constants/ConstIni.vb +++ b/Constants/ConstIni.vb @@ -284,6 +284,8 @@ Module ConstIni Public Const K_MACHINESDIR As String = "MachinesDir" Public Const K_TOOLMAKERSDIR As String = "ToolMakersDir" Public Const K_CURRMACH As String = "CurrMach" + Public Const K_ENABLEFINALSAWCUT As String = "EnableFinalSawCut" + Public Const K_FINALDEPTH As String = "FinalDepth" Public Const S_SIMUL As String = "Simul" Public Const K_SLIDERX As String = "SliderX" diff --git a/Machine/Alarms2PageUC.xaml b/Machine/Alarms2PageUC.xaml new file mode 100644 index 0000000..3d9e238 --- /dev/null +++ b/Machine/Alarms2PageUC.xaml @@ -0,0 +1,58 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Machine/Alarms2PageUC.xaml.vb b/Machine/Alarms2PageUC.xaml.vb new file mode 100644 index 0000000..88b938c --- /dev/null +++ b/Machine/Alarms2PageUC.xaml.vb @@ -0,0 +1,30 @@ +Imports EgtUILib + +Public Class Alarms2PageUC + + Private m_MainWindow As MainWindow = DirectCast(Application.Current.MainWindow, MainWindow) + + Private Sub Alarms2Page_Initialized(sender As Object, e As EventArgs) Handles Me.Initialized + FinalSawCutGpBx.Header = EgtMsg(91254) ' Taglio Finale + EnableFinalSawCutTxBl.Text = EgtMsg(91255) ' Abilita + FinalDepthTxBl.Text = EgtMsg(91256) ' Ultimo Spessore + End Sub + + Private Sub Allarm2Page_Loaded() Handles Me.Loaded + EnableFinalSawCutChBx.IsChecked = m_MainWindow.m_CurrentMachine.bEnableFinalSawCut + FinalDepthTxBx.Text = m_MainWindow.m_CurrentMachine.dFinalDepth + End Sub + + Private Sub EnableFinalSawCutChBx_IsChecked() Handles EnableFinalSawCutChBx.Click + m_MainWindow.m_CurrentMachine.bEnableFinalSawCut = EnableFinalSawCutChBx.IsChecked + WritePrivateProfileString(S_MACH, K_ENABLEFINALSAWCUT, If(m_MainWindow.m_CurrentMachine.bEnableFinalSawCut, "1", "0"), m_MainWindow.GetMachIniFile()) + End Sub + + Private Sub FinalDepthTxBx_EgtClosed() Handles FinalDepthTxBx.EgtClosed + Dim dVal As Double = 0 + StringToLen(FinalDepthTxBx.Text, dVal) + m_MainWindow.m_CurrentMachine.dFinalDepth = dVal + WritePrivateProfileString(S_MACH, K_FINALDEPTH, DoubleToString(m_MainWindow.m_CurrentMachine.dFinalDepth, 3), m_MainWindow.GetMachIniFile()) + End Sub + +End Class diff --git a/Machine/AlarmsPageUC.xaml b/Machine/AlarmsPageUC.xaml index e7529e5..04f37bf 100644 --- a/Machine/AlarmsPageUC.xaml +++ b/Machine/AlarmsPageUC.xaml @@ -1,11 +1,11 @@  + xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" + xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" + xmlns:EgtWPFLib="clr-namespace:EgtWPFLib;assembly=EgtWPFLib" + xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" + xmlns:d="http://schemas.microsoft.com/expression/blend/2008" + mc:Ignorable="d" + d:DesignHeight="768" d:DesignWidth="1280"> @@ -279,7 +279,7 @@ + Style="{DynamicResource OmagCut_GroupBox}"> @@ -298,7 +298,7 @@ + Style="{DynamicResource OmagCut_CenteredLowerCaseCharacterTextBlock}"/> @@ -308,8 +308,8 @@ + Style="{DynamicResource OmagCut_CenteredLowerCaseCharacterTextBlock}" + Visibility="Hidden"/> @@ -319,8 +319,8 @@ + Style="{DynamicResource OmagCut_CenteredLowerCaseCharacterTextBlock}" + Visibility="Hidden"/> diff --git a/Machine/CurrentMachine.vb b/Machine/CurrentMachine.vb index 41e460a..f2e65b1 100644 --- a/Machine/CurrentMachine.vb +++ b/Machine/CurrentMachine.vb @@ -212,6 +212,12 @@ Public Class CurrentMachine ' Massima altezza lavorabile con lama grande Private m_dHighPieceZ As Double = 200.0 + ' + Private m_dFinalDepth As Double = 0.0 + + ' Flag che abilita l'esecuzione del taglio finale + Private m_bEnableFinalSawCut As Boolean = False + #Region "Proprietà che leggono e scrivono i valori anche da o su file ini" Friend ReadOnly Property MaxTabDepth As Double Get @@ -1204,6 +1210,24 @@ Public Class CurrentMachine End Get End Property + Friend Property bEnableFinalSawCut As Boolean + Get + Return m_bEnableFinalSawCut + End Get + Set(value As Boolean) + m_bEnableFinalSawCut = value + End Set + End Property + + Friend Property dFinalDepth As Double + Get + Return m_dFinalDepth + End Get + Set(value As Double) + m_dFinalDepth = value + End Set + End Property + #End Region Sub New() @@ -1488,6 +1512,12 @@ Public Class CurrentMachine ' Massimo spessore lavorabile con lama grande m_dHighPieceZ = GetPrivateProfileDouble(S_RAWMOVE, "MaxHeightPiece", 800.0, m_MainWindow.GetMachIniFile()) + + ' Flag per abilitare taglio finale + m_bEnableFinalSawCut = GetPrivateProfileInt(S_MACH, K_ENABLEFINALSAWCUT, 0, m_MainWindow.GetMachIniFile()) <> 0 + + ' Flag per abilitare taglio finale + m_dFinalDepth = GetPrivateProfileDouble(S_MACH, K_FINALDEPTH, 0.0, m_MainWindow.GetMachIniFile()) End Sub ' Per il controllo FANUC al momento dell'inizializzazione del CN devono essere lette alcune variabili diff --git a/Machine/MachinePageUC.xaml b/Machine/MachinePageUC.xaml index c884f5f..ac43607 100644 --- a/Machine/MachinePageUC.xaml +++ b/Machine/MachinePageUC.xaml @@ -5,16 +5,16 @@ xmlns:d="http://schemas.microsoft.com/expression/blend/2008" mc:Ignorable="d" d:DesignHeight="853.3" d:DesignWidth="1280"> - + - + - - + + - + @@ -25,37 +25,40 @@ + - - + - - - - - - - - - - - - - - - - - - - - - + + + + + + + + + + + + + + + + + + + + + + - + + + - + - + diff --git a/Machine/MachinePageUC.xaml.vb b/Machine/MachinePageUC.xaml.vb index 94e6eb3..c0c305d 100644 --- a/Machine/MachinePageUC.xaml.vb +++ b/Machine/MachinePageUC.xaml.vb @@ -13,6 +13,7 @@ Public Class MachinePageUC Friend m_WaterJetPageUC As WaterJetPageUC Friend m_MachineCNPageUC As MachineCNPageUC Friend m_StatisticsPageUC As StatisticsPageUC + Friend m_Alarms2PageUC As Alarms2PageUC ' Riferimento alla pagina correntemente attiva Friend m_ActiveMachinePage As MachinePages @@ -25,6 +26,7 @@ Public Class MachinePageUC WaterJet MachineCN Statistics + Alarms2 End Enum Private Sub MachinePage_Initialized(sender As Object, e As EventArgs) Handles Me.Initialized @@ -37,6 +39,7 @@ Public Class MachinePageUC m_WaterJetPageUC = New WaterJetPageUC m_MachineCNPageUC = New MachineCNPageUC m_StatisticsPageUC = New StatisticsPageUC + m_Alarms2PageUC = New Alarms2PageUC 'Posizionemento nella griglia delle Page UserControl m_AlarmsPageUC.SetValue(Grid.RowProperty, 1) @@ -46,8 +49,11 @@ Public Class MachinePageUC m_WaterJetPageUC.SetValue(Grid.RowProperty, 1) m_MachineCNPageUC.SetValue(Grid.RowProperty, 1) m_StatisticsPageUC.SetValue(Grid.RowProperty, 1) + m_Alarms2PageUC.SetValue(Grid.RowProperty, 1) AlarmsBtn.ToolTip = EgtMsg(MSG_MACHINEPAGEUC + 5) + Alarms2Btn.ToolTip = EgtMsg(MSG_MACHINEPAGEUC + 5) + ToolsDBBtn.ToolTip = EgtMsg(MSG_MACHINEPAGEUC + 6) MachiningDBBtn.ToolTip = EgtMsg(MSG_MACHINEPAGEUC + 7) PolishingsBtn.Content = EgtMsg(91090) @@ -171,6 +177,95 @@ Public Class MachinePageUC MachinePageGrid.Children.Remove(m_StatisticsPageUC) MachinePageGrid.Children.Add(m_AlarmsPageUC) m_ActiveMachinePage = MachinePages.Alarms + Case MachinePages.Alarms2 + Alarms2Btn.IsChecked = False + MachinePageGrid.Children.Remove(m_Alarms2PageUC) + MachinePageGrid.Children.Add(m_AlarmsPageUC) + m_ActiveMachinePage = MachinePages.Alarms + End Select + End Sub + + Private Sub Alarms2Btn_Click(sender As Object, e As RoutedEventArgs) Handles Alarms2Btn.Click + Select Case m_ActiveMachinePage + Case MachinePages.Alarms + AlarmsBtn.IsChecked = False + Alarms2Btn.IsChecked = True + MachinePageGrid.Children.Remove(m_AlarmsPageUC) + MachinePageGrid.Children.Add(m_Alarms2PageUC) + m_ActiveMachinePage = MachinePages.Alarms2 + Case MachinePages.ToolsDb + ' Verifica ed eventuale salvataggio utensile corrente + If Not m_ToolsDbPageUC.SaveCurrTool() Then + Alarms2Btn.IsChecked = False + ToolsDBBtn.IsChecked = True + Return + End If + ' salvo il DB utensili + EgtSetCurrentContext(m_MainWindow.m_CurrentProjectPageUC.CurrentProjectScene.GetCtx()) + EgtTdbSave() + ' passo alla pagina Dati macchina + Alarms2Btn.IsChecked = True + ToolsDBBtn.IsChecked = False + MachinePageGrid.Children.Remove(m_ToolsDbPageUC) + MachinePageGrid.Children.Add(m_Alarms2PageUC) + m_ActiveMachinePage = MachinePages.Alarms2 + Case MachinePages.MachiningDb + ' Verifica ed eventuale salvataggio lavorazione corrente + If Not m_MachiningDbPageUC.SaveCurrMachining() Then + Alarms2Btn.IsChecked = False + MachiningDBBtn.IsChecked = True + Return + End If + ' salvo il DB lavorazioni + EgtSetCurrentContext(m_MainWindow.m_CurrentProjectPageUC.CurrentProjectScene.GetCtx()) + EgtMdbSave() + ' passo alla pagina Dati macchina + Alarms2Btn.IsChecked = True + MachiningDBBtn.IsChecked = False + MachinePageGrid.Children.Remove(m_MachiningDbPageUC) + MachinePageGrid.Children.Add(m_Alarms2PageUC) + m_ActiveMachinePage = MachinePages.Alarms2 + Case MachinePages.Polishings + ' Verifica ed eventuale salvataggio Lucidatura corrente + If Not m_PolishingsPageUC.SaveKit() Then + Alarms2Btn.IsChecked = False + PolishingsBtn.IsChecked = True + Return + End If + ' passo alla pagina Dati Macchina + Alarms2Btn.IsChecked = True + PolishingsBtn.IsChecked = False + MachinePageGrid.Children.Remove(m_PolishingsPageUC) + MachinePageGrid.Children.Add(m_Alarms2PageUC) + m_ActiveMachinePage = MachinePages.Alarms2 + Case MachinePages.WaterJet + ' Verifica ed eventuale salvataggio Db Waterjet + Dim nPressedBtn As Integer = DirectCast(m_WaterJetPageUC.DataContext, WaterjetDbWindowVM_OmagCUT).CloseWaterjetDb_OmagCut(m_MainWindow) + If nPressedBtn = WaterjetDbWindowVM_OmagCUT.SaveWndBtnEnum.CANCEL Then + Alarms2Btn.IsChecked = False + WaterJetBtn.IsChecked = True + Return + ElseIf nPressedBtn = WaterjetDbWindowVM_OmagCUT.SaveWndBtnEnum.NO Then + m_WaterJetPageUC.WaterJetPage_Reinitialize() + End If + ' passo alla pagina Dati Macchina + Alarms2Btn.IsChecked = True + WaterJetBtn.IsChecked = False + MachinePageGrid.Children.Remove(m_WaterJetPageUC) + MachinePageGrid.Children.Add(m_Alarms2PageUC) + m_ActiveMachinePage = MachinePages.Alarms2 + Case MachinePages.MachineCN + Alarms2Btn.IsChecked = True + TestingPageBtn.IsChecked = False + MachinePageGrid.Children.Remove(m_MachineCNPageUC) + MachinePageGrid.Children.Add(m_Alarms2PageUC) + m_ActiveMachinePage = MachinePages.Alarms2 + Case MachinePages.Statistics + Alarms2Btn.IsChecked = True + StatisticsBtn.IsChecked = False + MachinePageGrid.Children.Remove(m_StatisticsPageUC) + MachinePageGrid.Children.Add(m_Alarms2PageUC) + m_ActiveMachinePage = MachinePages.Alarms2 End Select End Sub @@ -241,6 +336,12 @@ Public Class MachinePageUC MachinePageGrid.Children.Remove(m_StatisticsPageUC) MachinePageGrid.Children.Add(m_ToolsDbPageUC) m_ActiveMachinePage = MachinePages.ToolsDb + Case MachinePages.Alarms2 + Alarms2Btn.IsChecked = False + ToolsDBBtn.IsChecked = True + MachinePageGrid.Children.Remove(m_Alarms2PageUC) + MachinePageGrid.Children.Add(m_ToolsDbPageUC) + m_ActiveMachinePage = MachinePages.ToolsDb End Select End Sub @@ -313,6 +414,12 @@ Public Class MachinePageUC MachinePageGrid.Children.Remove(m_StatisticsPageUC) MachinePageGrid.Children.Add(m_MachiningDbPageUC) m_ActiveMachinePage = MachinePages.MachiningDb + Case MachinePages.Alarms2 + Alarms2Btn.IsChecked = False + MachiningDBBtn.IsChecked = True + MachinePageGrid.Children.Remove(m_Alarms2PageUC) + MachinePageGrid.Children.Add(m_MachiningDbPageUC) + m_ActiveMachinePage = MachinePages.MachiningDb End Select End Sub @@ -386,6 +493,12 @@ Public Class MachinePageUC MachinePageGrid.Children.Remove(m_StatisticsPageUC) MachinePageGrid.Children.Add(m_PolishingsPageUC) m_ActiveMachinePage = MachinePages.Polishings + Case MachinePages.Alarms2 + Alarms2Btn.IsChecked = False + PolishingsBtn.IsChecked = True + MachinePageGrid.Children.Remove(m_Alarms2PageUC) + MachinePageGrid.Children.Add(m_PolishingsPageUC) + m_ActiveMachinePage = MachinePages.Polishings End Select End Sub @@ -457,6 +570,12 @@ Public Class MachinePageUC MachinePageGrid.Children.Remove(m_StatisticsPageUC) MachinePageGrid.Children.Add(m_WaterJetPageUC) m_ActiveMachinePage = MachinePages.WaterJet + Case MachinePages.Alarms2 + Alarms2Btn.IsChecked = False + WaterJetBtn.IsChecked = True + MachinePageGrid.Children.Remove(m_Alarms2PageUC) + MachinePageGrid.Children.Add(m_WaterJetPageUC) + m_ActiveMachinePage = MachinePages.WaterJet End Select End Sub @@ -537,6 +656,12 @@ Public Class MachinePageUC MachinePageGrid.Children.Remove(m_StatisticsPageUC) MachinePageGrid.Children.Add(m_MachineCNPageUC) m_ActiveMachinePage = MachinePages.MachineCN + Case MachinePages.Alarms2 + Alarms2Btn.IsChecked = False + TestingPageBtn.IsChecked = True + MachinePageGrid.Children.Remove(m_Alarms2PageUC) + MachinePageGrid.Children.Add(m_MachineCNPageUC) + m_ActiveMachinePage = MachinePages.MachineCN End Select End Sub @@ -617,6 +742,12 @@ Public Class MachinePageUC m_ActiveMachinePage = MachinePages.Statistics Case MachinePages.Statistics StatisticsBtn.IsChecked = True + Case MachinePages.Alarms2 + Alarms2Btn.IsChecked = False + StatisticsBtn.IsChecked = True + MachinePageGrid.Children.Remove(m_Alarms2PageUC) + MachinePageGrid.Children.Add(m_StatisticsPageUC) + m_ActiveMachinePage = MachinePages.Statistics End Select End Sub @@ -670,6 +801,12 @@ Public Class MachinePageUC MachinePageGrid.Children.Remove(m_StatisticsPageUC) MachinePageGrid.Children.Add(m_AlarmsPageUC) m_ActiveMachinePage = MachinePages.Alarms + Case MachinePages.Alarms2 + AlarmsBtn.IsChecked = True + Alarms2Btn.IsChecked = False + MachinePageGrid.Children.Remove(m_Alarms2PageUC) + MachinePageGrid.Children.Add(m_AlarmsPageUC) + m_ActiveMachinePage = MachinePages.Alarms End Select End Sub diff --git a/OmagCUT.vbproj b/OmagCUT.vbproj index 13e2234..3a033ed 100644 --- a/OmagCUT.vbproj +++ b/OmagCUT.vbproj @@ -230,6 +230,9 @@ LicenseWindow.xaml + + Alarms2PageUC.xaml + AlarmsPageUC.xaml @@ -534,6 +537,10 @@ Designer MSBuild:Compile + + Designer + MSBuild:Compile + Designer MSBuild:Compile