コード例 #1
0
        public void ReadFromXml(string xmlString, out List <TechnicalDocument> documentList)
        {
            documentList = new List <TechnicalDocument>();
            XmlDocument xmlDocument = null;
            XmlNode     xmlNode     = null;

            try
            {
                xmlDocument = new XmlDocument();
                xmlDocument.LoadXml(xmlString);
            }
            catch (Exception)
            {
            }

            if (xmlDocument != null && xmlDocument.HasChildNodes)
            {
                xmlNode = xmlDocument.FirstChild;
                XmlNodeList nodeList = xmlNode.SelectNodes(TechnicalDocument.viewTag);

                // mettre 1 ligne vue de dessus et mur avec leur id , faut l 'ecrire dans xml  // Here todo
                int index = 0;

                foreach (XmlNode node in nodeList)
                {
                    TechnicalDocument docFromXml = new TechnicalDocument();
                    XmlNodeList       childs     = node.ChildNodes;

                    if (index == 0)
                    {
                        docFromXml.ViewMode = KD.SDK.SceneEnum.ViewMode.TOP;
                    }
                    else
                    {
                        docFromXml.ViewMode = KD.SDK.SceneEnum.ViewMode.VECTELEVATION;
                    }

                    foreach (XmlNode child in childs)
                    {
                        if (child.Name == TechnicalDocument.typeTag)
                        {
                            docFromXml.Type = child.InnerText;
                        }
                        if (child.Name == TechnicalDocument.typeIDTag)
                        {
                            docFromXml.TypeID = System.Convert.ToInt32(child.InnerText);
                        }
                        if (child.Name == TechnicalDocument.scaleFactorTag)
                        {
                            docFromXml.ScaleFactorAsString = child.InnerText;
                        }
                        if (child.Name == TechnicalDocument.scaleFactorValueTag)
                        {
                            docFromXml.ScaleFactorValue = System.Convert.ToDouble(child.InnerText);
                        }
                        if (child.Name == TechnicalDocument.formatTag)
                        {
                            docFromXml.PageMediaSizeName = new PageMediaSizeNameSubItem(child.InnerText).ToPageMediaSizeName();
                            GenerateViewDialogForm.generikPaperSizeText = child.InnerText;
                        }
                        if (child.Name == TechnicalDocument.formatIDTag)
                        {
                            docFromXml.PageMediaSizeNameID = System.Convert.ToInt32(child.InnerText);
                        }
                        if (child.Name == TechnicalDocument.orientationTag)
                        {
                            docFromXml.PageOrientation = new PageOrientationSubItem(child.InnerText).ToPageOrientation();
                        }
                        if (child.Name == TechnicalDocument.orientationIDTag)
                        {
                            docFromXml.PageOrientationID = System.Convert.ToInt32(child.InnerText);
                        }
                        if (child.Name == TechnicalDocument.objectIDTag)
                        {
                            docFromXml.ObjectID = System.Convert.ToInt32(child.InnerText);
                        }
                        if (child.Name == TechnicalDocument.numberTag)
                        {
                            docFromXml.Number = Plugin.pluginWord.CurrentAppli.Scene.ObjectGetInfo(docFromXml.ObjectID, KD.SDK.SceneEnum.ObjectInfo.NUMBER);  //child.InnerText;
                        }
                    }
                    documentList.Add(docFromXml);
                    index++;
                }
            }
        }
コード例 #2
0
 public bool OnFileNewBefore(int lCallParamsBlock)
 {
     this.ActiveMenu(true);
     this.technicalDocument = new TechnicalDocument();
     return(true);
 }