Exemple #1
0
        /// <summary>
        /// To initialize an PDDLTabItem instance from a .pddlx file (in xml format)
        /// </summary>
        /// <param name="text">the text string of the source .pddlx file</param>
        public override void SetText(string text)
        {
            //generate an SNModel instance from the .uml source code
            PDDLModel pddlModel = PDDLModel.LoadPDDLModelFromXML(text);

            if (pddlModel.Domain != null)
            {
                DomainNode.Tag = pddlModel.Domain;
            }
            else
            {
                DomainNode.Tag = null;
            }


            ProblemsNode.Nodes.Clear();

            foreach (var problem in pddlModel.Problems)
            {
                TreeNode node = ProblemsNode.Nodes.Add(problem.Key);
                node.Tag  = problem.Value;
                node.Name = problem.Key;
                node.Text = problem.Key;
            }
            textEditorControl.Visible = true;
            InitTextEditor();
        }
Exemple #2
0
        //Generate XML from the current PDDLTabItem
        private XmlDocument GetDoc()
        {
            PDDLFile domain = null;

            if (DomainNode.Tag != null)
            {
                domain = DomainNode.Tag as PDDLFile;
            }

            Dictionary <string, PDDLFile> problems = new Dictionary <string, PDDLFile>();

            foreach (TreeNode node in ProblemsNode.Nodes)
            {
                problems.Add(node.Name, node.Tag as PDDLFile);
            }

            PDDLModel pddlModel = new PDDLModel("PDDLModel", problems, domain);

            return(pddlModel.GenerateXML());
        }