diff --git a/ConstMsg.vb b/ConstMsg.vb
index c798c27..1af9a24 100644
--- a/ConstMsg.vb
+++ b/ConstMsg.vb
@@ -18,7 +18,7 @@
Public Const MSG_FRAMECUTPAGEUC As Integer = MSG_OMAGCUT + 600
Public Const MSG_MACHINEPAGEUC As Integer = MSG_OMAGCUT + 700
Public Const MSG_TOOLSDBPAGEUC As Integer = MSG_OMAGCUT + 730
- Public Const MSG_MACHININGSDBPAGEUC As Integer = MSG_OMAGCUT + 770
+ Public Const MSG_MACHININGSDBPAGEUC As Integer = MSG_OMAGCUT + 760
Public Const MSG_ALARMSPAGEUC As Integer = MSG_OMAGCUT + 800
Public Const MSG_OPTIONSPAGEUC As Integer = MSG_OMAGCUT + 900
diff --git a/MachiningDbPageUC.xaml b/MachiningDbPageUC.xaml
index 2449782..002d524 100644
--- a/MachiningDbPageUC.xaml
+++ b/MachiningDbPageUC.xaml
@@ -206,6 +206,8 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
+
diff --git a/MachiningDbPageUC.xaml.vb b/MachiningDbPageUC.xaml.vb
index bc07985..ec3560c 100644
--- a/MachiningDbPageUC.xaml.vb
+++ b/MachiningDbPageUC.xaml.vb
@@ -23,7 +23,8 @@ Public Class MachiningDbPageUC
Dim LeadOutType() As String = {"Centrata", "Interna", "Esterna"}
Dim CurveUse() As String = {"Salta", "Approssima", "Convesso"}
Dim StepType() As String = {"Step", "Una via", "Spirale"}
- Dim Tool As New List(Of String)
+ Dim SawTool As New List(Of String)
+ Dim DrillTool As New List(Of String)
'Variabile che conserva la lavorazione precedentemente selezionata, usata nel caso si selezioni annulla quando si cambia lavorazione selezionata
Private m_OldItem As Object
@@ -41,7 +42,7 @@ Public Class MachiningDbPageUC
LeadOutTypeCmBx.ItemsSource = LeadOutType
CurveUseCmBx.ItemsSource = CurveUse
StepTypeCmBx.ItemsSource = StepType
- ToolCmBx.ItemsSource = Tool
+ 'ToolCmBx.ItemsSource = SawTool
'Imposto i messaggi letti dal file dei messaggi
NameTxBl.Text = EgtMsg(MSG_MACHININGSDBPAGEUC + 1)
@@ -56,7 +57,15 @@ Public Class MachiningDbPageUC
LeadOutTypeTxBl.Text = EgtMsg(MSG_MACHININGSDBPAGEUC + 10)
CurveUseTxBl.Text = EgtMsg(MSG_MACHININGSDBPAGEUC + 11)
ApproxTxBl.Text = EgtMsg(MSG_MACHININGSDBPAGEUC + 12)
- ToolTxBl.Text = "Utensile"
+
+ StartPosTxBl.Text = EgtMsg(MSG_MACHININGSDBPAGEUC + 13)
+ StartsLowLenTxBl.Text = EgtMsg(MSG_MACHININGSDBPAGEUC + 14)
+ EndsLowLenTxBl.Text = EgtMsg(MSG_MACHININGSDBPAGEUC + 15)
+ ThrouAddLenTxBl.Text = EgtMsg(MSG_MACHININGSDBPAGEUC + 16)
+ StepTxBl.Text = EgtMsg(MSG_MACHININGSDBPAGEUC + 17)
+ ReturnPosTxBl.Text = EgtMsg(MSG_MACHININGSDBPAGEUC + 18)
+
+ ToolTxBl.Text = EgtMsg(MSG_MACHININGSDBPAGEUC + 19)
' Associo TextBox e Label
Dim TempLabel1 As New Label
@@ -70,30 +79,51 @@ Public Class MachiningDbPageUC
End Sub
Private Sub MachiningDbPage_Loaded(sender As Object, e As RoutedEventArgs)
+ EgtSetCurrentContext(m_MainWindow.m_CurrentProjectPageUC.CurrentProjectScene.GetCtx())
+ InitializeToolLists()
If m_bFirst Then
' Inizializzo le famiglie di utensili nell'albero
- EgtSetCurrentContext(m_MainWindow.m_CurrentProjectPageUC.CurrentProjectScene.GetCtx())
- InitializeToolFamily(K_SAWING, MCH_MY.SAWING, EgtMsg(MSG_MACHININGSDBPAGEUC + 21))
- 'InitializeToolFamily(K_DRILLING, MCH_MY.DRILLING, EgtMsg(MSG_MACHININGSDBPAGEUC + 22))
- 'InitializeToolFamily(K_MILLING, MCH_MY.MILLING, EgtMsg(MSG_MACHININGSDBPAGEUC + 23))
+ InitializeToolLists()
+ InitializeMachiningFamily(K_SAWING, MCH_MY.SAWING, EgtMsg(MSG_MACHININGSDBPAGEUC + 31))
+ InitializeMachiningFamily(K_DRILLING, MCH_MY.DRILLING, EgtMsg(MSG_MACHININGSDBPAGEUC + 32))
+ 'InitializeToolFamily(K_MILLING, MCH_MY.MILLING, EgtMsg(MSG_MACHININGSDBPAGEUC + 33))
m_bFirst = False
- Else
- EgtSetCurrentContext(m_MainWindow.m_CurrentProjectPageUC.CurrentProjectScene.GetCtx())
End If
InitializeFirstSelectedItem()
End Sub
+ 'Funzione che permette di inizializzare le liste di utensili
+ Private Sub InitializeToolLists()
+ SawTool.Clear()
+ Dim sToolName As String = String.Empty
+ Dim nType As Integer = MCH_TY.NONE
+ If EgtTdbGetFirstTool(MCH_TF.SAWBLADE, sToolName, nType) Then
+ SawTool.Add(sToolName)
+ While EgtTdbGetNextTool(MCH_TF.SAWBLADE, sToolName, nType)
+ SawTool.Add(sToolName)
+ End While
+ End If
+ DrillTool.Clear()
+ If EgtTdbGetFirstTool(MCH_TF.DRILLBIT, sToolName, nType) Then
+ DrillTool.Add(sToolName)
+ While EgtTdbGetNextTool(MCH_TF.DRILLBIT, sToolName, nType)
+ DrillTool.Add(sToolName)
+ End While
+ End If
+
+ End Sub
+
'Funzione che permette l'inizializzazione di albero e parametri all'apertura della pagina ToolsDb
Private Sub InitializeFirstSelectedItem()
If MachiningsList.Count > 0 Then
- For Each ToolFamily In MachiningsList
- If ToolFamily.Items.Count > 0 Then
- ToolFamily.IsExpanded = True
- ToolFamily.Items(0).IsSelected = True
- EgtMdbSetCurrMachining(ToolFamily.Items(0).Name)
- m_OldItem = ToolFamily.Items(0)
+ For Each MachiningFamily In MachiningsList
+ If MachiningFamily.Items.Count > 0 Then
+ MachiningFamily.IsExpanded = True
+ MachiningFamily.Items(0).IsSelected = True
+ EgtMdbSetCurrMachining(MachiningFamily.Items(0).Name)
+ m_OldItem = MachiningFamily.Items(0)
GetMachiningParams()
ViewMachiningParams()
Exit Sub
@@ -142,11 +172,11 @@ Public Class MachiningDbPageUC
Dim NewName As String = SelectedCathegory.Name
EgtMdbGetMachiningNewName(NewName)
If EgtMdbCopyMachining(SelectedCathegory.Name, NewName) Then
- 'Dim CurrType As Integer
- 'EgtMdbGetCurrMachiningParam(MCH_TP.TYPE, CurrType)
+ Dim CurrType As Integer
+ EgtMdbGetCurrMachiningParam(MCH_MP.TYPE, CurrType)
For Each MachiningFamily In MachiningsList
- If (MachiningFamily.nFType And MCH_MY.SAWING) <> 0 Then 'CurrType al posto di MCH_MY.SAWING
- Dim NewMachiningItem As New CustomItem(NewName, MCH_MY.SAWING) 'CurrType al posto di MCH_MY.SAWING
+ If MachiningFamily.nFType = CurrType Then
+ Dim NewMachiningItem As New CustomItem(NewName, CurrType)
MachiningFamily.Items.Add(NewMachiningItem)
NewMachiningItem.IsSelected = True
GetMachiningParams()
@@ -191,7 +221,7 @@ Public Class MachiningDbPageUC
End If
End Sub
- Private Sub InitializeToolFamily(sFIniConst As String, nFType As Integer, sFName As String)
+ Private Sub InitializeMachiningFamily(sFIniConst As String, nFType As Integer, sFName As String)
If GetPrivateProfileInt(S_MACHININGS, sFIniConst, 0, m_MainWindow.GetMachIniFile()) = 1 Then
Dim MachiningCathegory As New CathegoryItem(sFName, nFType)
Dim MachiningName As String = String.Empty
@@ -231,6 +261,7 @@ Public Class MachiningDbPageUC
NameTxBx.Text = m_sMachiningName
EgtMdbGetCurrMachiningParam(MCH_MP.DEPTH_STR, ToolString)
DepthTxBx.Text = ToolString
+ 'Parametri Taglio
EgtMdbGetCurrMachiningParam(MCH_MP.SIDEANGLE, ToolDouble)
SideAngleTxBx.Text = ToolDouble
EgtMdbGetCurrMachiningParam(MCH_MP.INVERT, ToolBool)
@@ -251,18 +282,42 @@ Public Class MachiningDbPageUC
CurveUseCmBx.SelectedIndex = ToolInt
EgtMdbGetCurrMachiningParam(MCH_MP.APPROX, ToolDouble)
ApproxTxBx.Text = ToolDouble
+ 'Parametri Foratura
+ EgtMdbGetCurrMachiningParam(MCH_MP.STARTPOS, ToolDouble)
+ StartPosTxBx.Text = ToolDouble
+ EgtMdbGetCurrMachiningParam(MCH_MP.STARTSLOWLEN, ToolDouble)
+ StartsLowLenTxBx.Text = ToolDouble
+ EgtMdbGetCurrMachiningParam(MCH_MP.ENDSLOWLEN, ToolDouble)
+ EndsLowLenTxBx.Text = ToolDouble
+ EgtMdbGetCurrMachiningParam(MCH_MP.THROUADDLEN, ToolDouble)
+ ThrouAddLenTxBx.Text = ToolDouble
+ EgtMdbGetCurrMachiningParam(MCH_MP.STEP_, ToolDouble)
+ StepTxBx.Text = ToolDouble
+ EgtMdbGetCurrMachiningParam(MCH_MP.RETURNPOS, ToolDouble)
+ ReturnPosTxBx.Text = ToolDouble
+ 'Parametri utensile
+ Dim nMachiningType As Integer
+ EgtMdbGetCurrMachiningParam(MCH_MP.TYPE, nMachiningType)
+ Select Case nMachiningType
+ Case MCH_MY.SAWING 'Taglio
+ ToolCmBx.ItemsSource = SawTool
+ Case MCH_MY.DRILLING 'Foratura
+ ToolCmBx.ItemsSource = DrillTool
+ End Select
EgtMdbGetCurrMachiningParam(MCH_MP.TOOL, ToolString)
- Tool.Clear()
- Dim ToolName As String = String.Empty
- Dim nType As Integer = MCH_TY.NONE
- If EgtTdbGetFirstTool(MCH_TF.SAWBLADE, ToolName, nType) Then
- Tool.Add(ToolName)
- While EgtTdbGetNextTool(MCH_TF.SAWBLADE, ToolName, nType)
- Tool.Add(ToolName)
- End While
+ Dim bToolExist As Boolean = False
+ For Each CurrTool In SawTool
+ If CurrTool = ToolString Then
+ bToolExist = True
+ Exit For
+ End If
+ Next
+ If bToolExist Then
+ ToolCmBx.SelectedItem = ToolString
+ 'Else
+ ' SawTool.Add("")
+ ' ToolCmBx.SelectedItem = ""
End If
- ToolCmBx.SelectedItem = ToolString
-
End Sub
Friend Sub SetMachiningParams()
@@ -271,6 +326,7 @@ Public Class MachiningDbPageUC
Dim bTemp As Boolean
EgtMdbSetCurrMachiningParam(MCH_MP.NAME, NameTxBx.Text)
EgtMdbSetCurrMachiningParam(MCH_MP.DEPTH_STR, DepthTxBx.Text)
+ 'Parametri Taglio
StringToDouble(SideAngleTxBx.Text, dTemp)
EgtMdbSetCurrMachiningParam(MCH_MP.SIDEANGLE, dTemp)
bTemp = InvertChBx.IsChecked
@@ -284,30 +340,93 @@ Public Class MachiningDbPageUC
EgtMdbSetCurrMachiningParam(MCH_MP.CURVEUSE, CurveUseCmBx.SelectedIndex)
StringToDouble(ApproxTxBx.Text, dTemp)
EgtMdbSetCurrMachiningParam(MCH_MP.APPROX, dTemp)
- EgtMdbSetCurrMachiningParam(MCH_MP.TOOL, ToolCmBx.SelectedItem.ToString)
+ 'Parametri Foratura
+ StringToDouble(StartPosTxBx.Text, dTemp)
+ EgtMdbSetCurrMachiningParam(MCH_MP.STARTPOS, dTemp)
+ StringToDouble(StartsLowLenTxBx.Text, dTemp)
+ EgtMdbSetCurrMachiningParam(MCH_MP.STARTSLOWLEN, dTemp)
+ StringToDouble(EndsLowLenTxBx.Text, dTemp)
+ EgtMdbSetCurrMachiningParam(MCH_MP.ENDSLOWLEN, dTemp)
+ StringToDouble(ThrouAddLenTxBx.Text, dTemp)
+ EgtMdbSetCurrMachiningParam(MCH_MP.THROUADDLEN, dTemp)
+ StringToDouble(StepTxBx.Text, dTemp)
+ EgtMdbSetCurrMachiningParam(MCH_MP.STEP_, dTemp)
+ StringToDouble(ReturnPosTxBx.Text, dTemp)
+ EgtMdbSetCurrMachiningParam(MCH_MP.RETURNPOS, dTemp)
+ 'Parametri utensile
+ If Not IsNothing(ToolCmBx.SelectedItem) Then
+ EgtMdbSetCurrMachiningParam(MCH_MP.TOOL, ToolCmBx.SelectedItem.ToString)
+ Else
+ EgtMdbSetCurrMachiningParam(MCH_MP.TOOL, String.Empty)
+ End If
End Sub
Private Sub ViewMachiningParams()
+ Dim nMachiningType As Integer
+ EgtMdbGetCurrMachiningParam(MCH_MP.TYPE, nMachiningType)
NameTxBl.Visibility = Windows.Visibility.Visible
NameTxBx.Visibility = Windows.Visibility.Visible
DepthTxBl.Visibility = Windows.Visibility.Visible
DepthTxBx.Visibility = Windows.Visibility.Visible
- SideAngleTxBl.Visibility = Windows.Visibility.Visible
- SideAngleTxBx.Visibility = Windows.Visibility.Visible
- InvertTxBl.Visibility = Windows.Visibility.Visible
- InvertChBx.Visibility = Windows.Visibility.Visible
- StepTypeTxBl.Visibility = Windows.Visibility.Visible
- StepTypeCmBx.Visibility = Windows.Visibility.Visible
- SideBrd.Visibility = Windows.Visibility.Visible
- TypeBrd.Visibility = Windows.Visibility.Visible
- CurveBrd.Visibility = Windows.Visibility.Visible
+ Select Case nMachiningType
+ Case MCH_MY.SAWING 'Parametri Taglio
+ SideAngleTxBl.Visibility = Windows.Visibility.Visible
+ SideAngleTxBx.Visibility = Windows.Visibility.Visible
+ InvertTxBl.Visibility = Windows.Visibility.Visible
+ InvertChBx.Visibility = Windows.Visibility.Visible
+ StepTypeTxBl.Visibility = Windows.Visibility.Visible
+ StepTypeCmBx.Visibility = Windows.Visibility.Visible
+ SideBrd.Visibility = Windows.Visibility.Visible
+ TypeBrd.Visibility = Windows.Visibility.Visible
+ CurveBrd.Visibility = Windows.Visibility.Visible
+ StartPosTxBl.Visibility = Windows.Visibility.Hidden
+ StartPosTxBx.Visibility = Windows.Visibility.Hidden
+ StartsLowLenTxBl.Visibility = Windows.Visibility.Hidden
+ StartsLowLenTxBx.Visibility = Windows.Visibility.Hidden
+ EndsLowLenTxBl.Visibility = Windows.Visibility.Hidden
+ EndsLowLenTxBx.Visibility = Windows.Visibility.Hidden
+ ThrouAddLenTxBl.Visibility = Windows.Visibility.Hidden
+ ThrouAddLenTxBx.Visibility = Windows.Visibility.Hidden
+ StepTxBl.Visibility = Windows.Visibility.Hidden
+ StepTxBx.Visibility = Windows.Visibility.Hidden
+ ReturnPosTxBl.Visibility = Windows.Visibility.Hidden
+ ReturnPosTxBx.Visibility = Windows.Visibility.Hidden
+ Case MCH_MY.DRILLING 'Parametri Foratura
+ SideAngleTxBl.Visibility = Windows.Visibility.Hidden
+ SideAngleTxBx.Visibility = Windows.Visibility.Hidden
+ InvertTxBl.Visibility = Windows.Visibility.Hidden
+ InvertChBx.Visibility = Windows.Visibility.Hidden
+ StepTypeTxBl.Visibility = Windows.Visibility.Hidden
+ StepTypeCmBx.Visibility = Windows.Visibility.Hidden
+ SideBrd.Visibility = Windows.Visibility.Hidden
+ TypeBrd.Visibility = Windows.Visibility.Hidden
+ CurveBrd.Visibility = Windows.Visibility.Hidden
+ StartPosTxBl.Visibility = Windows.Visibility.Visible
+ StartPosTxBx.Visibility = Windows.Visibility.Visible
+ StartsLowLenTxBl.Visibility = Windows.Visibility.Visible
+ StartsLowLenTxBx.Visibility = Windows.Visibility.Visible
+ EndsLowLenTxBl.Visibility = Windows.Visibility.Visible
+ EndsLowLenTxBx.Visibility = Windows.Visibility.Visible
+ ThrouAddLenTxBl.Visibility = Windows.Visibility.Visible
+ ThrouAddLenTxBx.Visibility = Windows.Visibility.Visible
+ StepTxBl.Visibility = Windows.Visibility.Visible
+ StepTxBx.Visibility = Windows.Visibility.Visible
+ ReturnPosTxBl.Visibility = Windows.Visibility.Visible
+ ReturnPosTxBx.Visibility = Windows.Visibility.Visible
+ End Select
+ 'Parametri utensile
+ ToolTxBl.Visibility = Windows.Visibility.Visible
+ ToolCmBx.Visibility = Windows.Visibility.Visible
End Sub
Private Sub HideMachiningParams()
+ 'Dim nMachiningType As Integer
+ 'EgtMdbGetCurrMachiningParam(MCH_MP.TYPE, nMachiningType)
NameTxBl.Visibility = Windows.Visibility.Hidden
NameTxBx.Visibility = Windows.Visibility.Hidden
DepthTxBl.Visibility = Windows.Visibility.Hidden
DepthTxBx.Visibility = Windows.Visibility.Hidden
+ 'Parametri Taglio
SideAngleTxBl.Visibility = Windows.Visibility.Hidden
SideAngleTxBx.Visibility = Windows.Visibility.Hidden
InvertTxBl.Visibility = Windows.Visibility.Hidden
@@ -317,6 +436,22 @@ Public Class MachiningDbPageUC
SideBrd.Visibility = Windows.Visibility.Hidden
TypeBrd.Visibility = Windows.Visibility.Hidden
CurveBrd.Visibility = Windows.Visibility.Hidden
+ 'Parametri Foratura
+ StartPosTxBl.Visibility = Windows.Visibility.Hidden
+ StartPosTxBx.Visibility = Windows.Visibility.Hidden
+ StartsLowLenTxBl.Visibility = Windows.Visibility.Hidden
+ StartsLowLenTxBx.Visibility = Windows.Visibility.Hidden
+ EndsLowLenTxBl.Visibility = Windows.Visibility.Hidden
+ EndsLowLenTxBx.Visibility = Windows.Visibility.Hidden
+ ThrouAddLenTxBl.Visibility = Windows.Visibility.Hidden
+ ThrouAddLenTxBx.Visibility = Windows.Visibility.Hidden
+ StepTxBl.Visibility = Windows.Visibility.Hidden
+ StepTxBx.Visibility = Windows.Visibility.Hidden
+ ReturnPosTxBl.Visibility = Windows.Visibility.Hidden
+ ReturnPosTxBx.Visibility = Windows.Visibility.Hidden
+ 'Parametri utensile
+ ToolTxBl.Visibility = Windows.Visibility.Hidden
+ ToolCmBx.Visibility = Windows.Visibility.Hidden
End Sub
Private Sub MachiningTreeView_PreviewMouseUp(sender As Object, e As MouseButtonEventArgs) Handles MachiningTreeView.PreviewMouseUp