Exemplo n.º 1
0
        /// <summary>
        /// Load a settings object from the file specified
        /// </summary>
        /// <param name="file"></param>
        /// <returns>The loaded settings object, or an empty one if the file can't be found</returns>
        public static Settings LoadSettings(string file)
        {
            Settings settings = new Settings();

            if (File.Exists(file))
            {
                using (StreamReader reader = new StreamReader(file))
                {
                    string line;

                    while ((line = reader.ReadLine()) != null)
                    {
                        if (line.Trim().Length > 0)
                        {
                            try
                            {
                                settings = Newtonsoft.Json.JsonConvert.DeserializeObject<Settings>(line);

                            }
                            catch (JsonReaderException)
                            {

                                throw;
                            }
                        }
                    }
                }

                settings.SettingsFile = file;
            }

            return settings;
        }
Exemplo n.º 2
0
        private void save_settings(string file)
        {
            if (File.Exists(file))
            {
                File.Delete(file);
            }

            var settings = new Settings();
            var setting1 = new Setting("One", "First setting", "Test", SettingType.text, "Attitude Adjuster");
            var setting2 = new Setting("Two", "Second setting", "Test", SettingType.integer, 22);
            var setting3 = new Setting("Three", "Third setting", "Test", SettingType.collection, new List<string>());
            setting3.ValueAsCollection.Add("Setting String A");
            setting3.ValueAsCollection.Add("Setting String B");

            settings.AddSetting(setting1);
            settings.AddSetting(setting2);
            settings.AddSetting(setting3);

            Setting.AllowSerialize = true;

            settings.SaveSettings(file);
        }
Exemplo n.º 3
0
        public void create_settings()
        {
            string file = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData, Environment.SpecialFolderOption.DoNotVerify), "Rummage_Settings.prf");

            if (File.Exists(file))
            {
                File.Delete(file);
            }

            var settings = new Settings();
            var setting1 = new Setting("SubFolders", "Search Sub Folders (recursively)", "System", SettingType.boolean, true);
            var setting2 = new Setting("Binaries", "Search Binary files", "System", SettingType.boolean, false);
            var setting3 = new Setting("CaseSensitive", "Make the search case-sensitive", "System", SettingType.boolean, false);
            var setting4 = new Setting("FolderExclusions", "Names of Folders to ignore when searching", "System", SettingType.collection, new List<string>());
            setting4.ValueAsCollection.Add(".svn");
            setting4.ValueAsCollection.Add("bin");
            setting4.ValueAsCollection.Add("obj");
            var setting5 = new Setting("Editor", "Editor to open files with", "System", SettingType.text, "Notepad.exe");
            var setting6 = new Setting("EditorArgs", "Arguments to pass to the selected editor", "System", SettingType.text, "");
            settings.AddSetting(setting1);
            settings.AddSetting(setting2);
            settings.AddSetting(setting3);
            settings.AddSetting(setting4);
            settings.AddSetting(setting5);
            settings.AddSetting(setting6);

            Setting.AllowSerialize = true;

            settings.SaveSettings(file);

            Assert.AreEqual(6, settings.settings.Count);
        }
Exemplo n.º 4
0
        public void Retrieve_setting_by_name_where_name_doesnt_exist_returns_null()
        {
            Settings settings = new Settings();

            settings.AddSetting(new Setting("Alpha", "Alpha setting", "Cat1", SettingType.integer, 111));
            settings.AddSetting(new Setting("Beta", "Beta setting", "Cat1", SettingType.integer, 222));

            var retrievedSetting = settings.GetSettingByName("Delta");

            Assert.AreEqual(null, retrievedSetting);
        }
Exemplo n.º 5
0
        public void Can_retrieve_setting_by_name()
        {
            Settings settings = new Settings();

            settings.AddSetting(new Setting("Alpha", "Alpha setting", "Cat1", SettingType.integer, 111));
            settings.AddSetting(new Setting("Beta", "Beta setting", "Cat1", SettingType.integer, 222));

            var retrievedSetting = settings.GetSettingByName("Beta").Value;
            Assert.AreEqual(222, retrievedSetting);
        }
Exemplo n.º 6
0
        private void EditSettings_Click(object sender, RoutedEventArgs e)
        {
            var settingsScreen = new SettingScreen(settings);

            settingsScreen.WindowStyle = System.Windows.WindowStyle.ToolWindow;
            settingsScreen.WindowStartupLocation = System.Windows.WindowStartupLocation.CenterOwner;
            settingsScreen.ShowDialog();
            settings = settingsScreen.settings;
        }
Exemplo n.º 7
0
 /// <summary>
 /// Read startup parameters from the ini file
 /// </summary>
 private void readIniFile()
 {
     Setting.AllowSerialize = true;
     string settingsPath = Path.Combine(Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData, Environment.SpecialFolderOption.DoNotVerify), SETTINGS_FILE);
     if (!File.Exists(settingsPath))
     {
         File.Copy(Path.Combine(Environment.CurrentDirectory, DEFAULT_SETTINGS_FILE), settingsPath);
     }
     settings = Settings.LoadSettings(settingsPath);
 }
Exemplo n.º 8
0
 public SettingScreen(Settings settings)
 {
     this.settings = settings;
     InitializeComponent();
     loadScreen();
 }
Exemplo n.º 9
0
 /// <summary>
 /// Reloads the settings from scratch, effectively throwing away any changes the user has made
 /// </summary>
 private void restoreSettingsToUnmodifiedVersion()
 {
     this.settings = Settings.LoadSettings(this.settings.SettingsFile);
     this.DialogResult = false;
 }