/// <summary>
        /// Helper method to save Preferences.
        /// Returns true if saved successfully.
        /// </summary>
        private bool SavePreferences()
        {
            TabSwitcher tabSwitcher = new TabSwitcher(sideBarControl);

            for (int i = 0; i < preferencesPanelList.Count; i++)
            {
                PreferencesPanel preferencesPanel = (PreferencesPanel)preferencesPanelList[i];
                tabSwitcher.Tab = i;
                if (!preferencesPanel.PrepareSave(new PreferencesPanel.SwitchToPanel(tabSwitcher.Switch)))
                {
                    return(false);
                }
            }

            //	Save every PreferencesPanel.
            for (int i = 0; i < preferencesPanelList.Count; i++)
            {
                PreferencesPanel preferencesPanel = (PreferencesPanel)preferencesPanelList[i];
                if (preferencesPanel != null)
                {
                    preferencesPanel.Save();
                }
            }

            //	Disable the Apply button.
            buttonApply.Enabled = false;

            //notify listeners that the preferences where saved.
            OnPreferencesSaved(EventArgs.Empty);

            return(true);
        }