Example #1
0
        public static void SaveTo(string path)
        {
            path = System.IO.Path.GetFullPath(path);

            FullPath = path;

            System.Xml.XmlDocument doc = new System.Xml.XmlDocument();

            var element = Data.IO.SaveObjectToElement(doc, "Root", Core.Root, false);

            var behaviorElement = Data.IO.SaveObjectToElement(doc, "Behavior", EffectBehavior, false);
            var cullingElement  = Data.IO.SaveObjectToElement(doc, "Culling", Culling, false);
            var globalElement   = Data.IO.SaveObjectToElement(doc, "Global", Global, false);

            System.Xml.XmlElement project_root = doc.CreateElement("EffekseerProject");

            project_root.AppendChild(element);

            if (behaviorElement != null)
            {
                project_root.AppendChild(behaviorElement);
            }
            if (cullingElement != null)
            {
                project_root.AppendChild(cullingElement);
            }
            if (globalElement != null)
            {
                project_root.AppendChild(globalElement);
            }

            project_root.AppendChild(doc.CreateTextElement("ToolVersion", Core.Version));
            project_root.AppendChild(doc.CreateTextElement("Version", 3));
            project_root.AppendChild(doc.CreateTextElement("StartFrame", StartFrame));
            project_root.AppendChild(doc.CreateTextElement("EndFrame", EndFrame));
            project_root.AppendChild(doc.CreateTextElement("IsLoop", IsLoop.ToString()));

            doc.AppendChild(project_root);

            var dec = doc.CreateXmlDeclaration("1.0", "utf-8", null);

            doc.InsertBefore(dec, project_root);
            doc.Save(path);
            IsChanged = false;

            if (OnAfterSave != null)
            {
                OnAfterSave(null, null);
            }
        }
Example #2
0
        public static System.Xml.XmlDocument SaveAsXmlDocument(string basePath)
        {
            basePath = System.IO.Path.GetFullPath(basePath);

            FullPath = basePath;

            System.Xml.XmlDocument doc = new System.Xml.XmlDocument();

            var element = Data.IO.SaveObjectToElement(doc, "Root", Core.Root, false);

            var behaviorElement = Data.IO.SaveObjectToElement(doc, "Behavior", EffectBehavior, false);
            var cullingElement  = Data.IO.SaveObjectToElement(doc, "Culling", Culling, false);
            var globalElement   = Data.IO.SaveObjectToElement(doc, "Global", Global, false);
            var dynamicElement  = Data.IO.SaveObjectToElement(doc, "Dynamic", Dynamic, false);

            System.Xml.XmlElement project_root = doc.CreateElement("EffekseerProject");

            project_root.AppendChild(element);

            if (behaviorElement != null)
            {
                project_root.AppendChild(behaviorElement);
            }
            if (cullingElement != null)
            {
                project_root.AppendChild(cullingElement);
            }
            if (globalElement != null)
            {
                project_root.AppendChild(globalElement);
            }
            if (dynamicElement != null)
            {
                project_root.AppendChild(dynamicElement);
            }

            // recording option (this option is stored in local or global)
            if (recording.RecordingStorageTarget.Value == Data.RecordingStorageTargetTyoe.Local)
            {
                var recordingElement = Data.IO.SaveObjectToElement(doc, "Recording", Recording, false);
                if (recordingElement != null)
                {
                    project_root.AppendChild(recordingElement);
                }
            }

            project_root.AppendChild(doc.CreateTextElement("ToolVersion", Core.Version));
            project_root.AppendChild(doc.CreateTextElement("Version", 3));
            project_root.AppendChild(doc.CreateTextElement("StartFrame", StartFrame));
            project_root.AppendChild(doc.CreateTextElement("EndFrame", EndFrame));
            project_root.AppendChild(doc.CreateTextElement("IsLoop", IsLoop.ToString()));

            doc.AppendChild(project_root);

            var dec = doc.CreateXmlDeclaration("1.0", "utf-8", null);

            doc.InsertBefore(dec, project_root);

            IsChanged = false;

            if (OnAfterSave != null)
            {
                OnAfterSave(null, null);
            }

            return(doc);
        }