Engine:
- Corrected SaveDataTypes.Currency being named incorrectly. Changed to Currencies - ProjectInformation now inherits from the new IFileIO interface. - ProjectInformation.Load can be used instead of the FileManager now (note: Saving of ProjectInformation must still be done using FileManager) - Organizing of BaseObject done - BaseObject now supports BaseObject.Load. Use this instead of FileManager.Load - Fixed UIRealmControl error, attempting to deserialize into a null Zone Field - Program.cs is now encapsulated into a try/catch - IFileIO interface added for providing a blueprint on file I/O operations Designer: - Additional ObjectTypes added to the ObjectTypes enum - Additional commenting provided throughout the source. - Re-organized the source code. - Simplified the Constructor code. Roughly 50% less code now. - Re-wrote the Object Load code to make it easier to read and maintain. - Renamed several menu items to conform to the projects naming conventions
This commit is contained in:
parent
9311435007
commit
afd74530cd
47 changed files with 4530 additions and 0 deletions
42
Mud Designer/MudEngine/FileSystem/XmlSerialization.cs
Normal file
42
Mud Designer/MudEngine/FileSystem/XmlSerialization.cs
Normal file
|
|
@ -0,0 +1,42 @@
|
|||
#region ====== Using Statements ======
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel;
|
||||
using System.Reflection;
|
||||
using System.Xml;
|
||||
using System.Xml.Serialization;
|
||||
using System.IO;
|
||||
#endregion
|
||||
|
||||
namespace MudDesigner.MudEngine.FileSystem
|
||||
{
|
||||
internal class XmlSerialization
|
||||
{
|
||||
internal static void Save(string Filename, object o)
|
||||
{
|
||||
Stream stream = File.Create(Filename);
|
||||
|
||||
XmlSerializer serializer = new XmlSerializer(o.GetType());
|
||||
serializer.Serialize(stream, o);
|
||||
stream.Close();
|
||||
}
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// Loads an item via Xml Deserialization
|
||||
/// </summary>
|
||||
/// <param name="Filename">The Xml document to deserialize.</param>
|
||||
/// <returns></returns>
|
||||
internal static object Load(string Filename, object o)
|
||||
{
|
||||
Stream stream = File.OpenRead(Filename);
|
||||
|
||||
object obj = new object();
|
||||
XmlSerializer serializer = new XmlSerializer(o.GetType());
|
||||
obj = (object)serializer.Deserialize(stream);
|
||||
|
||||
stream.Close();
|
||||
return obj;
|
||||
}
|
||||
}
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue