/// <summary> /// Translate the skin string, create the skin string if not found. /// </summary> /// <param name="line"></param> /// <param name="kind"></param> /// <returns></returns> public static int TranslateSkinString(string line, Kind kind) { Dictionary<int, SkinString>.Enumerator enumer = _skinStringSettings.GetEnumerator(); while (enumer.MoveNext()) { SkinString skin = enumer.Current.Value; if (skin.Name == line) { return enumer.Current.Key; } } SkinString newString = new SkinString(); newString.Name = line; newString.Value = line; newString.Kind = kind; // Create the setting as a property if not already present. if (!GUIPropertyManager.PropertyIsDefined(newString.Name)) { GUIPropertyManager.SetProperty(newString.Name, newString.Value); } else { newString.Value = GUIPropertyManager.GetProperty(newString.Name); } int key = _skinStringSettings.Count; _skinStringSettings[key] = newString; return key; }
private static void LoadStringSettings() { using (Settings xmlReader = new SKSettings()) { IDictionary <string, string> allStringSettings = xmlReader.GetSection <string>("stringsettings"); if (allStringSettings == null) { return; } lock (_skinStringSettings) { var enumerator = allStringSettings.GetEnumerator(); if (enumerator != null) { while (enumerator.MoveNext()) { // Create the new string setting. SkinString newString = new SkinString(); newString.Name = enumerator.Current.Key; newString.Value = enumerator.Current.Value; newString.Kind = Kind.PERSISTENT; // Add the setting to the dictionary. int key = _skinStringSettings.Count; _skinStringSettings[key] = newString; // Create the setting as a property. GUIPropertyManager.SetProperty(newString.Name, newString.Value); } } } } }
/// <summary> /// Retrieve a skin string using the specified key. /// </summary> /// <param name="key"></param> /// <returns></returns> public static string GetSkinString(int key) { SkinString skin = null; if (_skinStringSettings.TryGetValue(key, out skin)) { return(skin.Value); } return(""); }
/// <summary> /// Set all the skin strings to empty. Does not save to disk; call Save() afterward. /// </summary> public static void ResetAllSkinString() { Dictionary <int, SkinString> .Enumerator enumer = _skinStringSettings.GetEnumerator(); while (enumer.MoveNext()) { SkinString skin = enumer.Current.Value; skin.Value = ""; // Save the setting as a property if specified as such. GUIPropertyManager.SetProperty(skin.Name, skin.Value); } }
/// <summary> /// Set a skin string using the specified key. Saves changes to disk immediatley. /// </summary> /// <param name="key"></param> /// <param name="newValue"></param> public static void SetSkinString(int key, string newValue) { SkinString skin = null; if (_skinStringSettings.TryGetValue(key, out skin)) { skin.Value = newValue; _skinStringSettings[key] = skin; // Save the setting as a property. GUIPropertyManager.SetProperty(skin.Name, skin.Value); // Save change to disk immediately. Save(); } }
public static int TranslateSkinString(string line) { Dictionary<int, SkinString>.Enumerator enumer = _skinStringSettings.GetEnumerator(); while (enumer.MoveNext()) { SkinString skin = enumer.Current.Value; if (skin.Name == line) { return enumer.Current.Key; } } SkinString newString = new SkinString(); newString.Name = line; newString.Value = line; int key = _skinStringSettings.Count; _skinStringSettings[key] = newString; return key; }
/// <summary> /// Translate the skin string, create the skin string if not found. /// </summary> /// <param name="line"></param> /// <param name="kind"></param> /// <returns></returns> public static int TranslateSkinString(string line, Kind kind) { lock (_skinStringSettings) { foreach (int iKey in _skinStringSettings.Keys.ToList()) { SkinString skin = _skinStringSettings[iKey]; if (skin.Name == line) { if (skin.Kind == Kind.TRANSIENT && kind == Kind.PERSISTENT) { skin.Kind = kind; _skinStringSettings[iKey] = skin; } return(iKey); } } } SkinString newString = new SkinString(); newString.Name = line; newString.Value = line; newString.Kind = kind; // Create the setting as a property if not already present. if (!GUIPropertyManager.PropertyIsDefined(newString.Name)) { GUIPropertyManager.SetProperty(newString.Name, newString.Value); } else { newString.Value = GUIPropertyManager.GetProperty(newString.Name); } int key; lock (_skinStringSettings) //Lock the dictionary, it might be getting saved at the moment { key = _skinStringSettings.Count; _skinStringSettings[key] = newString; } return(key); }
public static int TranslateSkinString(string line) { Dictionary <int, SkinString> .Enumerator enumer = _skinStringSettings.GetEnumerator(); while (enumer.MoveNext()) { SkinString skin = enumer.Current.Value; if (skin.Name == line) { return(enumer.Current.Key); } } SkinString newString = new SkinString(); newString.Name = line; newString.Value = line; int key = _skinStringSettings.Count; _skinStringSettings[key] = newString; return(key); }
/// <summary> /// Translate the skin string, create the skin string if not found. /// </summary> /// <param name="line"></param> /// <param name="kind"></param> /// <returns></returns> public static int TranslateSkinString(string line, Kind kind) { Dictionary <int, SkinString> .Enumerator enumer = _skinStringSettings.GetEnumerator(); while (enumer.MoveNext()) { SkinString skin = enumer.Current.Value; if (skin.Name == line) { return(enumer.Current.Key); } } SkinString newString = new SkinString(); newString.Name = line; newString.Value = line; newString.Kind = kind; // Create the setting as a property if not already present. if (!GUIPropertyManager.PropertyIsDefined(newString.Name)) { GUIPropertyManager.SetProperty(newString.Name, newString.Value); } else { newString.Value = GUIPropertyManager.GetProperty(newString.Name); } int key; lock (_skinStringSettings) //Lock the dictionary, it might be getting saved at the moment { key = _skinStringSettings.Count; _skinStringSettings[key] = newString; } return(key); }
private static void LoadStringSettings() { using (Settings xmlReader = new SKSettings()) { IDictionary<string, string> allStringSettings = xmlReader.GetSection<string>("stringsettings"); if (allStringSettings == null) { return; } lock (_skinStringSettings) { var enumerator = allStringSettings.GetEnumerator(); if (enumerator != null) { while (enumerator.MoveNext()) { // Create the new string setting. SkinString newString = new SkinString(); newString.Name = enumerator.Current.Key; newString.Value = enumerator.Current.Value; newString.Kind = Kind.PERSISTENT; // Add the setting to the dictionary. int key = _skinStringSettings.Count; _skinStringSettings[key] = newString; // Create the setting as a property. GUIPropertyManager.SetProperty(newString.Name, newString.Value); } } } } }