LibreOffice Module svx (master) 1
unoshape.hxx
Go to the documentation of this file.
1/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4 -*- */
2/*
3 * This file is part of the LibreOffice project.
4 *
5 * This Source Code Form is subject to the terms of the Mozilla Public
6 * License, v. 2.0. If a copy of the MPL was not distributed with this
7 * file, You can obtain one at http://mozilla.org/MPL/2.0/.
8 *
9 * This file incorporates work covered by the following license notice:
10 *
11 * Licensed to the Apache Software Foundation (ASF) under one or more
12 * contributor license agreements. See the NOTICE file distributed
13 * with this work for additional information regarding copyright
14 * ownership. The ASF licenses this file to you under the Apache
15 * License, Version 2.0 (the "License"); you may not use this file
16 * except in compliance with the License. You may obtain a copy of
17 * the License at http://www.apache.org/licenses/LICENSE-2.0 .
18 */
19
20#ifndef INCLUDED_SVX_UNOSHAPE_HXX
21#define INCLUDED_SVX_UNOSHAPE_HXX
22
23#include <memory>
24#include <com/sun/star/document/XActionLockable.hpp>
25#include <com/sun/star/drawing/XEnhancedCustomShapeDefaulter.hpp>
26#include <com/sun/star/drawing/XGluePointsSupplier.hpp>
27#include <com/sun/star/drawing/XShape.hpp>
28#include <com/sun/star/lang/XComponent.hpp>
29#include <com/sun/star/beans/XPropertySet.hpp>
30#include <com/sun/star/beans/XPropertyState.hpp>
31#include <com/sun/star/lang/XServiceInfo.hpp>
32#include <com/sun/star/lang/XUnoTunnel.hpp>
33#include <com/sun/star/awt/Point.hpp>
34#include <com/sun/star/drawing/PolygonKind.hpp>
35#include <com/sun/star/drawing/XShapes.hpp>
36#include <com/sun/star/drawing/XShapes2.hpp>
37#include <com/sun/star/drawing/XShapeGroup.hpp>
38#include <com/sun/star/container/XNamed.hpp>
39#include <com/sun/star/container/XChild.hpp>
40#include <com/sun/star/beans/XMultiPropertySet.hpp>
41#include <com/sun/star/beans/XMultiPropertyStates.hpp>
42#include <com/sun/star/drawing/XConnectorShape.hpp>
43#include <com/sun/star/drawing/XControlShape.hpp>
45#include <sal/types.h>
46#include <svl/lstner.hxx>
47#include <editeng/unoipset.hxx>
48#include <svx/svxdllapi.h>
49#include <rtl/ref.hxx>
50#include <com/sun/star/uno/Any.hxx>
51#include <editeng/unotext.hxx>
52
53#include <svx/svdobj.hxx>
54
56
59
60class SfxItemSet;
61class SdrModel;
62class SvxDrawPage;
63class SvGlobalName;
64class Pair;
65
66// Dimension arrows change size/position on save/reload (#i59051#)
67namespace basegfx
68 {
69 class B2DPolyPolygon;
70 } // end of namespace basegfx
71
72struct SvxShapeImpl;
73class SvxShapeMaster;
75class SfxItemSet;
76
78 const css::uno::Any& rVal, SfxItemSet& rSet );
79
81
82
83// WARNING: if you update the supported interfaces,
84// also update SvxShape::_getTypes()
86 css::drawing::XShape,
87 css::lang::XComponent,
89 css::beans::XMultiPropertySet,
90 css::beans::XPropertyState,
91 css::lang::XUnoTunnel,
92 css::container::XNamed,
93 css::drawing::XGluePointsSupplier,
94 css::container::XChild,
95 css::lang::XServiceInfo,
96 css::document::XActionLockable,
97 css::beans::XMultiPropertyStates> SvxShape_UnoImplHelper;
98
101 public SfxListener
102{
103protected:
104 friend class SvxDrawPage;
105 friend class SvxShapeConnector;
106 friend class SdXShape;
107
108 // translations for writer, which works in TWIPS
109 void ForceMetricToItemPoolMetric(Pair& rPoint) const noexcept;
110 void ForceMetricToItemPoolMetric(Point& rPoint) const noexcept { ForceMetricToItemPoolMetric(rPoint.toPair()); }
111 void ForceMetricToItemPoolMetric(Size& rPoint) const noexcept { ForceMetricToItemPoolMetric(rPoint.toPair()); }
112 void ForceMetricTo100th_mm(Pair& rPoint) const noexcept;
113 void ForceMetricTo100th_mm(Point& rPoint) const noexcept { ForceMetricTo100th_mm(rPoint.toPair()); }
114 void ForceMetricTo100th_mm(Size& rPoint) const noexcept { ForceMetricTo100th_mm(rPoint.toPair()); }
115
116 // version for basegfx::B2DPolyPolygon
117 void ForceMetricToItemPoolMetric(basegfx::B2DPolyPolygon& rPolyPolygon) const noexcept;
118 void ForceMetricTo100th_mm(basegfx::B2DPolyPolygon& rPolyPolygon) const noexcept;
119
120 // tdf#117145 version for basegfx::B2DHomMatrix
121 void ForceMetricToItemPoolMetric(basegfx::B2DHomMatrix& rB2DHomMatrix) const noexcept;
122 void ForceMetricTo100th_mm(basegfx::B2DHomMatrix& rB2DHomMatrix) const noexcept;
123
124 css::uno::Any GetAnyForItem( SfxItemSet const & aSet, const SfxItemPropertyMapEntry* pMap ) const;
125
126 bool SetFillAttribute( sal_uInt16 nWID, const OUString& rName );
127
129 virtual void lock();
130
132 virtual void unlock();
133
135
136 void updateShapeKind();
137 void endSetPropertyValues();
138
139 // override these for special property handling in subcasses. Return true if property is handled
145 virtual bool setPropertyValueImpl( const OUString& rName, const SfxItemPropertyMapEntry* pProperty, const css::uno::Any& rValue );
149 virtual bool getPropertyValueImpl( const OUString& rName, const SfxItemPropertyMapEntry* pProperty, css::uno::Any& rValue );
152 virtual bool getPropertyStateImpl( const SfxItemPropertyMapEntry* pProperty, css::beans::PropertyState& rState );
155 virtual bool setPropertyToDefaultImpl( const SfxItemPropertyMapEntry* pProperty );
156
157public:
159 SvxShape( SdrObject* pObj );
161 SvxShape( SdrObject* pObject, o3tl::span<const SfxItemPropertyMapEntry> pEntries, const SvxItemPropertySet* pPropertySet );
162 virtual ~SvxShape() noexcept override;
163
164 // Internals
165 void ObtainSettingsFromPropertySet(const SvxItemPropertySet& rPropSet);
166 virtual void Create( SdrObject* pNewOpj, SvxDrawPage* pNewPage );
167
168 // used exclusively by SdrObject
169 void InvalidateSdrObject();
170
171 // Encapsulated access to SdrObject
172 SdrObject* GetSdrObject() const { return mxSdrObject.get(); }
173 bool HasSdrObject() const { return mxSdrObject.is(); }
174
175 void SetShapeType( const OUString& ShapeType ) { maShapeType = ShapeType; }
177 css::uno::Any GetBitmap( bool bMetaFile = false ) const;
178
179 void notifyPropertyChange(svx::ShapePropertyProviderId eProp);
180 void registerProvider(svx::ShapePropertyProviderId eProp, std::unique_ptr<svx::PropertyValueProvider> provider);
181
182 void setShapeKind( SdrObjKind nKind );
183 SdrObjKind getShapeKind() const;
184
185 // styles need this
186 static bool SetFillAttribute( sal_uInt16 nWID, const OUString& rName, SfxItemSet& rSet, SdrModel const * pModel );
187 static bool SetFillAttribute( sal_uInt16 nWID, const OUString& rName, SfxItemSet& rSet );
188
195
196 // access methods for master objects
198 css::uno::Reference< css::beans::XPropertySetInfo > const & _getPropertySetInfo( );
204 void _setPropertyValue( const OUString& aPropertyName, const css::uno::Any& aValue );
208 css::uno::Any _getPropertyValue( const OUString& PropertyName );
209
212 css::beans::PropertyState _getPropertyState( const OUString& PropertyName );
215 void _setPropertyToDefault( const OUString& PropertyName );
219 css::uno::Any _getPropertyDefault( const OUString& aPropertyName );
220
222 css::uno::Sequence< OUString > _getSupportedServiceNames();
223
225 css::uno::Sequence< css::uno::Type > const & _getTypes( );
226
227 void setMaster( SvxShapeMaster* pMaster );
228
229 // SfxListener
230 virtual void Notify( SfxBroadcaster& rBC, const SfxHint& rHint ) noexcept override;
231
232 // XAggregation
233 virtual css::uno::Any SAL_CALL queryAggregation( const css::uno::Type& aType ) override;
234
235 // XNamed
236 virtual OUString SAL_CALL getName( ) override;
237 virtual void SAL_CALL setName( const OUString& aName ) override;
238
239 // XShapeDescriptor
240 virtual OUString SAL_CALL getShapeType() override;
241
242 // XShape
243 virtual css::awt::Point SAL_CALL getPosition() override;
244 virtual void SAL_CALL setPosition( const css::awt::Point& aPosition ) override;
245 virtual css::awt::Size SAL_CALL getSize() override;
246 virtual void SAL_CALL setSize( const css::awt::Size& aSize ) override;
247
248 // XComponent
249 virtual void SAL_CALL dispose() override;
250 virtual void SAL_CALL addEventListener( const css::uno::Reference< css::lang::XEventListener >& xListener ) override;
251 virtual void SAL_CALL removeEventListener( const css::uno::Reference< css::lang::XEventListener >& aListener ) override;
252
253 // XPropertySet
254 virtual css::uno::Reference< css::beans::XPropertySetInfo > SAL_CALL getPropertySetInfo( ) override;
255 virtual void SAL_CALL setPropertyValue( const OUString& aPropertyName, const css::uno::Any& aValue ) override;
256 virtual css::uno::Any SAL_CALL getPropertyValue( const OUString& PropertyName ) override;
257 virtual void SAL_CALL addPropertyChangeListener( const OUString& aPropertyName, const css::uno::Reference< css::beans::XPropertyChangeListener >& xListener ) override;
258 virtual void SAL_CALL removePropertyChangeListener( const OUString& aPropertyName, const css::uno::Reference< css::beans::XPropertyChangeListener >& aListener ) override;
259 virtual void SAL_CALL addVetoableChangeListener( const OUString& PropertyName, const css::uno::Reference< css::beans::XVetoableChangeListener >& aListener ) override;
260 virtual void SAL_CALL removeVetoableChangeListener( const OUString& PropertyName, const css::uno::Reference< css::beans::XVetoableChangeListener >& aListener ) override;
261
262 // XMultiPropertySet
263 virtual void SAL_CALL setPropertyValues( const css::uno::Sequence< OUString >& aPropertyNames, const css::uno::Sequence< css::uno::Any >& aValues ) override;
264 virtual css::uno::Sequence< css::uno::Any > SAL_CALL getPropertyValues( const css::uno::Sequence< OUString >& aPropertyNames ) override;
265 virtual void SAL_CALL addPropertiesChangeListener( const css::uno::Sequence< OUString >& aPropertyNames, const css::uno::Reference< css::beans::XPropertiesChangeListener >& xListener ) override;
266 virtual void SAL_CALL removePropertiesChangeListener( const css::uno::Reference< css::beans::XPropertiesChangeListener >& xListener ) override;
267 virtual void SAL_CALL firePropertiesChangeEvent( const css::uno::Sequence< OUString >& aPropertyNames, const css::uno::Reference< css::beans::XPropertiesChangeListener >& xListener ) override;
268
269 // XPropertyState
270 virtual css::beans::PropertyState SAL_CALL getPropertyState( const OUString& PropertyName ) override;
271 virtual css::uno::Sequence< css::beans::PropertyState > SAL_CALL getPropertyStates( const css::uno::Sequence< OUString >& aPropertyName ) override;
272 virtual void SAL_CALL setPropertyToDefault( const OUString& PropertyName ) override;
273 virtual css::uno::Any SAL_CALL getPropertyDefault( const OUString& aPropertyName ) override;
274
275 // XMultiPropertyStates
276 virtual void SAL_CALL setAllPropertiesToDefault() override;
277 virtual void SAL_CALL setPropertiesToDefault(
278 const css::uno::Sequence<
279 OUString >& aPropertyNames ) override;
280 virtual css::uno::Sequence< css::uno::Any >
281 SAL_CALL getPropertyDefaults(
282 const css::uno::Sequence<
283 OUString >& aPropertyNames ) override;
284
285 // XServiceInfo
286 virtual OUString SAL_CALL getImplementationName() override;
287 virtual css::uno::Sequence< OUString > SAL_CALL getSupportedServiceNames() override;
288 virtual sal_Bool SAL_CALL supportsService( const OUString& ServiceName ) override;
289
290 // XGluePointsSupplier
291 virtual css::uno::Reference< css::container::XIndexContainer > SAL_CALL getGluePoints( ) override;
292
293 // XChild
294 virtual css::uno::Reference< css::uno::XInterface > SAL_CALL getParent( ) override;
295 virtual void SAL_CALL setParent( const css::uno::Reference< css::uno::XInterface >& Parent ) override;
296
297 // XTypeProvider
298 virtual css::uno::Sequence< css::uno::Type > SAL_CALL getTypes( ) override;
299 virtual css::uno::Sequence< sal_Int8 > SAL_CALL getImplementationId( ) override;
300
301 // XActionLockable
302 virtual sal_Bool SAL_CALL isActionLocked( ) override;
303 virtual void SAL_CALL addActionLock( ) override;
304 virtual void SAL_CALL removeActionLock( ) override;
305 virtual void SAL_CALL setActionLocks( sal_Int16 nLock ) override;
306 virtual sal_Int16 SAL_CALL resetActionLocks( ) override;
307
308private:
311 SVX_DLLPRIVATE void impl_initFromSdrObject();
313 SVX_DLLPRIVATE void impl_construct();
314
315 std::mutex m_aMutex;
316 css::awt::Size maSize;
317 css::awt::Point maPosition;
318 OUString maShapeType;
319 OUString maShapeName;
321 std::unique_ptr<SvxShapeImpl> mpImpl;
323
324 css::uno::WeakReference< css::container::XIndexContainer > mxGluePoints;
330 sal_uInt16 mnLockCount;
331};
332
334{
335protected:
337 virtual void lock() override;
338
340 virtual void unlock() override;
341
342protected:
343 // override these for special property handling in subcasses. Return true if property is handled
344 virtual bool setPropertyValueImpl( const OUString& rName, const SfxItemPropertyMapEntry* pProperty, const css::uno::Any& rValue ) override;
345 virtual bool getPropertyValueImpl( const OUString& rName, const SfxItemPropertyMapEntry* pProperty, css::uno::Any& rValue ) override;
346 virtual bool getPropertyStateImpl( const SfxItemPropertyMapEntry* pProperty, css::beans::PropertyState& rState ) override;
347 virtual bool setPropertyToDefaultImpl( const SfxItemPropertyMapEntry* pProperty ) override;
348
349public:
350 SvxShapeText(SdrObject* pObj);
352 virtual ~SvxShapeText() noexcept override;
353
354 virtual void Create( SdrObject* pNewOpj, SvxDrawPage* pNewPage ) override;
355
356 // XInterface
357 virtual css::uno::Any SAL_CALL queryAggregation( const css::uno::Type & rType ) override;
358 virtual css::uno::Any SAL_CALL queryInterface( const css::uno::Type & rType ) override;
359 virtual void SAL_CALL acquire() noexcept override
360 { SvxShape::acquire(); }
361 virtual void SAL_CALL release() noexcept override
362 { SvxShape::release(); }
363
364 // XServiceInfo
365 virtual OUString SAL_CALL getImplementationName() override;
366 virtual css::uno::Sequence< OUString > SAL_CALL getSupportedServiceNames() override;
367 virtual sal_Bool SAL_CALL supportsService( const OUString& ServiceName ) override;
368
369 // css::text::XTextRange
370 virtual css::uno::Reference< css::text::XTextRange > SAL_CALL getStart() override;
371 virtual css::uno::Reference< css::text::XTextRange > SAL_CALL getEnd() override;
372 virtual OUString SAL_CALL getString() override;
373 virtual void SAL_CALL setString( const OUString& aString ) override;
374
375 // XUnoTunnel
376 virtual sal_Int64 SAL_CALL getSomething( const css::uno::Sequence< sal_Int8 >& aIdentifier ) override;
377
378 // XTypeProvider
379 virtual css::uno::Sequence< css::uno::Type > SAL_CALL getTypes( ) override;
380 virtual css::uno::Sequence< sal_Int8 > SAL_CALL getImplementationId( ) override;
381};
382
383class SAL_DLLPUBLIC_RTTI SvxShapeRect final : public SvxShapeText
384{
385public:
387 virtual ~SvxShapeRect() noexcept override;
388
389 // XInterface
390 virtual css::uno::Any SAL_CALL queryAggregation( const css::uno::Type & rType ) override;
391 virtual css::uno::Any SAL_CALL queryInterface( const css::uno::Type & rType ) override;
392 virtual void SAL_CALL acquire() noexcept override
393 { OWeakAggObject::acquire(); }
394 virtual void SAL_CALL release() noexcept override
395 { OWeakAggObject::release(); }
396
397 // XServiceInfo
398 virtual css::uno::Sequence< OUString > SAL_CALL getSupportedServiceNames() override;
399};
400
403 public css::drawing::XShapes
404{
405public:
407 virtual ~SvxShapeGroupAnyD() noexcept override;
408
409 virtual void SAL_CALL acquire() noexcept override
410 { SvxShape::acquire(); }
411 virtual void SAL_CALL release() noexcept override
412 { SvxShape::release(); }
413
414 virtual void addShape(SvxShape& rShape) = 0;
415};
416
417/***********************************************************************
418* *
419***********************************************************************/
421 public css::drawing::XShapeGroup,
422 public css::drawing::XShapes2
423{
424private:
427
428 void addUnoShape( const css::uno::Reference< css::drawing::XShape >& xShape, size_t nPos );
429 void addShape(SvxShape& rShape, size_t nPos);
430
431public:
432 SvxShapeGroup(SdrObject* pObj,SvxDrawPage* pDrawPage);
433 virtual ~SvxShapeGroup() noexcept override;
434
435 virtual void Create( SdrObject* pNewOpj, SvxDrawPage* pNewPage ) override;
436
437 // XInterface
438 virtual css::uno::Any SAL_CALL queryAggregation( const css::uno::Type & rType ) override;
439 virtual css::uno::Any SAL_CALL queryInterface( const css::uno::Type & rType ) override;
440 virtual void SAL_CALL acquire() noexcept override
441 { SvxShape::acquire(); }
442 virtual void SAL_CALL release() noexcept override
443 { SvxShape::release(); }
444
445 // XShapes
446 virtual void SAL_CALL add( const css::uno::Reference< css::drawing::XShape >& xShape ) override;
447 virtual void SAL_CALL remove( const css::uno::Reference< css::drawing::XShape >& xShape ) override;
448
449 // XShapes2
450 virtual void SAL_CALL addTop( const css::uno::Reference< css::drawing::XShape >& xShape ) override;
451 virtual void SAL_CALL addBottom( const css::uno::Reference< css::drawing::XShape >& xShape ) override;
452
453 // XElementAccess
454 virtual css::uno::Type SAL_CALL getElementType() override;
455 virtual sal_Bool SAL_CALL hasElements() override;
456
457 // XIndexAccess
458 virtual sal_Int32 SAL_CALL getCount() override ;
459 virtual css::uno::Any SAL_CALL getByIndex( sal_Int32 Index ) override;
460
461 // XShapeDescriptor
462 virtual OUString SAL_CALL getShapeType() override;
463
464 // XShape
465 virtual css::awt::Point SAL_CALL getPosition() override;
466 virtual void SAL_CALL setPosition( const css::awt::Point& aPosition ) override;
467 virtual css::awt::Size SAL_CALL getSize() override;
468 virtual void SAL_CALL setSize( const css::awt::Size& aSize ) override;
469
470 // XShapeGroup
471 virtual void SAL_CALL enterGroup( ) override;
472 virtual void SAL_CALL leaveGroup( ) override;
473
474 // XTypeProvider
475 virtual css::uno::Sequence< sal_Int8 > SAL_CALL getImplementationId( ) override;
476
477 virtual void addShape(SvxShape& rShape) final override;
478};
479
480/***********************************************************************
481* *
482***********************************************************************/
483class SvxShapeConnector final : public css::drawing::XConnectorShape,
484 public SvxShapeText
485{
486public:
488 virtual ~SvxShapeConnector() noexcept override;
489
490 // XInterface
491 virtual css::uno::Any SAL_CALL queryAggregation( const css::uno::Type & rType ) override;
492 virtual css::uno::Any SAL_CALL queryInterface( const css::uno::Type & rType ) override;
493 virtual void SAL_CALL acquire() noexcept override
495 virtual void SAL_CALL release() noexcept override
497
498 // XShapeDescriptor
499 virtual OUString SAL_CALL getShapeType() override;
500
501 // XShape
502 virtual css::awt::Point SAL_CALL getPosition() override;
503 virtual void SAL_CALL setPosition( const css::awt::Point& aPosition ) override;
504 virtual css::awt::Size SAL_CALL getSize() override;
505 virtual void SAL_CALL setSize( const css::awt::Size& aSize ) override;
506
507 // XConnectorShape
508 virtual void SAL_CALL connectStart( const css::uno::Reference< css::drawing::XConnectableShape >& xShape, css::drawing::ConnectionType nPos ) override;
509 virtual void SAL_CALL connectEnd( const css::uno::Reference< css::drawing::XConnectableShape >& xShape, css::drawing::ConnectionType nPos ) override;
510 virtual void SAL_CALL disconnectBegin( const css::uno::Reference< css::drawing::XConnectableShape >& xShape ) override;
511 virtual void SAL_CALL disconnectEnd( const css::uno::Reference< css::drawing::XConnectableShape >& xShape ) override;
512
513 // XTypeProvider
514 virtual css::uno::Sequence< css::uno::Type > SAL_CALL getTypes( ) override;
515 virtual css::uno::Sequence< sal_Int8 > SAL_CALL getImplementationId( ) override;
516};
517
518/***********************************************************************
519* *
520***********************************************************************/
521class SVXCORE_DLLPUBLIC SvxShapeControl final : public css::drawing::XControlShape, public SvxShapeText
522{
523protected:
524 using SvxUnoTextRangeBase::setPropertyValue;
525 using SvxUnoTextRangeBase::getPropertyValue;
526
527public:
529 virtual ~SvxShapeControl() noexcept override;
530
531 // XInterface
532 virtual css::uno::Any SAL_CALL queryAggregation( const css::uno::Type & rType ) override;
533 virtual css::uno::Any SAL_CALL queryInterface( const css::uno::Type & rType ) override;
534 virtual void SAL_CALL acquire() noexcept override
536 virtual void SAL_CALL release() noexcept override
538
539 // XPropertySet
540 virtual void SAL_CALL setPropertyValue( const OUString& aPropertyName, const css::uno::Any& aValue ) override;
541 virtual css::uno::Any SAL_CALL getPropertyValue( const OUString& PropertyName ) override;
542
543 // XPropertyState
544 virtual css::beans::PropertyState SAL_CALL getPropertyState( const OUString& PropertyName ) override;
545 virtual void SAL_CALL setPropertyToDefault( const OUString& PropertyName ) override;
546 virtual css::uno::Any SAL_CALL getPropertyDefault( const OUString& aPropertyName ) override;
547
548 // XShapeDescriptor
549 virtual OUString SAL_CALL getShapeType() override;
550
551 // XShape
552 virtual css::awt::Point SAL_CALL getPosition() override;
553 virtual void SAL_CALL setPosition( const css::awt::Point& aPosition ) override;
554 virtual css::awt::Size SAL_CALL getSize() override;
555 virtual void SAL_CALL setSize( const css::awt::Size& aSize ) override;
556
557 // XControlShape
558 virtual css::uno::Reference< css::awt::XControlModel > SAL_CALL getControl() override;
559 virtual void SAL_CALL setControl( const css::uno::Reference< css::awt::XControlModel >& xControl ) override;
560
561 // XTypeProvider
562 virtual css::uno::Sequence< css::uno::Type > SAL_CALL getTypes( ) override;
563 virtual css::uno::Sequence< sal_Int8 > SAL_CALL getImplementationId( ) override;
564};
565
566/***********************************************************************
567* *
568***********************************************************************/
570{
571public:
573 virtual ~SvxShapeDimensioning() noexcept override;
574};
575
576/***********************************************************************
577* *
578***********************************************************************/
579class SvxShapeCircle final : public SvxShapeText
580{
581public:
583 virtual ~SvxShapeCircle() noexcept override;
584};
585
586/***********************************************************************
587* *
588***********************************************************************/
589
590// #i118485# changed parent to SvxShapeText to allow Text handling over UNO API
592{
593protected:
594 // override these for special property handling in subcasses. Return true if property is handled
595 virtual bool setPropertyValueImpl( const OUString& rName, const SfxItemPropertyMapEntry* pProperty, const css::uno::Any& rValue ) override;
596 virtual bool getPropertyValueImpl( const OUString& rName, const SfxItemPropertyMapEntry* pProperty, css::uno::Any& rValue ) override;
597
598 void resetModifiedState();
599
600 SvGlobalName GetClassName_Impl(OUString& rHexCLSID);
601public:
602 SvxOle2Shape(SdrObject* pObj);
604 virtual ~SvxOle2Shape() noexcept override;
605
606 bool createObject( const SvGlobalName &aClassName );
607
608 void createLink( const OUString& aLinkURL );
609};
610
611
612/***********************************************************************
613* *
614***********************************************************************/
615class SAL_DLLPUBLIC_RTTI SvxShapePolyPolygon final : public SvxShapeText
616{
617 using SvxUnoTextRangeBase::setPropertyValue;
618 using SvxUnoTextRangeBase::getPropertyValue;
619
620 // override these for special property handling in subcasses. Return true if property is handled
621 virtual bool setPropertyValueImpl( const OUString& rName, const SfxItemPropertyMapEntry* pProperty, const css::uno::Any& rValue ) override;
622 virtual bool getPropertyValueImpl( const OUString& rName, const SfxItemPropertyMapEntry* pProperty, css::uno::Any& rValue ) override;
623
624 // local helper to detect PolygonKind from SdrObject::GetObjIdentifier()
625 css::drawing::PolygonKind GetPolygonKind() const;
626
627public:
631 virtual ~SvxShapePolyPolygon() noexcept override;
632
633 // Local support functions
635 void SetPolygon(const basegfx::B2DPolyPolygon& rNew);
636 basegfx::B2DPolyPolygon GetPolygon() const noexcept;
637};
638
639/***********************************************************************
640* *
641***********************************************************************/
642
643class SvxGraphicObject final : public SvxShapeText
644{
645 using SvxUnoTextRangeBase::setPropertyValue;
646 using SvxUnoTextRangeBase::getPropertyValue;
647
648 // override these for special property handling in subcasses. Return true if property is handled
649 virtual bool setPropertyValueImpl( const OUString& rName, const SfxItemPropertyMapEntry* pProperty, const css::uno::Any& rValue ) override;
650 virtual bool getPropertyValueImpl( const OUString& rName, const SfxItemPropertyMapEntry* pProperty, css::uno::Any& rValue ) override;
651
652public:
654 virtual ~SvxGraphicObject() noexcept override;
655};
656
657/***********************************************************************
658* *
659***********************************************************************/
660class SAL_DLLPUBLIC_RTTI Svx3DSceneObject final : public SvxShapeGroupAnyD
661{
662private:
664
665protected:
668
669public:
671 // override these for special property handling in subcasses. Return true if property is handled
672 virtual bool setPropertyValueImpl( const OUString& rName, const SfxItemPropertyMapEntry* pProperty, const css::uno::Any& rValue ) override;
673 virtual bool getPropertyValueImpl(const OUString& rName, const SfxItemPropertyMapEntry* pProperty,
674 css::uno::Any& rValue ) override;
675
676 virtual ~Svx3DSceneObject() noexcept override;
677
678 virtual void Create( SdrObject* pNewOpj, SvxDrawPage* pNewPage ) override;
679
680 // XInterface
681 virtual css::uno::Any SAL_CALL queryAggregation( const css::uno::Type & rType ) override;
682 virtual css::uno::Any SAL_CALL queryInterface( const css::uno::Type & rType ) override;
683 virtual void SAL_CALL acquire() noexcept override
684 { SvxShape::acquire(); }
685 virtual void SAL_CALL release() noexcept override
686 { SvxShape::release(); }
687
688 // XShapes
689 virtual void SAL_CALL add( const css::uno::Reference< css::drawing::XShape >& xShape ) override;
690 virtual void SAL_CALL remove( const css::uno::Reference< css::drawing::XShape >& xShape ) override;
691
692 // XElementAccess
693 virtual css::uno::Type SAL_CALL getElementType( ) override;
694 virtual sal_Bool SAL_CALL hasElements( ) override;
695
696 // XIndexAccess
697 virtual sal_Int32 SAL_CALL getCount( ) override ;
698 virtual css::uno::Any SAL_CALL getByIndex( sal_Int32 Index ) override;
699
700 // XServiceInfo
701 virtual css::uno::Sequence< OUString > SAL_CALL getSupportedServiceNames() override;
702
703 // XTypeProvider
704 virtual css::uno::Sequence< sal_Int8 > SAL_CALL getImplementationId( ) override;
705
706 virtual void addShape(SvxShape& rShape) override final;
707};
708
709/***********************************************************************
710* *
711***********************************************************************/
712class Svx3DCubeObject final : public SvxShape
713{
714 // override these for special property handling in subcasses. Return true if property is handled
715 virtual bool setPropertyValueImpl( const OUString& rName, const SfxItemPropertyMapEntry* pProperty, const css::uno::Any& rValue ) override;
716 virtual bool getPropertyValueImpl( const OUString& rName, const SfxItemPropertyMapEntry* pProperty, css::uno::Any& rValue ) override;
717
718public:
720 virtual ~Svx3DCubeObject() noexcept override;
721
722 // XServiceInfo
723 virtual css::uno::Sequence< OUString > SAL_CALL getSupportedServiceNames( ) override;
724};
725
726/***********************************************************************
727* *
728***********************************************************************/
729class Svx3DSphereObject final : public SvxShape
730{
731public:
733private:
734 // override these for special property handling in subcasses. Return true if property is handled
735 virtual bool setPropertyValueImpl( const OUString& rName, const SfxItemPropertyMapEntry* pProperty, const css::uno::Any& rValue ) override;
736 virtual bool getPropertyValueImpl( const OUString& rName, const SfxItemPropertyMapEntry* pProperty, css::uno::Any& rValue ) override;
737
738 virtual ~Svx3DSphereObject() noexcept override;
739
740 // XServiceInfo
741 virtual css::uno::Sequence< OUString > SAL_CALL getSupportedServiceNames( ) override;
742};
743
744/***********************************************************************
745* *
746***********************************************************************/
747class Svx3DLatheObject final : public SvxShape
748{
749 // override these for special property handling in subcasses. Return true if property is handled
750 virtual bool setPropertyValueImpl( const OUString& rName, const SfxItemPropertyMapEntry* pProperty, const css::uno::Any& rValue ) override;
751 virtual bool getPropertyValueImpl( const OUString& rName, const SfxItemPropertyMapEntry* pProperty, css::uno::Any& rValue ) override;
752
753public:
755 virtual ~Svx3DLatheObject() noexcept override;
756
757 // XServiceInfo
758 virtual css::uno::Sequence< OUString > SAL_CALL getSupportedServiceNames( ) override;
759};
760
761/***********************************************************************
762* *
763***********************************************************************/
764class Svx3DExtrudeObject final : public SvxShape
765{
766public:
768private:
769 // override these for special property handling in subcasses. Return true if property is handled
770 virtual bool setPropertyValueImpl( const OUString& rName, const SfxItemPropertyMapEntry* pProperty, const css::uno::Any& rValue ) override;
771 virtual bool getPropertyValueImpl( const OUString& rName, const SfxItemPropertyMapEntry* pProperty, css::uno::Any& rValue ) override;
772
773 virtual ~Svx3DExtrudeObject() noexcept override;
774
775 // XServiceInfo
776 virtual css::uno::Sequence< OUString > SAL_CALL getSupportedServiceNames( ) override;
777};
778
779/***********************************************************************
780* *
781***********************************************************************/
782class Svx3DPolygonObject final : public SvxShape
783{
784 // override these for special property handling in subcasses. Return true if property is handled
785 virtual bool setPropertyValueImpl( const OUString& rName, const SfxItemPropertyMapEntry* pProperty, const css::uno::Any& rValue ) override;
786 virtual bool getPropertyValueImpl( const OUString& rName, const SfxItemPropertyMapEntry* pProperty, css::uno::Any& rValue ) override;
787
788public:
790 virtual ~Svx3DPolygonObject() noexcept override;
791
792 // XServiceInfo
793 virtual css::uno::Sequence< OUString > SAL_CALL getSupportedServiceNames( ) override;
794};
795
796/***********************************************************************
797* *
798***********************************************************************/
799class SVXCORE_DLLPUBLIC SvxCustomShape final : public SvxShapeText, public css::drawing::XEnhancedCustomShapeDefaulter
800{
801protected:
802 using SvxUnoTextRangeBase::setPropertyValue;
803 using SvxUnoTextRangeBase::getPropertyValue;
804
805public:
807 // override these for special property handling in subcasses. Return true if property is handled
808 virtual bool getPropertyValueImpl( const OUString& rName, const SfxItemPropertyMapEntry* pProperty, css::uno::Any& rValue ) override;
809
810
811 virtual ~SvxCustomShape() noexcept override;
812
813 // XInterface
814 virtual css::uno::Any SAL_CALL queryAggregation( const css::uno::Type & rType ) override;
815 virtual css::uno::Any SAL_CALL queryInterface( const css::uno::Type & rType ) override;
816 virtual void SAL_CALL acquire() noexcept override
818 virtual void SAL_CALL release() noexcept override
820
821 // XShape
822 virtual css::awt::Point SAL_CALL getPosition() override;
823
824 // XPropertySet
825 void SAL_CALL setPropertyValue( const OUString& aPropertyName, const css::uno::Any& aValue ) override;
826
827 // XTypeProvider
828 virtual css::uno::Sequence< sal_Int8 > SAL_CALL getImplementationId( ) override;
829
830 //XEnhancedCustomShapeDefaulter
831 virtual void SAL_CALL createCustomShapeDefaults( const OUString& rShapeType ) override;
832};
833
834/***********************************************************************
835* *
836***********************************************************************/
837
838class SvxMediaShape final : public SvxShape
839{
840public:
841 SvxMediaShape(SdrObject* pObj, OUString referer);
842 virtual ~SvxMediaShape() noexcept override;
843
844private:
845 // override these for special property handling in subcasses. Return true if property is handled
846 virtual bool setPropertyValueImpl( const OUString& rName, const SfxItemPropertyMapEntry* pProperty, const css::uno::Any& rValue ) override;
847 virtual bool getPropertyValueImpl( const OUString& rName, const SfxItemPropertyMapEntry* pProperty, css::uno::Any& rValue ) override;
848 bool getPropertyStateImpl(const SfxItemPropertyMapEntry* pProperty,
849 css::beans::PropertyState& rState) override;
850
851 OUString referer_;
852};
853
854#endif
855
856/* vim:set shiftwidth=4 softtabstop=4 expandtab: */
struct _ADOIndex Index
virtual css::uno::Sequence< OUString > SAL_CALL getSupportedServiceNames() override
virtual css::uno::Reference< css::beans::XPropertySetInfo > SAL_CALL getPropertySetInfo() override
virtual void SAL_CALL setPropertyValue(const OUString &aPropertyName, const css::uno::Any &aValue) override
virtual css::uno::Any SAL_CALL getPropertyValue(const OUString &PropertyName) override
virtual void SAL_CALL setPropertyToDefault(const OUString &PropertyName) override
virtual void dispose() override
virtual css::uno::Any SAL_CALL getPropertyDefault(const OUString &aPropertyName) override
virtual css::beans::PropertyState SAL_CALL getPropertyState(const OUString &PropertyName) override
Abstract DrawObject.
Definition: svdobj.hxx:260
virtual void Notify(SfxBroadcaster &rBC, const SfxHint &rHint)
virtual ~Svx3DCubeObject() noexcept override
Definition: unoshap3.cxx:431
virtual css::uno::Sequence< OUString > SAL_CALL getSupportedServiceNames() override
Definition: unoshap3.cxx:539
virtual bool setPropertyValueImpl(const OUString &rName, const SfxItemPropertyMapEntry *pProperty, const css::uno::Any &rValue) override
Definition: unoshap3.cxx:435
virtual bool getPropertyValueImpl(const OUString &rName, const SfxItemPropertyMapEntry *pProperty, css::uno::Any &rValue) override
Definition: unoshap3.cxx:490
Svx3DCubeObject(SdrObject *pObj)
Definition: unoshap3.cxx:426
virtual bool getPropertyValueImpl(const OUString &rName, const SfxItemPropertyMapEntry *pProperty, css::uno::Any &rValue) override
Definition: unoshap3.cxx:876
virtual css::uno::Sequence< OUString > SAL_CALL getSupportedServiceNames() override
Definition: unoshap3.cxx:907
virtual bool setPropertyValueImpl(const OUString &rName, const SfxItemPropertyMapEntry *pProperty, const css::uno::Any &rValue) override
Definition: unoshap3.cxx:841
virtual ~Svx3DExtrudeObject() noexcept override
Definition: unoshap3.cxx:837
SVXCORE_DLLPUBLIC Svx3DExtrudeObject(SdrObject *pObj)
Definition: unoshap3.cxx:832
SVXCORE_DLLPUBLIC Svx3DLatheObject(SdrObject *pObj)
Definition: unoshap3.cxx:652
virtual ~Svx3DLatheObject() noexcept override
Definition: unoshap3.cxx:657
virtual css::uno::Sequence< OUString > SAL_CALL getSupportedServiceNames() override
Definition: unoshap3.cxx:824
virtual bool getPropertyValueImpl(const OUString &rName, const SfxItemPropertyMapEntry *pProperty, css::uno::Any &rValue) override
Definition: unoshap3.cxx:795
virtual bool setPropertyValueImpl(const OUString &rName, const SfxItemPropertyMapEntry *pProperty, const css::uno::Any &rValue) override
Definition: unoshap3.cxx:749
virtual css::uno::Sequence< OUString > SAL_CALL getSupportedServiceNames() override
Definition: unoshap3.cxx:1043
virtual ~Svx3DPolygonObject() noexcept override
Definition: unoshap3.cxx:920
virtual bool getPropertyValueImpl(const OUString &rName, const SfxItemPropertyMapEntry *pProperty, css::uno::Any &rValue) override
Definition: unoshap3.cxx:997
SVXCORE_DLLPUBLIC Svx3DPolygonObject(SdrObject *pObj)
Definition: unoshap3.cxx:915
virtual bool setPropertyValueImpl(const OUString &rName, const SfxItemPropertyMapEntry *pProperty, const css::uno::Any &rValue) override
Definition: unoshap3.cxx:924
rtl::Reference< SvxDrawPage > mxPage
Definition: unoshape.hxx:663
virtual void SAL_CALL release() noexcept override
Definition: unoshape.hxx:685
virtual bool setPropertyValueImpl(const OUString &rName, const SfxItemPropertyMapEntry *pProperty, const css::uno::Any &rValue) override
Definition: unoshap3.cxx:556
virtual css::uno::Sequence< OUString > SAL_CALL getSupportedServiceNames() override
Definition: unoshap3.cxx:644
virtual bool getPropertyValueImpl(const OUString &rName, const SfxItemPropertyMapEntry *pProperty, css::uno::Any &rValue) override
Definition: unoshap3.cxx:600
Svx3DSphereObject(SdrObject *pObj)
Definition: unoshap3.cxx:547
virtual ~Svx3DSphereObject() noexcept override
Definition: unoshap3.cxx:552
virtual void SAL_CALL release() noexcept override
Definition: unoshape.hxx:818
virtual void SAL_CALL acquire() noexcept override
Definition: unoshape.hxx:816
virtual ~SvxGraphicObject() noexcept override
Definition: unoshap2.cxx:1177
SVXCORE_DLLPUBLIC SvxGraphicObject(SdrObject *pObj)
Definition: unoshap2.cxx:1172
virtual bool getPropertyValueImpl(const OUString &rName, const SfxItemPropertyMapEntry *pProperty, css::uno::Any &rValue) override
Definition: unoshap2.cxx:1415
virtual bool setPropertyValueImpl(const OUString &rName, const SfxItemPropertyMapEntry *pProperty, const css::uno::Any &rValue) override
Definition: unoshap2.cxx:1181
virtual bool setPropertyValueImpl(const OUString &rName, const SfxItemPropertyMapEntry *pProperty, const css::uno::Any &rValue) override
Definition: unoshap4.cxx:782
virtual bool getPropertyValueImpl(const OUString &rName, const SfxItemPropertyMapEntry *pProperty, css::uno::Any &rValue) override
Definition: unoshap4.cxx:956
bool getPropertyStateImpl(const SfxItemPropertyMapEntry *pProperty, css::beans::PropertyState &rState) override
Definition: unoshap4.cxx:1074
OUString referer_
Definition: unoshape.hxx:851
virtual ~SvxMediaShape() noexcept override
Definition: unoshap4.cxx:777
SvxMediaShape(SdrObject *pObj, OUString referer)
Definition: unoshap4.cxx:769
virtual ~SvxShapeCircle() noexcept override
Definition: unoshap2.cxx:892
SVXCORE_DLLPUBLIC SvxShapeCircle(SdrObject *pObj)
Definition: unoshap2.cxx:887
virtual css::uno::Any SAL_CALL queryInterface(const css::uno::Type &rType) override
Definition: unoshap2.cxx:360
virtual void SAL_CALL release() noexcept override
Definition: unoshape.hxx:495
virtual ~SvxShapeConnector() noexcept override
Definition: unoshap2.cxx:355
virtual css::awt::Point SAL_CALL getPosition() override
Definition: unoshap2.cxx:396
virtual void SAL_CALL setPosition(const css::awt::Point &aPosition) override
Definition: unoshap2.cxx:402
virtual void SAL_CALL disconnectEnd(const css::uno::Reference< css::drawing::XConnectableShape > &xShape) override
Definition: unoshap2.cxx:461
virtual css::uno::Sequence< css::uno::Type > SAL_CALL getTypes() override
Definition: unoshap2.cxx:378
virtual OUString SAL_CALL getShapeType() override
Definition: unoshap2.cxx:391
virtual css::awt::Size SAL_CALL getSize() override
Definition: unoshap2.cxx:408
virtual void SAL_CALL acquire() noexcept override
Definition: unoshape.hxx:493
virtual void SAL_CALL disconnectBegin(const css::uno::Reference< css::drawing::XConnectableShape > &xShape) override
Definition: unoshap2.cxx:450
virtual void SAL_CALL connectStart(const css::uno::Reference< css::drawing::XConnectableShape > &xShape, css::drawing::ConnectionType nPos) override
Definition: unoshap2.cxx:422
virtual css::uno::Sequence< sal_Int8 > SAL_CALL getImplementationId() override
Definition: unoshap2.cxx:383
virtual void SAL_CALL connectEnd(const css::uno::Reference< css::drawing::XConnectableShape > &xShape, css::drawing::ConnectionType nPos) override
Definition: unoshap2.cxx:436
virtual css::uno::Any SAL_CALL queryAggregation(const css::uno::Type &rType) override
Definition: unoshap2.cxx:365
virtual void SAL_CALL setSize(const css::awt::Size &aSize) override
Definition: unoshap2.cxx:414
virtual void SAL_CALL release() noexcept override
Definition: unoshape.hxx:536
virtual void SAL_CALL acquire() noexcept override
Definition: unoshape.hxx:534
SvxShapeDimensioning(SdrObject *pObj)
Definition: unoshap2.cxx:878
virtual ~SvxShapeDimensioning() noexcept override
Definition: unoshap2.cxx:883
This only exists so I have a common base class for SvxShapeGroup and Svx3DSceneObject.
Definition: unoshape.hxx:404
virtual void SAL_CALL release() noexcept override
Definition: unoshape.hxx:411
virtual void SAL_CALL acquire() noexcept override
Definition: unoshape.hxx:409
virtual void addShape(SvxShape &rShape)=0
unotools::WeakReference< SvxDrawPage > mxWeakPage
using a weak reference to prevent leaks via ref-counting cycles
Definition: unoshape.hxx:426
virtual void SAL_CALL release() noexcept override
Definition: unoshape.hxx:442
this abstract class is the interface for an instance that likes to enhance the functionality of compo...
Definition: unomaster.hxx:34
virtual void SAL_CALL release() noexcept override
Definition: unoshape.hxx:394
virtual void SAL_CALL acquire() noexcept override
Definition: unoshape.hxx:392
virtual void SAL_CALL acquire() noexcept override
Definition: unoshape.hxx:359
virtual bool getPropertyValueImpl(const OUString &rName, const SfxItemPropertyMapEntry *pProperty, css::uno::Any &rValue) override
Definition: unoshape.cxx:3943
virtual css::uno::Any SAL_CALL queryAggregation(const css::uno::Type &rType) override
Definition: unoshape.cxx:3811
virtual css::uno::Sequence< sal_Int8 > SAL_CALL getImplementationId() override
Definition: unoshape.cxx:3857
virtual void SAL_CALL release() noexcept override
Definition: unoshape.hxx:361
virtual css::uno::Any SAL_CALL queryInterface(const css::uno::Type &rType) override
Definition: unoshape.cxx:3805
virtual css::uno::Sequence< OUString > SAL_CALL getSupportedServiceNames() override
Definition: unoshape.cxx:3829
virtual bool setPropertyValueImpl(const OUString &rName, const SfxItemPropertyMapEntry *pProperty, const css::uno::Any &rValue) override
Definition: unoshape.cxx:3920
o3tl::span< const SfxItemPropertyMapEntry > maPropMapEntries
Definition: unoshape.hxx:327
o3tl::span< const SfxItemPropertyMapEntry > getPropertyMapEntries() const
Definition: unoshape.hxx:134
OUString maShapeType
Definition: unoshape.hxx:318
SvxItemPropertySetUsrAnys maUrsAnys
Definition: unoshape.hxx:326
void ForceMetricTo100th_mm(Point &rPoint) const noexcept
Definition: unoshape.hxx:113
rtl::Reference< SdrObject > mxSdrObject
Definition: unoshape.hxx:328
void ForceMetricToItemPoolMetric(Size &rPoint) const noexcept
Definition: unoshape.hxx:111
bool mbIsMultiPropertyCall
Definition: unoshape.hxx:322
void ForceMetricTo100th_mm(Size &rPoint) const noexcept
Definition: unoshape.hxx:114
bool HasSdrObject() const
Definition: unoshape.hxx:173
void ForceMetricToItemPoolMetric(Point &rPoint) const noexcept
Definition: unoshape.hxx:110
sal_uInt16 mnLockCount
used from the XActionLockable interface
Definition: unoshape.hxx:330
OUString maShapeName
Definition: unoshape.hxx:319
css::uno::WeakReference< css::container::XIndexContainer > mxGluePoints
Definition: unoshape.hxx:324
virtual css::uno::Any SAL_CALL getPropertyValue(const OUString &PropertyName) override
Definition: unoshape.cxx:1617
std::mutex m_aMutex
Definition: unoshape.hxx:315
void SetShapeType(const OUString &ShapeType)
Definition: unoshape.hxx:175
friend class SvxShapeConnector
Definition: unoshape.hxx:105
std::unique_ptr< SvxShapeImpl > mpImpl
these members are used to optimize XMultiProperty calls
Definition: unoshape.hxx:321
virtual void SAL_CALL setPropertyValue(const OUString &aPropertyName, const css::uno::Any &aValue) override
Definition: unoshape.cxx:1478
const SvxItemPropertySet * mpPropSet
Definition: unoshape.hxx:325
css::awt::Size maSize
Definition: unoshape.hxx:316
css::awt::Point maPosition
Definition: unoshape.hxx:317
virtual sal_Bool SAL_CALL hasElements() override
virtual css::uno::Type SAL_CALL getElementType() override
virtual css::uno::Any SAL_CALL queryInterface(css::uno::Type const &rType) SAL_OVERRIDE
virtual void SAL_CALL acquire() SAL_NOEXCEPT SAL_OVERRIDE
virtual css::uno::Sequence< sal_Int8 > SAL_CALL getImplementationId() SAL_OVERRIDE
virtual css::uno::Sequence< css::uno::Type > SAL_CALL getTypes() SAL_OVERRIDE
virtual css::uno::Any SAL_CALL queryAggregation(css::uno::Type const &rType) SAL_OVERRIDE
virtual void SAL_CALL release() SAL_NOEXCEPT SAL_OVERRIDE
EmbeddedObjectRef * pObject
class SAL_NO_VTABLE XPropertySet
Definition: xmlexchg.hxx:28
OUStringBuffer & remove(OUStringBuffer &rIn, sal_Unicode c)
OUString getString(const Any &_rAny)
css::uno::Sequence< OUString > getSupportedServiceNames()
OUString getImplementationName()
std::shared_ptr< osl::Mutex > const & lock()
Type
css::uno::Any SAL_CALL queryInterface(const css::uno::Type &rType, Interface1 *p1)
bool CPPUHELPER_DLLPUBLIC supportsService(css::lang::XServiceInfo *implementation, rtl::OUString const &name)
void Create(SwFormatVertOrient &rItem, SvStream &rStrm, sal_uInt16 nVersionAbusedAsSize)
VBAHELPER_DLLPUBLIC bool setPropertyValue(css::uno::Sequence< css::beans::PropertyValue > &aProp, const OUString &aName, const css::uno::Any &aValue)
bool getPropertyValue(ValueType &rValue, css::uno::Reference< css::beans::XPropertySet > const &xPropSet, OUString const &propName)
#define UNO3_GETIMPLEMENTATION_DECL(classname)
SdrObjKind
Definition: svdobjkind.hxx:25
#define SVX_DLLPRIVATE
Definition: svxdllapi.h:30
#define SVXCORE_DLLPUBLIC
Definition: svxdllapi.h:35
unsigned char sal_Bool
void SVXCORE_DLLPUBLIC SvxItemPropertySet_setPropertyValue(const SfxItemPropertyMapEntry *pMap, const css::uno::Any &rVal, SfxItemSet &rSet)
::cppu::WeakAggImplHelper12< css::drawing::XShape, css::lang::XComponent, css::beans::XPropertySet, css::beans::XMultiPropertySet, css::beans::XPropertyState, css::lang::XUnoTunnel, css::container::XNamed, css::drawing::XGluePointsSupplier, css::container::XChild, css::lang::XServiceInfo, css::document::XActionLockable, css::beans::XMultiPropertyStates > SvxShape_UnoImplHelper
Definition: unoshape.hxx:97
css::uno::Any SVXCORE_DLLPUBLIC SvxItemPropertySet_getPropertyValue(const SfxItemPropertyMapEntry *pMap, const SfxItemSet &rSet)
Definition: unoshape.cxx:4008