diff options
author | Noel Grandin <noel@peralex.com> | 2013-05-30 15:02:11 +0200 |
---|---|---|
committer | Noel Grandin <noel@peralex.com> | 2013-06-03 10:00:00 +0200 |
commit | d7fa9ca787ee0ec5d0b9f2989f547ff37791afc6 (patch) | |
tree | c00ba702812f907283af9e0ee23bcebe0db1abac | |
parent | 0f627e06c93e85de02a69a225b66be430bcbea36 (diff) |
fdo#46808, Convert FrameLoaderFactory and ContentHandlerFactory to new style
by creating a common service interface for them to implement
Change-Id: Icec85c55ed0ac13a6c785fdad6b0cd9c11878ba5
-rw-r--r-- | filter/source/config/cache/contenthandlerfactory.cxx | 4 | ||||
-rw-r--r-- | filter/source/config/cache/contenthandlerfactory.hxx | 25 | ||||
-rw-r--r-- | filter/source/config/cache/frameloaderfactory.cxx | 4 | ||||
-rw-r--r-- | filter/source/config/cache/frameloaderfactory.hxx | 23 | ||||
-rw-r--r-- | framework/inc/services.h | 2 | ||||
-rw-r--r-- | framework/source/loadenv/loadenv.cxx | 73 | ||||
-rw-r--r-- | offapi/UnoApi_offapi.mk | 5 | ||||
-rw-r--r-- | offapi/com/sun/star/frame/ContentHandlerFactory.idl | 50 | ||||
-rw-r--r-- | offapi/com/sun/star/frame/FrameLoaderFactory.idl | 49 | ||||
-rw-r--r-- | offapi/com/sun/star/frame/XLoaderFactory.idl | 86 | ||||
-rw-r--r-- | offapi/type_reference/offapi.rdb | bin | 6832128 -> 6832128 bytes |
11 files changed, 175 insertions, 146 deletions
diff --git a/filter/source/config/cache/contenthandlerfactory.cxx b/filter/source/config/cache/contenthandlerfactory.cxx index a2b251bed7d8..0a61c3e742ef 100644 --- a/filter/source/config/cache/contenthandlerfactory.cxx +++ b/filter/source/config/cache/contenthandlerfactory.cxx @@ -89,7 +89,7 @@ css::uno::Reference< css::uno::XInterface > SAL_CALL ContentHandlerFactory::crea lQuery[0].Name = PROPNAME_TYPES; lQuery[0].Value <<= lTypes; - css::uno::Reference< css::container::XEnumeration > xSet = createSubSetEnumerationByProperties(lQuery); + css::uno::Reference< css::container::XEnumeration > xSet = BaseContainer::createSubSetEnumerationByProperties(lQuery); while(xSet->hasMoreElements()) { ::comphelper::SequenceAsHashMap lHandlerProps(xSet->nextElement()); @@ -143,7 +143,7 @@ css::uno::Sequence< OUString > SAL_CALL ContentHandlerFactory::getAvailableServi throw(css::uno::RuntimeException) { // must be the same list as ((XNameAccess*)this)->getElementNames() return! - return getElementNames(); + return BaseContainer::getElementNames(); } diff --git a/filter/source/config/cache/contenthandlerfactory.hxx b/filter/source/config/cache/contenthandlerfactory.hxx index d2c0f9a2a7f4..22ed773898ef 100644 --- a/filter/source/config/cache/contenthandlerfactory.hxx +++ b/filter/source/config/cache/contenthandlerfactory.hxx @@ -21,7 +21,7 @@ #define __FILTER_CONFIG_CONTENTHANDLERFACTORY_HXX_ #include "basecontainer.hxx" -#include <com/sun/star/lang/XMultiServiceFactory.hpp> +#include <com/sun/star/frame/XLoaderFactory.hpp> #include <com/sun/star/lang/XSingleServiceFactory.hpp> #include <cppuhelper/implbase1.hxx> @@ -35,7 +35,7 @@ namespace filter{ /** @short implements the service <type scope="com.sun.star.document">ContentHandlerFactory</type>. */ class ContentHandlerFactory : public ::cppu::ImplInheritanceHelper1< BaseContainer , - css::lang::XMultiServiceFactory > + css::frame::XLoaderFactory > { //------------------------------------------- // native interface @@ -125,6 +125,27 @@ class ContentHandlerFactory : public ::cppu::ImplInheritanceHelper1< BaseContain @return The new instance of this service as an uno reference. */ static css::uno::Reference< css::uno::XInterface > impl_createInstance(const css::uno::Reference< css::lang::XMultiServiceFactory >& xSMGR); + + + // Overrides to resolve ambiguity + virtual ::com::sun::star::uno::Any SAL_CALL getByName( const ::rtl::OUString& aName ) throw (css::container::NoSuchElementException, css::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException) + { return BaseContainer::getByName(aName); } + virtual ::com::sun::star::uno::Sequence< ::rtl::OUString > SAL_CALL getElementNames() throw (::com::sun::star::uno::RuntimeException) + { return BaseContainer::getElementNames(); } + virtual ::sal_Bool SAL_CALL hasByName( const ::rtl::OUString& aName ) throw (::com::sun::star::uno::RuntimeException) + { return BaseContainer::hasByName(aName); } + + virtual ::com::sun::star::uno::Type SAL_CALL getElementType() throw (::com::sun::star::uno::RuntimeException) + { return BaseContainer::getElementType(); } + virtual ::sal_Bool SAL_CALL hasElements() throw (::com::sun::star::uno::RuntimeException) + { return BaseContainer::hasElements(); } + + virtual ::com::sun::star::uno::Reference< css::container::XEnumeration > SAL_CALL createSubSetEnumerationByQuery( const ::rtl::OUString& Query ) throw (::com::sun::star::uno::RuntimeException) + { return BaseContainer::createSubSetEnumerationByQuery(Query); } + virtual ::com::sun::star::uno::Reference< css::container::XEnumeration > SAL_CALL createSubSetEnumerationByProperties( const ::com::sun::star::uno::Sequence< css::beans::NamedValue >& Properties ) throw (::com::sun::star::uno::RuntimeException) + { return BaseContainer::createSubSetEnumerationByProperties(Properties); } + + }; } // namespace config diff --git a/filter/source/config/cache/frameloaderfactory.cxx b/filter/source/config/cache/frameloaderfactory.cxx index 7ded4936dc3b..63f3a92a02dc 100644 --- a/filter/source/config/cache/frameloaderfactory.cxx +++ b/filter/source/config/cache/frameloaderfactory.cxx @@ -86,7 +86,7 @@ css::uno::Reference< css::uno::XInterface > SAL_CALL FrameLoaderFactory::createI lQuery[0].Name = PROPNAME_TYPES; lQuery[0].Value <<= lTypes; - css::uno::Reference< css::container::XEnumeration > xSet = createSubSetEnumerationByProperties(lQuery); + css::uno::Reference< css::container::XEnumeration > xSet = BaseContainer::createSubSetEnumerationByProperties(lQuery); while(xSet->hasMoreElements()) { ::comphelper::SequenceAsHashMap lLoaderProps(xSet->nextElement()); @@ -140,7 +140,7 @@ css::uno::Sequence< OUString > SAL_CALL FrameLoaderFactory::getAvailableServiceN throw(css::uno::RuntimeException) { // must be the same list as ((XNameAccess*)this)->getElementNames() return! - return getElementNames(); + return BaseContainer::getElementNames(); } diff --git a/filter/source/config/cache/frameloaderfactory.hxx b/filter/source/config/cache/frameloaderfactory.hxx index fb2e32f21214..96623511aa6f 100644 --- a/filter/source/config/cache/frameloaderfactory.hxx +++ b/filter/source/config/cache/frameloaderfactory.hxx @@ -21,7 +21,7 @@ #define __FILTER_CONFIG_FRAMELOADERFACTORY_HXX_ #include "basecontainer.hxx" -#include <com/sun/star/lang/XMultiServiceFactory.hpp> +#include <com/sun/star/frame/XLoaderFactory.hpp> #include <com/sun/star/lang/XSingleServiceFactory.hpp> #include <cppuhelper/implbase1.hxx> @@ -35,7 +35,7 @@ namespace filter{ /** @short implements the service <type scope="com.sun.star.document">FrameLoaderFactory</type>. */ class FrameLoaderFactory : public ::cppu::ImplInheritanceHelper1< BaseContainer , - css::lang::XMultiServiceFactory > + css::frame::XLoaderFactory > { //------------------------------------------- // native interface @@ -125,6 +125,25 @@ class FrameLoaderFactory : public ::cppu::ImplInheritanceHelper1< BaseContainer @return The new instance of this service as an uno reference. */ static css::uno::Reference< css::uno::XInterface > impl_createInstance(const css::uno::Reference< css::lang::XMultiServiceFactory >& xSMGR); + + // Overrides to resolve ambiguity + virtual ::com::sun::star::uno::Any SAL_CALL getByName( const ::rtl::OUString& aName ) throw (css::container::NoSuchElementException, css::lang::WrappedTargetException, ::com::sun::star::uno::RuntimeException) + { return BaseContainer::getByName(aName); } + virtual ::com::sun::star::uno::Sequence< ::rtl::OUString > SAL_CALL getElementNames() throw (::com::sun::star::uno::RuntimeException) + { return BaseContainer::getElementNames(); } + virtual ::sal_Bool SAL_CALL hasByName( const ::rtl::OUString& aName ) throw (::com::sun::star::uno::RuntimeException) + { return BaseContainer::hasByName(aName); } + + virtual ::com::sun::star::uno::Type SAL_CALL getElementType() throw (::com::sun::star::uno::RuntimeException) + { return BaseContainer::getElementType(); } + virtual ::sal_Bool SAL_CALL hasElements() throw (::com::sun::star::uno::RuntimeException) + { return BaseContainer::hasElements(); } + + virtual ::com::sun::star::uno::Reference< css::container::XEnumeration > SAL_CALL createSubSetEnumerationByQuery( const ::rtl::OUString& Query ) throw (::com::sun::star::uno::RuntimeException) + { return BaseContainer::createSubSetEnumerationByQuery(Query); } + virtual ::com::sun::star::uno::Reference< css::container::XEnumeration > SAL_CALL createSubSetEnumerationByProperties( const ::com::sun::star::uno::Sequence< css::beans::NamedValue >& Properties ) throw (::com::sun::star::uno::RuntimeException) + { return BaseContainer::createSubSetEnumerationByProperties(Properties); } + }; } // namespace config diff --git a/framework/inc/services.h b/framework/inc/services.h index 6b35bf2da568..f59f952c0692 100644 --- a/framework/inc/services.h +++ b/framework/inc/services.h @@ -28,13 +28,11 @@ namespace framework{ // used servicenames by framework //_________________________________________________________________________________________________________________ -#define SERVICENAME_FRAMELOADERFACTORY DECLARE_ASCII("com.sun.star.frame.FrameLoaderFactory" ) #define SERVICENAME_FILTERFACTORY DECLARE_ASCII("com.sun.star.document.FilterFactory" ) #define SERVICENAME_TYPEDETECTION DECLARE_ASCII("com.sun.star.document.TypeDetection" ) #define SERVICENAME_CFGUPDATEACCESS DECLARE_ASCII("com.sun.star.configuration.ConfigurationUpdateAccess") // provides read/write access to the configuration #define SERVICENAME_CFGREADACCESS DECLARE_ASCII("com.sun.star.configuration.ConfigurationAccess" ) // provides readonly access to the configuration #define SERVICENAME_CONTENTHANDLER DECLARE_ASCII("com.sun.star.frame.ContentHandler" ) -#define SERVICENAME_CONTENTHANDLERFACTORY DECLARE_ASCII("com.sun.star.frame.ContentHandlerFactory" ) #define SERVICENAME_JOB DECLARE_ASCII("com.sun.star.task.Job" ) #define SERVICENAME_PROTOCOLHANDLER DECLARE_ASCII("com.sun.star.frame.ProtocolHandler" ) #define SERVICENAME_POPUPMENUCONTROLLERFACTORY DECLARE_ASCII("com.sun.star.frame.PopupMenuControllerFactory" ) diff --git a/framework/source/loadenv/loadenv.cxx b/framework/source/loadenv/loadenv.cxx index 577973677b33..ef4272219417 100644 --- a/framework/source/loadenv/loadenv.cxx +++ b/framework/source/loadenv/loadenv.cxx @@ -36,40 +36,42 @@ #include <comphelper/configuration.hxx> #include "officecfg/Office/Common.hxx" -#include <com/sun/star/task/ErrorCodeRequest.hpp> -#include <com/sun/star/task/InteractionHandler.hpp> -#include <com/sun/star/uno/RuntimeException.hpp> -#include <com/sun/star/frame/DispatchResultState.hpp> -#include <com/sun/star/frame/FrameSearchFlag.hpp> -#include <com/sun/star/util/URLTransformer.hpp> -#include <com/sun/star/util/XURLTransformer.hpp> -#include <com/sun/star/ucb/UniversalContentBroker.hpp> -#include <com/sun/star/util/XCloseable.hpp> -#include <com/sun/star/lang/XComponent.hpp> -#include <com/sun/star/lang/XServiceInfo.hpp> -#include <com/sun/star/lang/DisposedException.hpp> #include <com/sun/star/awt/XWindow.hpp> #include <com/sun/star/awt/XWindow2.hpp> #include <com/sun/star/awt/XTopWindow.hpp> +#include <com/sun/star/container/XNameAccess.hpp> +#include <com/sun/star/container/XContainerQuery.hpp> +#include <com/sun/star/container/XEnumeration.hpp> +#include <com/sun/star/document/MacroExecMode.hpp> +#include <com/sun/star/document/XTypeDetection.hpp> +#include <com/sun/star/document/XActionLockable.hpp> +#include <com/sun/star/document/UpdateDocMode.hpp> #include <com/sun/star/frame/Desktop.hpp> #include <com/sun/star/frame/OfficeFrameLoader.hpp> #include <com/sun/star/frame/XModel.hpp> #include <com/sun/star/frame/XFrameLoader.hpp> #include <com/sun/star/frame/XSynchronousFrameLoader.hpp> #include <com/sun/star/frame/XNotifyingDispatch.hpp> -#include <com/sun/star/task/XStatusIndicatorFactory.hpp> -#include <com/sun/star/task/XStatusIndicator.hpp> -#include <com/sun/star/util/XModifiable.hpp> +#include <com/sun/star/frame/FrameLoaderFactory.hpp> +#include <com/sun/star/frame/ContentHandlerFactory.hpp> +#include <com/sun/star/frame/DispatchResultState.hpp> +#include <com/sun/star/frame/FrameSearchFlag.hpp> #include <com/sun/star/frame/XDispatchProvider.hpp> -#include <com/sun/star/document/XTypeDetection.hpp> -#include <com/sun/star/document/XActionLockable.hpp> +#include <com/sun/star/lang/XComponent.hpp> +#include <com/sun/star/lang/XServiceInfo.hpp> +#include <com/sun/star/lang/DisposedException.hpp> #include <com/sun/star/io/XInputStream.hpp> #include <com/sun/star/task/XInteractionHandler.hpp> -#include <com/sun/star/container/XNameAccess.hpp> -#include <com/sun/star/container/XContainerQuery.hpp> -#include <com/sun/star/container/XEnumeration.hpp> -#include <com/sun/star/document/MacroExecMode.hpp> -#include <com/sun/star/document/UpdateDocMode.hpp> +#include <com/sun/star/task/ErrorCodeRequest.hpp> +#include <com/sun/star/task/InteractionHandler.hpp> +#include <com/sun/star/task/XStatusIndicatorFactory.hpp> +#include <com/sun/star/task/XStatusIndicator.hpp> +#include <com/sun/star/uno/RuntimeException.hpp> +#include <com/sun/star/ucb/UniversalContentBroker.hpp> +#include <com/sun/star/util/URLTransformer.hpp> +#include <com/sun/star/util/XURLTransformer.hpp> +#include <com/sun/star/util/XCloseable.hpp> +#include <com/sun/star/util/XModifiable.hpp> #include <vcl/window.hxx> #include <vcl/wrkwin.hxx> @@ -644,7 +646,7 @@ LoadEnv::EContentType LoadEnv::classifyContent(const OUString& OUString sType = xDetect->queryTypeByURL(sURL); css::uno::Sequence< css::beans::NamedValue > lQuery(1) ; - css::uno::Reference< css::container::XContainerQuery > xContainer ; + css::uno::Reference< css::frame::XLoaderFactory > xLoaderFactory; css::uno::Reference< css::container::XEnumeration > xSet ; css::uno::Sequence< OUString > lTypesReg(1); @@ -669,10 +671,8 @@ LoadEnv::EContentType LoadEnv::classifyContent(const OUString& lQuery[0].Name = sPROP_TYPES; lQuery[0].Value <<= lTypesReg; - xContainer = css::uno::Reference< css::container::XContainerQuery >( - xContext->getServiceManager()->createInstanceWithContext(SERVICENAME_FRAMELOADERFACTORY, xContext), - css::uno::UNO_QUERY); - xSet = xContainer->createSubSetEnumerationByProperties(lQuery); + xLoaderFactory = css::frame::FrameLoaderFactory::create(xContext); + xSet = xLoaderFactory->createSubSetEnumerationByProperties(lQuery); // at least one registered frame loader is enough! if (xSet->hasMoreElements()) return E_CAN_BE_LOADED; @@ -686,10 +686,8 @@ LoadEnv::EContentType LoadEnv::classifyContent(const OUString& lQuery[0].Name = sPROP_TYPES; lQuery[0].Value <<= lTypesReg; - xContainer = css::uno::Reference< css::container::XContainerQuery >( - xContext->getServiceManager()->createInstanceWithContext(SERVICENAME_CONTENTHANDLERFACTORY, xContext), - css::uno::UNO_QUERY); - xSet = xContainer->createSubSetEnumerationByProperties(lQuery); + xLoaderFactory = css::frame::ContentHandlerFactory::create(xContext); + xSet = xLoaderFactory->createSubSetEnumerationByProperties(lQuery); // at least one registered content handler is enough! if (xSet->hasMoreElements()) return E_CAN_BE_HANDLED; @@ -911,9 +909,7 @@ sal_Bool LoadEnv::impl_handleContent() css::util::URL aURL = m_aURL; // get necessary container to query for a handler object - css::uno::Reference< css::lang::XMultiServiceFactory > xFactory(m_xContext->getServiceManager()->createInstanceWithContext(SERVICENAME_CONTENTHANDLERFACTORY, m_xContext), css::uno::UNO_QUERY); - - css::uno::Reference< css::container::XContainerQuery > xQuery (xFactory , css::uno::UNO_QUERY); + css::uno::Reference< css::frame::XLoaderFactory > xLoaderFactory = css::frame::ContentHandlerFactory::create(m_xContext); aReadLock.unlock(); // <- SAFE ----------------------------------- @@ -928,7 +924,7 @@ sal_Bool LoadEnv::impl_handleContent() OUString sPROP_NAME(PROP_NAME); - css::uno::Reference< css::container::XEnumeration > xSet = xQuery->createSubSetEnumerationByProperties(lQuery); + css::uno::Reference< css::container::XEnumeration > xSet = xLoaderFactory->createSubSetEnumerationByProperties(lQuery); while(xSet->hasMoreElements()) { ::comphelper::SequenceAsHashMap lProps (xSet->nextElement()); @@ -937,7 +933,7 @@ sal_Bool LoadEnv::impl_handleContent() css::uno::Reference< css::frame::XNotifyingDispatch > xHandler; try { - xHandler = css::uno::Reference< css::frame::XNotifyingDispatch >(xFactory->createInstance(sHandler), css::uno::UNO_QUERY); + xHandler = css::uno::Reference< css::frame::XNotifyingDispatch >(xLoaderFactory->createInstance(sHandler), css::uno::UNO_QUERY); if (!xHandler.is()) continue; } @@ -1212,8 +1208,7 @@ css::uno::Reference< css::uno::XInterface > LoadEnv::impl_searchLoader() throw LoadEnvException(LoadEnvException::ID_INVALID_MEDIADESCRIPTOR); // try to locate any interested frame loader - css::uno::Reference< css::lang::XMultiServiceFactory > xLoaderFactory(m_xContext->getServiceManager()->createInstanceWithContext(SERVICENAME_FRAMELOADERFACTORY, m_xContext), css::uno::UNO_QUERY); - css::uno::Reference< css::container::XContainerQuery > xQuery (xLoaderFactory , css::uno::UNO_QUERY); + css::uno::Reference< css::frame::XLoaderFactory > xLoaderFactory = css::frame::FrameLoaderFactory::create(m_xContext); aReadLock.unlock(); // <- SAFE ----------------------------------- @@ -1227,7 +1222,7 @@ css::uno::Reference< css::uno::XInterface > LoadEnv::impl_searchLoader() OUString sPROP_NAME(PROP_NAME); - css::uno::Reference< css::container::XEnumeration > xSet = xQuery->createSubSetEnumerationByProperties(lQuery); + css::uno::Reference< css::container::XEnumeration > xSet = xLoaderFactory->createSubSetEnumerationByProperties(lQuery); while(xSet->hasMoreElements()) { // try everyone ... diff --git a/offapi/UnoApi_offapi.mk b/offapi/UnoApi_offapi.mk index fc572896fe0f..4c1e9974d0b9 100644 --- a/offapi/UnoApi_offapi.mk +++ b/offapi/UnoApi_offapi.mk @@ -189,12 +189,14 @@ $(eval $(call gb_UnoApi_add_idlfiles_nohdl,offapi,offapi/com/sun/star/frame,\ AutoRecovery \ AppDispatchProvider \ Bibliography \ + ContentHandlerFactory \ Desktop \ DispatchHelper \ DispatchRecorder \ DispatchRecorderSupplier \ DocumentTemplates \ Frame \ + FrameLoaderFactory \ GlobalEventBroadcaster \ LayoutManager \ MediaTypeDetectionHelper \ @@ -935,14 +937,12 @@ $(eval $(call gb_UnoApi_add_idlfiles_noheader,offapi,offapi/com/sun/star/formula $(eval $(call gb_UnoApi_add_idlfiles_noheader,offapi,offapi/com/sun/star/frame,\ Components \ ContentHandler \ - ContentHandlerFactory \ Controller \ DesktopTask \ DesktopTasks \ DispatchProvider \ FrameControl \ FrameLoader \ - FrameLoaderFactory \ FramesContainer \ PopupMenuController \ PopupMenuControllerFactory \ @@ -2607,6 +2607,7 @@ $(eval $(call gb_UnoApi_add_idlfiles,offapi,offapi/com/sun/star/frame,\ XLayoutManagerListener \ XLoadEventListener \ XLoadable \ + XLoaderFactory \ XMenuBarAcceptor \ XMenuBarMergingAcceptor \ XModel \ diff --git a/offapi/com/sun/star/frame/ContentHandlerFactory.idl b/offapi/com/sun/star/frame/ContentHandlerFactory.idl index 4702ed3a022b..e3411714b862 100644 --- a/offapi/com/sun/star/frame/ContentHandlerFactory.idl +++ b/offapi/com/sun/star/frame/ContentHandlerFactory.idl @@ -19,9 +19,7 @@ #ifndef __com_sun_star_frame_ContentHandlerFactory_idl__ #define __com_sun_star_frame_ContentHandlerFactory_idl__ -#include <com/sun/star/lang/XMultiServiceFactory.idl> -#include <com/sun/star/container/XNameAccess.idl> -#include <com/sun/star/container/XContainerQuery.idl> +#include <com/sun/star/frame/XLoaderFactory.idl> module com { module sun { module star { module frame { @@ -37,51 +35,7 @@ module com { module sun { module star { module frame { </ul> </p> */ -published service ContentHandlerFactory -{ - /** interface to create handler objects by using his internal name - - <p> - Returned objects must support the service specification of a <type>ContentHandler</type>. - They can be created by using of his internal name, which must be unambiguous everytime, only. - To get this name use further specified interfaces of this factory for access on - the flat configuration. - </p> - */ - interface com::sun::star::lang::XMultiServiceFactory; - - /** provides access to the whole content handler configuration - - <p> - This interface supports an access to the internal configuration - of all accessible handler objects. The return value of - <member scope="com::sun::star::container">XNameAccess::getByName()</member> is a property sequence - packed in an any. - </p> - <table border=1> - <tr> - <td><b>Types<b></td> - <td>[string]</td> - <td>file types for which handler is registered</td> - </tr> - <tr> - <td><b>UIName<b></td> - <td>[string]</td> - <td>UI representable and localized name</td> - </tr> - </table> - */ - interface com::sun::star::container::XNameAccess; - - /** supports query mode for configuration access - - <p> - This interface can be used to get sub sets of current configuration entries - which represent given search parameters. - </p> - */ - interface com::sun::star::container::XContainerQuery; -}; +published service ContentHandlerFactory : XLoaderFactory; }; }; }; }; diff --git a/offapi/com/sun/star/frame/FrameLoaderFactory.idl b/offapi/com/sun/star/frame/FrameLoaderFactory.idl index 3a095b6f6950..6efe90694baf 100644 --- a/offapi/com/sun/star/frame/FrameLoaderFactory.idl +++ b/offapi/com/sun/star/frame/FrameLoaderFactory.idl @@ -19,9 +19,7 @@ #ifndef __com_sun_star_frame_FrameLoaderFactory_idl__ #define __com_sun_star_frame_FrameLoaderFactory_idl__ -#include <com/sun/star/lang/XMultiServiceFactory.idl> -#include <com/sun/star/container/XNameAccess.idl> -#include <com/sun/star/container/XContainerQuery.idl> +#include <com/sun/star/frame/XLoaderFactory.idl> module com { module sun { module star { module frame { @@ -37,50 +35,7 @@ module com { module sun { module star { module frame { </ul> </p> */ -published service FrameLoaderFactory -{ - /** interface to create loader objects by using his internal name - - <p> - Returned objects must support the service specification of a <type>FrameLoader</type> - or <type>SynchronousFrameLoader</type>. (Note: last one will be preferred if both ones - are available) - They can be created by using of his internal name, which must be unambiguous everytime, only. - To get this name use further specified interfaces of this factory for access on - the flat configuration. - </p> - */ - interface com::sun::star::lang::XMultiServiceFactory; - - /** provides access to the whole frame loader configuration - - <p>This interface supports an access to the internal configuration of all accessible loader objects. - The return value of <member scope="com::sun::star::container">XNameAccess::getByName()</member> - is a property sequence packed in an any. </p> - <table border=1> - <tr> - <td><b>Types<b></td> - <td>[string]</td> - <td>file types which loader is registered for</td> - </tr> - <tr> - <td><b>UIName<b></td> - <td>[string]</td> - <td>UI representable and localized name</td> - </tr> - </table> - */ - interface com::sun::star::container::XNameAccess; - - /** supports query mode for configuration access - - <p> - This interface can be used to get sub sets of current configuration entries - which represent given search parameters. - </p> - */ - interface com::sun::star::container::XContainerQuery; -}; +published service FrameLoaderFactory : XLoaderFactory; }; }; }; }; diff --git a/offapi/com/sun/star/frame/XLoaderFactory.idl b/offapi/com/sun/star/frame/XLoaderFactory.idl new file mode 100644 index 000000000000..31248418e029 --- /dev/null +++ b/offapi/com/sun/star/frame/XLoaderFactory.idl @@ -0,0 +1,86 @@ +/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */ +/* + * This file is part of the LibreOffice project. + * + * This Source Code Form is subject to the terms of the Mozilla Public + * License, v. 2.0. If a copy of the MPL was not distributed with this + * file, You can obtain one at http://mozilla.org/MPL/2.0/. + * + * This file incorporates work covered by the following license notice: + * + * Licensed to the Apache Software Foundation (ASF) under one or more + * contributor license agreements. See the NOTICE file distributed + * with this work for additional information regarding copyright + * ownership. The ASF licenses this file to you under the Apache + * License, Version 2.0 (the "License"); you may not use this file + * except in compliance with the License. You may obtain a copy of + * the License at http://www.apache.org/licenses/LICENSE-2.0 . + */ +#ifndef __com_sun_star_frame_XLoaderFactory_idl__ +#define __com_sun_star_frame_XLoaderFactory_idl__ + +#include <com/sun/star/container/XContainerQuery.idl> +#include <com/sun/star/container/XNameAccess.idl> +#include <com/sun/star/lang/XMultiServiceFactory.idl> + + + + module com { module sun { module star { module frame { + +/** + Unified service interface for FrameLoaderFactory and ContentHandlerFactory. + + @since LibreOffice 4.2 + */ +published interface XLoaderFactory +{ + /** interface to create loader objects by using his internal name + + <p> + Returned objects must support the service specification of a <type>FrameLoader</type> + or <type>SynchronousFrameLoader</type>. (Note: last one will be preferred if both ones + are available) + They can be created by using of his internal name, which must be unambiguous everytime, only. + To get this name use further specified interfaces of this factory for access on + the flat configuration. + </p> + */ + interface com::sun::star::lang::XMultiServiceFactory; + + /** provides access to the whole frame loader configuration + + <p>This interface supports an access to the internal configuration of all accessible loader objects. + The return value of <member scope="com::sun::star::container">XNameAccess::getByName()</member> + is a property sequence packed in an any. </p> + <table border=1> + <tr> + <td><b>Types<b></td> + <td>[string]</td> + <td>file types which loader is registered for</td> + </tr> + <tr> + <td><b>UIName<b></td> + <td>[string]</td> + <td>UI representable and localized name</td> + </tr> + </table> + */ + interface com::sun::star::container::XNameAccess; + + /** supports query mode for configuration access + + <p> + This interface can be used to get sub sets of current configuration entries + which represent given search parameters. + </p> + */ + interface com::sun::star::container::XContainerQuery; + +}; + + +}; }; }; }; + +#endif + +/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/offapi/type_reference/offapi.rdb b/offapi/type_reference/offapi.rdb Binary files differindex 88226211f543..33c46854a483 100644 --- a/offapi/type_reference/offapi.rdb +++ b/offapi/type_reference/offapi.rdb |