diff options
author | Matúš Kukan <matus.kukan@collabora.com> | 2014-01-09 10:43:48 +0100 |
---|---|---|
committer | Matúš Kukan <matus.kukan@collabora.com> | 2014-01-17 12:24:42 +0100 |
commit | d1ae0770770b480f542f09eb90819ab0d235bdff (patch) | |
tree | ca8b5232301227e50016de5004ea1e12ea80cd9a /framework/source/uielement/popuptoolbarcontroller.cxx | |
parent | 78cf00643e028a4032d16c4242eeeb5de5515998 (diff) |
fwk: Use constructor feature for OpenToolbarController.
Change-Id: Iebac70fc20fb744f582be67ab2f6bce2dce722be
Diffstat (limited to 'framework/source/uielement/popuptoolbarcontroller.cxx')
-rw-r--r-- | framework/source/uielement/popuptoolbarcontroller.cxx | 55 |
1 files changed, 47 insertions, 8 deletions
diff --git a/framework/source/uielement/popuptoolbarcontroller.cxx b/framework/source/uielement/popuptoolbarcontroller.cxx index e6f6dccbbe67..7fbab2a98624 100644 --- a/framework/source/uielement/popuptoolbarcontroller.cxx +++ b/framework/source/uielement/popuptoolbarcontroller.cxx @@ -227,13 +227,25 @@ sal_uInt16 WizardsToolbarController::getDropDownStyle() const return TIB_DROPDOWNONLY; } -DEFINE_XSERVICEINFO_MULTISERVICE_2( OpenToolbarController, - ::cppu::OWeakObject, - "com.sun.star.frame.ToolbarController", - OUString("org.apache.openoffice.comp.framework.OpenToolbarController") - ) +} // framework + +namespace { + +class OpenToolbarController : public PopupMenuToolbarController +{ +public: + OpenToolbarController( const css::uno::Reference< css::uno::XComponentContext >& rxContext ); + + // XServiceInfo + OUString SAL_CALL getImplementationName() + throw (css::uno::RuntimeException); -DEFINE_INIT_SERVICE( OpenToolbarController, {} ) + sal_Bool SAL_CALL supportsService(OUString const & rServiceName) + throw (css::uno::RuntimeException); + + css::uno::Sequence<OUString> SAL_CALL getSupportedServiceNames() + throw (css::uno::RuntimeException); +}; OpenToolbarController::OpenToolbarController( const css::uno::Reference< css::uno::XComponentContext >& xContext ) @@ -241,9 +253,26 @@ OpenToolbarController::OpenToolbarController( { } -} // framework +OUString OpenToolbarController::getImplementationName() + throw (css::uno::RuntimeException) +{ + return OUString("org.apache.openoffice.comp.framework.OpenToolbarController"); +} -namespace { +sal_Bool OpenToolbarController::supportsService(OUString const & rServiceName) + throw (css::uno::RuntimeException) +{ + return rServiceName == "com.sun.star.frame.ToolbarController"; +} + +css::uno::Sequence<OUString> OpenToolbarController::getSupportedServiceNames() + throw (css::uno::RuntimeException) +{ + css::uno::Sequence< OUString > aRet(1); + OUString* pArray = aRet.getArray(); + pArray[0] = "com.sun.star.frame.ToolbarController"; + return aRet; +} class NewToolbarController : public PopupMenuToolbarController { @@ -486,6 +515,16 @@ void NewToolbarController::setItemImage( const OUString &rCommand ) } extern "C" SAL_DLLPUBLIC_EXPORT css::uno::XInterface * SAL_CALL +org_apache_openoffice_comp_framework_OpenToolbarController_get_implementation( + css::uno::XComponentContext *context, + css::uno::Sequence<css::uno::Any> const &) +{ + rtl::Reference<OpenToolbarController> x(new OpenToolbarController(context)); + x->acquire(); + return static_cast<cppu::OWeakObject *>(x.get()); +} + +extern "C" SAL_DLLPUBLIC_EXPORT css::uno::XInterface * SAL_CALL org_apache_openoffice_comp_framework_NewToolbarController_get_implementation( css::uno::XComponentContext *context, css::uno::Sequence<css::uno::Any> const &) |