diff options
-rw-r--r-- | include/svx/sdr/primitive2d/primitiveFactory2d.hxx | 76 | ||||
-rw-r--r-- | svx/source/sdr/primitive2d/primitivefactory2d.cxx | 130 | ||||
-rw-r--r-- | svx/source/unodraw/unoctabl.cxx | 9 | ||||
-rw-r--r-- | svx/util/svx.component | 3 | ||||
-rw-r--r-- | svx/util/svxcore.component | 4 |
5 files changed, 59 insertions, 163 deletions
diff --git a/include/svx/sdr/primitive2d/primitiveFactory2d.hxx b/include/svx/sdr/primitive2d/primitiveFactory2d.hxx deleted file mode 100644 index dcbdc6b79589..000000000000 --- a/include/svx/sdr/primitive2d/primitiveFactory2d.hxx +++ /dev/null @@ -1,76 +0,0 @@ -/* -*- 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 INCLUDED_SVX_SDR_PRIMITIVE2D_PRIMITIVEFACTORY2D_HXX -#define INCLUDED_SVX_SDR_PRIMITIVE2D_PRIMITIVEFACTORY2D_HXX - -#include <com/sun/star/graphic/XPrimitiveFactory2D.hpp> -#include <cppuhelper/compbase1.hxx> -#include <comphelper/broadcasthelper.hxx> - -#include <svx/svxdllapi.h> - -////////////////////////////////////////////////////////////////////////////// -// UNO API helper methods - -namespace drawinglayer -{ - namespace primitive2d - { - SVX_DLLPUBLIC ::com::sun::star::uno::Reference< ::com::sun::star::uno::XInterface > SAL_CALL XPrimitiveFactory2DProvider_createInstance(const ::com::sun::star::uno::Reference< ::com::sun::star::lang::XMultiServiceFactory > & rSMgr) throw( ::com::sun::star::uno::Exception ); - } // end of namespace primitive2d -} // end of namespace drawinglayer - -////////////////////////////////////////////////////////////////////////////// -// PrimitiveFactory2D class - -namespace drawinglayer -{ - namespace primitive2d - { - // typedef for PrimitiveFactory2DImplBase - typedef cppu::WeakComponentImplHelper1< ::com::sun::star::graphic::XPrimitiveFactory2D > PrimitiveFactory2DImplBase; - - // base class for C++ implementation of com::sun::star::graphic::XPrimitiveFactory2D - class PrimitiveFactory2D - : protected comphelper::OBaseMutex, - public PrimitiveFactory2DImplBase - { - private: - protected: - public: - // constructor - PrimitiveFactory2D(); - - // Methods from XPrimitiveFactory2D - virtual ::com::sun::star::uno::Sequence< ::com::sun::star::uno::Reference< ::com::sun::star::graphic::XPrimitive2D > > SAL_CALL createPrimitivesFromXShape( const ::com::sun::star::uno::Reference< ::com::sun::star::drawing::XShape >& xShape, const ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue >& aParms ) throw (::com::sun::star::uno::RuntimeException); - virtual ::com::sun::star::uno::Sequence< ::com::sun::star::uno::Reference< ::com::sun::star::graphic::XPrimitive2D > > SAL_CALL createPrimitivesFromXDrawPage( const ::com::sun::star::uno::Reference< ::com::sun::star::drawing::XDrawPage >& xDrawPage, const ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue >& aParms ) throw (::com::sun::star::uno::RuntimeException); - - // UNO API helpers - SVX_DLLPUBLIC static OUString getImplementationName_Static(); - SVX_DLLPUBLIC static com::sun::star::uno::Sequence< OUString > getSupportedServiceNames_Static(); - }; - } // end of namespace primitive2d -} // end of namespace drawinglayer - -////////////////////////////////////////////////////////////////////////////// - -#endif // INCLUDED_SVX_SDR_PRIMITIVE2D_PRIMITIVEFACTORY2D_HXX - -/* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/svx/source/sdr/primitive2d/primitivefactory2d.cxx b/svx/source/sdr/primitive2d/primitivefactory2d.cxx index e549d79b3565..fad0b75504ab 100644 --- a/svx/source/sdr/primitive2d/primitivefactory2d.cxx +++ b/svx/source/sdr/primitive2d/primitivefactory2d.cxx @@ -17,106 +17,86 @@ * the License at http://www.apache.org/licenses/LICENSE-2.0 . */ -#include <svx/sdr/primitive2d/primitiveFactory2d.hxx> +#include <com/sun/star/graphic/XPrimitiveFactory2D.hpp> #include <drawinglayer/primitive2d/baseprimitive2d.hxx> #include <svx/svdobj.hxx> #include <svx/svdpage.hxx> #include <svx/unoapi.hxx> #include <svx/sdr/contact/viewcontact.hxx> -////////////////////////////////////////////////////////////////////////////// - using namespace com::sun::star; -////////////////////////////////////////////////////////////////////////////// -// UNO API helper methods - -namespace drawinglayer -{ - namespace primitive2d - { - uno::Reference< uno::XInterface > SAL_CALL XPrimitiveFactory2DProvider_createInstance( - const uno::Reference< lang::XMultiServiceFactory >& /*rSMgr*/) throw( uno::Exception ) - { - return *(new PrimitiveFactory2D()); - } - } // end of namespace primitive2d -} // end of namespace drawinglayer +namespace { -////////////////////////////////////////////////////////////////////////////// -// UNO API helper methods +typedef cppu::WeakComponentImplHelper1< ::com::sun::star::graphic::XPrimitiveFactory2D > PrimitiveFactory2DImplBase; -namespace drawinglayer +// base class for C++ implementation of com::sun::star::graphic::XPrimitiveFactory2D +class PrimitiveFactory2D + : protected comphelper::OBaseMutex, + public PrimitiveFactory2DImplBase { - namespace primitive2d - { - PrimitiveFactory2D::PrimitiveFactory2D() - : PrimitiveFactory2DImplBase(m_aMutex) - { - } +public: + PrimitiveFactory2D(): PrimitiveFactory2DImplBase(m_aMutex) {} - Primitive2DSequence SAL_CALL PrimitiveFactory2D::createPrimitivesFromXShape( - const uno::Reference< drawing::XShape >& xShape, - const uno::Sequence< beans::PropertyValue >& /*aParms*/ ) throw (uno::RuntimeException) - { - Primitive2DSequence aRetval; + // Methods from XPrimitiveFactory2D + virtual ::com::sun::star::uno::Sequence< ::com::sun::star::uno::Reference< ::com::sun::star::graphic::XPrimitive2D > > SAL_CALL createPrimitivesFromXShape( const ::com::sun::star::uno::Reference< ::com::sun::star::drawing::XShape >& xShape, const ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue >& aParms ) throw (::com::sun::star::uno::RuntimeException); + virtual ::com::sun::star::uno::Sequence< ::com::sun::star::uno::Reference< ::com::sun::star::graphic::XPrimitive2D > > SAL_CALL createPrimitivesFromXDrawPage( const ::com::sun::star::uno::Reference< ::com::sun::star::drawing::XDrawPage >& xDrawPage, const ::com::sun::star::uno::Sequence< ::com::sun::star::beans::PropertyValue >& aParms ) throw (::com::sun::star::uno::RuntimeException); - if(xShape.is()) - { - SdrObject* pSource = GetSdrObjectFromXShape(xShape); +}; - if(pSource) - { - const sdr::contact::ViewContact& rSource(pSource->GetViewContact()); - aRetval = rSource.getViewIndependentPrimitive2DSequence(); - } - } +Primitive2DSequence SAL_CALL PrimitiveFactory2D::createPrimitivesFromXShape( + const uno::Reference< drawing::XShape >& xShape, + const uno::Sequence< beans::PropertyValue >& /*aParms*/ ) throw (uno::RuntimeException) +{ + Primitive2DSequence aRetval; - return aRetval; - } + if(xShape.is()) + { + SdrObject* pSource = GetSdrObjectFromXShape(xShape); - Primitive2DSequence SAL_CALL PrimitiveFactory2D::createPrimitivesFromXDrawPage( - const uno::Reference< drawing::XDrawPage >& xDrawPage, - const uno::Sequence< beans::PropertyValue >& /*aParms*/ ) throw (uno::RuntimeException) + if(pSource) { - Primitive2DSequence aRetval; - - if(xDrawPage.is()) - { - SdrPage* pSource = GetSdrPageFromXDrawPage(xDrawPage); + const sdr::contact::ViewContact& rSource(pSource->GetViewContact()); + aRetval = rSource.getViewIndependentPrimitive2DSequence(); + } + } - if(pSource) - { - const sdr::contact::ViewContact& rSource(pSource->GetViewContact()); + return aRetval; +} - aRetval = rSource.getViewIndependentPrimitive2DSequence(); - } - } +Primitive2DSequence SAL_CALL PrimitiveFactory2D::createPrimitivesFromXDrawPage( + const uno::Reference< drawing::XDrawPage >& xDrawPage, + const uno::Sequence< beans::PropertyValue >& /*aParms*/ ) throw (uno::RuntimeException) +{ + Primitive2DSequence aRetval; - return aRetval; - } + if(xDrawPage.is()) + { + SdrPage* pSource = GetSdrPageFromXDrawPage(xDrawPage); - OUString PrimitiveFactory2D::getImplementationName_Static() + if(pSource) { - static OUString aRetval("com.sun.star.comp.graphic.PrimitiveFactory2D"); - return aRetval; + const sdr::contact::ViewContact& rSource(pSource->GetViewContact()); + + aRetval = rSource.getViewIndependentPrimitive2DSequence(); } + } - uno::Sequence< OUString > PrimitiveFactory2D::getSupportedServiceNames_Static() - { - static uno::Sequence< OUString > aSeq; - osl::Mutex aMutex; - osl::MutexGuard aGuard( aMutex ); + return aRetval; +} - if(!aSeq.getLength()) - { - aSeq.realloc(1L); - aSeq[0] = "com.sun.star.graphic.PrimitiveFactory2D"; - } +} - return aSeq; - } - } // end of namespace primitive2d -} // end of namespace drawinglayer +extern "C" SAL_DLLPUBLIC_EXPORT css::uno::XInterface * SAL_CALL +com_sun_star_comp_graphic_PrimitiveFactory2D_implementation_getFactory( + SAL_UNUSED_PARAMETER css::uno::XComponentContext *, + uno_Sequence * arguments) +{ + assert(arguments != 0 && arguments->nElements == 0); (void) arguments; + css::uno::Reference<css::uno::XInterface> x( + static_cast<cppu::OWeakObject *>(new PrimitiveFactory2D)); + x->acquire(); + return x.get(); +} /* vim:set shiftwidth=4 softtabstop=4 expandtab: */ diff --git a/svx/source/unodraw/unoctabl.cxx b/svx/source/unodraw/unoctabl.cxx index 1c4d5cdefc03..56aee061476e 100644 --- a/svx/source/unodraw/unoctabl.cxx +++ b/svx/source/unodraw/unoctabl.cxx @@ -228,7 +228,6 @@ uno::Reference< uno::XInterface > SAL_CALL create_EnhancedCustomShapeEngine( con #include "sal/types.h" #include "osl/diagnose.h" #include "cppuhelper/factory.hxx" -#include <svx/sdr/primitive2d/primitiveFactory2d.hxx> extern "C" { @@ -339,14 +338,6 @@ SAL_DLLPUBLIC_EXPORT void * SAL_CALL svx_component_getFactory ( ::unogallery::GalleryThemeProvider_createInstance, ::unogallery::GalleryThemeProvider_getSupportedServiceNames() ); } - else if( drawinglayer::primitive2d::PrimitiveFactory2D::getImplementationName_Static().equalsAscii( pImplName ) ) - { - // XPrimitiveFactory2D - xFactory = ::cppu::createSingleFactory( reinterpret_cast< lang::XMultiServiceFactory * >( pServiceManager ), - drawinglayer::primitive2d::PrimitiveFactory2D::getImplementationName_Static(), - drawinglayer::primitive2d::XPrimitiveFactory2DProvider_createInstance, - drawinglayer::primitive2d::PrimitiveFactory2D::getSupportedServiceNames_Static() ); - } if( xFactory.is()) { diff --git a/svx/util/svx.component b/svx/util/svx.component index b8f043c8631c..0e985a7c5f63 100644 --- a/svx/util/svx.component +++ b/svx/util/svx.component @@ -25,9 +25,6 @@ <implementation name="com.sun.star.comp.gallery.GalleryThemeProvider"> <service name="com.sun.star.gallery.GalleryThemeProvider"/> </implementation> - <implementation name="com.sun.star.comp.graphic.PrimitiveFactory2D"> - <service name="com.sun.star.graphic.PrimitiveFactory2D"/> - </implementation> <implementation name="com.sun.star.comp.svx.Impl.FindbarDispatcher"> <service name="com.sun.star.comp.svx.FindbarDispatcher"/> <service name="com.sun.star.frame.ProtocolHandler"/> diff --git a/svx/util/svxcore.component b/svx/util/svxcore.component index 8d4e1498fef0..766482535b21 100644 --- a/svx/util/svxcore.component +++ b/svx/util/svxcore.component @@ -46,4 +46,8 @@ <service name="com.sun.star.document.BinaryStreamResolver"/> <service name="com.sun.star.document.GraphicObjectResolver"/> </implementation> + <implementation name="com.sun.star.comp.graphic.PrimitiveFactory2D" + constructor="com_sun_star_comp_graphic_PrimitiveFactory2D_implementation_getFactory"> + <service name="com.sun.star.graphic.PrimitiveFactory2D"/> + </implementation> </component> |