private ITcSmTreeItem createItf(ItfInfo itfInfo, ITcSmTreeItem parent, IWorker worker, XmlDocument doc)
        {
            XmlNode itfNode = doc.SelectSingleNode("TcPlcObject/Itf");
            string  itfName = itfNode.Attributes["Name"].Value;

            worker.ProgressStatus = string.Format("Creating Interface '{0}' ...", itfName);

            ITcSmTreeItem item = null;
            XmlElement    node = (XmlElement)doc.SelectSingleNode("TcPlcObject/Itf/Declaration");

            string declString = node.InnerText;

            if (!TryLookupChild(parent, itfName, out item))
            {
                item = parent.CreateChild(itfName, TreeItemType.PlcInterface.AsInt32(), "", declString);
            }

            //Debug.Fail("");
            ITcXmlDocument xmlDoc = (ITcXmlDocument)item;

            xmlDoc.DocumentXml = doc.OuterXml;
            ITcPlcDeclaration decl = (ITcPlcDeclaration)item;

            //decl.DeclarationText = node.InnerText;
            return(item);
        }
        private ITcSmTreeItem createDut(DataTypeInfo info, ITcSmTreeItem parent, IWorker worker, XmlDocument doc)
        {
            XmlNode dutNode  = doc.SelectSingleNode("TcPlcObject/DUT");
            string  typeName = dutNode.Attributes["Name"].Value;

            worker.ProgressStatus = string.Format("Creating Type '{0}' ...", typeName);

            XmlNode declNode    = dutNode.SelectSingleNode("Declaration");
            string  declaration = string.Empty;

            declaration = declNode.InnerText;

            ITcSmTreeItem dataTypeItem = parent.CreateChild(typeName, TreeItemType.PlcDutStruct.AsInt32(), "", declaration);

            ITcPlcDeclaration decl  = (ITcPlcDeclaration)dataTypeItem;
            ITcXmlDocument    tcDoc = (ITcXmlDocument)dataTypeItem;

            string xml = tcDoc.DocumentXml;

            return(dataTypeItem);
        }
        private ITcSmTreeItem createGvl(GvlInfo gvlInfo, ITcSmTreeItem parent, IWorker worker, XmlDocument doc)
        {
            XmlNode gvlNode = doc.SelectSingleNode("TcPlcObject/GVL");
            string  gvlName = gvlNode.Attributes["Name"].Value;

            worker.ProgressStatus = string.Format("Creating GlobalVariable Sheet '{0}' ...", gvlName);

            ITcSmTreeItem item = null;

            if (!TryLookupChild(parent, gvlName, out item))
            {
                item = parent.CreateChild(gvlName, TreeItemType.PlcGvl.AsInt32());
            }

            ITcXmlDocument    xmlDoc = (ITcXmlDocument)item;
            ITcPlcDeclaration decl   = (ITcPlcDeclaration)item;

            XmlElement node = (XmlElement)doc.SelectSingleNode("TcPlcObject/GVL/Declaration");

            decl.DeclarationText = node.InnerText;
            return(item);
        }