Authentic View supports event connection on a per-object basis. Implementation of this feature is based on COM connection points and is available in environments that support this mechanism.
The following example is a VBScript code example that shows how to use events from within a VBScript project.
' --------------------------------------------------------------------------
' VBScript example that demonstrates how to use events.
' --------------------------------------------------------------------------
' Event handler for OnSelectionChanged event of AuthenticView
Function AuthenticViewEvent_OnSelectionChanged(objAuthenticRange)
If objAuthenticRange.FirstTextPosition <> objAuthenticRange.LastTextPosition Then
Call WScript.Echo("Selection: " & objAuthenticRange.Text & vbNewLine & vbNewLine & "Close this dialog.")
Else
Call WScript.Echo("Cursor position: " & objAuthenticRange.FirstTextPosition & vbNewLine & vbNewLine & "Close this dialog.")
End If
End Function
' Start/access XMLSpy and connect to its automation interface.
Set WshShell = WScript.CreateObject("WScript.Shell")
Set objSpy = GetObject("", "XMLSpy.Application")
' Make the UI of XMLSpy visible.
objSpy.Visible = True
' Find out user's personal folder and locate one of the installed XMLSpy examples.
personalFolder = WshShell.ExpandEnvironmentStrings("%UserProfile%")
majorVersionYear = objSpy.MajorVersion + 1998
xmlspyExamplesFolder = personalFolder & "\Documents\Altova\XMLSpy" & majorVersionYear & "\Examples\"
docPath = xmlspyExamplesFolder & "ExpReport.xml"
' Create object to access windows file system and test if the our document exists.
Set fso = CreateObject("Scripting.FileSystemObject")
If fso.FileExists(docPath) Then
' open the document
Call objSpy.Documents.OpenFile(docPath, False)
set objDoc = objSpy.ActiveDocument
' switch active document to authentic view
objDoc.SwitchViewMode 4 ' spyViewAuthentic
' Register for connection point events on the authentic view of the active document.
' Any function with a valid event name prefixed with "AuthenticViewEvent_" will
' be called when the corresponding event gets triggered on the specified object.
set objView = objDoc.AuthenticView
Call WScript.ConnectObject(objView, "AuthenticViewEvent_")
Call WScript.Echo("Events are connected." & vbNewLine & vbNewLine & "Now set or move the cursor in XMLSpy." & vbNewLine & vbNewLine & "Close this dialog to shut down XMLSpy.")
' To disconnect from the events delete the reference to the object.
set objView = Nothing
Else
Call WScript.Echo("The file " & docPath & " does not exist.")
End If
' shut down XMLSpy when this script ends
objSpy.Visible = False
|