diff --git a/Constants/ConstGen.vb b/Constants/ConstGen.vb
index 6161835..4ddf146 100644
--- a/Constants/ConstGen.vb
+++ b/Constants/ConstGen.vb
@@ -21,6 +21,7 @@ Module ConstGen
' File con dati di licenza
Public Const LIC_FILE_NAME As String = "OmagOFFICE.lic"
Public Const S_LICENCE As String = "Licence"
+ Public Const K_LOCKID As String = "LockId"
Public Const K_KEY As String = "Key"
Public Const K_NESTKEY As String = "NestKey"
diff --git a/Constants/ConstIni.vb b/Constants/ConstIni.vb
index ec1270e..13e0357 100644
--- a/Constants/ConstIni.vb
+++ b/Constants/ConstIni.vb
@@ -114,6 +114,7 @@ Module ConstIni
Public Const K_FILOTOPOFFSET As String = "FiloTopOffset"
Public Const K_FILOTOPDEPTH As String = "FiloTopDepth"
Public Const K_FILOTOPROUNDOFF As String = "FiloTopRoundOff"
+ Public Const K_TEXTCOLORENT As String = "TextColorEnt"
Public Const S_NEST As String = "Nest"
Public Const K_DIRECT As String = "Direct"
diff --git a/CurrMachWindow/CurrMachWindowVM.vb b/CurrMachWindow/CurrMachWindowVM.vb
index a0084ef..66a8849 100644
--- a/CurrMachWindow/CurrMachWindowVM.vb
+++ b/CurrMachWindow/CurrMachWindowVM.vb
@@ -456,28 +456,28 @@ Public Class CurrMachWindowVM
' --- DRILL ---
CreateMachiningList(MCH_MY.DRILLING, m_AvailableDrillList, m_CurrDrillingList)
' 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
End If
' --- MILL ---
CreateMachiningList(MCH_MY.MILLING, m_AvailableMillList, m_CurrMillingList)
' 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
End If
' --- SCASSO ---
CreateMachiningList(MCH_MY.POCKETING, m_AvailableMillList, m_CurrPocketingList)
' 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
End If
' --- WATERJET ---
CreateMachiningList(MCH_MY.WATERJETTING, m_AvailableWaterjetList, m_CurrWaterjettingList)
' 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
End If
m_CurrWaterjettingQualityList = New List(Of String)(CurrentMachine.Qualities)
@@ -487,28 +487,28 @@ Public Class CurrMachWindowVM
' --- DRILL ---
CreateMachiningList(MCH_MY.DRILLING, m_AvailableDrillList, m_CurrDrillingList)
' 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
End If
' --- MILL ---
CreateMachiningList(MCH_MY.MILLING, m_AvailableMillList, m_CurrMillingList)
' 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
End If
' --- SCASSO ---
CreateMachiningList(MCH_MY.POCKETING, m_AvailableMillList, m_CurrPocketingList)
' 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
End If
' --- WATERJET ---
CreateMachiningList(MCH_MY.WATERJETTING, m_AvailableWaterjetList, m_CurrWaterjettingList)
' 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
End If
m_CurrWaterjettingQualityList = New List(Of String)(CurrentMachine.Qualities)
diff --git a/DxfImportWindow/DxfImportSceneHostV.xaml.vb b/DxfImportWindow/DxfImportSceneHostV.xaml.vb
index 2057b4b..32b4bae 100644
--- a/DxfImportWindow/DxfImportSceneHostV.xaml.vb
+++ b/DxfImportWindow/DxfImportSceneHostV.xaml.vb
@@ -112,7 +112,7 @@ Public Class DxfImportSceneHostV
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
- 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)
ElseIf DxfImportWindowMap.refDxfImportWindowVM.FiloTop_IsChecked Then
OnMouseDownSceneFiloTop(e)
diff --git a/DxfImportWindow/DxfImportWindowV.xaml b/DxfImportWindow/DxfImportWindowV.xaml
index 21a50a7..fd7fa05 100644
--- a/DxfImportWindow/DxfImportWindowV.xaml
+++ b/DxfImportWindow/DxfImportWindowV.xaml
@@ -6,7 +6,193 @@
Title="{Binding TitleMsg}"
IsMinimizable="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">
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
@@ -84,7 +270,7 @@
-
@@ -98,6 +284,10 @@
IsChecked="{Binding FiloTop_IsChecked}"
Style="{StaticResource CompoWindow_WrapToggleButton}"/>
+
+
-
-
-
+
+
@@ -178,10 +367,12 @@
TextWrapping="Wrap"
TextAlignment="Center"
Margin="0,0,0,20"/>
-
+
+ Content="{Binding SideEntityControl}" ScrollViewer.VerticalScrollBarVisibility="Visible"/>
+
+
diff --git a/DxfImportWindow/DxfImportWindowVM.vb b/DxfImportWindow/DxfImportWindowVM.vb
index b428d92..7c0710f 100644
--- a/DxfImportWindow/DxfImportWindowVM.vb
+++ b/DxfImportWindow/DxfImportWindowVM.vb
@@ -142,7 +142,7 @@ Public Class DxfImportWindowVM
Return m_SideAngle_IsChecked
End Get
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
If value Then
' Aggiungo regioni per percorsi interni
@@ -190,7 +190,7 @@ Public Class DxfImportWindowVM
Return m_FiloTop_IsChecked
End Get
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
If value Then
' Aggiungo regioni per percorsi interni
@@ -233,13 +233,61 @@ Public Class DxfImportWindowVM
End Set
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
Public Property Drip_IsChecked As Boolean
Get
Return m_Drip_IsChecked
End Get
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
If value Then
' Messaggio di selezione contorno
@@ -283,7 +331,7 @@ Public Class DxfImportWindowVM
Return m_UnderDrill_IsChecked
End Get
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
If value Then
' Aggiungo regioni di selezione per percorsi interni
@@ -493,6 +541,12 @@ Public Class DxfImportWindowVM
End Get
End Property
+ Public ReadOnly Property EngraveMsg As String
+ Get
+ Return EgtMsg(90397)
+ End Get
+ End Property
+
Public ReadOnly Property DripMsg As String
Get
Return EgtMsg(MSG_IMPORTPAGEUC + 8)
@@ -844,7 +898,7 @@ Public Class DxfImportWindowVM
Friend Sub SelectedPartChanged()
' 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)
End If
End Sub
diff --git a/MachinePanel/MachinePanelV.xaml b/MachinePanel/MachinePanelV.xaml
index 117e790..74d451b 100644
--- a/MachinePanel/MachinePanelV.xaml
+++ b/MachinePanel/MachinePanelV.xaml
@@ -9,17 +9,19 @@
Height="20" Width="150"/>-->
-
+ Style="{StaticResource ToolBar_Button}" Visibility="{Binding WjDb_Visibility}">
+
+
+
diff --git a/MainWindow/MainWindowM.vb b/MainWindow/MainWindowM.vb
index 56febe5..ff1e5d7 100644
--- a/MainWindow/MainWindowM.vb
+++ b/MainWindow/MainWindowM.vb
@@ -219,12 +219,17 @@ Public Class MainWindowM
EgtUILib.GetPrivateProfileString( S_LICENCE, K_NESTKEY, "", sNestKey, sLicFile)
EgtSetNestKey( sNestKey)
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
m_bAutoNestOption = Not String.IsNullOrWhiteSpace( sNestKey)
' Recupero livello e opzioni della chiave
- Dim bKey As Boolean = EgtGetKeyLevel(9423, 2511, 1, m_nKeyLevel) And
- EgtGetKeyOptions(9423, 2511, 1, m_nKeyOptions)
+ Dim bKey As Boolean = EgtGetKeyLevel(9423, 2607, 1, m_nKeyLevel) And
+ EgtGetKeyOptions(9423, 2607, 1, m_nKeyOptions)
' Verifico abilitazione prodotto
Dim bProd As Boolean = GetKeyOption(KEY_OPT.OFFICE_BASE)
' Inizializzazione generale di EgtInterface
diff --git a/My Project/AssemblyInfo.vb b/My Project/AssemblyInfo.vb
index ec54836..e5bdb7a 100644
--- a/My Project/AssemblyInfo.vb
+++ b/My Project/AssemblyInfo.vb
@@ -69,6 +69,6 @@ Imports System.Windows
' by using the '*' as shown below:
'
-
-
+
+
diff --git a/MySceneHost/MySceneHostVM.vb b/MySceneHost/MySceneHostVM.vb
index 208292f..64c92bd 100644
--- a/MySceneHost/MySceneHostVM.vb
+++ b/MySceneHost/MySceneHostVM.vb
@@ -47,12 +47,27 @@ Public Class MySceneHostVM
' Problemi
' Se manca la chiave
If OmagOFFICEMap.refMainWindowVM.MainWindowM.nKeyLevel = -1 Or OmagOFFICEMap.refMainWindowVM.MainWindowM.nKeyLevel = -2 Then
- EgtOutLog("Missing Dongle")
- ' Box di avviso chiave mancante : "Chiave non presente. \n Inserirla e riavviare il programma." "Errore"
- Dim sText As String = EgtMsg(MSG_MISSINGKEYWD + 2) & vbCrLf & EgtMsg(MSG_MISSINGKEYWD + 3)
- Dim sTitle As String = EgtMsg(MSG_MISSINGKEYWD + 1)
+ If Not EgtGetNetHwKey() Then
+ EgtOutLog("Missing Dongle")
+ ' Box di avviso chiave mancante : "Chiave non presente. \nInserirla e riavviare il programma." "Errore"
+ 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)
- ' Altrimenti manca la licenza
+ ' Altrimenti manca la licenza
Else
EgtOutLog("Problems with Licence")
' 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()
AddHandler MainScene.OnMouseDownScene, AddressOf OnMouseDownScene
+ 'AddHandler OnMouseDownScene_DoubleClick_1, AddressOf OnMouseDownScene_DoubleClick
AddHandler MainScene.OnMouseMoveScene, AddressOf OnMouseMoveScene
AddHandler MainScene.OnMouseUpScene, AddressOf OnMouseUpScene
AddHandler MainScene.KeyDown, AddressOf OnKeyDownScene
AddHandler MainScene.OnCursorPos, AddressOf OnCursorPos
AddHandler MainScene.OnShowDistance, AddressOf OnShowDistance
AddHandler MainScene.OnChangedSnapPointType, AddressOf OnChangedSnapPointType
+
End Sub
Private Sub PreInitializeScene()
@@ -719,6 +736,8 @@ Public Class MySceneHostVM
End Sub
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
Dim sDirToSearch As String = Path.GetDirectoryName(sFile)
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)
' 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.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
Select Case OmagOFFICEMap.refOptionPanelVM.SelItem
Case OptionPanelVM.Tabs.RAWPART
diff --git a/OmagOFFICE.vbproj b/OmagOFFICE.vbproj
index 1f258f3..c1277aa 100644
--- a/OmagOFFICE.vbproj
+++ b/OmagOFFICE.vbproj
@@ -128,8 +128,8 @@
My Project\app.manifest
-
- packages\DotNetZip.1.16.0\lib\net40\DotNetZip.dll
+
+ ..\..\EgtProg\OmagOFFICE\DotNetZip.dllFalse
@@ -979,6 +979,7 @@
+
diff --git a/OptionPanel/MachiningTab/MachiningTabVM.vb b/OptionPanel/MachiningTab/MachiningTabVM.vb
index 850b0b8..460596c 100644
--- a/OptionPanel/MachiningTab/MachiningTabVM.vb
+++ b/OptionPanel/MachiningTab/MachiningTabVM.vb
@@ -334,6 +334,12 @@ Public Class MachiningTabVM
End If
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 Class
diff --git a/OptionPanel/MachiningTab/SplitModeV.xaml b/OptionPanel/MachiningTab/SplitModeV.xaml
index 10ffd8b..ba1fbcf 100644
--- a/OptionPanel/MachiningTab/SplitModeV.xaml
+++ b/OptionPanel/MachiningTab/SplitModeV.xaml
@@ -21,8 +21,12 @@
-
-
+
+
+
+
@@ -40,6 +44,7 @@
+
@@ -378,7 +383,7 @@
ExpandDirection="Down" IsExpanded="{Binding bDirectSpLitCut_IsExpanded}">
-
+
-
+
-
+
-
+
-
+
+
+
+
+
+
+
+
+
-
-
-
-
-
-
-