EgtWPFLib5 2.7i2 :

- gestita uscita in ogni caso da DB lavorazioni e utensili con CTRL senza salvare
- in DB lavorazioni corretto controllo su ExtLinkTypeList in scrittura.
This commit is contained in:
Dario Sassi
2025-10-03 19:08:24 +02:00
parent d6edfe5c01
commit e7ded3ea90
5 changed files with 15 additions and 17 deletions
+3 -5
View File
@@ -1843,12 +1843,10 @@ Public Class MachiningDbWindowVM
''' Manage the MachiningDb closing. This method is invoked by the CloseMachiningDbCommand.
''' </summary>
Public Sub CloseMachiningsDb(param As Object)
If (Keyboard.Modifiers And ModifierKeys.Alt) = ModifierKeys.Alt OrElse Keyboard.IsKeyDown(Key.F4) Then
Return
End If
Dim bSkipSaving As Boolean = ((Keyboard.Modifiers And ModifierKeys.Control) = ModifierKeys.Control)
m_bActive = False
' Se selezionata una lavorazione, verifico salvataggio
If TypeOf param Is MachiningTreeViewItem Then
If Not bSkipSaving AndAlso TypeOf param Is MachiningTreeViewItem Then
Dim CurrMachining As MachiningTreeViewItem = DirectCast(param, MachiningTreeViewItem)
If CurrMachining.IsValid Then
CurrMachining.WriteMachiningParam()
@@ -1878,7 +1876,7 @@ Public Class MachiningDbWindowVM
End If
End If
' Salvataggio DB lavorazioni
EgtMdbSave()
If Not bSkipSaving Then EgtMdbSave()
' Dichiaro lavorazione non più selezionata
If Not IsNothing(SelMachining) Then SelMachining.ResetSelected()
' Chiusura finestra
+1 -1
View File
@@ -6672,7 +6672,7 @@ Public Class MachiningTreeViewItem
EgtMdbSetCurrMachiningParam(MCH_MP.HEADSIDE, nValue)
nValue = If(IsNothing(LeadInTypeList), m_SelectedLeadInType, IdNameStruct.IdFromInd(m_SelectedLeadInType, LeadInTypeList))
EgtMdbSetCurrMachiningParam(MCH_MP.LEADINTYPE, nValue)
nValue = If(IsNothing(LeadInTypeList), m_SelectedExtLinkType, IdNameStruct.IdFromInd(m_SelectedExtLinkType, ExtLinkTypeList))
nValue = If(IsNothing(ExtLinkTypeList), m_SelectedExtLinkType, IdNameStruct.IdFromInd(m_SelectedExtLinkType, ExtLinkTypeList))
EgtMdbSetCurrMachiningParam(MCH_MP.EXTLINKTYPE, nValue)
nValue = If(IsNothing(LeadOutTypeList), m_SelectedLeadOutType, IdNameStruct.IdFromInd(m_SelectedLeadOutType, LeadOutTypeList))
EgtMdbSetCurrMachiningParam(MCH_MP.LEADOUTTYPE, nValue)
+1 -1
View File
@@ -63,4 +63,4 @@ Imports System.Windows
' <Assembly: AssemblyVersion("1.0.*")>
<Assembly: AssemblyVersion("2.7.9.1")>
<Assembly: AssemblyFileVersion("2.7.9.1")>
<Assembly: AssemblyFileVersion("2.7.9.2")>
+4 -6
View File
@@ -1826,14 +1826,12 @@ Public Class ToolDbWindowVM
''' Manage the ToolDb closing. This method is invoked by the CloseToolDbCommand.
''' </summary>
Public Sub CloseToolsDb(param As Object)
If (Keyboard.Modifiers And ModifierKeys.Alt) = ModifierKeys.Alt OrElse Keyboard.IsKeyDown(Key.F4) Then
Return
End If
Dim bSkipSaving As Boolean = ((Keyboard.Modifiers And ModifierKeys.Control) = ModifierKeys.Control)
m_bActive = False
' Imposto contesto di progetto
EgtSetCurrentContext(ToolDbWindowVM.m_ProjectSceneContext)
' Se c'è utensile selezionato, ne verifico salvataggio
If Not VerifySelectedToolModification() Then
If Not bSkipSaving AndAlso Not VerifySelectedToolModification() Then
If Not SelTool.IsValid() Then
'Utensile non valido, correggerlo o cancellarlo prima di uscire dal Db Utensili. - Errore
MessageBox.Show(EgtMsg(31129), EgtMsg(31126))
@@ -1842,13 +1840,13 @@ Public Class ToolDbWindowVM
Return
End If
' Salvataggio DB utensili
EgtTdbSave()
If Not bSkipSaving Then EgtTdbSave()
' Reset lua
EgtLuaResetGlobVar("STU")
' Dichiaro utensile non più selezionato
If Not IsNothing(SelTool) Then SelTool.ResetSelected()
' Se c'è il parametro Active sugli utensili
If m_Active_Visibility Then
If Not bSkipSaving And m_Active_Visibility Then
' aggiorno setup di default
UpdateDefSetup()
End If
+6 -4
View File
@@ -69,16 +69,18 @@ Public Structure IdNameStruct
End Function
Public Shared Function IdFromInd(Ind As Integer, List As ObservableCollection(Of Object)) As Integer
If TypeOf (List(Ind)) Is IdNameStruct Then
If Ind >= 0 AndAlso Ind < List.Count AndAlso TypeOf (List(Ind)) Is IdNameStruct Then
Return DirectCast(List(Ind), IdNameStruct).Id
Else
Return 0
End If
Return 0
End Function
Public Shared Function IdFromInd(Ind As Integer, List As List(Of Object)) As Integer
If TypeOf (List(Ind)) Is IdNameStruct Then
If Ind >= 0 AndAlso Ind < List.Count AndAlso TypeOf (List(Ind)) Is IdNameStruct Then
Return DirectCast(List(Ind), IdNameStruct).Id
Else
Return 0
End If
Return 0
End Function
Public Shared Function IdFromName(Name As String, List As ObservableCollection(Of Object)) As Integer