home *** CD-ROM | disk | FTP | other *** search
/ Internet Magazine 2002 December / INTERNET97.ISO / pc / software / windows / building / xmlspy / setup44.exe / Data1.cab / F1505_ClientWnd.frm (.txt) < prev    next >
Encoding:
Visual Basic Form  |  2001-07-19  |  19.0 KB  |  602 lines

  1. VERSION 5.00
  2. Begin VB.Form ClientWnd 
  3.    BorderStyle     =   3  'Fixed Dialog
  4.    Caption         =   "XMLSpy Client"
  5.    ClientHeight    =   3780
  6.    ClientLeft      =   210
  7.    ClientTop       =   780
  8.    ClientWidth     =   6015
  9.    LinkTopic       =   "Form1"
  10.    MaxButton       =   0   'False
  11.    MinButton       =   0   'False
  12.    ScaleHeight     =   3780
  13.    ScaleWidth      =   6015
  14.    Begin VB.PictureBox CtrlPic 
  15.       Appearance      =   0  'Flat
  16.       AutoSize        =   -1  'True
  17.       BackColor       =   &H80000005&
  18.       ForeColor       =   &H80000008&
  19.       Height          =   3780
  20.       Left            =   0
  21.       Picture         =   "ClientWnd.frx":0000
  22.       ScaleHeight     =   3750
  23.       ScaleWidth      =   6000
  24.       TabIndex        =   0
  25.       Top             =   0
  26.       Width           =   6030
  27.    End
  28.    Begin VB.Menu MApp 
  29.       Caption         =   "Application"
  30.       Begin VB.Menu MIStartSpy 
  31.          Caption         =   "Start XMLSpy"
  32.       End
  33.       Begin VB.Menu MISupport 
  34.          Caption         =   "Support..."
  35.          Visible         =   0   'False
  36.       End
  37.       Begin VB.Menu MIS100 
  38.          Caption         =   "-"
  39.       End
  40.       Begin VB.Menu MIShowApp 
  41.          Caption         =   "Show Application"
  42.       End
  43.       Begin VB.Menu MIS 
  44.          Caption         =   "-"
  45.       End
  46.       Begin VB.Menu MIWalkDocs 
  47.          Caption         =   "Show Documents ..."
  48.       End
  49.       Begin VB.Menu MIS12 
  50.          Caption         =   "-"
  51.       End
  52.       Begin VB.Menu MIQuit 
  53.          Caption         =   "Quit"
  54.       End
  55.    End
  56.    Begin VB.Menu MProject 
  57.       Caption         =   "Project"
  58.       Begin VB.Menu MINewProj 
  59.          Caption         =   "New Project"
  60.       End
  61.       Begin VB.Menu MIOpenProj 
  62.          Caption         =   "Open Project"
  63.       End
  64.       Begin VB.Menu MIS7 
  65.          Caption         =   "-"
  66.       End
  67.       Begin VB.Menu MISaveProj 
  68.          Caption         =   "Save Project"
  69.       End
  70.       Begin VB.Menu MIPrjSaveAs 
  71.          Caption         =   "Save Project As ..."
  72.       End
  73.       Begin VB.Menu MIS8 
  74.          Caption         =   "-"
  75.       End
  76.       Begin VB.Menu MICloseProj 
  77.          Caption         =   "Close Project"
  78.       End
  79.       Begin VB.Menu MIS9 
  80.          Caption         =   "-"
  81.       End
  82.       Begin VB.Menu MIWalkProjTree 
  83.          Caption         =   "Walk Project tree ..."
  84.       End
  85.    End
  86.    Begin VB.Menu MDoc 
  87.       Caption         =   "Document"
  88.       Begin VB.Menu MIOpenDoc 
  89.          Caption         =   "Open File ..."
  90.       End
  91.       Begin VB.Menu MIOpenURL 
  92.          Caption         =   "Open URL..."
  93.       End
  94.       Begin VB.Menu MIS101 
  95.          Caption         =   "-"
  96.       End
  97.       Begin VB.Menu MISave 
  98.          Caption         =   "Save"
  99.       End
  100.       Begin VB.Menu MIS3 
  101.          Caption         =   "-"
  102.       End
  103.       Begin VB.Menu MIDocClose 
  104.          Caption         =   "Close active document"
  105.       End
  106.       Begin VB.Menu MIS20 
  107.          Caption         =   "-"
  108.       End
  109.       Begin VB.Menu MISetEncoding 
  110.          Caption         =   "Set Encoding ..."
  111.       End
  112.       Begin VB.Menu MIS1 
  113.          Caption         =   "-"
  114.       End
  115.       Begin VB.Menu MIStepXML 
  116.          Caption         =   "Step through XML ..."
  117.       End
  118.       Begin VB.Menu MISaveStr 
  119.          Caption         =   "Save in string"
  120.       End
  121.       Begin VB.Menu MIS6 
  122.          Caption         =   "-"
  123.       End
  124.       Begin VB.Menu MIWellFormed 
  125.          Caption         =   "Well Formed?"
  126.       End
  127.       Begin VB.Menu MIValid 
  128.          Caption         =   "Valid?"
  129.       End
  130.       Begin VB.Menu MIS4 
  131.          Caption         =   "-"
  132.       End
  133.       Begin VB.Menu MIAssignDTD 
  134.          Caption         =   "Assign DTD..."
  135.       End
  136.       Begin VB.Menu MIAssignSchema 
  137.          Caption         =   "Assign Schema..."
  138.       End
  139.       Begin VB.Menu MIGenDTD 
  140.          Caption         =   "Generate DTD/Schema"
  141.       End
  142.       Begin VB.Menu MIS21 
  143.          Caption         =   "-"
  144.       End
  145.       Begin VB.Menu MIAssignXSL 
  146.          Caption         =   "Assign XSL"
  147.       End
  148.       Begin VB.Menu MITransXSL 
  149.          Caption         =   "Transform XSL"
  150.       End
  151.    End
  152.    Begin VB.Menu MView 
  153.       Caption         =   "View"
  154.       Begin VB.Menu MIGrid 
  155.          Caption         =   "Grid view"
  156.       End
  157.       Begin VB.Menu MISchema 
  158.          Caption         =   "Schema view"
  159.       End
  160.       Begin VB.Menu MIText 
  161.          Caption         =   "Text view"
  162.       End
  163.       Begin VB.Menu MIBrowser 
  164.          Caption         =   "Browser view"
  165.       End
  166.    End
  167.    Begin VB.Menu MConvert 
  168.       Caption         =   "Convert"
  169.       Begin VB.Menu MIImpDB 
  170.          Caption         =   "Import from database ..."
  171.       End
  172.       Begin VB.Menu MIImpText 
  173.          Caption         =   "Import from text..."
  174.       End
  175.       Begin VB.Menu MIImpWord 
  176.          Caption         =   "Import from MSWord ..."
  177.       End
  178.       Begin VB.Menu MIS14 
  179.          Caption         =   "-"
  180.       End
  181.       Begin VB.Menu MIExportTo 
  182.          Caption         =   "Export to ..."
  183.       End
  184.    End
  185. Attribute VB_Name = "ClientWnd"
  186. Attribute VB_GlobalNameSpace = False
  187. Attribute VB_Creatable = False
  188. Attribute VB_PredeclaredId = True
  189. Attribute VB_Exposed = False
  190. Private Sub Btn_SpyClose_Click()
  191.     On Error Resume Next
  192.     objSpy.CurrentProject.CloseProject False, True, False
  193.     CheckForError
  194. End Sub
  195. Public Sub ModifyChild(objChild As XMLData)
  196.     Dim dlgMod As ModXMLDataDlg
  197.     Set dlgMod = New ModXMLDataDlg
  198.     dlgMod.nKind = objChild.Kind
  199.     dlgMod.NameEdit = objChild.Name
  200.     dlgMod.ValueEdit = objChild.TextValue
  201.     dlgMod.bOK = False
  202.     dlgMod.Show vbModal
  203.     If dlgMod.bOK = True Then
  204.         objChild.Name = dlgMod.NameEdit
  205.         objChild.TextValue = dlgMod.ValueEdit
  206.     End If
  207. End Sub
  208. Public Sub WalkTree(objColl As SpyProjectItems)
  209.     Dim nRet As Integer
  210.     Dim objProjItem As SpyProjectItem
  211.     Dim objChild As XMLData
  212.     On Error Resume Next
  213.     For Each objProjItem In objColl
  214.         If objProjItem.ItemType = spyFileItem Then
  215.             Dim objTmpChild As Document
  216.             a = MsgBox("Name: " & objProjItem.Name & ", Typ: File")
  217.             objTmpChild = objProjItem.Open
  218.             CheckForError
  219.         End If
  220.         If objProjItem.ItemType = spyFolderItem Then
  221.             a = MsgBox("Name: " & objProjItem.Name & ", Typ: Folder, Extensions: " & objProjItem.FileExtensions & ", stepping into" & Chr(13) & "File einf
  222. gen?", vbYesNo)
  223.             If a = vbYes Then
  224.                 Dim objDlg
  225.                 Set objDlg = CreateObject("MSComDlg.CommonDialog")
  226.                 objDlg.DialogTitle = "Choose a file"
  227.                 objDlg.ShowOpen
  228.                 
  229.                 If Len(objDlg.FileName) > 0 Then
  230.                     objProjItem.ChildItems.AddFile (objDlg.FileName)
  231.                 End If
  232.                 Exit Sub
  233.             End If
  234.               
  235.             WalkTree objProjItem.ChildItems
  236.         End If
  237.         If objProjItem.ItemType = spyURLItem Then
  238.             a = MsgBox("Name: " & objProjItem.Name & ", Typ: URL")
  239.         End If
  240.     Next
  241. End Sub
  242. Private Sub Btn_SpySave_Click()
  243.     On Error Resume Next
  244.     objSpy.CurrentProject.SaveProject
  245.     CheckForError
  246. End Sub
  247. Private Sub objSpy_OnOpenDocument()
  248.     a = MsgBox("SpyCOMApp fired OnOpenDocument()")
  249. End Sub
  250. Private Sub Form_Initialize()
  251.     nCurrentView = spyViewGrid
  252. End Sub
  253. Private Sub MIAssignDTD_Click()
  254.     On Error GoTo ErrorHandler
  255.     Dim objDlg
  256.     Set objDlg = CreateObject("MSComDlg.CommonDialog")
  257.     objDlg.DialogTitle = "Choose DTD"
  258.     objDlg.ShowOpen
  259.     If Len(objDlg.FileName) > 0 Then
  260.         objSpy.ActiveDocument.AssignDTD objDlg.FileName, False
  261.         objSpy.ActiveDocument.UpdateViews
  262.     End If
  263.     Exit Sub
  264. ErrorHandler:
  265.     CheckForError
  266. End Sub
  267. Private Sub MIAssignSchema_Click()
  268.     On Error GoTo ErrorHandler
  269.     Dim objDlg
  270.     Set objDlg = CreateObject("MSComDlg.CommonDialog")
  271.     objDlg.DialogTitle = "Choose schema file"
  272.     objDlg.ShowOpen
  273.     If Len(objDlg.FileName) > 0 Then
  274.         objSpy.ActiveDocument.AssignSchema objDlg.FileName, False
  275.         objSpy.ActiveDocument.UpdateViews
  276.     End If
  277.     Exit Sub
  278. ErrorHandler:
  279.     CheckForError
  280. End Sub
  281. Private Sub MIAssignXSL_Click()
  282.     If Not (objSpy.ActiveDocument Is Nothing) Then
  283.         On Error GoTo ErrorHandler
  284.         Dim objDlg
  285.         Set objDlg = CreateObject("MSComDlg.CommonDialog")
  286.         objDlg.DialogTitle = "Choose XSL"
  287.         objDlg.ShowOpen
  288.         
  289.         If Len(objDlg.FileName) > 0 Then
  290.             objSpy.ActiveDocument.AssignXSL objDlg.FileName, False
  291.             objSpy.ActiveDocument.UpdateViews
  292.         End If
  293.     End If
  294.     Exit Sub
  295. ErrorHandler:
  296.         CheckForError
  297. End Sub
  298. Private Sub MIBrowser_Click()
  299.     If Not (objSpy Is Nothing) Then
  300.         If Not (objSpy.ActiveDocument Is Nothing) Then
  301.             objSpy.ActiveDocument.SwitchViewMode spyViewBrowser
  302.             MIGrid.Checked = False
  303.             MIText.Checked = False
  304.             MISchema.Checked = False
  305.             MIBrowser.Checked = True
  306.         End If
  307.     End If
  308. End Sub
  309. Private Sub MICloseProj_Click()
  310.     On Error Resume Next
  311.     objSpy.CurrentProject.CloseProject True, True, True
  312.     CheckForError
  313. End Sub
  314. Private Sub MIDocClose_Click()
  315.     If Not (objSpy.ActiveDocument Is Nothing) Then
  316.         objSpy.ActiveDocument.Close True
  317.         If Not (objSpy.ActiveDocument Is Nothing) Then
  318.             Me.Caption = "XMLSpy Client - " & objSpy.ActiveDocument.GetPathName
  319.         Else
  320.             Me.Caption = "XMLSpy Client"
  321.         End If
  322.     End If
  323. End Sub
  324. Private Sub MIExportTo_Click()
  325.     If Not (objSpy.ActiveDocument Is Nothing) Then
  326.         Dim objExport As ExportSettings
  327.         Set objExport = objSpy.GetExportSettings
  328.         Dim dlgExp As DlgExport
  329.         Set dlgExp = New DlgExport
  330.         Set dlgExp.objExpSettings = objExport
  331.         Set dlgExp.objDoc = objSpy.ActiveDocument
  332.         objExport.ExportAllElements = True
  333.         
  334.         dlgExp.Show vbModal
  335.         
  336.         Unload dlgExp
  337.     End If
  338. End Sub
  339. Private Sub MIGenDTD_Click()
  340.     On Error Resume Next
  341.     Dim dlgGen As DlgGenDTD
  342.     Set dlgGen = New DlgGenDTD
  343.     dlgGen.Show vbModal
  344.     If dlgGen.bOK And dlgGen.ComboType.ListIndex >= 0 And dlgGen.ComboDetec.ListIndex >= 0 Then
  345.         nType = dlgGen.ComboType.ItemData(dlgGen.ComboType.ListIndex)
  346.         nDetec = dlgGen.ComboDetec.ItemData(dlgGen.ComboDetec.ListIndex)
  347.         objSpy.ActiveDocument.GenerateDTDOrSchema nType, 0, nDetec, spyGlobalComplexType
  348.         CheckForError
  349.     End If
  350. End Sub
  351. Private Sub MIGrid_Click()
  352.     If Not (objSpy Is Nothing) Then
  353.         If Not (objSpy.ActiveDocument Is Nothing) Then
  354.             objSpy.ActiveDocument.SwitchViewMode spyViewGrid
  355.             MIGrid.Checked = True
  356.             MIText.Checked = False
  357.             MISchema.Checked = False
  358.             MIBrowser.Checked = False
  359.         End If
  360.     End If
  361. End Sub
  362. Private Sub MIImpDB_Click()
  363.     Dim dlgImp As DlgImportDB
  364.     Set dlgImp = New DlgImportDB
  365.     dlgImp.Show vbModal
  366.     If dlgImp.bOK = True Then
  367.         Dim objImpSettings As DatabaseConnection
  368.         Set objImpSettings = objSpy.GetDatabaseSettings
  369.         
  370.         If dlgImp.OptADO = True Then
  371.             objImpSettings.ADOConnection = dlgImp.TxtADO.Text
  372.         End If
  373.         
  374.         If dlgImp.OptODBC = True Then
  375.             objImpSettings.ODBCConnection = dlgImp.TxtODBC.Text
  376.         End If
  377.         
  378.         If dlgImp.OptAccessFile = True Then
  379.             objImpSettings.File = dlgImp.TxtFile.Text
  380.         End If
  381.         
  382.         objImpSettings.ExcludeKeys = dlgImp.CheckKeys.Value
  383.         objImpSettings.IncludeEmptyElements = dlgImp.CheckEmpty.Value
  384.         
  385.         objImpSettings.SQLSelect = dlgImp.TxtSelect.Text
  386.         
  387.         MousePointer = vbHourglass
  388.         Refresh
  389.         Dim objImpDoc As Document
  390.         On Error Resume Next
  391.         Set objImpDoc = objSpy.ImportFromDatabase(objImpSettings, objSpy.GetDatabaseImportElementList(objImpSettings))
  392.         CheckForError
  393.     End If
  394. End Sub
  395. Private Sub MIImpText_Click()
  396.     Dim objDlg
  397.     Set objDlg = CreateObject("MSComDlg.CommonDialog")
  398.     objDlg.DialogTitle = "Select a text file to import"
  399.     objDlg.ShowOpen
  400.     If Len(objDlg.FileName) > 0 Then
  401.         Dim objImpSettings As TextImportExportSettings
  402.         Set objImpSettings = objSpy.GetTextImportExportSettings
  403.         objImpSettings.ImportFile = objDlg.FileName
  404.         objImpSettings.HeaderRow = False
  405.         Dim objImpDoc As Document
  406.         On Error Resume Next
  407.         Set objImpDoc = objSpy.ImportFromText(objImpSettings, objSpy.GetTextImportElementList(objImpSettings))
  408.         CheckForError
  409.     End If
  410. End Sub
  411. Private Sub MIImpWord_Click()
  412.     Dim objDlg
  413.     Set objDlg = CreateObject("MSComDlg.CommonDialog")
  414.     objDlg.DialogTitle = "Select a MSWord file"
  415.     objDlg.ShowOpen
  416.     If Len(objDlg.FileName) > 0 Then
  417.         Dim objImpDoc As Document
  418.         On Error Resume Next
  419.         Set objImpDoc = objSpy.ImportFromWord(objDlg.FileName)
  420.         CheckForError
  421.         Set objImpDoc = Nothing
  422.     End If
  423. End Sub
  424. Private Sub MINewProj_Click()
  425.     On Error Resume Next
  426.     objSpy.NewProject "", True
  427.     CheckForError
  428. End Sub
  429. Private Sub MIOpenDoc_Click()
  430.     On Error Resume Next
  431.     Dim objDlg
  432.     Set objDlg = CreateObject("MSComDlg.CommonDialog")
  433.     objDlg.DialogTitle = "Select a file"
  434.     objDlg.ShowOpen
  435.     If Len(objDlg.FileName) > 0 Then
  436.         Dim objDoc As Document
  437.         Set objDoc = objSpy.Documents.OpenFile(objDlg.FileName, False)
  438.         CheckForError
  439.         Set objGrid = objDoc.GridView
  440.     End If
  441.     Me.Caption = "XMLSpy Client - " & objSpy.ActiveDocument.GetPathName
  442. End Sub
  443. Private Sub MIOpenProj_Click()
  444.     Dim objDlg
  445.     Set objDlg = CreateObject("MSComDlg.CommonDialog")
  446.     'objDlg.DefaultExt = "*.spp"
  447.     'objDlg.Filter = "*.spp"
  448.     'objDlg.FilterIndex = 0
  449.     objDlg.ShowOpen
  450.     If Len(objDlg.FileName) > 0 Then
  451.         On Error Resume Next
  452.         objSpy.OpenProject objDlg.FileName, True, False
  453.         CheckForError
  454.     End If
  455. End Sub
  456. Private Sub MIOpenURL_Click()
  457.     If Not (objSpy Is Nothing) Then
  458.         Dim objDoc As Document
  459.         Set objDoc = objSpy.Documents.OpenURLDialog("", spyURLTypeXML, spyReload, "", "")
  460.         Set objDoc = Nothing
  461.     End If
  462. End Sub
  463. Private Sub MIPrjSaveAs_Click()
  464.     If Not (objSpy.CurrentProject Is Nothing) Then
  465.         objSpy.CurrentProject.SaveProjectAs "", True
  466.     End If
  467. End Sub
  468. Private Sub MIQuit_Click()
  469.     If Not (objSpy Is Nothing) Then
  470.         objSpy.Quit
  471.         Set objSpy = Nothing
  472.         Unload Me
  473.     End If
  474. End Sub
  475. Private Sub MISave_Click()
  476.     On Error Resume Next
  477.     objSpy.ActiveDocument.Save
  478.     If Err.Number <> 0 Then
  479.         a = MsgBox("Error: " & (Err.Number - vbObjectError) & Chr(13) & "Description: " & Err.Description)
  480.     End If
  481. End Sub
  482. Private Sub MISaveProj_Click()
  483.     On Error Resume Next
  484.     objSpy.CurrentProject.SaveProject
  485.     CheckForError
  486. End Sub
  487. Private Sub MISaveStr_Click()
  488.     Dim strOut As String
  489.     On Error GoTo ErrorHandler
  490.     strOut = objSpy.ActiveDocument.SaveInString(objSpy.ActiveDocument.RootElement, False)
  491.     nRet = MsgBox(strOut, , "XMLSpy Client")
  492.     Exit Sub
  493. ErrorHandler:
  494.     a = MsgBox("Error: " & (Err.Number - vbObjectError) & Chr(13) & "Description: " & Err.Description)
  495. End Sub
  496. Private Sub MISchema_Click()
  497.     If Not (objSpy Is Nothing) Then
  498.         If Not (objSpy.ActiveDocument Is Nothing) Then
  499.             objSpy.ActiveDocument.SwitchViewMode spyViewSchema
  500.             MIGrid.Checked = False
  501.             MIText.Checked = False
  502.             MISchema.Checked = True
  503.             MIBrowser.Checked = False
  504.         End If
  505.     End If
  506. End Sub
  507. Private Sub MISetEncoding_Click()
  508.     On Error Resume Next
  509.     Dim dlgStr As DlgInputStr
  510.     Set dlgStr = New DlgInputStr
  511.     dlgStr.Caption = "XMLSpy"
  512.     dlgStr.TxtLabel.Caption = "Name of encoding:"
  513.     dlgStr.Show (vbModal)
  514.     If dlgStr.bOK Then
  515.         objSpy.ActiveDocument.SetEncoding (dlgStr.EditString)
  516.         CheckForError
  517.     End If
  518.     Unload dlgStr
  519. End Sub
  520. Private Sub MIShowApp_Click()
  521.     If Not (objSpy Is Nothing) Then
  522.         objSpy.ShowApplication True
  523.     End If
  524. End Sub
  525. Private Sub MIStartSpy_Click()
  526.     Set objSpy = CreateObject("XMLSpy.Application")
  527. End Sub
  528. Private Sub MIStepXML_Click()
  529.     Dim dlgWalk As WalkXMLDlg
  530.     Set dlgWalk = New WalkXMLDlg
  531.     Set dlgWalk.objWalkDoc = objSpy.ActiveDocument
  532.     dlgWalk.Show vbModal
  533. End Sub
  534. Private Sub MIText_Click()
  535.     If Not (objSpy Is Nothing) Then
  536.         If Not (objSpy.ActiveDocument Is Nothing) Then
  537.             objSpy.ActiveDocument.SwitchViewMode spyViewText
  538.             MIGrid.Checked = False
  539.             MIText.Checked = True
  540.             MISchema.Checked = False
  541.             MIBrowser.Checked = False
  542.         End If
  543.     End If
  544. End Sub
  545. Private Sub MITransXSL_Click()
  546.     If Not (objSpy Is Nothing) Then
  547.         If Not (objSpy.ActiveDocument Is Nothing) Then
  548.             On Error Resume Next
  549.             objSpy.ActiveDocument.TransformXSL
  550.             CheckForError
  551.         End If
  552.     End If
  553. End Sub
  554. Private Sub MIValid_Click()
  555.     Dim bValid As Boolean
  556.     Dim strMsg As Variant
  557.     Dim nPos As Variant
  558.     Dim objBadXMLData As Variant
  559.     objSpy.ActiveDocument.UpdateViews
  560.     On Error Resume Next
  561.     bValid = objSpy.ActiveDocument.IsValid(strMsg, nPos, objBadXMLData)
  562.     CheckForError
  563.     If bValid = False Then
  564.         a = MsgBox("The document is not valid:" & Chr(13) & strMsg & Chr(13) & "position: " & nPos & Chr(13) & "XMLData value: " & objBadXMLData.TextValue, , "XMLSpy Client")
  565.     Else
  566.         a = MsgBox("The document is valid" & Chr(13) & strMsg, , "XMLSpy Client")
  567.     End If
  568.     Set objBadXMLData = Nothing
  569. End Sub
  570. Private Sub MIWalkDocs_Click()
  571.     Dim dlgDocs As DlgWalkDocs
  572.     Set dlgDocs = New DlgWalkDocs
  573.     dlgDocs.Show vbModal
  574.     Unload dlgDocs
  575. End Sub
  576. Private Sub MIWalkProjTree_Click()
  577.     If Not (objSpy.CurrentProject Is Nothing) Then
  578.         Dim DlgPrj As DlgWalkPrj
  579.         Set DlgPrj = New DlgWalkPrj
  580.         Set DlgPrj.objPrj = objSpy.CurrentProject
  581.         DlgPrj.Show vbModal
  582.         Set DlgPrj.objPrj = Nothing
  583.     End If
  584.     'On Error Resume Next
  585.     'WalkTree objSpy.CurrentProject.RootItems
  586. End Sub
  587. Private Sub MIWellFormed_Click()
  588.     Dim bWell As Boolean
  589.     Dim strMsg As Variant
  590.     Dim nPos As Variant
  591.     Dim objBadXMLData As Variant
  592.     objSpy.ActiveDocument.UpdateViews
  593.     On Error Resume Next
  594.     bWell = objSpy.ActiveDocument.IsWellFormed(objSpy.ActiveDocument.RootElement, True, strMsg, nPos, objBadXMLData)
  595.     CheckForError
  596.     If bWell = False Then
  597.         a = MsgBox("The document is not well formed:" & Chr(13) & strMsg & Chr(13) & "position: " & nPos, , "XMLSpy Client")
  598.     Else
  599.         a = MsgBox("The document is well formed" & Chr(13) & strMsg, , "XMLSpy Client")
  600.     End If
  601. End Sub
  602.