public static General ReadGeneralSettings() { string generalJsonFile = Path.Combine(Directory.GetCurrentDirectory(), GENERAL_FILE_NAME); var generalSettings = new General(); if (!File.Exists(generalJsonFile)) { generalSettings = GetDefaultGeneralSettings(); WriteGeneralSettings(generalSettings); } else { try { using (StreamReader file = File.OpenText(generalJsonFile)) using (JsonTextReader reader = new JsonTextReader(file)) { while (reader.Read()) { JObject o3 = (JObject) JToken.ReadFrom(reader); foreach (var child in o3.Children()) { AddPropertyToGeneralSettings(generalSettings, child.Path, child.First.ToString()); } } } } catch (Exception ex) { MessageBox.Show($"{Constants.GeneralMessages.ErrorWritingFile}{ex}", Constants.GeneralMessages.ErrorWritingFileCaption, MessageBoxButtons.OK, MessageBoxIcon.Error); throw; } } return generalSettings; }
public static void WriteGeneralSettings(General general) { string generalJsonFile = Path.Combine(Directory.GetCurrentDirectory(), GENERAL_FILE_NAME); try { using (StreamWriter file = File.CreateText(generalJsonFile)) using (JsonTextWriter writer = new JsonTextWriter(file)) { var jsonGeneralSettings = JsonConvert.SerializeObject(general); writer.WriteRaw(jsonGeneralSettings); } } catch (Exception ex) { MessageBox.Show($"{Constants.GeneralMessages.ErrorWritingFile}{ex}", Constants.GeneralMessages.ErrorWritingFileCaption, MessageBoxButtons.OK, MessageBoxIcon.Error); throw; } }
public static void PopulateIconProperties(General generalSettings, ComboBox fontComboBox, ComboBox colorComboBox, ComboBox textColorComboBox) { PopulateFontComboBox(generalSettings.IconFont, fontComboBox); ColorUtils.PopulateColorComboBox("Blue", colorComboBox); ColorUtils.PopulateColorComboBox("White", textColorComboBox); }
private static General AddPropertyToGeneralSettings(General general, string propertyName, string propertyValue) { switch (propertyName) { case FileConstants.General.ICON_FONT: general.IconFont = propertyValue; break; case FileConstants.General.ICON_FONT_SIZE: general.IconFontSize = propertyValue.ToFloat(); break; case FileConstants.General.ICON_SHAPE: general.IconShape = propertyValue; break; case FileConstants.General.SHOW_BALLOON_TIPS: general.ShowBalloonTips = Convert.ToBoolean(propertyValue); break; case FileConstants.General.LOADED_GLOBAL_HOTKEY: general.LoadedGlobalHotkey = GlobalHotkeyParser.ConvertToLoadedGlobalHotkey(propertyValue); break; } return general; }