summaryrefslogtreecommitdiff
path: root/vcl
diff options
context:
space:
mode:
authorChris Sherlock <chris.sherlock79@gmail.com>2014-01-22 18:45:19 +1100
committerNorbert Thiebaud <nthiebaud@gmail.com>2014-01-22 14:19:55 +0000
commit4959f369d9bdcc2ab50cd4a70ad96a4a4fa17c76 (patch)
treeeac2987b3598fc898af73aa033a1cf0181aa776c /vcl
parent930202b0b239636532bda471cc51d4750e09536f (diff)
Improve settings code reability
Application::SetSettings relies on Application::GetSettings to initialize the application's settings if this hasn't happened. This means that GetSettings is being used not to get the app's settings, but to initialize the settings! I have corrected this by introducing a private static function InitSettings(). Note that I assert if it attempts to initialize already initialized settings, because the (Get|Set)Settings does the check for you. Also changed a local variable from nGet to nDragMode in Desktop::SystemSettingsChanging to make it easier to read the code. Whilst this is minor, a variable name of "nGet" seems very sloppy. Change-Id: I04975217c2028b3489179997db4287957578cc93 Reviewed-on: https://gerrit.libreoffice.org/7586 Reviewed-by: Norbert Thiebaud <nthiebaud@gmail.com> Tested-by: Norbert Thiebaud <nthiebaud@gmail.com>
Diffstat (limited to 'vcl')
-rw-r--r--vcl/source/app/svapp.cxx17
1 files changed, 13 insertions, 4 deletions
diff --git a/vcl/source/app/svapp.cxx b/vcl/source/app/svapp.cxx
index a754856c9608..ac13c7360f4d 100644
--- a/vcl/source/app/svapp.cxx
+++ b/vcl/source/app/svapp.cxx
@@ -519,7 +519,7 @@ void Application::SetSettings( const AllSettings& rSettings )
ImplSVData* pSVData = ImplGetSVData();
if ( !pSVData->maAppData.mpSettings )
{
- GetSettings();
+ InitSettings();
*pSVData->maAppData.mpSettings = rSettings;
ResMgr::SetDefaultLocale( rSettings.GetUILanguageTag() );
}
@@ -618,14 +618,23 @@ const AllSettings& Application::GetSettings()
ImplSVData* pSVData = ImplGetSVData();
if ( !pSVData->maAppData.mpSettings )
{
- pSVData->maAppData.mpCfgListener = new LocaleConfigurationListener;
- pSVData->maAppData.mpSettings = new AllSettings();
- pSVData->maAppData.mpSettings->GetSysLocale().GetOptions().AddListener( pSVData->maAppData.mpCfgListener );
+ InitSettings();
}
return *(pSVData->maAppData.mpSettings);
}
+void Application::InitSettings()
+{
+ ImplSVData* pSVData = ImplGetSVData();
+
+ assert(!pSVData->maAppData.mpSettings); // initialization should not happen twice!
+
+ pSVData->maAppData.mpCfgListener = new LocaleConfigurationListener;
+ pSVData->maAppData.mpSettings = new AllSettings();
+ pSVData->maAppData.mpSettings->GetSysLocale().GetOptions().AddListener( pSVData->maAppData.mpCfgListener );
+}
+
void Application::NotifyAllWindows( DataChangedEvent& rDCEvt )
{
ImplSVData* pSVData = ImplGetSVData();