Compare commits

...

63 Commits

Author SHA1 Message Date
Demetrio Cassarino efd2d5d8c9 -Gestione completa cambio tavola 2025-07-22 14:29:19 +02:00
Nicola Pievani da178396f5 Inizio gestione cambio tavola 2025-07-22 12:19:24 +02:00
Nicola Pievani 5e824bf894 Merge branch 'master' into develop 2025-07-21 11:56:32 +02:00
Nicola Pievani 0b24324001 Aggiornamento versione 2.7g1 2025-07-14 08:52:32 +02:00
Nicola Pievani c827a89d94 Merge remote-tracking branch 'origin/Features/Manage_Msg' 2025-07-14 08:48:49 +02:00
Demetrio Cassarino 9518fe951b -corretto condizione photodir in mainwindowm 2025-07-10 11:39:43 +02:00
Demetrio Cassarino 0d81ee5974 -aggiornato messaggi 2025-06-16 08:33:33 +02:00
Nicola Pievani dca88a1aae Aggiornamento versione 2.7f1 2025-06-05 17:11:39 +02:00
Nicola Pievani c433e5b5bd Aggionrnamento programma 2025-06-05 17:01:57 +02:00
Nicola Pievani 07da0b55d4 Gestione parcheggio per gestione posizione pezzi 2025-05-23 11:49:07 +02:00
Nicola Pievani 5c1df0c8d2 Correzione avvio MachiningDBWindow 2025-05-23 11:29:35 +02:00
Nicola Pievani 7e323827de Merge commit 'ee57c64e91aa6413862d6a7f3eb4b9fade346a76' 2024-12-24 15:14:04 +01:00
Nicola Pievani ee57c64e91 Correzione scrittura nomi 2024-12-24 14:40:03 +01:00
Nicola Pievani 391fa8dbb5 Nuova gestione Layer indici tagli pagina Nest 2024-12-24 12:06:27 +01:00
Nicola Pievani 0bcd67a402 Merge commit '1ca8c76bbfcc5e9fc5e131dac80b3c3f928d9a23' 2024-12-23 13:27:16 +01:00
Nicola Pievani 1ca8c76bbf Nuova gestione taglio Saw&Waterjet 2024-12-23 13:26:50 +01:00
Nicola Pievani f752dc46c3 Merge branch 'develop' 2024-10-10 12:10:30 +02:00
Nicola Pievani ee69bda3a5 Aggiunti messaggi per avvio DB, gestione DB window 2024-10-10 12:07:39 +02:00
Nicola Pievani dd939a7fb6 Merge branch 'master' into develop 2024-10-09 19:38:08 +02:00
Nicola Pievani e01ee20b48 Gestione nuova libreria OmagPHOTOLib 2024-10-09 19:36:06 +02:00
Nicola Pievani aeeaf624ee Merge branch 'develop' 2024-07-31 10:25:47 +02:00
Nicola Pievani d01225cd6e Merge branch 'master' into develop 2024-07-31 10:23:23 +02:00
Nicola Pievani 5792664da8 Correzione numero di versione 2.6g7 2024-07-31 10:23:07 +02:00
Nicola Pievani caff5e5507 Merge branch 'develop' 2024-07-31 10:05:23 +02:00
Nicola Pievani 6224b1e40b Gestione On/Off tagli con doppio click 2024-07-31 10:05:03 +02:00
Nicola Pievani aca43262cf Merge branch 'master' into develop 2024-07-17 15:45:57 +02:00
Nicola Pievani 6f526dca45 Cambio versione 2.6f3 2024-06-18 18:14:42 +02:00
Nicola Pievani b3a359e257 Merge commit 'dc787f2596a8d84b51792a907aaba1eb22fdd61f' 2024-04-15 09:40:54 +02:00
Nicola Pievani dc787f2596 Migliorata gestione VirtualKey, correzione salvataggio Proj 2024-04-15 09:40:39 +02:00
Nicola Pievani d0cb48b31d Merge branch 'develop' 2024-04-09 16:45:16 +02:00
Nicola Pievani c9b4d679bd Aggiornata versione 2.6d1 2024-04-09 16:44:49 +02:00
Nicola Pievani e726416853 Migliorata lettura errori per chiave di rete 2024-04-09 16:43:13 +02:00
Nicola Pievani 9be2a9d1c3 Salvataggio Info progetto nei MachGroup 2024-04-03 08:25:47 +02:00
Nicola Pievani aed8483ede Merge commit '349a1429c12a249966201c56b23c13fb08a79d51' 2024-03-01 14:47:08 +01:00
Nicola Pievani 349a1429c1 Gestione colore entità e cambio versione 2024-03-01 14:46:41 +01:00
Nicola Pievani 29c528fa0e Merge commit '0fa0d4e6123c5d07dfcb1c9601f2d968e21484d3' into develop 2024-02-14 18:57:33 +01:00
Nicola Pievani 0fa0d4e612 Gestione Engrave in ImportDXF 2024-02-14 18:57:19 +01:00
Nicola Pievani 600da701b1 Merge commit 'c534b459aeb33e06b2f2f41d6eee978d92ab26b9' into develop 2024-02-14 13:12:40 +01:00
Nicola Pievani c534b459ae Gestione cambio nome lastra nel MachGroup 2024-02-14 13:12:28 +01:00
Nicola Pievani 86e6a21d63 Merge commit 'd7522c4eb89d002ee0567337d1f371e0b2058961' 2024-02-13 15:15:15 +01:00
Nicola Pievani d7522c4eb8 Aggiornamento versione 2024-02-13 15:14:45 +01:00
Demetrio Cassarino 1f7a918ac2 migliorata gestione textbox 2024-02-13 15:11:27 +01:00
Nicola Pievani e4a87dc475 Gestione Style ComboBox Default 2024-02-13 14:37:49 +01:00
Nicola Pievani 7a26984f95 Merge commit '3a76d6c91a771f8644e33d5b7d2c46d1e0905e4c' 2024-01-24 11:56:09 +01:00
Nicola Pievani 3a76d6c91a Modificata disposizione comandi 2024-01-24 11:55:47 +01:00
Nicola Pievani 4d691cee62 Merge commit 'ce3ff4e3d65711fa19ff66a54ce0b694d52012fe' into develop 2024-01-24 09:33:13 +01:00
Dario Sassi ce3ff4e3d6 OmagOFFICE :
- correzione inizializzazione lavorazioni compatibili con materiale e spessore.
2024-01-23 12:14:10 +01:00
Nicola Pievani 3d1d62398a Aggiornamento versione 2.6a1 2024-01-22 15:38:54 +01:00
Nicola Pievani 91f86f8682 Aggiornamento versione 2024-01-22 15:05:12 +01:00
Nicola Pievani 7d457be9c5 Merge commit '3e097b81a644cb2b44ebfd494e20b56d1dcdd099' into develop 2023-12-05 16:28:55 +01:00
Nicola Pievani 3e097b81a6 Gestione sfondo ComboBoxList 2023-12-05 16:27:08 +01:00
Nicola Pievani 155d9615b0 Migliorata importazione DXF 2023-11-28 09:49:56 +01:00
Nicola Pievani 2864f6fd16 Merge branch 'develop' 2023-11-28 09:36:01 +01:00
Demetrio Cassarino 19eb5b2110 modifica treeview path per tooldb 2023-11-07 08:34:08 +01:00
Demetrio Cassarino b171f05956 modifica treeview path 2023-11-06 17:27:56 +01:00
Demetrio Cassarino 14bf3ae7e2 aggiunta grafica datagrid 2023-11-06 12:15:48 +01:00
Demetrio Cassarino 8df9640d96 Merge branch 'develop' of https://gitlab.steamware.net/egalware-cadcam/interfacce/omagoffice into develop 2023-11-06 12:02:13 +01:00
Demetrio Cassarino 9f7b62502c sistemate proprietà borderthickness 2023-11-06 12:01:08 +01:00
Nicola Pievani 8e9a3cdb73 Calcolo del tempo di esecizione operazioni 2023-11-03 12:21:15 +01:00
Nicola Pievani f47c365db2 Inserite icone nell'elenco delle lavorazioni 2023-10-27 11:36:32 +02:00
Nicola Pievani ccdb690225 Aggiornati messaggi 2023-10-26 16:13:55 +02:00
Nicola Pievani 7ac6fb42c6 Merge commit '1ddb8a27fb907505684da52e2b4aacc494d36192' into develop 2023-10-24 18:09:36 +02:00
Nicola Pievani fd6da1f694 Merge commit 'ee85507b11dd60950c6e7a5af9b97a8439d0a259' 2023-08-07 09:08:04 +02:00
65 changed files with 3042 additions and 1543 deletions
+1 -1
View File
@@ -146,7 +146,7 @@ Public Class CompoWindowVM
Friend Function MakePreview(ByRef sMsg As String) As Boolean Friend Function MakePreview(ByRef sMsg As String) As Boolean
If Not EgtLuaExecLine(LUA_CMP_DRAW & "(true)") Then If Not EgtLuaExecLine(LUA_CMP_DRAW & "(true)") Then
sMsg = "Error in component execution" sMsg = EgtMsg(91689) ' Error in component execution
m_bDrawOk = False m_bDrawOk = False
Else Else
EgtLuaGetGlobStringVar(LUA_CMP_VARS & ".MSG", sMsg) EgtLuaGetGlobStringVar(LUA_CMP_VARS & ".MSG", sMsg)
+3
View File
@@ -21,6 +21,7 @@ Module ConstGen
' File con dati di licenza ' File con dati di licenza
Public Const LIC_FILE_NAME As String = "OmagOFFICE.lic" Public Const LIC_FILE_NAME As String = "OmagOFFICE.lic"
Public Const S_LICENCE As String = "Licence" Public Const S_LICENCE As String = "Licence"
Public Const K_LOCKID As String = "LockId"
Public Const K_KEY As String = "Key" Public Const K_KEY As String = "Key"
Public Const K_NESTKEY As String = "NestKey" Public Const K_NESTKEY As String = "NestKey"
@@ -76,5 +77,7 @@ Module ConstGen
Public Const SETUP_LUA As String = "SetUp.lua" Public Const SETUP_LUA As String = "SetUp.lua"
' Sottodirettorio per BackUp ' Sottodirettorio per BackUp
Public Const BACKUP_DIR As String = "BackUp" Public Const BACKUP_DIR As String = "BackUp"
' Info per rotazione in registrazione grezzo
Public Const INFO_REGROT As String = "RegRot"
End Module End Module
+3
View File
@@ -37,6 +37,7 @@ Module ConstIni
Public Const K_CONTOURFROMCAMERA As String = "ContourFromCamera" Public Const K_CONTOURFROMCAMERA As String = "ContourFromCamera"
Public Const K_SUPPORT As String = "Support" Public Const K_SUPPORT As String = "Support"
Public Const K_PHOTODIR As String = "PhotoDir" Public Const K_PHOTODIR As String = "PhotoDir"
Public Const K_SHOWNBARROW As String = "ShowNbArrow"
Public Const S_LANGUAGES As String = "Languages" Public Const S_LANGUAGES As String = "Languages"
Public Const K_LANGUAGE As String = "Language" Public Const K_LANGUAGE As String = "Language"
@@ -96,6 +97,7 @@ Module ConstIni
Public Const S_SIDES As String = "Sides" Public Const S_SIDES As String = "Sides"
Public Const K_MAXSIDEANGLE As String = "MaxSideAngle" Public Const K_MAXSIDEANGLE As String = "MaxSideAngle"
Public Const K_SIZEALWAYSONTOP As String = "SizeAlwaysOnTop"
Public Const K_PARSIDE_AS_TRF As String = "ParSideAsTrf" Public Const K_PARSIDE_AS_TRF As String = "ParSideAsTrf"
Public Const K_SIDEANGLE As String = "SideAngle" Public Const K_SIDEANGLE As String = "SideAngle"
Public Const K_DELTA_ANG_TG As String = "DeltaAngTg" Public Const K_DELTA_ANG_TG As String = "DeltaAngTg"
@@ -114,6 +116,7 @@ Module ConstIni
Public Const K_FILOTOPOFFSET As String = "FiloTopOffset" Public Const K_FILOTOPOFFSET As String = "FiloTopOffset"
Public Const K_FILOTOPDEPTH As String = "FiloTopDepth" Public Const K_FILOTOPDEPTH As String = "FiloTopDepth"
Public Const K_FILOTOPROUNDOFF As String = "FiloTopRoundOff" Public Const K_FILOTOPROUNDOFF As String = "FiloTopRoundOff"
Public Const K_TEXTCOLORENT As String = "TextColorEnt"
Public Const S_NEST As String = "Nest" Public Const S_NEST As String = "Nest"
Public Const K_DIRECT As String = "Direct" Public Const K_DIRECT As String = "Direct"
+8 -8
View File
@@ -456,28 +456,28 @@ Public Class CurrMachWindowVM
' --- DRILL --- ' --- DRILL ---
CreateMachiningList(MCH_MY.DRILLING, m_AvailableDrillList, m_CurrDrillingList) CreateMachiningList(MCH_MY.DRILLING, m_AvailableDrillList, m_CurrDrillingList)
' Se la lista è vuota cancello la lavorazione corrente di questo tipo ' Se la lista è vuota cancello la lavorazione corrente di questo tipo
If m_CurrDrillingList.Count = 0 Then If m_CurrDrillingList.Count <= 1 Then
CurrentMachine.sCurrDrilling = String.Empty CurrentMachine.sCurrDrilling = String.Empty
End If End If
' --- MILL --- ' --- MILL ---
CreateMachiningList(MCH_MY.MILLING, m_AvailableMillList, m_CurrMillingList) CreateMachiningList(MCH_MY.MILLING, m_AvailableMillList, m_CurrMillingList)
' Se la lista è vuota cancello la lavorazione corrente di questo tipo ' Se la lista è vuota cancello la lavorazione corrente di questo tipo
If m_CurrMillingList.Count = 0 Then If m_CurrMillingList.Count <= 1 Then
CurrentMachine.sCurrMilling = String.Empty CurrentMachine.sCurrMilling = String.Empty
End If End If
' --- SCASSO --- ' --- SCASSO ---
CreateMachiningList(MCH_MY.POCKETING, m_AvailableMillList, m_CurrPocketingList) CreateMachiningList(MCH_MY.POCKETING, m_AvailableMillList, m_CurrPocketingList)
' Se la lista è vuota cancello la lavorazione corrente di questo tipo ' Se la lista è vuota cancello la lavorazione corrente di questo tipo
If m_CurrPocketingList.Count = 0 Then If m_CurrPocketingList.Count <= 1 Then
CurrentMachine.sCurrPocketing = String.Empty CurrentMachine.sCurrPocketing = String.Empty
End If End If
' --- WATERJET --- ' --- WATERJET ---
CreateMachiningList(MCH_MY.WATERJETTING, m_AvailableWaterjetList, m_CurrWaterjettingList) CreateMachiningList(MCH_MY.WATERJETTING, m_AvailableWaterjetList, m_CurrWaterjettingList)
' Se la lista è vuota cancello la lavorazione corrente di questo tipo ' Se la lista è vuota cancello la lavorazione corrente di questo tipo
If m_CurrWaterjettingList.Count = 0 Then If m_CurrWaterjettingList.Count <= 1 Then
CurrentMachine.sCurrWaterJetting = String.Empty CurrentMachine.sCurrWaterJetting = String.Empty
End If End If
m_CurrWaterjettingQualityList = New List(Of String)(CurrentMachine.Qualities) m_CurrWaterjettingQualityList = New List(Of String)(CurrentMachine.Qualities)
@@ -487,28 +487,28 @@ Public Class CurrMachWindowVM
' --- DRILL --- ' --- DRILL ---
CreateMachiningList(MCH_MY.DRILLING, m_AvailableDrillList, m_CurrDrillingList) CreateMachiningList(MCH_MY.DRILLING, m_AvailableDrillList, m_CurrDrillingList)
' Se la lista è vuota cancello la lavorazione corrente di questo tipo ' Se la lista è vuota cancello la lavorazione corrente di questo tipo
If m_CurrDrillingList.Count = 0 Then If m_CurrDrillingList.Count <= 1 Then
CurrentMachine.sCurrDrilling = String.Empty CurrentMachine.sCurrDrilling = String.Empty
End If End If
' --- MILL --- ' --- MILL ---
CreateMachiningList(MCH_MY.MILLING, m_AvailableMillList, m_CurrMillingList) CreateMachiningList(MCH_MY.MILLING, m_AvailableMillList, m_CurrMillingList)
' Se la lista è vuota cancello la lavorazione corrente di questo tipo ' Se la lista è vuota cancello la lavorazione corrente di questo tipo
If m_CurrMillingList.Count = 0 Then If m_CurrMillingList.Count <= 1 Then
CurrentMachine.sCurrMilling = String.Empty CurrentMachine.sCurrMilling = String.Empty
End If End If
' --- SCASSO --- ' --- SCASSO ---
CreateMachiningList(MCH_MY.POCKETING, m_AvailableMillList, m_CurrPocketingList) CreateMachiningList(MCH_MY.POCKETING, m_AvailableMillList, m_CurrPocketingList)
' Se la lista è vuota cancello la lavorazione corrente di questo tipo ' Se la lista è vuota cancello la lavorazione corrente di questo tipo
If m_CurrPocketingList.Count = 0 Then If m_CurrPocketingList.Count <= 1 Then
CurrentMachine.sCurrPocketing = String.Empty CurrentMachine.sCurrPocketing = String.Empty
End If End If
' --- WATERJET --- ' --- WATERJET ---
CreateMachiningList(MCH_MY.WATERJETTING, m_AvailableWaterjetList, m_CurrWaterjettingList) CreateMachiningList(MCH_MY.WATERJETTING, m_AvailableWaterjetList, m_CurrWaterjettingList)
' Se la lista è vuota cancello la lavorazione corrente di questo tipo ' Se la lista è vuota cancello la lavorazione corrente di questo tipo
If m_CurrWaterjettingList.Count = 0 Then If m_CurrWaterjettingList.Count <= 1 Then
CurrentMachine.sCurrWaterJetting = String.Empty CurrentMachine.sCurrWaterJetting = String.Empty
End If End If
m_CurrWaterjettingQualityList = New List(Of String)(CurrentMachine.Qualities) m_CurrWaterjettingQualityList = New List(Of String)(CurrentMachine.Qualities)
+1 -1
View File
@@ -112,7 +112,7 @@ Public Class DxfImportSceneHostV
Private Sub OnMouseDownScene(sender As Object, e As System.Windows.Forms.MouseEventArgs) Handles ImportDxfScene.OnMouseDownScene Private Sub OnMouseDownScene(sender As Object, e As System.Windows.Forms.MouseEventArgs) Handles ImportDxfScene.OnMouseDownScene
' Solo se in modalità angoli o gocciolatoio su lati esterni ' Solo se in modalità angoli o gocciolatoio su lati esterni
If DxfImportWindowMap.refDxfImportWindowVM.SideAngle_IsChecked Or DxfImportWindowMap.refDxfImportWindowVM.Drip_IsChecked Then If DxfImportWindowMap.refDxfImportWindowVM.SideAngle_IsChecked Or DxfImportWindowMap.refDxfImportWindowVM.Drip_IsChecked Or DxfImportWindowMap.refDxfImportWindowVM.Engrave_IsChecked Then
OnMouseDownSceneSideAngle(e) OnMouseDownSceneSideAngle(e)
ElseIf DxfImportWindowMap.refDxfImportWindowVM.FiloTop_IsChecked Then ElseIf DxfImportWindowMap.refDxfImportWindowVM.FiloTop_IsChecked Then
OnMouseDownSceneFiloTop(e) OnMouseDownSceneFiloTop(e)
+199 -8
View File
@@ -6,7 +6,193 @@
Title="{Binding TitleMsg}" Title="{Binding TitleMsg}"
IsMinimizable="False" IsMinimizable="False"
ShowInTaskbar="False" ShowInTaskbar="False"
Style="{DynamicResource {x:Type EgtWPFLib5:EgtCustomWindow}}" WindowStartupLocation="CenterOwner"> Style="{DynamicResource {x:Type EgtWPFLib5:EgtCustomWindow}}" WindowStartupLocation="CenterOwner"
xmlns:theme="clr-namespace:Microsoft.Windows.Themes;assembly=PresentationFramework.Aero">
<EgtWPFLib5:EgtCustomWindow.Resources>
<!--gradiente colore-->
<!--<Style x:Key="ScrollBarButton" TargetType="{x:Type RepeatButton}">
<Setter Property="OverridesDefaultStyle" Value="true"/>
<Setter Property="Focusable" Value="false"/>
<Setter Property="IsTabStop" Value="false"/>
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type RepeatButton}">
<theme:ScrollChrome x:Name="Chrome" RenderPressed="{TemplateBinding IsPressed}" RenderMouseOver="{TemplateBinding IsMouseOver}" SnapsToDevicePixels="true" theme:ScrollChrome.ScrollGlyph="{TemplateBinding theme:ScrollChrome.ScrollGlyph}"/>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>-->
<Style x:Key="ScrollBarThumb" TargetType="{x:Type Thumb}">
<Setter Property="OverridesDefaultStyle" Value="true"/>
<Setter Property="IsTabStop" Value="false"/>
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type Thumb}">
<Border x:Name="Background" CornerRadius="0" Background="Transparent" BorderThickness="{TemplateBinding BorderThickness}" BorderBrush="{TemplateBinding BorderBrush}">
<Grid Background="Transparent" Margin="1">
<Border Opacity="0" x:Name="BackgroundAnimation" Background="Transparent" />
<Rectangle x:Name="BackgroundGradient" RadiusX="8" RadiusY="8" Fill="#FF095CA8" Stroke="#1C1D22" StrokeThickness="0.5">
<!--<Rectangle.Fill>
<LinearGradientBrush StartPoint=".7,0" EndPoint=".7,1">
<GradientStop Color="#1C1D22" Offset="0.375" />
<GradientStop Color="#1C1D22" Offset="0.625" />
</LinearGradientBrush>
</Rectangle.Fill>-->
</Rectangle>
</Grid>
</Border>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
<!--<Style x:Key="HorizontalScrollBarPageButton" TargetType="{x:Type RepeatButton}">
<Setter Property="OverridesDefaultStyle" Value="true"/>
<Setter Property="Background" Value="Transparent"/>
<Setter Property="Focusable" Value="false"/>
<Setter Property="IsTabStop" Value="false"/>
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type RepeatButton}">
<Rectangle Fill="{TemplateBinding Background}" Height="{TemplateBinding Height}" Width="{TemplateBinding Width}"/>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>-->
<Style x:Key="VerticalScrollBarPageButton" TargetType="{x:Type RepeatButton}">
<Setter Property="OverridesDefaultStyle" Value="true"/>
<Setter Property="Background" Value="Transparent"/>
<Setter Property="Focusable" Value="false"/>
<Setter Property="IsTabStop" Value="false"/>
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type RepeatButton}">
<Rectangle Fill="{TemplateBinding Background}" Height="{TemplateBinding Height}" Width="{TemplateBinding Width}"/>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
<Style x:Key="ScrollBarStyle1" TargetType="{x:Type ScrollBar}">
<Setter Property="Background" Value="Transparent"/>
<Setter Property="Stylus.IsPressAndHoldEnabled" Value="false"/>
<Setter Property="Stylus.IsFlicksEnabled" Value="false"/>
<Setter Property="Foreground" Value="{DynamicResource {x:Static SystemColors.ControlTextBrushKey}}"/>
<Setter Property="Width" Value="{DynamicResource {x:Static SystemParameters.VerticalScrollBarWidthKey}}"/>
<Setter Property="MinWidth" Value="{DynamicResource {x:Static SystemParameters.VerticalScrollBarWidthKey}}"/>
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type ScrollBar}">
<Grid x:Name="Bg" Background="{TemplateBinding Background}" SnapsToDevicePixels="true">
<Grid.RowDefinitions>
<RowDefinition MaxHeight="1"/>
<RowDefinition Height="0.00001*"/>
<RowDefinition MaxHeight="1"/>
</Grid.RowDefinitions>
<!--<RepeatButton Command="{x:Static ScrollBar.LineUpCommand}" IsEnabled="{TemplateBinding IsMouseOver}" />-->
<Track x:Name="PART_Track" IsDirectionReversed="true" IsEnabled="{TemplateBinding IsMouseOver}" Grid.Row="1">
<Track.DecreaseRepeatButton>
<RepeatButton Command="{x:Static ScrollBar.PageUpCommand}" Style="{StaticResource VerticalScrollBarPageButton}"/>
</Track.DecreaseRepeatButton>
<Track.IncreaseRepeatButton>
<RepeatButton Command="{x:Static ScrollBar.PageDownCommand}" Style="{StaticResource VerticalScrollBarPageButton}"/>
</Track.IncreaseRepeatButton>
<Track.Thumb>
<Thumb Style="{StaticResource ScrollBarThumb}"/>
</Track.Thumb>
</Track>
<!--<RepeatButton Command="{x:Static ScrollBar.LineDownCommand}" IsEnabled="{TemplateBinding IsMouseOver}" Grid.Row="2" theme:ScrollChrome.ScrollGlyph="DownArrow"/>-->
</Grid>
<ControlTemplate.Triggers>
<Trigger Property="IsEnabled" Value="false">
<Setter Property="Background" TargetName="Bg" Value="Transparent"/>
</Trigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</Setter.Value>
</Setter>
<!--<Style.Triggers>
<Trigger Property="Orientation" Value="Horizontal">
<Setter Property="Width" Value="Auto"/>
<Setter Property="MinWidth" Value="0"/>
<Setter Property="Height" Value="{DynamicResource {x:Static SystemParameters.HorizontalScrollBarHeightKey}}"/>
<Setter Property="MinHeight" Value="{DynamicResource {x:Static SystemParameters.HorizontalScrollBarHeightKey}}"/>
<Setter Property="Background" Value="Transparent"/>
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type ScrollBar}">
<Grid x:Name="Bg" Background="{TemplateBinding Background}" SnapsToDevicePixels="true">
<Grid.ColumnDefinitions>
<ColumnDefinition MaxWidth="{DynamicResource {x:Static SystemParameters.HorizontalScrollBarButtonWidthKey}}"/>
<ColumnDefinition Width="0.00001*"/>
<ColumnDefinition MaxWidth="{DynamicResource {x:Static SystemParameters.HorizontalScrollBarButtonWidthKey}}"/>
</Grid.ColumnDefinitions>
<RepeatButton Command="{x:Static ScrollBar.LineLeftCommand}" IsEnabled="{TemplateBinding IsMouseOver}" theme:ScrollChrome.ScrollGlyph="LeftArrow" Style="{StaticResource CustomScrollBarButton}"/>
<Track x:Name="PART_Track" Grid.Column="1" IsEnabled="{TemplateBinding IsMouseOver}">
<Track.DecreaseRepeatButton>
<RepeatButton Command="{x:Static ScrollBar.PageLeftCommand}" Style="{StaticResource CustomScrollBarButton}"/>
</Track.DecreaseRepeatButton>
<Track.IncreaseRepeatButton>
<RepeatButton Command="{x:Static ScrollBar.PageRightCommand}" Style="{StaticResource CustomScrollBarButton}"/>
</Track.IncreaseRepeatButton>
<Track.Thumb>
<Thumb Style="{StaticResource ScrollBarThumb}"/>
</Track.Thumb>
</Track>
<RepeatButton Command="{x:Static ScrollBar.LineRightCommand}" Grid.Column="2" IsEnabled="{TemplateBinding IsMouseOver}" theme:ScrollChrome.ScrollGlyph="RightArrow" Style="{StaticResource CustomScrollBarButton}"/>
</Grid>
<ControlTemplate.Triggers>
<Trigger Property="IsEnabled" Value="false">
<Setter Property="Background" TargetName="Bg" Value="Transparent"/>
</Trigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</Setter.Value>
</Setter>
</Trigger>
</Style.Triggers>-->
</Style>
<Style x:Key="ScrollViewerStyle1" TargetType="{x:Type ScrollViewer}">
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type ScrollViewer}">
<Grid x:Name="Grid" Background="{TemplateBinding Background}">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*"/>
<ColumnDefinition Width="Auto"/>
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="*"/>
<RowDefinition Height="Auto"/>
</Grid.RowDefinitions>
<Rectangle x:Name="Corner" Grid.Column="1" Fill="{StaticResource Omag_Black}" Grid.Row="1"/>
<ScrollContentPresenter x:Name="PART_ScrollContentPresenter" CanHorizontallyScroll="False" ContentTemplate="{TemplateBinding ContentTemplate}" CanVerticallyScroll="False" Grid.Column="0" Content="{TemplateBinding Content}" CanContentScroll="{TemplateBinding CanContentScroll}" Margin="{TemplateBinding Padding}" Grid.Row="0"/>
<ScrollBar Style="{DynamicResource ScrollBarStyle1}" x:Name="PART_VerticalScrollBar"
AutomationProperties.AutomationId="VerticalScrollBar" Cursor="Arrow" Grid.Column="1"
Maximum="{TemplateBinding ScrollableHeight}" Minimum="0" Grid.Row="0"
Value="{Binding VerticalOffset, Mode=OneWay, RelativeSource={RelativeSource TemplatedParent}}" ViewportSize="{TemplateBinding ViewportHeight}" Visibility="{TemplateBinding ComputedVerticalScrollBarVisibility}"
Margin="2,0,0,0"/>
<ScrollBar Style="{DynamicResource ScrollBarStyle1}" x:Name="PART_HorizontalScrollBar"
AutomationProperties.AutomationId="HorizontalScrollBar" Cursor="Arrow" Grid.Column="0"
Maximum="{TemplateBinding ScrollableWidth}" Minimum="0" Orientation="Horizontal" Grid.Row="1"
Value="{Binding HorizontalOffset, Mode=OneWay, RelativeSource={RelativeSource TemplatedParent}}" ViewportSize="{TemplateBinding ViewportWidth}" Visibility="{TemplateBinding ComputedHorizontalScrollBarVisibility}"/>
</Grid>
</ControlTemplate>
</Setter.Value>
</Setter>
<Style.Triggers>
<Trigger Property="IsEnabled" Value="false">
<Setter Property="Foreground" Value="{DynamicResource Omag_Blue}"/>
</Trigger>
</Style.Triggers>
</Style>
</EgtWPFLib5:EgtCustomWindow.Resources>
<DockPanel> <DockPanel>
@@ -84,7 +270,7 @@
</UniformGrid> </UniformGrid>
</GroupBox> </GroupBox>
<UniformGrid Columns="4" <UniformGrid Columns="5"
DockPanel.Dock="Top" DockPanel.Dock="Top"
IsEnabled="{Binding SideEntity_IsEnabled}" IsEnabled="{Binding SideEntity_IsEnabled}"
Margin="0,0,0,5"> Margin="0,0,0,5">
@@ -98,6 +284,10 @@
IsChecked="{Binding FiloTop_IsChecked}" IsChecked="{Binding FiloTop_IsChecked}"
Style="{StaticResource CompoWindow_WrapToggleButton}"/> Style="{StaticResource CompoWindow_WrapToggleButton}"/>
<ToggleButton Content="{Binding EngraveMsg}"
IsChecked="{Binding Engrave_IsChecked}"
Style="{StaticResource CompoWindow_WrapToggleButton}"/>
<!--Incidi da sotto--> <!--Incidi da sotto-->
<ToggleButton Content="{Binding DripMsg}" <ToggleButton Content="{Binding DripMsg}"
IsChecked="{Binding Drip_IsChecked}" IsChecked="{Binding Drip_IsChecked}"
@@ -122,13 +312,12 @@
Style="{StaticResource OptionPanel_TextButton}"/> Style="{StaticResource OptionPanel_TextButton}"/>
</UniformGrid> </UniformGrid>
<GroupBox Header="Dati pezzo" <GroupBox Header="Dati pezzo"
BorderThickness="{StaticResource BorderGpBx_Thickness}" BorderThickness="{StaticResource BorderGpBx_Thickness}"
Foreground="{StaticResource Omag_White}" Foreground="{StaticResource Omag_White}"
Margin="0"> Margin="0">
<ScrollViewer Style="{DynamicResource ScrollViewerStyle1}" VerticalScrollBarVisibility="Auto" Focusable="False">
<StackPanel> <StackPanel>
<Grid Visibility="{Binding PartData_Visibility}" <Grid Visibility="{Binding PartData_Visibility}"
Margin="0,0,0,10"> Margin="0,0,0,10">
<Grid.ColumnDefinitions> <Grid.ColumnDefinitions>
@@ -178,10 +367,12 @@
TextWrapping="Wrap" TextWrapping="Wrap"
TextAlignment="Center" TextAlignment="Center"
Margin="0,0,0,20"/> Margin="0,0,0,20"/>
<ContentControl VerticalAlignment="Center" <ContentControl VerticalAlignment="Center"
Content="{Binding SideEntityControl}"/> Content="{Binding SideEntityControl}" ScrollViewer.VerticalScrollBarVisibility="Visible"/>
</StackPanel> </StackPanel>
</ScrollViewer>
</GroupBox> </GroupBox>
</DockPanel> </DockPanel>
+66 -8
View File
@@ -142,7 +142,7 @@ Public Class DxfImportWindowVM
Return m_SideAngle_IsChecked Return m_SideAngle_IsChecked
End Get End Get
Set(value As Boolean) Set(value As Boolean)
If m_Drip_IsChecked Or m_UnderDrill_IsChecked Or m_FiloTop_IsChecked Then Return If m_Drip_IsChecked Or m_UnderDrill_IsChecked Or m_FiloTop_IsChecked Or m_Engrave_IsChecked Then Return
m_SideAngle_IsChecked = value m_SideAngle_IsChecked = value
If value Then If value Then
' Aggiungo regioni per percorsi interni ' Aggiungo regioni per percorsi interni
@@ -190,7 +190,7 @@ Public Class DxfImportWindowVM
Return m_FiloTop_IsChecked Return m_FiloTop_IsChecked
End Get End Get
Set(value As Boolean) Set(value As Boolean)
If m_SideAngle_IsChecked Or m_Drip_IsChecked Or m_UnderDrill_IsChecked Then Return If m_SideAngle_IsChecked Or m_Drip_IsChecked Or m_UnderDrill_IsChecked Or m_Engrave_IsChecked Then Return
m_FiloTop_IsChecked = value m_FiloTop_IsChecked = value
If value Then If value Then
' Aggiungo regioni per percorsi interni ' Aggiungo regioni per percorsi interni
@@ -233,13 +233,61 @@ Public Class DxfImportWindowVM
End Set End Set
End Property End Property
Private m_Engrave_IsChecked As Boolean
Public Property Engrave_IsChecked As Boolean
Get
Return m_Engrave_IsChecked
End Get
Set(value As Boolean)
If m_Drip_IsChecked Or m_UnderDrill_IsChecked Or m_FiloTop_IsChecked Or m_SideAngle_IsChecked Then Return
m_Engrave_IsChecked = value
If value Then
' Aggiungo regioni per percorsi interni
AdjustSelectRegions()
' Messaggio di selezione contorno
SetOutputMessage(EgtMsg(MSG_DRAWPAGEUC + 6), MSG_TYPE.INFO) ' Selezionare un contorno
' Imposto modalità sideangle
m_SideEntityControlVM = New SideEntityControlVM(SideEntityControlVM.CallingWindowOpt.DXFIMPORT,
DxfImportWindowMap.refDxfImportSceneHostV.ImportDxfScene,
SideEntityControlVM.ModeOpt.ENGRAVE)
SideEntityControl = New SideEntityControlV(m_SideEntityControlVM)
Open_IsEnabled = False
Type_IsEnabled = False
Measure_IsEnabled = False
PartData_Visibility = Visibility.Collapsed
OrderList_Visibility = Visibility.Collapsed
OkIsEnabled = False
Else
' Rimuovo regioni per percorsi interni
RemoveSelectRegions()
m_SideEntityControlVM.Close()
Open_IsEnabled = True
Type_IsEnabled = True
Measure_IsEnabled = True
PartData_Visibility = Visibility.Visible
OrderList_Visibility = Visibility.Visible
OkIsEnabled = True
m_SideEntityControlVM = Nothing
SideEntityControl = Nothing
' Elimino scritte angoli per input e inserisco quelle definitive
SideEntityControlVM.WriteSideAngleForNest(DxfImportWindowMap.refDxfImportSceneHostV.ImportDxfScene.GetCtx())
' Deseleziono tutto
DxfImportWindowMap.refDxfImportSceneHostV.Deselect()
' Pulisco area messaggi
ClearOutputMessage()
End If
NotifyPropertyChanged("EngraveIsChecked")
EgtZoom(ZM.ALL)
End Set
End Property
Private m_Drip_IsChecked As Boolean Private m_Drip_IsChecked As Boolean
Public Property Drip_IsChecked As Boolean Public Property Drip_IsChecked As Boolean
Get Get
Return m_Drip_IsChecked Return m_Drip_IsChecked
End Get End Get
Set(value As Boolean) Set(value As Boolean)
If m_SideAngle_IsChecked Or m_UnderDrill_IsChecked Or m_FiloTop_IsChecked Then Return If m_SideAngle_IsChecked Or m_UnderDrill_IsChecked Or m_FiloTop_IsChecked Or m_Engrave_IsChecked Then Return
m_Drip_IsChecked = value m_Drip_IsChecked = value
If value Then If value Then
' Messaggio di selezione contorno ' Messaggio di selezione contorno
@@ -283,7 +331,7 @@ Public Class DxfImportWindowVM
Return m_UnderDrill_IsChecked Return m_UnderDrill_IsChecked
End Get End Get
Set(value As Boolean) Set(value As Boolean)
If m_SideAngle_IsChecked Or m_Drip_IsChecked Or m_FiloTop_IsChecked Then Return If m_SideAngle_IsChecked Or m_Drip_IsChecked Or m_FiloTop_IsChecked Or m_Engrave_IsChecked Then Return
m_UnderDrill_IsChecked = value m_UnderDrill_IsChecked = value
If value Then If value Then
' Aggiungo regioni di selezione per percorsi interni ' Aggiungo regioni di selezione per percorsi interni
@@ -493,6 +541,12 @@ Public Class DxfImportWindowVM
End Get End Get
End Property End Property
Public ReadOnly Property EngraveMsg As String
Get
Return EgtMsg(90397)
End Get
End Property
Public ReadOnly Property DripMsg As String Public ReadOnly Property DripMsg As String
Get Get
Return EgtMsg(MSG_IMPORTPAGEUC + 8) Return EgtMsg(MSG_IMPORTPAGEUC + 8)
@@ -646,9 +700,13 @@ Public Class DxfImportWindowVM
Case FT.DXF Case FT.DXF
' recupero unità di misura del file ' recupero unità di misura del file
Dim dScale As Double = If(m_MmIsChecked, ONEMM, ONEINCH) Dim dScale As Double = If(m_MmIsChecked, ONEMM, ONEINCH)
' Importo file DXF ' Importo file DXF
If Not EgtImportDxf(m_sFilePath, dScale) Then Return False If Not EgtImportDxf(m_sFilePath, dScale) Then Return False
Case FT.NGE ' Riporto al piano tutte le superifici
EgtSelectAll()
EgtScale(GDB_ID.SEL, Frame3d.GLOB, 1, 1, 0)
EgtDeselectAll()
Case FT.NGE
' Carico Nge ' Carico Nge
If Not EgtOpenFile(m_sFilePath) Then Return False If Not EgtOpenFile(m_sFilePath) Then Return False
' Filtro Nge ' Filtro Nge
@@ -840,7 +898,7 @@ Public Class DxfImportWindowVM
Friend Sub SelectedPartChanged() Friend Sub SelectedPartChanged()
' Se sono in modalità inclinazioni o gocciolatoio calcolo lati inclinabili e creo testi ' Se sono in modalità inclinazioni o gocciolatoio calcolo lati inclinabili e creo testi
If SideAngle_IsChecked() Or Drip_IsChecked() Or FiloTop_IsChecked Then If SideAngle_IsChecked() Or Drip_IsChecked() Or FiloTop_IsChecked Or Engrave_IsChecked Then
m_SideEntityControlVM.ReLoadSideAnglePage(SideEntityControlVM.CallingWindowOpt.DXFIMPORT) m_SideEntityControlVM.ReLoadSideAnglePage(SideEntityControlVM.CallingWindowOpt.DXFIMPORT)
End If End If
End Sub End Sub
+71 -10
View File
@@ -1,5 +1,6 @@
Imports System.Security.Cryptography Imports System.Security.Cryptography
Imports EgtUILib Imports EgtUILib
Imports EgtWPFLib5
Friend Module CamAuto Friend Module CamAuto
@@ -25,9 +26,12 @@ Friend Module CamAuto
bOk = bOk AndAlso EgtLuaCallFunction("CAM.Add") bOk = bOk AndAlso EgtLuaCallFunction("CAM.Add")
EgtLuaGetGlobIntVar("CAM.ERR", nErr) EgtLuaGetGlobIntVar("CAM.ERR", nErr)
EgtLuaResetGlobVar("CAM") EgtLuaResetGlobVar("CAM")
If nErr <> 0 Then If nErr > 0 Then
bOk = False bOk = False
EgtOutLog("Error in CamAuto : " & nErr.ToString()) EgtOutLog("Error in CamAuto : " & nErr.ToString())
ElseIf nErr < 0 Then
EgtOutLog("Warning in CamAuto : " & nErr.ToString())
OmagOFFICEMap.refStatusBarVM.SetOutputMessage(EgtMsg(91017), MSG_TYPE.WARNING)
End If End If
ResetOrderMachiningFlag() ResetOrderMachiningFlag()
Return bOk Return bOk
@@ -43,9 +47,34 @@ Friend Module CamAuto
bOk = bOk AndAlso EgtLuaCallFunction("CAM.AddWaterJet") bOk = bOk AndAlso EgtLuaCallFunction("CAM.AddWaterJet")
EgtLuaGetGlobIntVar("CAM.ERR", nErr) EgtLuaGetGlobIntVar("CAM.ERR", nErr)
EgtLuaResetGlobVar("CAM") EgtLuaResetGlobVar("CAM")
If nErr <> 0 Then If nErr > 0 Then
bOk = False bOk = False
EgtOutLog("Error in CamAuto : " & nErr.ToString()) EgtOutLog("Error in CamAuto : " & nErr.ToString())
' m_MainWindow.m_CurrentProjectPageUC.ClearMessage()
ElseIf nErr < 0 Then
EgtOutLog("Warning in CamAuto : " & nErr.ToString())
End If
Return bOk
End Function
' versione CamAuto 2.6l1: gestione tagli con ridotto affondamento
Friend Function AddWaterJetMachining(LocaList As List(Of Integer), ByRef nWarn As Integer) As Boolean
EgtLuaCreateGlobTable("CAM")
SetLuaStandardCamParams()
For i As Integer = 0 To LocaList.Count - 1
EgtLuaSetGlobIntVar("CAM.TAB_OPERID." & (i + 1).ToString, LocaList(i))
Next
Dim nErr As Integer = 999
Dim bOk As Boolean = EgtLuaExecFile(m_sCamAutoDir & "\CamAuto.lua")
bOk = bOk AndAlso EgtLuaGetGlobIntVar("CAM.ERR", nErr) AndAlso nErr = 0
bOk = bOk AndAlso EgtLuaCallFunction("CAM.AddWaterJets")
EgtLuaGetGlobIntVar("CAM.ERR", nErr)
EgtLuaResetGlobVar("CAM")
If nErr > 0 Then
bOk = False
EgtOutLog("Error in CamAuto : " & nErr.ToString())
ElseIf nErr < 0 Then
EgtOutLog("Warning in CamAuto : " & nErr.ToString())
End If End If
Return bOk Return bOk
End Function End Function
@@ -59,9 +88,11 @@ Friend Module CamAuto
bOk = bOk AndAlso EgtLuaCallFunction("CAM.Erase") bOk = bOk AndAlso EgtLuaCallFunction("CAM.Erase")
EgtLuaGetGlobIntVar("CAM.ERR", nErr) EgtLuaGetGlobIntVar("CAM.ERR", nErr)
EgtLuaResetGlobVar("CAM") EgtLuaResetGlobVar("CAM")
If nErr <> 0 Then If nErr > 0 Then
bOk = False bOk = False
EgtOutLog("Error in CamAuto : " & nErr.ToString()) EgtOutLog("Error in CamAuto : " & nErr.ToString())
ElseIf nErr < 0 Then
EgtOutLog("Warning in CamAuto : " & nErr.ToString())
End If End If
ResetOrderMachiningFlag() ResetOrderMachiningFlag()
Return bOk Return bOk
@@ -76,9 +107,11 @@ Friend Module CamAuto
bOk = bOk AndAlso EgtLuaCallFunction("CAM.InvertVerticalCut") bOk = bOk AndAlso EgtLuaCallFunction("CAM.InvertVerticalCut")
EgtLuaGetGlobIntVar("CAM.ERR", nErr) EgtLuaGetGlobIntVar("CAM.ERR", nErr)
EgtLuaResetGlobVar("CAM") EgtLuaResetGlobVar("CAM")
If nErr <> 0 Then If nErr > 0 Then
bOk = False bOk = False
EgtOutLog("Error in CamAuto : " & nErr.ToString()) EgtOutLog("Error in CamAuto : " & nErr.ToString())
ElseIf nErr < 0 Then
EgtOutLog("Warning in CamAuto : " & nErr.ToString())
End If End If
Return bOk Return bOk
End Function End Function
@@ -89,6 +122,7 @@ Friend Module CamAuto
End Function End Function
Friend Function ResetAllMachinings(ByRef nWarn As Integer) As Boolean Friend Function ResetAllMachinings(ByRef nWarn As Integer) As Boolean
EgtOutLog(" ++ ReserAllMachining ++ ")
' Cancello tutte le lavorazioni ' Cancello tutte le lavorazioni
EraseMachinings(GDB_ID.NULL) EraseMachinings(GDB_ID.NULL)
' Reinserisco tutte le lavorazioni piane (non sono previste le lavorazioni delle cornici) ' Reinserisco tutte le lavorazioni piane (non sono previste le lavorazioni delle cornici)
@@ -273,9 +307,11 @@ Friend Module CamAuto
bOk = bOk AndAlso EgtLuaCallFunction("CAM.UpdateAllTp") bOk = bOk AndAlso EgtLuaCallFunction("CAM.UpdateAllTp")
EgtLuaGetGlobIntVar("CAM.ERR", nErr) EgtLuaGetGlobIntVar("CAM.ERR", nErr)
EgtLuaResetGlobVar("CAM") EgtLuaResetGlobVar("CAM")
If nErr <> 0 Then If nErr > 0 Then
bOk = False bOk = False
EgtOutLog("Error in CamAuto : " & nErr.ToString()) EgtOutLog("Error in CamAuto : " & nErr.ToString())
ElseIf nErr < 0 Then
EgtOutLog("Warning in CamAuto : " & nErr.ToString())
End If End If
Return bOk Return bOk
End Function End Function
@@ -289,9 +325,11 @@ Friend Module CamAuto
bOk = bOk AndAlso EgtLuaCallFunction("CAM.Sort") bOk = bOk AndAlso EgtLuaCallFunction("CAM.Sort")
EgtLuaGetGlobIntVar("CAM.ERR", nErr) EgtLuaGetGlobIntVar("CAM.ERR", nErr)
EgtLuaResetGlobVar("CAM") EgtLuaResetGlobVar("CAM")
If nErr <> 0 Then If nErr > 0 Then
bOk = False bOk = False
EgtOutLog("Error in CamAuto : " & nErr.ToString()) EgtOutLog("Error in CamAuto : " & nErr.ToString())
ElseIf nErr < 0 Then
EgtOutLog("Warning in CamAuto : " & nErr.ToString())
End If End If
Return bOk Return bOk
End Function End Function
@@ -306,9 +344,11 @@ Friend Module CamAuto
bOk = bOk AndAlso EgtLuaCallFunction("CAM.SpecApplyDisp") bOk = bOk AndAlso EgtLuaCallFunction("CAM.SpecApplyDisp")
EgtLuaGetGlobIntVar("CAM.ERR", nErr) EgtLuaGetGlobIntVar("CAM.ERR", nErr)
EgtLuaResetGlobVar("CAM") EgtLuaResetGlobVar("CAM")
If nErr <> 0 Then If nErr > 0 Then
bOk = False bOk = False
EgtOutLog("Error in CamAuto : " & nErr.ToString()) EgtOutLog("Error in CamAuto : " & nErr.ToString())
ElseIf nErr < 0 Then
EgtOutLog("Warning in CamAuto : " & nErr.ToString())
End If End If
If ResetOrderMachiningFlag() Then If ResetOrderMachiningFlag() Then
ResetOrderMachiningFlag() ResetOrderMachiningFlag()
@@ -451,6 +491,7 @@ Friend Module CamAuto
Return EgtRemoveOperationHome(nId) Return EgtRemoveOperationHome(nId)
End Function End Function
' DA AGGIORNARE PER CAMBIO UTENSILE LAMA
Friend Function VerifySetup(ByRef sMissingTools As String) As Boolean Friend Function VerifySetup(ByRef sMissingTools As String) As Boolean
Dim bOk As Boolean = True Dim bOk As Boolean = True
Dim bIsMultiCut = (EgtGetHeadId("H101") <> GDB_ID.NULL) Dim bIsMultiCut = (EgtGetHeadId("H101") <> GDB_ID.NULL)
@@ -545,6 +586,7 @@ Friend Module CamAuto
Dim dReducedDepth As Double = GetPrivateProfileDouble(S_MACH_NEST, K_MACH_REDUCEDDEPTH, 1, CurrentMachine.sMachIniFile) Dim dReducedDepth As Double = GetPrivateProfileDouble(S_MACH_NEST, K_MACH_REDUCEDDEPTH, 1, CurrentMachine.sMachIniFile)
' Ciclo sulle lavorazioni ' Ciclo sulle lavorazioni
Dim nOperId As Integer = EgtGetFirstOperation() Dim nOperId As Integer = EgtGetFirstOperation()
Dim LocalListOperId As New List(Of Integer)
While nOperId <> GDB_ID.NULL While nOperId <> GDB_ID.NULL
' verifico sia una lavorazione valida di taglio con lama ' verifico sia una lavorazione valida di taglio con lama
If IsValidMachining(nOperId) And EgtGetOperationType(nOperId) = MCH_OY.SAWING Then If IsValidMachining(nOperId) And EgtGetOperationType(nOperId) = MCH_OY.SAWING Then
@@ -559,12 +601,14 @@ Friend Module CamAuto
' se abilitato e attivo waterjet, lo aggiungo per completare il taglio ' se abilitato e attivo waterjet, lo aggiungo per completare il taglio
If CurrentMachine.WaterJettingActive Then If CurrentMachine.WaterJettingActive Then
Dim nWarn As Integer = 0 Dim nWarn As Integer = 0
AddWaterJetMachining(nOperId, nWarn) LocalListOperId.Add(nOperId)
'AddWaterJetMachining(nOperId, nWarn)
End If End If
End If End If
End If End If
nOperId = EgtGetNextOperation(nOperId) nOperId = EgtGetNextOperation(nOperId)
End While End While
If LocalListOperId.Count > 0 Then AddWaterJetMachining(LocalListOperId, 0)
Return bModified Return bModified
End Function End Function
@@ -859,6 +903,7 @@ Friend Module CamAuto
Private Function SetLuaStandardCamParams(Optional bDripOk As Boolean = True) As Boolean Private Function SetLuaStandardCamParams(Optional bDripOk As Boolean = True) As Boolean
Dim sMaterial As String = CurrentMachine.CurrMat.sName Dim sMaterial As String = CurrentMachine.CurrMat.sName
Dim sSawMch As String = CurrentMachine.sCurrSawing Dim sSawMch As String = CurrentMachine.sCurrSawing
Dim sSawTiltedMch As String = CurrentMachine.sCurrSawingTilted
Dim sMillMch As String = CurrentMachine.sCurrMilling Dim sMillMch As String = CurrentMachine.sCurrMilling
Dim sDrillMch As String = CurrentMachine.sCurrDrilling Dim sDrillMch As String = CurrentMachine.sCurrDrilling
Dim sWaterJetMch As String = CurrentMachine.sCurrWaterJetting Dim sWaterJetMch As String = CurrentMachine.sCurrWaterJetting
@@ -876,6 +921,7 @@ Friend Module CamAuto
Dim dMillingShort As Double = GetPrivateProfileDouble(S_MACH_NEST, K_MACH_MILLING_SHORTENING, 0, CurrentMachine.sMachIniFile) Dim dMillingShort As Double = GetPrivateProfileDouble(S_MACH_NEST, K_MACH_MILLING_SHORTENING, 0, CurrentMachine.sMachIniFile)
EgtLuaSetGlobStringVar("CAM.MATERIAL", sMaterial) EgtLuaSetGlobStringVar("CAM.MATERIAL", sMaterial)
EgtLuaSetGlobStringVar("CAM.SAWMCH", sSawMch) EgtLuaSetGlobStringVar("CAM.SAWMCH", sSawMch)
EgtLuaSetGlobStringVar("CAM.SAWTILTEDMCH", sSawTiltedMch)
EgtLuaSetGlobStringVar("CAM.MILLMCH", sMillMch) EgtLuaSetGlobStringVar("CAM.MILLMCH", sMillMch)
EgtLuaSetGlobStringVar("CAM.DRILLMCH", sDrillMch) EgtLuaSetGlobStringVar("CAM.DRILLMCH", sDrillMch)
EgtLuaSetGlobStringVar("CAM.WATERJETMCH", sWaterJetMch) EgtLuaSetGlobStringVar("CAM.WATERJETMCH", sWaterJetMch)
@@ -896,24 +942,29 @@ Friend Module CamAuto
Return True Return True
End Function End Function
' ver. 2.7f1
Friend Function GetTableCount() As Integer Friend Function GetTableCount() As Integer
If EgtGetTableId(MAIN_TAB) = GDB_ID.NULL Then Return 0 If EgtGetTableId(MAIN_TAB) = GDB_ID.NULL Then Return 0
If EgtGetTableId(SECOND_TAB) = GDB_ID.NULL Then Return 1 If EgtGetTableId(SECOND_TAB) = GDB_ID.NULL Then Return 1
If EgtGetTableId(THIRD_TAB) = GDB_ID.NULL Then Return 2 If EgtGetTableId(THIRD_TAB) = GDB_ID.NULL Then Return 2
Return 3 If EgtGetTableId(FORTH_TAB) = GDB_ID.NULL Then Return 3
Return 4
End Function End Function
Friend Function GetTableName(nInd As Integer) As String Friend Function GetTableName(nInd As Integer) As String
If nInd = 1 Then Return MAIN_TAB If nInd = 1 Then Return MAIN_TAB
If nInd = 2 Then Return SECOND_TAB If nInd = 2 Then Return SECOND_TAB
If nInd = 3 Then Return THIRD_TAB If nInd = 3 Then Return THIRD_TAB
If nInd = 4 Then Return FORTH_TAB
Return "" Return ""
End Function End Function
Friend Function GetCurrentTable() As Integer Friend Function GetCurrentTable() As Integer
Dim sTabName As String = MAIN_TAB Dim sTabName As String = MAIN_TAB
EgtGetTableName(sTabName) EgtGetTableName(sTabName)
If sTabName = THIRD_TAB Then If sTabName = FORTH_TAB Then
Return 4
ElseIf sTabName = THIRD_TAB Then
Return 3 Return 3
ElseIf sTabName = SECOND_TAB Then ElseIf sTabName = SECOND_TAB Then
Return 2 Return 2
@@ -1393,4 +1444,14 @@ Friend Module CamAuto
Return EgtApplyMachining(False) Return EgtApplyMachining(False)
End Function End Function
Friend Function GetRegistrationRotation() As Double
Dim dRegRot As Double = 0
EgtGetInfo(GetCurrentRaw(), INFO_REGROT, dRegRot)
Return dRegRot
End Function
Friend Function SetRegistrationRotation(dRegRot As Double) As Boolean
Return EgtSetInfo(GetCurrentRaw(), INFO_REGROT, dRegRot)
End Function
End Module End Module
+2
View File
@@ -48,6 +48,7 @@ Module ConstMach
Public Const MAIN_TAB As String = "MainTab" Public Const MAIN_TAB As String = "MainTab"
Public Const SECOND_TAB As String = "2ndTab" Public Const SECOND_TAB As String = "2ndTab"
Public Const THIRD_TAB As String = "3rdTab" Public Const THIRD_TAB As String = "3rdTab"
Public Const FORTH_TAB As String = "4thTab"
' Nome tavola ausiliaria per spostamento finale pezzi ' Nome tavola ausiliaria per spostamento finale pezzi
Public Const AUX_TAB As String = "AuxTab" Public Const AUX_TAB As String = "AuxTab"
@@ -166,6 +167,7 @@ Module ConstMach
' Info in entità da tagliare per affondamento ' Info in entità da tagliare per affondamento
Public Const INFO_DEPTH As String = "Depth" Public Const INFO_DEPTH As String = "Depth"
Public Const INFO_DEPTH2 As String = "Depth2" Public Const INFO_DEPTH2 As String = "Depth2"
Public Const INFO_AGG2 As String = "Agg2"
Public Const INFO_WIDTH As String = "Width" Public Const INFO_WIDTH As String = "Width"
' Info in entità da tagliare per taglio ristretto ' Info in entità da tagliare per taglio ristretto
Public Const INFO_STRICT As String = "Strict" Public Const INFO_STRICT As String = "Strict"
+3
View File
@@ -122,6 +122,7 @@
Public Const K_TAB2_ADDITIONALTABLE As String = "Tab2AdditionalTable" Public Const K_TAB2_ADDITIONALTABLE As String = "Tab2AdditionalTable"
Public Const K_TAB3_ADDITIONALTABLE As String = "Tab3AdditionalTable" Public Const K_TAB3_ADDITIONALTABLE As String = "Tab3AdditionalTable"
Public Const K_CENTER_RAW_ONX As String = "CenterRawOnX" Public Const K_CENTER_RAW_ONX As String = "CenterRawOnX"
Public Const K_CHANGETABWD As String = "ChangeTabWD"
Public Const S_PHOTO As String = "Photo" Public Const S_PHOTO As String = "Photo"
Public Const K_PHOTO_OFFSETX As String = "OffsetX" Public Const K_PHOTO_OFFSETX As String = "OffsetX"
@@ -240,6 +241,7 @@
Public Const S_MACH_MACH As String = "Mach" Public Const S_MACH_MACH As String = "Mach"
Public Const K_CURRSAW As String = "CurrSaw" Public Const K_CURRSAW As String = "CurrSaw"
Public Const K_CURRSAWTILTED As String = "CurrSawTilted"
Public Const K_CURRDRILL As String = "CurrDrill" Public Const K_CURRDRILL As String = "CurrDrill"
Public Const K_CURRMILL As String = "CurrMill" Public Const K_CURRMILL As String = "CurrMill"
Public Const K_CURRMILLNOTIP As String = "CurrMillNoTip" Public Const K_CURRMILLNOTIP As String = "CurrMillNoTip"
@@ -247,6 +249,7 @@
Public Const K_CURRDRIPDRILL As String = "CurrDripDrill" Public Const K_CURRDRIPDRILL As String = "CurrDripDrill"
Public Const K_CURRWATERJET As String = "CurrWaterJet" Public Const K_CURRWATERJET As String = "CurrWaterJet"
Public Const K_CURRSAWING As String = "CurrSawing" Public Const K_CURRSAWING As String = "CurrSawing"
Public Const K_CURRSAWINGTILTED As String = "CurrSawingTilted"
Public Const K_CURRSAWING_OFFICE As String = "CurrOfficeSawing" Public Const K_CURRSAWING_OFFICE As String = "CurrOfficeSawing"
Public Const K_CURRDRILLING As String = "CurrDrilling" Public Const K_CURRDRILLING As String = "CurrDrilling"
Public Const K_CURRDRILLING_OFFICE As String = "CurrOfficeDrilling" Public Const K_CURRDRILLING_OFFICE As String = "CurrOfficeDrilling"
+23
View File
@@ -107,6 +107,7 @@ Public Module CurrentMachine
' Variabili che contengono il nome degli utensili disponibili per tipo ' Variabili che contengono il nome degli utensili disponibili per tipo
Private m_sCurrSaw As String = String.Empty Private m_sCurrSaw As String = String.Empty
Private m_sCurrSawTilted As String = String.Empty
Private m_sCurrDrill As String = String.Empty Private m_sCurrDrill As String = String.Empty
Private m_sCurrMill As String = String.Empty Private m_sCurrMill As String = String.Empty
Private m_sCurrMillNoTip As String = String.Empty Private m_sCurrMillNoTip As String = String.Empty
@@ -116,6 +117,7 @@ Public Module CurrentMachine
' Variabili che contengono le lavorazioni correntemente attive (utilizzate per definire lavorazioni nel programma) ' Variabili che contengono le lavorazioni correntemente attive (utilizzate per definire lavorazioni nel programma)
Private m_sCurrSawing As String = String.Empty Private m_sCurrSawing As String = String.Empty
Private m_sCurrSawingTilted As String = String.Empty
Private m_sCurrDrilling As String = String.Empty Private m_sCurrDrilling As String = String.Empty
Private m_sCurrMilling As String = String.Empty Private m_sCurrMilling As String = String.Empty
Private m_sCurrPocketing As String = String.Empty Private m_sCurrPocketing As String = String.Empty
@@ -731,6 +733,18 @@ Friend Property sCurrMillNoTip As String
End Set End Set
End Property End Property
Friend Property sCurrSawingTilted As String
Get
Return m_sCurrSawingTilted
End Get
Set(value As String)
If WritePrivateProfileString(S_MACH_MACH, K_CURRSAWINGTILTED, value, sMachIniFile) Then
m_sCurrSawingTilted = value
'm_MainWindow.m_CurrentProjectPageUC.MachiningTxBx.Text = value
End If
End Set
End Property
Friend Property sCurrDrilling As String Friend Property sCurrDrilling As String
Get Get
Return m_sCurrDrilling Return m_sCurrDrilling
@@ -1270,6 +1284,13 @@ Friend Property sCurrMillNoTip As String
' Leggo utensili correnti ' Leggo utensili correnti
' lama ' lama
GetPrivateProfileString(S_MACH_MACH, K_CURRSAW, Nothing, m_sCurrSaw, sMachIniFile) GetPrivateProfileString(S_MACH_MACH, K_CURRSAW, Nothing, m_sCurrSaw, sMachIniFile)
' lama inclinata
If m_nShowToolChanger = 4 Then
GetPrivateProfileString(S_MACH_MACH, K_CURRSAWTILTED, Nothing, m_sCurrSawTilted, sMachIniFile)
Else
' se non è configurato il cambio utensile e allora imposto l'unica lama disponibile per i tagli inclinati
m_sCurrSawTilted = m_sCurrSaw
End If
' foretto ' foretto
GetPrivateProfileString(S_MACH_MACH, K_CURRDRILL, Nothing, m_sCurrDrill, sMachIniFile) GetPrivateProfileString(S_MACH_MACH, K_CURRDRILL, Nothing, m_sCurrDrill, sMachIniFile)
' fresa ' fresa
@@ -1286,6 +1307,8 @@ Friend Property sCurrMillNoTip As String
' Leggo lavorazioni correnti ' Leggo lavorazioni correnti
' lama ' lama
m_sCurrSawing = EstCalc.GetCurrSawing() m_sCurrSawing = EstCalc.GetCurrSawing()
' lama inlicnata
m_sCurrSawingTilted = EstCalc.GetCurrSawingTilted()
' foretto ' foretto
m_sCurrDrilling = EstCalc.GetCurrDrilling() m_sCurrDrilling = EstCalc.GetCurrDrilling()
' fresa ' fresa
+69 -22
View File
@@ -258,6 +258,14 @@ Module EstCalc
Return sCurrSawing Return sCurrSawing
End Function End Function
Friend Function GetCurrSawingTilted() As String
Dim nOperId As Integer = EgtGetFirstNameInGroup(EgtGetCurrMachGroup(), "Opers")
If nOperId = GDB_ID.NULL Then Return ""
Dim sCurrSawing As String = String.Empty
EgtGetInfo(nOperId, INFO_CURRSAWING, sCurrSawing)
Return sCurrSawing
End Function
Friend Function SetCurrMilling(sCurrMilling As String) As Boolean Friend Function SetCurrMilling(sCurrMilling As String) As Boolean
Dim nOperId As Integer = EgtGetFirstNameInGroup(EgtGetCurrMachGroup(), "Opers") Dim nOperId As Integer = EgtGetFirstNameInGroup(EgtGetCurrMachGroup(), "Opers")
If nOperId = GDB_ID.NULL Then Return False If nOperId = GDB_ID.NULL Then Return False
@@ -332,7 +340,7 @@ Module EstCalc
Return (nFlag <> 0) Return (nFlag <> 0)
End Function End Function
Public Function AdjustAdditionalTable() As Boolean Public Function AdjustAdditionalTable(Optional bForced As Boolean = False) As Boolean
' Recupero altezza sottotavola corrente ' Recupero altezza sottotavola corrente
Dim nFixtId As Integer = EgtGetFirstNameInGroup(EgtGetCurrMachGroup(), MACH_FIXT_GROUP) Dim nFixtId As Integer = EgtGetFirstNameInGroup(EgtGetCurrMachGroup(), MACH_FIXT_GROUP)
Dim nAddTabId As Integer = EgtGetFirstNameInGroup(nFixtId, MACH_ADD_TABLE) Dim nAddTabId As Integer = EgtGetFirstNameInGroup(nFixtId, MACH_ADD_TABLE)
@@ -343,18 +351,27 @@ Module EstCalc
dCurrAddTab = b3AddTab.DimZ() dCurrAddTab = b3AddTab.DimZ()
End If End If
' Se valore cambiato, aggiorno... ' Se valore cambiato, aggiorno...
Dim dDeltaZ As Double = dAdditionalTable - dCurrAddTab Dim dDeltaZ As Double = CurrentMachine.dAdditionalTable - dCurrAddTab
If Math.Abs(dDeltaZ) > EPS_SMALL Then Dim bChanged As Boolean = (Math.Abs(dDeltaZ) > EPS_SMALL)
If bChanged Or bForced Then
Dim bOldEnMod As Boolean = EgtGetEnableModified()
If Not bChanged AndAlso bOldEnMod Then EgtDisableModified()
AddAdditionalTable() AddAdditionalTable()
UpdateAllRawsZ(dDeltaZ) UpdateAllRawsZ(dDeltaZ)
' !!! FOTO DA GESTIRE !!! If GetPhoto() <> GDB_ID.NULL Then
'If GetPhoto() <> GDB_ID.NULL Then UpdatePhoto()
' UpdatePhoto() UpdateContour()
' UpdateContour() If EgtGetRawPartCount() > 0 Then
' If EgtGetRawPartCount() > 0 Then ShowPhoto(False)
' ShowPhoto(False) Dim nRawGrpId As Integer = EgtGetFirstRawPart()
' End If While nRawGrpId <> GDB_ID.NULL
'End If Dim nRawSolidId As Integer = EgtGetFirstNameInGroup(nRawGrpId, NAME_RAW_SOLID)
If nRawSolidId <> GDB_ID.NULL Then EgtSetTextureName(nRawSolidId, PHOTO_NAME)
nRawGrpId = EgtGetNextRawPart(nRawGrpId)
End While
End If
End If
If Not bChanged AndAlso bOldEnMod Then EgtEnableModified()
End If End If
Return True Return True
End Function End Function
@@ -726,49 +743,65 @@ Module EstCalc
nLayId = EgtGetNextName(nLayId, NAME_INLOOP) nLayId = EgtGetNextName(nLayId, NAME_INLOOP)
End While End While
' Aggiorno le entità con tallone e quelle con angolo esterno ' Aggiorno le entità con tallone e quelle con angolo esterno
Const AGG_DEPTH As Double = 2.0 Const AGG_DEPTH As Double = 0.75
Dim bSizeOnTop As Boolean = (GetMainPrivateProfileInt(S_SIDES, K_SIZEALWAYSONTOP, 0) <> 0)
For Each nEnt As Integer In vEnt For Each nEnt As Integer In vEnt
' Se aggiornamento vietato, vado oltre ' Se aggiornamento vietato, vado oltre
If EgtExistsInfo( nEnt, INFO_SIDE_FIXED) Then continue for If EgtExistsInfo(nEnt, INFO_SIDE_FIXED) Then Continue For
' Recupero eventuali tallone ed angolo originale ' Recupero eventuali tallone ed angolo originale
Dim dHeel As Double = 0 Dim dHeel As Double = 0
Dim dSideAng As Double = 0 Dim dSideAng As Double = 0
EgtGetInfo(nEnt, INFO_HEEL, dHeel) EgtGetInfo(nEnt, INFO_HEEL, dHeel)
EgtGetInfo(nEnt, INFO_ORIG_SIDE_ANGLE, dSideAng) EgtGetInfo(nEnt, INFO_ORIG_SIDE_ANGLE, dSideAng)
' Se inclinazione con tallone
If Math.Abs(dSideAng) > EPS_ANG_SMALL And dHeel > 10 * EPS_SMALL Then If Math.Abs(dSideAng) > EPS_ANG_SMALL And dHeel > 10 * EPS_SMALL Then
' Angolo esterno ' Inclinazione esterna
If dSideAng > 0 Then If dSideAng > 0 Then
' Se tallone inferiore a spessore ' Se tallone inferiore a spessore
If dHeel < dTh - 10 * EPS_SMALL Then If dHeel < dTh - 10 * EPS_SMALL Then
EgtSetInfo(nEnt, INFO_SIDE_ANGLE, 0.0) EgtSetInfo(nEnt, INFO_SIDE_ANGLE, 0.0)
EgtSetInfo(nEnt, INFO_SIDE_ANGLE2, dSideAng) EgtSetInfo(nEnt, INFO_SIDE_ANGLE2, dSideAng)
EgtSetInfo(nEnt, INFO_OFFSET2, -(dTh - dHeel) * Math.Tan(dSideAng * Math.PI / 180)) If Not bSizeOnTop Then
EgtSetInfo(nEnt, INFO_OFFSET, 0)
EgtSetInfo(nEnt, INFO_OFFSET2, -(dTh - dHeel) * Math.Tan(dSideAng * Math.PI / 180))
Else
EgtSetInfo(nEnt, INFO_OFFSET, (dTh - dHeel) * Math.Tan(dSideAng * Math.PI / 180))
EgtSetInfo(nEnt, INFO_OFFSET2, 0)
End If
EgtSetInfo(nEnt, INFO_DEPTH2, (dTh - dHeel) + AGG_DEPTH) EgtSetInfo(nEnt, INFO_DEPTH2, (dTh - dHeel) + AGG_DEPTH)
' altrimenti, tallone superiore a spessore -> non c'è taglio inclinato EgtSetInfo(nEnt, INFO_AGG2, AGG_DEPTH)
' altrimenti, tallone superiore a spessore -> non c'è taglio inclinato
Else Else
EgtSetInfo(nEnt, INFO_SIDE_ANGLE, 0.0) EgtSetInfo(nEnt, INFO_SIDE_ANGLE, 0.0)
EgtSetInfo(nEnt, INFO_SIDE_ANGLE2, 0.0) EgtSetInfo(nEnt, INFO_SIDE_ANGLE2, 0.0)
EgtRemoveInfo(nEnt, INFO_OFFSET2) EgtRemoveInfo(nEnt, INFO_OFFSET2)
EgtRemoveInfo(nEnt, INFO_DEPTH2) EgtRemoveInfo(nEnt, INFO_DEPTH2)
EgtRemoveInfo(nEnt, INFO_AGG2)
End If End If
' Angolo interno ' Inclinazione interna
Else Else
' Se tallone inferiore a spessore ' Se tallone inferiore a spessore
If dHeel < dTh - 10 * EPS_SMALL Then If dHeel < dTh - 10 * EPS_SMALL Then
EgtSetInfo(nEnt, INFO_OFFSET, dHeel * Math.Tan(-dSideAng * Math.PI / 180)) EgtSetInfo(nEnt, INFO_OFFSET, dHeel * Math.Tan(-dSideAng * Math.PI / 180))
EgtSetInfo(nEnt, INFO_SIDE_ANGLE2, 0.0) EgtSetInfo(nEnt, INFO_SIDE_ANGLE2, 0.0)
EgtSetInfo(nEnt, INFO_DEPTH2, dHeel + AGG_DEPTH) EgtSetInfo(nEnt, INFO_DEPTH2, dHeel + AGG_DEPTH)
' altrimenti, tallone superiore a spessore -> non c'è taglio inclinato EgtSetInfo(nEnt, INFO_AGG2, AGG_DEPTH)
' altrimenti, tallone superiore a spessore -> non c'è taglio inclinato
Else Else
EgtSetInfo(nEnt, INFO_SIDE_ANGLE, 0.0) EgtSetInfo(nEnt, INFO_SIDE_ANGLE, 0.0)
EgtRemoveInfo(nEnt, INFO_OFFSET) EgtRemoveInfo(nEnt, INFO_OFFSET)
EgtRemoveInfo(nEnt, INFO_SIDE_ANGLE2) EgtRemoveInfo(nEnt, INFO_SIDE_ANGLE2)
EgtRemoveInfo(nEnt, INFO_DEPTH2) EgtRemoveInfo(nEnt, INFO_DEPTH2)
EgtRemoveInfo(nEnt, INFO_AGG2)
End If End If
End If End If
' Se altrimenti inclinazione esterna ' Se altrimenti inclinazione esterna
ElseIf dSideAng > EPS_ANG_SMALL Then ElseIf dSideAng > EPS_ANG_SMALL Then
EgtSetInfo(nEnt, INFO_OFFSET, -dTh * Math.Tan(dSideAng * Math.PI / 180)) If Not bSizeOnTop Then
EgtSetInfo(nEnt, INFO_OFFSET, -dTh * Math.Tan(dSideAng * Math.PI / 180))
Else
EgtSetInfo(nEnt, INFO_OFFSET, 0)
End If
End If End If
Next Next
Return True Return True
@@ -990,8 +1023,22 @@ Module EstCalc
Const STORE_DIST As Double = 200 Const STORE_DIST As Double = 200
' 40 il Font usato per indicare il numero di pezzi in parcheggio "# N" ' 40 il Font usato per indicare il numero di pezzi in parcheggio "# N"
Const STORE_OFFS As Double = 20 + 40 + 20 Const STORE_OFFS As Double = 20 + 40 + 20
Dim dStXmin As Double = b3Tab.Min().x - 0.5 * (STORE_LARGH - b3Tab.DimX()) Dim dStoreLarg As Double = GetPrivateProfileDouble("Store", "StoreLargh", STORE_LARGH, CurrentMachine.sMachIniFile)
Return EgtPackBox(nId, dStXmin, -INFINITO, dStXmin + STORE_LARGH, b3Tab.Min().y - STORE_DIST, STORE_OFFS, False) Dim dStoreDist As Double = GetPrivateProfileDouble("Store", "StoreDist", STORE_DIST, CurrentMachine.sMachIniFile)
Dim dStoreOffs As Double = GetPrivateProfileDouble("Store", "StoreOffs", STORE_OFFS, CurrentMachine.sMachIniFile)
Dim dStXmin As Double = b3Tab.Min().x - 0.5 * (dStoreLarg - b3Tab.DimX())
' Verifico che il pezzo ha una posizione salvata
Dim ptCenter As Point3d
If EgtGetInfo(nId, "PosInPark", ptCenter) Then
Dim ptCurrPos As Point3d
EgtCenterPoint(nId, GDB_ID.ROOT, ptCurrPos)
Dim vt As New Vector3d(ptCenter - ptCurrPos)
EgtMove(nId, vt, GDB_RT.GLOB)
Return True
End If
Return EgtPackBox(nId, dStXmin, -INFINITO, dStXmin + dStoreLarg, b3Tab.Min().y - dStoreDist, dStoreOffs, False)
End Function End Function
Friend Function VerifyPartsNesting(bReducedCut As Boolean) As Boolean Friend Function VerifyPartsNesting(bReducedCut As Boolean) As Boolean
+8 -13
View File
@@ -1,7 +1,7 @@
<Window x:Class="VeinMatchingWindow" <Window x:Class="VeinMatchingWindow"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Height="500" Width="500" ShowInTaskbar="False" Initialized="Window_Initialized" MinWidth="300" MinHeight="300"> Height="500" Width="500" ShowInTaskbar="False" Initialized="Window_Initialized" MinWidth="300" MinHeight="300">
<Grid Name="VeinMatchingGrid" Background="{StaticResource Omag_Gray}"> <Grid Name="VeinMatchingGrid" Background="{StaticResource Omag_Gray}">
<Grid.ColumnDefinitions> <Grid.ColumnDefinitions>
@@ -11,21 +11,16 @@
<StackPanel Orientation="Vertical"> <StackPanel Orientation="Vertical">
<ToggleButton Name="ShowTextBtn" Height="40" Width="80" <ToggleButton Name="ShowTextBtn" Height="40" Width="80"
Margin="0,5,0,0" Margin="0,5,0,0"/>
Content="ShowText"/>
<ToggleButton Name="EditBtn" Height="40" Width="80" <ToggleButton Name="EditBtn" Height="40" Width="80"
Margin="0,5,0,0" Margin="0,5,0,0"/>
Content="Edit"/>
<ToggleButton Name="VerifyBtn" Height="40" Width="80" <ToggleButton Name="VerifyBtn" Height="40" Width="80"
Margin="0,5,0,0" Margin="0,5,0,0"/>
Content="Verify"/>
<ToggleButton Name="MagneticBtn" Height="40" Width="80" <ToggleButton Name="MagneticBtn" Height="40" Width="80"
Visibility="Collapsed" Visibility="Collapsed"
Margin="0,5,0,0" Margin="0,5,0,0"/>
Content="Magnetic"/>
<Button Name="ExportBtn" Height="40" Width="80" <Button Name="ExportBtn" Height="40" Width="80"
Margin="0,5,0,0" Margin="0,5,0,0"/>
Content="Export"/>
<Button Name="AssemblyBtn" Height="40" Width="80" <Button Name="AssemblyBtn" Height="40" Width="80"
Margin="0,5,0,0" Margin="0,5,0,0"
Content="3D"/> Content="3D"/>
+5 -6
View File
@@ -1,7 +1,6 @@
Imports System.IO Imports System.IO
Imports System.Windows.Interop Imports System.Windows.Interop
Imports System.Collections.ObjectModel Imports System.Collections.ObjectModel
Imports System.Runtime.InteropServices
Imports EgtUILib Imports EgtUILib
Imports EgtWPFLib5 Imports EgtWPFLib5
Imports OmagOFFICE.VeinMatchingWindow Imports OmagOFFICE.VeinMatchingWindow
@@ -51,11 +50,11 @@ Public Class VeinMatchingWindow
' Per non farla visualizzare alla creazione ' Per non farla visualizzare alla creazione
Me.Left = 32000 Me.Left = 32000
' Assegno messaggi ' Assegno messaggi
ExportBtn.Content = EgtMsg(MSG_VEINMATCHING + 1) ' Esporta ExportBtn.Content = EgtMsg(91601) ' Esporta
ShowTextBtn.Content = EgtMsg(MSG_VEINMATCHING + 2) ' Mostra Info ShowTextBtn.Content = EgtMsg(91609) ' Mostra Info
EditBtn.Content = EgtMsg(MSG_VEINMATCHING + 3) ' Modifica EditBtn.Content = EgtMsg(91610) ' Modifica
VerifyBtn.Content = EgtMsg(MSG_VEINMATCHING + 4) ' Verifica VerifyBtn.Content = EgtMsg(91611) ' Verifica
MagneticBtn.Content = EgtMsg(MSG_VEINMATCHING + 5) ' Magnetico MagneticBtn.Content = EgtMsg(91612) ' Magnetico
End Sub End Sub
Private Sub Window_Loaded(sender As Object, e As RoutedEventArgs) Handles Me.Loaded Private Sub Window_Loaded(sender As Object, e As RoutedEventArgs) Handles Me.Loaded
+1 -1
View File
@@ -78,7 +78,7 @@ Public Class PrintPanelVM
tmpImg.Stretch = Stretch.Uniform tmpImg.Stretch = Stretch.Uniform
tmpImg.EndInit() tmpImg.EndInit()
' eseguo la stampa ' eseguo la stampa
printDlg.PrintVisual(tmpImg, "Parts Layout") printDlg.PrintVisual(tmpImg, EgtMsg(91688)) ' Parts Layout
Catch Catch
' Rrror in executing print ' Rrror in executing print
EgtOutLog(EgtMsg(50182)) EgtOutLog(EgtMsg(50182))
+2 -2
View File
@@ -576,13 +576,13 @@ Public Class MachOptionWindowVM
Public ReadOnly Property OkMsg As String Public ReadOnly Property OkMsg As String
Get Get
Return "Ok" Return EgtMsg(91651) ' Ok
End Get End Get
End Property End Property
Public ReadOnly Property CancelMsg As String Public ReadOnly Property CancelMsg As String
Get Get
Return "Cancel" Return EgtMsg(91652) ' Cancel
End Get End Get
End Property End Property
+8 -6
View File
@@ -9,17 +9,19 @@
Height="20" Width="150"/>--> Height="20" Width="150"/>-->
<Button Command="{Binding ToolDbCommand}" ToolTip="{Binding ToolDBToolTip}" Style="{StaticResource ToolBar_Button}"> <Button Command="{Binding ToolDbCommand}" ToolTip="{Binding ToolDBToolTip}" Style="{StaticResource ToolBar_Button}">
<Image Source="/Resources/NewIcons/DB-utensili.png" Stretch="Uniform"/> <Image Source="/Resources/NewIcons/DB-lavorazioni.png" Stretch="Uniform"/>
</Button> </Button>
<Button Command="{Binding MachDbCommand}" ToolTip="{Binding MachiningDbToolTip}" Style="{StaticResource ToolBar_Button}"> <Button Command="{Binding MachDbCommand}" ToolTip="{Binding MachiningDbToolTip}" Style="{StaticResource ToolBar_Button}">
<Image Source="/Resources/NewIcons/DB-lavorazioni.png" Stretch="UniformToFill"/> <Image Source="/Resources/NewIcons/DB-utensili.png" Stretch="UniformToFill"/>
</Button>
<Button Command="{Binding MachOptionsCommand}" ToolTip="{Binding OptionsToolTip}" Style="{StaticResource ToolBar_Button}">
<Image Source="/Resources/TopCommandBar/Options.png" Stretch="Uniform" />
</Button> </Button>
<Button Command="{Binding SetUpCommand}" ToolTip="{Binding SetUpToolTip}" Style="{StaticResource ToolBar_Button}"> <Button Command="{Binding SetUpCommand}" ToolTip="{Binding SetUpToolTip}" Style="{StaticResource ToolBar_Button}">
<Image Source="/Resources/NewIcons/ToolChangerPos.png" Stretch="Uniform" /> <Image Source="/Resources/NewIcons/ToolChangerPos.png" Stretch="Uniform" />
</Button> </Button>
<Button Command="{Binding WaterjetDbCommand}" ToolTip="{Binding WaterjetDbToolTip}" <Button Command="{Binding WaterjetDbCommand}" ToolTip="{Binding WaterjetDbToolTip}"
Style="{StaticResource ToolBar_TextButton}" Width="70" Content="{Binding WaterjetDbMsg}" Visibility="{Binding WjDb_Visibility}"/> Style="{StaticResource ToolBar_Button}" Visibility="{Binding WjDb_Visibility}">
<Image Source="/Resources/NewIcons/DB-WJ.png" Stretch="UniformToFill"/>
</Button>
<Button Command="{Binding MachOptionsCommand}" ToolTip="{Binding OptionsToolTip}" Style="{StaticResource ToolBar_Button}">
<Image Source="/Resources/TopCommandBar/Options.png" Stretch="Uniform" />
</Button>
</DockPanel> </DockPanel>
+39 -19
View File
@@ -105,7 +105,7 @@ Public Class MyMachinePanelVM
' procedo ad inizializzare la classe carico la lista "MachineList" che visualizzo per l'inserimento di nuovi MachGroup ' procedo ad inizializzare la classe carico la lista "MachineList" che visualizzo per l'inserimento di nuovi MachGroup
Machine.MachineListInit(sMchRoots, MachineList) Machine.MachineListInit(sMchRoots, MachineList)
' Inizializzo valori visibilità parametri Db utensili e lavorazioni ' Inizializzo valori visibilità parametri Db utensili e lavorazioni
OmagOFFICETMDbParamVisibility.Init() ' OmagOFFICETMDbParamVisibility.Init()
End Sub End Sub
''' <summary> ''' <summary>
@@ -148,8 +148,10 @@ Public Class MyMachinePanelVM
' Definisco lo stile della ComboBox ' Definisco lo stile della ComboBox
ToolDbWindowVM.BackgroundCmBxTxBl = DirectCast(New System.Windows.Media.BrushConverter().ConvertFromString("#1C1D22"), Brush) ToolDbWindowVM.BackgroundCmBxTxBl = DirectCast(New System.Windows.Media.BrushConverter().ConvertFromString("#1C1D22"), Brush)
ToolDbWindowVM.BackgroundListCmBxTxBl = DirectCast(New System.Windows.Media.BrushConverter().ConvertFromString("#1C1D22"), Brush)
ToolDbWindowVM.ForegroundCmBxTxBl = Brushes.White ToolDbWindowVM.ForegroundCmBxTxBl = Brushes.White
ToolDbWindowVM.BorderThicknessCmBxTxBl = 1.0 ToolDbWindowVM.BorderBrushCmBxTxBl = Brushes.Black
ToolDbWindowVM.BorderThicknessCmBxTxBl = New Thickness(1)
ToolDbWindowVM.VerticalContentAlignmentCmBxTxBl = "Center" ToolDbWindowVM.VerticalContentAlignmentCmBxTxBl = "Center"
ToolDbWindowVM.HeightCmBxTxBl = "25" ToolDbWindowVM.HeightCmBxTxBl = "25"
ToolDbWindowVM.WidthCmBxTxBl = "Auto" ToolDbWindowVM.WidthCmBxTxBl = "Auto"
@@ -159,7 +161,7 @@ Public Class MyMachinePanelVM
ToolDbWindowVM.BackgroundButton = DirectCast(New System.Windows.Media.BrushConverter().ConvertFromString("#1C1D22"), Brush) ToolDbWindowVM.BackgroundButton = DirectCast(New System.Windows.Media.BrushConverter().ConvertFromString("#1C1D22"), Brush)
ToolDbWindowVM.ForegroundButton = Brushes.White ToolDbWindowVM.ForegroundButton = Brushes.White
ToolDbWindowVM.BorderBrushButton = DirectCast(New System.Windows.Media.BrushConverter().ConvertFromString("#1C1D22"), Brush) ToolDbWindowVM.BorderBrushButton = DirectCast(New System.Windows.Media.BrushConverter().ConvertFromString("#1C1D22"), Brush)
ToolDbWindowVM.BorderThicknessButton = 1.0 ToolDbWindowVM.BorderThicknessButton = New Thickness(1)
''Definisco lo stile della DataGrid ''Definisco lo stile della DataGrid
'ToolDbWindowVM.HeaderVisibility = DataGridHeadersVisibility.Column 'ToolDbWindowVM.HeaderVisibility = DataGridHeadersVisibility.Column
@@ -210,9 +212,15 @@ Public Class MyMachinePanelVM
MessageBox.Show(EgtMsg(MSG_MACHININGDBERRORS + 8), EgtMsg(MSG_MESSAGEBOX + 1), MessageBoxButton.OK, MessageBoxImage.Error) MessageBox.Show(EgtMsg(MSG_MACHININGDBERRORS + 8), EgtMsg(MSG_MESSAGEBOX + 1), MessageBoxButton.OK, MessageBoxImage.Error)
Return Return
End If End If
EgtOutLog("Call function: Creazione oggetto MachDbWindowVM")
TimeSpanInit()
Dim MachDbWindowVM As New EgtWPFLib5.MachiningDbWindowVM(CurrentMachine.sMachIniFile, OmagOFFICEMap.refSceneHostVM.MainScene.GetCtx(), "Stone", OmagOFFICEMap.refMainWindowVM.MainWindowM.nUserLevel > 5) Dim MachDbWindowVM As New EgtWPFLib5.MachiningDbWindowVM(CurrentMachine.sMachIniFile, OmagOFFICEMap.refSceneHostVM.MainScene.GetCtx(), "Stone", OmagOFFICEMap.refMainWindowVM.MainWindowM.nUserLevel > 5)
' Dim MachDbWindowV As New EgtWPFLib5.MachiningDbWindowV(Application.Current.MainWindow, MachDbWindowVM) ' Dim MachDbWindowV As New EgtWPFLib5.MachiningDbWindowV(Application.Current.MainWindow, MachDbWindowVM)
EgtOutLog(TimeSpanEnd())
EgtOutLog("Call function: Aggiorna oggetto MachDbWindowVM")
TimeSpanInit()
MachDbWindowVM.bPersonalInterface = True MachDbWindowVM.bPersonalInterface = True
' Collegata allo stile della GroupBox ' Collegata allo stile della GroupBox
@@ -230,11 +238,14 @@ Public Class MyMachinePanelVM
MachDbWindowVM.ForegroundTxBlDisable = Brushes.White MachDbWindowVM.ForegroundTxBlDisable = Brushes.White
MachDbWindowVM.GeneralForeground = Brushes.White MachDbWindowVM.GeneralForeground = Brushes.White
MachDbWindowVM.GeneralBackground = DirectCast(New System.Windows.Media.BrushConverter().ConvertFromString("#1C1D22"), Brush) MachDbWindowVM.GeneralBackground = DirectCast(New System.Windows.Media.BrushConverter().ConvertFromString("#1C1D22"), Brush)
MachDbWindowVM.MyForegroundChColor = Brushes.White
' Definisco lo stile della ComboBox ' Definisco lo stile della ComboBox
MachDbWindowVM.BackgroundCmBxTxBl = DirectCast(New System.Windows.Media.BrushConverter().ConvertFromString("#1C1D22"), Brush) MachDbWindowVM.BackgroundCmBxTxBl = DirectCast(New System.Windows.Media.BrushConverter().ConvertFromString("#1C1D22"), Brush)
MachDbWindowVM.BackgroundListCmBxTxBl = DirectCast(New System.Windows.Media.BrushConverter().ConvertFromString("#1C1D22"), Brush)
MachDbWindowVM.ForegroundCmBxTxBl = Brushes.White MachDbWindowVM.ForegroundCmBxTxBl = Brushes.White
MachDbWindowVM.BorderThicknessCmBxTxBl = 1.0 MachDbWindowVM.BorderBrushCmBxTxBl = Brushes.Black
MachDbWindowVM.BorderThicknessCmBxTxBl = New Thickness(1)
MachDbWindowVM.VerticalContentAlignmentCmBxTxBl = "Center" MachDbWindowVM.VerticalContentAlignmentCmBxTxBl = "Center"
MachDbWindowVM.HeightCmBxTxBl = "25" MachDbWindowVM.HeightCmBxTxBl = "25"
MachDbWindowVM.WidthCmBxTxBl = "Auto" MachDbWindowVM.WidthCmBxTxBl = "Auto"
@@ -244,35 +255,44 @@ Public Class MyMachinePanelVM
MachDbWindowVM.BackgroundIsChecked = DirectCast(New System.Windows.Media.BrushConverter().ConvertFromString("#1C1D22"), Brush) MachDbWindowVM.BackgroundIsChecked = DirectCast(New System.Windows.Media.BrushConverter().ConvertFromString("#1C1D22"), Brush)
MachDbWindowVM.ForegroundIsChecked = Brushes.White MachDbWindowVM.ForegroundIsChecked = Brushes.White
MachDbWindowVM.BorderBrushIsChecked = DirectCast(New System.Windows.Media.BrushConverter().ConvertFromString("#1C1D22"), Brush) MachDbWindowVM.BorderBrushIsChecked = DirectCast(New System.Windows.Media.BrushConverter().ConvertFromString("#1C1D22"), Brush)
MachDbWindowVM.BorderThicknessIsChecked = 1.0 MachDbWindowVM.BorderThicknessIsChecked = New Thickness(1)
MachDbWindowVM.OpacityIsChecked = 0.25 MachDbWindowVM.OpacityIsChecked = 0.25
'Definisco lo stile della DataGrid 'Definisco lo stile della DataGrid
'MachDbWindowVM.HeaderVisibility = DataGridHeadersVisibility.Column MachDbWindowVM.HeaderVisibility = DataGridHeadersVisibility.Column
'MachDbWindowVM.BackgroundDataGrid = DirectCast(New System.Windows.Media.BrushConverter().ConvertFromString("#484D55"), Brush) MachDbWindowVM.BackgroundDataGrid = DirectCast(New System.Windows.Media.BrushConverter().ConvertFromString("#484D55"), Brush)
'MachDbWindowVM.BackGroundHeader = DirectCast(New System.Windows.Media.BrushConverter().ConvertFromString("#484D55"), Brush) MachDbWindowVM.BackGroundHeader = DirectCast(New System.Windows.Media.BrushConverter().ConvertFromString("#484D55"), Brush)
'MachDbWindowVM.ForegroundHeader = Brushes.White MachDbWindowVM.ForegroundHeader = Brushes.White
'MachDbWindowVM.BorderBrushHeader = DirectCast(New System.Windows.Media.BrushConverter().ConvertFromString("#1C1D22"), Brush) MachDbWindowVM.BorderBrushHeader = DirectCast(New System.Windows.Media.BrushConverter().ConvertFromString("#1C1D22"), Brush)
'MachDbWindowVM.BorderThicknessHeader = 0.0 MachDbWindowVM.BorderThicknessHeader = New Thickness(0)
'MachDbWindowVM.FontWeightHeader = FontWeights.Bold MachDbWindowVM.FontWeightHeader = FontWeights.Bold
'MachDbWindowVM.BorderBrushDataGrid = DirectCast(New System.Windows.Media.BrushConverter().ConvertFromString("#1C1D22"), Brush) MachDbWindowVM.BorderBrushDataGrid = DirectCast(New System.Windows.Media.BrushConverter().ConvertFromString("#1C1D22"), Brush)
'MachDbWindowVM.BackgroundDataGridRow = DirectCast(New System.Windows.Media.BrushConverter().ConvertFromString("#1C1D22"), Brush) MachDbWindowVM.BackgroundDataGridRow = DirectCast(New System.Windows.Media.BrushConverter().ConvertFromString("#1C1D22"), Brush)
'MachDbWindowVM.ForegroundDataGridRow = Brushes.White MachDbWindowVM.ForegroundDataGridRow = Brushes.White
'MachDbWindowVM.BorderBrushDataGridRow = Brushes.DarkGray MachDbWindowVM.BorderBrushDataGridRow = Brushes.DarkGray
'MachDbWindowVM.BorderThicknessDataGridRow = "0 0 0 1" MachDbWindowVM.BorderThicknessDataGridRow = New Thickness(0, 0, 0, 1)
'MachDbWindowVM.BorderBrushDataGridCell = Brushes.DarkGray MachDbWindowVM.BorderBrushDataGridCell = Brushes.DarkGray
'MachDbWindowVM.BorderThicknessDataGridCell = "0 0 1 0" MachDbWindowVM.BorderThicknessDataGridCell = New Thickness(0, 0, 1, 0)
EgtOutLog(TimeSpanEnd())
EgtOutLog("Call function: Creazione oggetto MachDbWindowV")
TimeSpanInit()
Dim MachDbWindowV As New MyMachiningDbWindowV(Application.Current.MainWindow, MachDbWindowVM) Dim MachDbWindowV As New MyMachiningDbWindowV(Application.Current.MainWindow, MachDbWindowVM)
If EgtWPFLib5.MachiningTreeViewItem.m_MatType <> 0 Then If EgtWPFLib5.MachiningTreeViewItem.m_MatType <> 0 Then
EgtOutLog("Call function: Visualizzazione oggetto MachDbWindowV")
TimeSpanInit()
MachDbWindowV.Height = 768 MachDbWindowV.Height = 768
MachDbWindowV.Width = 1024 MachDbWindowV.Width = 1024
MachDbWindowV.ShowDialog() MachDbWindowV.ShowDialog()
EgtOutLog(TimeSpanEnd())
Else Else
Exit Sub Exit Sub
End If End If
' Verifico che gli utensili delle lavorazioni correnti siano attrezzati (necessario perchè potrei aver cambiato gli utensili delle lavorazioni) ' Verifico che gli utensili delle lavorazioni correnti siano attrezzati (necessario perchè potrei aver cambiato gli utensili delle lavorazioni)
' e che le lavorazioni correnti siano compatibili con materiale e spessore ' e che le lavorazioni correnti siano compatibili con materiale e spessore
' Lama ' Lama
+10 -4
View File
@@ -219,12 +219,17 @@ Public Class MainWindowM
EgtUILib.GetPrivateProfileString( S_LICENCE, K_NESTKEY, "", sNestKey, sLicFile) EgtUILib.GetPrivateProfileString( S_LICENCE, K_NESTKEY, "", sNestKey, sLicFile)
EgtSetNestKey( sNestKey) EgtSetNestKey( sNestKey)
Dim bNetHwKey As Boolean = ( GetMainPrivateProfileInt(S_GENERAL, K_NETKEY, 0) = 1) Dim bNetHwKey As Boolean = ( GetMainPrivateProfileInt(S_GENERAL, K_NETKEY, 0) = 1)
EgtSetNetHwKey( bNetHwKey) EgtSetNetHwKey(bNetHwKey)
Dim sLockId As String = ""
EgtUILib.GetPrivateProfileString(S_LICENCE, K_LOCKID, "", sLockId, sLicFile)
If Not String.IsNullOrEmpty(sLockId) Then
EgtSetLockId(sLockId)
End If
' Verifico abilitazione nesting automatico ' Verifico abilitazione nesting automatico
m_bAutoNestOption = Not String.IsNullOrWhiteSpace( sNestKey) m_bAutoNestOption = Not String.IsNullOrWhiteSpace( sNestKey)
' Recupero livello e opzioni della chiave ' Recupero livello e opzioni della chiave
Dim bKey As Boolean = EgtGetKeyLevel(9423, 2509, 1, m_nKeyLevel) And Dim bKey As Boolean = EgtGetKeyLevel(9423, 2707, 1, m_nKeyLevel) And
EgtGetKeyOptions(9423, 2509, 1, m_nKeyOptions) EgtGetKeyOptions(9423, 2707, 1, m_nKeyOptions)
' Verifico abilitazione prodotto ' Verifico abilitazione prodotto
Dim bProd As Boolean = GetKeyOption(KEY_OPT.OFFICE_BASE) Dim bProd As Boolean = GetKeyOption(KEY_OPT.OFFICE_BASE)
' Inizializzazione generale di EgtInterface ' Inizializzazione generale di EgtInterface
@@ -286,7 +291,7 @@ Public Class MainWindowM
' Leggo nome cartella delle foto ' Leggo nome cartella delle foto
GetMainPrivateProfileString(S_GENERAL, K_PHOTODIR, sDataRoot & "\Data", m_sPhotoDir) GetMainPrivateProfileString(S_GENERAL, K_PHOTODIR, sDataRoot & "\Data", m_sPhotoDir)
' Creo connessione al Db ' Creo connessione al Db
If m_SlabDB And Not ManageDb.ConnectToDb(m_sPhotoDir & "\" & DB_FILENAME) Then If m_SlabDB AndAlso Not ManageDb.ConnectToDb(m_sPhotoDir & "\" & DB_FILENAME) Then
EgtOutLog("Error connecting to DB") EgtOutLog("Error connecting to DB")
MessageBox.Show(EgtMsg(92000 + 1), EgtMsg(MSG_EGTMSGBOX + 15), MessageBoxButton.OK, MessageBoxImage.Error) MessageBox.Show(EgtMsg(92000 + 1), EgtMsg(MSG_EGTMSGBOX + 15), MessageBoxButton.OK, MessageBoxImage.Error)
m_SlabDB = False m_SlabDB = False
@@ -294,6 +299,7 @@ Public Class MainWindowM
' Info su opzioni chiave ' Info su opzioni chiave
EgtOutLog("KeyOptions : " & bKey.ToString() & " " & m_nKeyOptions.ToString() & " " & bProd.ToString()) EgtOutLog("KeyOptions : " & bKey.ToString() & " " & m_nKeyOptions.ToString() & " " & bProd.ToString())
EgtPHOTOLib.MainData.SetConfigDir(m_sConfigDir) EgtPHOTOLib.MainData.SetConfigDir(m_sConfigDir)
EgtPHOTOLib.MainData.SetDebugLevel(m_nDebug)
EgtPHOTOLib.MainData.SetKeyLevel(m_nKeyLevel) EgtPHOTOLib.MainData.SetKeyLevel(m_nKeyLevel)
EgtPHOTOLib.MainData.SetKeyOptions(CInt(m_nKeyOptions)) EgtPHOTOLib.MainData.SetKeyOptions(CInt(m_nKeyOptions))
EgtPHOTOLib.MainData.SetPhotoDir(m_sPhotoDir) EgtPHOTOLib.MainData.SetPhotoDir(m_sPhotoDir)
+3 -3
View File
@@ -30,7 +30,7 @@ Imports System.Windows
#End If #End If
<Assembly: AssemblyCompany("Egalware s.r.l.")> <Assembly: AssemblyCompany("Egalware s.r.l.")>
<Assembly: AssemblyProduct("OmagOFFICE")> <Assembly: AssemblyProduct("OmagOFFICE")>
<Assembly: AssemblyCopyright("Copyright © 2017-2023 by Egalware s.r.l.")> <Assembly: AssemblyCopyright("Copyright © 2017-2025 by Egalware s.r.l.")>
<Assembly: AssemblyTrademark("")> <Assembly: AssemblyTrademark("")>
<Assembly: ComVisible(false)> <Assembly: ComVisible(false)>
'In order to begin building localizable applications, set 'In order to begin building localizable applications, set
@@ -69,6 +69,6 @@ Imports System.Windows
' by using the '*' as shown below: ' by using the '*' as shown below:
' <Assembly: AssemblyVersion("1.0.*")> ' <Assembly: AssemblyVersion("1.0.*")>
<Assembly: AssemblyVersion("2.5.9.5")> <Assembly: AssemblyVersion("2.7.7.1")>
<Assembly: AssemblyFileVersion("2.5.9.5")> <Assembly: AssemblyFileVersion("2.7.7.1")>
+5 -5
View File
@@ -351,11 +351,11 @@ Public Class MyMachGroup
If Not EgtGetInfo(Id, INFO_SLABHEIGHT, dSlabHeight) Then dSlabHeight = 0 If Not EgtGetInfo(Id, INFO_SLABHEIGHT, dSlabHeight) Then dSlabHeight = 0
Dim sCurrSawing As String = String.Empty Dim sCurrSawing As String = String.Empty
If Not EgtGetInfo(m_nOpersGroupId, INFO_CURRSAWING, sCurrSawing) Then sCurrSawing = "---" If Not EgtGetInfo(m_nOpersGroupId, INFO_CURRSAWING, sCurrSawing) Then sCurrSawing = "---"
Return "Name: " & sSlabName & Environment.NewLine & Return EgtMsg(91683) & sSlabName & Environment.NewLine & ' Name:
"Material: " & sMaterial & Environment.NewLine & EgtMsg(91684) & sMaterial & Environment.NewLine & ' Material:
"Thickness: " & LenToString(dSlabHeight, 3) & Environment.NewLine & EgtMsg(91685) & LenToString(dSlabHeight, 3) & Environment.NewLine & ' Thickness:
"Sawing: " & sCurrSawing & Environment.NewLine & EgtMsg(91686) & sCurrSawing & Environment.NewLine & ' Sawing:
"Machine: " & Machine EgtMsg(91687) & Machine ' Machine:
End Get End Get
End Property End Property
+154 -154
View File
@@ -12,199 +12,199 @@
CloseCommandParameter="{Binding Path=SelectedItem, ElementName=MachiningsTreeView}" CloseCommandParameter="{Binding Path=SelectedItem, ElementName=MachiningsTreeView}"
Height="900"> Height="900">
<EgtWPFLib5:EgtCustomWindow.InputBindings> <EgtWPFLib5:EgtCustomWindow.InputBindings>
<KeyBinding Key="Escape" Command="{Binding ReloadMachiningCommand}" <KeyBinding Key="Escape" Command="{Binding ReloadMachiningCommand}"
CommandParameter="{Binding Path=SelectedItem,ElementName=MachiningsTreeView}"/> CommandParameter="{Binding Path=SelectedItem,ElementName=MachiningsTreeView}"/>
</EgtWPFLib5:EgtCustomWindow.InputBindings> </EgtWPFLib5:EgtCustomWindow.InputBindings>
<EgtWPFLib5:EgtCustomWindow.Resources> <EgtWPFLib5:EgtCustomWindow.Resources>
<EgtWPFLib5:MachiningParamVisibilityConverter x:Key="MachiningParamVisibilityConverter"/> <!--<EgtWPFLib5:MachiningParamVisibilityConverter x:Key="MachiningParamVisibilityConverter"/>-->
<EgtWPFLib5:DepthUnitConverter x:Key="DepthUnitConverter"/> <EgtWPFLib5:DepthUnitConverter x:Key="DepthUnitConverter"/>
<EgtWPFLib5:ErrorVisibilityConverter x:Key="ErrorVisibilityConverter"/> <EgtWPFLib5:ErrorVisibilityConverter x:Key="ErrorVisibilityConverter"/>
<sys:Int32 x:Key="Invert">0</sys:Int32> <sys:Int32 x:Key="Invert">0</sys:Int32>
<sys:Int32 x:Key="LeaveTab">1</sys:Int32> <sys:Int32 x:Key="LeaveTab">1</sys:Int32>
<sys:Int32 x:Key="WorkSide">2</sys:Int32> <sys:Int32 x:Key="WorkSide">2</sys:Int32>
<sys:Int32 x:Key="HeadSide">3</sys:Int32> <sys:Int32 x:Key="HeadSide">3</sys:Int32>
<sys:Int32 x:Key="LeadInType">4</sys:Int32> <sys:Int32 x:Key="LeadInType">4</sys:Int32>
<sys:Int32 x:Key="ExtLinkType">5</sys:Int32> <sys:Int32 x:Key="ExtLinkType">5</sys:Int32>
<sys:Int32 x:Key="LeadOutType">6</sys:Int32> <sys:Int32 x:Key="LeadOutType">6</sys:Int32>
<sys:Int32 x:Key="CurveUse">7</sys:Int32> <sys:Int32 x:Key="CurveUse">7</sys:Int32>
<sys:Int32 x:Key="StepType">8</sys:Int32> <sys:Int32 x:Key="StepType">8</sys:Int32>
<sys:Int32 x:Key="LeadLinkType">9</sys:Int32> <sys:Int32 x:Key="LeadLinkType">9</sys:Int32>
<sys:Int32 x:Key="Speed">10</sys:Int32> <sys:Int32 x:Key="Speed">10</sys:Int32>
<sys:Int32 x:Key="Feed">11</sys:Int32> <sys:Int32 x:Key="Feed">11</sys:Int32>
<sys:Int32 x:Key="StartFeed">12</sys:Int32> <sys:Int32 x:Key="StartFeed">12</sys:Int32>
<sys:Int32 x:Key="EndFeed">13</sys:Int32> <sys:Int32 x:Key="EndFeed">13</sys:Int32>
<sys:Int32 x:Key="TipFeed">14</sys:Int32> <sys:Int32 x:Key="TipFeed">14</sys:Int32>
<sys:Int32 x:Key="OffSr">15</sys:Int32> <sys:Int32 x:Key="OffSr">15</sys:Int32>
<sys:Int32 x:Key="OffSl">16</sys:Int32> <sys:Int32 x:Key="OffSl">16</sys:Int32>
<sys:Int32 x:Key="SideAngle">17</sys:Int32> <sys:Int32 x:Key="SideAngle">17</sys:Int32>
<sys:Int32 x:Key="Approx">18</sys:Int32> <sys:Int32 x:Key="Approx">18</sys:Int32>
<sys:Int32 x:Key="StartPos">19</sys:Int32> <sys:Int32 x:Key="StartPos">19</sys:Int32>
<sys:Int32 x:Key="StartSlowLen">20</sys:Int32> <sys:Int32 x:Key="StartSlowLen">20</sys:Int32>
<sys:Int32 x:Key="EndSlowLen">21</sys:Int32> <sys:Int32 x:Key="EndSlowLen">21</sys:Int32>
<sys:Int32 x:Key="ThrouAddLen">22</sys:Int32> <sys:Int32 x:Key="ThrouAddLen">22</sys:Int32>
<sys:Int32 x:Key="StepPar">23</sys:Int32> <sys:Int32 x:Key="StepPar">23</sys:Int32>
<sys:Int32 x:Key="ReturnPos">24</sys:Int32> <sys:Int32 x:Key="ReturnPos">24</sys:Int32>
<sys:Int32 x:Key="TabLen">25</sys:Int32> <sys:Int32 x:Key="TabLen">25</sys:Int32>
<sys:Int32 x:Key="TabDist">26</sys:Int32> <sys:Int32 x:Key="TabDist">26</sys:Int32>
<sys:Int32 x:Key="TabHeight">27</sys:Int32> <sys:Int32 x:Key="TabHeight">27</sys:Int32>
<sys:Int32 x:Key="TabAngle">28</sys:Int32> <sys:Int32 x:Key="TabAngle">28</sys:Int32>
<sys:Int32 x:Key="LiTang">29</sys:Int32> <sys:Int32 x:Key="LiTang">29</sys:Int32>
<sys:Int32 x:Key="LiPerp">30</sys:Int32> <sys:Int32 x:Key="LiPerp">30</sys:Int32>
<sys:Int32 x:Key="LiElev">31</sys:Int32> <sys:Int32 x:Key="LiElev">31</sys:Int32>
<sys:Int32 x:Key="LiCompLen">32</sys:Int32> <sys:Int32 x:Key="LiCompLen">32</sys:Int32>
<sys:Int32 x:Key="LoTang">33</sys:Int32> <sys:Int32 x:Key="LoTang">33</sys:Int32>
<sys:Int32 x:Key="LoPerp">34</sys:Int32> <sys:Int32 x:Key="LoPerp">34</sys:Int32>
<sys:Int32 x:Key="LoElev">35</sys:Int32> <sys:Int32 x:Key="LoElev">35</sys:Int32>
<sys:Int32 x:Key="LoCompLen">36</sys:Int32> <sys:Int32 x:Key="LoCompLen">36</sys:Int32>
<sys:Int32 x:Key="StartAddLen">37</sys:Int32> <sys:Int32 x:Key="StartAddLen">37</sys:Int32>
<sys:Int32 x:Key="EndAddLen">38</sys:Int32> <sys:Int32 x:Key="EndAddLen">38</sys:Int32>
<sys:Int32 x:Key="StepExtArc">39</sys:Int32> <sys:Int32 x:Key="StepExtArc">39</sys:Int32>
<sys:Int32 x:Key="StepIntArc">40</sys:Int32> <sys:Int32 x:Key="StepIntArc">40</sys:Int32>
<sys:Int32 x:Key="SideStep">41</sys:Int32> <sys:Int32 x:Key="SideStep">41</sys:Int32>
<sys:Int32 x:Key="VertFeed">42</sys:Int32> <sys:Int32 x:Key="VertFeed">42</sys:Int32>
<sys:Int32 x:Key="NamePar">43</sys:Int32> <sys:Int32 x:Key="NamePar">43</sys:Int32>
<sys:Int32 x:Key="Tool">44</sys:Int32> <sys:Int32 x:Key="Tool">44</sys:Int32>
<sys:Int32 x:Key="DepthStr">45</sys:Int32> <sys:Int32 x:Key="DepthStr">45</sys:Int32>
<sys:Int32 x:Key="UserNotes">46</sys:Int32> <sys:Int32 x:Key="UserNotes">46</sys:Int32>
<sys:Int32 x:Key="OverLap">47</sys:Int32> <sys:Int32 x:Key="OverLap">47</sys:Int32>
<sys:Int32 x:Key="SubType">49</sys:Int32> <sys:Int32 x:Key="SubType">49</sys:Int32>
<sys:Int32 x:Key="SelectedSolChoiceType">50</sys:Int32> <sys:Int32 x:Key="SelectedSolChoiceType">50</sys:Int32>
<sys:Int32 x:Key="AxRotRef">51</sys:Int32> <sys:Int32 x:Key="AxRotRef">51</sys:Int32>
<sys:Int32 x:Key="BlockedAxesRef">52</sys:Int32> <sys:Int32 x:Key="BlockedAxesRef">52</sys:Int32>
<sys:Int32 x:Key="FaceUseType">53</sys:Int32> <sys:Int32 x:Key="FaceUseType">53</sys:Int32>
<sys:Int32 x:Key="InvertToolDir">54</sys:Int32> <sys:Int32 x:Key="InvertToolDir">54</sys:Int32>
<sys:Int32 x:Key="StepBack">55</sys:Int32> <sys:Int32 x:Key="StepBack">55</sys:Int32>
<sys:Int32 x:Key="StepSideAngBack">56</sys:Int32> <sys:Int32 x:Key="StepSideAngBack">56</sys:Int32>
<sys:Int32 x:Key="BackFeed">57</sys:Int32> <sys:Int32 x:Key="BackFeed">57</sys:Int32>
<sys:Int32 x:Key="StepSideAng">58</sys:Int32> <sys:Int32 x:Key="StepSideAng">58</sys:Int32>
<sys:Int32 x:Key="ForwardAngle">59</sys:Int32> <sys:Int32 x:Key="ForwardAngle">59</sys:Int32>
<sys:Int32 x:Key="Probing">60</sys:Int32> <sys:Int32 x:Key="Probing">60</sys:Int32>
<sys:Int32 x:Key="ProbingMinDist">61</sys:Int32> <sys:Int32 x:Key="ProbingMinDist">61</sys:Int32>
<sys:Int32 x:Key="ProbingMaxDist">62</sys:Int32> <sys:Int32 x:Key="ProbingMaxDist">62</sys:Int32>
<sys:Int32 x:Key="ExtCornType">63</sys:Int32> <sys:Int32 x:Key="ExtCornType">63</sys:Int32>
<sys:Int32 x:Key="IntCornType">64</sys:Int32> <sys:Int32 x:Key="IntCornType">64</sys:Int32>
<sys:Int32 x:Key="CornSlowLen">65</sys:Int32> <sys:Int32 x:Key="CornSlowLen">65</sys:Int32>
<sys:Int32 x:Key="CornSlowPerc">66</sys:Int32> <sys:Int32 x:Key="CornSlowPerc">66</sys:Int32>
<sys:Int32 x:Key="LiHole">67</sys:Int32> <sys:Int32 x:Key="LiHole">67</sys:Int32>
<sys:Int32 x:Key="LiHoleRad">68</sys:Int32> <sys:Int32 x:Key="LiHoleRad">68</sys:Int32>
<sys:Int32 x:Key="LpTurns">69</sys:Int32> <sys:Int32 x:Key="LpTurns">69</sys:Int32>
<sys:Int32 x:Key="HpTurns">70</sys:Int32> <sys:Int32 x:Key="HpTurns">70</sys:Int32>
<sys:Int32 x:Key="ThicknessFeed">71</sys:Int32> <sys:Int32 x:Key="ThicknessFeed">71</sys:Int32>
<SolidColorBrush x:Key="ListBorder" Color="#828790"/> <SolidColorBrush x:Key="ListBorder" Color="#828790"/>
</EgtWPFLib5:EgtCustomWindow.Resources> </EgtWPFLib5:EgtCustomWindow.Resources>
<Grid Background="Transparent"> <Grid Background="Transparent">
<Grid.ColumnDefinitions> <Grid.ColumnDefinitions>
<ColumnDefinition Width="0.95*"/> <ColumnDefinition Width="0.95*"/>
<ColumnDefinition Width="2*"/> <ColumnDefinition Width="2*"/>
<ColumnDefinition Width="1*"/> <ColumnDefinition Width="1*"/>
</Grid.ColumnDefinitions> </Grid.ColumnDefinitions>
<Grid Background="Transparent"> <Grid Background="Transparent">
<Grid.RowDefinitions> <Grid.RowDefinitions>
<RowDefinition Height="0.75*"/> <RowDefinition Height="0.75*"/>
<RowDefinition Height="12*"/> <RowDefinition Height="12*"/>
</Grid.RowDefinitions> </Grid.RowDefinitions>
<UniformGrid Grid.Row="0" Columns="8"> <UniformGrid Grid.Row="0" Columns="8">
<Button ToolTip="New" Command="{Binding NewCommand}" <Button ToolTip="New" Command="{Binding NewCommand}"
CommandParameter="{Binding Path=SelectedItem, ElementName=MachiningsTreeView}" CommandParameter="{Binding Path=SelectedItem, ElementName=MachiningsTreeView}"
IsEnabled="{Binding IsEnabledNewBtn, Mode=OneWay}" IsEnabled="{Binding IsEnabledNewBtn, Mode=OneWay}"
Style = "{DynamicResource MachiningDB_Button}"> Style = "{DynamicResource MachiningDB_Button}">
<Image Source="/Resources/TopCommandBar/New.png" Stretch="Uniform"/> <Image Source="/Resources/TopCommandBar/New.png" Stretch="Uniform"/>
</Button> </Button>
<Button ToolTip="Save" Command="{Binding SaveCommand}" <Button ToolTip="Save" Command="{Binding SaveCommand}"
CommandParameter="{Binding Path=SelectedItem, ElementName=MachiningsTreeView}" CommandParameter="{Binding Path=SelectedItem, ElementName=MachiningsTreeView}"
IsEnabled="{Binding IsEnabledSaveBtn, Mode=OneWay}" IsEnabled="{Binding IsEnabledSaveBtn, Mode=OneWay}"
Style = "{DynamicResource MachiningDB_Button}"> Style = "{DynamicResource MachiningDB_Button}">
<Image Source="/Resources/TopCommandBar/Save.png" Stretch="Uniform"/> <Image Source="/Resources/TopCommandBar/Save.png" Stretch="Uniform"/>
</Button> </Button>
<Button ToolTip="Remove" Command="{Binding RemoveCommand}" <Button ToolTip="Remove" Command="{Binding RemoveCommand}"
CommandParameter="{Binding Path=SelectedItem, ElementName=MachiningsTreeView}" CommandParameter="{Binding Path=SelectedItem, ElementName=MachiningsTreeView}"
IsEnabled="{Binding IsEnabledRemoveBtn, Mode=OneWay}" IsEnabled="{Binding IsEnabledRemoveBtn, Mode=OneWay}"
Style = "{DynamicResource MachiningDB_Button}"> Style = "{DynamicResource MachiningDB_Button}">
<Image Source="/Resources/TopCommandBar/Remove.png" Stretch="Uniform"/> <Image Source="/Resources/TopCommandBar/Remove.png" Stretch="Uniform"/>
</Button> </Button>
<Button ToolTip="Import" Command="{Binding ImportCommand}" <Button ToolTip="Import" Command="{Binding ImportCommand}"
CommandParameter="{Binding Path=SelectedItem, ElementName=MachiningsTreeView}" CommandParameter="{Binding Path=SelectedItem, ElementName=MachiningsTreeView}"
IsEnabled="{Binding IsEnabledNewBtn, Mode=OneWay}" IsEnabled="{Binding IsEnabledNewBtn, Mode=OneWay}"
Style = "{DynamicResource MachiningDB_Button}"> Style = "{DynamicResource MachiningDB_Button}">
<Image Source="/Resources/TopCommandBar/Import.png" Stretch="Uniform"/> <Image Source="/Resources/TopCommandBar/Import.png" Stretch="Uniform"/>
</Button> </Button>
<Button ToolTip="Export" Command="{Binding ExportCommand}" <Button ToolTip="Export" Command="{Binding ExportCommand}"
CommandParameter="{Binding Path=SelectedItem, ElementName=MachiningsTreeView}" CommandParameter="{Binding Path=SelectedItem, ElementName=MachiningsTreeView}"
IsEnabled="{Binding IsEnabledSaveBtn, Mode=OneWay}" IsEnabled="{Binding IsEnabledSaveBtn, Mode=OneWay}"
Style = "{DynamicResource MachiningDB_Button}"> Style = "{DynamicResource MachiningDB_Button}">
<Image Source="/Resources/TopCommandBar/Export_1.png" Stretch="Uniform"/> <Image Source="/Resources/TopCommandBar/Export_1.png" Stretch="Uniform"/>
</Button> </Button>
<Button ToolTip="Reset" Command="{Binding ReloadMachiningCommand}" <Button ToolTip="Reset" Command="{Binding ReloadMachiningCommand}"
CommandParameter="{Binding Path=SelectedItem, ElementName=MachiningsTreeView}" CommandParameter="{Binding Path=SelectedItem, ElementName=MachiningsTreeView}"
IsEnabled="{Binding IsEnabledRemoveBtn, Mode=OneWay}" IsEnabled="{Binding IsEnabledRemoveBtn, Mode=OneWay}"
Style = "{DynamicResource MachiningDB_Button}"> Style = "{DynamicResource MachiningDB_Button}">
<Image Source="/Resources/TopCommandBar/Reset.png" Stretch="Uniform"/> <Image Source="/Resources/TopCommandBar/Reset.png" Stretch="Uniform"/>
</Button> </Button>
</UniformGrid> </UniformGrid>
<TreeView Name="MachiningsTreeView" Grid.Row="1" <TreeView Name="MachiningsTreeView" Grid.Row="1"
Background="Transparent" BorderThickness="0" Background="Transparent" BorderThickness="0"
ItemsSource="{Binding Path=MachiningsList}"> ItemsSource="{Binding Path=MachiningsList}">
<TreeView.ItemContainerStyle> <TreeView.ItemContainerStyle>
<Style TargetType="{x:Type TreeViewItem}"> <Style TargetType="{x:Type TreeViewItem}" BasedOn="{StaticResource Db_TreeViewItem}">
<Setter Property="FontSize" Value="10" /> <Setter Property="FontSize" Value="10" />
<Setter Property="Foreground" Value="{StaticResource Omag_White}" /> <Setter Property="Foreground" Value="{StaticResource Omag_White}" />
<Setter Property="IsSelected" Value="{Binding IsSelected, Mode=TwoWay}" /> <Setter Property="IsSelected" Value="{Binding IsSelected, Mode=TwoWay}" />
<Setter Property="IsExpanded" Value="{Binding IsExpanded, Mode=TwoWay}" /> <Setter Property="IsExpanded" Value="{Binding IsExpanded, Mode=TwoWay}" />
<Setter Property="IsEnabled" Value="{Binding IsEnabled, Mode=TwoWay}" /> <Setter Property="IsEnabled" Value="{Binding IsEnabled, Mode=TwoWay}" />
</Style> </Style>
</TreeView.ItemContainerStyle> </TreeView.ItemContainerStyle>
<TreeView.Resources> <TreeView.Resources>
<HierarchicalDataTemplate DataType="{x:Type EgtWPFLib5:FamilyMachiningTreeViewItem}" ItemsSource="{Binding Items}"> <HierarchicalDataTemplate DataType="{x:Type EgtWPFLib5:FamilyMachiningTreeViewItem}" ItemsSource="{Binding Items}">
<Grid Background="Transparent"> <Grid Background="Transparent">
<Grid.ColumnDefinitions> <Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto"/> <ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="1*"/> <ColumnDefinition Width="1*"/>
<ColumnDefinition Width="Auto"/> <ColumnDefinition Width="Auto"/>
</Grid.ColumnDefinitions> </Grid.ColumnDefinitions>
<Image Grid.Column="0" Source="{Binding PictureString}" Height="32" Width="32" Margin="0" /> <Image Grid.Column="0" Source="{Binding PictureString}" Height="32" Width="32" Margin="0" />
<TextBlock Grid.Column="1" Text="{Binding Name}" FontSize="15" Margin="5,0,10,0" VerticalAlignment="Center" HorizontalAlignment="left" /> <TextBlock Grid.Column="1" Text="{Binding Name}" FontSize="15" Margin="5,0,10,0" VerticalAlignment="Center" HorizontalAlignment="left" />
<Ellipse Grid.Column="2" Height="10" Width="10" Fill="{Binding FamilyColor}" /> <Ellipse Grid.Column="2" Height="10" Width="10" Fill="{Binding FamilyColor}" />
</Grid> </Grid>
</HierarchicalDataTemplate> </HierarchicalDataTemplate>
<DataTemplate DataType="{x:Type EgtWPFLib5:MachiningTreeViewItem}">
<Grid Background="Transparent">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="1*"/>
<ColumnDefinition Width="Auto"/>
</Grid.ColumnDefinitions>
<!--<Image Grid.Column="0" Source="{Binding PictureString}" Height="32" Margin="0,8,6,4" />--> <DataTemplate DataType="{x:Type EgtWPFLib5:MachiningTreeViewItem}">
<TextBlock Grid.Column="1" Text="{Binding NamePar}" Height="21" FontSize="13" Margin="30,0,10,0" <Grid Background="Transparent">
<Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="1*"/>
<ColumnDefinition Width="Auto"/>
</Grid.ColumnDefinitions>
<!--<Image Grid.Column="0" Source="{Binding PictureString}" Height="32" Margin="0,8,6,4" />-->
<TextBlock Grid.Column="1" Text="{Binding NamePar}" Height="21" FontSize="13" Margin="30,0,10,0"
VerticalAlignment="Center" HorizontalAlignment="left"/> VerticalAlignment="Center" HorizontalAlignment="left"/>
<Ellipse Grid.Column="2" Height="10" Width="10" Fill="{Binding ToolColor}" /> <Ellipse Grid.Column="2" Height="10" Width="10" Fill="{Binding ToolColor}" />
</Grid> </Grid>
</DataTemplate> </DataTemplate>
</TreeView.Resources> </TreeView.Resources>
</TreeView>
</Grid> </TreeView>
<ContentControl Content="{Binding ParamPageV}" Grid.Column="1" Grid.ColumnSpan="2"/>
</Grid> </Grid>
<ContentControl Content="{Binding ParamPageV}" Grid.Column="1" Grid.ColumnSpan="2"/>
</Grid>
</EgtWPFLib5:EgtCustomWindow> </EgtWPFLib5:EgtCustomWindow>
+31 -5
View File
@@ -47,12 +47,27 @@ Public Class MySceneHostVM
' Problemi ' Problemi
' Se manca la chiave ' Se manca la chiave
If OmagOFFICEMap.refMainWindowVM.MainWindowM.nKeyLevel = -1 Or OmagOFFICEMap.refMainWindowVM.MainWindowM.nKeyLevel = -2 Then If OmagOFFICEMap.refMainWindowVM.MainWindowM.nKeyLevel = -1 Or OmagOFFICEMap.refMainWindowVM.MainWindowM.nKeyLevel = -2 Then
EgtOutLog("Missing Dongle") If Not EgtGetNetHwKey() Then
' Box di avviso chiave mancante : "Chiave non presente. \n Inserirla e riavviare il programma." "Errore" EgtOutLog("Missing Dongle")
Dim sText As String = EgtMsg(MSG_MISSINGKEYWD + 2) & vbCrLf & EgtMsg(MSG_MISSINGKEYWD + 3) ' Box di avviso chiave mancante : "Chiave non presente. \nInserirla e riavviare il programma." "Errore"
Dim sTitle As String = EgtMsg(MSG_MISSINGKEYWD + 1) Dim sText As String = EgtMsg(10102) & vbCrLf & EgtMsg(10103)
Dim sTitle As String = EgtMsg(10101)
MessageBox.Show(sText, sTitle, MessageBoxButton.OK, MessageBoxImage.Error)
Else
EgtOutLog("NetDongle is full")
' Box di avviso slot chiave di rete occupato : "Chiave di Rete completamente occupata. \n Uscire dal programma su un altro PC." "Errore"
Dim sText As String = EgtMsg(10110) & vbCrLf & EgtMsg(10111)
Dim sTitle As String = EgtMsg(10101)
MessageBox.Show(sText, sTitle, MessageBoxButton.OK, MessageBoxImage.Error)
End If
' Se altrimenti manca il collegamento con la chiave di rete
ElseIf OmagOFFICEMap.refMainWindowVM.MainWindowM.nKeyLevel = -9 Then
EgtOutLog("Missing Link with Net Dongle")
' Box di avviso chiave mancante : "Collegamento con la Chiave di rete non riuscito. \n Verificare la connessione." "Errore"
Dim sText As String = EgtMsg(10108) & vbCrLf & EgtMsg(10109)
Dim sTitle As String = EgtMsg(10101)
MessageBox.Show(sText, sTitle, MessageBoxButton.OK, MessageBoxImage.Error) MessageBox.Show(sText, sTitle, MessageBoxButton.OK, MessageBoxImage.Error)
' Altrimenti manca la licenza ' Altrimenti manca la licenza
Else Else
EgtOutLog("Problems with Licence") EgtOutLog("Problems with Licence")
' Box di avviso licenza con problemi : "Programma senza licenza. \n Caricala e riavvia il programma." "Errore" ' Box di avviso licenza con problemi : "Programma senza licenza. \n Caricala e riavvia il programma." "Errore"
@@ -87,12 +102,14 @@ Public Class MySceneHostVM
Public Overrides Sub InitSceneEvents() Public Overrides Sub InitSceneEvents()
AddHandler MainScene.OnMouseDownScene, AddressOf OnMouseDownScene AddHandler MainScene.OnMouseDownScene, AddressOf OnMouseDownScene
'AddHandler OnMouseDownScene_DoubleClick_1, AddressOf OnMouseDownScene_DoubleClick
AddHandler MainScene.OnMouseMoveScene, AddressOf OnMouseMoveScene AddHandler MainScene.OnMouseMoveScene, AddressOf OnMouseMoveScene
AddHandler MainScene.OnMouseUpScene, AddressOf OnMouseUpScene AddHandler MainScene.OnMouseUpScene, AddressOf OnMouseUpScene
AddHandler MainScene.KeyDown, AddressOf OnKeyDownScene AddHandler MainScene.KeyDown, AddressOf OnKeyDownScene
AddHandler MainScene.OnCursorPos, AddressOf OnCursorPos AddHandler MainScene.OnCursorPos, AddressOf OnCursorPos
AddHandler MainScene.OnShowDistance, AddressOf OnShowDistance AddHandler MainScene.OnShowDistance, AddressOf OnShowDistance
AddHandler MainScene.OnChangedSnapPointType, AddressOf OnChangedSnapPointType AddHandler MainScene.OnChangedSnapPointType, AddressOf OnChangedSnapPointType
End Sub End Sub
Private Sub PreInitializeScene() Private Sub PreInitializeScene()
@@ -719,6 +736,8 @@ Public Class MySceneHostVM
End Sub End Sub
Private Sub OnSavingProject(ByVal sender As Object, sFile As String) Private Sub OnSavingProject(ByVal sender As Object, sFile As String)
' Salvo le info del progetto
TopCommandBarVM.SetInfoProj(sFile)
' Recupero tutti i file di texture associabili ai gruppi di lavoro del progetto ' Recupero tutti i file di texture associabili ai gruppi di lavoro del progetto
Dim sDirToSearch As String = Path.GetDirectoryName(sFile) Dim sDirToSearch As String = Path.GetDirectoryName(sFile)
Dim sFileToSearch As String = Path.GetFileNameWithoutExtension(sFile) & "." & PHOTO_NAME & "*" Dim sFileToSearch As String = Path.GetFileNameWithoutExtension(sFile) & "." & PHOTO_NAME & "*"
@@ -792,6 +811,13 @@ Public Class MySceneHostVM
Private Sub OnMouseDownScene(sender As Object, e As Windows.Forms.MouseEventArgs) Private Sub OnMouseDownScene(sender As Object, e As Windows.Forms.MouseEventArgs)
' Si può selezionare solo con il tasto sinistro e se stato NULL ' Si può selezionare solo con il tasto sinistro e se stato NULL
If e.Button <> Windows.Forms.MouseButtons.Left Or Not MainScene.IsStatusNull() Then Return If e.Button <> Windows.Forms.MouseButtons.Left Or Not MainScene.IsStatusNull() Then Return
If e.Clicks > 1 Then
Select Case OmagOFFICEMap.refOptionPanelVM.SelItem
Case OptionPanelVM.Tabs.MACHINING
OmagOFFICEMap.refMachiningTabVM.OnMouseDownScene_DoubleClick(sender, e)
Case OptionPanelVM.Tabs.SIMUL
End Select
End If
' Chiamo l'opportuno gestore ' Chiamo l'opportuno gestore
Select Case OmagOFFICEMap.refOptionPanelVM.SelItem Select Case OmagOFFICEMap.refOptionPanelVM.SelItem
Case OptionPanelVM.Tabs.RAWPART Case OptionPanelVM.Tabs.RAWPART
+140 -140
View File
@@ -1,165 +1,165 @@
<EgtWPFLib5:EgtCustomWindow x:Class="MyToolDbWindowV" <EgtWPFLib5:EgtCustomWindow x:Class="MyToolDbWindowV"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:sys="clr-namespace:System;assembly=mscorlib" xmlns:sys="clr-namespace:System;assembly=mscorlib"
xmlns:EgtWPFLib5="clr-namespace:EgtWPFLib5;assembly=EgtWPFLib5" xmlns:EgtWPFLib5="clr-namespace:EgtWPFLib5;assembly=EgtWPFLib5"
Title="{Binding Title}" Title="{Binding Title}"
Style="{DynamicResource {x:Type EgtWPFLib5:EgtCustomWindow}}" Style="{DynamicResource {x:Type EgtWPFLib5:EgtCustomWindow}}"
WindowStyle="None" ResizeMode="NoResize" TitleBarHeight="30" IsResizable="False" WindowStyle="None" ResizeMode="NoResize" TitleBarHeight="30" IsResizable="False"
IsMinimizable="False" WindowStartupLocation="CenterOwner" ShowInTaskbar="False" IsMinimizable="False" WindowStartupLocation="CenterOwner" ShowInTaskbar="False"
CloseCommand="{Binding CloseToolsDbCommand,Mode=OneWay,UpdateSourceTrigger=PropertyChanged}" CloseCommand="{Binding CloseToolsDbCommand,Mode=OneWay,UpdateSourceTrigger=PropertyChanged}"
CloseCommandParameter="{Binding Path=SelectedItem, ElementName=ToolsTreeView}" CloseCommandParameter="{Binding Path=SelectedItem, ElementName=ToolsTreeView}"
Height="900"> Height="900">
<EgtWPFLib5:EgtCustomWindow.InputBindings> <EgtWPFLib5:EgtCustomWindow.InputBindings>
<KeyBinding Key="Escape" Command="{Binding ReloadToolCommand}" <KeyBinding Key="Escape" Command="{Binding ReloadToolCommand}"
CommandParameter="{Binding Path=SelectedItem,ElementName=ToolsTreeView}"/> CommandParameter="{Binding Path=SelectedItem,ElementName=ToolsTreeView}"/>
</EgtWPFLib5:EgtCustomWindow.InputBindings> </EgtWPFLib5:EgtCustomWindow.InputBindings>
<EgtWPFLib5:EgtCustomWindow.Resources> <EgtWPFLib5:EgtCustomWindow.Resources>
<EgtWPFLib5:ToolParamVisibilityConverter x:Key="ToolParamVisibilityConverter"/> <!--<EgtWPFLib5:ToolParamVisibilityConverter x:Key="ToolParamVisibilityConverter"/>-->
<EgtWPFLib5:ToolDrawUUIDConverter x:Key="ToolDrawUUIDConverter"/> <EgtWPFLib5:ToolDrawUUIDConverter x:Key="ToolDrawUUIDConverter"/>
<EgtWPFLib5:ErrorVisibilityConverter x:Key="ErrorVisibilityConverter"/> <EgtWPFLib5:ErrorVisibilityConverter x:Key="ErrorVisibilityConverter"/>
<sys:Int32 x:Key="Corr">0</sys:Int32> <sys:Int32 x:Key="Corr">0</sys:Int32>
<sys:Int32 x:Key="ExitPar">1</sys:Int32> <sys:Int32 x:Key="ExitPar">1</sys:Int32>
<sys:Int32 x:Key="Coolant">2</sys:Int32> <sys:Int32 x:Key="Coolant">2</sys:Int32>
<sys:Int32 x:Key="CornRad">3</sys:Int32> <sys:Int32 x:Key="CornRad">3</sys:Int32>
<sys:Int32 x:Key="Diam">4</sys:Int32> <sys:Int32 x:Key="Diam">4</sys:Int32>
<sys:Int32 x:Key="TotDiam">5</sys:Int32> <sys:Int32 x:Key="TotDiam">5</sys:Int32>
<sys:Int32 x:Key="Feed">6</sys:Int32> <sys:Int32 x:Key="Feed">6</sys:Int32>
<sys:Int32 x:Key="EndFeed">7</sys:Int32> <sys:Int32 x:Key="EndFeed">7</sys:Int32>
<sys:Int32 x:Key="StartFeed">8</sys:Int32> <sys:Int32 x:Key="StartFeed">8</sys:Int32>
<sys:Int32 x:Key="TipFeed">9</sys:Int32> <sys:Int32 x:Key="TipFeed">9</sys:Int32>
<sys:Int32 x:Key="Len">10</sys:Int32> <sys:Int32 x:Key="Len">10</sys:Int32>
<sys:Int32 x:Key="TotLen">11</sys:Int32> <sys:Int32 x:Key="TotLen">11</sys:Int32>
<sys:Int32 x:Key="MaxMat">12</sys:Int32> <sys:Int32 x:Key="MaxMat">12</sys:Int32>
<sys:Int32 x:Key="LonOffset">13</sys:Int32> <sys:Int32 x:Key="LonOffset">13</sys:Int32>
<sys:Int32 x:Key="RadOffset">14</sys:Int32> <sys:Int32 x:Key="RadOffset">14</sys:Int32>
<sys:Int32 x:Key="Speed">15</sys:Int32> <sys:Int32 x:Key="Speed">15</sys:Int32>
<sys:Int32 x:Key="SideAng">16</sys:Int32> <sys:Int32 x:Key="SideAng">16</sys:Int32>
<sys:Int32 x:Key="MaxSpeed">17</sys:Int32> <sys:Int32 x:Key="MaxSpeed">17</sys:Int32>
<sys:Int32 x:Key="Thick">18</sys:Int32> <sys:Int32 x:Key="Thick">18</sys:Int32>
<sys:Int32 x:Key="MaxAbsorption">19</sys:Int32> <sys:Int32 x:Key="MaxAbsorption">19</sys:Int32>
<sys:Int32 x:Key="MinFeed">20</sys:Int32> <sys:Int32 x:Key="MinFeed">20</sys:Int32>
<sys:Int32 x:Key="Draw">21</sys:Int32> <sys:Int32 x:Key="Draw">21</sys:Int32>
<sys:Int32 x:Key="Head">22</sys:Int32> <sys:Int32 x:Key="Head">22</sys:Int32>
<sys:Int32 x:Key="NamePar">23</sys:Int32> <sys:Int32 x:Key="NamePar">23</sys:Int32>
<sys:Int32 x:Key="UserNotes">24</sys:Int32> <sys:Int32 x:Key="UserNotes">24</sys:Int32>
<sys:Int32 x:Key="TcPos">25</sys:Int32> <sys:Int32 x:Key="TcPos">25</sys:Int32>
</EgtWPFLib5:EgtCustomWindow.Resources> </EgtWPFLib5:EgtCustomWindow.Resources>
<Grid Background="Transparent"> <Grid Background="Transparent">
<Grid.ColumnDefinitions> <Grid.ColumnDefinitions>
<ColumnDefinition Width="0.95*"/> <ColumnDefinition Width="0.95*"/>
<ColumnDefinition Width="2*"/> <ColumnDefinition Width="2*"/>
<ColumnDefinition Width="1*"/> <ColumnDefinition Width="1*"/>
</Grid.ColumnDefinitions> </Grid.ColumnDefinitions>
<Grid Background="Transparent"> <Grid Background="Transparent">
<Grid.RowDefinitions> <Grid.RowDefinitions>
<RowDefinition Height="0.75*"/> <RowDefinition Height="0.75*"/>
<RowDefinition Height="12*"/> <RowDefinition Height="12*"/>
</Grid.RowDefinitions> </Grid.RowDefinitions>
<UniformGrid Grid.Row="0" Columns="8"> <UniformGrid Grid.Row="0" Columns="8">
<Button ToolTip="New" Command="{Binding NewCommand}" <Button ToolTip="New" Command="{Binding NewCommand}"
CommandParameter="{Binding Path=SelectedItem, ElementName=ToolsTreeView}" CommandParameter="{Binding Path=SelectedItem, ElementName=ToolsTreeView}"
IsEnabled="{Binding IsEnabledNewBtn, Mode=OneWay}" IsEnabled="{Binding IsEnabledNewBtn, Mode=OneWay}"
Style = "{DynamicResource MachiningDB_Button}"> Style = "{DynamicResource MachiningDB_Button}">
<Image Source="/Resources/TopCommandBar/New.png" Stretch="Uniform"/> <Image Source="/Resources/TopCommandBar/New.png" Stretch="Uniform"/>
</Button> </Button>
<Button ToolTip="Save" Command="{Binding SaveCommand}" <Button ToolTip="Save" Command="{Binding SaveCommand}"
CommandParameter="{Binding Path=SelectedItem, ElementName=ToolsTreeView}" CommandParameter="{Binding Path=SelectedItem, ElementName=ToolsTreeView}"
IsEnabled="{Binding IsEnabledSaveBtn, Mode=OneWay}" IsEnabled="{Binding IsEnabledSaveBtn, Mode=OneWay}"
Style = "{DynamicResource MachiningDB_Button}"> Style = "{DynamicResource MachiningDB_Button}">
<Image Source="/Resources/TopCommandBar/Save.png" Stretch="Uniform"/> <Image Source="/Resources/TopCommandBar/Save.png" Stretch="Uniform"/>
</Button> </Button>
<Button ToolTip="Remove" Command="{Binding RemoveCommand}" <Button ToolTip="Remove" Command="{Binding RemoveCommand}"
CommandParameter="{Binding Path=SelectedItem, ElementName=ToolsTreeView}" CommandParameter="{Binding Path=SelectedItem, ElementName=ToolsTreeView}"
IsEnabled="{Binding IsEnabledRemoveBtn, Mode=OneWay}" IsEnabled="{Binding IsEnabledRemoveBtn, Mode=OneWay}"
Style = "{DynamicResource MachiningDB_Button}"> Style = "{DynamicResource MachiningDB_Button}">
<Image Source="/Resources/TopCommandBar/Remove.png" Stretch="Uniform"/> <Image Source="/Resources/TopCommandBar/Remove.png" Stretch="Uniform"/>
</Button> </Button>
<Button ToolTip="Import" Command="{Binding ImportCommand}" <Button ToolTip="Import" Command="{Binding ImportCommand}"
CommandParameter="{Binding Path=SelectedItem, ElementName=MachiningsTreeView}" CommandParameter="{Binding Path=SelectedItem, ElementName=MachiningsTreeView}"
IsEnabled="{Binding IsEnabledNewBtn, Mode=OneWay}" IsEnabled="{Binding IsEnabledNewBtn, Mode=OneWay}"
Style = "{DynamicResource MachiningDB_Button}"> Style = "{DynamicResource MachiningDB_Button}">
<Image Source="/Resources/TopCommandBar/Import.png" Stretch="Uniform"/> <Image Source="/Resources/TopCommandBar/Import.png" Stretch="Uniform"/>
</Button> </Button>
<Button ToolTip="Export" Command="{Binding ExportCommand}" <Button ToolTip="Export" Command="{Binding ExportCommand}"
CommandParameter="{Binding Path=SelectedItem, ElementName=MachiningsTreeView}" CommandParameter="{Binding Path=SelectedItem, ElementName=MachiningsTreeView}"
IsEnabled="{Binding IsEnabledSaveBtn, Mode=OneWay}" IsEnabled="{Binding IsEnabledSaveBtn, Mode=OneWay}"
Style = "{DynamicResource MachiningDB_Button}"> Style = "{DynamicResource MachiningDB_Button}">
<Image Source="/Resources/TopCommandBar/Export_1.png" Stretch="Uniform"/> <Image Source="/Resources/TopCommandBar/Export_1.png" Stretch="Uniform"/>
</Button> </Button>
<Button ToolTip="Reset" Command="{Binding ReloadToolCommand}" <Button ToolTip="Reset" Command="{Binding ReloadToolCommand}"
CommandParameter="{Binding Path=SelectedItem, ElementName=MachiningsTreeView}" CommandParameter="{Binding Path=SelectedItem, ElementName=MachiningsTreeView}"
IsEnabled="{Binding IsEnabledRemoveBtn, Mode=OneWay}" IsEnabled="{Binding IsEnabledRemoveBtn, Mode=OneWay}"
Style = "{DynamicResource MachiningDB_Button}"> Style = "{DynamicResource MachiningDB_Button}">
<Image Source="/Resources/TopCommandBar/Reset.png" Stretch="Uniform"/> <Image Source="/Resources/TopCommandBar/Reset.png" Stretch="Uniform"/>
</Button> </Button>
</UniformGrid> </UniformGrid>
<!--Elenco degli utensili--> <!--Elenco degli utensili-->
<TreeView Name="ToolsTreeView" Grid.Row="1" <TreeView Name="ToolsTreeView" Grid.Row="1"
Background="Transparent" BorderThickness="0" Background="Transparent" BorderThickness="0"
ItemsSource="{Binding ToolsList}"> ItemsSource="{Binding ToolsList}">
<TreeView.ItemContainerStyle> <TreeView.ItemContainerStyle>
<Style TargetType="{x:Type TreeViewItem}"> <Style TargetType="{x:Type TreeViewItem}" BasedOn="{StaticResource Db_TreeViewItem}">
<Setter Property="FontSize" Value="10" /> <Setter Property="FontSize" Value="10" />
<Setter Property="Foreground" Value="{StaticResource Omag_White}" /> <Setter Property="Foreground" Value="{StaticResource Omag_White}" />
<Setter Property="IsSelected" Value="{Binding IsSelected, Mode=TwoWay}" /> <Setter Property="IsSelected" Value="{Binding IsSelected, Mode=TwoWay}" />
<Setter Property="IsExpanded" Value="{Binding IsExpanded, Mode=TwoWay}" /> <Setter Property="IsExpanded" Value="{Binding IsExpanded, Mode=TwoWay}" />
<Setter Property="IsEnabled" Value="{Binding IsEnabled, Mode=TwoWay}" /> <Setter Property="IsEnabled" Value="{Binding IsEnabled, Mode=TwoWay}" />
</Style> </Style>
</TreeView.ItemContainerStyle> </TreeView.ItemContainerStyle>
<TreeView.Resources> <TreeView.Resources>
<HierarchicalDataTemplate DataType="{x:Type EgtWPFLib5:FamilyToolTreeViewItem}" ItemsSource="{Binding Items}"> <HierarchicalDataTemplate DataType="{x:Type EgtWPFLib5:FamilyToolTreeViewItem}" ItemsSource="{Binding Items}">
<Grid Background="Transparent"> <Grid Background="Transparent">
<Grid.ColumnDefinitions> <Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto"/> <ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="1*"/> <ColumnDefinition Width="1*"/>
<ColumnDefinition Width="Auto"/> <ColumnDefinition Width="Auto"/>
</Grid.ColumnDefinitions> </Grid.ColumnDefinitions>
<Image Grid.Column="0" Source="{Binding PictureString}" Height="32" Width="32" Margin="0" /> <Image Grid.Column="0" Source="{Binding PictureString}" Height="32" Width="32" Margin="0" />
<TextBlock Grid.Column="1" Text="{Binding Name}" FontSize="15" Margin="5,0,10,0" VerticalAlignment="Center" HorizontalAlignment="left" /> <TextBlock Grid.Column="1" Text="{Binding Name}" FontSize="15" Margin="5,0,10,0" VerticalAlignment="Center" HorizontalAlignment="left" />
<Ellipse Grid.Column="2" Height="10" Width="10" Fill="{Binding FamilyColor}" /> <Ellipse Grid.Column="2" Height="10" Width="10" Fill="{Binding FamilyColor}" />
</Grid> </Grid>
</HierarchicalDataTemplate> </HierarchicalDataTemplate>
<DataTemplate DataType="{x:Type EgtWPFLib5:ToolTreeViewItem}"> <DataTemplate DataType="{x:Type EgtWPFLib5:ToolTreeViewItem}">
<Grid Background="Transparent"> <Grid Background="Transparent">
<Grid.ColumnDefinitions> <Grid.ColumnDefinitions>
<ColumnDefinition Width="Auto"/> <ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="1*"/> <ColumnDefinition Width="1*"/>
<ColumnDefinition Width="Auto"/> <ColumnDefinition Width="Auto"/>
</Grid.ColumnDefinitions> </Grid.ColumnDefinitions>
<!--<Image Grid.Column="0" Source="{Binding PictureString}" Height="32" Margin="0,8,6,4" />--> <!--<Image Grid.Column="0" Source="{Binding PictureString}" Height="32" Margin="0,8,6,4" />-->
<TextBlock Grid.Column="1" Text="{Binding NamePar}" Height="21" FontSize="13" Margin="30,0,10,0" <TextBlock Grid.Column="1" Text="{Binding NamePar}" Height="21" FontSize="13" Margin="30,0,10,0"
VerticalAlignment="Center" HorizontalAlignment="left"/> VerticalAlignment="Center" HorizontalAlignment="left"/>
<Ellipse Grid.Column="2" Height="10" Width="10" Fill="{Binding ToolColor}" /> <Ellipse Grid.Column="2" Height="10" Width="10" Fill="{Binding ToolColor}" />
</Grid> </Grid>
</DataTemplate> </DataTemplate>
</TreeView.Resources> </TreeView.Resources>
</TreeView> </TreeView>
</Grid> </Grid>
<ContentControl Content="{Binding Path=ParamPageV}" Grid.Column="1"/> <ContentControl Content="{Binding Path=ParamPageV}" Grid.Column="1"/>
<!--ContentControl che ospita la scena restituita sotto forma di WindowsFormsHost--> <!--ContentControl che ospita la scena restituita sotto forma di WindowsFormsHost-->
<ContentControl Content="{Binding ToolSceneHost}" Grid.Column="2"/> <ContentControl Content="{Binding ToolSceneHost}" Grid.Column="2"/>
</Grid> </Grid>
</EgtWPFLib5:EgtCustomWindow> </EgtWPFLib5:EgtCustomWindow>
@@ -116,6 +116,15 @@
</DataTemplate> </DataTemplate>
</DataGridTextColumn.HeaderTemplate> </DataGridTextColumn.HeaderTemplate>
</DataGridTextColumn> </DataGridTextColumn>
<!--Flux-->
<DataGridTextColumn Binding="{Binding Flux}"
Width="*">
<DataGridTextColumn.HeaderTemplate>
<DataTemplate>
<TextBlock Text="{Binding DataContext.Flux_Msg,RelativeSource={RelativeSource AncestorType={x:Type DataGrid}}}"/>
</DataTemplate>
</DataGridTextColumn.HeaderTemplate>
</DataGridTextColumn>
<!--Q1--> <!--Q1-->
<DataGridTextColumn Binding="{Binding Q1}" <DataGridTextColumn Binding="{Binding Q1}"
Width="*"> Width="*">
+42 -6
View File
@@ -128,18 +128,20 @@
<ApplicationManifest>My Project\app.manifest</ApplicationManifest> <ApplicationManifest>My Project\app.manifest</ApplicationManifest>
</PropertyGroup> </PropertyGroup>
<ItemGroup> <ItemGroup>
<Reference Include="DotNetZip, Version=1.16.0.0, Culture=neutral, PublicKeyToken=6583c7c814667745, processorArchitecture=MSIL"> <Reference Include="DotNetZip">
<HintPath>packages\DotNetZip.1.16.0\lib\net40\DotNetZip.dll</HintPath> <HintPath>..\..\EgtProg\OmagOFFICE\DotNetZip.dll</HintPath>
</Reference> </Reference>
<Reference Include="EgtPHOTOLib, Version=2.3.1.1, Culture=neutral, processorArchitecture=x86"> <Reference Include="EgtPHOTOLib, Version=2.3.1.1, Culture=neutral, processorArchitecture=x86">
<SpecificVersion>False</SpecificVersion> <SpecificVersion>False</SpecificVersion>
<HintPath>..\..\EgtProg\Dll32\EgtPHOTOLib.dll</HintPath> <HintPath>..\..\EgtProg\Dll32\EgtPHOTOLib.dll</HintPath>
</Reference> </Reference>
<Reference Include="EgtUILib"> <Reference Include="EgtUILib, Version=2.7.5.2, Culture=neutral, processorArchitecture=MSIL">
<HintPath>..\..\EgtProg\DllD32\EgtUILib.dll</HintPath> <SpecificVersion>False</SpecificVersion>
<HintPath>..\..\EgtProg\OmagOFFICE\EgtUILib.dll</HintPath>
</Reference> </Reference>
<Reference Include="EgtWPFLib5"> <Reference Include="EgtWPFLib5, Version=2.7.4.1, Culture=neutral, processorArchitecture=MSIL">
<HintPath>..\..\EgtProg\DllD32\EgtWPFLib5.dll</HintPath> <SpecificVersion>False</SpecificVersion>
<HintPath>..\..\EgtProg\OmagOFFICE\EgtWPFLib5.dll</HintPath>
</Reference> </Reference>
<Reference Include="PresentationFramework.Aero" /> <Reference Include="PresentationFramework.Aero" />
<Reference Include="System.Core" /> <Reference Include="System.Core" />
@@ -291,6 +293,10 @@
<DependentUpon>SplitModeV.xaml</DependentUpon> <DependentUpon>SplitModeV.xaml</DependentUpon>
</Compile> </Compile>
<Compile Include="OptionPanel\MachiningTab\SplitModeVM.vb" /> <Compile Include="OptionPanel\MachiningTab\SplitModeVM.vb" />
<Compile Include="OptionPanel\NestingTab\ChangeTableV.xaml.vb">
<DependentUpon>ChangeTableV.xaml</DependentUpon>
</Compile>
<Compile Include="OptionPanel\NestingTab\ChangeTableVM.vb" />
<Compile Include="OptionPanel\NestingTab\MultiSelectionV.xaml.vb"> <Compile Include="OptionPanel\NestingTab\MultiSelectionV.xaml.vb">
<DependentUpon>MultiSelectionV.xaml</DependentUpon> <DependentUpon>MultiSelectionV.xaml</DependentUpon>
</Compile> </Compile>
@@ -497,6 +503,10 @@
<SubType>Designer</SubType> <SubType>Designer</SubType>
<Generator>MSBuild:Compile</Generator> <Generator>MSBuild:Compile</Generator>
</Page> </Page>
<Page Include="OptionPanel\NestingTab\ChangeTableV.xaml">
<SubType>Designer</SubType>
<Generator>MSBuild:Compile</Generator>
</Page>
<Page Include="OptionPanel\NestingTab\MultiSelectionV.xaml"> <Page Include="OptionPanel\NestingTab\MultiSelectionV.xaml">
<SubType>Designer</SubType> <SubType>Designer</SubType>
<Generator>MSBuild:Compile</Generator> <Generator>MSBuild:Compile</Generator>
@@ -960,6 +970,32 @@
<ItemGroup> <ItemGroup>
<Resource Include="Resources\NewIcons\Linea-Copia.png" /> <Resource Include="Resources\NewIcons\Linea-Copia.png" />
</ItemGroup> </ItemGroup>
<ItemGroup>
<Resource Include="Resources\NewIcons\DB-WJ.png" />
</ItemGroup>
<ItemGroup>
<Resource Include="Resources\DetailPage\Cancel.png" />
<Resource Include="Resources\DetailPage\Confirm.png" />
<Resource Include="Resources\DetailPage\Elimina.png" />
<Resource Include="Resources\DetailPage\Pencil.png" />
<Resource Include="Resources\DetailPage\Photo.png" />
<Resource Include="Resources\DetailPage\Polygon.png" />
<Resource Include="Resources\DetailPage\Print.png" />
<Resource Include="Resources\DetailPage\Reset.png" />
<Resource Include="Resources\DetailPage\Rubber.png" />
<Resource Include="Resources\DetailPage\Save.png" />
<Resource Include="Resources\DetailPage\ZoomAll.png" />
</ItemGroup>
<ItemGroup>
<Resource Include="Resources\NewIcons\LightArrowOff.png" />
<Resource Include="Resources\NewIcons\LightArrowOn.png" />
</ItemGroup>
<ItemGroup>
<Resource Include="Resources\NewIcons\table.png" />
</ItemGroup>
<ItemGroup>
<Resource Include="Resources\NewIcons\tableS.png" />
</ItemGroup>
<Import Project="$(MSBuildToolsPath)\Microsoft.VisualBasic.targets" /> <Import Project="$(MSBuildToolsPath)\Microsoft.VisualBasic.targets" />
<PropertyGroup> <PropertyGroup>
<PostBuildEvent>IF "$(PlatformName)"=="x86" IF "$(ConfigurationName)" == "Release" copy $(TargetPath) c:\EgtProg\OmagOFFICE\OmagOFFICER32.exe <PostBuildEvent>IF "$(PlatformName)"=="x86" IF "$(ConfigurationName)" == "Release" copy $(TargetPath) c:\EgtProg\OmagOFFICE\OmagOFFICER32.exe
@@ -334,6 +334,12 @@ Public Class MachiningTabVM
End If End If
End Sub End Sub
Friend Sub OnMouseDownScene_DoubleClick(sender As Object, e As Windows.Forms.MouseEventArgs)
If m_MachiningMode = MachiningModeOpt.SPLIT Then
OmagOFFICEMap.refSplitModeVM.OnMouseDownScene_DoubleClick(sender, e)
End If
End Sub
#End Region ' EVENTS #End Region ' EVENTS
End Class End Class
+3 -3
View File
@@ -749,7 +749,7 @@ Public Class MoveRawModeVM
If VerifyCollisionWithOtherRawPart(nId) Then If VerifyCollisionWithOtherRawPart(nId) Then
' mantengo la selezione del pezzo ' mantengo la selezione del pezzo
EgtSetStatus(nId, GDB_ST.SEL) EgtSetStatus(nId, GDB_ST.SEL)
OmagOFFICEMap.refStatusBarVM.SetOutputMessage("Collisione pezzi", 3, MSG_TYPE.ERROR_) OmagOFFICEMap.refStatusBarVM.SetOutputMessage(EgtMsg(91231), 3, MSG_TYPE.ERROR_) ' Collisione pezzi
Else Else
' Se con ventose, le nascondo ' Se con ventose, le nascondo
If Not OmagOFFICEMap.refMachiningTabVM.ByHand Then EgtSetStatus(GetVacuumId(), GDB_ST.OFF) If Not OmagOFFICEMap.refMachiningTabVM.ByHand Then EgtSetStatus(GetVacuumId(), GDB_ST.OFF)
@@ -761,7 +761,7 @@ Public Class MoveRawModeVM
If VerifyCollisionWithOtherRawPart(m_CurrRawOnVacuum) Then If VerifyCollisionWithOtherRawPart(m_CurrRawOnVacuum) Then
' mantengo la selezione del pezzo ' mantengo la selezione del pezzo
EgtSetStatus(m_CurrRawOnVacuum, GDB_ST.SEL) EgtSetStatus(m_CurrRawOnVacuum, GDB_ST.SEL)
OmagOFFICEMap.refStatusBarVM.SetOutputMessage("Collisione pezzi", 3, MSG_TYPE.ERROR_) OmagOFFICEMap.refStatusBarVM.SetOutputMessage(EgtMsg(91231), 3, MSG_TYPE.ERROR_) ' Collisione pezzi
EgtDraw() EgtDraw()
' esco dal ciclo, prima devo depositare correttamente il pezzo ' esco dal ciclo, prima devo depositare correttamente il pezzo
Exit While Exit While
@@ -819,7 +819,7 @@ Public Class MoveRawModeVM
If VerifyCollisionWithOtherRawPart(m_CurrRawOnVacuum) Then If VerifyCollisionWithOtherRawPart(m_CurrRawOnVacuum) Then
' mantengo la selezione del pezzo ' mantengo la selezione del pezzo
EgtSetStatus(m_CurrRawOnVacuum, GDB_ST.SEL) EgtSetStatus(m_CurrRawOnVacuum, GDB_ST.SEL)
OmagOFFICEMap.refStatusBarVM.SetOutputMessage("Collisione pezzi", 3, MSG_TYPE.ERROR_) OmagOFFICEMap.refStatusBarVM.SetOutputMessage(EgtMsg(91231), 3, MSG_TYPE.ERROR_) ' Collisione pezzi
EgtDraw() EgtDraw()
End If End If
+269 -243
View File
@@ -11,11 +11,25 @@
<Border Margin="0,0,0,5" Style="{StaticResource BorderSplit}" Padding="0"> <Border Margin="0,0,0,5" Style="{StaticResource BorderSplit}" Padding="0">
<ListBox ItemsSource="{Binding ItemList}" <ListBox ItemsSource="{Binding ItemList}"
Background="{StaticResource Omag_Gray}" Background="{StaticResource Omag_Gray}"
DisplayMemberPath="Name"
SelectionMode="Extended" SelectionMode="Extended"
BorderThickness="0" BorderThickness="0"
Height="200" Margin="0,0,0,0"> Height="200" Margin="0,0,0,0">
<ListBox.ItemTemplate>
<DataTemplate>
<StackPanel Orientation="Horizontal" VerticalAlignment="Center">
<Image Margin="1" Height="20" Width="20"
Source="{Binding SourceImg}">
</Image>
<TextBlock Margin="1" Text="{Binding Name}"/>
<StackPanel.InputBindings>
<MouseBinding MouseAction="LeftDoubleClick"
Command="{Binding Path=DataContext.OnOffCommand,
RelativeSource={RelativeSource AncestorType=UserControl, Mode=FindAncestor }}"/>
</StackPanel.InputBindings>
</StackPanel>
</DataTemplate>
</ListBox.ItemTemplate>
<ListBox.ItemContainerStyle> <ListBox.ItemContainerStyle>
<Style TargetType="ListBoxItem"> <Style TargetType="ListBoxItem">
<Style.Triggers> <Style.Triggers>
@@ -30,6 +44,7 @@
</DataTrigger> </DataTrigger>
</Style.Triggers> </Style.Triggers>
<Setter Property="IsSelected" Value="{Binding IsSelected, Mode=TwoWay}" /> <Setter Property="IsSelected" Value="{Binding IsSelected, Mode=TwoWay}" />
<Setter Property="HorizontalContentAlignment" Value="Stretch"/>
</Style> </Style>
</ListBox.ItemContainerStyle> </ListBox.ItemContainerStyle>
</ListBox> </ListBox>
@@ -37,83 +52,90 @@
<StackPanel HorizontalAlignment="Center" Orientation="Horizontal" Margin="0,0,0,2.5"> <StackPanel HorizontalAlignment="Center" Orientation="Horizontal" Margin="0,0,0,2.5">
<Button Grid.Column="1" <Button
IsEnabled="{Binding bEnabledCommandMove}" IsEnabled="{Binding bEnabledCommandMove}"
Style="{StaticResource OptionPanel_Button}" Style="{StaticResource OptionPanel_Button}"
Command="{Binding MoveUpCommand}" Command="{Binding MoveUpCommand}"
Margin="0,0,0.5,0"> Margin="0,0,0.5,0">
<Image Source="/Resources/NestingTab/UpArrow.png"/> <Image Source="/Resources/NestingTab/UpArrow.png"/>
</Button> </Button>
<Button Grid.Column="2" <Button
IsEnabled="{Binding bEnabledCommandMove}" IsEnabled="{Binding bEnabledCommandMove}"
Style="{StaticResource OptionPanel_Button}" Style="{StaticResource OptionPanel_Button}"
Command="{Binding MoveDownCommand}" Command="{Binding MoveDownCommand}"
Margin="0.5,0,0,0"> Margin="0.5,0,0,0">
<Image Source="/Resources/NestingTab/DownArrow.png"/> <Image Source="/Resources/NestingTab/DownArrow.png"/>
</Button> </Button>
<ToggleButton ToolTip="{Binding LayNbArrTgBtnMsg}"
Style="{StaticResource Split_ToggleButton_Img}"
IsChecked="{Binding LayNbArrTgBtn_IsChecked}"
Height="20" Width="20"
Margin="10,0,1,0">
<Image Source="{Binding LayNbArrTgBtnImg}"/>
</ToggleButton>
</StackPanel> </StackPanel>
<Border Style="{StaticResource Border}" Margin="0,1,0,5"> <Border Style="{StaticResource Border}" Margin="0,1,0,5">
<Expander Name="myExpander4" Background="Transparent" <Expander Name="myExpander1" Background="Transparent"
Foreground="{DynamicResource Omag_White}" Foreground="{DynamicResource Omag_White}"
HorizontalAlignment="Stretch" Header="Attiva tagli" HorizontalAlignment="Stretch"
Header="{Binding EnableCutMsg}"
ExpandDirection="Down" IsExpanded="{Binding bOnOffCut_IsExpanded}"> ExpandDirection="Down" IsExpanded="{Binding bOnOffCut_IsExpanded}">
<StackPanel HorizontalAlignment="Center" Orientation="Horizontal" Margin="2,2.5,2,0"> <StackPanel HorizontalAlignment="Center" Orientation="Horizontal" Margin="2,2.5,2,0">
<!--<Button Content="{Binding OnOffMsg}" <!--<Button Content="{Binding OnOffMsg}"
Style="{StaticResource OptionPanel_TextWrapButton}" Style="{StaticResource OptionPanel_TextWrapButton}"
Command="{Binding OnOffCommand}" Command="{Binding OnOffCommand}"
Margin="0,0,2.5,0"/>--> Margin="0,0,2.5,0"/>-->
<StackPanel Margin="1,0,0,0"> <StackPanel Margin="1,0,0,0">
<Button ToolTip="{Binding OnOffMsg}" <Button ToolTip="{Binding OnOffMsg}"
Style="{StaticResource Split_Button_Img}" Style="{StaticResource Split_Button_Img}"
Command="{Binding OnOffCommand}" Command="{Binding OnOffCommand}"
HorizontalAlignment="Center" HorizontalAlignment="Center"
VerticalAlignment="Center" VerticalAlignment="Center"
Margin="0,0,0,0"> Margin="0,0,0,0">
<StackPanel> <StackPanel>
<Image Source="/Resources/NewIcons/ON_OFF-singolo-taglio.png" <Image Source="/Resources/NewIcons/ON_OFF-singolo-taglio.png"
Style="{StaticResource ImgButton}"/> Style="{StaticResource ImgButton}"/>
</StackPanel> </StackPanel>
</Button> </Button>
</StackPanel> </StackPanel>
<!--<Button Content="{Binding AllOnMsg}" <!--<Button Content="{Binding AllOnMsg}"
Style="{StaticResource OptionPanel_TextWrapButton}" Style="{StaticResource OptionPanel_TextWrapButton}"
Command="{Binding AllOnCommand}" Command="{Binding AllOnCommand}"
Margin="2.5,0,2.5,0"/>--> Margin="2.5,0,2.5,0"/>-->
<StackPanel Margin="1,0,0,0"> <StackPanel Margin="1,0,0,0">
<Button ToolTip="{Binding AllOnMsg}" <Button ToolTip="{Binding AllOnMsg}"
Style="{StaticResource Split_Button_Img}" Style="{StaticResource Split_Button_Img}"
Command="{Binding AllOnCommand}" Command="{Binding AllOnCommand}"
HorizontalAlignment="Center" HorizontalAlignment="Center"
VerticalAlignment="Center" VerticalAlignment="Center"
Margin="0,0,0,0"> Margin="0,0,0,0">
<StackPanel> <StackPanel>
<Image Source="/Resources/NewIcons/Tutti-ON.png" <Image Source="/Resources/NewIcons/Tutti-ON.png"
Style="{StaticResource ImgButton}"/> Style="{StaticResource ImgButton}"/>
</StackPanel> </StackPanel>
</Button> </Button>
</StackPanel> </StackPanel>
<!--<Button Content="{Binding AllOffMsg}" <!--<Button Content="{Binding AllOffMsg}"
Style="{StaticResource OptionPanel_TextWrapButton}" Style="{StaticResource OptionPanel_TextWrapButton}"
Command="{Binding AllOffCommand}" Command="{Binding AllOffCommand}"
Margin="2.5,0,0,0"/>--> Margin="2.5,0,0,0"/>-->
<StackPanel Margin="1,0,0,0"> <StackPanel Margin="1,0,0,0">
<Button ToolTip="{Binding AllOffMsg}" <Button ToolTip="{Binding AllOffMsg}"
Style="{StaticResource Split_Button_Img}" Style="{StaticResource Split_Button_Img}"
Command="{Binding AllOffCommand}" Command="{Binding AllOffCommand}"
HorizontalAlignment="Center" HorizontalAlignment="Center"
VerticalAlignment="Center" VerticalAlignment="Center"
Margin="0,0,0,0"> Margin="0,0,0,0">
<StackPanel> <StackPanel>
<Image Source="/Resources/NewIcons/Tutti-OFF.png" <Image Source="/Resources/NewIcons/Tutti-OFF.png"
Style="{StaticResource ImgButton}"/> Style="{StaticResource ImgButton}"/>
</StackPanel> </StackPanel>
</Button> </Button>
</StackPanel> </StackPanel>
</StackPanel> </StackPanel>
@@ -121,139 +143,140 @@
</Border> </Border>
<Border Style="{StaticResource Border}" Margin="0,1,0,5"> <Border Style="{StaticResource Border}" Margin="0,1,0,5">
<Expander Name="myExpander0" Background="Transparent" <Expander Name="myExpander2" Background="Transparent"
Foreground="{DynamicResource Omag_White}" Foreground="{DynamicResource Omag_White}"
HorizontalAlignment="Stretch" Header="Tagli di separazione" HorizontalAlignment="Stretch"
Header="{Binding SplitCutMsg}"
ExpandDirection="Down" IsExpanded="{Binding bSpLitCut_IsExpanded}"> ExpandDirection="Down" IsExpanded="{Binding bSpLitCut_IsExpanded}">
<StackPanel Margin="0,0,0,-2.5"> <StackPanel Margin="0,0,0,-2.5">
<StackPanel HorizontalAlignment="Center" Orientation="Horizontal" Margin="0,2.5,0,1"> <StackPanel HorizontalAlignment="Center" Orientation="Horizontal" Margin="0,2.5,0,1">
<Grid> <Grid>
<!--<Button Content="{Binding CutMsg}" <!--<Button Content="{Binding CutMsg}"
Style="{StaticResource OptionPanel_TextWrapButton}" Style="{StaticResource OptionPanel_TextWrapButton}"
Command="{Binding CutCommand}" Command="{Binding CutCommand}"
Visibility="{Binding CutBtnVisibility}" Visibility="{Binding CutBtnVisibility}"
Margin="0,0,2.5,0"/>--> Margin="0,0,2.5,0"/>-->
<StackPanel Visibility="{Binding CutBtnVisibility}" Margin="1,0,0,0"> <StackPanel Visibility="{Binding CutBtnVisibility}" Margin="1,0,0,0">
<Button ToolTip="{Binding CutMsg}" <Button ToolTip="{Binding CutMsg}"
Style="{StaticResource Split_Button_Img}" Style="{StaticResource Split_Button_Img}"
Command="{Binding CutCommand}" Command="{Binding CutCommand}"
HorizontalAlignment="Center" HorizontalAlignment="Center"
VerticalAlignment="Center" VerticalAlignment="Center"
Margin="0,0,0,0"> Margin="0,0,0,0">
<StackPanel> <StackPanel>
<Image Source="/Resources/NewIcons/Allunga-o-accorcia.png" <Image Source="/Resources/NewIcons/Allunga-o-accorcia.png"
Height="40" Margin="0,2,0,0" Height="40" Margin="0,2,0,0"
HorizontalAlignment="Center" VerticalAlignment="Center"/> HorizontalAlignment="Center" VerticalAlignment="Center"/>
</StackPanel> </StackPanel>
</Button> </Button>
</StackPanel> </StackPanel>
<!--<ToggleButton Grid.Row="0" <!--<ToggleButton Grid.Row="0"
Content="{Binding BridgeMsg}" Content="{Binding BridgeMsg}"
Style="{StaticResource OptionPanel_ToggleWrapButton}" Style="{StaticResource OptionPanel_ToggleWrapButton}"
IsChecked="{Binding BridgeBtn_IsChecked}" IsChecked="{Binding BridgeBtn_IsChecked}"
Visibility="{Binding BridgeBtnVisibility}" Visibility="{Binding BridgeBtnVisibility}"
Margin="0,0,2.5,0" Padding="0"/>--> Margin="0,0,2.5,0" Padding="0"/>-->
<StackPanel Visibility="{Binding BridgeBtnVisibility}" Margin="1,0,0,0"> <StackPanel Visibility="{Binding BridgeBtnVisibility}" Margin="1,0,0,0">
<ToggleButton ToolTip="{Binding BridgeMsg}" <ToggleButton ToolTip="{Binding BridgeMsg}"
Style="{StaticResource Split_ToggleButton_Img}" Style="{StaticResource Split_ToggleButton_Img}"
IsChecked="{Binding BridgeBtn_IsChecked}" IsChecked="{Binding BridgeBtn_IsChecked}"
HorizontalAlignment="Center" HorizontalAlignment="Center"
VerticalAlignment="Center" VerticalAlignment="Center"
Margin="0,0,0,0"> Margin="0,0,0,0">
<StackPanel> <StackPanel>
<Image Source="/Resources/NewIcons/Ponticelli.png" <Image Source="/Resources/NewIcons/Ponticelli.png"
Style="{StaticResource ImgButton}"/> Style="{StaticResource ImgButton}"/>
</StackPanel> </StackPanel>
</ToggleButton> </ToggleButton>
</StackPanel> </StackPanel>
</Grid> </Grid>
<Grid> <Grid>
<!--<Button Content="{Binding CutStartMsg}" <!--<Button Content="{Binding CutStartMsg}"
Style="{StaticResource OptionPanel_TextWrapButton}" Style="{StaticResource OptionPanel_TextWrapButton}"
Command="{Binding CutStartCommand}" Command="{Binding CutStartCommand}"
Visibility="{Binding CutStartBtnVisibility}" Visibility="{Binding CutStartBtnVisibility}"
Margin="2.5,0,2.5,0"/>--> Margin="2.5,0,2.5,0"/>-->
<StackPanel Visibility="{Binding CutStartBtnVisibility}" Margin="1,0,0,0"> <StackPanel Visibility="{Binding CutStartBtnVisibility}" Margin="1,0,0,0">
<Button ToolTip="{Binding CutStartMsg}" <Button ToolTip="{Binding CutStartMsg}"
Style="{StaticResource Split_Button_Img}" Style="{StaticResource Split_Button_Img}"
Command="{Binding CutStartCommand}" Command="{Binding CutStartCommand}"
HorizontalAlignment="Center" HorizontalAlignment="Center"
VerticalAlignment="Center" VerticalAlignment="Center"
Margin="0,0,0,0"> Margin="0,0,0,0">
<StackPanel> <StackPanel>
<Image Source="/Resources/NewIcons/Inizio-allunga-o-accorcia.png" <Image Source="/Resources/NewIcons/Inizio-allunga-o-accorcia.png"
Height="40" Margin="0,2,0,0" Height="40" Margin="0,2,0,0"
HorizontalAlignment="Center" VerticalAlignment="Center"/> HorizontalAlignment="Center" VerticalAlignment="Center"/>
</StackPanel> </StackPanel>
</Button> </Button>
</StackPanel> </StackPanel>
<!--<Button Content="{Binding QualityMsg}" <!--<Button Content="{Binding QualityMsg}"
Style="{StaticResource OptionPanel_TextWrapButton}" Style="{StaticResource OptionPanel_TextWrapButton}"
Command="{Binding QualityCommand}" Command="{Binding QualityCommand}"
Visibility="{Binding QualityBtnVisibility}" Visibility="{Binding QualityBtnVisibility}"
Margin="2.5,0,2.5,0"/>!--> Margin="2.5,0,2.5,0"/>!-->
<StackPanel Visibility="{Binding QualityBtnVisibility}" Margin="1,0,0,0"> <StackPanel Visibility="{Binding QualityBtnVisibility}" Margin="1,0,0,0">
<Button ToolTip="{Binding QualityMsg}" <Button ToolTip="{Binding QualityMsg}"
Style="{StaticResource Split_Button_Img}" Style="{StaticResource Split_Button_Img}"
Command="{Binding QualityCommand}" Command="{Binding QualityCommand}"
HorizontalAlignment="Center" HorizontalAlignment="Center"
VerticalAlignment="Center" VerticalAlignment="Center"
Margin="0,0,0,0"> Margin="0,0,0,0">
<StackPanel> <StackPanel>
<Image Source="/Resources/NewIcons/Quality.png" <Image Source="/Resources/NewIcons/Quality.png"
Style="{StaticResource ImgButton}"/> Style="{StaticResource ImgButton}"/>
</StackPanel> </StackPanel>
</Button> </Button>
</StackPanel> </StackPanel>
</Grid> </Grid>
<Grid> <Grid>
<StackPanel Visibility="{Binding CutEndBtnVisibility}" Margin="1,0,0,0"> <StackPanel Visibility="{Binding CutEndBtnVisibility}" Margin="1,0,0,0">
<Button ToolTip="{Binding CutEndMsg}" <Button ToolTip="{Binding CutEndMsg}"
Style="{StaticResource Split_Button_Img}" Style="{StaticResource Split_Button_Img}"
Command="{Binding CutEndCommand}" Command="{Binding CutEndCommand}"
HorizontalAlignment="Center" HorizontalAlignment="Center"
VerticalAlignment="Center" VerticalAlignment="Center"
Margin="0,0,0,0"> Margin="0,0,0,0">
<StackPanel> <StackPanel>
<Image Source="/Resources/NewIcons/Fine-allunga-o-accorcia.png" <Image Source="/Resources/NewIcons/Fine-allunga-o-accorcia.png"
Height="40" Margin="0,2,0,0" Height="40" Margin="0,2,0,0"
HorizontalAlignment="Center" VerticalAlignment="Center"/> HorizontalAlignment="Center" VerticalAlignment="Center"/>
</StackPanel> </StackPanel>
</Button> </Button>
</StackPanel> </StackPanel>
<StackPanel Visibility="{Binding BridgeDeleteBtnVisibility}" Margin="1,0,0,0"> <StackPanel Visibility="{Binding BridgeDeleteBtnVisibility}" Margin="1,0,0,0">
<ToggleButton ToolTip="{Binding BridgeDeleteMsg}" <ToggleButton ToolTip="{Binding BridgeDeleteMsg}"
Style="{StaticResource Split_ToggleButton_Img}" Style="{StaticResource Split_ToggleButton_Img}"
IsChecked="{Binding BridgeDeleteBtn_IsChecked}" IsChecked="{Binding BridgeDeleteBtn_IsChecked}"
HorizontalAlignment="Center" HorizontalAlignment="Center"
VerticalAlignment="Center" VerticalAlignment="Center"
Margin="0,0,0,0"> Margin="0,0,0,0">
<StackPanel> <StackPanel>
<Image Source="/Resources/NewIcons/Ponticelli_delete.png" <Image Source="/Resources/NewIcons/Ponticelli_delete.png"
Style="{StaticResource ImgButton}"/> Style="{StaticResource ImgButton}"/>
</StackPanel> </StackPanel>
</ToggleButton> </ToggleButton>
</StackPanel> </StackPanel>
</Grid> </Grid>
</StackPanel> </StackPanel>
<StackPanel HorizontalAlignment="Center" Orientation="Horizontal" Margin="0,2.5,0,1"> <StackPanel HorizontalAlignment="Center" Orientation="Horizontal" Margin="0,2.5,0,1">
<!--Bottone invisibile per permetter il corretto allineamento--> <!--Bottone invisibile per permetter il corretto allineamento-->
<!-- <!--
<Button Content="{Binding }" Grid.Column="0" <Button Content="{Binding }" Grid.Column="0"
Style="{StaticResource OptionPanel_TextWrapButton}" Style="{StaticResource OptionPanel_TextWrapButton}"
Command="{Binding }" Command="{Binding }"
@@ -262,37 +285,37 @@
<StackPanel Visibility="{Binding AllExtendBtnVisibility}" Grid.Column="2" Margin="1,0,0,0"> <StackPanel Visibility="{Binding AllExtendBtnVisibility}" Grid.Column="2" Margin="1,0,0,0">
<Button ToolTip="{Binding AllExtendMsg}" <Button ToolTip="{Binding AllExtendMsg}"
Style="{StaticResource Split_Button_Img}" Style="{StaticResource Split_Button_Img}"
Command="{Binding AllExtendCommand}" Command="{Binding AllExtendCommand}"
HorizontalAlignment="Center" HorizontalAlignment="Center"
VerticalAlignment="Center" VerticalAlignment="Center"
Margin="0,0,0,0"> Margin="0,0,0,0">
<StackPanel> <StackPanel>
<Image Source="/Resources/NewIcons/Tutti-allunga.png" <Image Source="/Resources/NewIcons/Tutti-allunga.png"
Style="{StaticResource ImgButton}"/> Style="{StaticResource ImgButton}"/>
</StackPanel> </StackPanel>
</Button> </Button>
</StackPanel> </StackPanel>
<StackPanel Visibility="{Binding AllReduceBtnVisibility}" Grid.Column="2" Margin="1,0,0,0"> <StackPanel Visibility="{Binding AllReduceBtnVisibility}" Grid.Column="2" Margin="1,0,0,0">
<Button ToolTip="{Binding AllReduceMsg}" <Button ToolTip="{Binding AllReduceMsg}"
Style="{StaticResource Split_Button_Img}" Style="{StaticResource Split_Button_Img}"
Command="{Binding AllReduceCommand}" Command="{Binding AllReduceCommand}"
HorizontalAlignment="Center" HorizontalAlignment="Center"
VerticalAlignment="Center" VerticalAlignment="Center"
Margin="0,0,0,0"> Margin="0,0,0,0">
<StackPanel> <StackPanel>
<Image Source="/Resources/NewIcons/Tutti-accorcia.png" <Image Source="/Resources/NewIcons/Tutti-accorcia.png"
Style="{StaticResource ImgButton}"/> Style="{StaticResource ImgButton}"/>
</StackPanel> </StackPanel>
</Button> </Button>
</StackPanel>
</StackPanel> </StackPanel>
<!--<StackPanel HorizontalAlignment="Center" Orientation="Horizontal" Margin="0,2.5,0,1"> </StackPanel>
<!--<StackPanel HorizontalAlignment="Center" Orientation="Horizontal" Margin="0,2.5,0,1">
<StackPanel Visibility="{Binding AllExtendBtnVisibility}" Grid.Column="1" Margin="1,0,0,0"> <StackPanel Visibility="{Binding AllExtendBtnVisibility}" Grid.Column="1" Margin="1,0,0,0">
<ToggleButton ToolTip="{Binding AllExtendMsg}" <ToggleButton ToolTip="{Binding AllExtendMsg}"
Style="{StaticResource Split_ToggleButton_Img}" Style="{StaticResource Split_ToggleButton_Img}"
@@ -353,247 +376,250 @@
</StackPanel> </StackPanel>
</StackPanel>--> </StackPanel>-->
</StackPanel> </StackPanel>
</Expander> </Expander>
</Border> </Border>
<Border Style="{StaticResource Border}" Margin="0,1,0,5"> <Border Style="{StaticResource Border}" Margin="0,1,0,5">
<Expander Name="myExpander2" Background="Transparent" <Expander Name="myExpander3" Background="Transparent"
Foreground="{DynamicResource Omag_White}" Foreground="{DynamicResource Omag_White}"
HorizontalAlignment="Stretch" Header="Tagli diretti di separazione" HorizontalAlignment="Stretch"
Header="{Binding DirectSplitCutMsg}"
ExpandDirection="Down" IsExpanded="{Binding bDirectSpLitCut_IsExpanded}"> ExpandDirection="Down" IsExpanded="{Binding bDirectSpLitCut_IsExpanded}">
<StackPanel HorizontalAlignment="Center" Orientation="Horizontal" Margin="0,2.5,0,1"> <StackPanel HorizontalAlignment="Center" Orientation="Horizontal" Margin="0,2.5,0,1">
<StackPanel Visibility="{Binding AllExtendBtnVisibility}" Grid.Column="1" Margin="1,0,0,0"> <StackPanel Grid.Column="1" Margin="1,0,0,0">
<ToggleButton ToolTip="Crea" <ToggleButton ToolTip="Crea"
Style="{StaticResource Split_ToggleButton_Img}" Style="{StaticResource Split_ToggleButton_Img}"
IsChecked="{Binding CreateCut_IsChecked}" IsChecked="{Binding CreateCut_IsChecked}"
HorizontalAlignment="Center" HorizontalAlignment="Center"
VerticalAlignment="Center" VerticalAlignment="Center"
Width="40" Height="40" Width="40" Height="40"
Margin="0,0,0,0"> Margin="0,0,0,0">
<StackPanel> <StackPanel>
<Image Source="/Resources/NewIcons/Linea.png" <Image Source="/Resources/NewIcons/Linea.png"
Style="{StaticResource ImgButton}"/> Style="{StaticResource ImgButton}"/>
</StackPanel> </StackPanel>
</ToggleButton> </ToggleButton>
</StackPanel> </StackPanel>
<StackPanel Visibility="{Binding AllExtendBtnVisibility}" Grid.Column="1" Margin="1,0,0,0"> <StackPanel Grid.Column="1" Margin="1,0,0,0">
<ToggleButton ToolTip="Elimina" <ToggleButton ToolTip="Elimina"
Style="{StaticResource Split_ToggleButton_Img}" Style="{StaticResource Split_ToggleButton_Img}"
IsChecked="{Binding RemoveCut_IsChecked}" IsChecked="{Binding RemoveCut_IsChecked}"
HorizontalAlignment="Center" HorizontalAlignment="Center"
VerticalAlignment="Center" VerticalAlignment="Center"
Width="40" Height="40" Width="40" Height="40"
Margin="0,0,0,0"> Margin="0,0,0,0">
<StackPanel> <StackPanel>
<Image Source="/Resources/NewIcons/Linea-Elimina.png" <Image Source="/Resources/NewIcons/Linea-Elimina.png"
Style="{StaticResource ImgButton}"/> Style="{StaticResource ImgButton}"/>
</StackPanel> </StackPanel>
</ToggleButton> </ToggleButton>
</StackPanel> </StackPanel>
<StackPanel Visibility="{Binding AllExtendBtnVisibility}" Grid.Column="1" Margin="1,0,0,0"> <StackPanel Grid.Column="1" Margin="1,0,0,0">
<ToggleButton ToolTip="Copia" <ToggleButton ToolTip="Copia"
Style="{StaticResource Split_ToggleButton_Img}" Style="{StaticResource Split_ToggleButton_Img}"
IsChecked="{Binding CreateParallelCut_IsChecked}" IsChecked="{Binding CreateParallelCut_IsChecked}"
HorizontalAlignment="Center" HorizontalAlignment="Center"
VerticalAlignment="Center" VerticalAlignment="Center"
Width="40" Height="40" Width="40" Height="40"
Margin="0,0,0,0"> Margin="0,0,0,0">
<StackPanel> <StackPanel>
<Image Source="/Resources/NewIcons/Linea-Copia.png" <Image Source="/Resources/NewIcons/Linea-Copia.png"
Style="{StaticResource ImgButton}"/> Style="{StaticResource ImgButton}"/>
</StackPanel> </StackPanel>
</ToggleButton> </ToggleButton>
</StackPanel> </StackPanel>
<StackPanel Visibility="{Binding AllExtendBtnVisibility}" Grid.Column="1" Margin="1,0,0,0"> <StackPanel Grid.Column="1" Margin="1,0,0,0">
<ToggleButton ToolTip="Muovi" <ToggleButton ToolTip="Muovi"
Style="{StaticResource Split_ToggleButton_Img}" Style="{StaticResource Split_ToggleButton_Img}"
IsChecked="{Binding ModifyCut_IsChecked}" IsChecked="{Binding ModifyCut_IsChecked}"
HorizontalAlignment="Center" HorizontalAlignment="Center"
VerticalAlignment="Center" VerticalAlignment="Center"
Width="40" Height="40" Width="40" Height="40"
Margin="0,0,0,0"> Margin="0,0,0,0">
<StackPanel> <StackPanel>
<Image Source="/Resources/NewIcons/Linea-Muovi.png" <Image Source="/Resources/NewIcons/Linea-Muovi.png"
Style="{StaticResource ImgButton}"/> Style="{StaticResource ImgButton}"/>
</StackPanel> </StackPanel>
</ToggleButton> </ToggleButton>
</StackPanel>
</StackPanel> </StackPanel>
</StackPanel>
</Expander> </Expander>
</Border> </Border>
<Border Style="{StaticResource Border}" Margin="0,1,0,0"> <Border Style="{StaticResource Border}" Margin="0,1,0,0">
<Expander Name="myExpander1" Background="Transparent" <Expander Name="myExpander4" Background="Transparent"
Foreground="{DynamicResource Omag_White}" Foreground="{DynamicResource Omag_White}"
HorizontalAlignment="Stretch" Header="Modifica attacchi tagli" HorizontalAlignment="Stretch"
Header="{Binding ManageStartEndCutMsg}"
ExpandDirection="Down" IsExpanded="{Binding bModifyCut_IsExpanded}"> ExpandDirection="Down" IsExpanded="{Binding bModifyCut_IsExpanded}">
<StackPanel Margin="0,0,0,-2.5"> <StackPanel Margin="0,0,0,-2.5">
<UniformGrid Columns="4" Margin="0,2.5,0,1"> <UniformGrid Columns="4" Margin="0,2.5,0,1">
<StackPanel Visibility="{Binding OutCenStartBtnVisibility}" Margin="1,0,0,0"> <StackPanel Visibility="{Binding OutCenStartBtnVisibility}" Margin="1,0,0,0">
<Button ToolTip="{Binding OutCenStartMsg}" <Button ToolTip="{Binding OutCenStartMsg}"
Style="{StaticResource Split_Button_Img}" Style="{StaticResource Split_Button_Img}"
Command="{Binding OutCenStartCommand}" Command="{Binding OutCenStartCommand}"
HorizontalAlignment="Center" HorizontalAlignment="Center"
VerticalAlignment="Center" VerticalAlignment="Center"
Margin="0,0,0,0"> Margin="0,0,0,0">
<StackPanel> <StackPanel>
<Image Source="/Resources/NewIcons/Inizio-centro-fuori.png" <Image Source="/Resources/NewIcons/Inizio-centro-fuori.png"
Style="{StaticResource ImgButton}"/> Style="{StaticResource ImgButton}"/>
</StackPanel> </StackPanel>
</Button> </Button>
</StackPanel> </StackPanel>
<StackPanel Visibility="{Binding AllOutStartBtnVisibility}" Margin="1,0,0,0"> <StackPanel Visibility="{Binding AllOutStartBtnVisibility}" Margin="1,0,0,0">
<Button ToolTip="{Binding AllOutStartMsg}" <Button ToolTip="{Binding AllOutStartMsg}"
Style="{StaticResource Split_Button_Img}" Style="{StaticResource Split_Button_Img}"
Command="{Binding AllOutStartCommand}" Command="{Binding AllOutStartCommand}"
HorizontalAlignment="Center" HorizontalAlignment="Center"
VerticalAlignment="Center" VerticalAlignment="Center"
Margin="0,0,0,0"> Margin="0,0,0,0">
<StackPanel> <StackPanel>
<Image Source="/Resources/NewIcons/Inizio-tutti-fuori.png" <Image Source="/Resources/NewIcons/Inizio-tutti-fuori.png"
Style="{StaticResource ImgButton}"/> Style="{StaticResource ImgButton}"/>
</StackPanel> </StackPanel>
</Button> </Button>
</StackPanel> </StackPanel>
<StackPanel Visibility="{Binding AllCenStartBtnVisibility}" Margin="1,0,0,0"> <StackPanel Visibility="{Binding AllCenStartBtnVisibility}" Margin="1,0,0,0">
<Button ToolTip="{Binding AllCenStartMsg}" <Button ToolTip="{Binding AllCenStartMsg}"
Style="{StaticResource Split_Button_Img}" Style="{StaticResource Split_Button_Img}"
Command="{Binding AllCenStartCommand}" Command="{Binding AllCenStartCommand}"
HorizontalAlignment="Center" HorizontalAlignment="Center"
VerticalAlignment="Center" VerticalAlignment="Center"
Margin="0,0,0,0"> Margin="0,0,0,0">
<StackPanel> <StackPanel>
<Image Source="/Resources/NewIcons/Inizio-tutti-centro.png" <Image Source="/Resources/NewIcons/Inizio-tutti-centro.png"
Style="{StaticResource ImgButton}"/> Style="{StaticResource ImgButton}"/>
</StackPanel> </StackPanel>
</Button> </Button>
</StackPanel> </StackPanel>
<StackPanel Visibility="{Binding OutCenEndBtnVisibility}" Margin="1,0,0,0"> <StackPanel Margin="1,0,0,0">
<Button ToolTip="{Binding OutCenEndMsg}" <Button ToolTip="{Binding ModifStartMsg}"
Style="{StaticResource Split_Button_Img}"
Command="{Binding OutCenEndCommand}"
HorizontalAlignment="Center"
VerticalAlignment="Center"
Margin="0,0,0,0">
<StackPanel>
<Image Source="/Resources/NewIcons/Fine-Centro-Fuori.png"
Style="{StaticResource ImgButton}"/>
</StackPanel>
</Button>
</StackPanel>
</UniformGrid>
<UniformGrid Columns="4" Margin="0,0,0,1">
<StackPanel Visibility="{Binding AllOutEndBtnVisibility}" Margin="1,0,0,0">
<Button ToolTip="{Binding AllOutEndMsg}"
Style="{StaticResource Split_Button_Img}"
Command="{Binding AllOutEndCommand}"
HorizontalAlignment="Center"
VerticalAlignment="Center"
Margin="0,0,0,0">
<StackPanel>
<Image Source="/Resources/NewIcons/Fine-tutti-fuori.png"
Style="{StaticResource ImgButton}"/>
</StackPanel>
</Button>
</StackPanel>
<StackPanel Visibility="{Binding AllCenEndBtnVisibility}" Margin="1,0,0,0">
<Button ToolTip="{Binding AllCenEndMsg}"
Style="{StaticResource Split_Button_Img}"
Command="{Binding AllCenEndCommand}"
HorizontalAlignment="Center"
VerticalAlignment="Center"
Margin="0,0,0,0">
<StackPanel>
<Image Source="/Resources/NewIcons/Fine-tutti-centro.png"
Style="{StaticResource ImgButton}"/>
</StackPanel>
</Button>
</StackPanel>
<StackPanel Margin="1,0,0,0">
<Button ToolTip="{Binding ModifStartMsg}"
Style="{StaticResource Split_Button_Img}" Style="{StaticResource Split_Button_Img}"
Command="{Binding ModifStartCommand}" Command="{Binding ModifStartCommand}"
HorizontalAlignment="Center" HorizontalAlignment="Center"
VerticalAlignment="Center" VerticalAlignment="Center"
Margin="0,0,0,0"> Margin="0,0,0,0">
<StackPanel> <StackPanel>
<Image Source="/Resources/NewIcons/Modifica-Inizio.png" <Image Source="/Resources/NewIcons/Modifica-Inizio.png"
Style="{StaticResource ImgButton}"/> Style="{StaticResource ImgButton}"/>
</StackPanel> </StackPanel>
</Button> </Button>
</StackPanel>
<StackPanel Margin="1,0,0,0"> </StackPanel>
<Button ToolTip="{Binding ModifEndMsg}"
</UniformGrid>
<UniformGrid Columns="4" Margin="0,0,0,1">
<StackPanel Margin="1,0,0,0" Visibility="{Binding OutCenEndBtnVisibility}">
<Button ToolTip="{Binding OutCenEndMsg}"
Style="{StaticResource Split_Button_Img}"
Command="{Binding OutCenEndCommand}"
HorizontalAlignment="Center"
VerticalAlignment="Center"
Margin="0,0,0,0">
<StackPanel>
<Image Source="/Resources/NewIcons/Fine-Centro-Fuori.png"
Style="{StaticResource ImgButton}"/>
</StackPanel>
</Button>
</StackPanel>
<StackPanel Visibility="{Binding AllOutEndBtnVisibility}" Margin="1,0,0,0">
<Button ToolTip="{Binding AllOutEndMsg}"
Style="{StaticResource Split_Button_Img}"
Command="{Binding AllOutEndCommand}"
HorizontalAlignment="Center"
VerticalAlignment="Center"
Margin="0,0,0,0">
<StackPanel>
<Image Source="/Resources/NewIcons/Fine-tutti-fuori.png"
Style="{StaticResource ImgButton}"/>
</StackPanel>
</Button>
</StackPanel>
<StackPanel Visibility="{Binding AllCenEndBtnVisibility}" Margin="1,0,0,0">
<Button ToolTip="{Binding AllCenEndMsg}"
Style="{StaticResource Split_Button_Img}"
Command="{Binding AllCenEndCommand}"
HorizontalAlignment="Center"
VerticalAlignment="Center"
Margin="0,0,0,0">
<StackPanel>
<Image Source="/Resources/NewIcons/Fine-tutti-centro.png"
Style="{StaticResource ImgButton}"/>
</StackPanel>
</Button>
</StackPanel>
<StackPanel Margin="1,0,0,0">
<Button ToolTip="{Binding ModifEndMsg}"
Style="{StaticResource Split_Button_Img}" Style="{StaticResource Split_Button_Img}"
Command="{Binding ModifEndCommand}" Command="{Binding ModifEndCommand}"
HorizontalAlignment="Center" HorizontalAlignment="Center"
VerticalAlignment="Center" VerticalAlignment="Center"
Margin="0,0,0,0"> Margin="0,0,0,0">
<StackPanel> <StackPanel>
<Image Source="/Resources/NewIcons/Modifica-Fine.png" <Image Source="/Resources/NewIcons/Modifica-Fine.png"
Style="{StaticResource ImgButton}"/> Style="{StaticResource ImgButton}"/>
</StackPanel> </StackPanel>
</Button> </Button>
</StackPanel> </StackPanel>
</UniformGrid> </UniformGrid>
<UniformGrid Columns="4" Margin="0,0,0,1"> <UniformGrid Columns="4" Margin="0,0,0,1">
<!--Bottone invisibile per permetter il corretto allineamento--> <!--Bottone invisibile per permetter il corretto allineamento-->
<Button Content="{Binding }" Grid.Column="0" <Button Content="{Binding }" Grid.Column="0"
Style="{StaticResource OptionPanel_TextWrapButton}" Style="{StaticResource OptionPanel_TextWrapButton}"
Command="{Binding }" Command="{Binding }"
Visibility="Hidden" Visibility="Hidden"
Margin="0,0,1,0"/> Margin="0,0,1,0"/>
<StackPanel Margin="1,0,0,0"> <StackPanel Margin="1,0,0,0">
<Button ToolTip="{Binding PauseMsg}" <Button ToolTip="{Binding PauseMsg}"
Style="{StaticResource Split_Button_Img}" Style="{StaticResource Split_Button_Img}"
Command="{Binding PauseCommand}" Command="{Binding PauseCommand}"
HorizontalAlignment="Center" HorizontalAlignment="Center"
VerticalAlignment="Center" VerticalAlignment="Center"
Margin="0,0,0,0"> Margin="0,0,0,0">
<StackPanel> <StackPanel>
<Image Source="/Resources/NewIcons/Pausa-ON_OFF.png" <Image Source="/Resources/NewIcons/Pausa-ON_OFF.png"
Style="{StaticResource ImgButton}"/> Style="{StaticResource ImgButton}"/>
</StackPanel> </StackPanel>
</Button> </Button>
</StackPanel> </StackPanel>
<StackPanel Visibility="{Binding InvertBtnVisibility}" Margin="1,0,0,0"> <StackPanel Visibility="{Binding InvertBtnVisibility}" Margin="1,0,0,0">
<Button ToolTip="{Binding InvertMsg}" <Button ToolTip="{Binding InvertMsg}"
Style="{StaticResource Split_Button_Img}" Style="{StaticResource Split_Button_Img}"
Command="{Binding InvertCommand}" Command="{Binding InvertCommand}"
HorizontalAlignment="Center" HorizontalAlignment="Center"
VerticalAlignment="Center" VerticalAlignment="Center"
Margin="0,0,0,0"> Margin="0,0,0,0">
<StackPanel> <StackPanel>
<Image Source="/Resources/NewIcons/Inverti.png" <Image Source="/Resources/NewIcons/Inverti.png"
Style="{StaticResource ImgButton}"/> Style="{StaticResource ImgButton}"/>
</StackPanel> </StackPanel>
</Button> </Button>
</StackPanel> </StackPanel>
</UniformGrid> </UniformGrid>
</StackPanel> </StackPanel>
</Expander> </Expander>
</Border> </Border>
+139 -15
View File
@@ -355,6 +355,33 @@ Public Class SplitModeVM
End Set End Set
End Property End Property
Private m_LayNbArrTgBtn_IsChecked As Boolean = False
Public Property LayNbArrTgBtn_IsChecked As Boolean
Get
Return m_LayNbArrTgBtn_IsChecked
End Get
Set(value As Boolean)
' imposto il valore della bottone, dell'icona e del messaggio
SetLayNbArrTgBtn_IsChecked(value)
WriteMainPrivateProfileString(S_GENERAL, K_SHOWNBARROW, If(m_LayNbArrTgBtn_IsChecked, "1", "0"))
End Set
End Property
Private Sub SetLayNbArrTgBtn_IsChecked(value As Boolean)
m_LayNbArrTgBtn_IsChecked = value
If value Then
StatusOffNumbArrow(GDB_ST.ON_)
m_LayNbArrTgBtnMsg = EgtMsg(91218) ' Hide
m_LayNbArrTgBtnImg = "/Resources/NewIcons/LightArrowOn.png"
Else
StatusOffNumbArrow(GDB_ST.OFF)
m_LayNbArrTgBtnMsg = EgtMsg(91219) ' Show
m_LayNbArrTgBtnImg = "/Resources/NewIcons/LightArrowOff.png"
End If
NotifyPropertyChanged(NameOf(LayNbArrTgBtnMsg))
NotifyPropertyChanged(NameOf(LayNbArrTgBtnImg))
End Sub
#Region "SPLIT CUT" #Region "SPLIT CUT"
Private m_CreateCut_IsChecked As Boolean Private m_CreateCut_IsChecked As Boolean
@@ -543,19 +570,57 @@ Public Class SplitModeVM
Public ReadOnly Property BridgeMsg As String Public ReadOnly Property BridgeMsg As String
Get Get
Return "Bridge" Return EgtMsg(91671)
End Get End Get
End Property End Property
Public ReadOnly Property BridgeDeleteMsg As String Public ReadOnly Property BridgeDeleteMsg As String
Get Get
Return "Delete Bridge" Return EgtMsg(91672)
End Get End Get
End Property End Property
Public ReadOnly Property QualityMsg As String Public ReadOnly Property QualityMsg As String
Get Get
Return "Quality" Return EgtMsg(91673)
End Get
End Property
Public ReadOnly Property EnableCutMsg As String
Get
Return EgtMsg(91663)
End Get
End Property
Public ReadOnly Property SplitCutMsg As String
Get
Return EgtMsg(91664)
End Get
End Property
Public ReadOnly Property DirectSplitCutMsg As String
Get
Return EgtMsg(91665)
End Get
End Property
Public ReadOnly Property ManageStartEndCutMsg As String
Get
Return EgtMsg(91666)
End Get
End Property
Private Property m_LayNbArrTgBtnMsg As String = "Show"
Public ReadOnly Property LayNbArrTgBtnMsg As String
Get
Return m_LayNbArrTgBtnMsg
End Get
End Property
Private Property m_LayNbArrTgBtnImg As String = "/Resources/NewIcons/LightArrowOn.png"
Public ReadOnly Property LayNbArrTgBtnImg As String
Get
Return m_LayNbArrTgBtnImg
End Get End Get
End Property End Property
@@ -591,6 +656,8 @@ Public Class SplitModeVM
Sub New() Sub New()
' Creo riferimento a questa classe in OmagOFFICEMap ' Creo riferimento a questa classe in OmagOFFICEMap
OmagOFFICEMap.SetRefSplitModeVM(Me) OmagOFFICEMap.SetRefSplitModeVM(Me)
' leggo la configurazione
SetLayNbArrTgBtn_IsChecked((GetMainPrivateProfileInt(S_GENERAL, K_SHOWNBARROW, 1) <> 0))
End Sub End Sub
#End Region ' CONSTRUCTOR #End Region ' CONSTRUCTOR
@@ -752,7 +819,7 @@ Public Class SplitModeVM
End Sub End Sub
Private Sub AddTopText(ByRef sName As String) Private Sub AddTopText(ByRef sName As String)
sName &= " Top" sName &= EgtMsg(91217) ' Top
End Sub End Sub
Private Sub RemovePauseText(ByRef sName As String) Private Sub RemovePauseText(ByRef sName As String)
@@ -925,15 +992,15 @@ Public Class SplitModeVM
sText = EgtMsg(90791) & " " & i.ToString() & " " & DoubleToString(Mach.m_dSideAng, 2) & "°" sText = EgtMsg(90791) & " " & i.ToString() & " " & DoubleToString(Mach.m_dSideAng, 2) & "°"
End If End If
If Mach.m_bPause Then AddPauseText(sText) If Mach.m_bPause Then AddPauseText(sText)
m_ItemList.Add(New NameIdLsBxItem(sText, i - 1, Mach.m_bEnabled, MCH_OY.SAWING)) m_ItemList.Add(New NameIdLsBxItem(sText, i - 1, Mach.m_bEnabled, MCH_OY.SAWING, "/Resources/NewIcons/Movimento-manuale.png"))
ElseIf Mach.m_nType = MCH_OY.DRILLING Then ' Foratura ElseIf Mach.m_nType = MCH_OY.DRILLING Then ' Foratura
Dim sText As String = EgtMsg(90792) & " " & i.ToString() Dim sText As String = EgtMsg(90792) & " " & i.ToString()
If Mach.m_bPause Then AddPauseText(sText) If Mach.m_bPause Then AddPauseText(sText)
m_ItemList.Add(New NameIdLsBxItem(sText, i - 1, Mach.m_bEnabled, MCH_OY.DRILLING)) m_ItemList.Add(New NameIdLsBxItem(sText, i - 1, Mach.m_bEnabled, MCH_OY.DRILLING, "/Resources/NewIcons/Foro-singolo.png"))
ElseIf Mach.m_nType = MCH_OY.MILLING Then ' Fresatura ElseIf Mach.m_nType = MCH_OY.MILLING Then ' Fresatura
Dim sText As String = EgtMsg(90793) & " " & i.ToString() Dim sText As String = EgtMsg(90793) & " " & i.ToString()
If Mach.m_sLay = NAME_ONPATH Then AddTopText(sText) If Mach.m_sLay = NAME_ONPATH Then AddTopText(sText)
m_ItemList.Add(New NameIdLsBxItem(sText, i - 1, Mach.m_bEnabled, MCH_OY.MILLING)) m_ItemList.Add(New NameIdLsBxItem(sText, i - 1, Mach.m_bEnabled, MCH_OY.MILLING, "/Resources/NewIcons/Spianatura.png"))
ElseIf Mach.m_nType = MCH_OY.POCKETING Then ' Svuotatura ElseIf Mach.m_nType = MCH_OY.POCKETING Then ' Svuotatura
Dim sText As String = EgtMsg(90796) & " " & i.ToString() Dim sText As String = EgtMsg(90796) & " " & i.ToString()
If Mach.m_bPause Then AddPauseText(sText) If Mach.m_bPause Then AddPauseText(sText)
@@ -1139,6 +1206,11 @@ Public Class SplitModeVM
' Aggiungo a numero info con identificativo della lavorazione e viceversa ' Aggiungo a numero info con identificativo della lavorazione e viceversa
EgtSetInfo(nNbrId, "MId", m_MachiningList(nI).m_nId) EgtSetInfo(nNbrId, "MId", m_MachiningList(nI).m_nId)
EgtSetInfo(m_MachiningList(nI).m_nId, "NbrId", nNbrId) EgtSetInfo(m_MachiningList(nI).m_nId, "NbrId", nNbrId)
If Not m_LayNbArrTgBtn_IsChecked Then
EgtSetStatus(nNbrId, GDB_ST.OFF)
Else
EgtSetStatus(nNbrId, GDB_ST.ON_)
End If
End If End If
' Se taglio con lama, metto la direzione accanto al numero ' Se taglio con lama, metto la direzione accanto al numero
If m_MachiningList(nI).m_nType = MCH_OY.SAWING Then If m_MachiningList(nI).m_nType = MCH_OY.SAWING Then
@@ -1150,6 +1222,11 @@ Public Class SplitModeVM
' Aggiungo a freccia info con identificativo della lavorazione e viceversa ' Aggiungo a freccia info con identificativo della lavorazione e viceversa
EgtSetInfo(nArrId, "MId", m_MachiningList(nI).m_nId) EgtSetInfo(nArrId, "MId", m_MachiningList(nI).m_nId)
EgtSetInfo(m_MachiningList(nI).m_nId, "ArrId", nArrId) EgtSetInfo(m_MachiningList(nI).m_nId, "ArrId", nArrId)
If Not m_LayNbArrTgBtn_IsChecked Then
EgtSetStatus(nArrId, GDB_ST.OFF)
Else
EgtSetStatus(nArrId, GDB_ST.ON_)
End If
Else Else
m_MachiningList(nI).m_nArrId = GDB_ID.NULL m_MachiningList(nI).m_nArrId = GDB_ID.NULL
End If End If
@@ -1266,6 +1343,13 @@ Public Class SplitModeVM
EgtResetMark(nNbrId) EgtResetMark(nNbrId)
EgtResetMark(nArrId) EgtResetMark(nArrId)
End If End If
If Not m_LayNbArrTgBtn_IsChecked And Not bMark Then
EgtSetStatus(nNbrId, GDB_ST.OFF)
EgtSetStatus(nArrId, GDB_ST.OFF)
Else
EgtSetStatus(nNbrId, GDB_ST.ON_)
EgtSetStatus(nArrId, GDB_ST.ON_)
End If
End Sub End Sub
Private Sub ColorNumberArrow(nI As Integer) Private Sub ColorNumberArrow(nI As Integer)
@@ -1427,9 +1511,9 @@ Public Class SplitModeVM
' Forzo la fine della creazione di un elemento SplitCut ' Forzo la fine della creazione di un elemento SplitCut
Private Sub ResetSplitCut() Private Sub ResetSplitCut()
EgtResetMark(m_IdCurrRawSolid) EgtResetMark(m_IdCurrRawSolid)
ResetAllMark()
If m_IdSplitGroup <> GDB_ID.NULL Then If m_IdSplitGroup <> GDB_ID.NULL Then
EgtErase(m_IdSplitGroup) EgtErase(m_IdSplitGroup)
EgtDraw()
End If End If
m_bGetStartPoint = False m_bGetStartPoint = False
m_bGetEndPoint = False m_bGetEndPoint = False
@@ -1438,6 +1522,7 @@ Public Class SplitModeVM
m_IdSplitGroupLayer = GDB_ID.NULL m_IdSplitGroupLayer = GDB_ID.NULL
m_IdCurrRawSolid = GDB_ID.NULL m_IdCurrRawSolid = GDB_ID.NULL
m_IdSplitLineRemove = GDB_ID.NULL m_IdSplitLineRemove = GDB_ID.NULL
EgtDraw()
End Sub End Sub
' spegno il comando Split correntemente attivo ' spegno il comando Split correntemente attivo
@@ -2240,7 +2325,7 @@ Public Class SplitModeVM
If bFirstInd Then If bFirstInd Then
Dim ModifStartWindow As New ModifStartEndCutWindowV Dim ModifStartWindow As New ModifStartEndCutWindowV
Dim ModifStartWindowVM As New ModifStartEndCutWindowVM Dim ModifStartWindowVM As New ModifStartEndCutWindowVM
ModifStartWindowVM.Title = "Sawing" ModifStartWindowVM.Title = EgtMsg(90791) ' Sawing
ModifStartWindow.DataContext = ModifStartWindowVM ModifStartWindow.DataContext = ModifStartWindowVM
ModifStartWindow.Owner = Application.Current.MainWindow ModifStartWindow.Owner = Application.Current.MainWindow
ModifStartWindowVM.SetVal(dOrigUsal) ModifStartWindowVM.SetVal(dOrigUsal)
@@ -2301,7 +2386,7 @@ Public Class SplitModeVM
If bFirstMill Then If bFirstMill Then
Dim ModifStartWindow As New ModifStartEndCutWindowV Dim ModifStartWindow As New ModifStartEndCutWindowV
Dim ModifStartWindowVM As New ModifStartEndCutWindowVM Dim ModifStartWindowVM As New ModifStartEndCutWindowVM
ModifStartWindowVM.Title = "Milling" ModifStartWindowVM.Title = EgtMsg(90793) ' Milling
ModifStartWindow.DataContext = ModifStartWindowVM ModifStartWindow.DataContext = ModifStartWindowVM
ModifStartWindow.Owner = Application.Current.MainWindow ModifStartWindow.Owner = Application.Current.MainWindow
ModifStartWindowVM.SetVal(dOrigUsal) ModifStartWindowVM.SetVal(dOrigUsal)
@@ -2338,7 +2423,7 @@ Public Class SplitModeVM
' Dialogo richiesta valori ' Dialogo richiesta valori
Dim ModifStartWnd As New ModifStartEndWjWindowV Dim ModifStartWnd As New ModifStartEndWjWindowV
Dim ModifStartWndVM As New ModifStartEndWjWindowVM Dim ModifStartWndVM As New ModifStartEndWjWindowVM
ModifStartWndVM.Title = "Water jetting" ModifStartWndVM.Title = EgtMsg(90798) ' Water jetting
ModifStartWnd.DataContext = ModifStartWndVM ModifStartWnd.DataContext = ModifStartWndVM
ModifStartWnd.Owner = Application.Current.MainWindow ModifStartWnd.Owner = Application.Current.MainWindow
ModifStartWndVM.HoleVisibility = Visibility.Visible ModifStartWndVM.HoleVisibility = Visibility.Visible
@@ -2424,7 +2509,7 @@ Public Class SplitModeVM
If bFirstInd Then If bFirstInd Then
Dim ModifStartWindow As New ModifStartEndCutWindowV Dim ModifStartWindow As New ModifStartEndCutWindowV
Dim ModifStartWindowVM As New ModifStartEndCutWindowVM Dim ModifStartWindowVM As New ModifStartEndCutWindowVM
ModifStartWindowVM.Title = "Sawing" ModifStartWindowVM.Title = EgtMsg(90791) ' Sawing
ModifStartWindow.DataContext = ModifStartWindowVM ModifStartWindow.DataContext = ModifStartWindowVM
ModifStartWindow.Owner = Application.Current.MainWindow ModifStartWindow.Owner = Application.Current.MainWindow
ModifStartWindowVM.SetVal(dOrigUeal) ModifStartWindowVM.SetVal(dOrigUeal)
@@ -2479,7 +2564,7 @@ Public Class SplitModeVM
If bFirstMill Then If bFirstMill Then
Dim ModifStartWindow As New ModifStartEndCutWindowV Dim ModifStartWindow As New ModifStartEndCutWindowV
Dim ModifStartWindowVM As New ModifStartEndCutWindowVM Dim ModifStartWindowVM As New ModifStartEndCutWindowVM
ModifStartWindowVM.Title = "Milling" ModifStartWindowVM.Title = EgtMsg(90793) ' Milling
ModifStartWindow.DataContext = ModifStartWindowVM ModifStartWindow.DataContext = ModifStartWindowVM
ModifStartWindow.Owner = Application.Current.MainWindow ModifStartWindow.Owner = Application.Current.MainWindow
ModifStartWindowVM.SetVal(dOrigUeal) ModifStartWindowVM.SetVal(dOrigUeal)
@@ -2514,7 +2599,7 @@ Public Class SplitModeVM
' Dialogo richiesta valori ' Dialogo richiesta valori
Dim ModifStartWnd As New ModifStartEndWjWindowV() Dim ModifStartWnd As New ModifStartEndWjWindowV()
Dim ModifStartWndVM As New ModifStartEndWjWindowVM Dim ModifStartWndVM As New ModifStartEndWjWindowVM
ModifStartWndVM.Title = "Water jetting" ModifStartWndVM.Title = EgtMsg(90798) ' Water jetting
ModifStartWnd.DataContext = ModifStartWndVM ModifStartWnd.DataContext = ModifStartWndVM
ModifStartWnd.Owner = Application.Current.MainWindow ModifStartWnd.Owner = Application.Current.MainWindow
ModifStartWndVM.HoleVisibility = Visibility.Collapsed ModifStartWndVM.HoleVisibility = Visibility.Collapsed
@@ -2922,7 +3007,7 @@ Public Class SplitModeVM
'(m_MainWindow, m_MainWindow.m_CurrentMachine.Qualities, "Quality") '(m_MainWindow, m_MainWindow.m_CurrentMachine.Qualities, "Quality")
Dim ModifyQualityWnd As New ModifyQualityV Dim ModifyQualityWnd As New ModifyQualityV
Dim ModifyQuality As New ModifyQualityVM Dim ModifyQuality As New ModifyQualityVM
ModifyQuality.Title = "Quality" ModifyQuality.Title = EgtMsg(91673) ' Quality
ModifyQuality.QualityList = CurrentMachine.Qualities ModifyQuality.QualityList = CurrentMachine.Qualities
ModifyQualityWnd.DataContext = ModifyQuality ModifyQualityWnd.DataContext = ModifyQuality
ModifyQualityWnd.Owner = Application.Current.MainWindow ModifyQualityWnd.Owner = Application.Current.MainWindow
@@ -3015,6 +3100,12 @@ Public Class SplitModeVM
Return bOk Return bOk
End Function End Function
Friend Sub OnMouseDownScene_DoubleClick(sender As Object, e As System.Windows.Forms.MouseEventArgs)
OnMouseDownScene(sender, e)
If m_nSelected = GDB_ID.NULL Then Return
OnOff(Nothing)
End Sub
Friend Sub OnMouseDownScene(sender As Object, e As System.Windows.Forms.MouseEventArgs) Friend Sub OnMouseDownScene(sender As Object, e As System.Windows.Forms.MouseEventArgs)
' Se tasto premuoto allora attivo la selezione multipla da Scena ' Se tasto premuoto allora attivo la selezione multipla da Scena
Dim bKeyCtrlPressed = (Keyboard.Modifiers And ModifierKeys.Control) > 0 Dim bKeyCtrlPressed = (Keyboard.Modifiers And ModifierKeys.Control) > 0
@@ -3514,6 +3605,20 @@ Public Class SplitModeVM
DeselectWJBridgesPart() DeselectWJBridgesPart()
End If End If
End Sub End Sub
Friend Sub StatusOffNumbArrow(Status As GDB_ST)
For Each Item In m_MachiningList
Dim nOperId As Integer = Item.m_nId
Dim nNbrId As Integer = Item.m_nNbrId
Dim nArrId As Integer = Item.m_nArrId
Dim nInd As Integer = m_MachiningList.IndexOf(Item)
If nInd >= 0 AndAlso nInd < m_ItemList.Count AndAlso Not m_ItemList(nInd).IsSelected Then
EgtSetStatus(nNbrId, Status)
EgtSetStatus(nArrId, Status)
End If
Next
EgtDraw()
End Sub
#End Region ' EVENTS #End Region ' EVENTS
'----------------------------------------------------------------------------------------------- '-----------------------------------------------------------------------------------------------
@@ -3522,6 +3627,7 @@ Public Class SplitModeVM
Private m_nInd As Integer Private m_nInd As Integer
Private m_sName As String Private m_sName As String
Private m_sSourceImg As String
Private m_bIsActive As Boolean Private m_bIsActive As Boolean
Private m_nType As Integer Private m_nType As Integer
@@ -3546,6 +3652,16 @@ Public Class SplitModeVM
End Set End Set
End Property End Property
Public Property SourceImg As String
Get
Return m_sSourceImg
End Get
Set(value As String)
m_sSourceImg = value
NotifyPropertyChanged("SourceImg")
End Set
End Property
Public Property bIsActive As Boolean Public Property bIsActive As Boolean
Get Get
Return m_bIsActive Return m_bIsActive
@@ -3671,6 +3787,14 @@ Public Class SplitModeVM
Me.m_nType = nType Me.m_nType = nType
End Sub End Sub
Sub New(Name As String, Ind As Integer, bIsActive As Boolean, nType As Integer, sImg As String)
Me.m_sName = Name
Me.m_nInd = Ind
Me.m_bIsActive = bIsActive
Me.m_nType = nType
Me.m_sSourceImg = sImg
End Sub
End Class End Class
End Class End Class
+63
View File
@@ -0,0 +1,63 @@
<EgtWPFLib5:EgtCustomWindow x:Class="ChangeTableV"
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:EgtWPFLib5="clr-namespace:EgtWPFLib5;assembly=EgtWPFLib5"
Style="{DynamicResource {x:Type EgtWPFLib5:EgtCustomWindow}}"
WindowStyle="None" ResizeMode="NoResize" TitleBarHeight="30" IsResizable="False"
IsMinimizable="False" WindowStartupLocation="CenterScreen"
CloseCommand="{Binding CloseCommand,Mode=OneWay,UpdateSourceTrigger=PropertyChanged}"
Title="{Binding sTitle}" Height="150" Width="320">
<Grid>
<Grid.RowDefinitions>
<RowDefinition Height="2*"/>
<RowDefinition Height="1*"/>
</Grid.RowDefinitions>
<ItemsControl ItemsSource="{Binding CurrTableList}">
<!--Definisco l'organizzazione dei comandi-->
<ItemsControl.ItemsPanel>
<ItemsPanelTemplate>
<StackPanel Orientation="Horizontal"
HorizontalAlignment="Center"
VerticalAlignment="Center"/>
</ItemsPanelTemplate>
</ItemsControl.ItemsPanel>
<!--Definisco il contenuto del comando-->
<ItemsControl.ItemTemplate>
<DataTemplate>
<RadioButton GroupName="TabGrp"
IsChecked="{Binding IsActive}"
Width="60" Height="60"
Style="{DynamicResource ChangeTable_ToggleButton}">
<Grid>
<!--Nome della tavole: Tab #-->
<TextBlock Text="{Binding sName}"
HorizontalAlignment="Center"
Background="Transparent">
<TextBlock.Style>
<Style TargetType="{x:Type TextBlock}">
<Setter Property="Foreground" Value="{StaticResource Omag_LightGray}"/>
<Style.Triggers>
<DataTrigger Binding="{Binding IsChecked, RelativeSource={RelativeSource AncestorType=RadioButton}}" Value="True">
<Setter Property="Foreground" Value="{StaticResource Omag_White}"/>
</DataTrigger>
</Style.Triggers>
</Style>
</TextBlock.Style>
</TextBlock>
<!--Rappresentazione di una tavola di lavoro-->
<Image Source="{Binding ImgTab}" Margin="0,20,0,0"/>
</Grid>
</RadioButton>
</DataTemplate>
</ItemsControl.ItemTemplate>
</ItemsControl>
<UniformGrid Grid.Row="1" Columns="2">
<Button Content="Ok" Margin="5" Command="{Binding OkCommand}"
Style="{StaticResource OptionPanel_TextButton}"/>
<Button Content="Cancel" Margin="5" Command="{Binding CancelCommand}"
Style="{StaticResource OptionPanel_TextButton}"/>
</UniformGrid>
</Grid>
</EgtWPFLib5:EgtCustomWindow>
@@ -0,0 +1,3 @@
Public Class ChangeTableV
End Class
+143
View File
@@ -0,0 +1,143 @@
Public Class ChangeTableVM
Inherits VMBase
Private m_refChanTableV As ChangeTableV
Public Enum EnumDialogResult
OK
CANCEL
End Enum
Private m_MyDialogResult As EnumDialogResult
Public ReadOnly Property MyDialogResult As EnumDialogResult
Get
Return m_MyDialogResult
End Get
End Property
Private m_sTitle As String = "Seleziona tavola di lavoro"
Public ReadOnly Property sTitle As String
Get
Return m_sTitle
End Get
End Property
Private m_nSelectedTable As Integer = 0
Public ReadOnly Property nSelectedTable As Integer
Get
Return m_nSelectedTable
End Get
End Property
Private m_cmdOk As ICommand
Private m_cmdCancel As ICommand
Sub New(refV As ChangeTableV)
m_refChanTableV = refV
' Procedo alla creazione della lista delle tavole disponibili
Initialized()
End Sub
Private m_CurrTableList As New List(Of TableToChange)
Public ReadOnly Property CurrTableList As List(Of TableToChange)
Get
Return m_CurrTableList
End Get
End Property
Private Sub Initialized()
' recuepero l'inidce della tavola corrente
Dim nIndeXCurrTab As Integer = GetCurrentTable()
' creo la lista delle tavole disponibili (attivo il bottone della tavola attualmente in uso)
For nInd As Integer = 0 To GetTableCount() - 1
m_CurrTableList.Add(New TableToChange("Tab", (nInd + 1), ((nInd + 1) = nIndeXCurrTab)))
Next
End Sub
Public ReadOnly Property OkCommand() As ICommand
Get
If m_cmdOk Is Nothing Then
m_cmdOk = New Command(AddressOf Ok)
End If
Return m_cmdOk
End Get
End Property
Public ReadOnly Property CancelCommand() As ICommand
Get
If m_cmdCancel Is Nothing Then
m_cmdCancel = New Command(AddressOf Cancel)
End If
Return m_cmdCancel
End Get
End Property
Private Sub Ok()
' recupero l'indice della tavola impostata
For Each ItemTab As TableToChange In CurrTableList
If ItemTab.IsActive Then
m_nSelectedTable = ItemTab.nIndex
Exit For
End If
Next
m_MyDialogResult = EnumDialogResult.OK
' procedo alla chiusura della finetra
m_refChanTableV.Close()
End Sub
Private Sub Cancel()
m_MyDialogResult = EnumDialogResult.CANCEL
' procedo alla chiusura della finetra
m_refChanTableV.Close()
End Sub
End Class
Public Class TableToChange
Inherits VMBase
Private Property m_sName As String = "Tab"
Public ReadOnly Property sName As String
Get
Return m_sName
End Get
End Property
Private m_sImgTab As String = "\Resources\NewIcons\table.png"
Public ReadOnly Property ImgTab As String
Get
Return If(m_bIsActive, "\Resources\NewIcons\table.png", "\Resources\NewIcons\tableS.png")
End Get
End Property
Private Property m_nIndex As Integer = 3
Public ReadOnly Property nIndex As Integer
Get
Return m_nIndex
End Get
End Property
Private m_bIsActive As Boolean = False
Public Property IsActive As Boolean
Get
Return m_bIsActive
End Get
Set(value As Boolean)
m_bIsActive = value
If m_bIsActive Then
m_sImgTab = "\Resources\NewIcons\table.png"
Else
m_sImgTab = "\Resources\NewIcons\tableS.png"
End If
NotifyPropertyChanged(NameOf(IsActive))
NotifyPropertyChanged(NameOf(ImgTab))
End Set
End Property
Public Sub New(Name As String, Ind As Integer, IsCurrent As Boolean)
m_sName = Name & " " & Ind.ToString
m_nIndex = Ind
m_bIsActive = IsCurrent
NotifyPropertyChanged("IsActive")
End Sub
End Class
+4 -5
View File
@@ -1,5 +1,4 @@
Imports EgtUILib Imports EgtUILib
Imports EgtWPFLib5
Public Class MultiSelectionVM Public Class MultiSelectionVM
Inherits VMBase Inherits VMBase
@@ -8,24 +7,24 @@ Public Class MultiSelectionVM
Public ReadOnly Property TitleMsg As String Public ReadOnly Property TitleMsg As String
Get Get
Return "Multiple selection" Return EgtMsg(91681) ' Multiple selection
End Get End Get
End Property End Property
Public ReadOnly Property SelectionMsg As String Public ReadOnly Property SelectionMsg As String
Get Get
Return "Number of Parts" Return EgtMsg(91682) ' Number of Parts
End Get End Get
End Property End Property
Public ReadOnly Property OkMsg As String Public ReadOnly Property OkMsg As String
Get Get
Return "Ok" Return EgtMsg(91651) ' Ok
End Get End Get
End Property End Property
Public ReadOnly Property CancelMsg As String Public ReadOnly Property CancelMsg As String
Get Get
Return "Cancel" Return EgtMsg(91652) ' Cancel
End Get End Get
End Property End Property
+98 -82
View File
@@ -5,7 +5,7 @@
Margin="5,5,5,0"> Margin="5,5,5,0">
<GroupBox Header="Disegno parametrico" Style="{StaticResource GroupBoxSplit}"> <GroupBox Header="{Binding DrawingMsg}" Style="{StaticResource GroupBoxSplit}">
<Grid HorizontalAlignment="Center" <Grid HorizontalAlignment="Center"
VerticalAlignment="Center" Margin="0,2.5,0,0"> VerticalAlignment="Center" Margin="0,2.5,0,0">
<Grid.ColumnDefinitions> <Grid.ColumnDefinitions>
@@ -144,11 +144,15 @@
</Border> </Border>
<Border Style="{StaticResource Border}" Margin="0,1,0,5">
<Expander Name="myExpander1" Background="Transparent"
Foreground="{DynamicResource Omag_White}"
HorizontalAlignment="Stretch"
Header="{Binding ManagePartsMsg}"
ExpandDirection="Down" IsExpanded="{Binding bManageParts_IsExpanded}">
<GroupBox Header="Gestione parcheggio" Style="{StaticResource GroupBoxSplit}"> <UniformGrid Grid.Column="0" Columns="3" Margin="0,2.5,0,0">
<!--<Button Content="{Binding InsertPartMsg}"
<UniformGrid Grid.Column="0" Columns="3" Margin="0,2.5,0,0">
<!--<Button Content="{Binding InsertPartMsg}"
Style="{StaticResource OptionPanel_TextButton}" Style="{StaticResource OptionPanel_TextButton}"
Command="{Binding InsertPartCommand}" Command="{Binding InsertPartCommand}"
Margin="0,0,2.5,0"/> Margin="0,0,2.5,0"/>
@@ -157,156 +161,168 @@
Style="{StaticResource OptionPanel_TextButton}" Style="{StaticResource OptionPanel_TextButton}"
Command="{Binding StorePartCommand}" Command="{Binding StorePartCommand}"
Margin="2.5,0,0,0"/>--> Margin="2.5,0,0,0"/>-->
<StackPanel> <StackPanel>
<Button ToolTip="{Binding InsertPartMsg}" Grid.Column="1" <Button ToolTip="{Binding InsertPartMsg}" Grid.Column="1"
Style="{StaticResource Nest_Button_Img}" Style="{StaticResource Nest_Button_Img}"
Command="{Binding InsertPartCommand}" Command="{Binding InsertPartCommand}"
HorizontalContentAlignment="Stretch" HorizontalContentAlignment="Stretch"
Margin="0,0,0,0"> Margin="0,0,0,0">
<StackPanel> <StackPanel>
<Image Source="/Resources/NewIcons/Inserisci-pezzo.png" <Image Source="/Resources/NewIcons/Inserisci-pezzo.png"
Width="40" Height="40" HorizontalAlignment="Center" Width="40" Height="40" HorizontalAlignment="Center"
VerticalAlignment="Center" /> VerticalAlignment="Center" />
<!--<TextBlock Text="{Binding InsertPartMsg}" <!--<TextBlock Text="{Binding InsertPartMsg}"
HorizontalAlignment="Center"/>--> HorizontalAlignment="Center"/>-->
</StackPanel> </StackPanel>
</Button> </Button>
</StackPanel> </StackPanel>
<StackPanel> <StackPanel>
<Button ToolTip="{Binding StorePartMsg}" Grid.Column="1" <Button ToolTip="{Binding StorePartMsg}" Grid.Column="1"
Style="{StaticResource Nest_Button_Img}" Style="{StaticResource Nest_Button_Img}"
Command="{Binding StorePartCommand}" Command="{Binding StorePartCommand}"
HorizontalContentAlignment="Stretch" HorizontalContentAlignment="Stretch"
Margin="0,0,0,0"> Margin="0,0,0,0">
<StackPanel> <StackPanel>
<Image Source="/Resources/NewIcons/Parcheggia-pezzo.png" <Image Source="/Resources/NewIcons/Parcheggia-pezzo.png"
Width="40" Height="40" HorizontalAlignment="Center" Width="40" Height="40" HorizontalAlignment="Center"
VerticalAlignment="Center" /> VerticalAlignment="Center" />
<!--<TextBlock Text="{Binding StorePartMsg}" <!--<TextBlock Text="{Binding StorePartMsg}"
HorizontalAlignment="Center"/>--> HorizontalAlignment="Center"/>-->
</StackPanel> </StackPanel>
</Button> </Button>
</StackPanel> </StackPanel>
<StackPanel> <StackPanel>
<Button ToolTip="{Binding RemovePartMsg}" Grid.Column="1" <Button ToolTip="{Binding RemovePartMsg}" Grid.Column="1"
Style="{StaticResource Nest_Button_Img}" Style="{StaticResource Nest_Button_Img}"
Command="{Binding RemovePartCommand}" Command="{Binding RemovePartCommand}"
HorizontalContentAlignment="Stretch" HorizontalContentAlignment="Stretch"
Margin="0,0,0,0"> Margin="0,0,0,0">
<StackPanel> <StackPanel>
<Image Source="/Resources/NewIcons/Elimina-pezzo.png" <Image Source="/Resources/NewIcons/Elimina-pezzo.png"
Width="40" Height="40" HorizontalAlignment="Center" Width="40" Height="40" HorizontalAlignment="Center"
VerticalAlignment="Center" /> VerticalAlignment="Center" />
<!--<TextBlock Text="{Binding RemovePartMsg}" <!--<TextBlock Text="{Binding RemovePartMsg}"
HorizontalAlignment="Center"/>--> HorizontalAlignment="Center"/>-->
</StackPanel> </StackPanel>
</Button> </Button>
</StackPanel> </StackPanel>
<!--<ToggleButton Content="{Binding StartCurvWJMsg}" Grid.Column="2" <!--<ToggleButton Content="{Binding StartCurvWJMsg}" Grid.Column="2"
Visibility="{Binding StartCurvWJ_Visibility}" Visibility="{Binding StartCurvWJ_Visibility}"
Style="{StaticResource OptionPanel_ToggleButton}" Style="{StaticResource OptionPanel_ToggleButton}"
IsChecked="{Binding bStartCurvWJ}" IsChecked="{Binding bStartCurvWJ}"
Margin="2.5,0,2.5,0"/>--> Margin="2.5,0,2.5,0"/>-->
</UniformGrid> </UniformGrid>
</Expander>
</Border>
</GroupBox> <Border Style="{StaticResource Border}" Margin="0,1,0,5">
<Expander Name="myExpander2" Background="Transparent"
Foreground="{DynamicResource Omag_White}"
HorizontalAlignment="Stretch"
Header="{Binding SelectionPartMsg}"
ExpandDirection="Down" IsExpanded="{Binding bSelectionParts_IsExpanded}">
<GroupBox Header="Gestione selezione" Style="{StaticResource GroupBoxSplit}"> <UniformGrid Grid.Column="0" Columns="{Binding CountColumn}" Margin="0,2.5,0,0">
<UniformGrid Grid.Column="0" Columns="{Binding CountColumn}" Margin="0,2.5,0,0"> <StackPanel>
<Button ToolTip="{Binding SelectAllMsg}" Grid.Column="1"
<StackPanel>
<Button ToolTip="{Binding SelectAllMsg}" Grid.Column="1"
Style="{StaticResource Nest_Button_Img}" Style="{StaticResource Nest_Button_Img}"
Command="{Binding SelectAllCommand}" Command="{Binding SelectAllCommand}"
HorizontalContentAlignment="Stretch" HorizontalContentAlignment="Stretch"
Margin="2.5,0,0,0"> Margin="2.5,0,0,0">
<StackPanel> <StackPanel>
<Image Source="/Resources/NewIcons/Seleziona-tutto.png" <Image Source="/Resources/NewIcons/Seleziona-tutto.png"
Width="40" Height="40" HorizontalAlignment="Center" Width="40" Height="40" HorizontalAlignment="Center"
VerticalAlignment="Center" /> VerticalAlignment="Center" />
<!--<TextBlock Text="{Binding SelectAllMsg}" <!--<TextBlock Text="{Binding SelectAllMsg}"
HorizontalAlignment="Center"/>--> HorizontalAlignment="Center"/>-->
</StackPanel> </StackPanel>
</Button> </Button>
</StackPanel> </StackPanel>
<StackPanel> <StackPanel>
<Button ToolTip="{Binding DeselectAllMsg}" Grid.Column="1" <Button ToolTip="{Binding DeselectAllMsg}" Grid.Column="1"
Style="{StaticResource Nest_Button_Img}" Style="{StaticResource Nest_Button_Img}"
Command="{Binding DeselectAllCommand}" Command="{Binding DeselectAllCommand}"
HorizontalContentAlignment="Stretch" HorizontalContentAlignment="Stretch"
Margin="2.5,0,0,0"> Margin="2.5,0,0,0">
<StackPanel> <StackPanel>
<Image Source="/Resources/NewIcons/Deseleziona-tutto.png" <Image Source="/Resources/NewIcons/Deseleziona-tutto.png"
Width="40" Height="40" HorizontalAlignment="Center" Width="40" Height="40" HorizontalAlignment="Center"
VerticalAlignment="Center" /> VerticalAlignment="Center" />
<!--<TextBlock Text="{Binding DeselectAllMsg}" <!--<TextBlock Text="{Binding DeselectAllMsg}"
HorizontalAlignment="Center"/>--> HorizontalAlignment="Center"/>-->
</StackPanel> </StackPanel>
</Button> </Button>
</StackPanel> </StackPanel>
<StackPanel> <StackPanel>
<ToggleButton ToolTip="{Binding DragRectangleMsg}" Grid.Column="1" <ToggleButton ToolTip="{Binding DragRectangleMsg}" Grid.Column="1"
Visibility="{Binding DragRectangle_Visibility}" Visibility="{Binding DragRectangle_Visibility}"
Style="{StaticResource Nest_ToggleButton_Img}" Style="{StaticResource Nest_ToggleButton_Img}"
IsChecked="{Binding bDragRectangle}" IsChecked="{Binding bDragRectangle}"
HorizontalContentAlignment="Stretch" HorizontalContentAlignment="Stretch"
Margin="2.5,0,0,0"> Margin="2.5,0,0,0">
<StackPanel> <StackPanel>
<Image Source="/Resources/NewIcons/Drag_Rettangle.png" <Image Source="/Resources/NewIcons/Drag_Rettangle.png"
Width="40" Height="40" HorizontalAlignment="Center" Width="40" Height="40" HorizontalAlignment="Center"
VerticalAlignment="Center" /> VerticalAlignment="Center" />
<!--<TextBlock Text="{Binding DragRectangleMsg}" <!--<TextBlock Text="{Binding DragRectangleMsg}"
HorizontalAlignment="Center"/>--> HorizontalAlignment="Center"/>-->
</StackPanel> </StackPanel>
</ToggleButton> </ToggleButton>
</StackPanel> </StackPanel>
</UniformGrid> </UniformGrid>
</GroupBox> </Expander>
</Border>
<GroupBox Header="Gestione tgali WJ" Style="{StaticResource GroupBoxSplit}" Visibility="{Binding WJ_Cmd_Visibility}"> <Border Style="{StaticResource Border}" Margin="0,1,0,5" Visibility="{Binding WJ_Cmd_Visibility}">
<UniformGrid Grid.Column="0" Columns="2" Margin="2.5,0,0,0" Visibility="{Binding WJ_Cmd_Visibility}"> <Expander Name="myExpander3" Background="Transparent"
Foreground="{DynamicResource Omag_White}"
<StackPanel HorizontalAlignment="Right" Margin="0,0,3.75,0"> HorizontalAlignment="Stretch"
<ToggleButton ToolTip="{Binding SplitCurvWJMsg}" Grid.Column="1" Header="{Binding ManageWJMsg}"
ExpandDirection="Down" IsExpanded="{Binding bManageWJ_IsExpanded}">
<UniformGrid Grid.Column="0" Columns="2" Margin="2.5,0,0,0" Visibility="{Binding WJ_Cmd_Visibility}">
<StackPanel HorizontalAlignment="Right" Margin="0,0,3.75,0">
<ToggleButton ToolTip="{Binding SplitCurvWJMsg}" Grid.Column="1"
Style="{StaticResource Nest_ToggleButton_Img}" Style="{StaticResource Nest_ToggleButton_Img}"
IsChecked="{Binding bSplitCurvWJ}" IsChecked="{Binding bSplitCurvWJ}"
HorizontalContentAlignment="Stretch" HorizontalContentAlignment="Stretch"
Margin="0,0,0,0"> Margin="0,0,0,0">
<StackPanel> <StackPanel>
<Image Source="/Resources/NewIcons/SPLIT-WJ.png" <Image Source="/Resources/NewIcons/SPLIT-WJ.png"
Width="40" Height="40" HorizontalAlignment="Center" Width="40" Height="40" HorizontalAlignment="Center"
VerticalAlignment="Center" /> VerticalAlignment="Center" />
<!--<TextBlock Text="{Binding SplitCurvWJMsg}" <!--<TextBlock Text="{Binding SplitCurvWJMsg}"
HorizontalAlignment="Center"/>--> HorizontalAlignment="Center"/>-->
</StackPanel> </StackPanel>
</ToggleButton> </ToggleButton>
</StackPanel> </StackPanel>
<StackPanel HorizontalAlignment="Left" Margin="3.75,0,0,0"> <StackPanel HorizontalAlignment="Left" Margin="3.75,0,0,0">
<ToggleButton ToolTip="{Binding StartCurvWJMsg}" Grid.Column="1" <ToggleButton ToolTip="{Binding StartCurvWJMsg}" Grid.Column="1"
Style="{StaticResource Nest_ToggleButton_Img}" Style="{StaticResource Nest_ToggleButton_Img}"
IsChecked="{Binding bStartCurvWJ}" IsChecked="{Binding bStartCurvWJ}"
HorizontalContentAlignment="Stretch" HorizontalContentAlignment="Stretch"
Margin="0,0,0,0"> Margin="0,0,0,0">
<StackPanel> <StackPanel>
<Image Source="/Resources/NewIcons/START-WJ.png" <Image Source="/Resources/NewIcons/START-WJ.png"
Width="40" Height="40" HorizontalAlignment="Center" Width="40" Height="40" HorizontalAlignment="Center"
VerticalAlignment="Center" /> VerticalAlignment="Center" />
<!--<TextBlock Text="{Binding StartCurvWJMsg}" <!--<TextBlock Text="{Binding StartCurvWJMsg}"
HorizontalAlignment="Center"/>--> HorizontalAlignment="Center"/>-->
</StackPanel> </StackPanel>
</ToggleButton> </ToggleButton>
</StackPanel> </StackPanel>
</UniformGrid>
</Expander>
</Border>
</UniformGrid>
</GroupBox>
<Button Content="{Binding ResetMsg}" <Button Content="{Binding ResetMsg}"
Style="{StaticResource OptionPanel_TextButton}" Style="{StaticResource OptionPanel_TextButton}"
+392 -1
View File
@@ -1,5 +1,6 @@
Imports EgtWPFLib5 Imports EgtWPFLib5
Imports EgtUILib Imports EgtUILib
Imports OmagOFFICE.ChangeTableVM
Public Class NestingTabVM Public Class NestingTabVM
Inherits VMBase Inherits VMBase
@@ -169,6 +170,42 @@ Public Class NestingTabVM
End Get End Get
End Property End Property
Private m_bManageParts_IsExpanded As Boolean = True
Public Property bManageParts_IsExpanded As Boolean
Get
Return m_bManageParts_IsExpanded
End Get
Set(value As Boolean)
m_bManageParts_IsExpanded = value
NotifyPropertyChanged(NameOf(bManageParts_IsExpanded))
WriteMainPrivateProfileString("Nest", "ManageParts", If(m_bManageParts_IsExpanded, "1", "0"))
End Set
End Property
Private m_bSelectionParts_IsExpanded As Boolean = True
Public Property bSelectionParts_IsExpanded As Boolean
Get
Return m_bSelectionParts_IsExpanded
End Get
Set(value As Boolean)
m_bSelectionParts_IsExpanded = value
NotifyPropertyChanged(NameOf(bSelectionParts_IsExpanded))
WriteMainPrivateProfileString("Nest", "SelectionParts", If(m_bSelectionParts_IsExpanded, "1", "0"))
End Set
End Property
Private m_bManageWJ_IsExpanded As Boolean = True
Public Property bManageWJ_IsExpanded As Boolean
Get
Return m_bManageWJ_IsExpanded
End Get
Set(value As Boolean)
m_bManageWJ_IsExpanded = value
NotifyPropertyChanged(NameOf(bManageWJ_IsExpanded))
WriteMainPrivateProfileString("Nest", "ManageWJ", If(m_bManageWJ_IsExpanded, "1", "0"))
End Set
End Property
#Region "Messages" #Region "Messages"
Public ReadOnly Property InsertPartMsg As String Public ReadOnly Property InsertPartMsg As String
@@ -191,7 +228,7 @@ Public Class NestingTabVM
Public ReadOnly Property DragRectangleMsg As String Public ReadOnly Property DragRectangleMsg As String
Get Get
Return "Drag Rectangle" Return EgtMsg(91670)
End Get End Get
End Property End Property
@@ -233,8 +270,54 @@ Public Class NestingTabVM
End Get End Get
End Property End Property
Public ReadOnly Property DrawingMsg As String
Get
Return EgtMsg(91657)
End Get
End Property
Public ReadOnly Property ManagePartsMsg As String
Get
Return EgtMsg(91660)
End Get
End Property
Public ReadOnly Property SelectionPartMsg As String
Get
Return EgtMsg(91661)
End Get
End Property
Public ReadOnly Property ManageWJMsg As String
Get
Return EgtMsg(91662)
End Get
End Property
#End Region ' Messages #End Region ' Messages
#Region "ToolTip"
Public ReadOnly Property ParametricToolTip As String
Get
Return EgtMsg(91657)
End Get
End Property
Public ReadOnly Property ImportDrawToolTip As String
Get
Return EgtMsg(91658)
End Get
End Property
Public ReadOnly Property ImportCSVToolTip As String
Get
Return EgtMsg(91659)
End Get
End Property
#End Region ' ToolTip
' Definizione comandi ' Definizione comandi
Private m_cmdDraw As ICommand Private m_cmdDraw As ICommand
Private m_cmdImportDxf As ICommand Private m_cmdImportDxf As ICommand
@@ -276,6 +359,12 @@ Public Class NestingTabVM
#Region "METHODS" #Region "METHODS"
Friend Function InitNesting() As Boolean Friend Function InitNesting() As Boolean
m_bManageParts_IsExpanded = GetMainPrivateProfileInt("Nest", "ManageParts", 0) <> 0
NotifyPropertyChanged(NameOf(bManageParts_IsExpanded))
m_bSelectionParts_IsExpanded = GetMainPrivateProfileInt("Nest", "SelectionParts", 0) <> 0
NotifyPropertyChanged(NameOf(bSelectionParts_IsExpanded))
m_bManageWJ_IsExpanded = GetMainPrivateProfileInt("Nest", "ManageWJ", 0) <> 0
NotifyPropertyChanged(NameOf(bManageWJ_IsExpanded))
' Se previsto, abilito bottone VeinMatching ' Se previsto, abilito bottone VeinMatching
If Not IsNothing(OmagOFFICEMap.refMainWindowVM.VeinMatchingWnd) Then If Not IsNothing(OmagOFFICEMap.refMainWindowVM.VeinMatchingWnd) Then
OmagOFFICEMap.refVeinMatchPanelVM.VeinMatchIsEnabled = True OmagOFFICEMap.refVeinMatchPanelVM.VeinMatchIsEnabled = True
@@ -319,6 +408,8 @@ Public Class NestingTabVM
m_CsvImportWindow = New CsvWindowV(Application.Current.MainWindow, New CsvWindowVM) m_CsvImportWindow = New CsvWindowV(Application.Current.MainWindow, New CsvWindowVM)
m_CsvImportWindow.Show() m_CsvImportWindow.Show()
End If End If
' Per sicurezza spengo la visualizzazione di tutti i percorsi di lavorazione
HideAllMachinings()
EgtZoom(ZM.ALL) EgtZoom(ZM.ALL)
Return True Return True
End Function End Function
@@ -494,6 +585,208 @@ Public Class NestingTabVM
m_bStartRot = False m_bStartRot = False
End Sub End Sub
Friend Function RotateAllRawParts(dAngDeg As Double, Optional bIsReg As Boolean = True) As Boolean
' Recupero rotazione totale
Dim dRegRot As Double = CamAuto.GetRegistrationRotation()
' Recupero il centro del grezzo iniziale per usarlo come centro della rotazione
Dim ptCen As New Point3d
GetRawCenter(ptCen)
' Provo la rotazione
Dim bMoveOk As Boolean = True
Dim nPhase As Integer = 1
Dim nRawId As Integer = GDB_ID.NULL
While nPhase <= EgtGetPhaseCount()
EgtSetCurrPhase(nPhase)
nRawId = EgtGetFirstRawPart()
While nRawId <> GDB_ID.NULL
If EgtVerifyRawPartPhase(nRawId, nPhase) Then
' Rotazione del centro come spostamento grezzo più rotazione grezzo attorno al suo centro
Dim ptRawCen As New Point3d
EgtGetRawPartCenter(nRawId, ptRawCen)
Dim ptMovCen As New Point3d(ptRawCen)
ptMovCen.Rotate(ptCen, Vector3d.Z_AX(), dAngDeg)
If Not EgtMoveRawPart(nRawId, ptMovCen - ptRawCen) Then
bMoveOk = False
Exit While
End If
If Not EgtRotateRawPart(nRawId, Vector3d.Z_AX(), dAngDeg) Then
EgtMoveRawPart(nRawId, -(ptMovCen - ptRawCen))
bMoveOk = False
Exit While
End If
End If
nRawId = EgtGetNextRawPart(nRawId)
End While
If Not bMoveOk Then Exit While
nPhase += 1
End While
' Se rotazione impossibile, ripristino posizione dei grezzi già spostati
If Not bMoveOk Then
Dim nRevPhase As Integer = 1
Dim nRevRawId As Integer = GDB_ID.NULL
While nRevPhase <= nPhase
EgtSetCurrPhase(nRevPhase)
nRevRawId = EgtGetFirstRawPart()
While nRevRawId <> GDB_ID.NULL And (nRevPhase < nPhase Or nRevRawId <> nRawId)
If EgtVerifyRawPartPhase(nRevRawId, nRevPhase) Then
' Eseguo al contrario
EgtRotateRawPart(nRevRawId, Vector3d.Z_AX(), -dAngDeg)
Dim ptRawCen As New Point3d
EgtGetRawPartCenter(nRevRawId, ptRawCen)
Dim ptMovCen As New Point3d(ptRawCen)
ptMovCen.Rotate(ptCen, Vector3d.Z_AX(), -dAngDeg)
EgtMoveRawPart(nRevRawId, (ptMovCen - ptRawCen))
End If
nRevRawId = EgtGetNextRawPart(nRevRawId)
End While
nRevPhase += 1
End While
' Altrimenti eseguo sistemazioni
Else
' Origine della tavola
Dim ptOri As Point3d
EgtGetTableRef(1, ptOri)
' Annullo rotazioni dei grezzi e le rifaccio sulle parti componenti
Dim nRevPhase As Integer = 1
Dim nRevRawId As Integer = GDB_ID.NULL
While nRevPhase <= EgtGetPhaseCount()
EgtSetCurrPhase(nRevPhase)
nRevRawId = EgtGetFirstRawPart()
While nRevRawId <> GDB_ID.NULL
If EgtVerifyRawPartPhase(nRevRawId, nRevPhase) Then
' Eseguo al contrario
EgtRotateRawPart(nRevRawId, Vector3d.Z_AX(), -dAngDeg)
Dim ptRawCen As New Point3d
EgtGetRawPartCenter(nRevRawId, ptRawCen)
Dim ptMovCen As New Point3d(ptRawCen)
ptMovCen.Rotate(ptCen, Vector3d.Z_AX(), -dAngDeg)
EgtMoveRawPart(nRevRawId, (ptMovCen - ptRawCen))
' Rifaccio sugli oggetti contenuti nel grezzo
Dim nId As Integer = EgtGetFirstInGroup(nRevRawId)
While nId <> GDB_ID.NULL
EgtRotate(nId, ptCen, Vector3d.Z_AX(), dAngDeg, GDB_RT.GLOB)
nId = EgtGetNext(nId)
End While
' Imposto posizione esatta del grezzo dopo rotazione
Dim b3Raw As New BBox3d
EgtGetRawPartBBox(nRevRawId, b3Raw)
EgtMoveToCornerRawPart(nRevRawId, (b3Raw.Min() - ptOri) + Point3d.ORIG(), MCH_CR.BL)
End If
nRevRawId = EgtGetNextRawPart(nRevRawId)
End While
nRevPhase += 1
End While
' Ruoto opportunamente anche i dati di movimento
Dim nOpeId As Integer = EgtGetFirstActiveOperation()
While nOpeId <> GDB_ID.NULL
If EgtGetOperationType(nOpeId) = MCH_OY.DISP Then
' Recupero i gruppi con i dati
Dim nRpmId As Integer = EgtGetFirstNameInGroup(nOpeId, "Rpm*")
While nRpmId <> GDB_ID.NULL
' Recupero le informazioni
Dim vtRawMove As New Vector3d
If EgtGetInfo(nRpmId, "Mv", vtRawMove) Then
vtRawMove.Rotate(Vector3d.Z_AX(), dAngDeg)
EgtSetInfo(nRpmId, "Mv", vtRawMove)
End If
Dim vtDelta As New Vector3d
If EgtGetInfo(nRpmId, "Dt", vtDelta) Then
vtDelta.Rotate(Vector3d.Z_AX(), dAngDeg)
EgtSetInfo(nRpmId, "Dt", vtDelta)
End If
Dim dAngRotDeg As Double = 0
If EgtGetInfo(nRpmId, "Ad", dAngRotDeg) Then
EgtSetInfo(nRpmId, "Ad", dAngRotDeg + dAngDeg)
End If
' Cerco un altro gruppo
nRpmId = EgtGetNextName(nRpmId, "Rpm*")
End While
End If
nOpeId = EgtGetNextActiveOperation(nOpeId)
End While
' Se non è registrazione, ruoto anche l'eventuale foto della lastra
'If Not bIsReg Then
' Dim nPhotoId = m_CurrProjPage.GetPhoto()
' If nPhotoId <> GDB_ID.NULL then EgtRotatePhoto(nPhotoId, ptCen, Vector3d.Z_AX(), dAngDeg)
'End If
' Aggiorno rotazione totale
If bIsReg Then
CamAuto.SetRegistrationRotation(dRegRot + dAngDeg)
Else
CamAuto.SetRegistrationRotation(0)
End If
' Dichiaro grezzo per punti
EgtSetInfo(GetCurrentRaw(), KEY_RAWBYPOINTS, 1)
End If
' Ruoto i punti SpotReg disegnati in Office
If bMoveOk Then
RotateAllSpotRegistration(dAngDeg, ptCen)
End If
' Ripristino lo stato iniziale
EgtSetCurrPhase(1)
HideAllMachinings()
Return bMoveOk
End Function
' Ruoto solo gli elementi SpotReg creati nel programma OFFICE
Private Sub RotateAllSpotRegistration(dAngRot As Double, ptCen As Point3d)
Dim nId As Integer = EgtGetFirstInGroup(OmagOFFICEMap.refRawPartTabVM.m_nRegGroupId)
While nId <> GDB_ID.NULL
Dim sName As String = String.Empty
EgtGetName(nId, sName)
If Not sName.Contains("CUT") Then
EgtRotate(nId, ptCen, Vector3d.Z_AX, dAngRot)
End If
nId = EgtGetNext(nId)
End While
EgtDraw()
End Sub
Private Sub MoveAllRawParts(vtMove As Vector3d)
' Provo il movimento
Dim bMoveOk As Boolean = True
Dim nPhase As Integer = 1
Dim nRawId As Integer = GDB_ID.NULL
While nPhase <= EgtGetPhaseCount()
EgtSetCurrPhase(nPhase)
nRawId = EgtGetFirstRawPart()
While nRawId <> GDB_ID.NULL
If EgtVerifyRawPartPhase(nRawId, nPhase) Then
If Not EgtMoveRawPart(nRawId, vtMove) Then
bMoveOk = False
Exit While
End If
End If
nRawId = EgtGetNextRawPart(nRawId)
End While
If Not bMoveOk Then Exit While
nPhase += 1
End While
' Se movimento impossibile, ripristino posizione dei grezzi già spostati
If Not bMoveOk Then
Dim nRevPhase As Integer = 1
Dim nRevRawId As Integer = GDB_ID.NULL
While nRevPhase <= nPhase
EgtSetCurrPhase(nRevPhase)
nRevRawId = EgtGetFirstRawPart()
While nRevRawId <> GDB_ID.NULL And (nRevPhase < nPhase Or nRevRawId <> nRawId)
If EgtVerifyRawPartPhase(nRevRawId, nRevPhase) Then
EgtMoveRawPart(nRevRawId, -vtMove)
End If
nRevRawId = EgtGetNextRawPart(nRevRawId)
End While
nRevPhase += 1
End While
End If
' Muovo i punti SpotReg generati nel programma OFFICE
If bMoveOk Then
OmagOFFICEMap.refRawPartTabVM.MoveAllSpotRegistration(vtMove)
End If
' Ripristino lo stato iniziale
EgtSetCurrPhase(1)
HideAllMachinings()
End Sub
' verifica che la rotazione sia ammessa ' verifica che la rotazione sia ammessa
Private Function RotatePartInsideBond(dAngRotDeg As Double, nIdMove As Integer) As Boolean Private Function RotatePartInsideBond(dAngRotDeg As Double, nIdMove As Integer) As Boolean
' Verifico se ci sono dei pezzi bloccati in rotazione ' Verifico se ci sono dei pezzi bloccati in rotazione
@@ -2114,6 +2407,8 @@ Public Class NestingTabVM
While nId <> GDB_ID.NULL While nId <> GDB_ID.NULL
' Recupero l'identificativo del pezzo cui appartiene ' Recupero l'identificativo del pezzo cui appartiene
Dim nPartId As Integer = EgtGetParent(EgtGetParent(nId)) Dim nPartId As Integer = EgtGetParent(EgtGetParent(nId))
Dim sNamePartId As String = String.Empty
EgtGetName(nPartId, sNamePartId)
Dim bPartInTable As Boolean = (EgtGetParent(nPartId) = GetRawId()) Dim bPartInTable As Boolean = (EgtGetParent(nPartId) = GetRawId())
If EgtIsPart(nPartId) Or bPartInTable Then If EgtIsPart(nPartId) Or bPartInTable Then
Dim nStat As Integer = GDB_ST.ON_ Dim nStat As Integer = GDB_ST.ON_
@@ -2151,6 +2446,102 @@ Public Class NestingTabVM
' Drag possibile ' Drag possibile
m_bDrag = True m_bDrag = True
Exit While Exit While
Else
' verifico se l'elemento selezionato è il nome della tavola
If EgtGetType(nId) = GDB_TY.EXT_TEXT AndAlso (sNamePartId = MAIN_TAB Or
sNamePartId = SECOND_TAB Or
sNamePartId = THIRD_TAB Or
sNamePartId = FORTH_TAB) Then
' Apro la finestra per la selezione della tavola da usare
Dim ChgTbV As New ChangeTableV
Dim ChgTbVM As New ChangeTableVM(ChgTbV)
ChgTbV.DataContext = ChgTbVM
ChgTbV.ShowDialog()
' se non è stata eseguita nessuna scelta esco dal ciclo
If ChgTbVM.MyDialogResult = EnumDialogResult.CANCEL Or ChgTbVM.nSelectedTable = 0 Then Exit While
' recupero il nome della tavola corrente
Dim sOtherTab As String = GetTableName(ChgTbVM.nSelectedTable)
EgtChangeTable(sOtherTab, True)
EstCalc.AdjustAdditionalTable(True)
EgtSetMachineLook(MCH_LOOK.TAB)
' aggiorno le lavorazioni
UpdateAllMachiningsToolpaths()
' aggiorno i movimenti pezzi tra disposizioni
For nI As Integer = 1 To EgtGetPhaseCount()
EgtSetCurrPhase(nI)
Dim nDispId As Integer = EgtGetPhaseDisposition(nI)
SpecialApplyDisposition(nDispId, True)
Next
' aggiorno posizionamento ventose per lavorazioni da sotto
UpdateVacuumsForDrip()
' dichiaro tutto aggiornato
EstCalc.SetOrderMachiningFlag()
EgtSetCurrPhase(1)
' aggiorno posizione pezzi in parcheggio
Dim nPPId As Integer = EgtGetFirstPart()
While nPPId <> GDB_ID.NULL
PackPartInStore(nPPId)
nPPId = EgtGetNextPart(nPPId)
End While
' se prevista rotazione
If GetPrivateProfileInt(S_TABLE, K_CHANGETABWD, 0, CurrentMachine.sMachIniFile) = 2 Then
' Dati tavola
Dim b3Tab As New BBox3d
EgtGetTableArea(1, b3Tab)
' Box lastra
Dim b3OrigRaw As New BBox3d
GetRawBox(b3OrigRaw)
' Allargo i limiti della tavola in tutte le fasi
Const TAB_OFFS As Double = 3000
For nI As Integer = 1 To EgtGetPhaseCount()
EgtSetCurrPhase(nI)
EgtSetTableAreaOffset(TAB_OFFS, TAB_OFFS, TAB_OFFS, TAB_OFFS)
Next
' aggiorno posizionamento ventose per lavorazioni da sotto
UpdateVacuumsForDrip()
' dichiaro tutto aggiornato
EstCalc.SetOrderMachiningFlag()
EgtSetCurrPhase(1)
' Rotazione
Dim dAngRot As Double = If(sOtherTab = SECOND_TAB, 180, -180)
If Not RotateAllRawParts(dAngRot, False) Then
'm_CurrProjPage.SetWarningMessage(EgtMsg(90339)) 'Rotazione impossibile
End If
' Traslazione per riportare la lastra nella stessa posizione rispetto all'angolo BL che diveta TR e viceversa
Dim b3Raw As New BBox3d
GetRawBox(b3Raw)
Dim vtMove As Vector3d
If sOtherTab = SECOND_TAB Then
Dim vtDiffIni As Vector3d = b3OrigRaw.Min() - b3Tab.Min()
Dim vtDiffFin As Vector3d = b3Tab.Max() - b3Raw.Max()
vtMove = vtDiffFin - vtDiffIni
Else
Dim vtDiffIni As Vector3d = b3Tab.Max() - b3OrigRaw.Max()
Dim vtDiffFin As Vector3d = b3Raw.Min() - b3Tab.Min()
vtMove = -(vtDiffFin - vtDiffIni)
End If
vtMove.z = 0
MoveAllRawParts(vtMove)
' Ripristino i limiti della tavola in tutte le fasi
For nI As Integer = 1 To EgtGetPhaseCount()
EgtSetCurrPhase(nI)
EgtSetTableAreaOffset(0, 0, 0, 0)
Next
EgtSetCurrPhase(1)
HideAllMachinings()
End If
' visualizzazione
EgtZoom(ZM.ALL)
' Elimino il datacontext della finsetra per la selezione della tavola
ChgTbVM = Nothing
Exit While
End If
End If End If
nId = EgtGetNextObjInSelWin() nId = EgtGetNextObjInSelWin()
End While End While
+10 -8
View File
@@ -14,24 +14,26 @@
Padding="0,0,0,0" Padding="0,0,0,0"
Margin="5,0.5,5,0" Margin="5,0.5,5,0"
Style="{StaticResource TabControlOptinPanel}"> Style="{StaticResource TabControlOptinPanel}">
<TabItem ToolTip="{Binding RawPartTabMsg}" IsEnabled="{Binding RawTabIsEnabled}" <TabItem IsEnabled="{Binding RawTabIsEnabled}"
Margin="0,0,0,0" Margin="0,0,0,0"
Style="{StaticResource TabItemOptinPanel}"> Style="{StaticResource TabItemOptinPanel}">
<TabItem.Header> <TabItem.Header>
<StackPanel Orientation="Horizontal" Width="35" Height="35"> <StackPanel Orientation="Horizontal" Width="35" Height="35">
<Image Source="/Resources/NewIcons/icone-tagli-5.png" Stretch="UniformToFill"/> <Image Source="/Resources/NewIcons/icone-tagli-5.png"
Stretch="UniformToFill"
ToolTip="{Binding RawPartTabMsg}"/>
</StackPanel> </StackPanel>
</TabItem.Header> </TabItem.Header>
<TabItem.Content> <TabItem.Content>
<OmagOFFICE:RawPartTabV DataContext="{StaticResource RawPartTabVM}"/> <OmagOFFICE:RawPartTabV DataContext="{StaticResource RawPartTabVM}"/>
</TabItem.Content> </TabItem.Content>
</TabItem> </TabItem>
<TabItem ToolTip="{Binding NestingTabMsg}" IsEnabled="{Binding NestTabIsEnabled}" <TabItem IsEnabled="{Binding NestTabIsEnabled}"
Margin="0,0,0,0" Margin="0,0,0,0"
Style="{StaticResource TabItemOptinPanel}"> Style="{StaticResource TabItemOptinPanel}">
<TabItem.Header> <TabItem.Header>
<StackPanel Orientation="Horizontal" Width="35" Height="35"> <StackPanel Orientation="Horizontal" Width="35" Height="35">
<Image Source="/Resources/NewIcons/Nest.png" Stretch="Uniform" /> <Image ToolTip="{Binding NestingTabMsg}" Source="/Resources/NewIcons/Nest.png" Stretch="Uniform" />
</StackPanel> </StackPanel>
</TabItem.Header> </TabItem.Header>
<TabItem.Content> <TabItem.Content>
@@ -43,24 +45,24 @@
</Style> </Style>
</TabItem.Style>--> </TabItem.Style>-->
</TabItem> </TabItem>
<TabItem ToolTip="{Binding MachiningTabMsg}" IsEnabled="{Binding MachTabIsEnabled}" <TabItem IsEnabled="{Binding MachTabIsEnabled}"
Margin="0,0,0,0" Margin="0,0,0,0"
Style="{StaticResource TabItemOptinPanel}"> Style="{StaticResource TabItemOptinPanel}">
<TabItem.Header> <TabItem.Header>
<StackPanel Orientation="Horizontal" Width="35" Height="35"> <StackPanel Orientation="Horizontal" Width="35" Height="35">
<Image Source="/Resources/NewIcons/Split.png" Stretch="Uniform" /> <Image ToolTip="{Binding MachiningTabMsg}" Source="/Resources/NewIcons/Split.png" Stretch="Uniform" />
</StackPanel> </StackPanel>
</TabItem.Header> </TabItem.Header>
<TabItem.Content> <TabItem.Content>
<OmagOFFICE:MachiningTabV DataContext="{StaticResource MachiningTabVM}"/> <OmagOFFICE:MachiningTabV DataContext="{StaticResource MachiningTabVM}"/>
</TabItem.Content> </TabItem.Content>
</TabItem> </TabItem>
<TabItem ToolTip="{Binding SimulTabMsg}" IsEnabled="{Binding SimulTabIsEnabled}" <TabItem IsEnabled="{Binding SimulTabIsEnabled}"
Margin="0,0,0,0" Margin="0,0,0,0"
Style="{StaticResource TabItemOptinPanel}"> Style="{StaticResource TabItemOptinPanel}">
<TabItem.Header> <TabItem.Header>
<StackPanel Orientation="Horizontal" Width="35" Height="35"> <StackPanel Orientation="Horizontal" Width="35" Height="35">
<Image Source="/Resources/NewIcons/Simula.png" Stretch="Uniform" /> <Image ToolTip="{Binding SimulTabMsg}" Source="/Resources/NewIcons/Simula.png" Stretch="Uniform" />
</StackPanel> </StackPanel>
</TabItem.Header> </TabItem.Header>
<TabItem.Content> <TabItem.Content>
+5 -7
View File
@@ -10,12 +10,10 @@
d:DesignHeight="300" d:DesignWidth="300" d:DesignHeight="300" d:DesignWidth="300"
Title="OmagPHOTO" Title="OmagPHOTO"
ResizeMode="NoResize" ShowInTaskbar="False"> ResizeMode="NoResize" ShowInTaskbar="False">
<EgtPHOTOLib:ProjectSlabV DataContext="{StaticResource ProjectSlabVM}"/> <DockPanel>
<!--<DockPanel>
<Grid> <!--Progetto corrente-->
<ContentControl Content="{Binding OmagPhotoContent}"/> <EgtPHOTOLib:ProjectSlabV DataContext="{StaticResource ProjectSlabVM}"/>
</Grid>
</DockPanel>-->
</DockPanel>
</EgtWPFLib5:EgtCustomWindow> </EgtWPFLib5:EgtCustomWindow>
+3 -5
View File
@@ -2,13 +2,11 @@
'Private m_OmagPhotoVM As OmagPhotoVM 'Private m_OmagPhotoVM As OmagPhotoVM
'Sub New(Owner As Window, OmagPhotoVM As OmagPhotoVM) 'Public Sub New(Owner As Window)
' MyBase.New(Owner) ' MyBase.New(Owner)
' ' This call is required by the designer. ' 'This call Is required by the designer.
' InitializeComponent() ' InitializeComponent()
' Me.DataContext = OmagPhotoVM
' ' Assegno al riferimento locale al VM il VM preso dal DataContext
' m_OmagPhotoVM = OmagPhotoVM
'End Sub 'End Sub
End Class End Class
+3 -1
View File
@@ -25,14 +25,16 @@
<Image Source="/Resources/RawPartTab/SlabId.png" Stretch="Uniform"/> <Image Source="/Resources/RawPartTab/SlabId.png" Stretch="Uniform"/>
</Button> </Button>
<Button Style="{StaticResource OptionPanelRaw_Button}" <Button Style="{StaticResource OptionPanelRaw_Button}"
Grid.Column="2" Grid.Row="0" Grid.Column="2" Grid.Row="0"
Command="{Binding PhotoCommand}" Command="{Binding PhotoCommand}"
ToolTip="{Binding PhotoToolTip }"
Margin="0,0,0,0" > Margin="0,0,0,0" >
<Image Source="/Resources/RawPartTab/Photo.png" Stretch="Uniform"/> <Image Source="/Resources/RawPartTab/Photo.png" Stretch="Uniform"/>
</Button> </Button>
<ToggleButton Style="{StaticResource OptionPanelRaw_ToggleButton}" <ToggleButton Style="{StaticResource OptionPanelRaw_ToggleButton}"
Grid.Column="4" Grid.Row="0" Grid.Column="4" Grid.Row="0"
IsChecked="{Binding PhotoWithMouse}" IsChecked="{Binding PhotoWithMouse}"
ToolTip="{Binding MovePhotoToolTip }"
Margin="0,0,0,0" > Margin="0,0,0,0" >
<Image Source="/Resources/RawPartTab/MovePhoto.png" Stretch="Uniform" Width="40"/> <Image Source="/Resources/RawPartTab/MovePhoto.png" Stretch="Uniform" Width="40"/>
</ToggleButton> </ToggleButton>
+41 -11
View File
@@ -43,7 +43,7 @@ Public Class RawPartTabVM
Private m_nTempLay As Integer = GDB_ID.NULL Private m_nTempLay As Integer = GDB_ID.NULL
' Layer per crocette dei punti REG ' Layer per crocette dei punti REG
Private m_nRegGroupId As Integer = GDB_ID.NULL Friend m_nRegGroupId As Integer = GDB_ID.NULL
' Numero di spot inseriti nel grezzo corrente ' Numero di spot inseriti nel grezzo corrente
Private m_nCountSpot As Integer = 0 Private m_nCountSpot As Integer = 0
' Gruppo Spot attualmente selezionato ' Gruppo Spot attualmente selezionato
@@ -1025,7 +1025,7 @@ Public Class RawPartTabVM
Public ReadOnly Property ModMsg As String Public ReadOnly Property ModMsg As String
Get Get
Return "Modifica" Return EgtMsg(91668)
End Get End Get
End Property End Property
@@ -1055,7 +1055,7 @@ Public Class RawPartTabVM
Public ReadOnly Property PointsRegMsg As String Public ReadOnly Property PointsRegMsg As String
Get Get
Return "Registration" Return EgtMsg(91669)
End Get End Get
End Property End Property
@@ -1069,6 +1069,12 @@ Public Class RawPartTabVM
End Get End Get
End Property End Property
Public ReadOnly Property MovePhotoToolTip As String
Get
Return EgtMsg(MSG_RAWPARTTAB + 3)
End Get
End Property
#End Region ' ToolTip #End Region ' ToolTip
' Definizione comandi ' Definizione comandi
@@ -1085,9 +1091,12 @@ Public Class RawPartTabVM
' Creo riferimento a questa classe in OmagOFFICEMap ' Creo riferimento a questa classe in OmagOFFICEMap
OmagOFFICEMap.SetRefRawPartTabVM(Me) OmagOFFICEMap.SetRefRawPartTabVM(Me)
If OmagOFFICEMap.refMainWindowVM.MainWindowM.m_SlabDB Then If OmagOFFICEMap.refMainWindowVM.MainWindowM.m_SlabDB Then
'Me.OmagPhoto = New OmagPhotoV(Application.Current.MainWindow(), New OmagPhotoVM) ' Me.OmagPhoto = New OmagPhotoV(Application.Current.MainWindow())
Me.OmagPhoto = New OmagPhotoV Me.OmagPhoto = New OmagPhotoV
If Not PhotoMap.ContinueApplication Then End If Not PhotoMap.ContinueApplication Then
EgtOutLog("Key protection denied to acces to DB photo, set configuration to image directory")
End
End If
End If End If
' Aggiungo voci alla lista di tipi di definizione grezzo ' Aggiungo voci alla lista di tipi di definizione grezzo
m_TypeList.Add(EgtMsg(MSG_RAWPARTPAGEUC + 1)) m_TypeList.Add(EgtMsg(MSG_RAWPARTPAGEUC + 1))
@@ -1969,10 +1978,14 @@ Public Class RawPartTabVM
Return True Return True
End Function End Function
Private Sub MoveAllSpotRegistration(vtMove As Vector3d) Friend Sub MoveAllSpotRegistration(vtMove As Vector3d, Optional bOnlyOfficeSpot As Boolean = True)
Dim nId As Integer = EgtGetFirstInGroup(m_nRegGroupId) Dim nId As Integer = EgtGetFirstInGroup(OmagOFFICEMap.refRawPartTabVM.m_nRegGroupId)
While nId <> GDB_ID.NULL While nId <> GDB_ID.NULL
EgtMove(nId, vtMove) Dim sName As String = String.Empty
EgtGetName(nId, sName)
If Not sName.Contains("CUT") Or Not bOnlyOfficeSpot Then
EgtMove(nId, vtMove)
End If
nId = EgtGetNext(nId) nId = EgtGetNext(nId)
End While End While
EgtDraw() EgtDraw()
@@ -2249,6 +2262,13 @@ Public Class RawPartTabVM
PhotoMap.refSearchPanelVM.InitSearchPanel() PhotoMap.refSearchPanelVM.InitSearchPanel()
' inizializzo la ricerca a tutti le lastre di tipo "AVAILABLE" (=1) ' inizializzo la ricerca a tutti le lastre di tipo "AVAILABLE" (=1)
PhotoMap.refSearchPanelVM.State = 1 PhotoMap.refSearchPanelVM.State = 1
' Resetto la data corrente per la prima ricerca
PhotoMap.refSearchPanelVM.StartAddedDate = Nothing
PhotoMap.refSearchPanelVM.NotifyPropertyChanged("StartAddedDate")
PhotoMap.refSearchPanelVM.EndAddedDate = Nothing
PhotoMap.refSearchPanelVM.NotifyPropertyChanged("EndAddedDate")
PhotoMap.refSearchPanelVM.Search() PhotoMap.refSearchPanelVM.Search()
' inserisco in elenco solo i materiali della macchina corrente ' inserisco in elenco solo i materiali della macchina corrente
AddHandler PhotoMap.refOptionPanelVM.SlabIsSelectedOFFICE, AddressOf OmagOFFICEMap.refRawPartTabVM.ClosePhotoWnd AddHandler PhotoMap.refOptionPanelVM.SlabIsSelectedOFFICE, AddressOf OmagOFFICEMap.refRawPartTabVM.ClosePhotoWnd
@@ -2258,10 +2278,9 @@ Public Class RawPartTabVM
m_RefreshTimer.Interval = TimeSpan.FromMilliseconds(2000) m_RefreshTimer.Interval = TimeSpan.FromMilliseconds(2000)
m_RefreshTimer.Start() m_RefreshTimer.Start()
' apro la finestra per accedere al DB delle lastre ' apro la finestra per accedere al DB delle lastre (Devo crea una nuova istanza perchè la chiusura elimina la stessa)
Me.OmagPhoto = New OmagPhotoV Me.OmagPhoto = New OmagPhotoV
OmagPhoto.ShowDialog() Me.OmagPhoto.ShowDialog()
m_RefreshTimer.Stop() m_RefreshTimer.Stop()
EgtSetCurrentContext(EgtPHOTOLib.MainData.PreviousContext) EgtSetCurrentContext(EgtPHOTOLib.MainData.PreviousContext)
@@ -2299,6 +2318,17 @@ Public Class RawPartTabVM
' aggiungo la nuova lastra ' aggiungo la nuova lastra
OmagOFFICEMap.refMachGroupPanelVM.SlabNameListCurr.Add(sSlabNameDB) OmagOFFICEMap.refMachGroupPanelVM.SlabNameListCurr.Add(sSlabNameDB)
EgtPHOTOLib.PhotoMap.refOptionPanelVM.SetAssignedSlab(sSlabNameDB) EgtPHOTOLib.PhotoMap.refOptionPanelVM.SetAssignedSlab(sSlabNameDB)
' Provo ad assegnare il nome della macchinata
Dim sName As String = LocalSlab.Id
EgtGetMachGroupNewName(sName)
If sName <> LocalSlab.Id Then
EgtOutLog("Nome lastra (Id lastra) già presente nell'elenco delle macchinate correnti!")
Else
OmagOFFICEMap.refMachGroupPanelVM.SelectedMachGroup.SetName(LocalSlab.Id)
EgtChangeMachGroupName(EgtGetCurrMachGroup, LocalSlab.Id)
End If
Else Else
' Apro dialogo per scelta immagine ' Apro dialogo per scelta immagine
Dim PhotoDlg As New Microsoft.Win32.OpenFileDialog() Dim PhotoDlg As New Microsoft.Win32.OpenFileDialog()
+1 -1
View File
@@ -10,7 +10,7 @@
Style="{StaticResource Simul_Button_Img}"> Style="{StaticResource Simul_Button_Img}">
<Image Source="/Resources/SimulTab/ToolMode.png" Stretch="Uniform"/> <Image Source="/Resources/SimulTab/ToolMode.png" Stretch="Uniform"/>
</Button> </Button>
<Button Command="{Binding Simul_Button_Img}" <Button Command="{Binding HeadModeCommand}"
Style="{StaticResource Simul_Button_Img}"> Style="{StaticResource Simul_Button_Img}">
<Image Source="/Resources/SimulTab/HeadMode.png" Stretch="Uniform"/> <Image Source="/Resources/SimulTab/HeadMode.png" Stretch="Uniform"/>
</Button> </Button>
+7 -1
View File
@@ -17,7 +17,13 @@ Public Class SimulTabVM
Public ReadOnly Property MachViewMsg As String Public ReadOnly Property MachViewMsg As String
Get Get
Return "Vista macchina" Return EgtMsg(91667)
End Get
End Property
Public ReadOnly Property EstimationMsg As String
Get
Return EgtMsg(91668)
End Get End Get
End Property End Property
+33 -7
View File
@@ -11,14 +11,40 @@
</DockPanel> </DockPanel>
<DockPanel x:Name="TOPTRAY" DockPanel.Dock="Top" Background="Transparent"> <DockPanel x:Name="TOPTRAY" DockPanel.Dock="Top" Background="Transparent">
<StackPanel Orientation="Horizontal" HorizontalAlignment="Right" Width="{Binding}"> <!--<StackPanel Orientation="Horizontal" HorizontalAlignment="Right" Width="{Binding}">-->
<!--<DockPanel>
<OmagOFFICE:MachinePanelV DataContext="{StaticResource MachinePanelVM}" DockPanel.Dock="Left"/>
<OmagOFFICE:VeinMatchPanelV DataContext="{StaticResource VeinMatchPanelVM}" />
<OmagOFFICE:PrintPanelV DataContext="{StaticResource PrintPanelVM}" />
<OmagOFFICE:ShowPanelV DataContext="{StaticResource ShowPanelVM}" DockPanel.Dock="Right"/>
<OmagOFFICE:ViewPanelV DataContext="{StaticResource ViewPanelVM}" DockPanel.Dock="Right"/>
<OmagOFFICE:InstrumentPanelV DataContext="{StaticResource InstrumentPanelVM}" DockPanel.Dock="Right"/>
</DockPanel>-->
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="7*"/>
<ColumnDefinition Width="1*"/>
<ColumnDefinition Width="1*"/>
<ColumnDefinition Width="19.75*"/>
<ColumnDefinition Width="7*"/>
<ColumnDefinition Width="3*"/>
<ColumnDefinition Width="1*"/>
<ColumnDefinition Width="0.25*"/>
</Grid.ColumnDefinitions>
<OmagOFFICE:MachinePanelV Grid.Column="0" DataContext="{StaticResource MachinePanelVM}"/>
<OmagOFFICE:VeinMatchPanelV Grid.Column="1" DataContext="{StaticResource VeinMatchPanelVM}"/>
<OmagOFFICE:PrintPanelV Grid.Column="2" DataContext="{StaticResource PrintPanelVM}"/>
<OmagOFFICE:ShowPanelV Grid.Column="5" DataContext="{StaticResource ShowPanelVM}"/>
<OmagOFFICE:ViewPanelV Grid.Column="4" DataContext="{StaticResource ViewPanelVM}"/>
<OmagOFFICE:InstrumentPanelV Grid.Column="6" DataContext="{StaticResource InstrumentPanelVM}"/>
</Grid>
<!--<OmagOFFICE:MachinePanelV DataContext="{StaticResource MachinePanelVM}"/>
<OmagOFFICE:VeinMatchPanelV DataContext="{StaticResource VeinMatchPanelVM}"/>
<OmagOFFICE:PrintPanelV DataContext="{StaticResource PrintPanelVM}"/>
<OmagOFFICE:ShowPanelV DataContext="{StaticResource ShowPanelVM}"/> <OmagOFFICE:ShowPanelV DataContext="{StaticResource ShowPanelVM}"/>
<OmagOFFICE:ViewPanelV DataContext="{StaticResource ViewPanelVM}"/> <OmagOFFICE:ViewPanelV DataContext="{StaticResource ViewPanelVM}"/>
<OmagOFFICE:InstrumentPanelV DataContext="{StaticResource InstrumentPanelVM}"/> <OmagOFFICE:InstrumentPanelV DataContext="{StaticResource InstrumentPanelVM}"/>-->
<OmagOFFICE:PrintPanelV DataContext="{StaticResource PrintPanelVM}"/> <!--</StackPanel>-->
<OmagOFFICE:VeinMatchPanelV DataContext="{StaticResource VeinMatchPanelVM}"/>
<OmagOFFICE:MachinePanelV DataContext="{StaticResource MachinePanelVM}"/>
</StackPanel>
</DockPanel> </DockPanel>
<DockPanel x:Name="BOTTOMTRAY" DockPanel.Dock="Bottom" Background="Transparent"> <DockPanel x:Name="BOTTOMTRAY" DockPanel.Dock="Bottom" Background="Transparent">
@@ -36,5 +62,5 @@
</DockPanel> </DockPanel>
<OmagOFFICE:SceneHostV /> <OmagOFFICE:SceneHostV />
</DockPanel> </DockPanel>
Binary file not shown.

After

Width:  |  Height:  |  Size: 3.0 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 22 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 703 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.9 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 3.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.8 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 637 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.7 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 610 B

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.6 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.3 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 5.1 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.0 KiB

+18 -14
View File
@@ -7,6 +7,8 @@ Public Class SideEntityControlVM
Private Const INFO_ALZFRONT As String = "AF" Private Const INFO_ALZFRONT As String = "AF"
Private ColorText As New Color3d(0, 0, 0)
Public Enum ModeOpt As Integer Public Enum ModeOpt As Integer
SIDEANGLE = 0 ' inclina lato SIDEANGLE = 0 ' inclina lato
DRIP = 1 ' incidi da sotto DRIP = 1 ' incidi da sotto
@@ -68,7 +70,7 @@ Public Class SideEntityControlVM
sMsg = EgtMsg(91653) sMsg = EgtMsg(91653)
ElseIf m_Mode = SideEntityControlVM.ModeOpt.ALZANDFRONT Then ElseIf m_Mode = SideEntityControlVM.ModeOpt.ALZANDFRONT Then
' Alz ' Alz
sMsg = "Alz." sMsg = EgtMsg(91674)
End If End If
Return sMsg Return sMsg
End Get End Get
@@ -85,7 +87,7 @@ Public Class SideEntityControlVM
sMsg = EgtMsg(91654) sMsg = EgtMsg(91654)
ElseIf m_Mode = SideEntityControlVM.ModeOpt.ALZANDFRONT Then ElseIf m_Mode = SideEntityControlVM.ModeOpt.ALZANDFRONT Then
' Front ' Front
sMsg = "Front." sMsg = EgtMsg(91675)
End If End If
Return sMsg Return sMsg
End Get End Get
@@ -543,7 +545,7 @@ Public Class SideEntityControlVM
NotifyPropertyChanged("SideEntityList") NotifyPropertyChanged("SideEntityList")
m_SideAngleCheck = If(GetMainPrivateProfileInt(S_COMPO, K_SIDEMODE, 0) = 0, True, False) m_SideAngleCheck = If(GetMainPrivateProfileInt(S_COMPO, K_SIDEMODE, 0) = 0, True, False)
SideAngleEntity.dMaxSideAng = GetMainPrivateProfileDouble(S_SIDES, K_MAXSIDEANGLE, SideAngleEntity.STD_MAXSIDEANG) SideAngleEntity.dMaxSideAng = GetMainPrivateProfileDouble(S_SIDES, K_MAXSIDEANGLE, SideAngleEntity.STD_MAXSIDEANG)
GetMainPrivateProfileColor(S_SIDES, K_TEXTCOLORENT, ColorText)
'------------------ DEFINIZIONE LISTA LATI '------------------ DEFINIZIONE LISTA LATI
' creo la lista dei parametri ' creo la lista dei parametri
If CallingWindow = CallingWindowOpt.COMPO Then If CallingWindow = CallingWindowOpt.COMPO Then
@@ -615,7 +617,7 @@ Public Class SideEntityControlVM
ElseIf m_Mode = ModeOpt.FILOTOP Then ElseIf m_Mode = ModeOpt.FILOTOP Then
Parameter1Msg = EgtMsg(MSG_IMPORTPAGEUC + 10) ' Offset Parameter1Msg = EgtMsg(MSG_IMPORTPAGEUC + 10) ' Offset
Parameter2Msg = EgtMsg(MSG_IMPORTPAGEUC + 11) ' Depth Parameter2Msg = EgtMsg(MSG_IMPORTPAGEUC + 11) ' Depth
Parameter5Msg = "Round Off" Parameter5Msg = EgtMsg(91676) ' Round Off
m_dOffsetFiloTop = GetMainPrivateProfileDouble(S_SIDES, K_FILOTOPOFFSET, 5) m_dOffsetFiloTop = GetMainPrivateProfileDouble(S_SIDES, K_FILOTOPOFFSET, 5)
m_dDepthFiloTop = GetMainPrivateProfileDouble(S_SIDES, K_FILOTOPDEPTH, 5) m_dDepthFiloTop = GetMainPrivateProfileDouble(S_SIDES, K_FILOTOPDEPTH, 5)
m_bCornerRadius = GetMainPrivateProfileInt(S_SIDES, K_FILOTOPROUNDOFF, 0) <> 0 m_bCornerRadius = GetMainPrivateProfileInt(S_SIDES, K_FILOTOPROUNDOFF, 0) <> 0
@@ -644,9 +646,9 @@ Public Class SideEntityControlVM
ElseIf m_Mode = ModeOpt.ALZANDFRONT Then ElseIf m_Mode = ModeOpt.ALZANDFRONT Then
' definisco i nomi dei campi ' definisco i nomi dei campi
Parameter1Msg = "Spessore" Parameter1Msg = EgtMsg(91677) ' Spessore
Parameter2Msg = "Altezza" Parameter2Msg = EgtMsg(91678) ' Altezza
Parameter3Msg = "Delta Ang." Parameter3Msg = EgtMsg(91679) ' Delta Ang.
' carico i valori letti da file ini ' carico i valori letti da file ini
m_HeightA = GetMainPrivateProfileDouble("Alz&Front", "A_Height", 0) m_HeightA = GetMainPrivateProfileDouble("Alz&Front", "A_Height", 0)
m_HeightF = GetMainPrivateProfileDouble("Alz&Front", "F_Height", 0) m_HeightF = GetMainPrivateProfileDouble("Alz&Front", "F_Height", 0)
@@ -704,7 +706,7 @@ Public Class SideEntityControlVM
Else Else
TextLayer = EgtCreateGroup(PartId) TextLayer = EgtCreateGroup(PartId)
EgtSetName(TextLayer, SIDE_ANGLE_LAYER) EgtSetName(TextLayer, SIDE_ANGLE_LAYER)
EgtSetColor(TextLayer, New Color3d(0, 0, 0)) EgtSetColor(TextLayer, ColorText)
End If End If
' Se modalità angoli di inclinazione... ' Se modalità angoli di inclinazione...
@@ -773,7 +775,7 @@ Public Class SideEntityControlVM
If TextLayer = GDB_ID.NULL Then If TextLayer = GDB_ID.NULL Then
TextLayer = EgtCreateGroup(PartId) TextLayer = EgtCreateGroup(PartId)
EgtSetName(TextLayer, SIDE_ANGLE_LAYER) EgtSetName(TextLayer, SIDE_ANGLE_LAYER)
EgtSetColor(TextLayer, New Color3d(0, 0, 0)) EgtSetColor(TextLayer, ColorText)
End If End If
Dim PrevLine As Integer = EgtGetLastInGroup(LoopId) Dim PrevLine As Integer = EgtGetLastInGroup(LoopId)
@@ -1515,20 +1517,22 @@ Public Class SideEntityControlVM
End Sub End Sub
Shared Sub WriteSideAngleForNest(nCtx As Integer) Shared Sub WriteSideAngleForNest(nCtx As Integer)
Dim LocalColor As New Color3d(0, 0, 0)
GetMainPrivateProfileColor(S_SIDES, K_TEXTCOLORENT, LocalColor)
' Imposto contesto corrente ' Imposto contesto corrente
EgtSetCurrentContext(nCtx) EgtSetCurrentContext(nCtx)
Dim PartId As Integer = EgtGetFirstPart() Dim PartId As Integer = EgtGetFirstPart()
While PartId <> GDB_ID.NULL While PartId <> GDB_ID.NULL
' Se richiesti lati paralleli con misura sul top come in TRF, verifico e aggiusto ' Se richiesti lati paralleli con misura sul top come in TRF, verifico e aggiusto
If GetMainPrivateProfileInt( S_SIDES, K_PARSIDE_AS_TRF, 0) <> 0 Then If GetMainPrivateProfileInt(S_SIDES, K_PARSIDE_AS_TRF, 0) <> 0 Then
AdjustAsTrfParSides( PartId) AdjustAsTrfParSides(PartId)
End If End If
' Elimino eventuale precedente layer per testi ' Elimino eventuale precedente layer per testi
EgtErase(EgtGetFirstNameInGroup(PartId, SIDE_ANGLE_LAYER)) EgtErase(EgtGetFirstNameInGroup(PartId, SIDE_ANGLE_LAYER))
' Creo layer per testi nesting ' Creo layer per testi nesting
Dim TextLayId As Integer = EgtCreateGroup(PartId) Dim TextLayId As Integer = EgtCreateGroup(PartId)
EgtSetName(TextLayId, SIDE_ANGLE_LAYER) EgtSetName(TextLayId, SIDE_ANGLE_LAYER)
EgtSetColor(TextLayId, New Color3d(0, 0, 128)) EgtSetColor(TextLayId, LocalColor)
' Opero su geometria esterna pezzo ' Opero su geometria esterna pezzo
WriteSideAngleOnLoop(EgtGetFirstNameInGroup(PartId, NAME_OUTLOOP), TextLayId) WriteSideAngleOnLoop(EgtGetFirstNameInGroup(PartId, NAME_OUTLOOP), TextLayId)
' Ciclo su geometria interna pezzo ' Ciclo su geometria interna pezzo
@@ -1840,7 +1844,7 @@ Public Class SideEntityControlVM
Dim sMsg As String = String.Empty Dim sMsg As String = String.Empty
' eseguo la funzione per il disegno della componente (CMP_Draw) ' eseguo la funzione per il disegno della componente (CMP_Draw)
If Not EgtLuaExecLine("CMP_Draw" & "(true)") Then If Not EgtLuaExecLine("CMP_Draw" & "(true)") Then
sMsg = "Error in component execution" sMsg = EgtMsg(91680) ' Error in component execution
'm_bDrawOk = False 'm_bDrawOk = False
Else Else
EgtLuaGetGlobStringVar("CMP" & ".MSG", sMsg) EgtLuaGetGlobStringVar("CMP" & ".MSG", sMsg)
+58 -8
View File
@@ -74,12 +74,12 @@ Public Class TopCommandBarVM
End Property End Property
Public ReadOnly Property ExportToolTip As String Public ReadOnly Property ExportToolTip As String
Get Get
Return EgtMsg( 91505) 'Esporta in macchina Return EgtMsg(91505) 'Esporta in macchina
End Get End Get
End Property End Property
Public ReadOnly Property DxfOutToolTip As String Public ReadOnly Property DxfOutToolTip As String
Get Get
Return EgtMsg( 91506) 'Esporta DXF Return EgtMsg(91506) 'Esporta DXF
End Get End Get
End Property End Property
Public ReadOnly Property OptionsToolTip As String Public ReadOnly Property OptionsToolTip As String
@@ -226,6 +226,18 @@ Public Class TopCommandBarVM
''' Execute the SaveAs. This method is invoked by the SaveAsCommand. ''' Execute the SaveAs. This method is invoked by the SaveAsCommand.
''' </summary> ''' </summary>
Public Sub SaveAs(ByVal param As Object) Public Sub SaveAs(ByVal param As Object)
'Dim SaveFileDialog As New System.Windows.Forms.SaveFileDialog()
'SaveFileDialog.Filter = "(*.nge) |*.nge"
'SaveFileDialog.FilterIndex = 2
'' avvio la ricerca nell'ultimo direttorio aperto
'Dim sFilePath As String = String.Empty
'EgtGetCurrFilePath(sFilePath)
'SaveFileDialog.InitialDirectory = Path.GetExtension(sFilePath)
'SaveFileDialog.FileName = Path.GetFileName(sFilePath)
'' apro la finestra di dialogo
'Dim bChangeProject As Boolean = True
'If SaveFileDialog.ShowDialog() <> System.Windows.Forms.DialogResult.OK Then Return
'Dim sNewFilePath As String = SaveFileDialog.FileName
' non posso avere la stessa lastra in due progetti -> gestita da DataBase ' non posso avere la stessa lastra in due progetti -> gestita da DataBase
OmagOFFICEMap.refSceneHostVM.SaveAsProject() OmagOFFICEMap.refSceneHostVM.SaveAsProject()
End Sub End Sub
@@ -238,12 +250,12 @@ Public Class TopCommandBarVM
''' Returns a command that do Export. ''' Returns a command that do Export.
''' </summary> ''' </summary>
Public ReadOnly Property ExportCommand As ICommand Public ReadOnly Property ExportCommand As ICommand
Get Get
If m_cmdExport Is Nothing Then If m_cmdExport Is Nothing Then
m_cmdExport = New Command(AddressOf Export) m_cmdExport = New Command(AddressOf Export)
End If End If
Return m_cmdExport Return m_cmdExport
End Get End Get
End Property End Property
''' <summary> ''' <summary>
@@ -436,4 +448,42 @@ Public Class TopCommandBarVM
#End Region ' Commands #End Region ' Commands
Public Shared Sub SetInfoProj(Optional sFilePath As String = "")
EgtOutLog(" *** SAVE PROJECT ***")
' Recupero l'ID della macchinata corrente
Dim CurrGrpId As Integer = EgtGetCurrMachGroup()
' Path completa del progetto corrente
If String.IsNullOrEmpty(sFilePath) Then EgtGetCurrFilePath(sFilePath)
Dim nPartInRawsProj As Integer = 0
Dim nGrpId = EgtGetFirstMachGroup()
While nGrpId <> GDB_ID.NULL
' Imposto la macchinata corrente
EgtSetCurrMachGroup(nGrpId)
' recupero il primo grezzo della macchinata corrente
Dim nRawId As Integer = EgtGetFirstRawPart()
While nRawId <> GDB_ID.NULL
nPartInRawsProj += EgtGetPartInRawPartCount(nRawId)
nRawId = EgtGetNextRawPart(nRawId)
End While
nGrpId = EgtGetNextMachGroup(nGrpId)
End While
nGrpId = EgtGetFirstMachGroup()
While nGrpId <> GDB_ID.NULL
' percorso progetto
EgtSetInfo(nGrpId, "ProjPath", sFilePath)
' Anno/Mese/Giorno/Ora/min di salvataggio
EgtSetInfo(nGrpId, "Released", DateTime.Now.ToString("yyyy/MM/dd HH:mm:ss"))
' numero di pezzi presenti nel progetto
EgtSetInfo(nGrpId, "NbrProjParts", nPartInRawsProj.ToString)
nGrpId = EgtGetNextMachGroup(nGrpId)
End While
EgtOutLog(" ProjPath:" & sFilePath)
EgtOutLog(" Released:" & DateTime.Now.ToString("yyyy/MM/dd HH:mm:ss"))
EgtOutLog(" NbrProjParts:" & nPartInRawsProj.ToString)
' Reimposto la macchina corrente
EgtSetCurrMachGroup(CurrGrpId)
' Nascondo tutte le lavorazioni
CamAuto.HideAllMachinings()
End Sub
End Class End Class
+178 -67
View File
@@ -68,7 +68,7 @@
<!--Colore del contorno quando il Mouse è sopra la TextBox--> <!--Colore del contorno quando il Mouse è sopra la TextBox-->
<LinearGradientBrush x:Key="BrushBorderIsMouseOverTText" EndPoint="0,20" MappingMode="Absolute" StartPoint="0,0"> <LinearGradientBrush x:Key="BrushBorderIsMouseOverTText" EndPoint="0,20" MappingMode="Absolute" StartPoint="0,0">
<GradientStop Color="#484D55" Offset="0.05"/> <GradientStop Color="#1C1D22" Offset="0.05"/>
<GradientStop Color="#1C1D22" Offset="0.07"/> <GradientStop Color="#1C1D22" Offset="0.07"/>
</LinearGradientBrush> </LinearGradientBrush>
@@ -595,6 +595,12 @@
<Setter Property="Height" Value="40"/> <Setter Property="Height" Value="40"/>
</Style> </Style>
<Style x:Key="ChangeTable_ToggleButton" TargetType="{x:Type ToggleButton}" BasedOn="{StaticResource {x:Type ToggleButton}}">
<Setter Property="Height" Value="50"/>
<Setter Property="Width" Value="50"/>
<Setter Property="Background" Value="Transparent"/>
</Style>
<Style x:Key="Option_ColorButton" TargetType="{x:Type Button}" BasedOn="{StaticResource {x:Type Button}}"> <Style x:Key="Option_ColorButton" TargetType="{x:Type Button}" BasedOn="{StaticResource {x:Type Button}}">
<Setter Property="Padding" Value="5"/> <Setter Property="Padding" Value="5"/>
<Setter Property="HorizontalContentAlignment" Value="Center"/> <Setter Property="HorizontalContentAlignment" Value="Center"/>
@@ -844,16 +850,16 @@
<!-- CsvTreeViewItem DA CAMBIARE!! --> <!-- CsvTreeViewItem DA CAMBIARE!! -->
<SolidColorBrush x:Key="TreeViewItem.TreeArrow.Static.Checked.Fill" Color="#FF595959"/> <SolidColorBrush x:Key="TreeViewItem.TreeArrow.Static.Stroke" Color="#FF989898"/>
<SolidColorBrush x:Key="TreeViewItem.TreeArrow.Static.Checked.Stroke" Color="#FF262626"/> <SolidColorBrush x:Key="TreeViewItem.TreeArrow.Static.Fill" Color="Transparent"/>
<SolidColorBrush x:Key="TreeViewItem.TreeArrow.MouseOver.Stroke" Color="#FF1BBBFA"/> <SolidColorBrush x:Key="TreeViewItem.TreeArrow.MouseOver.Stroke" Color="#FF1BBBFA"/>
<SolidColorBrush x:Key="TreeViewItem.TreeArrow.MouseOver.Fill" Color="Transparent"/> <SolidColorBrush x:Key="TreeViewItem.TreeArrow.MouseOver.Fill" Color="Transparent"/>
<SolidColorBrush x:Key="TreeViewItem.TreeArrow.MouseOver.Checked.Stroke" Color="#FF262626"/> <SolidColorBrush x:Key="TreeViewItem.TreeArrow.Static.Checked.Stroke" Color="#FF262626"/>
<SolidColorBrush x:Key="TreeViewItem.TreeArrow.MouseOver.Checked.Fill" Color="#FF595959"/> <SolidColorBrush x:Key="TreeViewItem.TreeArrow.Static.Checked.Fill" Color="#FF595959"/>
<PathGeometry x:Key="TreeArrow" Figures="M0,0 L0,6 L6,0 z"/> <SolidColorBrush x:Key="TreeViewItem.TreeArrow.MouseOver.Checked.Stroke" Color="#FF262626"/>
<SolidColorBrush x:Key="TreeViewItem.TreeArrow.Static.Fill" Color="Transparent"/> <SolidColorBrush x:Key="TreeViewItem.TreeArrow.MouseOver.Checked.Fill" Color="#FF595959"/>
<SolidColorBrush x:Key="TreeViewItem.TreeArrow.Static.Stroke" Color="#FF989898"/> <PathGeometry x:Key="TreeArrow" Figures="M0,0 L0,6 L6,0 z"/>
<Style x:Key="ExpandCollapseToggleStyle" TargetType="{x:Type ToggleButton}"> <!--<Style x:Key="ExpandCollapseToggleStyle" TargetType="{x:Type ToggleButton}">
<Setter Property="Focusable" Value="False"/> <Setter Property="Focusable" Value="False"/>
<Setter Property="Width" Value="16"/> <Setter Property="Width" Value="16"/>
<Setter Property="Height" Value="16"/> <Setter Property="Height" Value="16"/>
@@ -895,64 +901,167 @@
</Setter> </Setter>
</Style> </Style>
<Style x:Key="CsvPartItemStyle" TargetType="{x:Type TreeViewItem}"> <Style x:Key="CsvPartItemStyle" TargetType="{x:Type TreeViewItem}">
<Setter Property="IsSelected" Value="{Binding IsSelected}" /> <Setter Property="IsSelected" Value="{Binding IsSelected}" />
<Setter Property="IsExpanded" Value="{Binding IsExpanded}" /> <Setter Property="IsExpanded" Value="{Binding IsExpanded}" />
<Setter Property="Template"> <Setter Property="Template">
<Setter.Value> <Setter.Value>
<ControlTemplate TargetType="{x:Type TreeViewItem}"> <ControlTemplate TargetType="{x:Type TreeViewItem}">
<Grid> <Grid>
<Grid.ColumnDefinitions> <Grid.ColumnDefinitions>
<ColumnDefinition MinWidth="19" Width="Auto"/> <ColumnDefinition MinWidth="19" Width="Auto"/>
<ColumnDefinition Width="Auto"/> <ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="*"/> <ColumnDefinition Width="*"/>
</Grid.ColumnDefinitions> </Grid.ColumnDefinitions>
<Grid.RowDefinitions> <Grid.RowDefinitions>
<RowDefinition Height="Auto"/> <RowDefinition Height="Auto"/>
<RowDefinition/> <RowDefinition/>
</Grid.RowDefinitions> </Grid.RowDefinitions>
<Border x:Name="ExpanderBorder" BorderBrush="{TemplateBinding BorderBrush}" BorderThickness="{TemplateBinding BorderThickness}" Background="{TemplateBinding Background}" Padding="{TemplateBinding Padding}" SnapsToDevicePixels="true"> <Border x:Name="ExpanderBorder" BorderBrush="{TemplateBinding BorderBrush}" BorderThickness="{TemplateBinding BorderThickness}" Background="{TemplateBinding Background}" Padding="{TemplateBinding Padding}" SnapsToDevicePixels="true">
<ToggleButton x:Name="Expander" ClickMode="Press" IsChecked="{Binding IsExpanded, RelativeSource={RelativeSource TemplatedParent}}" Style="{StaticResource ExpandCollapseToggleStyle}"/> <ToggleButton x:Name="Expander" ClickMode="Press" IsChecked="{Binding IsExpanded, RelativeSource={RelativeSource TemplatedParent}}" Style="{StaticResource ExpandCollapseToggleStyle}"/>
</Border> </Border>
<Border x:Name="Bd" BorderBrush="{TemplateBinding BorderBrush}" BorderThickness="{TemplateBinding BorderThickness}" Background="{TemplateBinding Background}" Grid.Column="1" Padding="{TemplateBinding Padding}" SnapsToDevicePixels="true"> <Border x:Name="Bd" BorderBrush="{TemplateBinding BorderBrush}" BorderThickness="{TemplateBinding BorderThickness}" Background="{TemplateBinding Background}" Grid.Column="1" Padding="{TemplateBinding Padding}" SnapsToDevicePixels="true">
<ContentPresenter x:Name="PART_Header" ContentSource="Header" HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}" SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}"/> <ContentPresenter x:Name="PART_Header" ContentSource="Header" HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}" SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}"/>
</Border> </Border>
<ItemsPresenter x:Name="ItemsHost" Grid.ColumnSpan="2" Grid.Column="1" Grid.Row="1"/> <ItemsPresenter x:Name="ItemsHost" Grid.ColumnSpan="2" Grid.Column="1" Grid.Row="1"/>
</Grid> </Grid>
<ControlTemplate.Triggers> <ControlTemplate.Triggers>
<Trigger Property="IsExpanded" Value="false"> <Trigger Property="IsExpanded" Value="false">
<Setter Property="Visibility" TargetName="ItemsHost" Value="Collapsed"/> <Setter Property="Visibility" TargetName="ItemsHost" Value="Collapsed"/>
</Trigger> </Trigger>
<Trigger Property="HasItems" Value="false"> <Trigger Property="HasItems" Value="false">
<Setter Property="Visibility" TargetName="Expander" Value="Hidden"/> <Setter Property="Visibility" TargetName="Expander" Value="Hidden"/>
</Trigger> </Trigger>
<Trigger Property="IsSelected" Value="true"> <Trigger Property="IsSelected" Value="true">
<Setter Property="Background" TargetName="Bd" Value="Transparent"/> <Setter Property="Background" TargetName="Bd" Value="Transparent"/>
<Setter Property="BorderBrush" TargetName="Bd" Value="{DynamicResource {x:Static SystemColors.HighlightBrushKey}}"/> <Setter Property="BorderBrush" TargetName="Bd" Value="{DynamicResource {x:Static SystemColors.HighlightBrushKey}}"/>
<Setter Property="BorderThickness" TargetName="Bd" Value="0,1,1,1"/> <Setter Property="BorderThickness" TargetName="Bd" Value="0,1,1,1"/>
<Setter Property="Background" TargetName="ExpanderBorder" Value="Transparent"/> <Setter Property="Background" TargetName="ExpanderBorder" Value="Transparent"/>
<Setter Property="BorderBrush" TargetName="ExpanderBorder" Value="{DynamicResource {x:Static SystemColors.HighlightBrushKey}}"/> <Setter Property="BorderBrush" TargetName="ExpanderBorder" Value="{DynamicResource {x:Static SystemColors.HighlightBrushKey}}"/>
<Setter Property="BorderThickness" TargetName="ExpanderBorder" Value="1,1,0,1"/> <Setter Property="BorderThickness" TargetName="ExpanderBorder" Value="1,1,0,1"/>
<!--<Setter Property="Foreground" Value="{DynamicResource {x:Static SystemColors.HighlightTextBrushKey}}"/>--> --><!--<Setter Property="Foreground" Value="{DynamicResource {x:Static SystemColors.HighlightTextBrushKey}}"/>--><!--
</Trigger> </Trigger>
<!--<MultiTrigger> --><!--<MultiTrigger>
<MultiTrigger.Conditions> <MultiTrigger.Conditions>
<Condition Property="IsSelected" Value="true"/> <Condition Property="IsSelected" Value="true"/>
<Condition Property="IsSelectionActive" Value="false"/> <Condition Property="IsSelectionActive" Value="false"/>
</MultiTrigger.Conditions> </MultiTrigger.Conditions>
<Setter Property="Background" TargetName="Bd" Value="{DynamicResource {x:Static SystemColors.ControlBrushKey}}"/> <Setter Property="Background" TargetName="Bd" Value="{DynamicResource {x:Static SystemColors.ControlBrushKey}}"/>
<Setter Property="Foreground" Value="{DynamicResource {x:Static SystemColors.ControlTextBrushKey}}"/> <Setter Property="Foreground" Value="{DynamicResource {x:Static SystemColors.ControlTextBrushKey}}"/>
</MultiTrigger>--> </MultiTrigger>--><!--
<Trigger Property="IsEnabled" Value="false"> <Trigger Property="IsEnabled" Value="false">
<Setter Property="Foreground" Value="{DynamicResource {x:Static SystemColors.GrayTextBrushKey}}"/> <Setter Property="Foreground" Value="{DynamicResource {x:Static SystemColors.GrayTextBrushKey}}"/>
</Trigger> </Trigger>
</ControlTemplate.Triggers> </ControlTemplate.Triggers>
</ControlTemplate> </ControlTemplate>
</Setter.Value> </Setter.Value>
</Setter> </Setter>
</Style> </Style>-->
<!-- ______________________________________________________________________________________________________________________________________________ --> <Style x:Key="Db_ExpandCollapseToggleStyle" TargetType="{x:Type ToggleButton}">
<Setter Property="Focusable" Value="False"/>
<Setter Property="Width" Value="16"/>
<Setter Property="Height" Value="16"/>
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type ToggleButton}">
<Border Background="Transparent" Height="16" Padding="5,5,5,5" Width="16">
<Path x:Name="ExpandPath" Data="{StaticResource TreeArrow}" Fill="{StaticResource TreeViewItem.TreeArrow.Static.Fill}" Stroke="White">
<Path.RenderTransform>
<RotateTransform Angle="135" CenterY="3" CenterX="3"/>
</Path.RenderTransform>
</Path>
</Border>
<ControlTemplate.Triggers>
<Trigger Property="IsChecked" Value="True">
<Setter Property="RenderTransform" TargetName="ExpandPath">
<Setter.Value>
<RotateTransform Angle="180" CenterY="3" CenterX="3"/>
</Setter.Value>
</Setter>
<Setter Property="Fill" TargetName="ExpandPath" Value="white"/>
<Setter Property="Stroke" TargetName="ExpandPath" Value="white"/>
</Trigger>
<Trigger Property="IsMouseOver" Value="True">
<Setter Property="Stroke" TargetName="ExpandPath" Value="{StaticResource TreeViewItem.TreeArrow.MouseOver.Stroke}"/>
<Setter Property="Fill" TargetName="ExpandPath" Value="{StaticResource TreeViewItem.TreeArrow.MouseOver.Fill}"/>
</Trigger>
<MultiTrigger>
<MultiTrigger.Conditions>
<Condition Property="IsMouseOver" Value="True"/>
<Condition Property="IsChecked" Value="True"/>
</MultiTrigger.Conditions>
<Setter Property="Stroke" TargetName="ExpandPath" Value="{StaticResource TreeViewItem.TreeArrow.MouseOver.Checked.Stroke}"/>
<Setter Property="Fill" TargetName="ExpandPath" Value="{StaticResource TreeViewItem.TreeArrow.MouseOver.Checked.Fill}"/>
</MultiTrigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
<Style x:Key="TreeViewItemFocusVisual">
<Setter Property="Control.Template">
<Setter.Value>
<ControlTemplate>
<Rectangle/>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
<Style x:Key="Db_TreeViewItem" TargetType="{x:Type TreeViewItem}">
<Setter Property="Background" Value="Transparent"/>
<Setter Property="HorizontalContentAlignment" Value="{Binding HorizontalContentAlignment, RelativeSource={RelativeSource AncestorType={x:Type ItemsControl}}}"/>
<Setter Property="VerticalContentAlignment" Value="{Binding VerticalContentAlignment, RelativeSource={RelativeSource AncestorType={x:Type ItemsControl}}}"/>
<Setter Property="Padding" Value="1,0,0,0"/>
<Setter Property="Foreground" Value="{DynamicResource {x:Static SystemColors.ControlTextBrushKey}}"/>
<Setter Property="FocusVisualStyle" Value="{StaticResource TreeViewItemFocusVisual}"/>
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="{x:Type TreeViewItem}">
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition MinWidth="19" Width="Auto"/>
<ColumnDefinition Width="Auto"/>
<ColumnDefinition Width="*"/>
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="Auto"/>
<RowDefinition/>
</Grid.RowDefinitions>
<ToggleButton x:Name="Expander" ClickMode="Press" IsChecked="{Binding IsExpanded, RelativeSource={RelativeSource Mode=TemplatedParent}}" Style="{StaticResource Db_ExpandCollapseToggleStyle}"/>
<Border x:Name="Bd" Background="{TemplateBinding Background}" BorderBrush="{TemplateBinding BorderBrush}" BorderThickness="{TemplateBinding BorderThickness}" Grid.Column="1" Padding="{TemplateBinding Padding}" SnapsToDevicePixels="true">
<ContentPresenter x:Name="PART_Header" ContentSource="Header" HorizontalAlignment="{TemplateBinding HorizontalContentAlignment}" SnapsToDevicePixels="{TemplateBinding SnapsToDevicePixels}"/>
</Border>
<ItemsPresenter x:Name="ItemsHost" Grid.Column="1" Grid.ColumnSpan="2" Grid.Row="1"/>
</Grid>
<ControlTemplate.Triggers>
<Trigger Property="IsExpanded" Value="false">
<Setter Property="Visibility" TargetName="ItemsHost" Value="Collapsed"/>
</Trigger>
<Trigger Property="HasItems" Value="false">
<Setter Property="Visibility" TargetName="Expander" Value="Hidden"/>
</Trigger>
<Trigger Property="IsSelected" Value="true">
<Setter Property="Background" TargetName="Bd" Value="{DynamicResource {x:Static SystemColors.HighlightBrushKey}}"/>
<Setter Property="Foreground" Value="{DynamicResource {x:Static SystemColors.HighlightTextBrushKey}}"/>
</Trigger>
<MultiTrigger>
<MultiTrigger.Conditions>
<Condition Property="IsSelected" Value="true"/>
<Condition Property="IsSelectionActive" Value="false"/>
</MultiTrigger.Conditions>
<Setter Property="Background" TargetName="Bd" Value="{DynamicResource {x:Static SystemColors.HighlightBrushKey}}"/>
<Setter Property="Foreground" Value="{DynamicResource {x:Static SystemColors.HighlightTextBrushKey}}"/>
</MultiTrigger>
<Trigger Property="IsEnabled" Value="false">
<Setter Property="Foreground" Value="{DynamicResource {x:Static SystemColors.GrayTextBrushKey}}"/>
</Trigger>
</ControlTemplate.Triggers>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
<!-- ______________________________________________________________________________________________________________________________________________ -->
<!-- ComboBox --> <!-- ComboBox -->
@@ -1024,11 +1133,13 @@
</Style> </Style>
<Style TargetType="{x:Type ComboBox}"> <Style TargetType="{x:Type ComboBox}">
<Setter Property="FocusVisualStyle" Value="{StaticResource ComboBoxFocusVisual}"/> <Setter Property="Background" Value="{StaticResource Omag_Black}"/>
<Setter Property="Foreground" Value="{DynamicResource {x:Static SystemColors.WindowTextBrushKey}}"/> <Setter Property="Foreground" Value="{StaticResource Omag_White}"/>
<Setter Property="Background" Value="{StaticResource ButtonNormalBackground}"/> <Setter Property="BorderThickness" Value="{StaticResource BorderBtn_Thickness}"/>
<Setter Property="BorderBrush" Value="{StaticResource ButtonNormalBorder}"/> <Setter Property="VerticalContentAlignment" Value="Center"/>
<Setter Property="BorderThickness" Value="1"/> <Setter Property="Height" Value="25" />
<Setter Property="Width" Value="Auto" />
<Setter Property="ScrollViewer.HorizontalScrollBarVisibility" Value="Auto"/> <Setter Property="ScrollViewer.HorizontalScrollBarVisibility" Value="Auto"/>
<Setter Property="ScrollViewer.VerticalScrollBarVisibility" Value="Auto"/> <Setter Property="ScrollViewer.VerticalScrollBarVisibility" Value="Auto"/>
<Setter Property="Padding" Value="4,3"/> <Setter Property="Padding" Value="4,3"/>
+17
View File
@@ -4,6 +4,23 @@ Imports EgtUILib
Module OmagOFFICEMap Module OmagOFFICEMap
Friend StopWatch As Stopwatch
Friend Sub TimeSpanInit()
StopWatch = New Stopwatch
StopWatch.Start()
End Sub
Friend Function TimeSpanEnd() As String
Dim sTime As String = ""
If Not IsNothing(StopWatch) Then
StopWatch.Stop()
Dim ts As TimeSpan = StopWatch.Elapsed
sTime = String.Format("{0:00}:{1:00}:{2:00}.{3:000}", ts.Hours, ts.Minutes, ts.Seconds, ts.Milliseconds)
End If
Return sTime
End Function
Private m_refMainWindowVM As MainWindowVM Private m_refMainWindowVM As MainWindowVM
Private m_refTopCommandBarVM As TopCommandBarVM Private m_refTopCommandBarVM As TopCommandBarVM
Private m_refProjectVM As ProjectVM Private m_refProjectVM As ProjectVM
File diff suppressed because it is too large Load Diff