summaryrefslogtreecommitdiff
path: root/include/svx
diff options
context:
space:
mode:
authorKohei Yoshida <kohei.yoshida@collabora.com>2014-01-10 11:30:59 -0500
committerKohei Yoshida <kohei.yoshida@collabora.com>2014-01-10 11:42:11 -0500
commit10840ad753b60886ea5175060cb0ec2a77e1579a (patch)
tree9e3d75d9f1d13423e5e30d8cc4f539be449abeb7 /include/svx
parentfe23abd3812e08015facbbb2eb725dd990d63fa0 (diff)
fdo#72005: Insert the border rectangle to the bottom of the stack.
This will make the border and fill shape to be drawn first, then everything else drawn on top. This commit may look large, but it's actually a very trivial change. The important part is in SvxShapeGroup where new methods have been added to allow different insertion positions for the new shapes being inserted, and have the chart2 code make use of it to insert the fill rectangle to the bottom rather than to the top. Change-Id: I999160daf6fc9ce3d7e641f57b1998543df1cc4e
Diffstat (limited to 'include/svx')
-rw-r--r--include/svx/unoshape.hxx14
1 files changed, 10 insertions, 4 deletions
diff --git a/include/svx/unoshape.hxx b/include/svx/unoshape.hxx
index c27f8b7c6bf1..538bc130639f 100644
--- a/include/svx/unoshape.hxx
+++ b/include/svx/unoshape.hxx
@@ -33,6 +33,9 @@
#include <com/sun/star/lang/XUnoTunnel.hpp>
#include <com/sun/star/awt/Point.hpp>
#include <com/sun/star/drawing/PolygonKind.hpp>
+#include <com/sun/star/drawing/XShapes2.hpp>
+#include <com/sun/star/drawing/XShapeGroup.hpp>
+#include <com/sun/star/container/XIndexAccess.hpp>
#include <com/sun/star/container/XNamed.hpp>
#include <com/sun/star/container/XChild.hpp>
#include <com/sun/star/beans/XMultiPropertySet.hpp>
@@ -374,20 +377,19 @@ public:
// XServiceInfo
virtual ::com::sun::star::uno::Sequence< OUString > SAL_CALL getSupportedServiceNames() throw(::com::sun::star::uno::RuntimeException);
};
-#include <com/sun/star/drawing/XShapes.hpp>
-#include <com/sun/star/drawing/XShapeGroup.hpp>
-#include <com/sun/star/container/XIndexAccess.hpp>
/***********************************************************************
* *
***********************************************************************/
class SvxShapeGroup : public SvxShape,
public ::com::sun::star::drawing::XShapeGroup,
- public ::com::sun::star::drawing::XShapes
+ public ::com::sun::star::drawing::XShapes2
{
private:
rtl::Reference< SvxDrawPage> mxPage;
+ void addUnoShape( const ::com::sun::star::uno::Reference< ::com::sun::star::drawing::XShape >& xShape, sal_uIntPtr nPos );
+
public:
SvxShapeGroup( SdrObject* pObj,SvxDrawPage* pDrawPage ) throw ();
virtual ~SvxShapeGroup() throw ();
@@ -404,6 +406,10 @@ public:
virtual void SAL_CALL add( const ::com::sun::star::uno::Reference< ::com::sun::star::drawing::XShape >& xShape ) throw(::com::sun::star::uno::RuntimeException);
virtual void SAL_CALL remove( const ::com::sun::star::uno::Reference< ::com::sun::star::drawing::XShape >& xShape ) throw(::com::sun::star::uno::RuntimeException);
+ // XShapes2
+ virtual void SAL_CALL addTop( const ::com::sun::star::uno::Reference< ::com::sun::star::drawing::XShape >& xShape ) throw(::com::sun::star::uno::RuntimeException);
+ virtual void SAL_CALL addBottom( const ::com::sun::star::uno::Reference< ::com::sun::star::drawing::XShape >& xShape ) throw(::com::sun::star::uno::RuntimeException);
+
// XElementAccess
virtual ::com::sun::star::uno::Type SAL_CALL getElementType() throw(::com::sun::star::uno::RuntimeException);
virtual sal_Bool SAL_CALL hasElements() throw(::com::sun::star::uno::RuntimeException);