19#ifndef INCLUDED_VBAHELPER_VBASHAPES_HXX
20#define INCLUDED_VBAHELPER_VBASHAPES_HXX
25#include <com/sun/star/lang/IndexOutOfBoundsException.hpp>
26#include <com/sun/star/uno/Any.hxx>
27#include <com/sun/star/uno/Reference.hxx>
28#include <com/sun/star/uno/RuntimeException.hpp>
29#include <com/sun/star/uno/Sequence.hxx>
30#include <com/sun/star/uno/Type.hxx>
31#include <ooo/vba/msforms/XShapes.hpp>
32#include <rtl/ustring.hxx>
39 namespace container {
class XEnumeration; }
40 namespace container {
class XIndexAccess; }
41 namespace drawing {
class XDrawPage; }
42 namespace drawing {
class XShape; }
43 namespace drawing {
class XShapes; }
44 namespace frame {
class XModel; }
45 namespace uno {
class XComponentContext; }
49 class XHelperInterface;
50 namespace msforms {
class XShapeRange; }
58 css::uno::Reference< css::drawing::XShapes >
m_xShapes;
61 void initBaseCollection();
62 css::uno::Reference< css::frame::XModel >
m_xModel;
66 css::uno::Reference< css::container::XIndexAccess > getShapesByArrayIndices(
const css::uno::Any&
Index );
68 css::uno::Reference< css::drawing::XShape >
createShape(
const OUString& service );
70 css::uno::Any AddRectangle( sal_Int32 startX, sal_Int32 startY, sal_Int32 nLineWidth, sal_Int32 nLineHeight );
72 css::uno::Any AddEllipse( sal_Int32 startX, sal_Int32 startY, sal_Int32 nLineWidth, sal_Int32 nLineHeight );
74 css::uno::Any AddTextboxInWriter( sal_Int32 _nLeft, sal_Int32 _nTop, sal_Int32 _nWidth, sal_Int32 _nHeight );
75 OUString createName( std::u16string_view sName );
80 ScVbaShapes(
const css::uno::Reference< ov::XHelperInterface >& xParent,
const css::uno::Reference< css::uno::XComponentContext >& xContext,
const css::uno::Reference< css::container::XIndexAccess >& xShapes, css::uno::Reference< css::frame::XModel > xModel );
82 static void setDefaultShapeProperties(
const css::uno::Reference< css::drawing::XShape >& xShape );
83 static void setShape_NameProperty(
const css::uno::Reference< css::drawing::XShape >& xShape,
const OUString& sName );
86 virtual css::uno::Reference< css::container::XEnumeration > SAL_CALL
createEnumeration()
override;
88 virtual void SAL_CALL SelectAll()
override;
90 virtual css::uno::Any SAL_CALL AddLine( sal_Int32 StartX, sal_Int32 StartY, sal_Int32 endX, sal_Int32 endY )
override;
91 virtual css::uno::Any SAL_CALL AddShape( sal_Int32 _nType, sal_Int32 _nLeft, sal_Int32 _nTop, sal_Int32 _nWidth, sal_Int32 _nHeight )
override;
92 virtual css::uno::Any SAL_CALL AddTextbox( sal_Int32 _nOrientation, sal_Int32 _nLeft, sal_Int32 _nTop, sal_Int32 _nWidth, sal_Int32 _nHeight )
override;
93 virtual css::uno::Reference< ov::msforms::XShapeRange > SAL_CALL
Range(
const css::uno::Any& shapes )
override;
virtual OUString getServiceImplName()=0
virtual css::uno::Sequence< OUString > getServiceNames()=0
virtual css::uno::Any createCollectionObject(const css::uno::Any &aSource)=0
virtual css::uno::Reference< css::container::XEnumeration > SAL_CALL createEnumeration() override=0
virtual css::uno::Type SAL_CALL getElementType() override=0
css::uno::Reference< css::frame::XModel > m_xModel
sal_Int32 m_nNewShapeCount
css::uno::Reference< css::drawing::XShapes > m_xShapes
css::uno::Reference< css::drawing::XDrawPage > m_xDrawPage
css::uno::Reference< css::drawing::XShape > OOO_DLLPUBLIC_TEST createShape(const css::uno::Reference< css::lang::XComponent > &r_xComponent, std::u16string_view r_aKind, const sal_Int32 nX, const sal_Int32 nY, const sal_Int32 nWidth, const sal_Int32 nHeight)
#define VBAHELPER_DLLPUBLIC
CollTestImplHelper< ov::msforms::XShapes > ScVbaShapes_BASE