TestEIn 1.6e6 :
- aggiunta gestione drag & drop di file.
This commit is contained in:
+78
-11
@@ -73,6 +73,7 @@ Public Class Controller
|
||||
SETNAME
|
||||
SETINFO
|
||||
POINT
|
||||
VECTOR
|
||||
FRAME
|
||||
LINE2P
|
||||
LINEPDL
|
||||
@@ -639,7 +640,7 @@ Public Class Controller
|
||||
Select Case m_nInpType
|
||||
Case IBT.TY_VECTOR3D
|
||||
m_vtLast = m_ptLast - m_ptP1
|
||||
m_vtLast.Normalize()
|
||||
'm_vtLast.Normalize()
|
||||
Case IBT.TY_DIRECTION
|
||||
m_dLast = GridAngFromGlobDir(m_ptLast - m_ptP1)
|
||||
m_dAux = GridLenFromGlobLen(m_ptLast - m_ptP1)
|
||||
@@ -970,7 +971,10 @@ Public Class Controller
|
||||
' Point
|
||||
Case CMD.POINT
|
||||
Return ProcessPoint()
|
||||
' Point
|
||||
' Vector
|
||||
Case CMD.VECTOR
|
||||
Return ProcessVector()
|
||||
' Frame
|
||||
Case CMD.FRAME
|
||||
Return ProcessFrame()
|
||||
' Line2P
|
||||
@@ -1125,6 +1129,8 @@ Public Class Controller
|
||||
DragCopyPartLayerObj()
|
||||
Case CMD.POINT
|
||||
DragPoint()
|
||||
Case CMD.VECTOR
|
||||
DragVector()
|
||||
Case CMD.FRAME
|
||||
DragFrame()
|
||||
Case CMD.LINE2P
|
||||
@@ -2033,14 +2039,15 @@ Public Class Controller
|
||||
m_nInpType = IBT.TY_POINT3D
|
||||
SetInputBoxPoint3d(m_ptCont)
|
||||
Case 1
|
||||
' reset scena
|
||||
m_Scene.ResetStatus(False)
|
||||
' creo il punto (i dati sono in globale)
|
||||
EnableCommandLog()
|
||||
If EgtCreateGeoPoint(GetCurrLayer(), m_ptLast.Loc(GDB_ID.GRID), GDB_RT.GRID) <> GDB_ID.NULL Then
|
||||
m_ptCont = m_ptLast
|
||||
End If
|
||||
DisableCommandLog()
|
||||
' reset stato scena
|
||||
m_Scene.ResetStatus()
|
||||
EgtDraw()
|
||||
' aggiorno stato
|
||||
m_nStep = 0
|
||||
RaiseEvent UpdateUI(Me, True)
|
||||
@@ -2062,6 +2069,65 @@ Public Class Controller
|
||||
End If
|
||||
End Sub
|
||||
|
||||
Private Function ProcessVector() As Boolean
|
||||
Select Case m_nStep
|
||||
Case 0
|
||||
' deve esistere un gruppo corrente e devo poter creare il gruppo di drag
|
||||
If GetCurrLayer() = GDB_ID.NULL Or Not m_Scene.CreateDragGroup() Then
|
||||
Return False
|
||||
End If
|
||||
m_Scene.EnableDrag()
|
||||
' imposto stato a primo punto per vector
|
||||
m_Scene.SetStatusSelPoint(True)
|
||||
m_nStep = 1
|
||||
' abilito dialogo
|
||||
RaiseEvent PrepareInputBox("VECTOR", "Insert Start Point", "", False, True)
|
||||
m_nInpType = IBT.TY_POINT3D
|
||||
SetInputBoxPoint3d(m_ptCont)
|
||||
Case 1
|
||||
m_ptP1 = m_ptLast
|
||||
m_vtLast = 10 * m_vtCont
|
||||
m_nStep = 2
|
||||
m_Scene.DisableDrag()
|
||||
RaiseEvent PrepareInputBox("VECTOR", "Insert Vector ", "", False, True)
|
||||
m_nInpType = IBT.TY_VECTOR3D
|
||||
SetInputBoxVector3d(m_vtLast)
|
||||
EgtDisableModified()
|
||||
DragVector()
|
||||
EgtEnableModified()
|
||||
Case 2
|
||||
' reset scena
|
||||
m_Scene.ResetStatus(False)
|
||||
' creo il vettore (i dati sono in globale)
|
||||
EnableCommandLog()
|
||||
If EgtCreateGeoVector(GetCurrLayer(), m_vtLast.Loc(GDB_ID.GRID), m_ptP1.Loc(GDB_ID.GRID), GDB_RT.GRID) <> GDB_ID.NULL Then
|
||||
m_ptCont = m_ptP1
|
||||
m_vtCont = m_vtLast
|
||||
m_vtCont.Normalize()
|
||||
End If
|
||||
DisableCommandLog()
|
||||
EgtDraw()
|
||||
' aggiorno stato
|
||||
m_nStep = 0
|
||||
RaiseEvent UpdateUI(Me, True)
|
||||
Case Else
|
||||
m_nStep = 0
|
||||
Return False
|
||||
End Select
|
||||
Return True
|
||||
End Function
|
||||
|
||||
Private Sub DragVector()
|
||||
' il gruppo di Drag ha riferimento globale
|
||||
If m_nStep = 2 Then
|
||||
' svuoto il gruppo di drag
|
||||
EgtEmptyGroup(m_Scene.GetDragGroup())
|
||||
' creo il vettore
|
||||
EgtCreateGeoVector(m_Scene.GetDragGroup(), m_vtLast, m_ptP1, GDB_RT.GLOB)
|
||||
EgtDraw()
|
||||
End If
|
||||
End Sub
|
||||
|
||||
Private Function ProcessFrame() As Boolean
|
||||
Select Case m_nStep
|
||||
Case 0
|
||||
@@ -2078,14 +2144,15 @@ Public Class Controller
|
||||
m_nInpType = IBT.TY_POINT3D
|
||||
SetInputBoxPoint3d(m_ptCont)
|
||||
Case 1
|
||||
' reset scena
|
||||
m_Scene.ResetStatus(False)
|
||||
' creo il frame allineato con grid (i dati sono in globale)
|
||||
EnableCommandLog()
|
||||
If EgtCreateGeoFrame(GetCurrLayer(), New Frame3d(m_ptLast.Loc(GDB_ID.GRID)), GDB_RT.GRID) <> GDB_ID.NULL Then
|
||||
m_ptCont = m_ptLast
|
||||
End If
|
||||
DisableCommandLog()
|
||||
' reset stato scena
|
||||
m_Scene.ResetStatus()
|
||||
EgtDraw()
|
||||
' aggiorno stato
|
||||
m_nStep = 0
|
||||
RaiseEvent UpdateUI(Me, True)
|
||||
@@ -2134,7 +2201,7 @@ Public Class Controller
|
||||
m_Scene.EnableDrag()
|
||||
RaiseEvent PrepareInputBox("LINE 2P", "Insert End Point ", "", False, True)
|
||||
m_nInpType = IBT.TY_POINT3D
|
||||
SetInputBoxPoint3d(m_ptLast.Loc(GDB_ID.GRID))
|
||||
SetInputBoxPoint3d(m_ptLast)
|
||||
Select Case m_sepP1
|
||||
Case SEP.PT_TG, SEP.PT_PERP
|
||||
m_Scene.DisableMinDistPoint()
|
||||
@@ -3013,7 +3080,7 @@ Public Class Controller
|
||||
m_nStep = 2
|
||||
RaiseEvent PrepareInputBox("RECTANGLE 2P", "Insert End Point", "", False, True)
|
||||
m_nInpType = IBT.TY_POINT3D
|
||||
SetInputBoxPoint3d(m_ptLast.Loc(GDB_ID.GRID))
|
||||
SetInputBoxPoint3d(m_ptLast)
|
||||
Case 2
|
||||
' reset scena
|
||||
m_Scene.ResetStatus(False)
|
||||
@@ -3076,7 +3143,7 @@ Public Class Controller
|
||||
m_nStep = 3
|
||||
RaiseEvent PrepareInputBox("POLYGON", "Insert Side Point", "Internal Radius", False, True)
|
||||
m_nInpType = IBT.TY_POINT3D
|
||||
SetInputBoxPoint3d(m_ptLast.Loc(GDB_ID.GRID))
|
||||
SetInputBoxPoint3d(m_ptLast)
|
||||
Case 3
|
||||
' reset scena
|
||||
m_Scene.ResetStatus(False)
|
||||
@@ -3147,7 +3214,7 @@ Public Class Controller
|
||||
m_nStep = 3
|
||||
RaiseEvent PrepareInputBox("POLYGON SIDE", "Insert Side End Point", "", False, True)
|
||||
m_nInpType = IBT.TY_POINT3D
|
||||
SetInputBoxPoint3d(m_ptLast.Loc(GDB_ID.GRID))
|
||||
SetInputBoxPoint3d(m_ptLast)
|
||||
Case 3
|
||||
' reset scena
|
||||
m_Scene.ResetStatus(False)
|
||||
@@ -5001,7 +5068,7 @@ Public Class Controller
|
||||
sMsg += " to " + sCurrFile
|
||||
End If
|
||||
sMsg += " ?"
|
||||
Dim nRes = MessageBox.Show(sMsg, "", MessageBoxButtons.YesNoCancel, MessageBoxIcon.Question)
|
||||
Dim nRes = MessageBox.Show(m_Scene, sMsg, "", MessageBoxButtons.YesNoCancel, MessageBoxIcon.Question)
|
||||
Select Case nRes
|
||||
Case Windows.Forms.DialogResult.Yes
|
||||
SaveProject()
|
||||
|
||||
Generated
+1
@@ -1123,6 +1123,7 @@ Partial Class Form1
|
||||
Me.tBoxInfo.ScrollBars = System.Windows.Forms.ScrollBars.Vertical
|
||||
Me.tBoxInfo.Size = New System.Drawing.Size(218, 77)
|
||||
Me.tBoxInfo.TabIndex = 24
|
||||
Me.tBoxInfo.WordWrap = False
|
||||
'
|
||||
'tboxCmd
|
||||
'
|
||||
|
||||
+2
-2
@@ -883,7 +883,7 @@
|
||||
AAEAAAD/////AQAAAAAAAAAMAgAAAFdTeXN0ZW0uV2luZG93cy5Gb3JtcywgVmVyc2lvbj00LjAuMC4w
|
||||
LCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI3N2E1YzU2MTkzNGUwODkFAQAAACZTeXN0
|
||||
ZW0uV2luZG93cy5Gb3Jtcy5JbWFnZUxpc3RTdHJlYW1lcgEAAAAERGF0YQcCAgAAAAkDAAAADwMAAAC2
|
||||
DQAAAk1TRnQBSQFMAgEBDgEAAZgBEAGYAhABAAEQAQAE/wEJAQAI/wFCAU0BNgEEBgABNgEEAgABKAMA
|
||||
DQAAAk1TRnQBSQFMAgEBDgEAAaABEAGgAhABAAEQAQAE/wEJAQAI/wFCAU0BNgEEBgABNgEEAgABKAMA
|
||||
AUADAAFAAwABAQEAAQgGAAEQGAABgAIAAYADAAKAAQABgAMAAYABAAGAAQACgAIAA8ABAAHAAdwBwAEA
|
||||
AfABygGmAQABMwUAATMBAAEzAQABMwEAAjMCAAMWAQADHAEAAyIBAAMpAQADVQEAA00BAANCAQADOQEA
|
||||
AYABfAH/AQACUAH/AQABkwEAAdYBAAH/AewBzAEAAcYB1gHvAQAB1gLnAQABkAGpAa0CAAH/ATMDAAFm
|
||||
@@ -952,7 +952,7 @@
|
||||
AAEAAAD/////AQAAAAAAAAAMAgAAAFdTeXN0ZW0uV2luZG93cy5Gb3JtcywgVmVyc2lvbj00LjAuMC4w
|
||||
LCBDdWx0dXJlPW5ldXRyYWwsIFB1YmxpY0tleVRva2VuPWI3N2E1YzU2MTkzNGUwODkFAQAAACZTeXN0
|
||||
ZW0uV2luZG93cy5Gb3Jtcy5JbWFnZUxpc3RTdHJlYW1lcgEAAAAERGF0YQcCAgAAAAkDAAAADwMAAADW
|
||||
CAAAAk1TRnQBSQFMAgEBAgEAAbgBBwG4AQcBEAEAARABAAT/AQkBAAj/AUIBTQE2AQQGAAE2AQQCAAEo
|
||||
CAAAAk1TRnQBSQFMAgEBAgEAAcABBwHAAQcBEAEAARABAAT/AQkBAAj/AUIBTQE2AQQGAAE2AQQCAAEo
|
||||
AwABQAMAARADAAEBAQABCAYAAQQYAAGAAgABgAMAAoABAAGAAwABgAEAAYABAAKAAgADwAEAAcAB3AHA
|
||||
AQAB8AHKAaYBAAEzBQABMwEAATMBAAEzAQACMwIAAxYBAAMcAQADIgEAAykBAANVAQADTQEAA0IBAAM5
|
||||
AQABgAF8Af8BAAJQAf8BAAGTAQAB1gEAAf8B7AHMAQABxgHWAe8BAAHWAucBAAGQAakBrQIAAf8BMwMA
|
||||
|
||||
@@ -69,6 +69,8 @@ Public Class Form1
|
||||
Private Sub Form1_Load(sender As System.Object, e As System.EventArgs) Handles MyBase.Load
|
||||
' Installo aggiornamento interfaccia
|
||||
AddHandler System.Windows.Forms.Application.Idle, AddressOf Application_Idle
|
||||
' Abilito drag and drop
|
||||
Me.AllowDrop = True
|
||||
' Title
|
||||
EmitTitle()
|
||||
' Impostazione path radice per i dati
|
||||
@@ -328,6 +330,30 @@ Public Class Form1
|
||||
Next
|
||||
End Sub
|
||||
|
||||
Private Sub Form1_DragEnter(sender As System.Object, e As System.Windows.Forms.DragEventArgs) Handles Me.DragEnter
|
||||
If e.Data.GetDataPresent(DataFormats.FileDrop) Then
|
||||
e.Effect = DragDropEffects.Copy
|
||||
End If
|
||||
End Sub
|
||||
|
||||
Private Sub Form1_DragDrop(sender As System.Object, e As System.Windows.Forms.DragEventArgs) Handles Me.DragDrop
|
||||
Dim files() As String = e.Data.GetData(DataFormats.FileDrop)
|
||||
For Each s In files
|
||||
If Not String.IsNullOrWhiteSpace(s) Then
|
||||
Dim nFileType As Integer = EgtGetFileType(s)
|
||||
Select Case nFileType
|
||||
Case FT.NGE, FT.NFE
|
||||
m_Controller.OpenProject(s, False)
|
||||
Case FT.DXF, FT.STL, FT.CNC, FT.CSF
|
||||
m_Controller.ImportProject(s, False)
|
||||
Case FT.TSC, FT.LUA
|
||||
m_Controller.Exec(s, False)
|
||||
End Select
|
||||
Exit For
|
||||
End If
|
||||
Next
|
||||
End Sub
|
||||
|
||||
Private Sub Form1_FormClosing(sender As System.Object, e As FormClosingEventArgs) Handles MyBase.FormClosing
|
||||
' gestisco eventuale file corrente modificato
|
||||
If Not m_Controller.ManageModified() Then
|
||||
@@ -925,10 +951,12 @@ Public Class Form1
|
||||
|
||||
' --------------------- Commands --------------------------------
|
||||
Private Sub btnPoint_Click(sender As System.Object, e As System.EventArgs) Handles btnPoint.Click
|
||||
If (ModifierKeys And Keys.Shift) <> Keys.Shift Then
|
||||
m_Controller.ExecuteCommand(CMD.POINT)
|
||||
Else
|
||||
If (ModifierKeys And Keys.Control) = Keys.Control Then
|
||||
m_Controller.ExecuteCommand(CMD.FRAME)
|
||||
ElseIf (ModifierKeys And Keys.Shift) = Keys.Shift Then
|
||||
m_Controller.ExecuteCommand(CMD.VECTOR)
|
||||
Else
|
||||
m_Controller.ExecuteCommand(CMD.POINT)
|
||||
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.5.5")>
|
||||
<Assembly: AssemblyFileVersion("1.6.5.5")>
|
||||
<Assembly: AssemblyVersion("1.6.5.6")>
|
||||
<Assembly: AssemblyFileVersion("1.6.5.6")>
|
||||
|
||||
Reference in New Issue
Block a user