Compare commits

...

56 Commits

Author SHA1 Message Date
Demetrio Cassarino 7558449b06 Merge remote-tracking branch 'origin/master' into feature/Note_Utensile 2024-07-30 10:21:32 +02:00
Dario Sassi 8c45250a6f EgtCAM5 2.6g6 :
- modifiche per consentire feedback anche in Simulazione (solo se progetto non è da salvare)
- modifica per entrare da TS3 modalità Vista con Simulazione non bloccata.
2024-07-29 11:52:20 +02:00
Demetrio Cassarino c727e98f8f Merge remote-tracking branch 'origin/master' into feature/Note_Utensile 2024-07-23 10:06:55 +02:00
Dario Sassi ef4ad38d23 EgtCAM5 :
- se lanciato in modalità Simulazione da TS3 ora si può solo simulare ed uscire dal programma.
2024-07-22 20:15:24 +02:00
Dario Sassi 85de8e95a5 EgtCAM5 2.6g5 :
- ricompilazione con cambio versione.
2024-07-22 18:13:57 +02:00
Dario Sassi 4387d75ee7 Merge commit 'ddf1f320c5462e921bc269593eb58484c80d418a' 2024-07-22 17:39:27 +02:00
Demetrio Cassarino ddf1f320c5 -riferimento a lavorazione 2024-07-22 17:24:53 +02:00
Dario Sassi 9f33d1b236 Merge commit '24607ec445d01fe6dc9ea817bdc04af3e1200888' 2024-07-16 08:45:33 +02:00
Demetrio Cassarino 60f035991d -rivisto evento per mettere il focus sullo slider 2024-07-15 10:44:25 +02:00
Demetrio Cassarino 24607ec445 -aggiunto possibilita' di portare il focus sullo slider con tutte e 4 le frecce 2024-07-12 15:30:25 +02:00
Demetrio Cassarino d75250d5f9 Merge remote-tracking branch 'origin/master' into feature/Note_Utensile 2024-07-12 15:23:00 +02:00
Dario Sassi be5985cfcd EgtCAM5 :
- aggiunto Zoom All passando da un gruppo di lavoro all'altro.
2024-07-12 15:16:16 +02:00
Dario Sassi 6aa7e850e8 Merge commit '9833802aedba444d8e92c257f303c6458f012c2f' 2024-07-12 15:07:31 +02:00
Demetrio Cassarino 9833802aed -aggiunto focus su slider 2024-07-12 12:56:27 +02:00
Dario Sassi 47aacebd3a Merge commit '62a9dd20488474796a33ff9b77ecab41294db8ba' 2024-07-11 17:17:06 +02:00
Demetrio Cassarino 62a9dd2048 -aggiunto al checkbox note updatesurcetrigger 2024-07-11 17:15:05 +02:00
Demetrio Cassarino 220d70013f Merge remote-tracking branch 'origin/master' into feature/Note_Utensile 2024-07-11 08:57:04 +02:00
Emmanuele Sassi 1633ed140d Merge branch 'master' of https://gitlab.steamware.net/egaltech/EgtCAM5 2024-07-09 14:42:25 +02:00
Emmanuele Sassi 07634b79b4 - correzione funzionamento MTable con due macchine 2024-07-09 14:41:29 +02:00
Dario Sassi c5e367e41c EgtCAM5 2.6g1 :
- ricompilazione con cambio versione.
2024-07-01 18:07:43 +02:00
Dario Sassi 3f487c7328 EgtCAM5 2.6f4 :
- ricompilazione con cambio versione.
2024-06-24 16:15:45 +02:00
Dario Sassi 639834d797 Merge commit '7a0a5048765a1371f8ef3914b79829173dacaf4b' 2024-06-24 16:10:09 +02:00
Demetrio Cassarino 7a0a504876 -aggiunto controllo su recalc per valori note ricalcolo 2024-06-24 15:59:19 +02:00
Dario Sassi 3253b7b8d4 EgtCAM5 :
- sistemazione parametri lavorazione sgrossatura superfici.
2024-06-06 12:23:46 +02:00
Dario Sassi a4b3fa8c28 Merge commit '841dce8d7291fb90f3cab903463f8680942a69f0' 2024-06-06 11:45:22 +02:00
Demetrio Cassarino 841dce8d72 -aggiunto parametro substep 2024-06-06 10:15:09 +02:00
Demetrio Cassarino e62b6aaccc Merge remote-tracking branch 'origin/master' into feature/Lavorazione_5_assi 2024-06-05 17:15:46 +02:00
Dario Sassi ad7b0ed010 EgtCAM5 2.6f1 :
- ricompilazione con cambio versione.
2024-06-05 17:15:14 +02:00
Dario Sassi b3d113e4f3 EgtCAM5 :
- corretta partenza disegno continuo (Ctrl) su Arco con punto, direzione e punto.
2024-05-31 12:29:06 +02:00
Dario Sassi f506ce9c64 EgtCAM5 :
- piccola ottimazione in MachiningToolSlider.
2024-05-31 12:13:21 +02:00
Dario Sassi 459d6f6739 EgtCAM5 :
- piccola miglioria a SliderThick di MachiningToolPreviw.
2024-05-31 12:03:17 +02:00
Dario Sassi 469037e3d8 Merge commit '0a4a7c4efad1d4bde9e7d23e4d9a90fd73626ef3' 2024-05-31 11:42:06 +02:00
Demetrio Cassarino 0a4a7c4efa -rimosso pulsanti indietro e avanti
-cambiato pulsante anteprima utensile con checkbox
2024-05-31 11:34:27 +02:00
Demetrio Cassarino 69ba413d31 Merge remote-tracking branch 'origin/master' into feature/Lavorazione_5_assi 2024-05-31 08:32:52 +02:00
Dario Sassi 8164b2e654 EgtCAM5 :
- modifiche per ToolPreview con slider.
2024-05-31 07:59:02 +02:00
Dario Sassi 514b8a7bb9 Merge commit 'cfa709fb40fdef6115d43d4678414d9f9da0cf4b' 2024-05-30 16:31:44 +02:00
Demetrio Cassarino cfa709fb40 -aggiunto slider da completare 2024-05-30 12:14:23 +02:00
Dario Sassi 0936baf254 Merge commit 'd328fbb186627fa1d15414bb1518b77052b1b4af' 2024-05-29 15:22:45 +02:00
Demetrio Cassarino d328fbb186 -ripristinato dimensione pagina db lavorazioni 2024-05-29 14:57:49 +02:00
Dario Sassi fcc36d7b44 Merge commit '3ebba7cb81ba17c58d5fa0295dca5178bab1dde7' 2024-05-29 12:26:05 +02:00
Demetrio Cassarino 3ebba7cb81 -rimossa variabile tipo approccio da finitura superficie e sgrossatura 2024-05-29 12:15:13 +02:00
Dario Sassi 88be7fa40d Merge remote-tracking branch 'origin/feature/Lavorazione_5_assi' 2024-05-29 09:32:21 +02:00
Demetrio Cassarino 033d76b4fb Merge remote-tracking branch 'origin/master' into feature/Lavorazione_5_assi 2024-05-29 09:16:14 +02:00
Demetrio Cassarino 3f2b8eaf08 -aggiornato ordine offset radiale e longitudinale 2024-05-29 09:16:02 +02:00
Dario Sassi 42348e6ca0 EgtCAM5 2.6e6 :
- ricompilazione con cambio versione.
2024-05-28 17:36:18 +02:00
Dario Sassi e1f0e122ec Merge commit '21c0a8cad7f61e2d05b3edb70e90344673707423' 2024-05-28 17:27:50 +02:00
Demetrio Cassarino 21c0a8cad7 -rimosso da sgrossatura sovrapposizione, aggiunto offset longitudinale e passo 2024-05-28 17:25:44 +02:00
Dario Sassi afe5dc58b1 EgtCAM5 2.6e5 :
- ricompilazione con cambio versione.
2024-05-27 17:27:47 +02:00
Dario Sassi 2beb910d2c Merge commit '31ce0ca0e0be420206122568f6e2ad4c02f7998b' 2024-05-27 17:01:59 +02:00
Demetrio Cassarino 31ce0ca0e0 -cambio nome costante 5axMachining in 5AxMilling 2024-05-27 15:31:34 +02:00
Demetrio Cassarino f7b92d1537 -aggiunto sgrossatura superfici in nuove lavorazioni
-aggiunto sgrossatura superfici in opzioni cam5
2024-05-27 14:14:01 +02:00
Demetrio Cassarino fe2dd7f9ce -rinominato SelGeomFiveAxMachining in SelGeomFiveAxMilling nel progetto e nel file in
- aggiunto in impostazioni sezione CAM le lavorazioni
2024-05-24 15:08:06 +02:00
Dario Sassi 1099a25b59 Merge remote-tracking branch 'origin/feature/Lavorazione_5_assi' 2024-05-24 10:43:39 +02:00
Demetrio Cassarino 22e329c74e -aggiunto paragrafo per lavorazioni 5 assi 2024-05-24 10:34:31 +02:00
Dario Sassi 2e5b87d38c EgtCAM5 2.6e2 :
- ricompilazione con cambio versione.
2024-05-14 09:23:08 +02:00
Dario Sassi d2886ec79b Merge commit '85f22f9978277cce16167bd2dcb4bfdd0d727725' 2024-05-07 12:10:49 +02:00
50 changed files with 1586 additions and 472 deletions
+2
View File
@@ -181,6 +181,8 @@ Module ConstIni
Public Const K_SELGEOMGENMACHINING As String = "SelGeomGenMachining"
Public Const K_SELGEOMCHISELING As String = "SelGeomChiseling"
Public Const K_SELGEOMSURFFINISHING As String = "SelGeomSurfFinishing"
Public Const K_SELGEOMSURFROUGHING As String = "SelGeomSurfRoughing"
Public Const K_SELGEOMFIVEAXMILLING As String = "SelGeomFiveAxMilling"
Public Const K_MACHININGGROUP As String = "MachiningGroup"
Public Const K_SHOWONLYTABLE As String = "ShowOnlyTable"
Public Const K_MOVETHROUGHDISPS As String = "MoveThroughDisps"
+1 -1
View File
@@ -35,7 +35,7 @@
Public Const K_CHISELING As String = "Chiseling"
Public Const K_SURFROUGHING As String = "SurfRoughing"
Public Const K_SURFFINISHING As String = "SurfFinishing"
Public Const K_5AXMACHINING As String = "5axMachining"
Public Const K_5AXMILLING As String = "5AxMilling"
Public Const K_WATERJETTING As String = "WaterJetting"
Public Const K_SAWINGONARCS As String = "SawingOnArcs"
+1
View File
@@ -770,6 +770,7 @@ Public Class DrawPanelVM
Map.refProjectVM.GetController.ExecuteCommand(Controller.CMD.ARCPVP)
ElseIf (Keyboard.Modifiers And ModifierKeys.Control) = ModifierKeys.Control Then
Map.refProjectVM.GetController.SetContinue()
Map.refProjectVM.GetController.ExecuteCommand(Controller.CMD.ARCPDP)
Else
Map.refProjectVM.GetController.ExecuteCommand(Controller.CMD.ARCPDP)
End If
+14
View File
@@ -170,6 +170,9 @@
<DependentUpon>EstimationsExpanderV.xaml</DependentUpon>
</Compile>
<Compile Include="OptionPanel\MachiningOptionPanel\EstimationsExpander\EstimationsExpander.vb" />
<Compile Include="OptionPanel\MachiningOptionPanel\OperationExpander\MachiningParameterExpander\FiveAxisMachinigParameterExpanderV.xaml.vb">
<DependentUpon>FiveAxisMachinigParameterExpanderV.xaml</DependentUpon>
</Compile>
<Compile Include="OptionPanel\MachiningOptionPanel\OperationExpander\MachiningParameterExpander\SurfFinishingParameterExpanderV.xaml.vb">
<DependentUpon>SurfFinishingParameterExpanderV.xaml</DependentUpon>
</Compile>
@@ -188,6 +191,9 @@
<Compile Include="OptionPanel\MachiningOptionPanel\OperationExpander\MachiningParameterExpander\StoneDrillingParameterExpanderV.xaml.vb">
<DependentUpon>StoneDrillingParameterExpanderV.xaml</DependentUpon>
</Compile>
<Compile Include="OptionPanel\MachiningOptionPanel\OperationExpander\MachiningParameterExpander\SurfRoughingParameterExpanderV.xaml.vb">
<DependentUpon>SurfRoughingParameterExpanderV.xaml</DependentUpon>
</Compile>
<Compile Include="OptionPanel\MachiningOptionPanel\OperationExpander\MachiningParameterExpander\WoodDrillingParameterExpanderV.xaml.vb">
<DependentUpon>WoodDrillingParameterExpanderV.xaml</DependentUpon>
</Compile>
@@ -466,6 +472,10 @@
<Generator>MSBuild:Compile</Generator>
<SubType>Designer</SubType>
</Page>
<Page Include="OptionPanel\MachiningOptionPanel\OperationExpander\MachiningParameterExpander\FiveAxisMachinigParameterExpanderV.xaml">
<SubType>Designer</SubType>
<Generator>MSBuild:Compile</Generator>
</Page>
<Page Include="OptionPanel\MachiningOptionPanel\OperationExpander\MachiningParameterExpander\SurfFinishingParameterExpanderV.xaml">
<Generator>MSBuild:Compile</Generator>
<SubType>Designer</SubType>
@@ -490,6 +500,10 @@
<Generator>MSBuild:Compile</Generator>
<SubType>Designer</SubType>
</Page>
<Page Include="OptionPanel\MachiningOptionPanel\OperationExpander\MachiningParameterExpander\SurfRoughingParameterExpanderV.xaml">
<SubType>Designer</SubType>
<Generator>MSBuild:Compile</Generator>
</Page>
<Page Include="OptionPanel\MachiningOptionPanel\OperationExpander\MachiningParameterExpander\WoodDrillingParameterExpanderV.xaml">
<Generator>MSBuild:Compile</Generator>
<SubType>Designer</SubType>
+2
View File
@@ -422,6 +422,8 @@ Public Class MyMachGroupPanelVM
(EgtUILib.GetPrivateProfileInt(S_ESTIMATIONS, K_EST_ENABLE, 0, IniFile.m_sCurrMachIniFilePath) <> 0)
' Setto il Materiale in base alla Macchina associata al MachGroup corrente
LoadMaterialType()
' Zoom all
EgtZoom( ZM.ALL)
End If
Return True
+2 -2
View File
@@ -269,7 +269,7 @@ Public Class MyMachinePanelVM
Dim MachDbWindowVM As New EgtWPFLib5.MachiningDbWindowVM(IniFile.m_sCurrMachIniFilePath, IniFile.m_ProjectSceneContext, "Wood", IniFile.m_nUserLevel > 9, True)
Dim MachDbWindowV As New EgtWPFLib5.MachiningDbWindowV(Application.Current.MainWindow, MachDbWindowVM)
If EgtWPFLib5.MachiningTreeViewItem.m_MatType <> 0 Then
MachDbWindowV.Height = 794 '674
MachDbWindowV.Height = 800 '674
MachDbWindowV.Width = 1024
MachDbWindowV.Owner = Application.Current.MainWindow
MachDbWindowV.ShowDialog()
@@ -290,7 +290,7 @@ Public Class MyMachinePanelVM
Dim MachDbWindowVM As New EgtWPFLib5.MachiningDbWindowVM(IniFile.m_sCurrMachIniFilePath, IniFile.m_ProjectSceneContext, "Wood", IniFile.m_nUserLevel > 9, True)
Dim MachDbWindowV As New EgtWPFLib5.MachiningDbWindowV(Application.Current.MainWindow, MachDbWindowVM)
If EgtWPFLib5.MachiningTreeViewItem.m_MatType <> 0 Then
MachDbWindowV.Height = 794 '674
MachDbWindowV.Height = 800 '674
MachDbWindowV.Width = 1024
MachDbWindowV.Owner = Application.Current.MainWindow
MachDbWindowV.ShowDialog()
+5 -2
View File
@@ -385,8 +385,8 @@ Public Class MainWindowVM
EgtSetLockId(sLockId)
End If
' Recupero livello e opzioni della chiave
Dim bKey As Boolean = EgtGetKeyLevel(3279, 2605, 1, IniFile.m_nKeyLevel) And
EgtGetKeyOptions(3279, 2605, 1, IniFile.m_nKeyOptions)
Dim bKey As Boolean = EgtGetKeyLevel(3279, 2607, 1, IniFile.m_nKeyLevel) And
EgtGetKeyOptions(3279, 2607, 1, IniFile.m_nKeyOptions)
' Leggo e imposto livello utilizzatore
IniFile.m_nUserLevel = Math.Min(IniFile.m_nKeyLevel, GetPrivateProfileInt(S_GENERAL, K_USERLEVEL, 1))
' Imposto abilitazione lavorazioni avanzate
@@ -597,6 +597,9 @@ Public Class MainWindowVM
' pulisco output
Map.refStatusBarVM.NotifyStatusOutput("")
Map.refInputExpanderVM.ResetInputBox()
ElseIf e.Key = Key.Left OrElse e.Key = Key.Right OrElse e.Key = Key.Up OrElse e.Key = Key.Down AndAlso Map.refTopCommandBarVM.MachiningIsChecked AndAlso Map.refOperationParametersExpanderVM.OperationParameters.IsEnabled Then
Map.refMachiningParameterExpanderVM.FocusSlider()
e.Handled = True
End If
End Sub
+2 -2
View File
@@ -70,6 +70,6 @@ Imports System.Windows
' by using the '*' as shown below:
' <Assembly: AssemblyVersion("1.0.*")>
<Assembly: AssemblyVersion("2.6.5.1")>
<Assembly: AssemblyFileVersion("2.6.5.1")>
<Assembly: AssemblyVersion("2.6.7.6")>
<Assembly: AssemblyFileVersion("2.6.7.6")>
+4 -5
View File
@@ -1,10 +1,9 @@
<UserControl x:Class="DrawOptionPanelV"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" Width="250"
xmlns:EgtFloating="clr-namespace:EgtWPFLib5.EgtFloating;assembly=EgtWPFLib5"
xmlns:interactivity="clr-namespace:System.Windows.Interactivity;assembly=System.Windows.Interactivity">
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" Width="250"
xmlns:EgtFloating="clr-namespace:EgtWPFLib5.EgtFloating;assembly=EgtWPFLib5">
<StackPanel Name="ciao" Background="Transparent" MaxHeight="{Binding MaxHeight,RelativeSource={RelativeSource AncestorType={x:Type EgtFloating:EgtFloatingPanel}}}">
<StackPanel Name="ciao" Background="Transparent" Margin="0,0,3.5001,0" MaxHeight="{Binding MaxHeight,RelativeSource={RelativeSource AncestorType={x:Type EgtFloating:EgtFloatingPanel}}}">
<!--ContentPresenter that contains the ManageLayerExpander-->
<ContentPresenter Content="{Binding ManageLayerExpander,Mode=OneWay}"/>
<!--ContentPresenter that contains the InfoExpander-->
@@ -150,6 +150,8 @@ Public Class MachiningTreeExpanderVM
Return EgtMsg(MSG_MACHININGSDBPAGE + 11)
Case MCH_MY.WATERJETTING
Return EgtMsg(MSG_MACHININGSDBPAGE + 12)
Case MCH_MY.FIVEAXISMILLING
Return EgtMsg(31213)
Case Else
Return "Mach"
End Select
@@ -236,7 +236,7 @@
IsReadOnly="False"/>
</TabItem>
<TabItem Header="CHECKBOX">
<CheckBox IsChecked="{Binding Value}"/>
<CheckBox IsChecked="{Binding Value, UpdateSourceTrigger=PropertyChanged}"/>
</TabItem>
</TabControl>
<Button Command="{Binding RemoveItemNoteCommand}"
@@ -224,7 +224,7 @@
IsReadOnly="False"/>
</TabItem>
<TabItem Header="CHECKBOX">
<CheckBox IsChecked="{Binding Value}"/>
<CheckBox IsChecked="{Binding Value, UpdateSourceTrigger=PropertyChanged}"/>
</TabItem>
</TabControl>
<Button Command="{Binding RemoveItemNoteCommand}"
@@ -0,0 +1,286 @@
<UserControl x:Class="FiveAxisMachinigParameterExpanderV"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:sys="clr-namespace:System;assembly=mscorlib"
xmlns:Interactivity="clr-namespace:System.Windows.Interactivity;assembly=System.Windows.Interactivity"
xmlns:EgtCAM5="clr-namespace:EgtCAM5"
xmlns:EgtWPFLib5="clr-namespace:EgtWPFLib5;assembly=EgtWPFLib5">
<UserControl.Resources>
<EgtCAM5:OperationParamVisibilityConverter x:Key="OperationParamVisibilityConverter"/>
<EgtCAM5:DepthUnitConverter x:Key="DepthUnitConverter"/>
<sys:Int32 x:Key="Invert">0</sys:Int32>
<sys:Int32 x:Key="LeaveTab">1</sys:Int32>
<sys:Int32 x:Key="WorkSide">2</sys:Int32>
<sys:Int32 x:Key="HeadSide">3</sys:Int32>
<sys:Int32 x:Key="LeadInType">4</sys:Int32>
<sys:Int32 x:Key="ExtLinkType">5</sys:Int32>
<sys:Int32 x:Key="LeadOutType">6</sys:Int32>
<sys:Int32 x:Key="CurveUse">7</sys:Int32>
<sys:Int32 x:Key="StepType">8</sys:Int32>
<sys:Int32 x:Key="LeadLinkType">9</sys:Int32>
<sys:Int32 x:Key="Speed">10</sys:Int32>
<sys:Int32 x:Key="Feed">11</sys:Int32>
<sys:Int32 x:Key="StartFeed">12</sys:Int32>
<sys:Int32 x:Key="EndFeed">13</sys:Int32>
<sys:Int32 x:Key="TipFeed">14</sys:Int32>
<sys:Int32 x:Key="OffSr">15</sys:Int32>
<sys:Int32 x:Key="OffSl">16</sys:Int32>
<sys:Int32 x:Key="SideAngle">17</sys:Int32>
<sys:Int32 x:Key="Approx">18</sys:Int32>
<sys:Int32 x:Key="StartPos">19</sys:Int32>
<sys:Int32 x:Key="StartSlowLen">20</sys:Int32>
<sys:Int32 x:Key="EndSlowLen">21</sys:Int32>
<sys:Int32 x:Key="ThrouAddLen">22</sys:Int32>
<sys:Int32 x:Key="StepPar">23</sys:Int32>
<sys:Int32 x:Key="ReturnPos">24</sys:Int32>
<sys:Int32 x:Key="TabLen">25</sys:Int32>
<sys:Int32 x:Key="TabDist">26</sys:Int32>
<sys:Int32 x:Key="TabHeight">27</sys:Int32>
<sys:Int32 x:Key="TabAngle">28</sys:Int32>
<sys:Int32 x:Key="LiTang">29</sys:Int32>
<sys:Int32 x:Key="LiPerp">30</sys:Int32>
<sys:Int32 x:Key="LiElev">31</sys:Int32>
<sys:Int32 x:Key="LiCompLen">32</sys:Int32>
<sys:Int32 x:Key="LoTang">33</sys:Int32>
<sys:Int32 x:Key="LoPerp">34</sys:Int32>
<sys:Int32 x:Key="LoElev">35</sys:Int32>
<sys:Int32 x:Key="LoCompLen">36</sys:Int32>
<sys:Int32 x:Key="StartAddLen">37</sys:Int32>
<sys:Int32 x:Key="EndAddLen">38</sys:Int32>
<sys:Int32 x:Key="StepExtArc">39</sys:Int32>
<sys:Int32 x:Key="StepIntArc">40</sys:Int32>
<sys:Int32 x:Key="SideStep">41</sys:Int32>
<sys:Int32 x:Key="VertFeed">42</sys:Int32>
<sys:Int32 x:Key="NamePar">43</sys:Int32>
<sys:Int32 x:Key="Tool">44</sys:Int32>
<sys:Int32 x:Key="DepthStr">45</sys:Int32>
<sys:Int32 x:Key="UserNotes">46</sys:Int32>
<sys:Int32 x:Key="OverLapStr">47</sys:Int32>
<sys:Int32 x:Key="OffsetStr">48</sys:Int32>
<sys:Int32 x:Key="SubType">49</sys:Int32>
<sys:Int32 x:Key="SolChoiceType">50</sys:Int32>
<sys:Int32 x:Key="AxRotRef">51</sys:Int32>
<sys:Int32 x:Key="BlockedAxesRef">52</sys:Int32>
<sys:Int32 x:Key="FaceUseType">53</sys:Int32>
<sys:Int32 x:Key="InvertToolDir">54</sys:Int32>
<sys:Int32 x:Key="ExpanderLeadIn">55</sys:Int32>
<sys:Int32 x:Key="ExpanderLeadOut">56</sys:Int32>
<sys:Int32 x:Key="ApproxGen">57</sys:Int32>
<sys:Int32 x:Key="OscEnable">58</sys:Int32>
<sys:Int32 x:Key="OscHeight">59</sys:Int32>
<sys:Int32 x:Key="OscRampLen">60</sys:Int32>
<sys:Int32 x:Key="OscFlatLen">61</sys:Int32>
</UserControl.Resources>
<StackPanel Name="OperationParametersStackPanel">
<StackPanel Name="OperationFirstParametersStackPanel">
<UniformGrid Columns="2">
<TextBlock Text="{Binding DepthStrTxBl}" Style="{DynamicResource MPExpander_DepthTxBlMargin}"/>
<EgtWPFLib5:EgtTextBox Text="{Binding DepthStr, UpdateSourceTrigger=PropertyChanged,
Converter={StaticResource DepthUnitConverter}}"
Style="{DynamicResource MPExpander_DepthTxBxMargin}"/>
</UniformGrid>
<EgtWPFLib5:CheckParamV ParamTxBl="{Binding InvertTxBl}"
ParamChBx="{Binding Path=Invert,
UpdateSourceTrigger=PropertyChanged,
ValidatesOnDataErrors=True}"
Style="{DynamicResource CheckParamV_Margin}"/>
<UniformGrid Columns="2">
<TextBlock Text="{Binding UserNotesTxBl}"
Style="{DynamicResource MPExpander_UserNotesTxBlMargin}"/>
<EgtWPFLib5:EgtTextBox Text="{Binding UserNotes, UpdateSourceTrigger=PropertyChanged}"
Style="{DynamicResource MPExpander_UserNotesTxBxMargin}">
<EgtWPFLib5:EgtTextBox.ToolTip>
<TextBlock Text="{Binding UserNotesTooltip}"/>
</EgtWPFLib5:EgtTextBox.ToolTip>
</EgtWPFLib5:EgtTextBox>
<TextBlock Text="{Binding SystemNotesTxBl}"
Style="{DynamicResource MPExpander_UserNotesTxBlMargin}"
Visibility="{Binding SysNotes_Visibility}"/>
<EgtWPFLib5:EgtTextBox Text="{Binding SystemNotes, UpdateSourceTrigger=PropertyChanged}"
Style="{DynamicResource MPExpander_UserNotesTxBxMargin}"
Visibility="{Binding SysNotes_Visibility}"
IsReadOnly="True"/>
</UniformGrid>
</StackPanel>
<StackPanel Name="AutomaticCloseExpanderStackPanel">
<Expander Header="{Binding GenericExpanderHeader}" Name="GenericExpander"
Style="{StaticResource ExpanderStyle}" Margin="0,1,0,1">
<StackPanel>
<EgtWPFLib5:StringParamV ParamTxBl="{Binding StartPosTxBl}"
ParamTxBx="{Binding Path=StartPos,
UpdateSourceTrigger=PropertyChanged,
ValidatesOnDataErrors=True}"
Style="{DynamicResource StringParamV_Margin}"/>
<EgtWPFLib5:ComboParamV ParamTxBl="{Binding SubTypeTxBl}"
ParamCmBxList="{Binding Path=SubTypeList,
UpdateSourceTrigger=PropertyChanged,
ValidatesOnDataErrors=True}"
ParamCmBxSelIndex="{Binding Path=SelectedSubType}"
Style="{DynamicResource ComboParamV_Margin}"/>
<EgtWPFLib5:StringParamV ParamTxBl="{Binding OffsetSrTxBl}"
ParamTxBx="{Binding Path=OffSr,
UpdateSourceTrigger=PropertyChanged,
ValidatesOnDataErrors=True}"
Style="{DynamicResource StringParamV_Margin}"/>
<EgtWPFLib5:StringParamV ParamTxBl="{Binding OffsetSlTxBl}"
ParamTxBx="{Binding Path=OffSl,
UpdateSourceTrigger=PropertyChanged,
ValidatesOnDataErrors=True}"
Style="{DynamicResource StringParamV_Margin}"/>
</StackPanel>
</Expander>
<Expander Name="AdvancedParam" IsExpanded="{Binding AdvancedParamIsExpander}"
Style="{StaticResource ExpanderStyle}" Margin="0,1,0,1">
<Expander.Header>
<UniformGrid Columns="2">
<TextBlock Text="{Binding AdvancedParamMsg}"
Margin="2.5"/>
<Button Command="{Binding ShowNoteListComboCommand}"
ToolTip="{Binding ShowNoteToolTip}"
IsEnabled="{Binding ShowNoteListCombo_IsEnable}"
Visibility="{Binding ShowNoteListCombo_Visibility}"
Grid.Column="1"
HorizontalAlignment="Right"
Margin="2.5,2.5,7,2.5"
Width="20">
<Image Source="/Resources/Note/+.png" Stretch="Uniform"/>
</Button>
</UniformGrid>
</Expander.Header>
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="1*"/>
<RowDefinition Height="Auto"/>
</Grid.RowDefinitions>
<StackPanel>
<EgtWPFLib5:CheckParamV ParamTxBl="{Binding InvertToolDirTxBl}"
ParamChBx="{Binding Path=InvertToolDir,
UpdateSourceTrigger=PropertyChanged,
ValidatesOnDataErrors=True}"
Style="{DynamicResource CheckParamV_Margin}"/>
<EgtWPFLib5:StringParamV ParamTxBl="{Binding InitAngsTxBl}"
ParamTxBx="{Binding Path=InitAngs,
UpdateSourceTrigger=PropertyChanged,
ValidatesOnDataErrors=True}"
Style="{DynamicResource StringParamV_Margin}"/>
<EgtWPFLib5:StringParamV ParamTxBl="{Binding BlockedAxisTxBl}"
ParamTxBx="{Binding Path=BlockedAxis,
UpdateSourceTrigger=PropertyChanged,
ValidatesOnDataErrors=True}"
Style="{DynamicResource StringParamV_Margin}"/>
<EgtWPFLib5:ComboParamV ParamTxBl="{Binding SolChoiceTypeTxBl}"
ParamCmBxList="{Binding Path=SolChoiceTypeList,
UpdateSourceTrigger=PropertyChanged,
ValidatesOnDataErrors=True,
Mode=OneWay}"
ParamCmBxSelIndex="{Binding Path=SelectedSolChoiceType}"
Style="{DynamicResource ComboParamV_Margin}"/>
</StackPanel>
<Grid Grid.Row="1" Margin="0,5,0,0">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="1*"/>
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="1*"/>
<RowDefinition Height="Auto"/>
</Grid.RowDefinitions>
<ItemsControl ItemsSource="{Binding NotesList}">
<ItemsControl.ItemTemplate>
<DataTemplate>
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="1*"/>
<ColumnDefinition Width="Auto"/>
</Grid.ColumnDefinitions>
<TextBlock Text="{Binding Description}"
Margin="0,5.5,29,0"
Width="82"
Style="{DynamicResource MPExpander_UserNotesTxBlMargin}"/>
<TabControl SelectedIndex="{Binding SelTypeValue}"
Grid.Column="1"
Background="Transparent"
BorderBrush="Transparent">
<TabControl.ItemContainerStyle>
<Style TargetType="{x:Type TabItem}">
<Setter Property="Visibility" Value="Collapsed"/>
</Style>
</TabControl.ItemContainerStyle>
<TabItem Header="TEXT">
<TextBox Text="{Binding Value, UpdateSourceTrigger=PropertyChanged}"
IsReadOnly="False"/>
</TabItem>
<TabItem Header="CHECKBOX">
<CheckBox IsChecked="{Binding Value, UpdateSourceTrigger=PropertyChanged}"/>
</TabItem>
</TabControl>
<Button Command="{Binding RemoveItemNoteCommand}"
Grid.Column="2"
Width="20"
Height="20"
Margin="5,0,0,0">
<Image Source="/Resources/Note/-.png" Stretch="Uniform"/>
</Button>
</Grid>
</DataTemplate>
</ItemsControl.ItemTemplate>
</ItemsControl>
<ComboBox ItemsSource="{Binding NotesListCombo}"
SelectedItem="{Binding SelNoteItemCombo}"
Grid.Row="1"
Grid.ColumnSpan="1"
Visibility="{Binding ComboAddVisibility}">
<ComboBox.ItemTemplate>
<DataTemplate>
<TextBlock Text="{Binding Description}"
Margin="2.5"/>
</DataTemplate>
</ComboBox.ItemTemplate>
</ComboBox>
</Grid>
</Grid>
</Expander>
<Expander Style="{StaticResource ExpanderStyle}">
<Expander.Header>
<TextBlock Text="{Binding ToolExpanderHeader}"/>
</Expander.Header>
<StackPanel>
<EgtWPFLib5:StringParamV ParamTxBl="{Binding SpeedTxBl}"
ParamTxBx="{Binding Path=Speed,
UpdateSourceTrigger=PropertyChanged,
ValidatesOnDataErrors=True}"
ParamErrorMsg="{Binding Path=SpeedErrorMsg}"
Style="{DynamicResource StringParamV_Margin}"/>
<EgtWPFLib5:StringParamV ParamTxBl="{Binding FeedTxBl}"
ParamTxBx="{Binding Path=Feed,
UpdateSourceTrigger=PropertyChanged,
ValidatesOnDataErrors=True}"
Style="{DynamicResource StringParamV_Margin}"/>
<EgtWPFLib5:StringParamV ParamTxBl="{Binding TipFeedTxBl}"
ParamTxBx="{Binding Path=TipFeed,
UpdateSourceTrigger=PropertyChanged,
ValidatesOnDataErrors=True}"
Style="{DynamicResource StringParamV_Margin}"/>
<EgtWPFLib5:StringParamV ParamTxBl="{Binding StartFeedTxBl}"
ParamTxBx="{Binding Path=StartFeed,
UpdateSourceTrigger=PropertyChanged,
ValidatesOnDataErrors=True}"
Style="{DynamicResource StringParamV_Margin}"/>
<EgtWPFLib5:StringParamV ParamTxBl="{Binding EndFeedTxBl}"
ParamTxBx="{Binding Path=EndFeed,
UpdateSourceTrigger=PropertyChanged,
ValidatesOnDataErrors=True}"
Style="{DynamicResource StringParamV_Margin}"/>
</StackPanel>
</Expander>
<Interactivity:Interaction.Behaviors>
<EgtCAM5:AutomaticCloseExpander/>
</Interactivity:Interaction.Behaviors>
</StackPanel>
</StackPanel>
</UserControl>
@@ -0,0 +1,83 @@
Imports EgtWPFLib5.EgtFloating
Public Class FiveAxisMachinigParameterExpanderV
Private m_RightTrayV As RightTrayV
Private EgtFloatingPanel As EgtFloatingPanel
Private m_bFirst As Boolean = True
Private Sub OperationExpanderView_Loaded(sender As Object, e As System.Windows.RoutedEventArgs) Handles Me.Loaded
If m_bFirst Then
m_RightTrayV = FindAncestor(Of RightTrayV)(Me)
EgtFloatingPanel = FindAncestor(Of EgtFloatingPanel)(Me)
AddHandler m_RightTrayV.SizeChanged, AddressOf RightTrayV_SizeChanged
PanelHeight = EgtFloatingPanel.DesiredSize.Height
Me.AutomaticCloseExpanderStackPanelHeight = AutomaticCloseExpanderStackPanel.ActualHeight
m_bFirst = False
End If
CalculateOperationParametersStackPanelMaxHeight()
End Sub
Dim m_bSizeChanging As Boolean = False
Private Sub RightTrayV_SizeChanged(sender As Object, e As System.Windows.SizeChangedEventArgs)
If m_bSizeChanging Then Return
m_bSizeChanging = True
CalculateOperationParametersStackPanelMaxHeight()
m_bSizeChanging = False
End Sub
Dim PanelHeight As Double = 0
Dim AutomaticCloseExpanderStackPanelHeight As Double = 0
' ricalcola spazio utilizzabile quando modificata dimensione finestra e quindi dimensione della tray
Private Sub CalculateOperationParametersStackPanelMaxHeight()
Dim AutomaticCloseExpanderStackPanelHeight As Double = 0
Dim OpenedExpanderList As New List(Of Boolean)
For Index = 0 To AutomaticCloseExpanderStackPanel.Children.Count - 1
If TypeOf AutomaticCloseExpanderStackPanel.Children(Index) Is Expander Then
Dim IndexedExpander As Expander = DirectCast(AutomaticCloseExpanderStackPanel.Children(Index), Expander)
If IndexedExpander.IsExpanded Then
OpenedExpanderList.Add(True)
IndexedExpander.IsExpanded = False
Dim CurrExpanderContent As FrameworkElement = DirectCast(IndexedExpander.Content, FrameworkElement)
CurrExpanderContent.Measure(New Size(Double.PositiveInfinity, Double.PositiveInfinity))
AutomaticCloseExpanderStackPanelHeight -= CurrExpanderContent.DesiredSize.Height
' Sottraggo anche i padding
AutomaticCloseExpanderStackPanelHeight -= (IndexedExpander.Padding.Top + IndexedExpander.Padding.Bottom)
Else
OpenedExpanderList.Add(False)
End If
Else
OpenedExpanderList.Add(False)
End If
Next
Dim RemainingHeight As Double = m_RightTrayV.ActualHeight - PanelHeight
AutomaticCloseExpanderStackPanel.MaxHeight = Me.AutomaticCloseExpanderStackPanelHeight + RemainingHeight
For Index = AutomaticCloseExpanderStackPanel.Children.Count - 1 To 0 Step -1
If TypeOf AutomaticCloseExpanderStackPanel.Children(Index) Is Expander Then
Dim IndexedExpander As Expander = DirectCast(AutomaticCloseExpanderStackPanel.Children(Index), Expander)
If OpenedExpanderList(Index) Then
IndexedExpander.IsExpanded = True
End If
End If
Next
End Sub
' Funzione che permette di trovare il primo contenitore di tipo T di un elemento grafico dependencyObject
Public Function FindAncestor(Of T As Class)(dependencyObject As DependencyObject) As T
Dim target As DependencyObject = dependencyObject
Do
target = LogicalTreeHelper.GetParent(target)
Loop While target IsNot Nothing AndAlso Not (TypeOf target Is T)
If IsNothing(target) Then
target = dependencyObject
Do
target = VisualTreeHelper.GetParent(target)
Loop While target IsNot Nothing AndAlso Not (TypeOf target Is T)
End If
Return TryCast(target, T)
End Function
End Class
@@ -214,7 +214,7 @@
IsReadOnly="False"/>
</TabItem>
<TabItem Header="CHECKBOX">
<CheckBox IsChecked="{Binding Value}"/>
<CheckBox IsChecked="{Binding Value, UpdateSourceTrigger=PropertyChanged}"/>
</TabItem>
</TabControl>
<Button Command="{Binding RemoveItemNoteCommand}"
@@ -1,10 +1,10 @@
<UserControl x:Class="MachiningParameterExpanderV"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:sys="clr-namespace:System;assembly=mscorlib"
xmlns:Interactivity="clr-namespace:System.Windows.Interactivity;assembly=System.Windows.Interactivity"
xmlns:EgtCAM5="clr-namespace:EgtCAM5"
xmlns:EgtWPFLib5="clr-namespace:EgtWPFLib5;assembly=EgtWPFLib5">
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:sys="clr-namespace:System;assembly=mscorlib"
xmlns:Interactivity="clr-namespace:System.Windows.Interactivity;assembly=System.Windows.Interactivity"
xmlns:EgtCAM5="clr-namespace:EgtCAM5"
xmlns:EgtWPFLib5="clr-namespace:EgtWPFLib5;assembly=EgtWPFLib5">
<UserControl.Resources>
<EgtCAM5:OperationParamVisibilityConverter x:Key="OperationParamVisibilityConverter"/>
@@ -73,26 +73,38 @@
<sys:Int32 x:Key="OscFlatLen">61</sys:Int32>
<sys:Int32 x:Key="TabMax">62</sys:Int32>
<sys:Int32 x:Key="TabMin">63</sys:Int32>
</UserControl.Resources>
</UserControl.Resources>
<StackPanel>
<ContentControl Content="{Binding Path=ParamExpanderPageV}" />
<StackPanel>
<ContentControl Content="{Binding Path=ParamExpanderPageV}" />
<Button Name="ApplyMachBtn" Height="30" Content="{Binding UpdateMachiningBtnMsg}"
Command="{Binding UpdateMachiningCommand}" Background="{Binding UpdateMachiningBtn_Background}"/>
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="2*"/>
<ColumnDefinition Width="1*"/>
<ColumnDefinition Width="1*"/>
</Grid.ColumnDefinitions>
<ToggleButton Name="ViewToolBtn" Grid.Column="0" Height="30" Content="{Binding ViewToolBtnMsg}"
IsChecked="{Binding ViewTool}" />
<Button Name="NextStepToolBtn" Grid.Column="1" Height="30" Content="{Binding NextStepToolBtnMsg}"
Command="{Binding NextStepToolCommand}" IsEnabled="{Binding IsChecked, ElementName=ViewToolBtn}"/>
<Button Name="PrevStepToolBtn" Grid.Column="2" Height="30" Content="{Binding PrevStepToolBtnMsg}"
Command="{Binding PrevStepToolCommand}" IsEnabled="{Binding IsChecked, ElementName=ViewToolBtn}"/>
</Grid>
</StackPanel>
<Button Name="ApplyMachBtn" Height="30" Content="{Binding UpdateMachiningBtnMsg}"
Command="{Binding UpdateMachiningCommand}" Background="{Binding UpdateMachiningBtn_Background}"/>
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="1*"/>
<RowDefinition Height="Auto"/>
</Grid.RowDefinitions>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="1*"/>
</Grid.ColumnDefinitions>
<CheckBox Name="ViewToolBtn"
Content="{Binding ViewToolBtnMsg}"
IsChecked="{Binding ViewTool}"
Style="{StaticResource ViewTool_CheckBox}"/>
<Slider Grid.Row="1"
x:Name="SliderV"
Value="{Binding SliderValue}"
IsEnabled="{Binding IsChecked, ElementName=ViewToolBtn}"
TickFrequency="{Binding SliderTick}"
Minimum="1"
Maximum="{Binding SliderScale}"
IsSnapToTickEnabled="False"
Style="{StaticResource SliderValue_Slider}"/>
</Grid>
</StackPanel>
</UserControl>
@@ -3,81 +3,22 @@ Imports EgtWPFLib5.EgtFloating
Public Class MachiningParameterExpanderV
'Private EgtFloatingTray As EgtFloatingTray
'Private EgtFloatingPanel As EgtFloatingPanel
Sub New()
'Private m_bFirst As Boolean = True
' La chiamata è richiesta dalla finestra di progettazione.
InitializeComponent()
'Private Sub OperationExpanderView_Loaded(sender As Object, e As System.Windows.RoutedEventArgs) Handles Me.Loaded
' If m_bFirst Then
' EgtFloatingTray = FindAncestor(Of EgtFloatingTray)(Me)
' EgtFloatingPanel = FindAncestor(Of EgtFloatingPanel)(Me)
' AddHandler EgtFloatingTray.SizeChanged, AddressOf EgtFloatingTray_SizeChanged
' PanelHeight = EgtFloatingPanel.ActualHeight
' Me.AutomaticCloseExpanderStackPanelHeight = AutomaticCloseExpanderStackPanel.ActualHeight
' m_bFirst = False
' End If
' CalculateOperationParametersStackPanelMaxHeight()
'End Sub
' Aggiungere le eventuali istruzioni di inizializzazione dopo la chiamata a InitializeComponent().
'Dim m_bSizeChanging As Boolean = False
' Associo il gestore evento m_EventFocusOnSlider all'evento generato da FocusOnSlider
AddHandler Map.refMachiningParameterExpanderVM.m_EventFocusOnSlider, AddressOf FocusOnSlider
End Sub
'Private Sub EgtFloatingTray_SizeChanged(sender As Object, e As System.Windows.SizeChangedEventArgs)
' If m_bSizeChanging Then Return
' m_bSizeChanging = True
' CalculateOperationParametersStackPanelMaxHeight()
' m_bSizeChanging = False
'End Sub
'Dim PanelHeight As Double = 0
'Dim AutomaticCloseExpanderStackPanelHeight As Double = 0
'Private Sub CalculateOperationParametersStackPanelMaxHeight()
' Dim AutomaticCloseExpanderStackPanelHeight As Double = 0
' Dim OpenedExpanderList As New List(Of Boolean)
' For Index = 0 To AutomaticCloseExpanderStackPanel.Children.Count - 1
' If TypeOf AutomaticCloseExpanderStackPanel.Children(Index) Is Expander Then
' Dim IndexedExpander As Expander = DirectCast(AutomaticCloseExpanderStackPanel.Children(Index), Expander)
' If IndexedExpander.IsExpanded Then
' OpenedExpanderList.Add(True)
' IndexedExpander.IsExpanded = False
' Dim CurrExpanderContent As FrameworkElement = DirectCast(IndexedExpander.Content, FrameworkElement)
' CurrExpanderContent.Measure(New Size(Double.PositiveInfinity, Double.PositiveInfinity))
' AutomaticCloseExpanderStackPanelHeight -= CurrExpanderContent.DesiredSize.Height
' ' Sottraggo anche i padding
' AutomaticCloseExpanderStackPanelHeight -= (IndexedExpander.Padding.Top + IndexedExpander.Padding.Bottom)
' Else
' OpenedExpanderList.Add(False)
' End If
' Else
' OpenedExpanderList.Add(False)
' End If
' Next
' Dim RemainingHeight As Double = EgtFloatingTray.ActualHeight - PanelHeight
' AutomaticCloseExpanderStackPanel.MaxHeight = Me.AutomaticCloseExpanderStackPanelHeight + RemainingHeight
' For Index = AutomaticCloseExpanderStackPanel.Children.Count - 1 To 0 Step -1
' If TypeOf AutomaticCloseExpanderStackPanel.Children(Index) Is Expander Then
' Dim IndexedExpander As Expander = DirectCast(AutomaticCloseExpanderStackPanel.Children(Index), Expander)
' If OpenedExpanderList(Index) Then
' IndexedExpander.IsExpanded = True
' End If
' End If
' Next
'End Sub
'' Funzione che permette di trovare il primo contenitore di tipo T di un elemento grafico dependencyObject
'Public Function FindAncestor(Of T As Class)(dependencyObject As DependencyObject) As T
' Dim target As DependencyObject = dependencyObject
' Do
' target = LogicalTreeHelper.GetParent(target)
' Loop While target IsNot Nothing AndAlso Not (TypeOf target Is T)
' If IsNothing(target) Then
' target = dependencyObject
' Do
' target = VisualTreeHelper.GetParent(target)
' Loop While target IsNot Nothing AndAlso Not (TypeOf target Is T)
' End If
' Return TryCast(target, T)
'End Function
''' <summary>
''' Funzione che mette il focus allo slider
''' </summary>
Friend Sub FocusOnSlider()
Me.SliderV.Focus()
End Sub
End Class
@@ -6,6 +6,11 @@ Imports EgtWPFLib5
Public Class MachiningParameterExpanderVM
Inherits VMBase
''' <summary>
''' Evento che permette di mettere il focus sullo slider
''' </summary>
Friend Event m_EventFocusOnSlider()
Private WithEvents m_CurrOperation As MachiningTreeViewItem
Public Property CurrOperation As MachiningTreeViewItem
Get
@@ -50,7 +55,6 @@ Public Class MachiningParameterExpanderVM
End Property
Private m_bPreviewTool As Boolean = False
Private m_nPtEntId As Integer = GDB_ID.NULL
Public Property ViewTool As Boolean
Get
Return m_bPreviewTool
@@ -58,16 +62,70 @@ Public Class MachiningParameterExpanderVM
Set(value As Boolean)
If value Then
EgtPreparePreviewMachiningTool()
m_nPtEntId = EgtPreviewMachiningTool(GDB_ID.NULL, MCH_PTM.AFTER)
m_bPreviewTool = True
ResetSliderValue()
Else
EgtRemovePreviewMachiningTool()
m_bPreviewTool = False
ResetSliderValue()
End If
EgtDraw()
NotifyPropertyChanged("ViewTool")
End Set
End Property
Friend Sub SetViewTool(value As Boolean)
ViewTool = value
NotifyPropertyChanged("ViewTool")
End Sub
' Slider per muovere l'utensile in aggiunta ai pulsanti indietro e avanti
Private m_SliderScale As Integer = 100
Public ReadOnly Property SliderScale As Integer
Get
Return m_SliderScale
End Get
End Property
Friend Sub SetSliderScale(value As Integer)
m_SliderScale = Math.Max( value, 1)
If m_SliderScale <= 10 Then
m_SliderTick = 1
Else
m_SliderTick = CInt( m_SliderScale / 10)
End If
NotifyPropertyChanged( NameOf(SliderScale))
NotifyPropertyChanged( NameOf(SliderTick))
End Sub
Private m_SliderTick As Integer = 10
Public ReadOnly Property SliderTick As Integer
Get
Return m_SliderTick
End Get
End Property
Private m_nPtEntId As Integer = GDB_ID.NULL
Private m_SliderValue As Integer = 1
Public Property SliderValue As Integer
Get
Return m_SliderValue
End Get
Set(value As Integer)
If m_bPreviewTool Then
Dim nId As Integer = EgtPreviewMachiningTool(m_nPtEntId, value - m_SliderValue)
If nId <> GDB_ID.NULL Then m_nPtEntId = nId
EgtDraw()
End If
m_SliderValue = value
End Set
End Property
Friend Sub ResetSliderValue()
If m_bPreviewTool Then
m_nPtEntId = EgtPreviewMachiningTool(GDB_ID.NULL, MCH_PTM.AFTER)
Else
m_nPtEntId = GDB_ID.NULL
End If
m_SliderValue = 1
NotifyPropertyChanged(NameOf(SliderValue))
End Sub
Dim WoodDrillParamExpanderV As WoodDrillingParameterExpanderV
Dim WoodSawParamExpanderV As WoodSawingParameterExpanderV
@@ -84,6 +142,8 @@ Public Class MachiningParameterExpanderVM
Dim StoneDrillParamExpanderV As StoneDrillingParameterExpanderV
Dim SurfFinishParamExpanderV As SurfFinishingParameterExpanderV
Dim WjParamExpanderV As WaterjettingParameterExpanderV
Dim FiveAxExpanderV As FiveAxisMachinigParameterExpanderV
Dim SurfRoughExpanderV As SurfRoughingParameterExpanderV
Private Sub Dummy()
@@ -106,24 +166,11 @@ Public Class MachiningParameterExpanderVM
EgtGetMachiningParam(MCH_MP.TYPE, nType)
m_CurrOperation = New MachiningTreeViewItem(sName, DirectCast(nType, MCH_MY))
'WoodDrillParamExpanderV.DataContext = Nothing
'WoodSawParamExpanderV.DataContext = Nothing
'WoodMillParamExpanderV.DataContext = Nothing
'BeamMillParamExpanderV.DataContext = Nothing
'PocketParamExpanderV.DataContext = Nothing
'MortiseParamExpanderV.DataContext = Nothing
'GenMachinParamExpanderV.DataContext = Nothing
'ChiselParamExpanderV.DataContext = Nothing
'StoneSawParamExpanderV.DataContext = Nothing
'StoneSawFinishParamExpanderV.DataContext = Nothing
'StoneSawRoughParamExpanderV.DataContext = Nothing
'StoneMillParamExpanderV.DataContext = Nothing
'StoneDrillParamExpanderV.DataContext = Nothing
'SurfFinishParamExpanderV.DataContext = Nothing
'WjParamExpanderV.DataContext = Nothing
m_CurrOperation.ReadOperationParam()
' Riferimento a operazione selezionata
EgtWPFLib5.MachiningTreeViewItem.sh_SelMach = m_CurrOperation
IsModified(False)
ErrorOnOperation(False)
@@ -212,6 +259,14 @@ Public Class MachiningParameterExpanderVM
If IsNothing(WjParamExpanderV) Then WjParamExpanderV = New WaterjettingParameterExpanderV
WjParamExpanderV.DataContext = m_CurrOperation
Return WjParamExpanderV
Case MCH_OY.FIVEAXISMILLING
If IsNothing(FiveAxExpanderV) Then FiveAxExpanderV = New FiveAxisMachinigParameterExpanderV
FiveAxExpanderV.DataContext = m_CurrOperation
Return FiveAxExpanderV
Case MCH_OY.SURFROUGHING
If IsNothing(SurfRoughExpanderV) Then SurfRoughExpanderV = New SurfRoughingParameterExpanderV
SurfRoughExpanderV.DataContext = m_CurrOperation
Return SurfRoughExpanderV
End Select
'MachiningParameterExpanderItem.ReadOperationParam()
@@ -257,84 +312,25 @@ Public Class MachiningParameterExpanderVM
Sub New()
EgtWPFLib5.MachiningDbWindowVM.m_sMachineIniPath = IniFile.m_sCurrMachIniFilePath
'WoodDrillParamExpanderV = New WoodDrillingParameterExpanderV
'WoodSawParamExpanderV = New WoodSawingParameterExpanderV
'WoodMillParamExpanderV = New WoodMillingParameterExpanderV
'BeamMillParamExpanderV = New BeamMillingParameterExpanderV
'PocketParamExpanderV = New PocketingParameterExpanderV
'MortiseParamExpanderV = New MortisingParameterExpanderV
'GenMachinParamExpanderV = New GenMachiningParameterExpanderV
'ChiselParamExpanderV = New ChiselingParameterExpanderV
'StoneSawParamExpanderV = New StoneSawingParameterExpanderV
'StoneSawFinishParamExpanderV = New StoneSawFinishingParameterExpanderV
'StoneSawRoughParamExpanderV = New StoneSawRoughingParameterExpanderV
'StoneMillParamExpanderV = New StoneMillingParameterExpanderV
'StoneDrillParamExpanderV = New StoneDrillingParameterExpanderV
'SurfFinishParamExpanderV = New SurfFinishingParameterExpanderV
'WjParamExpanderV = New WaterjettingParameterExpanderV
Map.SetRefMachiningParameterExpanderVM(Me)
NotifyPropertyChanged("ParamExpanderPageV")
End Sub
#End Region ' Constructor
#Region "METHODS"
''' <summary>
''' Funzione che attiva l'evento che mette il focus sullo slider
''' </summary>
Public Sub FocusSlider()
RaiseEvent m_EventFocusOnSlider()
End Sub
#End Region ' Methods
#Region "COMMANDS"
#Region "NextStepToolCommand"
''' <summary>
''' Restituisce funzione per ricalcolo lavorazione.
''' </summary>
Public ReadOnly Property NextStepToolCommand As ICommand
Get
If m_cmdNextStepTool Is Nothing Then
m_cmdNextStepTool = New RelayCommand(AddressOf NextStepTool)
End If
Return m_cmdNextStepTool
End Get
End Property
''' <summary>
''' Ricalcola una lavorazione.
''' </summary>
Public Sub NextStepTool(ByVal param As Object)
If m_bPreviewTool Then
Dim nNextId = EgtPreviewMachiningTool(m_nPtEntId, MCH_PTM.AFTER)
If nNextId <> GDB_ID.NULL Then m_nPtEntId = nNextId
EgtDraw()
End If
End Sub
#End Region ' NextStepToolCommand
#Region "PrevStepToolCommand"
''' <summary>
''' Restituisce funzione per ricalcolo lavorazione.
''' </summary>
Public ReadOnly Property PrevStepToolCommand As ICommand
Get
If m_cmdPrevStepTool Is Nothing Then
m_cmdPrevStepTool = New RelayCommand(AddressOf PrevStepTool)
End If
Return m_cmdPrevStepTool
End Get
End Property
''' <summary>
''' Ricalcola una lavorazione.
''' </summary>
Public Sub PrevStepTool(ByVal param As Object)
If m_bPreviewTool Then
Dim nPrevId = EgtPreviewMachiningTool(m_nPtEntId, MCH_PTM.BEFORE)
If nPrevId <> GDB_ID.NULL Then m_nPtEntId = nPrevId
EgtDraw()
End If
End Sub
#End Region ' PrevStepToolCommand
#Region "UpdateMachiningCommand"
''' <summary>
@@ -364,7 +360,18 @@ Public Class MachiningParameterExpanderVM
MessageBox.Show(EgtMsg(5423) + sErrorList, EgtMsg(30009), MessageBoxButton.OK, MessageBoxImage.Exclamation)
Return
End If
Dim bRecalc As Boolean = ((Keyboard.Modifiers And ModifierKeys.Shift) = ModifierKeys.Shift)
Dim bRecalc As Boolean = False
If (Keyboard.Modifiers And ModifierKeys.Shift) = ModifierKeys.Shift Then
bRecalc = True
Else
' Controllo se il tipo e' dr o sr o lr bRecalc e' true come quando viene selezionato Shift
For Each ItemNote As NoteListBoxItem In m_CurrOperation.NotesList
bRecalc = ItemNote.Type.Equals("dr") OrElse ItemNote.Type.Equals("lr") OrElse ItemNote.Type.Equals("sr") OrElse ItemNote.Type.Equals("br")
If bRecalc Then Exit For
Next
End If
' La modifica di alcuni parametri forza il ricalcolo della geometria
Dim ModifiedGeometry As Boolean = m_CurrOperation.m_IsModifiedSelectedFaceUseType
' aggiorno valori modificati
@@ -443,11 +450,9 @@ Public Class MachiningParameterExpanderVM
End If
End If
' Restart visualizzazione utensile
If m_bPreviewTool Then
EgtPreparePreviewMachiningTool()
m_nPtEntId = EgtPreviewMachiningTool(GDB_ID.NULL, MCH_PTM.AFTER)
End If
IsModified(False) ' NotifyPropertyChanged("UpdateMachiningBtn_Background")
SetSliderScale( EgtGetPreviewMachiningToolStepCount())
SetViewTool(True)
IsModified(False)
ErrorOnOperation(False)
EgtDraw()
Map.refProjectVM.EmitTitle()
@@ -503,8 +508,12 @@ Public Class OperationParamVisibilityConverter
Return TMDbParamVisibility.Chiseling(CInt(parameter))
Case MCH_OY.SURFFINISHING
Return TMDbParamVisibility.SurfFinishing(CInt(parameter))
Case MCH_OY.SURFROUGHING
Return TMDbParamVisibility.SurfRoughing(CInt(parameter))
Case MCH_OY.WATERJETTING
Return TMDbParamVisibility.WaterJetting(CInt(parameter))
Case MCH_OY.FIVEAXISMILLING
Return TMDbParamVisibility.FiveAxMachining(CInt(parameter))
Case Else
Return Visibility.Hidden
End Select
@@ -232,7 +232,7 @@
IsReadOnly="False"/>
</TabItem>
<TabItem Header="CHECKBOX">
<CheckBox IsChecked="{Binding Value}"/>
<CheckBox IsChecked="{Binding Value, UpdateSourceTrigger=PropertyChanged}"/>
</TabItem>
</TabControl>
<Button Command="{Binding RemoveItemNoteCommand}"
@@ -129,13 +129,13 @@
UpdateSourceTrigger=PropertyChanged,
ValidatesOnDataErrors=True}"
Style="{DynamicResource StringParamV_Margin}"/>
<EgtWPFLib5:StringParamV ParamTxBl="{Binding OffsetSlTxBl}"
ParamTxBx="{Binding Path=OffSl,
<EgtWPFLib5:StringParamV ParamTxBl="{Binding OffsetSrTxBl}"
ParamTxBx="{Binding Path=OffSr,
UpdateSourceTrigger=PropertyChanged,
ValidatesOnDataErrors=True}"
Style="{DynamicResource StringParamV_Margin}"/>
<EgtWPFLib5:StringParamV ParamTxBl="{Binding OffsetSrTxBl}"
ParamTxBx="{Binding Path=OffSr,
<EgtWPFLib5:StringParamV ParamTxBl="{Binding OffsetSlTxBl}"
ParamTxBx="{Binding Path=OffSl,
UpdateSourceTrigger=PropertyChanged,
ValidatesOnDataErrors=True}"
Style="{DynamicResource StringParamV_Margin}"/>
@@ -241,7 +241,7 @@
IsReadOnly="False"/>
</TabItem>
<TabItem Header="CHECKBOX">
<CheckBox IsChecked="{Binding Value}"/>
<CheckBox IsChecked="{Binding Value, UpdateSourceTrigger=PropertyChanged}"/>
</TabItem>
</TabControl>
<Button Command="{Binding RemoveItemNoteCommand}"
@@ -213,7 +213,7 @@
IsReadOnly="False"/>
</TabItem>
<TabItem Header="CHECKBOX">
<CheckBox IsChecked="{Binding Value}"/>
<CheckBox IsChecked="{Binding Value, UpdateSourceTrigger=PropertyChanged}"/>
</TabItem>
</TabControl>
<Button Command="{Binding RemoveItemNoteCommand}"
@@ -217,7 +217,7 @@
IsReadOnly="False"/>
</TabItem>
<TabItem Header="CHECKBOX">
<CheckBox IsChecked="{Binding Value}"/>
<CheckBox IsChecked="{Binding Value, UpdateSourceTrigger=PropertyChanged}"/>
</TabItem>
</TabControl>
<Button Command="{Binding RemoveItemNoteCommand}"
@@ -211,7 +211,7 @@
IsReadOnly="False"/>
</TabItem>
<TabItem Header="CHECKBOX">
<CheckBox IsChecked="{Binding Value}"/>
<CheckBox IsChecked="{Binding Value, UpdateSourceTrigger=PropertyChanged}"/>
</TabItem>
</TabControl>
<Button Command="{Binding RemoveItemNoteCommand}"
@@ -209,7 +209,7 @@
IsReadOnly="False"/>
</TabItem>
<TabItem Header="CHECKBOX">
<CheckBox IsChecked="{Binding Value}"/>
<CheckBox IsChecked="{Binding Value, UpdateSourceTrigger=PropertyChanged}"/>
</TabItem>
</TabControl>
<Button Command="{Binding RemoveItemNoteCommand}"
@@ -217,7 +217,7 @@
IsReadOnly="False"/>
</TabItem>
<TabItem Header="CHECKBOX">
<CheckBox IsChecked="{Binding Value}"/>
<CheckBox IsChecked="{Binding Value, UpdateSourceTrigger=PropertyChanged}"/>
</TabItem>
</TabControl>
<Button Command="{Binding RemoveItemNoteCommand}"
@@ -124,12 +124,6 @@
UpdateSourceTrigger=PropertyChanged,
ValidatesOnDataErrors=True}"
Style="{DynamicResource StringParamV_Margin}"/>
<EgtWPFLib5:ComboParamV ParamTxBl="{Binding LeadLinkTypeTxBl}"
ParamCmBxList="{Binding Path=LeadLinkTypeList,
UpdateSourceTrigger=PropertyChanged,
ValidatesOnDataErrors=True}"
ParamCmBxSelIndex="{Binding Path=SelectedLeadLinkType}"
Style="{DynamicResource ComboParamV_Margin}"/>
<EgtWPFLib5:StringParamV ParamTxBl="{Binding SideAngleTxBl}"
ParamTxBx="{Binding Path=SideAngle,
UpdateSourceTrigger=PropertyChanged,
@@ -230,7 +224,7 @@
IsReadOnly="False"/>
</TabItem>
<TabItem Header="CHECKBOX">
<CheckBox IsChecked="{Binding Value}"/>
<CheckBox IsChecked="{Binding Value, UpdateSourceTrigger=PropertyChanged}"/>
</TabItem>
</TabControl>
<Button Command="{Binding RemoveItemNoteCommand}"
@@ -0,0 +1,346 @@
<UserControl x:Class="SurfRoughingParameterExpanderV"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:sys="clr-namespace:System;assembly=mscorlib"
xmlns:Interactivity="clr-namespace:System.Windows.Interactivity;assembly=System.Windows.Interactivity"
xmlns:EgtCAM5="clr-namespace:EgtCAM5"
xmlns:EgtWPFLib5="clr-namespace:EgtWPFLib5;assembly=EgtWPFLib5">
<UserControl.Resources>
<EgtCAM5:OperationParamVisibilityConverter x:Key="OperationParamVisibilityConverter"/>
<EgtCAM5:DepthUnitConverter x:Key="DepthUnitConverter"/>
<sys:Int32 x:Key="Invert">0</sys:Int32>
<sys:Int32 x:Key="LeaveTab">1</sys:Int32>
<sys:Int32 x:Key="WorkSide">2</sys:Int32>
<sys:Int32 x:Key="HeadSide">3</sys:Int32>
<sys:Int32 x:Key="LeadInType">4</sys:Int32>
<sys:Int32 x:Key="ExtLinkType">5</sys:Int32>
<sys:Int32 x:Key="LeadOutType">6</sys:Int32>
<sys:Int32 x:Key="CurveUse">7</sys:Int32>
<sys:Int32 x:Key="StepType">8</sys:Int32>
<sys:Int32 x:Key="LeadLinkType">9</sys:Int32>
<sys:Int32 x:Key="Speed">10</sys:Int32>
<sys:Int32 x:Key="Feed">11</sys:Int32>
<sys:Int32 x:Key="StartFeed">12</sys:Int32>
<sys:Int32 x:Key="EndFeed">13</sys:Int32>
<sys:Int32 x:Key="TipFeed">14</sys:Int32>
<sys:Int32 x:Key="OffSr">15</sys:Int32>
<sys:Int32 x:Key="OffSl">16</sys:Int32>
<sys:Int32 x:Key="SideAngle">17</sys:Int32>
<sys:Int32 x:Key="Approx">18</sys:Int32>
<sys:Int32 x:Key="StartPos">19</sys:Int32>
<sys:Int32 x:Key="StartSlowLen">20</sys:Int32>
<sys:Int32 x:Key="EndSlowLen">21</sys:Int32>
<sys:Int32 x:Key="ThrouAddLen">22</sys:Int32>
<sys:Int32 x:Key="StepPar">23</sys:Int32>
<sys:Int32 x:Key="ReturnPos">24</sys:Int32>
<sys:Int32 x:Key="TabLen">25</sys:Int32>
<sys:Int32 x:Key="TabDist">26</sys:Int32>
<sys:Int32 x:Key="TabHeight">27</sys:Int32>
<sys:Int32 x:Key="TabAngle">28</sys:Int32>
<sys:Int32 x:Key="LiTang">29</sys:Int32>
<sys:Int32 x:Key="LiPerp">30</sys:Int32>
<sys:Int32 x:Key="LiElev">31</sys:Int32>
<sys:Int32 x:Key="LiCompLen">32</sys:Int32>
<sys:Int32 x:Key="LoTang">33</sys:Int32>
<sys:Int32 x:Key="LoPerp">34</sys:Int32>
<sys:Int32 x:Key="LoElev">35</sys:Int32>
<sys:Int32 x:Key="LoCompLen">36</sys:Int32>
<sys:Int32 x:Key="StartAddLen">37</sys:Int32>
<sys:Int32 x:Key="EndAddLen">38</sys:Int32>
<sys:Int32 x:Key="StepExtArc">39</sys:Int32>
<sys:Int32 x:Key="StepIntArc">40</sys:Int32>
<sys:Int32 x:Key="SideStep">41</sys:Int32>
<sys:Int32 x:Key="VertFeed">42</sys:Int32>
<sys:Int32 x:Key="NamePar">43</sys:Int32>
<sys:Int32 x:Key="Tool">44</sys:Int32>
<sys:Int32 x:Key="DepthStr">45</sys:Int32>
<sys:Int32 x:Key="UserNotes">46</sys:Int32>
<sys:Int32 x:Key="OverLapStr">47</sys:Int32>
<sys:Int32 x:Key="OffsetStr">48</sys:Int32>
<sys:Int32 x:Key="SubType">49</sys:Int32>
<sys:Int32 x:Key="SolChoiceType">50</sys:Int32>
<sys:Int32 x:Key="AxRotRef">51</sys:Int32>
<sys:Int32 x:Key="BlockedAxesRef">52</sys:Int32>
<sys:Int32 x:Key="FaceUseType">53</sys:Int32>
<sys:Int32 x:Key="InvertToolDir">54</sys:Int32>
<sys:Int32 x:Key="ExpanderLeadIn">55</sys:Int32>
<sys:Int32 x:Key="ExpanderLeadOut">56</sys:Int32>
<sys:Int32 x:Key="ApproxGen">57</sys:Int32>
<sys:Int32 x:Key="OscEnable">58</sys:Int32>
<sys:Int32 x:Key="OscHeight">59</sys:Int32>
<sys:Int32 x:Key="OscRampLen">60</sys:Int32>
<sys:Int32 x:Key="OscFlatLen">61</sys:Int32>
</UserControl.Resources>
<StackPanel Name="OperationParametersStackPanel">
<StackPanel Name="OperationFirstParametersStackPanel">
<UniformGrid Columns="2">
<TextBlock Text="{Binding DepthStrTxBl}" Style="{DynamicResource MPExpander_DepthTxBlMargin}"/>
<EgtWPFLib5:EgtTextBox Text="{Binding DepthStr, UpdateSourceTrigger=PropertyChanged,
Converter={StaticResource DepthUnitConverter}}"
Style="{DynamicResource MPExpander_DepthTxBxMargin}"/>
</UniformGrid>
<EgtWPFLib5:CheckParamV ParamTxBl="{Binding InvertTxBl}"
ParamChBx="{Binding Path=Invert,
UpdateSourceTrigger=PropertyChanged,
ValidatesOnDataErrors=True}"
Style="{DynamicResource CheckParamV_Margin}"/>
<EgtWPFLib5:ComboParamV ParamTxBl="{Binding SubTypeTxBl}"
ParamCmBxList="{Binding Path=SubTypeList,
UpdateSourceTrigger=PropertyChanged,
ValidatesOnDataErrors=True}"
ParamCmBxSelIndex="{Binding Path=SelectedSubType}"
Style="{DynamicResource ComboParamV_Margin}"/>
<UniformGrid Columns="2">
<TextBlock Text="{Binding UserNotesTxBl}"
Style="{DynamicResource MPExpander_UserNotesTxBlMargin}"/>
<EgtWPFLib5:EgtTextBox Text="{Binding UserNotes, UpdateSourceTrigger=PropertyChanged}"
Style="{DynamicResource MPExpander_UserNotesTxBxMargin}">
<EgtWPFLib5:EgtTextBox.ToolTip>
<TextBlock Text="{Binding UserNotesTooltip}"/>
</EgtWPFLib5:EgtTextBox.ToolTip>
</EgtWPFLib5:EgtTextBox>
<TextBlock Text="{Binding SystemNotesTxBl}"
Style="{DynamicResource MPExpander_UserNotesTxBlMargin}"
Visibility="{Binding SysNotes_Visibility}"/>
<EgtWPFLib5:EgtTextBox Text="{Binding SystemNotes, UpdateSourceTrigger=PropertyChanged}"
Style="{DynamicResource MPExpander_UserNotesTxBxMargin}"
Visibility="{Binding SysNotes_Visibility}"
IsReadOnly="True"/>
</UniformGrid>
</StackPanel>
<StackPanel Name="AutomaticCloseExpanderStackPanel">
<Expander Header="{Binding GenericExpanderHeader}" Name="GenericExpander"
Style="{StaticResource ExpanderStyle}" Margin="0,1,0,1">
<StackPanel>
<EgtWPFLib5:StringParamV ParamTxBl="{Binding StartPosTxBl}"
ParamTxBx="{Binding Path=StartPos,
UpdateSourceTrigger=PropertyChanged,
ValidatesOnDataErrors=True}"
Style="{DynamicResource StringParamV_Margin}"/>
<EgtWPFLib5:StringParamV ParamTxBl="{Binding SideAngleTxBl}"
ParamTxBx="{Binding Path=SideAngle,
UpdateSourceTrigger=PropertyChanged,
ValidatesOnDataErrors=True}"
Style="{DynamicResource StringParamV_Margin}"/>
<EgtWPFLib5:StringParamV ParamTxBl="{Binding StepParTxBl}"
ParamTxBx="{Binding Path=StepPar,
UpdateSourceTrigger=PropertyChanged,
ValidatesOnDataErrors=True}"
Style="{DynamicResource StringParamV_Margin}"/>
<EgtWPFLib5:StringParamV ParamTxBl="{Binding SubStepTxBl}"
ParamTxBx="{Binding Path=SubStep,
UpdateSourceTrigger=PropertyChanged,
ValidatesOnDataErrors=True}"
Style="{DynamicResource StringParamV_Margin}"/>
<EgtWPFLib5:StringParamV ParamTxBl="{Binding SideStepTxBl}"
ParamTxBx="{Binding Path=SideStep,
UpdateSourceTrigger=PropertyChanged,
ValidatesOnDataErrors=True}"
Style="{DynamicResource StringParamV_Margin}"/>
<EgtWPFLib5:StringParamV ParamTxBl="{Binding OffsetSrTxBl}"
ParamTxBx="{Binding Path=OffSr,
UpdateSourceTrigger=PropertyChanged,
ValidatesOnDataErrors=True}"
Style="{DynamicResource StringParamV_Margin}"/>
<EgtWPFLib5:StringParamV ParamTxBl="{Binding OffsetSlTxBl}"
ParamTxBx="{Binding Path=OffSl,
UpdateSourceTrigger=PropertyChanged,
ValidatesOnDataErrors=True}"
Style="{DynamicResource StringParamV_Margin}"/>
<EgtWPFLib5:StringParamV ParamTxBl="{Binding ApproxTxBl}"
ParamTxBx="{Binding Path=Approx,
UpdateSourceTrigger=PropertyChanged,
ValidatesOnDataErrors=True}"
Style="{DynamicResource StringParamV_Margin}"/>
</StackPanel>
</Expander>
<Expander Name="AdvancedParam" IsExpanded="{Binding AdvancedParamIsExpander}"
Style="{StaticResource ExpanderStyle}" Margin="0,1,0,1">
<Expander.Header>
<UniformGrid Columns="2">
<TextBlock Text="{Binding AdvancedParamMsg}"
Margin="2.5"/>
<Button Command="{Binding ShowNoteListComboCommand}"
IsEnabled="{Binding ShowNoteListCombo_IsEnable}"
Visibility="{Binding ShowNoteListCombo_Visibility}"
ToolTip="{Binding ShowNoteToolTip}"
Grid.Column="1"
HorizontalAlignment="Right"
Margin="2.5,2.5,7,2.5"
Width="20">
<Image Source="/Resources/Note/+.png" Stretch="Uniform"/>
</Button>
</UniformGrid>
</Expander.Header>
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="1*"/>
<RowDefinition Height="Auto"/>
</Grid.RowDefinitions>
<StackPanel>
<EgtWPFLib5:StringParamV ParamTxBl="{Binding InitAngsTxBl}"
ParamTxBx="{Binding Path=InitAngs,
UpdateSourceTrigger=PropertyChanged,
ValidatesOnDataErrors=True}"
Style="{DynamicResource StringParamV_Margin}"/>
<EgtWPFLib5:StringParamV ParamTxBl="{Binding BlockedAxisTxBl}"
ParamTxBx="{Binding Path=BlockedAxis,
UpdateSourceTrigger=PropertyChanged,
ValidatesOnDataErrors=True}"
Style="{DynamicResource StringParamV_Margin}"/>
<EgtWPFLib5:ComboParamV ParamTxBl="{Binding SolChoiceTypeTxBl}"
ParamCmBxList="{Binding Path=SolChoiceTypeList,
UpdateSourceTrigger=PropertyChanged,
ValidatesOnDataErrors=True,
Mode=OneWay}"
ParamCmBxSelIndex="{Binding Path=SelectedSolChoiceType}"
Style="{DynamicResource ComboParamV_Margin}"/>
</StackPanel>
<Grid Grid.Row="1" Margin="0,5,0,0">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="1*"/>
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="1*"/>
<RowDefinition Height="Auto"/>
</Grid.RowDefinitions>
<ItemsControl ItemsSource="{Binding NotesList}">
<ItemsControl.ItemTemplate>
<DataTemplate>
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="1*"/>
<ColumnDefinition Width="Auto"/>
</Grid.ColumnDefinitions>
<TextBlock Text="{Binding Description}"
Margin="0,5.5,29,0"
Width="82"
Style="{DynamicResource MPExpander_UserNotesTxBlMargin}"/>
<TabControl SelectedIndex="{Binding SelTypeValue}"
Grid.Column="1"
Background="Transparent"
BorderBrush="Transparent">
<TabControl.ItemContainerStyle>
<Style TargetType="{x:Type TabItem}">
<Setter Property="Visibility" Value="Collapsed"/>
</Style>
</TabControl.ItemContainerStyle>
<TabItem Header="TEXT">
<TextBox Text="{Binding Value, UpdateSourceTrigger=PropertyChanged}"
IsReadOnly="False"/>
</TabItem>
<TabItem Header="CHECKBOX">
<CheckBox IsChecked="{Binding Value, UpdateSourceTrigger=PropertyChanged}"/>
</TabItem>
</TabControl>
<Button Command="{Binding RemoveItemNoteCommand}"
Grid.Column="2"
Width="20"
Height="20"
Margin="5,0,0,0">
<Image Source="/Resources/Note/-.png" Stretch="Uniform"/>
</Button>
</Grid>
</DataTemplate>
</ItemsControl.ItemTemplate>
</ItemsControl>
<ComboBox ItemsSource="{Binding NotesListCombo}"
SelectedItem="{Binding SelNoteItemCombo}"
Grid.Row="1"
Grid.ColumnSpan="1"
Visibility="{Binding ComboAddVisibility}">
<ComboBox.ItemTemplate>
<DataTemplate>
<TextBlock Text="{Binding Description}"
Margin="2.5"/>
</DataTemplate>
</ComboBox.ItemTemplate>
</ComboBox>
</Grid>
</Grid>
</Expander>
<Expander Style="{StaticResource ExpanderStyle}">
<Expander.Header>
<EgtWPFLib5:ComboParamV ParamTxBl="{Binding LeadInTypeTxBl}"
ParamCmBxList="{Binding Path=LeadInTypeList,
UpdateSourceTrigger=PropertyChanged,
ValidatesOnDataErrors=True}"
ParamCmBxSelIndex="{Binding Path=SelectedLeadInType}"
Style="{DynamicResource ComboParamV_Margin}"/>
</Expander.Header>
<StackPanel>
<EgtWPFLib5:StringParamV ParamTxBl="{Binding LiTangTxBl}"
ParamTxBx="{Binding Path=LiTang,
UpdateSourceTrigger=PropertyChanged,
ValidatesOnDataErrors=True}"
Style="{DynamicResource StringParamV_Margin}"/>
<EgtWPFLib5:StringParamV ParamTxBl="{Binding LiElevTxBl}"
ParamTxBx="{Binding Path=LiElev,
UpdateSourceTrigger=PropertyChanged,
ValidatesOnDataErrors=True}"
Style="{DynamicResource StringParamV_Margin}"/>
</StackPanel>
</Expander>
<Expander Style="{StaticResource ExpanderStyle}">
<Expander.Header>
<EgtWPFLib5:ComboParamV ParamTxBl="{Binding LeadOutTypeTxBl}"
ParamCmBxList="{Binding Path=LeadOutTypeList,
UpdateSourceTrigger=PropertyChanged,
ValidatesOnDataErrors=True}"
ParamCmBxSelIndex="{Binding Path=SelectedLeadOutType}"
Style="{DynamicResource ComboParamV_Margin}"/>
</Expander.Header>
<StackPanel>
<EgtWPFLib5:StringParamV ParamTxBl="{Binding LoTangTxBl}"
ParamTxBx="{Binding Path=LoTang,
UpdateSourceTrigger=PropertyChanged,
ValidatesOnDataErrors=True}"
Style="{DynamicResource StringParamV_Margin}"/>
</StackPanel>
</Expander>
<Expander Style="{StaticResource ExpanderStyle}">
<Expander.Header>
<TextBlock Text="{Binding ToolExpanderHeader}"/>
</Expander.Header>
<StackPanel>
<EgtWPFLib5:StringParamV ParamTxBl="{Binding SpeedTxBl}"
ParamTxBx="{Binding Path=Speed,
UpdateSourceTrigger=PropertyChanged,
ValidatesOnDataErrors=True}"
Style="{DynamicResource StringParamV_Margin}"/>
<EgtWPFLib5:StringParamV ParamTxBl="{Binding FeedTxBl}"
ParamTxBx="{Binding Path=Feed,
UpdateSourceTrigger=PropertyChanged,
ValidatesOnDataErrors=True}"
Style="{DynamicResource StringParamV_Margin}"/>
<EgtWPFLib5:StringParamV ParamTxBl="{Binding TipFeedTxBl}"
ParamTxBx="{Binding Path=TipFeed,
UpdateSourceTrigger=PropertyChanged,
ValidatesOnDataErrors=True}"
Style="{DynamicResource StringParamV_Margin}"/>
<EgtWPFLib5:StringParamV ParamTxBl="{Binding StartFeedTxBl}"
ParamTxBx="{Binding Path=StartFeed,
UpdateSourceTrigger=PropertyChanged,
ValidatesOnDataErrors=True}"
Style="{DynamicResource StringParamV_Margin}"/>
<EgtWPFLib5:StringParamV ParamTxBl="{Binding EndFeedTxBl}"
ParamTxBx="{Binding Path=EndFeed,
UpdateSourceTrigger=PropertyChanged,
ValidatesOnDataErrors=True}"
Style="{DynamicResource StringParamV_Margin}"/>
</StackPanel>
</Expander>
<Interactivity:Interaction.Behaviors>
<EgtCAM5:AutomaticCloseExpander/>
</Interactivity:Interaction.Behaviors>
</StackPanel>
</StackPanel>
</UserControl>
@@ -0,0 +1,83 @@
Imports EgtWPFLib5.EgtFloating
Public Class SurfRoughingParameterExpanderV
Private m_RightTrayV As RightTrayV
Private EgtFloatingPanel As EgtFloatingPanel
Private m_bFirst As Boolean = True
Private Sub OperationExpanderView_Loaded(sender As Object, e As System.Windows.RoutedEventArgs) Handles Me.Loaded
If m_bFirst Then
m_RightTrayV = FindAncestor(Of RightTrayV)(Me)
EgtFloatingPanel = FindAncestor(Of EgtFloatingPanel)(Me)
AddHandler m_RightTrayV.SizeChanged, AddressOf RightTrayV_SizeChanged
PanelHeight = EgtFloatingPanel.DesiredSize.Height
Me.AutomaticCloseExpanderStackPanelHeight = AutomaticCloseExpanderStackPanel.ActualHeight
m_bFirst = False
End If
CalculateOperationParametersStackPanelMaxHeight()
End Sub
Dim m_bSizeChanging As Boolean = False
Private Sub RightTrayV_SizeChanged(sender As Object, e As System.Windows.SizeChangedEventArgs)
If m_bSizeChanging Then Return
m_bSizeChanging = True
CalculateOperationParametersStackPanelMaxHeight()
m_bSizeChanging = False
End Sub
Dim PanelHeight As Double = 0
Dim AutomaticCloseExpanderStackPanelHeight As Double = 0
' ricalcola spazio utilizzabile quando modificata dimensione finestra e quindi dimensione della tray
Private Sub CalculateOperationParametersStackPanelMaxHeight()
Dim AutomaticCloseExpanderStackPanelHeight As Double = 0
Dim OpenedExpanderList As New List(Of Boolean)
For Index = 0 To AutomaticCloseExpanderStackPanel.Children.Count - 1
If TypeOf AutomaticCloseExpanderStackPanel.Children(Index) Is Expander Then
Dim IndexedExpander As Expander = DirectCast(AutomaticCloseExpanderStackPanel.Children(Index), Expander)
If IndexedExpander.IsExpanded Then
OpenedExpanderList.Add(True)
IndexedExpander.IsExpanded = False
Dim CurrExpanderContent As FrameworkElement = DirectCast(IndexedExpander.Content, FrameworkElement)
CurrExpanderContent.Measure(New Size(Double.PositiveInfinity, Double.PositiveInfinity))
AutomaticCloseExpanderStackPanelHeight -= CurrExpanderContent.DesiredSize.Height
' Sottraggo anche i padding
AutomaticCloseExpanderStackPanelHeight -= (IndexedExpander.Padding.Top + IndexedExpander.Padding.Bottom)
Else
OpenedExpanderList.Add(False)
End If
Else
OpenedExpanderList.Add(False)
End If
Next
Dim RemainingHeight As Double = m_RightTrayV.ActualHeight - PanelHeight
AutomaticCloseExpanderStackPanel.MaxHeight = Me.AutomaticCloseExpanderStackPanelHeight + RemainingHeight
For Index = AutomaticCloseExpanderStackPanel.Children.Count - 1 To 0 Step -1
If TypeOf AutomaticCloseExpanderStackPanel.Children(Index) Is Expander Then
Dim IndexedExpander As Expander = DirectCast(AutomaticCloseExpanderStackPanel.Children(Index), Expander)
If OpenedExpanderList(Index) Then
IndexedExpander.IsExpanded = True
End If
End If
Next
End Sub
' Funzione che permette di trovare il primo contenitore di tipo T di un elemento grafico dependencyObject
Public Function FindAncestor(Of T As Class)(dependencyObject As DependencyObject) As T
Dim target As DependencyObject = dependencyObject
Do
target = LogicalTreeHelper.GetParent(target)
Loop While target IsNot Nothing AndAlso Not (TypeOf target Is T)
If IsNothing(target) Then
target = dependencyObject
Do
target = VisualTreeHelper.GetParent(target)
Loop While target IsNot Nothing AndAlso Not (TypeOf target Is T)
End If
Return TryCast(target, T)
End Function
End Class
@@ -199,7 +199,7 @@
IsReadOnly="False"/>
</TabItem>
<TabItem Header="CHECKBOX">
<CheckBox IsChecked="{Binding Value}"/>
<CheckBox IsChecked="{Binding Value, UpdateSourceTrigger=PropertyChanged}"/>
</TabItem>
</TabControl>
<Button Command="{Binding RemoveItemNoteCommand}"
@@ -218,7 +218,7 @@
IsReadOnly="False"/>
</TabItem>
<TabItem Header="CHECKBOX">
<CheckBox IsChecked="{Binding Value}"/>
<CheckBox IsChecked="{Binding Value, UpdateSourceTrigger=PropertyChanged}"/>
</TabItem>
</TabControl>
<Button Command="{Binding RemoveItemNoteCommand}"
@@ -236,7 +236,7 @@
IsReadOnly="False"/>
</TabItem>
<TabItem Header="CHECKBOX">
<CheckBox IsChecked="{Binding Value}"/>
<CheckBox IsChecked="{Binding Value, UpdateSourceTrigger=PropertyChanged}"/>
</TabItem>
</TabControl>
<Button Command="{Binding RemoveItemNoteCommand}"
@@ -226,7 +226,7 @@
IsReadOnly="False"/>
</TabItem>
<TabItem Header="CHECKBOX">
<CheckBox IsChecked="{Binding Value}"/>
<CheckBox IsChecked="{Binding Value, UpdateSourceTrigger=PropertyChanged}"/>
</TabItem>
</TabControl>
<Button Command="{Binding RemoveItemNoteCommand}"
@@ -170,6 +170,8 @@ Public Class MachiningOpListBoxItem
Return ""
Case MCH_OY.CHISELING
Return ""
Case MCH_OY.FIVEAXISMILLING
Return ""
Case Else
Return String.Empty
End Select
@@ -70,9 +70,10 @@ Public Class OperationParametersExpanderVM
Return m_DispositionParameterExpander
Else
If IsNothing(m_MachiningParameterExpander) Then
m_MachiningParameterExpander = New MachiningParameterExpanderV
m_MachiningParameterExpanderVM = New MachiningParameterExpanderVM()
m_MachiningParameterExpander.DataContext = m_MachiningParameterExpanderVM
m_MachiningParameterExpander = New MachiningParameterExpanderV With {
.DataContext = m_MachiningParameterExpanderVM
}
End If
m_MachiningParameterExpanderVM.NotifyPropertyChanged("ParamExpanderPageV")
Return m_MachiningParameterExpander
@@ -170,11 +171,15 @@ Public Class OperationParametersExpanderVM
Map.refProjectVM.SceneSelMode = OptionModule.m_SelGeomChiseling
Case MCH_OY.SURFFINISHING
Map.refProjectVM.SceneSelMode = OptionModule.m_SelGeomSurfFinishing
Case MCH_OY.SURFROUGHING
Map.refProjectVM.SceneSelMode = OptionModule.m_SelGeomSurfRoughing
Case MCH_OY.WATERJETTING
Map.refProjectVM.SceneSelMode = OptionModule.m_SelGeomWaterJetting
Case MCH_OY.FIVEAXISMILLING
Map.refProjectVM.SceneSelMode = OptionModule.m_SelGeomFiveAxMilling
End Select
' Imposto visualizzazione utensile
DirectCast(m_MachiningParameterExpander.DataContext, MachiningParameterExpanderVM).ViewTool = True
Map.refMachiningParameterExpanderVM.SetViewTool( True)
End If
OnPropertyChanged("ParametersIsExpanded")
Return True
@@ -204,7 +209,7 @@ Public Class OperationParametersExpanderVM
EgtDraw()
Else
' Nascondo visualizzazione utensile
DirectCast(m_MachiningParameterExpander.DataContext, MachiningParameterExpanderVM).ViewTool = False
Map.refMachiningParameterExpanderVM.SetViewTool( False)
End If
ParametersExpanderName = String.Empty
' Disabilito la selezione delle lavorazioni
@@ -433,6 +433,8 @@ Public Class OperationsListExpanderVM
If EgtGetOperationMode(selOperation.Id) Then
Map.refOperationParametersExpanderVM.ParametersIsExpanded = True
Map.refMachiningParameterExpanderVM.SetSliderScale( EgtGetPreviewMachiningToolStepCount())
Map.refMachiningParameterExpanderVM.ResetSliderValue()
End If
End Sub
@@ -829,6 +831,7 @@ Public Class OperationsListExpanderVM
MCH_MP.OFFSET,
MCH_MP.STEPEXTARC,
MCH_MP.STEPINTARC,
MCH_MP.SUBSTEP,
MCH_MP.SIDESTEP,
MCH_MP.VERTFEED,
MCH_MP.STEPSIDEANG,
@@ -1250,7 +1253,7 @@ Public Class OperationsListExpanderVM
If m_NewMachining Then EndNewMachining(GDB_ID.NULL)
' Disabilito visualizzazione utensile
If Not IsNothing(m_MachiningParameterExpander) Then
DirectCast(m_MachiningParameterExpander.DataContext, MachiningParameterExpanderVM).ViewTool = False
Map.refMachiningParameterExpanderVM.SetViewTool( False)
End If
' Deseleziono le operazioni correnti per eliminare il mark
For Each Operation In OperationList
@@ -33,6 +33,17 @@ Public Class SimulationExpanderVM
End Set
End Property
Private m_bOnlySimulation As Boolean = False
Public Property bOnlySimulation As Boolean
Get
Return m_bOnlySimulation
End Get
Set(value As Boolean)
m_bOnlySimulation = value
NotifyPropertyChanged("bOnlySimulation")
End Set
End Property
Public Overrides Property SliderValue As Double
Get
Return m_SliderValue
@@ -151,6 +162,14 @@ Public Class SimulationExpanderVM
' disattivo MTable e SpecialPanel se vado in simulazione
Map.refDoorPanelVM.MTableIsEnabled(False)
Map.refSpecialPanelVM.SpecialPanelIsEnabled(False)
If m_bOnlySimulation Then
Map.refTopCommandBarVM.DrawIsEnabled = False
Map.refOperationsListExpanderVM.OpersListViewIsEnabled = False
Map.refOperationParametersExpanderVM.OperParamsViewIsEnabled = False
Map.refEstimationsExpanderVM.Estimation_IsEnabled =False
Map.refMachGroupPanelVM.SetMachGroupState(False)
Map.refEstimationsExpanderVM.NotifyPropertyChanged("Estimation_IsEnabled")
End If
Return True
End Function
@@ -244,7 +263,7 @@ Public Class SimulationExpanderVM
Map.refTopCommandBarVM.DrawIsEnabled = False
Map.refOperationsListExpanderVM.OpersListViewIsEnabled = False
Map.refOperationParametersExpanderVM.OperParamsViewIsEnabled = False
Map.refMachGroupPanelVM.SetMachGroupState(False) ' Map.refMachGroupPanelVM.MachGroupPanelIsEnabled = False
Map.refMachGroupPanelVM.SetMachGroupState(False)
Map.refEstimationsExpanderVM.NotifyPropertyChanged("Estimation_IsEnabled")
m_bStopOnNextCollision = True
If Not EgtSimStart(False) Then
@@ -337,10 +356,15 @@ Public Class SimulationExpanderVM
End While
SetSimExecuting(False)
IniFile.m_bSimulExecuting = False
Map.refTopCommandBarVM.DrawIsEnabled = True
Map.refOperationsListExpanderVM.OpersListViewIsEnabled = True
Map.refOperationParametersExpanderVM.OperParamsViewIsEnabled = True
Map.refMachGroupPanelVM.SetMachGroupState(True) ' Map.refMachGroupPanelVM.MachGroupPanelIsEnabled = True
If m_bOnlySimulation Then
' Impedisco salvataggio eventuale modifica stato virtual milling
EgtResetModified()
Else
Map.refTopCommandBarVM.DrawIsEnabled = True
Map.refOperationsListExpanderVM.OpersListViewIsEnabled = True
Map.refOperationParametersExpanderVM.OperParamsViewIsEnabled = True
Map.refMachGroupPanelVM.SetMachGroupState(True)
End If
Map.refEstimationsExpanderVM.NotifyPropertyChanged("Estimation_IsEnabled")
If IniFile.m_bSimulEndExitApp Then
refMainWindowVM.CloseApplication( Nothing)
+4 -5
View File
@@ -1,10 +1,9 @@
<UserControl x:Class="MachiningOptionPanelV"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" Width="250"
xmlns:EgtFloating="clr-namespace:EgtWPFLib5.EgtFloating;assembly=EgtWPFLib5"
xmlns:interactivity="clr-namespace:System.Windows.Interactivity;assembly=System.Windows.Interactivity">
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" Width="250"
xmlns:EgtFloating="clr-namespace:EgtWPFLib5.EgtFloating;assembly=EgtWPFLib5">
<StackPanel Name="ciao" Background="Transparent" MaxHeight="{Binding MaxHeight,RelativeSource={RelativeSource AncestorType={x:Type EgtFloating:EgtFloatingPanel}}}">
<StackPanel Name="ciao" Background="Transparent" Margin="0,0,3.5001,0" MaxHeight="{Binding MaxHeight,RelativeSource={RelativeSource AncestorType={x:Type EgtFloating:EgtFloatingPanel}}}">
<!--ContentPresenter that contains the OperationsListExpander-->
<ContentPresenter Content="{Binding OperationsListExpander,Mode=OneWay}"/>
<!--ContentPresenter that contains the OperationParametersExpander-->
+9 -3
View File
@@ -53,7 +53,9 @@ Friend Module OptionModule
Friend m_SelGeomGenMachining As SceneSelModeOpt
Friend m_SelGeomChiseling As SceneSelModeOpt
Friend m_SelGeomSurfFinishing As SceneSelModeOpt
Friend m_SelGeomSurfRoughing As SceneSelModeOpt
Friend m_SelGeomWaterJetting As SceneSelModeOpt
Friend m_SelGeomFiveAxMilling As SceneSelModeOpt
' Flag per aggiungere una nuova lavorazione alla fine della fase o subito dopo la lavorazione selezionata
Friend m_bNewMachiningIsLastOne As Boolean
' Variabile che indica se usare lo script per calcolare automaticamente la disposizione quando si passa in lavorazione
@@ -78,7 +80,7 @@ Friend Module OptionModule
End While
If nIndex = 1 Then
EgtOutLog("Error missing languages section in Config.ini")
MessageBox.Show( "Error : missing languages informations", "EgtCAM5", MessageBoxButton.OK, MessageBoxImage.Error)
MessageBox.Show("Error : missing languages informations", "EgtCAM5", MessageBoxButton.OK, MessageBoxImage.Error)
End
End If
' Inizializzo la lingua corrente
@@ -102,9 +104,9 @@ Friend Module OptionModule
GetPrivateProfileColor(S_GRID, K_MINLNCOLOR, GridColor)
m_GridColor = GridColor
' Inizializzo flag linee ingrossate
m_bThickLine = ( GetPrivateProfileInt(S_SCENE, K_LINEWIDTH, 1) <> 1)
m_bThickLine = (GetPrivateProfileInt(S_SCENE, K_LINEWIDTH, 1) <> 1)
' Inizializzo flag visualizzazione smussata delle superfici
m_bSmoothTriMesh = ( GetPrivateProfileInt(S_SCENE, K_SHOWTRIAADV, 1) <> 0)
m_bSmoothTriMesh = (GetPrivateProfileInt(S_SCENE, K_SHOWTRIAADV, 1) <> 0)
' Inizio colore di default in disegno
Dim DefColor As New Color3d(0, 0, 0)
GetPrivateProfileColor(S_GEOMDB, K_DEFAULTCOLOR, DefColor)
@@ -141,6 +143,10 @@ Friend Module OptionModule
m_SelGeomChiseling = If(Temp < 0 Or Temp > 3, SceneSelModeOpt.PARTCURVESANDSURFACES, DirectCast(Temp, SceneSelModeOpt))
Temp = GetPrivateProfileInt(S_MACH, K_SELGEOMSURFFINISHING, -1)
m_SelGeomSurfFinishing = If(Temp < 0 Or Temp > 3, SceneSelModeOpt.PARTCURVESANDSURFACES, DirectCast(Temp, SceneSelModeOpt))
Temp = GetPrivateProfileInt(S_MACH, K_SELGEOMSURFROUGHING, -1)
m_SelGeomSurfRoughing = If(Temp < 0 Or Temp > 3, SceneSelModeOpt.PARTCURVESANDSURFACES, DirectCast(Temp, SceneSelModeOpt))
Temp = GetPrivateProfileInt(S_MACH, K_SELGEOMFIVEAXMILLING, -1)
m_SelGeomFiveAxMilling = If(Temp < 0 Or Temp > 3, SceneSelModeOpt.PARTCURVESANDSURFACES, DirectCast(Temp, SceneSelModeOpt))
m_SelGeomWaterJetting = SceneSelModeOpt.PARTCURVES
' Inizializzo variabile che indica posizione nuova operazione di lavorazione
m_bNewMachiningIsLastOne = (GetPrivateProfileInt(S_OPTIONS, K_NEWMACHININGISLASTONE, 0) <> 0)
+149 -107
View File
@@ -1,21 +1,21 @@
<EgtWPFLib5:EgtCustomWindow x:Class="OptionWindowV"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:local="clr-namespace:EgtCAM5"
xmlns:EgtWPFLib5="clr-namespace:EgtWPFLib5;assembly=EgtWPFLib5"
Title="{Binding Title}" Icon="/Resources/EgtCAM5.ico"
TitleBarBrush="{StaticResource EgaltechBlue1}"
BorderBrush="{StaticResource EgaltechBlue1}"
WindowStyle="None" ResizeMode="NoResize" TitleBarHeight="30" IsResizable="False"
IsMinimizable="False" WindowStartupLocation="CenterScreen" ShowInTaskbar="False"
MinWidth="400" MinHeight="382"
Width="400" Height="412"
CloseCommand="{Binding CloseOptionsCommand,Mode=OneWay,UpdateSourceTrigger=PropertyChanged}">
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:local="clr-namespace:EgtCAM5"
xmlns:EgtWPFLib5="clr-namespace:EgtWPFLib5;assembly=EgtWPFLib5"
Title="{Binding Title}" Icon="/Resources/EgtCAM5.ico"
TitleBarBrush="{StaticResource EgaltechBlue1}"
BorderBrush="{StaticResource EgaltechBlue1}"
WindowStyle="None" ResizeMode="NoResize" TitleBarHeight="30" IsResizable="False"
IsMinimizable="False" WindowStartupLocation="CenterScreen" ShowInTaskbar="False"
MinWidth="400" MinHeight="382"
Width="400" Height="520"
CloseCommand="{Binding CloseOptionsCommand,Mode=OneWay,UpdateSourceTrigger=PropertyChanged}">
<EgtWPFLib5:EgtCustomWindow.Resources>
<local:GeomTypeConverter x:Key="GeomTypeConverter"/>
</EgtWPFLib5:EgtCustomWindow.Resources>
<TabControl Margin="5,5,5,5">
<TabItem Header="{Binding GenericMsg}">
<StackPanel Margin="5,5,5,0">
@@ -25,8 +25,9 @@
<ComboBox ItemsSource="{Binding LanguageList, Mode=OneWay}" Height="25"
DisplayMemberPath="Name" SelectedItem="{Binding SelectedLanguage}"
Margin="0,0,0,5"/>
<TextBlock Text="{Binding LanguageAdvertMsg}" TextWrapping="Wrap"
TextAlignment="Center"/>
<TextBlock Text="{Binding LanguageAdvertMsg}"
TextWrapping="Wrap"
TextAlignment="Center"/>
</UniformGrid>
</GroupBox>
<UniformGrid Columns="2"
@@ -69,11 +70,11 @@
Grid.Column="1" Grid.Row="1" Margin="22,5,0,5" VerticalAlignment="Center"/>
</Grid>
<UniformGrid Columns="2"
Margin="0,0,0,5">
<TextBlock Text="{Binding FontMsg}" VerticalAlignment="Center"/>
<ComboBox ItemsSource="{Binding FontList, Mode=OneWay}"
SelectedItem="{Binding SelectedTextFont}" Height="25"
Margin="10,5,0,0"/>
Margin="0,0,0,5">
<TextBlock Text="{Binding FontMsg}" VerticalAlignment="Center"/>
<ComboBox ItemsSource="{Binding FontList, Mode=OneWay}"
SelectedItem="{Binding SelectedTextFont}" Height="25"
Margin="10,5,0,0"/>
</UniformGrid>
<Grid Margin="5,5,5,5">
<Button Content="{Binding UpdateLicenceMsg}" Command="{Binding UpdateLicence_Command}" Height="26" Margin="100,1"/>
@@ -96,99 +97,97 @@
VerticalContentAlignment="Center"
Margin="10,0,0,0"/>
</UniformGrid>
<GroupBox Grid.Column="1" Grid.RowSpan="2"
<GroupBox Grid.Column="1" Grid.RowSpan="2"
Header="{Binding DimensionMsg}"
Margin="0,0,0,5">
<UniformGrid Grid.ColumnSpan="2" Columns="2">
<TextBlock Text="{Binding ExtLineLenMsg}" VerticalAlignment="Center"/>
<TextBox Text="{Binding ExtLineLen}" Height="25"
VerticalContentAlignment="Center"
Margin="10,5,0,0"/>
<TextBlock Text="{Binding ArrowLenMsg}" VerticalAlignment="Center"/>
<TextBox Text="{Binding ArrowLen}" Height="25"
VerticalContentAlignment="Center"
Margin="10,5,0,0"/>
<TextBlock Text="{Binding TextDistMsg}" VerticalAlignment="Center"/>
<TextBox Text="{Binding TextDist}" Height="25"
VerticalContentAlignment="Center"
Margin="10,5,0,0"/>
<TextBlock Text="{Binding LenIsMMMsg}" VerticalAlignment="Center"/>
<ComboBox ItemsSource="{Binding UnitMeasureList, Mode=OneWay}"
SelectedItem="{Binding SelectedUnitMeasure}" Height="25"
Margin="10,5,0,0"/>
<TextBlock Text="{Binding DecDigitMsg}" VerticalAlignment="Center"/>
<TextBox Text="{Binding DecDigit}" Height="25"
VerticalContentAlignment="Center"
Margin="10,5,0,0"/>
<TextBlock Text="{Binding FontMsg}" VerticalAlignment="Center"/>
<ComboBox ItemsSource="{Binding FontList, Mode=OneWay}"
SelectedItem="{Binding SelectedFont}" Height="25"
Margin="10,5,0,0"/>
<TextBlock Text="{Binding TextHeightMsg}" VerticalAlignment="Center"/>
<TextBox Text="{Binding TextHeight}" Height="25"
VerticalContentAlignment="Center"
Margin="10,5,0,0"/>
</UniformGrid>
</GroupBox>
</StackPanel>
<UniformGrid Grid.ColumnSpan="2" Columns="2">
<TextBlock Text="{Binding ExtLineLenMsg}" VerticalAlignment="Center"/>
<TextBox Text="{Binding ExtLineLen}" Height="25"
VerticalContentAlignment="Center"
Margin="10,5,0,0"/>
<TextBlock Text="{Binding ArrowLenMsg}" VerticalAlignment="Center"/>
<TextBox Text="{Binding ArrowLen}" Height="25"
VerticalContentAlignment="Center"
Margin="10,5,0,0"/>
<TextBlock Text="{Binding TextDistMsg}" VerticalAlignment="Center"/>
<TextBox Text="{Binding TextDist}" Height="25"
VerticalContentAlignment="Center"
Margin="10,5,0,0"/>
<TextBlock Text="{Binding LenIsMMMsg}" VerticalAlignment="Center"/>
<ComboBox ItemsSource="{Binding UnitMeasureList, Mode=OneWay}"
SelectedItem="{Binding SelectedUnitMeasure}" Height="25"
Margin="10,5,0,0"/>
<TextBlock Text="{Binding DecDigitMsg}" VerticalAlignment="Center"/>
<TextBox Text="{Binding DecDigit}" Height="25"
VerticalContentAlignment="Center"
Margin="10,5,0,0"/>
<TextBlock Text="{Binding FontMsg}" VerticalAlignment="Center"/>
<ComboBox ItemsSource="{Binding FontList, Mode=OneWay}"
SelectedItem="{Binding SelectedFont}" Height="25"
Margin="10,5,0,0"/>
<TextBlock Text="{Binding TextHeightMsg}" VerticalAlignment="Center"/>
<TextBox Text="{Binding TextHeight}" Height="25"
VerticalContentAlignment="Center"
Margin="10,5,0,0"/>
</UniformGrid>
</GroupBox>
</StackPanel>
</TabItem>
<TabItem Header="{Binding ImportMsg}">
<StackPanel Margin="5,5,5,0">
<Grid Margin="0,5,0,0">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="1*"/>
<ColumnDefinition Width="0.8*"/>
<ColumnDefinition Width="1*"/>
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="1*"/>
<RowDefinition Height="1*"/>
<RowDefinition Height="1*"/>
<RowDefinition Height="1*"/>
</Grid.RowDefinitions>
<TextBlock Grid.Row="0" Grid.Column="1"
VerticalAlignment="Center" HorizontalAlignment="Center"
Text="{Binding UnitScaleMsg}" />
<TextBlock Grid.Row="0" Grid.Column="2"
VerticalAlignment="Center" HorizontalAlignment="Center"
Text="{Binding FactorScaleMsg}"/>
<TextBlock Grid.Row="1" Grid.Column="0"
Text="{Binding DxfScaleFactorMsg}" VerticalAlignment="Center"/>
<ComboBox Grid.Row="1" Grid.Column="1"
<Grid Margin="0,5,0,0">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="1*"/>
<ColumnDefinition Width="0.8*"/>
<ColumnDefinition Width="1*"/>
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="1*"/>
<RowDefinition Height="1*"/>
<RowDefinition Height="1*"/>
<RowDefinition Height="1*"/>
</Grid.RowDefinitions>
<TextBlock Grid.Row="0" Grid.Column="1"
VerticalAlignment="Center" HorizontalAlignment="Center"
Text="{Binding UnitScaleMsg}" />
<TextBlock Grid.Row="0" Grid.Column="2"
VerticalAlignment="Center" HorizontalAlignment="Center"
Text="{Binding FactorScaleMsg}"/>
<TextBlock Grid.Row="1" Grid.Column="0"
Text="{Binding DxfScaleFactorMsg}" VerticalAlignment="Center"/>
<ComboBox Grid.Row="1" Grid.Column="1"
ItemsSource="{Binding ScaleDXFList, Mode=OneWay}"
SelectedItem="{Binding SelectedDXFScale, UpdateSourceTrigger=PropertyChanged}" Height="25"
Margin="10,0,0,5"/>
<TextBox Grid.Row="1" Grid.Column="2"
<TextBox Grid.Row="1" Grid.Column="2"
Text="{Binding DxfScaleFactor}" Height="25"
IsEnabled="{Binding DXFScaleEnable, UpdateSourceTrigger=LostFocus}"
VerticalContentAlignment="Center"
Margin="10,0,0,5"/>
<TextBlock Grid.Row="2" Grid.Column="0"
Text="{Binding StlScaleFactorMsg}" VerticalAlignment="Center"/>
<ComboBox Grid.Row="2" Grid.Column="1"
ItemsSource="{Binding ScaleSTLList, Mode=OneWay}"
<TextBlock Grid.Row="2" Grid.Column="0"
Text="{Binding StlScaleFactorMsg}" VerticalAlignment="Center"/>
<ComboBox Grid.Row="2" Grid.Column="1"
ItemsSource="{Binding ScaleSTLList, Mode=OneWay}"
SelectedItem="{Binding SelectedSTLScale, UpdateSourceTrigger=PropertyChanged}" Height="25"
Margin="10,0,0,5"/>
<TextBox Grid.Row="2" Grid.Column="2"
<TextBox Grid.Row="2" Grid.Column="2"
Text="{Binding StlScaleFactor}" Height="25"
IsEnabled="{Binding STLScaleEnable, UpdateSourceTrigger=LostFocus}"
VerticalContentAlignment="Center"
Margin="10,0,0,5"/>
<TextBlock Grid.Row="3" Grid.Column="0"
Text="{Binding ImageScaleFactorMsg}" VerticalAlignment="Center"/>
<ComboBox Grid.Row="3" Grid.Column="1"
ItemsSource="{Binding ScaleImageList, Mode=OneWay}"
<TextBlock Grid.Row="3" Grid.Column="0"
Text="{Binding ImageScaleFactorMsg}" VerticalAlignment="Center"/>
<ComboBox Grid.Row="3" Grid.Column="1"
ItemsSource="{Binding ScaleImageList, Mode=OneWay}"
SelectedItem="{Binding SelectedImageScale, UpdateSourceTrigger=PropertyChanged}" Height="25"
Margin="10,0,0,5"/>
<TextBox Grid.Row="3" Grid.Column="2"
<TextBox Grid.Row="3" Grid.Column="2"
Text="{Binding ImageScaleFactor}" Height="25"
IsEnabled="{Binding ImageScaleEnable, UpdateSourceTrigger=LostFocus}"
VerticalContentAlignment="Center"
Margin="10,0,0,5"/>
</Grid>
</StackPanel>
VerticalContentAlignment="Center"
Margin="10,0,0,5"/>
</Grid>
</StackPanel>
</TabItem>
<TabItem Header="{Binding ExportMsg}">
<StackPanel>
@@ -196,15 +195,15 @@
Header="{Binding ImageMsg}"
Margin="5,5,5,0">
<UniformGrid Grid.ColumnSpan="2" Columns="2">
<TextBlock Text="{Binding ImageWidthMsg}" VerticalAlignment="Center"/>
<TextBox Text="{Binding ImageWidth}" Height="25"
VerticalContentAlignment="Center"
Margin="10,0,0,5"/>
<TextBlock Text="{Binding ImageHeightMsg}" VerticalAlignment="Center"/>
<TextBox Text="{Binding ImageHeight}" Height="25"
VerticalContentAlignment="Center"
Margin="10,0,0,5"/>
</UniformGrid>
<TextBlock Text="{Binding ImageWidthMsg}" VerticalAlignment="Center"/>
<TextBox Text="{Binding ImageWidth}" Height="25"
VerticalContentAlignment="Center"
Margin="10,0,0,5"/>
<TextBlock Text="{Binding ImageHeightMsg}" VerticalAlignment="Center"/>
<TextBox Text="{Binding ImageHeight}" Height="25"
VerticalContentAlignment="Center"
Margin="10,0,0,5"/>
</UniformGrid>
</GroupBox>
</StackPanel>
</TabItem>
@@ -260,6 +259,15 @@
</DataTemplate>
</ComboBox.ItemTemplate>
</ComboBox>
<TextBlock Text="{Binding GeomTypeGenMsg}" VerticalAlignment="Center"/>
<ComboBox ItemsSource="{Binding GeomTypeList, Mode=OneWay}"
SelectedItem="{Binding SelectedGenGeomType}" Height="25">
<ComboBox.ItemTemplate>
<DataTemplate>
<TextBlock Text="{Binding Converter={StaticResource GeomTypeConverter}}"/>
</DataTemplate>
</ComboBox.ItemTemplate>
</ComboBox>
<TextBlock Text="{Binding GeomTypeChiselingMsg}" VerticalAlignment="Center"/>
<ComboBox ItemsSource="{Binding GeomTypeList, Mode=OneWay}"
SelectedItem="{Binding SelectedChiselingGeomType}" Height="25">
@@ -269,9 +277,45 @@
</DataTemplate>
</ComboBox.ItemTemplate>
</ComboBox>
<TextBlock Text="{Binding GeomTypeSurRoughMsg}" VerticalAlignment="Center"/>
<ComboBox ItemsSource="{Binding GeomTypeList, Mode=OneWay}"
SelectedItem="{Binding SelectedSurfRoughGeomType}" Height="25">
<ComboBox.ItemTemplate>
<DataTemplate>
<TextBlock Text="{Binding Converter={StaticResource GeomTypeConverter}}"/>
</DataTemplate>
</ComboBox.ItemTemplate>
</ComboBox>
<TextBlock Text="{Binding GeomTypeSurFinishMsg}" VerticalAlignment="Center"/>
<ComboBox ItemsSource="{Binding GeomTypeList, Mode=OneWay}"
SelectedItem="{Binding SelectedSurfFinishGeomType}" Height="25">
<ComboBox.ItemTemplate>
<DataTemplate>
<TextBlock Text="{Binding Converter={StaticResource GeomTypeConverter}}"/>
</DataTemplate>
</ComboBox.ItemTemplate>
</ComboBox>
<!--<TextBlock Text="{Binding GeomTypeWaterJetMsg}" VerticalAlignment="Center"/>
<ComboBox ItemsSource="{Binding GeomTypeList, Mode=OneWay}"
SelectedItem="{Binding SelectedWaterJetGeomType}" Height="25">
<ComboBox.ItemTemplate>
<DataTemplate>
<TextBlock Text="{Binding Converter={StaticResource GeomTypeConverter}}"/>
</DataTemplate>
</ComboBox.ItemTemplate>
</ComboBox>-->
<TextBlock Text="{Binding GeomTypeFiveAxMsg}" VerticalAlignment="Center"/>
<ComboBox ItemsSource="{Binding GeomTypeList, Mode=OneWay}"
SelectedItem="{Binding SelectedFiveAxGeomType}" Height="25">
<ComboBox.ItemTemplate>
<DataTemplate>
<TextBlock Text="{Binding Converter={StaticResource GeomTypeConverter}}"/>
</DataTemplate>
</ComboBox.ItemTemplate>
</ComboBox>
</UniformGrid>
</GroupBox>
<Grid Margin="5,5,5,0">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="2*"/>
@@ -290,13 +334,11 @@
<CheckBox IsChecked="{Binding UseDispositionScript}"
Grid.Column="1" Grid.Row="1" Margin="4,0,0,0" VerticalAlignment="Center"/>
</Grid>
<Grid Margin="5,5,5,0">
<Button Content="{Binding AddMachineMsg}" Command="{Binding AddMachine_Command}" Height="26" Margin="100,1"/>
</Grid>
<Grid Margin="5,5,5,0">
<Button Content="{Binding ExportMachineMsg}" Command="{Binding ExportMachine_Command}" Height="26" Margin="100,1"/>
<Button Content="{Binding ExportMachineMsg}" Command="{Binding ExportMachine_Command}" Height="26" Margin="100,1"/>
</Grid>
</StackPanel>
</TabItem>
@@ -343,9 +385,9 @@
<CheckBox IsChecked="{Binding GunstockOn}" IsEnabled="{Binding GunstockEnabled}"
Grid.Row="4" Grid.Column="1" Margin="4,5,0,5" VerticalAlignment="Center"/>
</Grid>
</StackPanel>
</StackPanel>
</TabItem>
</TabControl>
</EgtWPFLib5:EgtCustomWindow>
+85
View File
@@ -137,6 +137,61 @@ Public Class OptionWindowVM
End Set
End Property
Public Property SelectedGenGeomType As SceneSelModeOpt
Get
Return OptionModule.m_SelGeomGenMachining
End Get
Set(value As SceneSelModeOpt)
If WritePrivateProfileString(S_MACH, K_SELGEOMGENMACHINING, CInt(value).ToString()) Then
OptionModule.m_SelGeomGenMachining = value
End If
End Set
End Property
Public Property SelectedSurfRoughGeomType As SceneSelModeOpt
Get
Return OptionModule.m_SelGeomSurfRoughing
End Get
Set(value As SceneSelModeOpt)
If WritePrivateProfileString(S_MACH, K_SELGEOMSURFROUGHING, CInt(value).ToString()) Then
OptionModule.m_SelGeomSurfRoughing = value
End If
End Set
End Property
Public Property SelectedSurfFinishGeomType As SceneSelModeOpt
Get
Return OptionModule.m_SelGeomSurfFinishing
End Get
Set(value As SceneSelModeOpt)
If WritePrivateProfileString(S_MACH, K_SELGEOMSURFFINISHING, CInt(value).ToString()) Then
OptionModule.m_SelGeomSurfFinishing = value
End If
End Set
End Property
'Public Property SelectedWaterJetGeomType As SceneSelModeOpt
' Get
' Return OptionModule.m_SelGeomWaterJetting
' End Get
' Set(value As SceneSelModeOpt)
' If WritePrivateProfileString(S_MACH, K_SELGEOMWATERJETTING, CInt(value).ToString()) Then
' OptionModule.m_SelGeomWaterJetting = value
' End If
' End Set
'End Property
Public Property SelectedFiveAxGeomType As SceneSelModeOpt
Get
Return OptionModule.m_SelGeomFiveAxMilling
End Get
Set(value As SceneSelModeOpt)
If WritePrivateProfileString(S_MACH, K_SELGEOMFIVEAXMILLING, CInt(value).ToString()) Then
OptionModule.m_SelGeomFiveAxMilling = value
End If
End Set
End Property
Public Property GeometryTolerance As String
Get
Return LenToString(OptionModule.m_dGeometryTolerance, 5)
@@ -881,6 +936,36 @@ Public Class OptionWindowVM
End Get
End Property
Public ReadOnly Property GeomTypeGenMsg As String
Get
Return EgtMsg(6208)
End Get
End Property
Public ReadOnly Property GeomTypeSurFinishMsg As String
Get
Return EgtMsg(6211)
End Get
End Property
Public ReadOnly Property GeomTypeWaterJetMsg As String
Get
Return EgtMsg(6212)
End Get
End Property
Public ReadOnly Property GeomTypeFiveAxMsg As String
Get
Return EgtMsg(31213)
End Get
End Property
Public ReadOnly Property GeomTypeSurRoughMsg As String
Get
Return EgtMsg(31212)
End Get
End Property
#End Region
#Region "COMMANDS"
+4 -4
View File
@@ -483,7 +483,7 @@ Public Class ProjectVM
End If
' Esecuzione
bOk = ExecBeam(sFile, sMachine, nFlag, True)
' altrimenti pareti
' altrimenti pareti
Else
' Verifica abilitazione elaborazione pareti
If Not VerifyWall(sFile, sMachine, nFlag) Then
@@ -497,12 +497,12 @@ Public Class ProjectVM
If nFlag = 0 Or nFlag = 3 Or nFlag = 4 Then
Map.refMachinePanelVM.SaveCurrentMachine()
Map.refMainWindowVM.CloseApplicationCmd()
' Altrimenti se richiesta visualizzazione DB utensili
' Altrimenti se richiesta visualizzazione DB utensili
ElseIf nFlag = 11 And bOk Then
MyMachinePanelVM.ToolDb()
Map.refMachinePanelVM.SaveCurrentMachine()
Map.refMainWindowVM.CloseApplicationCmd()
' Altrimenti se richiesta visualizzazione DB lavorazioni
' Altrimenti se richiesta visualizzazione DB lavorazioni
ElseIf nFlag = 12 And bOk Then
MyMachinePanelVM.MachDb()
If bBeam Then
@@ -512,7 +512,7 @@ Public Class ProjectVM
End If
Map.refMachinePanelVM.SaveCurrentMachine()
Map.refMainWindowVM.CloseApplicationCmd()
' Altrimenti se errore
' Altrimenti se errore
ElseIf Not bOk Then
EgtZoom(ZM.ALL)
End If
+6
View File
@@ -57,7 +57,13 @@ Module Beam
Map.refManageLayerExpanderVM.SelectIdInObjTreeNoMark(EgtGetCurrLayer())
If EgtGetCurrMachGroup() <> GDB_ID.NULL Then
Map.refTopCommandBarVM.SetMachiningMode()
' Se simulazione
If bOk And nFlag = 2 Then
' Se da TS3 e non pezzo da Vista, impedisco di fare altro
If bBtl AndAlso sFile.IndexOf( "Part_", StringComparison.InvariantCulture) = -1 Then
Map.refSimulationExpanderVM.bOnlySimulation = True
End If
' Vado in simulazione
Map.refSimulationExpanderVM.Simulation_IsExpanded = True
End If
End If
+6
View File
@@ -58,7 +58,13 @@ Module Wall
Map.refManageLayerExpanderVM.SelectIdInObjTreeNoMark(EgtGetCurrLayer())
If EgtGetCurrMachGroup() <> GDB_ID.NULL Then
Map.refTopCommandBarVM.SetMachiningMode()
' Se simulazione
If bOk And nFlag = 2 Then
' Se da TS3 impedisco di fare altro
If bBtl Then
Map.refSimulationExpanderVM.bOnlySimulation = True
End If
' Vado in simulazione
Map.refSimulationExpanderVM.Simulation_IsExpanded = True
End If
End If
+7 -6
View File
@@ -428,18 +428,19 @@ Module TableUtility
Dim CurrMachining As MTableMachiningGridBoxItem = SelectedTable.ActiveMachinesList(MachineIndex).MachiningList(MachiningIndex)
If CurrMachining.GroupId <> CurrGroupId And Not String.IsNullOrWhiteSpace(CurrMachining.PropertyPar) Then
Dim CurrentLine As String = " { MachId = '" & SelectedTable.ActiveMachinesList(MachineIndex).MachId & "', Group = " & (CurrMachining.GroupId * 100).ToString &
", Property = " & CurrMachining.PropertyPar & " }"
If CurrMachining.GroupId <> LastGroupId Then
CurrentLine &= " ,"
End If
", Property = " & CurrMachining.PropertyPar & " } ,"
'If CurrMachining.GroupId <> LastGroupId Then
' CurrentLine &= " ,"
'End If
NewTableFileContent.Add(CurrentLine)
CurrGroupId = CurrMachining.GroupId
ElseIf CurrMachining.GroupId <> CurrGroupId And CurrMachining.GroupId = LastGroupId Then
NewTableFileContent(NewTableFileContent.Count - 1) = NewTableFileContent(NewTableFileContent.Count - 1).Trim(","c)
'ElseIf MachineIndex = SelectedTable.ActiveMachinesList.Count - 1 AndAlso CurrMachining.GroupId <> CurrGroupId And CurrMachining.GroupId = LastGroupId Then
' NewTableFileContent(NewTableFileContent.Count - 1) = NewTableFileContent(NewTableFileContent.Count - 1).Trim(","c)
End If
Next
End If
Next
NewTableFileContent(NewTableFileContent.Count - 1) = NewTableFileContent(NewTableFileContent.Count - 1).Trim(","c)
End Sub
Private Sub ReorderMachiningIndex(SelectedTable As MTableListBoxItem)
+1 -1
View File
@@ -56,7 +56,7 @@
<Image Source="/Resources/TopCommandBar/Options.png" Height="22" />
</Button>
<Button Command="{Binding SendFeedbackCommand}" ToolTip="{Binding SendFeedbackToolTip}"
IsEnabled="{Binding SaveIsEnabled}">
IsEnabled="{Binding SendFeedbackIsEnabled}">
<Image Source="/Resources/TopCommandBar/Send.png" Height="22" Margin="3,0,3,0" />
</Button>
<UniformGrid Rows="1">
+7
View File
@@ -169,10 +169,17 @@ Public Class TopCommandBarVM
If value <> m_SaveIsEnabled Then
m_SaveIsEnabled = value
OnPropertyChanged("SaveIsEnabled")
OnPropertyChanged("SendFeedbackIsEnabled")
End If
End Set
End Property
Public ReadOnly Property SendFeedbackIsEnabled As Boolean
Get
Return m_SaveIsEnabled OrElse Not EgtGetModified()
End Get
End Property
#End Region ' Fields & Properties
#Region "Get & Set"
+105 -99
View File
@@ -459,7 +459,7 @@
<Setter Property="Height" Value="30"/>
<Setter Property="Width" Value="30"/>
</Style>
<Style x:Key="MachiningsTextBlock" TargetType="{x:Type TextBlock}" BasedOn="{StaticResource {x:Type TextBlock}}">
<Setter Property="Margin" Value="10,0,0,0"/>
</Style>
@@ -1149,41 +1149,41 @@
</Setter>
</Style>
<!-- ______________________________________________________________________________________________________________________________________________ -->
<!-- ______________________________________________________________________________________________________________________________________________ -->
<!-- GroupBox with margins -->
<!-- GroupBox with margins -->
<Style x:Key="GroupBoxStyle_Margin" TargetType="{x:Type GroupBox}">
<Setter Property="Margin" Value="3,0"/>
</Style>
<Style x:Key="GroupBoxStyle_Margin" TargetType="{x:Type GroupBox}">
<Setter Property="Margin" Value="3,0"/>
</Style>
<!-- ______________________________________________________________________________________________________________________________________________ -->
<!-- ______________________________________________________________________________________________________________________________________________ -->
<!-- GroupBox with margins and no header -->
<!-- GroupBox with margins and no header -->
<Style x:Key="GroupBoxStyle_NoHeader" TargetType="{x:Type GroupBox}">
<Setter Property="Margin" Value="3,0"/>
<Setter Property="BorderBrush" Value="#FFD5DFE5"/>
<Setter Property="BorderThickness" Value="1"/>
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type GroupBox}">
<Grid SnapsToDevicePixels="True">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="6"/>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="*"/>
<ColumnDefinition Width="6"/>
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
<RowDefinition Height="*"/>
<RowDefinition Height="6"/>
</Grid.RowDefinitions>
<Border BorderBrush="Transparent" BorderThickness="{TemplateBinding BorderThickness}" Background="{TemplateBinding Background}" Grid.ColumnSpan="4" Grid.Column="0" CornerRadius="4" Grid.Row="1" Grid.RowSpan="3"/>
<Border BorderBrush="White" BorderThickness="{TemplateBinding BorderThickness}" Grid.ColumnSpan="4" CornerRadius="4" Grid.Row="1" Grid.RowSpan="3">
<!--<Border.OpacityMask>
<Style x:Key="GroupBoxStyle_NoHeader" TargetType="{x:Type GroupBox}">
<Setter Property="Margin" Value="3,0"/>
<Setter Property="BorderBrush" Value="#FFD5DFE5"/>
<Setter Property="BorderThickness" Value="1"/>
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type GroupBox}">
<Grid SnapsToDevicePixels="True">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="6"/>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="*"/>
<ColumnDefinition Width="6"/>
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="Auto"/>
<RowDefinition Height="Auto"/>
<RowDefinition Height="*"/>
<RowDefinition Height="6"/>
</Grid.RowDefinitions>
<Border BorderBrush="Transparent" BorderThickness="{TemplateBinding BorderThickness}" Background="{TemplateBinding Background}" Grid.ColumnSpan="4" Grid.Column="0" CornerRadius="4" Grid.Row="1" Grid.RowSpan="3"/>
<Border BorderBrush="White" BorderThickness="{TemplateBinding BorderThickness}" Grid.ColumnSpan="4" CornerRadius="4" Grid.Row="1" Grid.RowSpan="3">
<!--<Border.OpacityMask>
<MultiBinding ConverterParameter="7" UpdateSourceTrigger="Default">
<MultiBinding.Converter>
<BorderGapMaskConverter/>
@@ -1193,77 +1193,83 @@
<Binding Path="ActualHeight" RelativeSource="{RelativeSource Self}"/>
</MultiBinding>
</Border.OpacityMask>-->
<Border BorderBrush="{TemplateBinding BorderBrush}" BorderThickness="{TemplateBinding BorderThickness}" CornerRadius="3">
<Border BorderBrush="White" BorderThickness="{TemplateBinding BorderThickness}" CornerRadius="2"/>
</Border>
</Border>
<Border x:Name="Header" Grid.Column="1" Padding="3,1,3,0" Grid.Row="0" Grid.RowSpan="2">
<ContentPresenter ContentTemplate="{TemplateBinding HeaderTemplate}" Content="{TemplateBinding Header}" ContentStringFormat="{TemplateBinding HeaderStringFormat}" ContentSource="Header" RecognizesAccessKey="True" SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}"/>
</Border>
<ContentPresenter Grid.ColumnSpan="2" ContentTemplate="{TemplateBinding ContentTemplate}" Content="{TemplateBinding Content}" Grid.Column="1" ContentStringFormat="{TemplateBinding ContentStringFormat}" Margin="{TemplateBinding Padding}" Grid.Row="2" SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}"/>
</Grid>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
<!-- ______________________________________________________________________________________________________________________________________________ -->
<!-- Margin for TextBlocks and TextBoxes in MachiningParameterExpander not from EgtWPFLib5 -->
<Style x:Key="MPExpander_DepthTxBlMargin" TargetType="{x:Type TextBlock}">
<Setter Property="Margin" Value="1,3,0,0"/>
</Style>
<Style x:Key="MPExpander_DepthTxBxMargin" TargetType="{x:Type EgtWPFLib5:EgtTextBox}">
<Setter Property="Margin" Value="-1,0,0,0"/>
</Style>
<Style x:Key="MPExpander_UserNotesTxBlMargin" TargetType="{x:Type TextBlock}">
<Setter Property="Margin" Value="1,0,0,0"/>
</Style>
<Style x:Key="MPExpander_UserNotesTxBxMargin" TargetType="{x:Type EgtWPFLib5:EgtTextBox}">
<Setter Property="Margin" Value="-1,0,0,0"/>
</Style>
<!-- ______________________________________________________________________________________________________________________________________________ -->
<!-- Margin for UserControls in MachiningParameterExpander from EgtWPFLib5 -->
<Style x:Key="StringParamV_Margin" TargetType="{x:Type EgtWPFLib5:StringParamV}">
<Setter Property="Margin" Value="-3"/>
</Style>
<Style x:Key="ComboParamV_Margin" TargetType="{x:Type EgtWPFLib5:ComboParamV}">
<Setter Property="Margin" Value="-3"/>
</Style>
<Style x:Key="CheckParamV_Margin" TargetType="{x:Type EgtWPFLib5:CheckParamV}">
<Setter Property="Margin" Value="-3"/>
</Style>
<!-- ______________________________________________________________________________________________________________________________________________ -->
<Style x:Key="ListBoxItemStyle" TargetType="ListBoxItem">
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="ListBoxItem">
<Border Name="_Border"
SnapsToDevicePixels="True"
BorderBrush="{StaticResource EgaltechWhite}"
BorderThickness="1">
<ContentPresenter />
</Border>
<ControlTemplate.Triggers>
<Trigger Property="IsSelected" Value="True">
<Setter TargetName="_Border" Property="Background" Value="{StaticResource Button.Pressed.Background}"/>
</Trigger>
</ControlTemplate.Triggers>
<Border BorderBrush="{TemplateBinding BorderBrush}" BorderThickness="{TemplateBinding BorderThickness}" CornerRadius="3">
<Border BorderBrush="White" BorderThickness="{TemplateBinding BorderThickness}" CornerRadius="2"/>
</Border>
</Border>
<Border x:Name="Header" Grid.Column="1" Padding="3,1,3,0" Grid.Row="0" Grid.RowSpan="2">
<ContentPresenter ContentTemplate="{TemplateBinding HeaderTemplate}" Content="{TemplateBinding Header}" ContentStringFormat="{TemplateBinding HeaderStringFormat}" ContentSource="Header" RecognizesAccessKey="True" SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}"/>
</Border>
<ContentPresenter Grid.ColumnSpan="2" ContentTemplate="{TemplateBinding ContentTemplate}" Content="{TemplateBinding Content}" Grid.Column="1" ContentStringFormat="{TemplateBinding ContentStringFormat}" Margin="{TemplateBinding Padding}" Grid.Row="2" SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}"/>
</Grid>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
<!-- ______________________________________________________________________________________________________________________________________________ -->
<!-- Margin for TextBlocks and TextBoxes in MachiningParameterExpander not from EgtWPFLib5 -->
<Style x:Key="MPExpander_DepthTxBlMargin" TargetType="{x:Type TextBlock}">
<Setter Property="Margin" Value="1,3,0,0"/>
</Style>
<Style x:Key="MPExpander_DepthTxBxMargin" TargetType="{x:Type EgtWPFLib5:EgtTextBox}">
<Setter Property="Margin" Value="-1,0,0,0"/>
</Style>
<Style x:Key="MPExpander_UserNotesTxBlMargin" TargetType="{x:Type TextBlock}">
<Setter Property="Margin" Value="1,0,0,0"/>
</Style>
<Style x:Key="MPExpander_UserNotesTxBxMargin" TargetType="{x:Type EgtWPFLib5:EgtTextBox}">
<Setter Property="Margin" Value="-1,0,0,0"/>
</Style>
<!-- ______________________________________________________________________________________________________________________________________________ -->
<!-- Margin for UserControls in MachiningParameterExpander from EgtWPFLib5 -->
<Style x:Key="StringParamV_Margin" TargetType="{x:Type EgtWPFLib5:StringParamV}">
<Setter Property="Margin" Value="-3"/>
</Style>
<Style x:Key="ComboParamV_Margin" TargetType="{x:Type EgtWPFLib5:ComboParamV}">
<Setter Property="Margin" Value="-3"/>
</Style>
<Style x:Key="CheckParamV_Margin" TargetType="{x:Type EgtWPFLib5:CheckParamV}">
<Setter Property="Margin" Value="-3"/>
</Style>
<!-- ______________________________________________________________________________________________________________________________________________ -->
<!-- Style Slider -->
<Style x:Key="SliderValue_Slider" TargetType="{x:Type Slider}">
<Setter Property="Width" Value="235"/>
<Setter Property="SmallChange" Value="1"/>
<Setter Property="TickPlacement" Value="TopLeft"/>
<Style.Triggers>
<Trigger Property="IsEnabled" Value="False">
<Setter Property="Opacity" Value="0.5"/>
</Trigger>
</Style.Triggers>
</Style>
<!-- ______________________________________________________________________________________________________________________________________________ -->
<!-- Style CheckBox -->
<Style x:Key="ViewTool_CheckBox" TargetType="{x:Type CheckBox}">
<Setter Property="Margin" Value="0,10,0,5"/>
<Setter Property="HorizontalAlignment" Value="Center"/>
<!--<Style.Triggers>
<Trigger Property="IsChecked" Value="True">
<Setter Property="Foreground" Value="#FF50E6FD"/>
</Trigger>
</Style.Triggers>-->
</Style>
</ResourceDictionary>
+6 -6
View File
@@ -44,12 +44,12 @@ Public Module MachineModel
If IniFile.IsKeyEnabledAdvancedMachining() AndAlso EgtUILib.GetPrivateProfileInt(S_MACHININGS, K_SURFFINISHING, 0, m_sCurrMachIniFilePath) <> 0 Then
ActiveMachiningsFamiliesList.Add(New MachiningsType With {.TypeId = MCH_MY.SURFFINISHING, .TypeName = EgtMsg(31211)})
End If
If IniFile.IsKeyEnabledAdvancedMachining() AndAlso EgtUILib.GetPrivateProfileInt(S_MACHININGS, K_5AXMACHINING, 0, m_sCurrMachIniFilePath) <> 0 Then
ActiveMachiningsFamiliesList.Add(New MachiningsType With {.TypeId = MCH_MY._5AXMACHINING, .TypeName = EgtMsg(31213)})
End If
If EgtUILib.GetPrivateProfileInt(S_MACHININGS, K_WATERJETTING, 0, m_sCurrMachIniFilePath) <> 0 Then
ActiveMachiningsFamiliesList.Add(New MachiningsType With {.TypeId = MCH_MY.WATERJETTING, .TypeName = EgtMsg(MSG_MACHININGSDBPAGE + 12)})
End If
If EgtUILib.GetPrivateProfileInt(S_MACHININGS, K_5AXMILLING, 0, m_sCurrMachIniFilePath) <> 0 Then
ActiveMachiningsFamiliesList.Add(New MachiningsType With {.TypeId = MCH_MY.FIVEAXISMILLING, .TypeName = EgtMsg(31213)})
End If
Return ActiveMachiningsFamiliesList.ToArray
End Function
@@ -88,12 +88,12 @@ Public Module MachineModel
If IniFile.IsKeyEnabledAdvancedMachining() AndAlso EgtUILib.GetPrivateProfileInt(S_MACHININGS, K_SURFFINISHING, 0, sMachineName) <> 0 Then
ActiveMachiningsFamiliesList.Add(New MachiningsType With {.TypeId = MCH_MY.SURFFINISHING, .TypeName = EgtMsg(31211)})
End If
If IniFile.IsKeyEnabledAdvancedMachining() AndAlso EgtUILib.GetPrivateProfileInt(S_MACHININGS, K_5AXMACHINING, 0, sMachineName) <> 0 Then
ActiveMachiningsFamiliesList.Add(New MachiningsType With {.TypeId = MCH_MY._5AXMACHINING, .TypeName = EgtMsg(31213)})
End If
If EgtUILib.GetPrivateProfileInt(S_MACHININGS, K_WATERJETTING, 0, sMachineName) <> 0 Then
ActiveMachiningsFamiliesList.Add(New MachiningsType With {.TypeId = MCH_MY.WATERJETTING, .TypeName = EgtMsg(MSG_MACHININGSDBPAGE + 12)})
End If
If EgtUILib.GetPrivateProfileInt(S_MACHININGS, K_5AXMILLING, 0, sMachineName) <> 0 Then
ActiveMachiningsFamiliesList.Add(New MachiningsType With {.TypeId = MCH_MY.FIVEAXISMILLING, .TypeName = EgtMsg(31213)})
End If
Return ActiveMachiningsFamiliesList.ToArray
End Function
+12 -1
View File
@@ -34,6 +34,7 @@ Module Map
Private m_refWallPanelVM As WallPanelVM
Private m_refBeamWallPanelVM As BeamWallPanelVM
Private m_refGunStockPanelVM As GunStockPanelVM
Private m_refMachiningParameterExpanderVM As MachiningParameterExpanderVM
#Region "Get"
@@ -187,6 +188,11 @@ Module Map
Return m_refGunStockPanelVM
End Get
End Property
Public ReadOnly Property refMachiningParameterExpanderVM As MachiningParameterExpanderVM
Get
Return m_refMachiningParameterExpanderVM
End Get
End Property
#End Region ' Get
@@ -309,6 +315,10 @@ Module Map
m_refGunStockPanelVM = GunStockPanelVM
Return Not IsNothing(m_refGunStockPanelVM)
End Function
Friend Function SetRefMachiningParameterExpanderVM(MachiningParameterExpanderVM As MachiningParameterExpanderVM) As Boolean
m_refMachiningParameterExpanderVM = MachiningParameterExpanderVM
Return Not IsNothing(m_refMachiningParameterExpanderVM)
End Function
#End Region ' Set
@@ -327,7 +337,8 @@ Module Map
Not IsNothing(m_refOperationParametersExpanderVM) AndAlso Not IsNothing(m_refMachiningTreeExpanderVM) AndAlso
Not IsNothing(LibMap.refMachGroupPanelVM) AndAlso Not IsNothing(m_refInstrumentPanelVM) AndAlso Not IsNothing(m_refManageLayerExpanderVM) AndAlso
Not IsNothing(m_refInputExpanderVM) AndAlso Not IsNothing(m_refShowPanelVM) AndAlso Not IsNothing(m_refInfoExpanderVM) AndAlso
Not IsNothing(m_refDrawPanelVM) AndAlso Not IsNothing(m_refProjectV) AndAlso Not IsNothing(m_refDoorPanelVM) AndAlso Not IsNothing(m_refSpecialPanelVM)
Not IsNothing(m_refDrawPanelVM) AndAlso Not IsNothing(m_refProjectV) AndAlso Not IsNothing(m_refDoorPanelVM) AndAlso Not IsNothing(m_refSpecialPanelVM) AndAlso
Not IsNothing(m_refMachiningParameterExpanderVM)
End Function
#End Region ' Init
+134
View File
@@ -27,6 +27,8 @@
Friend Chiseling(63) As Visibility
Friend SurfFinishing(63) As Visibility
Friend WaterJetting(63) As Visibility
Friend FiveAxMachining(63) As Visibility
Friend SurfRoughing(63) As Visibility
' Array che contiene il valore della proprietà visibility per ogni campo delle operazioni
Friend OperationDisposition(49) As Visibility
@@ -1056,6 +1058,138 @@
OperationDisposition(14) = Visibility.Collapsed
OperationDisposition(15) = Visibility.Collapsed
' Parametri FiveAxMachining
FiveAxMachining(0) = Visibility.Visible ' Invert
FiveAxMachining(1) = Visibility.Collapsed ' LeaveTab
FiveAxMachining(2) = Visibility.Collapsed ' WorkSide
FiveAxMachining(3) = Visibility.Collapsed ' HeadSide
FiveAxMachining(4) = Visibility.Collapsed ' LeadInType
FiveAxMachining(5) = Visibility.Collapsed ' ExtLinkType
FiveAxMachining(6) = Visibility.Collapsed ' LeadOutType
FiveAxMachining(7) = Visibility.Collapsed ' CurveUse
FiveAxMachining(8) = Visibility.Collapsed ' StepType
FiveAxMachining(9) = Visibility.Collapsed ' LeadLinkType
FiveAxMachining(10) = Visibility.Visible ' Speed
FiveAxMachining(11) = Visibility.Visible ' Feed
FiveAxMachining(12) = Visibility.Visible ' StartFeed
FiveAxMachining(13) = Visibility.Visible ' EndFeed
FiveAxMachining(14) = Visibility.Visible ' TipFeed
FiveAxMachining(15) = Visibility.Visible ' OffSr
FiveAxMachining(16) = Visibility.Visible ' OffSl
FiveAxMachining(17) = Visibility.Collapsed ' SideAngle
FiveAxMachining(18) = Visibility.Collapsed ' Approx
FiveAxMachining(19) = Visibility.Visible ' StartPos
FiveAxMachining(20) = Visibility.Collapsed ' StartSlowLen
FiveAxMachining(21) = Visibility.Collapsed ' EndSlowLen
FiveAxMachining(22) = Visibility.Collapsed ' ThroughAddlen
FiveAxMachining(23) = Visibility.Collapsed ' StepPar
FiveAxMachining(24) = Visibility.Collapsed ' Returnpos
FiveAxMachining(25) = Visibility.Collapsed ' TabLen
FiveAxMachining(26) = Visibility.Collapsed ' TabDist
FiveAxMachining(27) = Visibility.Collapsed ' TabHeight
FiveAxMachining(28) = Visibility.Collapsed ' TabAngle
FiveAxMachining(29) = Visibility.Collapsed ' LiTang
FiveAxMachining(30) = Visibility.Collapsed ' LiPerp
FiveAxMachining(31) = Visibility.Collapsed ' LiElev
FiveAxMachining(32) = Visibility.Collapsed ' LiCompLen
FiveAxMachining(33) = Visibility.Collapsed ' LoTang
FiveAxMachining(34) = Visibility.Collapsed ' LoPerp
FiveAxMachining(35) = Visibility.Collapsed ' LoElev
FiveAxMachining(36) = Visibility.Collapsed ' LoCompLen
FiveAxMachining(37) = Visibility.Collapsed ' StartAddLen
FiveAxMachining(38) = Visibility.Collapsed ' EndAddLen
FiveAxMachining(39) = Visibility.Collapsed ' StepExtArc
FiveAxMachining(40) = Visibility.Collapsed ' StepIntArc
FiveAxMachining(41) = Visibility.Collapsed ' SideStep
FiveAxMachining(42) = Visibility.Collapsed ' VertFeed
FiveAxMachining(43) = Visibility.Visible ' Name
FiveAxMachining(44) = Visibility.Visible ' Tool
FiveAxMachining(45) = Visibility.Visible ' DepthStr
FiveAxMachining(46) = Visibility.Visible ' UserNotes
FiveAxMachining(47) = Visibility.Collapsed ' OverLapStr
FiveAxMachining(48) = Visibility.Collapsed ' OffsetStr
FiveAxMachining(49) = Visibility.Visible ' SubType
FiveAxMachining(50) = Visibility.Visible ' SelectedSolChoiceType
FiveAxMachining(51) = Visibility.Visible ' AxRotRef
FiveAxMachining(52) = Visibility.Visible ' BlockedAxesRef
FiveAxMachining(53) = Visibility.Collapsed ' FaceUseType
FiveAxMachining(54) = Visibility.Visible ' InvertToolDir
FiveAxMachining(55) = Visibility.Collapsed ' Expander LeadIn
FiveAxMachining(56) = Visibility.Collapsed ' Expander LeadOut
FiveAxMachining(57) = Visibility.Collapsed ' ApproxGen
FiveAxMachining(58) = Visibility.Collapsed ' OscEnable
FiveAxMachining(59) = Visibility.Collapsed ' OscHeight
FiveAxMachining(60) = Visibility.Collapsed ' OscRampLen
FiveAxMachining(61) = Visibility.Collapsed ' OscFlatLen
FiveAxMachining(62) = Visibility.Collapsed ' TabMax
FiveAxMachining(63) = Visibility.Collapsed ' TabMin
' Parametri SurfRoughing
SurfRoughing(0) = Visibility.Visible ' Invert
SurfRoughing(1) = Visibility.Collapsed ' LeaveTab
SurfRoughing(2) = Visibility.Collapsed ' WorkSide
SurfRoughing(3) = Visibility.Collapsed ' HeadSide
SurfRoughing(4) = Visibility.Visible ' LeadInType
SurfRoughing(5) = Visibility.Collapsed ' ExtLinkType
SurfRoughing(6) = Visibility.Visible ' LeadOutType
SurfRoughing(7) = Visibility.Collapsed ' CurveUse
SurfRoughing(8) = Visibility.Collapsed ' StepType
SurfRoughing(9) = Visibility.Visible ' LeadLinkType
SurfRoughing(10) = Visibility.Visible ' Speed
SurfRoughing(11) = Visibility.Visible ' Feed
SurfRoughing(12) = Visibility.Visible ' StartFeed
SurfRoughing(13) = Visibility.Visible ' EndFeed
SurfRoughing(14) = Visibility.Visible ' TipFeed
SurfRoughing(15) = Visibility.Visible ' OffSr
SurfRoughing(16) = Visibility.Collapsed ' OffSl
SurfRoughing(17) = Visibility.Visible ' SideAngle
SurfRoughing(18) = Visibility.Visible ' Approx
SurfRoughing(19) = Visibility.Visible ' StartPos
SurfRoughing(20) = Visibility.Collapsed ' StartSlowLen
SurfRoughing(21) = Visibility.Collapsed ' EndSlowLen
SurfRoughing(22) = Visibility.Collapsed ' ThroughAddlen
SurfRoughing(23) = Visibility.Collapsed ' StepPar
SurfRoughing(24) = Visibility.Collapsed ' Returnpos
SurfRoughing(25) = Visibility.Collapsed ' TabLen
SurfRoughing(26) = Visibility.Collapsed ' TabDist
SurfRoughing(27) = Visibility.Collapsed ' TabHeight
SurfRoughing(28) = Visibility.Collapsed ' TabAngle
SurfRoughing(29) = Visibility.Visible ' LiTang
SurfRoughing(30) = Visibility.Visible ' LiPerp
SurfRoughing(31) = Visibility.Collapsed ' LiElev
SurfRoughing(32) = Visibility.Collapsed ' LiCompLen
SurfRoughing(33) = Visibility.Visible ' LoTang
SurfRoughing(34) = Visibility.Visible ' LoPerp
SurfRoughing(35) = Visibility.Collapsed ' LoElev
SurfRoughing(36) = Visibility.Collapsed ' LoCompLen
SurfRoughing(37) = Visibility.Collapsed ' StartAddLen
SurfRoughing(38) = Visibility.Collapsed ' EndAddLen
SurfRoughing(39) = Visibility.Collapsed ' StepExtArc
SurfRoughing(40) = Visibility.Collapsed ' StepIntArc
SurfRoughing(41) = Visibility.Visible ' SideStep
SurfRoughing(42) = Visibility.Collapsed ' VertFeed
SurfRoughing(43) = Visibility.Visible ' Name
SurfRoughing(44) = Visibility.Visible ' Tool
SurfRoughing(45) = Visibility.Visible ' DepthStr
SurfRoughing(46) = Visibility.Visible ' UserNotes
SurfRoughing(47) = Visibility.Visible ' OverLapStr
SurfRoughing(48) = Visibility.Collapsed ' OffsetStr
SurfRoughing(49) = Visibility.Visible ' SubType
SurfRoughing(50) = Visibility.Visible ' SelectedSolChoiceType
SurfRoughing(51) = Visibility.Visible ' AxRotRef
SurfRoughing(52) = Visibility.Visible ' BlockedAxesRef
SurfRoughing(53) = Visibility.Collapsed ' FaceUseType
SurfRoughing(54) = Visibility.Collapsed ' InvertToolDir
SurfRoughing(55) = Visibility.Visible ' Expander LeadIn
SurfRoughing(56) = Visibility.Visible ' Expander LeadOut
SurfRoughing(57) = Visibility.Visible ' ApproxGen
SurfRoughing(58) = Visibility.Collapsed ' OscEnable
SurfRoughing(59) = Visibility.Collapsed ' OscHeight
SurfRoughing(60) = Visibility.Collapsed ' OscRampLen
SurfRoughing(61) = Visibility.Collapsed ' OscFlatLen
SurfRoughing(62) = Visibility.Collapsed ' TabMax
SurfRoughing(63) = Visibility.Collapsed ' TabMin
End Sub
End Module