EgtCAM5 2.2c1 :
- Gestione dei parametri da visualizzare per ciascun utensile del DB Utensile ora è spostata sulla libreria EgtWPFLib5 (come già fatto per Db Lavorazioni) - Cancellati file non più necessari grazie alla nuova gestione
This commit is contained in:
@@ -0,0 +1,108 @@
|
||||
Imports System.Windows.Forms.Integration
|
||||
Imports System.Collections.ObjectModel
|
||||
Imports System.Reflection
|
||||
Imports System.IO
|
||||
Imports EgtUILib
|
||||
Imports EgtWPFLib5
|
||||
|
||||
Public Class MyToolDbWindowVM
|
||||
Inherits ToolDbWindowVM
|
||||
|
||||
Private Const SETUP_FILEEXTENSION As String = ".stu"
|
||||
|
||||
#Region "CONSTRUCTOR"
|
||||
|
||||
Sub New(sMachineDirPath As String, sMachineIniPath As String, ProjectSceneContext As Integer, Optional sMatType As String = "Wood")
|
||||
MyBase.New(sMachineDirPath, sMachineIniPath, ProjectSceneContext, sMatType)
|
||||
End Sub
|
||||
|
||||
#End Region ' Constructor
|
||||
|
||||
#Region "METHODS"
|
||||
|
||||
' Funzione che aggiorna setup default con tool che hanno parametro Active
|
||||
Public Overrides Function UpdateDefSetup() As Boolean
|
||||
InitSetupFile()
|
||||
' Creo Setup
|
||||
Dim DefSetup As New SetUpVM
|
||||
' inizializzo ambiente setup
|
||||
DefSetup.InitSetUp()
|
||||
' resetto lista utensili e posizioni
|
||||
DefSetup.ToolsList.Clear()
|
||||
DefSetup.ClearAllPos()
|
||||
DefSetup.LoadMachineTools()
|
||||
' ciclo sugli utensili del db
|
||||
For Each ToolFamily In ToolsList
|
||||
For Each Tool In ToolFamily.Items
|
||||
Dim ToolItem As EgtWPFLib5.ToolTreeViewItem = DirectCast(Tool, EgtWPFLib5.ToolTreeViewItem)
|
||||
' verifico se Active
|
||||
If ToolItem.Active Then
|
||||
For Each TF In DefSetup.ToolsList
|
||||
For TIndex = TF.Items.Count - 1 To 0 Step -1
|
||||
Dim T As ToolItem = DirectCast(TF.Items(TIndex), ToolItem)
|
||||
If ToolItem.Name = T.Name Then
|
||||
DefSetup.ToolDoubleClick(T)
|
||||
End If
|
||||
Next
|
||||
Next
|
||||
End If
|
||||
Next
|
||||
Next
|
||||
Dim DefSetupPath As String = IniFile.m_sMachinesRoot & "\" & IniFile.m_sMachineName & "\SetUp"
|
||||
Dim DefSetupName As String = String.Empty
|
||||
EgtUILib.GetPrivateProfileString(S_SETUP, K_DEFAULT, "", DefSetupName, IniFile.m_sCurrMachIniFilePath)
|
||||
DefSetupPath += "\" & DefSetupName & SETUP_FILEEXTENSION
|
||||
If Not DefSetup.Save(DefSetupPath) Then EgtOutLog("Impossible to save default setup.")
|
||||
Return True
|
||||
End Function
|
||||
|
||||
' Inizializzo file Setup
|
||||
Private Sub InitSetupFile()
|
||||
' verifico che il file di configurazione attrezzaggio (lua) della macchina esista
|
||||
If Not File.Exists(IniFile.m_sCurrMachScriptsDirPath & "\" & SETUP_LUA) Then
|
||||
EgtOutLog("SetUp error: SetUp configuration file doesn't exist ")
|
||||
MessageBox.Show(EgtMsg(MSG_SETUPERRORS + 7), EgtMsg(MSG_SETUPERRORS + 1), MessageBoxButton.OK, MessageBoxImage.Error)
|
||||
Return
|
||||
End If
|
||||
' carico Lua che contiene le funzioni per ottenere le posizioni valide dell'utensile selezionato,
|
||||
' e testa e uscita dell'utensile attrezzato
|
||||
EgtLuaExecFile(IniFile.m_sCurrMachScriptsDirPath & "\" & SETUP_LUA)
|
||||
' verifico che le teste riportate in configurazione esistano
|
||||
Dim Index As Integer = 1
|
||||
Dim nErr As Integer = 0
|
||||
While nErr = 0
|
||||
Dim sHead As String = String.Empty
|
||||
nErr = 999
|
||||
EgtLuaSetGlobIntVar("STU.INDEX", Index)
|
||||
EgtLuaCallFunction("STU.GetTcPosHeadGroupFromPos")
|
||||
' Leggo variabili
|
||||
EgtLuaGetGlobStringVar("STU.HEAD", sHead)
|
||||
EgtLuaGetGlobIntVar("STU.ERR", nErr)
|
||||
If nErr = 0 Then
|
||||
If EgtGetHeadExitCount(sHead) = 0 Then
|
||||
MessageBox.Show(EgtMsg(MSG_SETUPERRORS + 8), EgtMsg(MSG_SETUPERRORS + 1), MessageBoxButton.OK, MessageBoxImage.Error)
|
||||
Return
|
||||
End If
|
||||
End If
|
||||
Index += 1
|
||||
End While
|
||||
' Verifico esistenza direttorio per attrezzaggi
|
||||
Dim sDir As String = IniFile.m_sMachinesRoot & "\" & IniFile.m_sMachineName & "\SetUp"
|
||||
If Not Directory.Exists(sDir) Then
|
||||
Try
|
||||
Directory.CreateDirectory(sDir)
|
||||
Catch ex As Exception
|
||||
EgtOutLog("Error in SetupDir creation " & ex.ToString())
|
||||
Return
|
||||
End Try
|
||||
End If
|
||||
|
||||
End Sub
|
||||
|
||||
Public Overrides Sub OnCursorPos(ByVal sender As Object, ByVal sCursorPos As String) 'Handles m_ToolScene.OnCursorPos
|
||||
Application.Msn.NotifyColleagues(Application.NOTIFYCURRPOS, sCursorPos)
|
||||
End Sub
|
||||
|
||||
#End Region ' Methods
|
||||
|
||||
End Class
|
||||
Reference in New Issue
Block a user