Serialize Themes
This commit is contained in:
1 parent
092f8df8f5
commit
acaf4eadb2
13 files changed
+207
-263
No files matched your search
@@ -34,7 +34,7 @@ namespace VocaluxeLib.Menu
|
||||
}
|
||||
|
||||
[XmlType("Screen")]
|
||||
public struct STheme
|
||||
public struct SThemeScreen
|
||||
{
|
||||
public SScreenInformation Informations;
|
||||
[XmlArray("Backgrounds")] public List<SThemeBackground> Backgrounds;
|
||||
@@ -65,7 +65,7 @@ namespace VocaluxeLib.Menu
|
||||
protected abstract int _ScreenVersion { get; }
|
||||
public int PartyModeID { get; protected set; }
|
||||
public string ThemeName { get; set; }
|
||||
public STheme Theme;
|
||||
public SThemeScreen Theme;
|
||||
|
||||
// ReSharper disable MemberCanBePrivate.Global
|
||||
protected string[] _ThemeBackgrounds;
|
||||
@@ -171,8 +171,8 @@ namespace VocaluxeLib.Menu
|
||||
try
|
||||
{
|
||||
TextReader textReader = new StreamReader(file);
|
||||
XmlSerializer deserializer = new XmlSerializer(typeof(STheme));
|
||||
Theme = (STheme)deserializer.Deserialize(textReader);
|
||||
XmlSerializer deserializer = new XmlSerializer(typeof(SThemeScreen));
|
||||
Theme = (SThemeScreen)deserializer.Deserialize(textReader);
|
||||
|
||||
foreach (SThemeBackground bg in Theme.Backgrounds)
|
||||
_AddBackground(new CBackground(bg, PartyModeID), bg.Name);
|
||||
@@ -334,7 +334,7 @@ namespace VocaluxeLib.Menu
|
||||
{
|
||||
TextWriter textWriter = new StreamWriter(Path.Combine(ThemePath, ThemeName + ".xml"));
|
||||
|
||||
XmlSerializer serializer = new XmlSerializer(typeof(STheme));
|
||||
XmlSerializer serializer = new XmlSerializer(typeof(SThemeScreen));
|
||||
serializer.Serialize(textWriter, Theme);
|
||||
|
||||
textWriter.Close();
|
||||
|
||||
+1
-12
@@ -72,21 +72,10 @@ namespace VocaluxeLib
|
||||
[XmlElement("CoverGenerator", IsNullable = false)] public List<SThemeCoverGenerator> CoverGenerators;
|
||||
}
|
||||
|
||||
public struct SInfo
|
||||
{
|
||||
public string Name;
|
||||
public string Author;
|
||||
public int VersionMajor;
|
||||
public int VersionMinor;
|
||||
}
|
||||
|
||||
#region Drawing
|
||||
public struct SColorF
|
||||
{
|
||||
public float R;
|
||||
public float G;
|
||||
public float B;
|
||||
public float A;
|
||||
[XmlNormalized] public float R, G, B, A;
|
||||
|
||||
public SColorF(float r, float g, float b, float a)
|
||||
{
|
||||
|
||||
@@ -100,16 +100,6 @@ namespace VocaluxeLib.Xml
|
||||
return ok;
|
||||
}
|
||||
|
||||
public bool Read(string xPath, out SInfo el)
|
||||
{
|
||||
el = new SInfo();
|
||||
bool ok = GetValue(xPath + "/Name", out el.Name);
|
||||
ok &= GetValue(xPath + "/Author", out el.Author);
|
||||
ok &= TryGetIntValue(xPath + "/VersionMajor", ref el.VersionMajor);
|
||||
ok &= TryGetIntValue(xPath + "/VersionMinor", ref el.VersionMinor);
|
||||
return ok;
|
||||
}
|
||||
|
||||
public bool Read(string xPath, out SColorF value)
|
||||
{
|
||||
value = new SColorF();
|
||||
|
||||
Reference in new issue
Block a user