diff --git a/framework/inc/services/layoutmanager.hxx b/framework/inc/services/layoutmanager.hxx index 853e4495a134..167f954cc86c 100644 --- a/framework/inc/services/layoutmanager.hxx +++ b/framework/inc/services/layoutmanager.hxx @@ -20,19 +20,12 @@ #ifndef INCLUDED_FRAMEWORK_INC_SERVICES_LAYOUTMANAGER_HXX #define INCLUDED_FRAMEWORK_INC_SERVICES_LAYOUTMANAGER_HXX -/** Attention: stl headers must(!) be included at first. Otherwise it can make trouble - with solaris headers ... -*/ -#include - #include #include #include #include -#include #include #include -#include #include #include #include @@ -62,6 +55,7 @@ #include #include #include +#include #include #include #include @@ -99,7 +93,25 @@ namespace framework /** declaration of XInterface, XTypeProvider, XServiceInfo */ FWK_DECLARE_XINTERFACE FWK_DECLARE_XTYPEPROVIDER - DECLARE_XSERVICEINFO + virtual OUString SAL_CALL getImplementationName() + throw (css::uno::RuntimeException) + { + return OUString("com.sun.star.comp.framework.LayoutManager"); + } + + virtual sal_Bool SAL_CALL supportsService(OUString const & ServiceName) + throw (css::uno::RuntimeException) + { + return cppu::supportsService(this, ServiceName); + } + + virtual css::uno::Sequence SAL_CALL getSupportedServiceNames() + throw (css::uno::RuntimeException) + { + css::uno::Sequence< OUString > aSeq(1); + aSeq[0] = OUString("com.sun.star.frame.LayoutManager"); + return aSeq; + } //--------------------------------------------------------------------------------------------------------- // XLayoutManager diff --git a/framework/source/layoutmanager/layoutmanager.cxx b/framework/source/layoutmanager/layoutmanager.cxx index 309ab5bee73e..5fdcfdd91ab3 100644 --- a/framework/source/layoutmanager/layoutmanager.cxx +++ b/framework/source/layoutmanager/layoutmanager.cxx @@ -20,7 +20,6 @@ #include #include #include -#include #include #include @@ -75,6 +74,7 @@ #include #include +#include #include #include @@ -98,8 +98,6 @@ namespace framework IMPLEMENT_FORWARD_XTYPEPROVIDER2( LayoutManager, LayoutManager_Base, LayoutManager_PBase ) IMPLEMENT_FORWARD_XINTERFACE2( LayoutManager, LayoutManager_Base, LayoutManager_PBase ) -DEFINE_XSERVICEINFO_MULTISERVICE_2( LayoutManager, ::cppu::OWeakObject, "com.sun.star.frame.LayoutManager", OUString("com.sun.star.comp.framework.LayoutManager")) -DEFINE_INIT_SERVICE( LayoutManager, {} ) LayoutManager::LayoutManager( const Reference< XComponentContext >& xContext ) : LayoutManager_Base() , ThreadHelpBase( &Application::GetSolarMutex()) @@ -3224,4 +3222,14 @@ uno::Reference< beans::XPropertySetInfo > SAL_CALL LayoutManager::getPropertySet } // namespace framework +extern "C" SAL_DLLPUBLIC_EXPORT css::uno::XInterface * SAL_CALL +com_sun_star_comp_framework_LayoutManager_get_implementation( + css::uno::XComponentContext *context, + css::uno::Sequence const &) +{ + rtl::Reference x(new framework::LayoutManager(context)); + x->acquire(); + return static_cast(x.get()); +} + /* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/framework/source/register/registerservices.cxx b/framework/source/register/registerservices.cxx index ca2a0373c090..924cfa3fa6db 100644 --- a/framework/source/register/registerservices.cxx +++ b/framework/source/register/registerservices.cxx @@ -36,7 +36,6 @@ #include #include #include -#include #include #include #include @@ -66,7 +65,6 @@ COMPONENTGETFACTORY ( fwk, IFFACTORY( ::framework::Desktop ) else IFFACTORY( ::framework::Frame ) else IFFACTORY( ::framework::JobExecutor ) else - IFFACTORY( ::framework::LayoutManager ) else IFFACTORY( ::framework::UIElementFactoryManager ) else IFFACTORY( ::framework::PopupMenuControllerFactory ) else IFFACTORY( ::framework::ControlMenuController ) else diff --git a/framework/util/fwk.component b/framework/util/fwk.component index 55739063cc31..d0a782e298b2 100644 --- a/framework/util/fwk.component +++ b/framework/util/fwk.component @@ -57,7 +57,8 @@ constructor="com_sun_star_comp_framework_LangSelectionStatusbarController_get_implementation"> - +