GetLingoValues Subroutine

The process of getting the user interface strings from lingo.xml begins when a globalized XML template file is passed from the Translate function to the GetLingoValues subroutine as an IXMLDOMNode object. This object represents a single node in the document tree and extends the core XML DOM interface with support for datatypes, schemas, namespaces, and Document Type Definitions (DTDs). The subroutine takes the collection of nodes with LID attributes passed in by the Translate function.

The code loops through the collection, finds each element with attributes and makes a call to GetNodeValue for the insertion of a value into the element. The call to the GetNodeValues subroutine inserts the value that matches the element's LID from lingo.xml into the element.

Private Sub GetLingoValues(ByRef colls As IXMLDOMNodeList)
   Dim item As IXMLDOMNode
   
   For Each item In colls
      If (item.nodeTypeString = "element") Then
           If item.Attributes.length > 0 Then
              'get attributes from lingo file and appends with
              'XML template file
              Call GetNodeValue(item)
           End If
      End If
   Next
End Sub