diff --git a/Vocaluxe/Base/CConfig.cs b/Vocaluxe/Base/CConfig.cs index ecd3d5c1..9199d70f 100644 --- a/Vocaluxe/Base/CConfig.cs +++ b/Vocaluxe/Base/CConfig.cs @@ -121,19 +121,9 @@ namespace Vocaluxe.Base public static bool LoadConfig() { - #region Inits - CXMLReader xmlReader; - - try - { - xmlReader = new CXMLReader(CSettings.sFileConfig); - } - catch (Exception e) - { - CLog.LogError("Error opening Config.xml " + CSettings.sFileConfig + ": " + e.Message); + CXMLReader xmlReader = CXMLReader.OpenFile(CSettings.sFileConfig); + if (xmlReader == null) return false; - } - #endregion Inits string value = string.Empty; diff --git a/Vocaluxe/Base/CFont.cs b/Vocaluxe/Base/CFont.cs index dbdc14f9..b1c96f2b 100644 --- a/Vocaluxe/Base/CFont.cs +++ b/Vocaluxe/Base/CFont.cs @@ -673,17 +673,10 @@ namespace Vocaluxe.Base /// private static bool LoadFontList() { - CXMLReader xmlReader; - - try - { - xmlReader = new CXMLReader(System.IO.Path.Combine(CSettings.sFolderFonts, CSettings.sFileFonts)); - } - catch (Exception e) - { - CLog.LogError("Error loading default fonts: " + e.Message); + CXMLReader xmlReader = CXMLReader.OpenFile(System.IO.Path.Combine(CSettings.sFolderFonts, CSettings.sFileFonts)); + if (xmlReader == null) return false; - } + _Fonts.Clear(); string value = string.Empty; diff --git a/Vocaluxe/Base/CLanguage.cs b/Vocaluxe/Base/CLanguage.cs index 1c9b13ad..c81900b1 100644 --- a/Vocaluxe/Base/CLanguage.cs +++ b/Vocaluxe/Base/CLanguage.cs @@ -239,17 +239,9 @@ namespace Vocaluxe.Base private static bool LoadPartyLanguageFile(int PartyModeID, string file) { - CXMLReader xmlReader; - - try - { - xmlReader = new CXMLReader(file); - } - catch (Exception e) - { - CLog.LogError("Error opening Party Language File " + file + ": " + e.Message); + CXMLReader xmlReader = CXMLReader.OpenFile(file); + if (xmlReader == null) return false; - } string value = string.Empty; if (xmlReader.GetValue("//resources/string[@name='language']", ref value, value)) @@ -295,17 +287,9 @@ namespace Vocaluxe.Base SLanguage lang = new SLanguage(); lang.LanguageFilePath = Path.Combine(CSettings.sFolderLanguages, FileName); - CXMLReader xmlReader; - - try - { - xmlReader = new CXMLReader(lang.LanguageFilePath); - } - catch (Exception e) - { - CLog.LogError("Error opening Language File " + FileName + ": " + e.Message); + CXMLReader xmlReader = CXMLReader.OpenFile(lang.LanguageFilePath); + if (xmlReader == null) return; - } string value = string.Empty; if (xmlReader.GetValue("//resources/string[@name='language']", ref value, value)) diff --git a/Vocaluxe/Base/CParty.cs b/Vocaluxe/Base/CParty.cs index 3ade852f..3774dad8 100644 --- a/Vocaluxe/Base/CParty.cs +++ b/Vocaluxe/Base/CParty.cs @@ -220,18 +220,11 @@ namespace Vocaluxe.Base pm.ScreenFiles = new List(); pm.NoErrors = false; - CXMLReader xmlReader; - - try - { - xmlReader = new CXMLReader(file); - } - catch (Exception e) - { - CLog.LogError("Error opening party mode file " + file + ": " + e.Message); + CXMLReader xmlReader = CXMLReader.OpenFile(file); + //Error... + if (xmlReader == null) return pm; - } bool loaded = true; diff --git a/Vocaluxe/Base/CProfiles.cs b/Vocaluxe/Base/CProfiles.cs index 686f5c4a..df23a380 100644 --- a/Vocaluxe/Base/CProfiles.cs +++ b/Vocaluxe/Base/CProfiles.cs @@ -360,17 +360,9 @@ namespace Vocaluxe.Base SProfile profile = new SProfile(); profile.ProfileFile = Path.Combine(CSettings.sFolderProfiles, FileName); - CXMLReader xmlReader; - - try - { - xmlReader = new CXMLReader(profile.ProfileFile); - } - catch (Exception e) - { - CLog.LogError("Error opening Profile File " + FileName + ": " + e.Message); + CXMLReader xmlReader = CXMLReader.OpenFile(profile.ProfileFile); + if (xmlReader == null) return; - } string value = String.Empty; if (xmlReader.GetValue("//root/Info/PlayerName", ref value, value)) diff --git a/Vocaluxe/Base/CTheme.cs b/Vocaluxe/Base/CTheme.cs index cbd80aab..a84e2874 100644 --- a/Vocaluxe/Base/CTheme.cs +++ b/Vocaluxe/Base/CTheme.cs @@ -147,17 +147,9 @@ namespace Vocaluxe.Base public static bool LoadSkin(int SkinIndex) { - CXMLReader xmlReader; - - try - { - xmlReader = new CXMLReader(Path.Combine(_Skins[SkinIndex].Path, _Skins[SkinIndex].FileName)); - } - catch (Exception e) - { - CLog.LogError("Error loading skin " + _Skins[SkinIndex].FileName + ": " + e.Message); + CXMLReader xmlReader = CXMLReader.OpenFile(Path.Combine(_Skins[SkinIndex].Path, _Skins[SkinIndex].FileName)); + if (xmlReader == null) return false; - } string value = String.Empty; @@ -264,17 +256,9 @@ namespace Vocaluxe.Base return false; } - CXMLReader xmlReader; - - try - { - xmlReader = new CXMLReader(Path.Combine(_Themes[ThemeIndex].Path, _Themes[ThemeIndex].FileName)); - } - catch (Exception e) - { - CLog.LogError("Error loading theme " + _Themes[ThemeIndex].FileName + ": " + e.Message); + CXMLReader xmlReader = CXMLReader.OpenFile(Path.Combine(_Themes[ThemeIndex].Path, _Themes[ThemeIndex].FileName)); + if (xmlReader == null) return false; - } int skinIndex = GetSkinIndex(_Themes[ThemeIndex].PartyModeID); @@ -419,17 +403,9 @@ namespace Vocaluxe.Base public static bool AddTheme(string FilePath, int PartyModeID) { - CXMLReader xmlReader; - - try - { - xmlReader = new CXMLReader(FilePath); - } - catch (Exception e) - { - CLog.LogError("Error loading theme " + FilePath + ": " + e.Message); + CXMLReader xmlReader = CXMLReader.OpenFile(FilePath); + if (xmlReader == null) return false; - } Theme theme = new Theme(); @@ -494,17 +470,9 @@ namespace Vocaluxe.Base foreach (string file in files) { - CXMLReader xmlReader; - - try - { - xmlReader = new CXMLReader(Path.Combine(path, file)); - } - catch (Exception e) - { - CLog.LogError("Error loading skin " + file + ": " + e.Message); + CXMLReader xmlReader = CXMLReader.OpenFile(Path.Combine(path, file)); + if (xmlReader == null) continue; - } Skin skin = new Skin(); diff --git a/Vocaluxe/Lib/Playlist/CPlaylistFile.cs b/Vocaluxe/Lib/Playlist/CPlaylistFile.cs index 38cca523..f0942bcc 100644 --- a/Vocaluxe/Lib/Playlist/CPlaylistFile.cs +++ b/Vocaluxe/Lib/Playlist/CPlaylistFile.cs @@ -120,17 +120,9 @@ namespace Vocaluxe.Lib.Playlist private void LoadPlaylist() { - CXMLReader xmlReader; - - try - { - xmlReader = new CXMLReader(PlaylistFile); - } - catch (Exception e) - { - CLog.LogError("Error opening Playlist File " + PlaylistFile + ": " + e.Message); + CXMLReader xmlReader = CXMLReader.OpenFile(PlaylistFile); + if (xmlReader == null) return; - } string value = String.Empty; if (xmlReader.GetValue("//root/Info/PlaylistName", ref value, value)) diff --git a/VocaluxeLib/Menu/CMenu.cs b/VocaluxeLib/Menu/CMenu.cs index 977674c5..4f82474a 100644 --- a/VocaluxeLib/Menu/CMenu.cs +++ b/VocaluxeLib/Menu/CMenu.cs @@ -172,27 +172,16 @@ namespace Vocaluxe.Menu { string file = Path.Combine(XmlPath, _ThemeName + ".xml"); - CXMLReader xmlReader = null; - - try - { - xmlReader = new CXMLReader(file); - } - catch (Exception e) - { - if (xmlReader != null) - xmlReader = null; - - CBase.Log.LogError("Error loading theme file " + file + ": " + e.Message); - } + CXMLReader xmlReader = CXMLReader.OpenFile(file); + if (xmlReader == null) + return; bool VersionCheck = false; - if (xmlReader != null) - VersionCheck = CheckVersion(_ScreenVersion, xmlReader); + VersionCheck = CheckVersion(_ScreenVersion, xmlReader); int SkinIndex = CBase.Theme.GetSkinIndex(_PartyModeID); - if (xmlReader != null && VersionCheck && SkinIndex != -1) + if (VersionCheck && SkinIndex != -1) { _ThemePath = XmlPath; LoadThemeBasics(xmlReader, SkinIndex); diff --git a/VocaluxeLib/Menu/CXMLReader.cs b/VocaluxeLib/Menu/CXMLReader.cs index a176df21..2bf58133 100644 --- a/VocaluxeLib/Menu/CXMLReader.cs +++ b/VocaluxeLib/Menu/CXMLReader.cs @@ -9,7 +9,8 @@ namespace Vocaluxe.Menu { private XPathNavigator _Navigator; - public CXMLReader(string uri) + //Private method. Use OpenFile factory method to get an instance + private CXMLReader(string uri) { XPathDocument xPathDoc = new XPathDocument(uri); _Navigator = xPathDoc.CreateNavigator(); @@ -26,9 +27,9 @@ namespace Vocaluxe.Menu { return new CXMLReader(sUri); } - catch (Exception) + catch (Exception e) { - CBase.Log.LogError("Can't open XML file: " + sUri); + CBase.Log.LogError("Can't open XML file: " + sUri + ": " + e.Message); return null; } }