diff options
author | Mark Page <aptitude@btconnect.com> | 2016-07-04 17:30:42 +0100 |
---|---|---|
committer | Noel Grandin <noelgrandin@gmail.com> | 2016-07-13 06:32:46 +0000 |
commit | f7b1cd66167050afecf487e3d89ea12de74200b5 (patch) | |
tree | 75381b63bb5dca7ed1fa2ff5602064750f46f042 /sc/source/ui/app/scdll.cxx | |
parent | 633413a37ee7442cd899db1269fd3ef404efe58a (diff) |
Moved SfxModule owner to SfxApplication
::GetAppData replaced with SfxApplication::GetModule
that now returns SfxModule*
SfxModule no longer registers self for ownership
instead it is now registered using SfxApplication::SetModule
Change-Id: Ifbbe1b2b4c5122da8e643b7926d47878d116c6c8
Reviewed-on: https://gerrit.libreoffice.org/26914
Tested-by: Jenkins <ci@libreoffice.org>
Reviewed-by: Noel Grandin <noelgrandin@gmail.com>
Diffstat (limited to 'sc/source/ui/app/scdll.cxx')
-rw-r--r-- | sc/source/ui/app/scdll.cxx | 9 |
1 files changed, 5 insertions, 4 deletions
diff --git a/sc/source/ui/app/scdll.cxx b/sc/source/ui/app/scdll.cxx index 9a14c78ee23f..2e3ba3a9474a 100644 --- a/sc/source/ui/app/scdll.cxx +++ b/sc/source/ui/app/scdll.cxx @@ -102,6 +102,7 @@ #include "dwfunctr.hxx" #include "acredlin.hxx" +#include <o3tl/make_unique.hxx> ScResId::ScResId( sal_uInt16 nId ) : ResId( nId, *SC_MOD()->GetResMgr() ) @@ -110,14 +111,14 @@ ScResId::ScResId( sal_uInt16 nId ) : void ScDLL::Init() { - ScModule **ppShlPtr = reinterpret_cast<ScModule**>(GetAppData(SHL_CALC)); - if ( *ppShlPtr ) + if ( SfxApplication::GetModule(SfxToolsModule::Calc) ) // Module already active return; ScDocumentPool::InitVersionMaps(); // Is needed in the ScModule ctor - ScModule* pMod = new ScModule( &ScDocShell::Factory() ); - (*ppShlPtr) = pMod; + auto pUniqueModule = o3tl::make_unique<ScModule>(&ScDocShell::Factory()); + ScModule* pMod = pUniqueModule.get(); + SfxApplication::SetModule(SfxToolsModule::Calc, std::move(pUniqueModule)); ScDocShell::Factory().SetDocumentServiceName( "com.sun.star.sheet.SpreadsheetDocument" ); |