Ignore:
Timestamp:
11/14/2008 8:20:48 AM (4 years ago)
Author:
lowjoel
Message:

Part one to fixing #32: replace the Dictionary object with the Settings object for plugin settings; The old Settings class is now the SettingsManager? class.
Also, since we are now using a generic Object, I've implemented a few helper class (XXSettings) classes to allow for the concrete setting + type to be retrieved.

File:
1 edited

Legend:

Unmodified
Added
Removed
  • branches/eraser6/Eraser/SettingsPanel.cs

    r510 r561  
    126126        private void LoadSettings() 
    127127        { 
     128            EraserSettings settings = new EraserSettings(); 
    128129            foreach (Object lang in uiLanguage.Items) 
    129                 if (((Language)lang).Name == ManagerLibrary.Instance.Settings.UILanguage) 
     130                if (((Language)lang).Name == settings.Language) 
    130131                { 
    131132                    uiLanguage.SelectedItem = lang; 
     
    338339            } 
    339340 
    340             if (((Language)uiLanguage.SelectedItem).Name != 
    341                 ManagerLibrary.Instance.Settings.UILanguage) 
    342             { 
    343                 ManagerLibrary.Instance.Settings.UILanguage = 
    344                     ((Language)uiLanguage.SelectedItem).Name; 
     341            EraserSettings settings = new EraserSettings(); 
     342            if (((Language)uiLanguage.SelectedItem).Name != settings.Language) 
     343            { 
     344                settings.Language = ((Language)uiLanguage.SelectedItem).Name; 
    345345                MessageBox.Show(S._("The new UI language will take only effect when Eraser is restarted."), 
    346346                    S._("Eraser"), MessageBoxButtons.OK, MessageBoxIcon.Information); 
     
    375375        } 
    376376    } 
     377 
     378    internal class EraserSettings 
     379    { 
     380        public EraserSettings() 
     381        { 
     382            settings = Manager.ManagerLibrary.Instance.SettingsManager.ModuleSettings; 
     383        } 
     384 
     385        /// <summary> 
     386        /// Gets or sets a value containing the language the UI should be displayed in. 
     387        /// </summary> 
     388        public string Language 
     389        { 
     390            get 
     391            { 
     392                return (string)settings["Language"]; 
     393            } 
     394            set 
     395            { 
     396                settings["Language"] = value; 
     397            } 
     398        } 
     399 
     400        /// <summary> 
     401        /// Gets or sets a value on whether the main frame should be minimised to the 
     402        /// system notification area. 
     403        /// </summary> 
     404        public bool HideWhenMinimised 
     405        { 
     406            get 
     407            { 
     408                return (bool)settings["HideWhenMinimised"]; 
     409            } 
     410            set 
     411            { 
     412                settings["HideWhenMinimised"] = value; 
     413            } 
     414        } 
     415 
     416        private Manager.Settings settings; 
     417    } 
    377418} 
    378419 
Note: See TracChangeset for help on using the changeset viewer.