From cd8ed7b1fc4e97fc141d103a3aef4e1e3fe8b60b Mon Sep 17 00:00:00 2001 From: Dario Sassi Date: Thu, 14 Feb 2019 11:57:23 +0000 Subject: [PATCH] =?UTF-8?q?EgtCAM5=202.1b2=20:=20-=20utensili=20custom=20c?= =?UTF-8?q?on=20quotatura=20punto=20di=20lavoro=20e=20possibilit=C3=A0=20d?= =?UTF-8?q?i=20adattamento=20a=20diverse=20dimensioni=20-=20tolto=20da=20s?= =?UTF-8?q?alvataggio=20di=20lavorazioni=20in=20DB=20controllo=20carateeri?= =?UTF-8?q?=20non=20pi=C3=B9=20vietati=20(*=3F/|\...).?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- My Project/AssemblyInfo.vb | 4 +- .../OperationExpander/OperationExpanderVM.vb | 1 + ToolsDbWindow/ToolTreeView.vb | 73 +++++++++++++++---- ToolsDbWindow/ToolsDbVM.vb | 4 +- 4 files changed, 62 insertions(+), 20 deletions(-) diff --git a/My Project/AssemblyInfo.vb b/My Project/AssemblyInfo.vb index 7254b59..a01b760 100644 --- a/My Project/AssemblyInfo.vb +++ b/My Project/AssemblyInfo.vb @@ -70,5 +70,5 @@ Imports System.Windows ' by using the '*' as shown below: ' - - + + diff --git a/OptionPanel/MachiningOptionPanel/OperationExpander/OperationExpanderVM.vb b/OptionPanel/MachiningOptionPanel/OperationExpander/OperationExpanderVM.vb index 5bca10d..cc6fedf 100644 --- a/OptionPanel/MachiningOptionPanel/OperationExpander/OperationExpanderVM.vb +++ b/OptionPanel/MachiningOptionPanel/OperationExpander/OperationExpanderVM.vb @@ -925,6 +925,7 @@ Public Class OperationExpanderVM m_SelectedOperation.m_Type = MCH_OY.DISP Then Return ' apro la finetra che chiede il nome e verifica che non sia giĆ  utilizzato (Nome lavorazione nel Db) Dim NameDialogVM As New EgtWPFLib5.NameDialogVM With { + .VerifyChars = False, .Title = EgtMsg(MSG_OPERATION + 18), .Name = TryCast(m_SelectedOperation, MachiningOpListBoxItem).LibMach, .NameVerifyer = AddressOf NameVerifyer} diff --git a/ToolsDbWindow/ToolTreeView.vb b/ToolsDbWindow/ToolTreeView.vb index 3a6b8d0..04aa8c7 100644 --- a/ToolsDbWindow/ToolTreeView.vb +++ b/ToolsDbWindow/ToolTreeView.vb @@ -112,9 +112,7 @@ Public Class ToolTreeViewItem m_NewTool = False m_Name = m_Name.Trim() WriteToolName() - If IsUUID(Path.GetFileNameWithoutExtension(m_Draw)) Then - SaveToolDraw() - End If + SaveToolDraw() EgtTdbSaveCurrTool() Case MsgBoxResult.No If m_NewTool Then @@ -1207,7 +1205,6 @@ Public Class ToolTreeViewItem Private Sub UpdateSceneToolDraw() ' Azzero errori m_nDrawingError = 0 - ' Se utensile con disegno automatico If String.IsNullOrEmpty(m_Draw) OrElse IsUUID(Path.GetFileNameWithoutExtension(m_Draw)) Then CreateToolDraw() @@ -1216,6 +1213,7 @@ Public Class ToolTreeViewItem EgtSetCurrentContext(IniFile.m_ToolsDbSceneContext) If Path.GetExtension(m_Draw).ToLower = ".nge" Then If EgtOpenFile(IniFile.m_sCurrMachToolsDirPath & "\" & m_Draw) Then + UpdateCustomToolDraw() EgtSetView(VT.TOP, False) EgtZoom(ZM.ALL) Else @@ -1273,18 +1271,63 @@ Public Class ToolTreeViewItem EgtZoom(ZM.ALL) End Sub + Private Sub UpdateCustomToolDraw() + ' Solo per frese + If m_Type <> MCH_TY.MILL_STD And m_Type <> MCH_TY.MILL_NOTIP Then return + ' Imposto contesto disegno utensili + EgtSetCurrentContext(IniFile.m_ToolsDbSceneContext) + ' Acquisisco file lua + If Not EgtLuaExecFile(IniFile.m_sToolMakersDir & "\ToolAdjust.lua") Then + EgtOutLog( "Error on UpdateCustomToolDraw : missing ToolAdjust.lua") + Return + End If + ' Imposto dati per creazione utensile + Dim dLen As double = 0 + StringToLen(m_Len, dLen) + EgtLuaSetGlobNumVar("TOOL.LEN", dLen) + Dim dDiam As double = 0 + StringToLen(m_Diam, dDiam) + EgtLuaSetGlobNumVar("TOOL.DIAM", dDiam) + ' Eseguo aggiornamento utensile + EgtLuaCallFunction("AdjustCustomTool") + ' Recupero errore + Dim nErr As Integer = 999 + EgtLuaGetGlobIntVar("TOOL.ERR", nErr) + m_nDrawingError = nErr + End Sub + Friend Function SaveToolDraw() As Boolean - ' Imposto dati per salvataggio utensile - ToolDraw.nToolContext = IniFile.m_ToolsDbSceneContext - ToolDraw.nType = m_Type - ' Eseguo salvataggio - Dim sName As String = Uuid & ".nge" - If Not ToolDraw.Save(sName) Then Return False - ' Salvo nome del disegno utensile - EgtSetCurrentContext(IniFile.m_ProjectSceneContext) - EgtTdbSetCurrToolParam(MCH_TP.DRAW, sName) - EgtTdbSaveCurrTool() - Return True + ' Se utensile con disegno automatico + If IsUUID(Path.GetFileNameWithoutExtension(m_Draw)) Then + ' Imposto dati per salvataggio utensile + ToolDraw.nToolContext = IniFile.m_ToolsDbSceneContext + ToolDraw.nType = m_Type + ' Eseguo salvataggio + Dim sName As String = Uuid & ".nge" + If Not ToolDraw.Save(sName) Then Return False + ' Salvo nome del disegno utensile + EgtSetCurrentContext(IniFile.m_ProjectSceneContext) + EgtTdbSetCurrToolParam(MCH_TP.DRAW, sName) + EgtTdbSaveCurrTool() + Return True + ' altrimenti utensile con disegno assegnato + Else + ' Solo per frese + If m_Type <> MCH_TY.MILL_STD And m_Type <> MCH_TY.MILL_NOTIP Then Return true + ' Imposto contesto disegno utensili + EgtSetCurrentContext(IniFile.m_ToolsDbSceneContext) + ' Nascondo layer quotature + Dim nDimsId As Integer = GDB_ID.NULL + nDimsId = EgtGetFirstNameInGroup(EgtGetFirstGroupInGroup(GDB_ID.ROOT), "DIMS") + EgtSetStatus(nDimsId, GDB_ST.OFF) + ' Salvo il modello + Dim bOk As Boolean = EgtSaveFile(IniFile.m_sCurrMachToolsDirPath & "\" & m_Draw, NGE.CMPTEXT) + ' ripristino visualizzazione layer aux + EgtSetStatus(nDimsId, GDB_ST.ON_) + ' ripristino contesto per DB utensili + EgtSetCurrentContext(IniFile.m_ProjectSceneContext) + Return bOk + End If End Function #End Region ' ToolSceneUpdate diff --git a/ToolsDbWindow/ToolsDbVM.vb b/ToolsDbWindow/ToolsDbVM.vb index 939c6fc..9e79259 100644 --- a/ToolsDbWindow/ToolsDbVM.vb +++ b/ToolsDbWindow/ToolsDbVM.vb @@ -459,9 +459,7 @@ Public Class ToolsDbVM CurrTool.WriteToolParam() CurrTool.m_Name = CurrTool.m_Name.Trim() CurrTool.WriteToolName() - If IsUUID(Path.GetFileNameWithoutExtension(CurrTool.m_Draw)) Then - CurrTool.SaveToolDraw() - End If + CurrTool.SaveToolDraw() EgtTdbSaveCurrTool() CurrTool.NewTool = False CurrTool.IsModifiedReset()