TestEIn 1.6d10 :
- possibilità di salvare un singolo pezzo o layer o entità.
This commit is contained in:
@@ -24,6 +24,7 @@ Public Const K_COMMANDLOG As String = "CommandLog"
|
||||
Public Const K_MESSAGES As String = "Messages"
|
||||
Public Const K_WINPLACE As String = "WinPlace"
|
||||
Public Const K_LASTNGEDIR As String = "LastNgeDir"
|
||||
Public Const K_LASTNGEOBJDIR As String = "LastNgeObjDir"
|
||||
Public Const K_LASTLUADIR As String = "LastLuaDir"
|
||||
Public Const K_LASTIMPDIR As String = "LastImpDir"
|
||||
Public Const K_LASTEXPDIR As String = "LastExpDir"
|
||||
|
||||
@@ -24,6 +24,8 @@ Public Class Controller
|
||||
Public Event OnOpenProject(ByVal sender As Object, ByVal sFile As String, ByVal bOk As Boolean)
|
||||
Public Event OnSavingProject(ByVal sender As Object)
|
||||
Public Event OnSavedProject(ByVal sender As Object, ByVal sFile As String, ByVal bOk As Boolean)
|
||||
Public Event OnSavingObject(ByVal sender As Object)
|
||||
Public Event OnSavedObject(ByVal sender As Object, ByVal sFile As String, ByVal bOk As Boolean)
|
||||
Public Event OnImportingProject(ByVal sender As Object, ByVal bOkType As Boolean)
|
||||
Public Event OnImportedProject(ByVal sender As Object, ByVal sFile As String, ByVal bOk As Boolean)
|
||||
Public Event OnExportingProject(ByVal sender As Object)
|
||||
@@ -330,6 +332,59 @@ Public Class Controller
|
||||
Return bOk
|
||||
End Function
|
||||
|
||||
Public Function SaveObject(ByVal nId As Integer, Optional ByVal sDir As String = "", Optional ByVal nType As NGE = NGE.CMPTEXT) As Boolean
|
||||
'Creo nome di default
|
||||
Dim sName As String = String.Empty
|
||||
If Not EgtGetName(nId, sName) Then
|
||||
Dim nObjType As Integer = EgtGetType(nId)
|
||||
If nObjType = GDB_TY.GROUP Then
|
||||
If EgtIsPart(nId) Then
|
||||
sName = "Part" & nId.ToString()
|
||||
ElseIf EgtIsLayer(nId) Then
|
||||
sName = "Layer" & nId.ToString()
|
||||
Else
|
||||
sName = "Group" & nId.ToString()
|
||||
End If
|
||||
ElseIf nObjType <> GDB_TY.NONE Then
|
||||
Dim sTitle As String = String.Empty
|
||||
EgtGetTitle(nId, sTitle)
|
||||
sName = sTitle & nId.ToString()
|
||||
Else
|
||||
sName = "Unknown" & nId.ToString()
|
||||
End If
|
||||
End If
|
||||
'Sistemo path
|
||||
Dim sFile As String
|
||||
If String.IsNullOrWhiteSpace(sDir) Then
|
||||
sFile = sName
|
||||
Else
|
||||
sFile = sDir.TrimEnd("\") & "\" & sName
|
||||
End If
|
||||
'Assegnazione nome file con dialogo
|
||||
Dim SaveFileDialog As New SaveFileDialog
|
||||
SaveFileDialog.Title = "Save Object"
|
||||
SaveFileDialog.Filter = "New geometry EgalTech(*.nge)|*.nge"
|
||||
SaveFileDialog.FileName = sFile
|
||||
SaveFileDialog.InitialDirectory = sDir.TrimEnd("\")
|
||||
If SaveFileDialog.ShowDialog <> Windows.Forms.DialogResult.OK Then
|
||||
Return True
|
||||
End If
|
||||
Dim sFileName As String = SaveFileDialog.FileName
|
||||
'Prima del salvataggio
|
||||
RaiseEvent OnSavingObject(Me)
|
||||
'Salvataggio dell'oggetto con la sua ascendenza
|
||||
m_Scene.Cursor = Cursors.WaitCursor
|
||||
EnableCommandLog()
|
||||
Dim bOk As Boolean = EgtSaveObjToFile(nId, sFileName, nType)
|
||||
DisableCommandLog()
|
||||
m_Scene.Cursor = Cursors.Default
|
||||
'Aggiorno
|
||||
RaiseEvent UpdateUI(Me, False)
|
||||
'Gestione risultato
|
||||
RaiseEvent OnSavedObject(Me, sFileName, bOk)
|
||||
Return bOk
|
||||
End Function
|
||||
|
||||
Public Function ImportProject(Optional ByVal sDir As String = "", Optional ByVal bWithDlg As Boolean = True) As Boolean
|
||||
' gestisco eventuale file corrente modificato
|
||||
If Not ManageModified() Then
|
||||
|
||||
@@ -797,6 +797,10 @@ End Function
|
||||
Public Function EgtSaveFile(ByVal sFilePath As String, ByVal nFlag As NGE) As Boolean
|
||||
End Function
|
||||
|
||||
<DllImport(EgtIntDll, CharSet:=CharSet.Unicode)>
|
||||
Public Function EgtSaveObjToFile(ByVal nId As Integer, ByVal sFilePath As String, ByVal nFlag As NGE) As Boolean
|
||||
End Function
|
||||
|
||||
|
||||
'---------- Exchange -----------------------------------------------------------
|
||||
<DllImport(EgtIntDll, CharSet:=CharSet.Unicode)>
|
||||
|
||||
Generated
+10
-2
@@ -154,6 +154,7 @@ Partial Class Form1
|
||||
Me.cmdRelocatePartLayObj = New System.Windows.Forms.ToolStripMenuItem()
|
||||
Me.cmdCopyPartLayObj = New System.Windows.Forms.ToolStripMenuItem()
|
||||
Me.cmdDeletePartLayObj = New System.Windows.Forms.ToolStripMenuItem()
|
||||
Me.cmdSavePartLay = New System.Windows.Forms.ToolStripMenuItem()
|
||||
Me.OpenFileDialog = New System.Windows.Forms.OpenFileDialog()
|
||||
Me.SaveFileDialog = New System.Windows.Forms.SaveFileDialog()
|
||||
Me.btnGetDist = New System.Windows.Forms.CheckBox()
|
||||
@@ -2126,11 +2127,11 @@ Partial Class Form1
|
||||
'
|
||||
'ContextMenuTreeView1
|
||||
'
|
||||
Me.ContextMenuTreeView1.Items.AddRange(New System.Windows.Forms.ToolStripItem() {Me.cmdSelectPartLayObj, Me.cmdDeselectPartLayObj, Me.ToolStripSeparator1, Me.cmdSetName, Me.cmdSetInfo, Me.ToolStripSeparator2, Me.cmdRelocatePartLayObj, Me.cmdCopyPartLayObj, Me.cmdDeletePartLayObj})
|
||||
Me.ContextMenuTreeView1.Items.AddRange(New System.Windows.Forms.ToolStripItem() {Me.cmdSelectPartLayObj, Me.cmdDeselectPartLayObj, Me.ToolStripSeparator1, Me.cmdSetName, Me.cmdSetInfo, Me.ToolStripSeparator2, Me.cmdRelocatePartLayObj, Me.cmdCopyPartLayObj, Me.cmdDeletePartLayObj, Me.cmdSavePartLay})
|
||||
Me.ContextMenuTreeView1.Name = "ContextMenuStrip1"
|
||||
Me.ContextMenuTreeView1.ShowCheckMargin = True
|
||||
Me.ContextMenuTreeView1.ShowImageMargin = False
|
||||
Me.ContextMenuTreeView1.Size = New System.Drawing.Size(120, 170)
|
||||
Me.ContextMenuTreeView1.Size = New System.Drawing.Size(120, 192)
|
||||
'
|
||||
'cmdSelectPartLayObj
|
||||
'
|
||||
@@ -2184,6 +2185,12 @@ Partial Class Form1
|
||||
Me.cmdDeletePartLayObj.Size = New System.Drawing.Size(119, 22)
|
||||
Me.cmdDeletePartLayObj.Text = "Delete"
|
||||
'
|
||||
'cmdSavePartLay
|
||||
'
|
||||
Me.cmdSavePartLay.Name = "cmdSavePartLay"
|
||||
Me.cmdSavePartLay.Size = New System.Drawing.Size(119, 22)
|
||||
Me.cmdSavePartLay.Text = "Save"
|
||||
'
|
||||
'OpenFileDialog
|
||||
'
|
||||
Me.OpenFileDialog.DefaultExt = "Nge"
|
||||
@@ -2578,5 +2585,6 @@ End Sub
|
||||
Friend WithEvents btnChangeStartCurve As System.Windows.Forms.Button
|
||||
Friend WithEvents btnFillet As System.Windows.Forms.Button
|
||||
Friend WithEvents btnExplodeSurf As System.Windows.Forms.Button
|
||||
Friend WithEvents cmdSavePartLay As System.Windows.Forms.ToolStripMenuItem
|
||||
|
||||
End Class
|
||||
|
||||
+7
-7
@@ -883,7 +883,7 @@
|
||||
AAEAAAD/////AQAAAAAAAAAMAgAAAFdTeXN0ZW0uV2luZG93cy5Gb3JtcywgVmVyc2lvbj00LjAuMC4w
|
||||
LCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI3N2E1YzU2MTkzNGUwODkFAQAAACZTeXN0
|
||||
ZW0uV2luZG93cy5Gb3Jtcy5JbWFnZUxpc3RTdHJlYW1lcgEAAAAERGF0YQcCAgAAAAkDAAAADwMAAAC2
|
||||
DQAAAk1TRnQBSQFMAgEBDgEAAXgBEAF4AhABAAEQAQAE/wEJAQAI/wFCAU0BNgEEBgABNgEEAgABKAMA
|
||||
DQAAAk1TRnQBSQFMAgEBDgEAAZABEAGQAhABAAEQAQAE/wEJAQAI/wFCAU0BNgEEBgABNgEEAgABKAMA
|
||||
AUADAAFAAwABAQEAAQgGAAEQGAABgAIAAYADAAKAAQABgAMAAYABAAGAAQACgAIAA8ABAAHAAdwBwAEA
|
||||
AfABygGmAQABMwUAATMBAAEzAQABMwEAAjMCAAMWAQADHAEAAyIBAAMpAQADVQEAA00BAANCAQADOQEA
|
||||
AYABfAH/AQACUAH/AQABkwEAAdYBAAH/AewBzAEAAcYB1gHvAQAB1gLnAQABkAGpAa0CAAH/ATMDAAFm
|
||||
@@ -952,7 +952,7 @@
|
||||
AAEAAAD/////AQAAAAAAAAAMAgAAAFdTeXN0ZW0uV2luZG93cy5Gb3JtcywgVmVyc2lvbj00LjAuMC4w
|
||||
LCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI3N2E1YzU2MTkzNGUwODkFAQAAACZTeXN0
|
||||
ZW0uV2luZG93cy5Gb3Jtcy5JbWFnZUxpc3RTdHJlYW1lcgEAAAAERGF0YQcCAgAAAAkDAAAADwMAAADW
|
||||
CAAAAk1TRnQBSQFMAgEBAgEAAZgBBwGYAQcBEAEAARABAAT/AQkBAAj/AUIBTQE2AQQGAAE2AQQCAAEo
|
||||
CAAAAk1TRnQBSQFMAgEBAgEAAbABBwGwAQcBEAEAARABAAT/AQkBAAj/AUIBTQE2AQQGAAE2AQQCAAEo
|
||||
AwABQAMAARADAAEBAQABCAYAAQQYAAGAAgABgAMAAoABAAGAAwABgAEAAYABAAKAAgADwAEAAcAB3AHA
|
||||
AQAB8AHKAaYBAAEzBQABMwEAATMBAAEzAQACMwIAAxYBAAMcAQADIgEAAykBAANVAQADTQEAA0IBAAM5
|
||||
AQABgAF8Af8BAAJQAf8BAAGTAQAB1gEAAf8B7AHMAQABxgHWAe8BAAHWAucBAAGQAakBrQIAAf8BMwMA
|
||||
@@ -1092,11 +1092,11 @@
|
||||
</data>
|
||||
<data name="btnPoint.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
<value>
|
||||
iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
|
||||
YQUAAAAJcEhZcwAADsQAAA7EAZUrDhsAAAAHdElNRQffBBwHAxGEIS8JAAAAq0lEQVRYR+3TUQqDMBBF
|
||||
UReWxbkWV9ddxKRN4qgXppTOSz8qHAjXgcyHLjnnqTAqYVTCqIRRCaMSRiWMShiVML6jPKmohy7RnAej
|
||||
p172vHR7HD5cAqPndrlZ4jrrwej5L1Ceud9ANZY46P6Cb8KohFEJY6Trt3J6Ga1eXqx2idtQlH55O48l
|
||||
cDhCu9Qu8DrboWh2gdH6QeEnFuhGswMzYFTCqIRRCaMSRp287IDzhJ/eCN+kAAAAAElFTkSuQmCC
|
||||
iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAABGdBTUEAALGPC/xhBQAAAAlwSFlzAAAO
|
||||
xAAADsQBlSsOGwAAAAd0SU1FB98EHAcDEYQhLwkAAACrSURBVFhH7dNRCoMwEEVRF5bFuRZX113EpE3i
|
||||
qBemlM5LPyocCNeBzIcuOeepMCphVMKohFEJoxJGJYxKGJUwvqM8qaiHLtGcB6OnXva8dHscPlwCo+d2
|
||||
uVniOuvB6PkvUJ6530A1ljjo/oJvwqiEUQljpOu3cnoZrV5erHaJ21CUfnk7jyVwOEK71C7wOtuhaHaB
|
||||
0fpB4ScW6EazAzNgVMKohFEJoxJGnbzsgPOEn94I36QAAAAASUVORK5CYII=
|
||||
</value>
|
||||
</data>
|
||||
<data name="btnLine2P.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
|
||||
|
||||
@@ -448,6 +448,20 @@ Public Class Form1
|
||||
End If
|
||||
End Sub
|
||||
|
||||
Private Sub OnSavingObject(ByVal sender As Object) Handles m_Controller.OnSavingObject
|
||||
End Sub
|
||||
|
||||
Private Sub OnSavedObject(ByVal sender As Object, ByVal sFile As String, ByVal bOk As Boolean) Handles m_Controller.OnSavedObject
|
||||
WritePrivateProfileString(S_GENERAL, K_LASTNGEOBJDIR, Path.GetDirectoryName(sFile), m_sIniFile)
|
||||
If bOk Then
|
||||
m_MruFiles.Add(sFile)
|
||||
Else
|
||||
m_MruFiles.Remove(sFile)
|
||||
Dim sMsg As String = EgtMsg(10004) & " '" & sFile & "'" 'Error saving file
|
||||
MessageBox.Show(sMsg, EgtMsg(10001), MessageBoxButtons.OK, MessageBoxIcon.Error) ' Error
|
||||
End If
|
||||
End Sub
|
||||
|
||||
Private Sub OnImportingProject(ByVal sender As Object, ByVal bOkType As Boolean) Handles m_Controller.OnImportingProject
|
||||
If bOkType Then
|
||||
ClearObjTree()
|
||||
@@ -1493,8 +1507,12 @@ Public Class Form1
|
||||
' verifico stato visualizzazione per abilitare voci menù
|
||||
Dim nStat As GDB_ST = GDB_ST.ON_
|
||||
Dim bOn As Boolean = EgtGetCalcStatus(m_nObjTreeMenuId, nStat) And nStat <> GDB_ST.OFF
|
||||
For Each i As ToolStripItem In ContextMenuTreeView1.Items
|
||||
i.Enabled = bOn
|
||||
For Each Item As ToolStripItem In ContextMenuTreeView1.Items
|
||||
If Item.Name = "cmdSetName" Or Item.Name = "cmdSetInfo" Then
|
||||
Item.Enabled = True
|
||||
Else
|
||||
Item.Enabled = bOn
|
||||
End If
|
||||
Next
|
||||
ContextMenuTreeView1.Show(TreeView1, e.Location)
|
||||
End If
|
||||
@@ -1592,6 +1610,12 @@ Public Class Form1
|
||||
ElseIf e.ClickedItem.Name = "cmdDeletePartLayObj" Then
|
||||
m_Controller.SetLastInteger(m_nObjTreeMenuId)
|
||||
m_Controller.ExecuteCommand(CMD.DELETE)
|
||||
ElseIf e.ClickedItem.Name = "cmdSavePartLay" Then
|
||||
ContextMenuTreeView1.Close()
|
||||
Dim sDir As String = String.Empty
|
||||
GetPrivateProfileString(S_GENERAL, K_LASTNGEOBJDIR, "", sDir, m_sIniFile)
|
||||
Dim nType As NGE = GetPrivateProfileInt(S_GEOMDB, K_SAVETYPE, NGE.CMPTEXT, m_sIniFile)
|
||||
m_Controller.SaveObject(m_nObjTreeMenuId, sDir, nType)
|
||||
End If
|
||||
End Sub
|
||||
|
||||
@@ -1700,6 +1724,7 @@ Public Class Form1
|
||||
|
||||
Private Sub OnMenuMruFiles_ItemClick(sender As Object, e As ToolStripItemClickedEventArgs) Handles ContextMenuMruFiles.ItemClicked
|
||||
If e.ClickedItem.Text <> "" Then
|
||||
ContextMenuMruFiles.Close()
|
||||
m_Controller.OpenProject(e.ClickedItem.Text, False)
|
||||
End If
|
||||
End Sub
|
||||
|
||||
@@ -46,5 +46,5 @@ Imports System.Runtime.InteropServices
|
||||
' utilizzando l'asterisco (*) come descritto di seguito:
|
||||
' <Assembly: AssemblyVersion("1.0.*")>
|
||||
|
||||
<Assembly: AssemblyVersion("1.6.4.9")>
|
||||
<Assembly: AssemblyFileVersion("1.6.4.9")>
|
||||
<Assembly: AssemblyVersion("1.6.4.10")>
|
||||
<Assembly: AssemblyFileVersion("1.6.4.10")>
|
||||
|
||||
Reference in New Issue
Block a user