home *** CD-ROM | disk | FTP | other *** search
- VERSION 4.00
- Begin VB.Form frmXDView
- AutoRedraw = -1 'True
- BorderStyle = 3 'Fixed Dialog
- Caption = "XData view"
- ClientHeight = 3975
- ClientLeft = 1725
- ClientTop = 2085
- ClientWidth = 6315
- Height = 4380
- Icon = "XDVIEW.frx":0000
- Left = 1665
- LinkTopic = "Form1"
- MaxButton = 0 'False
- MinButton = 0 'False
- ScaleHeight = 3975
- ScaleWidth = 6315
- Top = 1740
- Width = 6435
- Begin VB.CommandButton bUp
- Caption = ">"
- Height = 255
- Left = 5580
- TabIndex = 17
- Top = 420
- Visible = 0 'False
- Width = 255
- End
- Begin VB.TextBox tIndex
- Height = 285
- Left = 5040
- TabIndex = 16
- Top = 405
- Visible = 0 'False
- Width = 495
- End
- Begin VB.CommandButton bDown
- Caption = "<"
- Height = 255
- Left = 4755
- TabIndex = 15
- Top = 420
- Visible = 0 'False
- Width = 255
- End
- Begin VB.TextBox tValueY
- Enabled = 0 'False
- Height = 285
- Left = 3240
- TabIndex = 11
- Top = 2880
- Visible = 0 'False
- Width = 2655
- End
- Begin VB.TextBox tValueX
- Enabled = 0 'False
- Height = 285
- Left = 360
- TabIndex = 10
- Top = 2880
- Visible = 0 'False
- Width = 2655
- End
- Begin VB.TextBox tValue
- Enabled = 0 'False
- Height = 285
- Left = 360
- TabIndex = 6
- Top = 2880
- Width = 5535
- End
- Begin VB.CommandButton bUpLevel
- Caption = "Up level"
- Enabled = 0 'False
- Height = 375
- Left = 360
- TabIndex = 4
- Top = 3360
- Width = 1215
- End
- Begin VB.CommandButton bPick
- Caption = "Pick"
- Enabled = 0 'False
- Height = 375
- Left = 1800
- TabIndex = 3
- Top = 3360
- Width = 1215
- End
- Begin VB.CommandButton bModify
- Caption = "Modify"
- Height = 375
- Left = 3240
- TabIndex = 2
- Top = 3360
- Width = 1215
- End
- Begin VB.CommandButton bOK
- Caption = "Close"
- Height = 375
- Left = 4680
- TabIndex = 1
- Top = 3360
- Width = 1215
- End
- Begin VB.ListBox XList
- Height = 1815
- ItemData = "XDVIEW.frx":0442
- Left = 360
- List = "XDVIEW.frx":0444
- TabIndex = 0
- Top = 720
- Width = 5535
- End
- Begin VB.Label lbIndex
- Caption = "Index"
- Height = 255
- Left = 4290
- TabIndex = 18
- Top = 465
- Visible = 0 'False
- Width = 495
- End
- Begin VB.Label lbLevel
- Caption = "Root"
- Height = 255
- Left = 1320
- TabIndex = 14
- Top = 480
- Width = 2295
- End
- Begin VB.Label Label2
- Caption = "Level:"
- Height = 255
- Left = 360
- TabIndex = 13
- Top = 480
- Width = 855
- End
- Begin VB.Label lbValue2
- Caption = "Y value"
- Height = 255
- Left = 3240
- TabIndex = 12
- Top = 2640
- Visible = 0 'False
- Width = 1095
- End
- Begin VB.Label lbUserDescription
- Height = 255
- Left = 360
- TabIndex = 9
- Top = 0
- Visible = 0 'False
- Width = 5535
- End
- Begin VB.Label Label1
- Caption = "Description:"
- Height = 255
- Left = 360
- TabIndex = 8
- Top = 240
- Width = 855
- End
- Begin VB.Label lbValue1
- Caption = "Value"
- Height = 255
- Left = 360
- TabIndex = 7
- Top = 2640
- Width = 1575
- End
- Begin VB.Label lbDescription
- Height = 255
- Left = 1320
- TabIndex = 5
- Top = 240
- Width = 4575
- End
- Attribute VB_Name = "frmXDView"
- Attribute VB_Creatable = False
- Attribute VB_Exposed = False
- Dim XDataTypeStr(30) As String
- Private Sub bPick_Click()
- 'pick point, vector, length, direction, angle and entity in JPCAD instead of entering values
- Dim NullString As String
- Dim Result As Long
- Dim Point As Object, SPoint As Object, EPoint As Object
- Dim Angle As Double, Entity As Long
- Set Point = CreateObject("ACC.Point")
- Set SPoint = CreateObject("ACC.Point")
- Set EPoint = CreateObject("ACC.Point")
- Select Case XList.ItemData(XList.ListIndex)
- Case A_X_POINT, A_X_POSITION
- If BaseFrm.Amoeba.GetPoint("Enter point", NullString, NullString, Point) = A_GET_OK Then
- tValueX.Text = Str(Point.x)
- tValueY.Text = Str(Point.y)
- End If
- Case A_X_VECTOR, A_X_DIRECTION, A_X_LENGTH
- If BaseFrm.Amoeba.GetPoint("Enter start point", NullString, NullString, SPoint) = A_GET_OK Then
- Result = BaseFrm.Amoeba.GetPointDrag("Enter end point", vbNullString, vbNullString, 0, 0, CVar(SPoint), EPoint)
- If Result = A_GET_OK Then
- Dim EP As Object, SP As Object, Vector As Object, V As Object
- Set EP = CreateObject("ACC.Point")
- Set SP = CreateObject("ACC.Point")
- Set Vector = CreateObject("ACC.Point")
- Set V = CreateObject("ACC.Point")
- SP = SPoint
- EP = EPoint
- V = BaseFrm.Amoeba.G_SubVV(EP, SP)
- Vector = V
- If XList.ItemData(XList.ListIndex) = A_X_LENGTH Then
- tvalue.Text = Str(BaseFrm.Amoeba.G_LenV(Vector))
- Else
- tValueX.Text = Str(Vector.x)
- tValueY.Text = Str(Vector.y)
- End If
- End If
- End If
- Case A_X_ENTITY
- If BaseFrm.Amoeba.GetEnt("Select entity", NullString, NullString, Entity, Point) = A_GET_OK Then
- tvalue.Text = Str(Entity)
- End If
- Case A_X_ANGLE
- Prompt "Picking angle"
- If BaseFrm.Amoeba.GetPoint("Enter base point", NullString, NullString, Point) = A_GET_OK Then
- If BaseFrm.Amoeba.GetAngle("Enter angle", "", NullString, A_A_EMTPY, Point, 0, Angle) = A_GET_OK Then
- tvalue.Text = Str(Angle)
- End If
- End If
- End Select
- Show 1
- End Sub
- Private Sub bDown_Click()
- 'decrease array index
- Dim i As Long
- i = CLng(tIndex.Text) - 1
- If i = -1 Then
- Exit Sub
- End If
- If BaseFrm.Amoeba.X_SetIndex(pXData, -1, i, False) = -1 Then
- MsgBox "Cannot decrease index", vbExclamation
- tIndex.Text = Str(i)
- End If
- End Sub
- Private Sub bUplevel_Click()
- 'goes up one level, i.e. in the array
- BaseFrm.Amoeba.X_SetIndex pXData, -1, -1, False
- LoadXListBox
- If lbLevel.Caption <> "Root" Then
- If Val(lbLevel.Caption) = 1 Then
- lbLevel.Caption = "Root"
- lbIndex.Visible = False
- bUplevel.Enabled = False
- tIndex.Visible = False
- bUp.Visible = False
- bDown.Visible = False
- Else
- lbLevel.Caption = Str(Val(lbLevel.Caption) - 1)
- tIndex.Text = "0"
- End If
- End If
- End Sub
- Private Sub bModify_Click()
- 'button modify
- ' caption "MODIFY" - modify value & change caption to "SAVE"
- ' caption "SAVE" - save value & change caption back to "MODIFY"
- Dim ErrLine As Long
- Dim VarValue As Variant
- ErrLine = 0
- On Error GoTo ErrorHandler
- If bModify.Caption = "Save" Then
- Dim d1 As Double, d2 As Double
- Select Case XList.ItemData(XList.ListIndex)
- Case A_X_POSITION, A_X_POINT, A_X_VECTOR, A_X_DIRECTION
- ErrLine = 1
- d1 = CDbl(tValueX.Text)
- ErrLine = 2
- d2 = CDbl(tValueY.Text)
- Dim obj As Object
- Set obj = CreateObject("ACC.POINT")
- obj.x = d1
- obj.y = d2
- If BaseFrm.Amoeba.X_SetData(pXData, XList.ListIndex, XList.ItemData(XList.ListIndex), CVar(obj)) = -1 Then
- MsgBox "X-Data were not saved!"
- Else
- 'MsgBox "Items were saved" + Chr(10) + "X : " + Str(d1) + ", Y: " + Str(d2) + Chr(10) + "Type :" + Str(XList.ItemData(XList.ListIndex)) + ", index " + Str(XList.ListIndex) + Chr(10) + "Data : " + Str(pXData)
- End If
- Case A_X_CHAR
- Dim CharValue As Byte
- CharValue = Asc(Left(tvalue.Text, 1))
- If BaseFrm.Amoeba.X_SetData(pXData, XList.ListIndex, XList.ItemData(XList.ListIndex), CharValue) = -1 Then
- MsgBox "X-Data were not saved!"
- Else
- ' MsgBox "Items were saved" + Chr(10) + "X : " + Str(d1) + ", Y: " + Str(d2) + Chr(10) + "Type :" + Str(XList.ItemData(XList.ListIndex)) + ", index " + Str(XList.ListIndex) + Chr(10) + "Data : " + Str(pXData)
- End If
- Case A_X_STRING
- Dim StrValue As String
- StrValue = tvalue.Text
- If BaseFrm.Amoeba.X_SetData(pXData, XList.ListIndex, XList.ItemData(XList.ListIndex), CVar(StrValue)) = -1 Then
- MsgBox "X-Data were not saved!"
- Else
- ' MsgBox "Items were saved" + Chr(10) + "Type :" + Str(XList.ItemData(XList.ListIndex)) + ", index " + Str(XList.ListIndex) + Chr(10) + "Data : " + Str(pXData)
- End If
- Case A_X_DOUBLE, A_X_ANGLE, A_X_LENGTH
- Dim DblValue As Double
- ErrLine = 3
- DblValue = CDbl(tvalue.Text)
- If BaseFrm.Amoeba.X_SetData(pXData, XList.ListIndex, XList.ItemData(XList.ListIndex), DblValue) = -1 Then
- MsgBox "X-Data were not saved!"
- Else
- ' MsgBox "Items were saved" + Chr(10) + "Type :" + Str(XList.ItemData(XList.ListIndex)) + ", index " + Str(XList.ListIndex) + Chr(10) + "Data : " + Str(pXData)
- End If
- Case A_X_SHORT
- Dim ShortValue As Integer
- ErrLine = 3
- ShortValue = CInt(tvalue.Text)
- If BaseFrm.Amoeba.X_SetData(pXData, XList.ListIndex, XList.ItemData(XList.ListIndex), ShortValue) = -1 Then
- MsgBox "X-Data were not saved!"
- Else
- ' MsgBox "Items were saved" + Chr(10) + "Type :" + Str(XList.ItemData(XList.ListIndex)) + ", index " + Str(XList.ListIndex) + Chr(10) + "Data : " + Str(pXData)
- End If
- Case Else
- ErrLine = 3
- Dim ElseValue As Long
- ElseValue = CLng(tvalue.Text)
- If BaseFrm.Amoeba.X_SetData(pXData, XList.ListIndex, XList.ItemData(XList.ListIndex), CVar(ElseValue)) = -1 Then
- MsgBox "X-Data were not saved!"
- Else
- ' MsgBox "Items were saved" + Chr(10) + "X : " + Str(d1) + ", Y: " + Str(d2) + Chr(10) + "Type :" + Str(XList.ItemData(XList.ListIndex)) + ", index " + Str(XList.ListIndex) + Chr(10) + "Data : " + Str(pXData)
- End If
-
- End Select
- bModify.Caption = "Modify"
- bModify.Default = False
- bOK.Caption = "Close"
- If lbLevel.Caption <> "Root" Then
- bUplevel.Enabled = True
- End If
- bPick.Enabled = False
- tValueX.Enabled = False
- tValueY.Enabled = False
- tvalue.Enabled = False
- XList.Enabled = True
- XList_Click
- Else
- If XList.ItemData(XList.ListIndex) = A_X_VCHUNK Or XList.ItemData(XList.ListIndex) = A_X_CCHUNK Then
- MsgBox "Sorry, cannot handle byte chunks", vbInformation
- Exit Sub
- End If
- bModify.Caption = "Save"
- bOK.Caption = "Cancel"
- Select Case XList.ItemData(XList.ListIndex)
- Case A_X_POSITION, A_X_POINT, A_X_ANGLE, A_X_LENGTH, A_X_ENTITY, A_X_VECTOR, A_X_DIRECTION
- bPick.Enabled = True
- Case Else
- bPick.Enabled = False
- End Select
- bUplevel.Enabled = False
- XList.Enabled = False
- Select Case XList.ItemData(XList.ListIndex)
- Case A_X_POSITION, A_X_POINT, A_X_VECTOR, A_X_DIRECTION
- tvalue.Enabled = False
- tvalue.Visible = False
- tValueX.Visible = True
- tValueY.Visible = True
- tValueX.Enabled = True
- tValueY.Enabled = True
- lbvalue1.Caption = "X value"
- lbvalue2.Visible = True
- tValueX.SetFocus
- tValueX.SelStart = 0
- tValueX.SelLength = Len(tValueX.Text)
- Case Else
- tvalue.Enabled = True
- tvalue.Visible = True
- tValueX.Visible = False
- tValueY.Visible = False
- tValueX.Enabled = False
- tValueY.Enabled = False
- lbvalue1.Caption = "Value"
- lbvalue2.Visible = False
- tvalue.SetFocus
- tvalue.SelStart = 0
- tvalue.SelLength = Len(tvalue.Text)
- End Select
- End If
- On Error GoTo 0
- On Error Resume Next
- Exit Sub
- ErrorHandler:
- MsgBox "Incorrect value ", 48
- Select Case ErrLine
- Case 1
- tValueX.SetFocus
- tValueX.SelStart = 0
- tValueX.SelLength = Len(tValueX.Text)
- Case 2
- tValueY.SetFocus
- tValueY.SelStart = 0
- tValueY.SelLength = Len(tValueY.Text)
- Case 3
- tvalue.SetFocus
- tvalue.SelStart = 0
- tValueY.SelLength = Len(tvalue.Text)
- Case Else
- End Select
- End Sub
- Private Sub bOK_Click()
- If bOK.Caption = "Cancel" Then
- bOK.Caption = "Close"
- bModify.Caption = "Modify"
- bModify.Default = False
- bPick.Enabled = False
- If lbLevel.Caption <> "Root" Then
- bUplevel.Enabled = True
- End If
- tvalue.Enabled = False
- tValueX.Enabled = False
- tValueY.Enabled = False
- XList.Enabled = True
- XList_Click
- Else
- If BaseFrm.Amoeba.X_PutData(pEntity, pXData) = -1 Then
- MsgBox "Could not write XData", vbExclamation
- End If
- If BaseFrm.Amoeba.X_FreeData(pXData) = -1 Then
- MsgBox "Error freeing XData", vbExclamation
- End If
- Unload frmXDView
- End If
- End Sub
- Private Sub bUp_Click()
- 'increases array index
- Dim i As Long, j As Long
- Dim xType As Long, xValue As Variant
- i = CLng(tIndex.Text) + 1
- j = BaseFrm.Amoeba.X_SetIndex(pXData, -1, i, False)
- If j = -1 Then
- MsgBox "Cannot increase index", vbExclamation
- If BaseFrm.Amoeba.X_GetData(pXData, 0, xType, xValue) = -1 Then
- Exit Sub
- Else
- tIndex.Text = Str(i)
- End If
- End If
- End Sub
- Private Sub Form_Load()
- XDataTypeStr(A_X_ARRAY) = "array"
- XDataTypeStr(A_X_STRING) = "variable length string"
- XDataTypeStr(A_X_CHAR) = "char"
- XDataTypeStr(A_X_SHORT) = "16-bit integer"
- XDataTypeStr(A_X_LONG) = "32-bit integer"
- XDataTypeStr(A_X_DOUBLE) = "double"
- XDataTypeStr(A_X_POINT) = "point/vector not transformated"
- XDataTypeStr(A_X_LENGTH) = "double length transformated"
- XDataTypeStr(A_X_ANGLE) = "double angle transformated (radians)"
- XDataTypeStr(A_X_MIRROR) = "32-bit integer mirror flag"
- XDataTypeStr(A_X_POSITION) = "point transformated"
- XDataTypeStr(A_X_VECTOR) = "vector transformated (not moved)"
- XDataTypeStr(A_X_DIRECTION) = "direction transformated (not moved or scaled)"
- XDataTypeStr(A_X_ENTITY) = "index of element"
- XDataTypeStr(A_X_VCHUNK) = "variable length chunk of bytes"
- XDataTypeStr(A_X_CCHUNK) = "fixed length chunk of bytes"
- End Sub
- Public Function XDataToStr(xType As Long, xValue As Variant) As String
- XDataToStr = ""
- Select Case xType
- Case A_X_ANGLE
- Case A_X_ARRAY
- Case A_X_CHAR
- Case A_X_DIRECTION
- Case A_X_DOUBLE
- Case A_X_ENTITY
- Case A_X_LENGTH
- Case A_X_LONG
- Case A_X_MIRROR
- Case A_X_POINT
- XDataToStr = Str(xValue(0)) + ";" + Str(xValue(1))
- Case A_X_POSITION
- XDataToStr = Str(xValue(0)) + ";" + Str(xValue(1))
- Case A_X_SHORT
- Case A_X_STRING
- XDataToStr = xValue
- Case A_X_VECTOR
- XDataToStr = Str(xValue(0)) + ";" + Str(xValue(1))
- End Select
- End Function
- Private Sub tIndex_Change()
- On Error GoTo ErrorHandler
- Dim i As Long, j As Long
- i = CLng(tIndex.Text)
- On Error GoTo 0
- On Error Resume Next
- LoadXListBox
- Exit Sub
- ErrorHandler:
- MsgBox "Input correct numeric value ", 48
- tIndex.Text = "0"
- End Sub
- Private Sub tIndex_KeyDown(KeyCode As Integer, Shift As Integer)
- If KeyCode = vbKeyReturn Then
- XList.SetFocus
- End If
- End Sub
- Private Sub tIndex_LostFocus()
- On Error GoTo ErrorHandler
- Dim i As Long, j As Long
- Dim xType As Long, xValue As Variant
- i = CLng(tIndex.Text)
- On Error GoTo 0
- On Error Resume Next
- j = BaseFrm.Amoeba.X_SetIndex(pXData, -1, i, False)
- If j = -1 Then
- MsgBox "Cannot increase index", vbExclamation
- Exit Sub
- If BaseFrm.Amoeba.X_GetData(pXData, 0, xType, xValue) = -1 Then
- MsgBox "Cannot get data with given index", vbExclamation
- BaseFrm.Amoeba.X_SetIndex pXData, -1, 0, False
- tIndex.Text = "0"
- Exit Sub
- End If
- End If
- LoadXListBox
- Exit Sub
- ErrorHandler:
- MsgBox "Input correct numeric value", 48
- End Sub
- Private Sub tvalue_GotFocus()
- tvalue.SelStart = 0
- tvalue.SelLength = Len(tvalue.Text)
- If tvalue.Enabled = True Then
- bModify.Default = True
- End If
- End Sub
- Private Sub tValueX_GotFocus()
- tValueX.SelStart = 0
- tValueX.SelLength = Len(tValueX.Text)
- End Sub
- Private Sub tValueX_KeyDown(KeyCode As Integer, Shift As Integer)
- If KeyCode = vbKeyReturn Then
- tValueY.SetFocus
- End If
- End Sub
- Private Sub tValueY_GotFocus()
- tValueY.SelStart = 0
- tValueY.SelLength = Len(tValueY.Text)
- If tValueY.Enabled = True Then
- bModify.Default = True
- End If
- End Sub
- Private Sub XList_Click()
- 'click on a listbox item
- 'this sub displays item's value depending on its type
- Dim XT As Long, Index As Long
- Dim XV As Variant
- Index = XList.ListIndex
- If XList.ItemData(Index) = A_X_ARRAY Then
- bModify.Enabled = False
- bModify.Enabled = True
- End If
- If BaseFrm.Amoeba.X_GetData(pXData, Index, XT, XV) = -1 Then
- MsgBox "X_GetData failed!"
- Exit Sub
- End If
- Select Case XT
- Case A_X_POSITION, A_X_POINT, A_X_VECTOR, A_X_DIRECTION
- ShowXYValues XT, XV
- Case Else
- ShowValue XT, XV
- End Select
- End Sub
- Public Function GetXDataTypeStr(xType As Long) As String
- Select Case xType
- Case A_X_ANGLE
- GetXDataTypeStr = "Angle"
- Case A_X_ARRAY
- GetXDataTypeStr = "Array"
- Case A_X_CHAR
- GetXDataTypeStr = "Char"
- Case A_X_DIRECTION
- GetXDataTypeStr = "Direction"
- Case A_X_DOUBLE
- GetXDataTypeStr = "Double"
- Case A_X_ENTITY
- GetXDataTypeStr = "Entity"
- Case A_X_LENGTH
- GetXDataTypeStr = "Length"
- Case A_X_LONG
- GetXDataTypeStr = "Long"
- Case A_X_MIRROR
- GetXDataTypeStr = "Mirror"
- Case A_X_POINT
- GetXDataTypeStr = "Point"
- Case A_X_POSITION
- GetXDataTypeStr = "Position"
- Case A_X_SHORT
- GetXDataTypeStr = "Short"
- Case A_X_STRING
- GetXDataTypeStr = "String"
- Case A_X_VECTOR
- GetXDataTypeStr = "Vector"
- Case Else
- GetXDataTypeStr = "Unknown type"
- End Select
- End Function
- Public Sub ShowXYValues(xType As Long, V As Variant)
- 'displays item consisting of two values
- Dim x As Double, y As Double
- x = V.x
- y = V.y
- tvalue.Enabled = False
- tvalue.Visible = False
- tValueX.Visible = True
- tValueY.Visible = True
- lbvalue1.Visible = True
- lbvalue1.Caption = "X value"
- lbvalue2.Visible = True
- tValueX.Text = Str(x)
- tValueY.Text = Str(y)
- Exit Sub
- End Sub
- Public Sub ShowValue(xType As Long, V As Variant)
- 'display item consisting of one value
- tValueX.Visible = False
- tValueY.Visible = False
- tvalue.Visible = True
- lbvalue2.Visible = False
- lbvalue1.Visible = True
- lbvalue1.Caption = "Value"
- Dim s As String
- s = ""
- Select Case xType
- Case A_X_ARRAY
- lbvalue1.Visible = False
- s = "Double click listbox item to see array contents"
- Case A_X_STRING
- s = V
- Case A_X_CHAR
- s = Chr(V)
- Case Else
- s = Str(V)
- End Select
- tvalue.Text = s
- End Sub
- Private Sub XList_DblClick()
- If XList.ItemData(XList.ListIndex) = A_X_ARRAY Then
- Dim i As Long
- i = BaseFrm.Amoeba.X_SetIndex(pXData, XList.ListIndex, 0, False)
- If i <> 0 Then
- MsgBox "SetIndex: " + Str(XList.ListIndex) + Chr(10) + "returned :" + Str(i)
- End If
- bUplevel.Caption = "Up level"
- bUplevel.Enabled = True
- lbIndex.Visible = True
- bUp.Visible = True
- bDown.Visible = True
- tIndex.Visible = True
- tIndex.Text = "0"
- If lbLevel.Caption <> "Root" Then
- lbLevel.Caption = Str(Val(lbLevel.Caption) + 1)
- Else
- lbLevel.Caption = "1"
- End If
- LoadXListBox
- End If
- End Sub
- Public Sub LoadXListBox()
- 'fill listbox with X-Data items
- Dim xType As Long, xValue As Variant
- Dim i As Long
- i = 0
- XList.Clear
- Do While True
- If BaseFrm.Amoeba.X_GetData(pXData, i, xType, xValue) = -1 Then
- Exit Do
- End If
- XList.AddItem XDataTypeStr(xType)
- XList.ItemData(XList.NewIndex) = xType
- i = i + 1
- Loop
- If i > 0 Then
- XList.ListIndex = 0
- End If
- End Sub
- Private Sub XList_KeyDown(KeyCode As Integer, Shift As Integer)
- If KeyCode = vbKeyReturn Then
- XList_DblClick
- If KeyCode = vbKeyBack Then
- bUplevel_Click
- End If
- End If
- End Sub
- Public Sub GetXDataHandle(pXD As Long, pE As Long)
- pXData = pXD
- pEntity = pE
- End Sub
-