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); } }
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); }