36#include <com/sun/star/beans/PropertyAttribute.hpp>
37#include <com/sun/star/drawing/XShape.hpp>
38#include <com/sun/star/lang/NoSupportException.hpp>
47#include <unonames.hxx>
66 return aShapeMap_Impl;
73 { SvMacroItemId::NONE,
nullptr }
75 return aMacroDescriptionsImpl;
86 pShapePropertySet(nullptr),
87 pShapePropertyState(nullptr),
104 xShape.set(uno::Reference<drawing::XShape>(
mxShapeAgg, uno::UNO_QUERY ));
130 uno::Any aRet = ScShapeObj_Base::queryInterface( rType );
146 OWeakObject::acquire();
151 OWeakObject::release();
161 uno::Reference<beans::XPropertySet> xProp;
175 uno::Reference<beans::XPropertyState> xState;
182static uno::Reference<lang::XComponent>
lcl_GetComponent(
const uno::Reference<uno::XAggregation>& xAgg )
184 uno::Reference<lang::XComponent> xRet;
190static uno::Reference<text::XText>
lcl_GetText(
const uno::Reference<uno::XAggregation>& xAgg )
192 uno::Reference<text::XText> xRet;
198static uno::Reference<text::XSimpleText>
lcl_GetSimpleText(
const uno::Reference<uno::XAggregation>& xAgg )
200 uno::Reference<text::XSimpleText> xRet;
206static uno::Reference<text::XTextRange>
lcl_GetTextRange(
const uno::Reference<uno::XAggregation>& xAgg )
208 uno::Reference<text::XTextRange> xRet;
227 uno::Reference<beans::XPropertySetInfo> xAggInfo(
pShapePropertySet->getPropertySetInfo());
228 const uno::Sequence<beans::Property> aPropSeq(xAggInfo->getProperties());
241 rNum =
static_cast<SCTAB>(
i);
248static bool lcl_GetCaptionPoint(
const uno::Reference< drawing::XShape >& xShape, awt::Point& rCaptionPoint )
250 bool bReturn =
false;
251 OUString
sType(xShape->getShapeType());
252 bool bCaptionShape(
sType ==
"com.sun.star.drawing.CaptionShape" );
255 uno::Reference < beans::XPropertySet > xShapeProp (xShape, uno::UNO_QUERY);
258 xShapeProp->getPropertyValue(
"CaptionPoint") >>= rCaptionPoint;
266 awt::Point& rUnoPoint, awt::Size& rUnoSize, awt::Point& rCaptionPoint )
269 rUnoPoint = xShape->getPosition();
273 rUnoSize = xShape->getSize();
274 rUnoPoint.X += rUnoSize.Width;
277 if (rCaptionPoint.X > 0 && rCaptionPoint.X > rUnoSize.Width)
278 rUnoPoint.X += rCaptionPoint.X - rUnoSize.Width;
279 if (rCaptionPoint.Y < 0)
280 rUnoPoint.Y += rCaptionPoint.Y;
288 if (rCaptionPoint.X < 0)
289 rUnoPoint.X += rCaptionPoint.X;
290 if (rCaptionPoint.Y < 0)
291 rUnoPoint.Y += rCaptionPoint.Y;
300 awt::Size& rUnoSize, awt::Point& rCaptionPoint)
302 awt::Point aUnoPoint;
303 rRange =
lcl_GetAnchorCell(xShape, pDoc, nTab, aUnoPoint, rUnoSize, rCaptionPoint);
306 aUnoPoint.
X -= aPoint.
X();
307 aUnoPoint.Y -= aPoint.
Y();
317 uno::Reference<sheet::XCellRangeAddressable> xRangeAdd(aValue, uno::UNO_QUERY);
319 throw lang::IllegalArgumentException(
"only XCell or XSpreadsheet objects allowed", getXWeak(), 0);
334 if (
auto pDocSh =
dynamic_cast<ScDocShell*
>( pObjSh) )
339 table::CellRangeAddress aAddress = xRangeAdd->getRangeAddress();
340 if (nTab == aAddress.Sheet)
343 static_cast<SCCOL>(aAddress.EndColumn),
static_cast<SCROW>(aAddress.EndRow), aAddress.Sheet ));
344 awt::Point aRelPoint;
345 uno::Reference<drawing::XShape> xShape(
mxShapeAgg, uno::UNO_QUERY );
361 awt::Point aCaptionPoint;
363 aRelPoint =
lcl_GetRelativePos( xShape, pDoc, nTab, aRange, aUnoSize, aCaptionPoint );
364 awt::Point aUnoPoint(aRelPoint);
366 aUnoPoint.X += aPoint.
X();
367 aUnoPoint.Y += aPoint.
Y();
369 if ( aUnoPoint.Y > aEndPoint.
Y() )
370 aUnoPoint.Y = aEndPoint.
Y() - 2;
373 if ( aUnoPoint.X < aEndPoint.
X() )
374 aUnoPoint.X = aEndPoint.
X() + 2;
375 aUnoPoint.X -= aUnoSize.Width;
377 if (aCaptionPoint.X > 0 && aCaptionPoint.X > aUnoSize.Width)
378 aUnoPoint.X -= aCaptionPoint.X - aUnoSize.Width;
382 if ( aUnoPoint.X > aEndPoint.
X() )
383 aUnoPoint.X = aEndPoint.
X() - 2;
384 if (aCaptionPoint.X < 0)
385 aUnoPoint.X -= aCaptionPoint.X;
387 if (aCaptionPoint.Y < 0)
388 aUnoPoint.Y -= aCaptionPoint.Y;
390 xShape->setPosition(aUnoPoint);
391 pDocSh->SetModified();
394 if (aAddress.StartRow != aAddress.EndRow)
396 OSL_ENSURE(aAddress.StartRow == 0 && aAddress.EndRow == pDoc->
MaxRow() &&
397 aAddress.StartColumn == 0 && aAddress.EndColumn == pDoc->
MaxCol(),
"here should be a XSpreadsheet");
402 OSL_ENSURE(aAddress.StartRow == aAddress.EndRow &&
403 aAddress.StartColumn == aAddress.EndColumn,
"here should be a XCell");
405 aAnchor.
maStart =
ScAddress(aAddress.StartColumn, aAddress.StartRow, aAddress.Sheet);
449 uno::Reference< uno::XInterface > xImageMapInt(aValue, uno::UNO_QUERY);
452 throw lang::IllegalArgumentException();
487 if (
auto pDocSh =
dynamic_cast<ScDocShell*
>( pObjSh) )
489 uno::Reference<drawing::XShape> xShape(
mxShapeAgg, uno::UNO_QUERY );
494 awt::Point aPoint(xShape->getPosition());
495 awt::Size aSize(xShape->getSize());
496 awt::Point aCaptionPoint;
506 if (aCaptionPoint.X > 0 && aCaptionPoint.X > aSize.Width)
507 nPos -= aCaptionPoint.X - aSize.Width;
511 if (aCaptionPoint.X < 0)
512 nPos -= aCaptionPoint.X;
516 xShape->setPosition(aPoint);
517 pDocSh->SetModified();
524 awt::Point aCaptionPoint;
526 awt::Point aUnoPoint(
lcl_GetRelativePos( xShape, pDoc, nTab, aRange, aUnoSize, aCaptionPoint ));
533 aUnoPoint.X += aPoint.
X();
534 if (aUnoPoint.X < aEndPoint.
X())
535 aUnoPoint.X = aEndPoint.
X() + 2;
536 aUnoPoint.X -= aUnoSize.Width;
537 if (aCaptionPoint.X > 0 && aCaptionPoint.X > aUnoSize.Width)
538 aUnoPoint.X -= aCaptionPoint.X - aUnoSize.Width;
545 aUnoPoint.X += aPoint.
X();
546 if (aUnoPoint.X > aEndPoint.
X())
547 aUnoPoint.X = aEndPoint.
X() - 2;
548 if (aCaptionPoint.X < 0)
549 aUnoPoint.X -= aCaptionPoint.X;
551 aUnoPoint.Y = xShape->getPosition().Y;
552 xShape->setPosition(aUnoPoint);
553 pDocSh->SetModified();
557 OSL_FAIL(
"unknown anchor type");
587 if (
auto pDocSh =
dynamic_cast<ScDocShell*
>( pObjSh) )
589 uno::Reference<drawing::XShape> xShape(
mxShapeAgg, uno::UNO_QUERY );
594 awt::Point aPoint = xShape->getPosition();
595 awt::Point aCaptionPoint;
598 if (aCaptionPoint.Y < 0)
599 nPos -= aCaptionPoint.Y;
602 xShape->setPosition(aPoint);
603 pDocSh->SetModified();
610 awt::Point aCaptionPoint;
612 awt::Point aUnoPoint(
lcl_GetRelativePos( xShape, pDoc, nTab, aRange, aUnoSize, aCaptionPoint ));
617 aUnoPoint.Y += aPoint.
Y();
618 if (aUnoPoint.Y > aEndPoint.
Y())
619 aUnoPoint.Y = aEndPoint.
Y() - 2;
620 if (aCaptionPoint.Y < 0)
621 aUnoPoint.Y -= aCaptionPoint.Y;
622 aUnoPoint.X = xShape->getPosition().X;
623 xShape->setPosition(aUnoPoint);
624 pDocSh->SetModified();
628 OSL_FAIL(
"unknown anchor type");
643 if (pObj && (aValue >>= sHyperlink))
651 if( aValue >>= aProt )
652 pObj->SetMoveProtect( aProt );
659 uno::Reference<style::XStyle> xStyle(aValue, uno::UNO_QUERY);
660 auto pStyleSheetObj =
dynamic_cast<ScStyleObj*
>(xStyle.get());
662 throw lang::IllegalArgumentException();
664 auto pStyleSheet = pStyleSheetObj->GetStyle_Impl();
665 auto pOldStyleSheet = pObj->GetStyleSheet();
667 if (pStyleSheet != pOldStyleSheet)
668 pObj->SetStyleSheet(
static_cast<SfxStyleSheet*
>(pStyleSheet),
false);
701 if (
auto pDocSh =
dynamic_cast<ScDocShell*
>( pObjSh) )
703 uno::Reference< uno::XInterface > xAnchor;
705 xAnchor.set(cppu::getXWeak(
new ScCellObj( pDocSh, pAnchor->maStart)));
717 bool bIsResizeWithCell =
false;
724 aAny <<= bIsResizeWithCell;
728 uno::Reference< uno::XInterface > xImageMap;
741 aAny <<= uno::Reference< container::XIndexContainer >::query( xImageMap );
759 uno::Reference<drawing::XShape> xShape(
mxShapeAgg, uno::UNO_QUERY );
766 awt::Point aCaptionPoint;
768 awt::Point aUnoPoint(
lcl_GetRelativePos( xShape, pDoc, nTab, aRange, aUnoSize, aCaptionPoint ));
771 aAny <<= aUnoPoint.X;
775 awt::Point aCaptionPoint;
776 awt::Point aUnoPoint(xShape->getPosition());
777 awt::Size aUnoSize(xShape->getSize());
781 aUnoPoint.X -= aUnoSize.Width;
787 if (aCaptionPoint.X > 0 && aCaptionPoint.X > aUnoSize.Width)
788 aUnoPoint.X -= aCaptionPoint.X - aUnoSize.Width;
792 if (aCaptionPoint.X < 0)
793 aUnoPoint.X += aCaptionPoint.X;
796 aAny <<= aUnoPoint.X;
820 uno::Reference<drawing::XShape> xShape(
mxShapeAgg, uno::UNO_QUERY );
827 awt::Point aCaptionPoint;
829 awt::Point aUnoPoint(
lcl_GetRelativePos( xShape, pDoc, nTab, aRange, aUnoSize, aCaptionPoint ));
831 aAny <<= aUnoPoint.Y;
835 awt::Point aUnoPoint(xShape->getPosition());
836 awt::Point aCaptionPoint;
839 if (aCaptionPoint.Y < 0)
840 aUnoPoint.Y += aCaptionPoint.Y;
842 aAny <<= aUnoPoint.Y;
855 sHlink = pObj->getHyperlink();
862 aProt = pObj->IsMoveProtect();
869 if (
auto pStyleSheet = pObj->GetStyleSheet())
873 aAny <<= uno::Reference<style::XStyle>(
new ScStyleObj(
875 SfxStyleFamily::Frame, pStyleSheet->
GetName()));
891 const uno::Reference<beans::XPropertyChangeListener>& aListener)
901 const uno::Reference<beans::XPropertyChangeListener>& aListener)
911 const uno::Reference<beans::XVetoableChangeListener>& aListener)
921 const uno::Reference<beans::XVetoableChangeListener>& aListener)
936 beans::PropertyState eRet = beans::PropertyState_DIRECT_VALUE;
964 const uno::Sequence<OUString>& aPropertyNames )
970 uno::Sequence<beans::PropertyState> aRet(aPropertyNames.getLength());
971 std::transform(aPropertyNames.begin(), aPropertyNames.end(), aRet.getArray(),
972 [
this](
const OUString& rName) -> beans::PropertyState { return getPropertyState(rName); });
1014 aAny <<= uno::Reference< container::XIndexContainer >::query( xImageMap );
1030 throw lang::IllegalArgumentException();
1037 uno::Reference<text::XTextRange> xRet;
1046 if ( pPage && pDoc )
1049 if (
auto pDocSh =
dynamic_cast<ScDocShell*
>( pObjSh) )
1075 if ( xAggComp.is() )
1076 xAggComp->dispose();
1080 const uno::Reference<lang::XEventListener>& xListener )
1085 if ( xAggComp.is() )
1086 xAggComp->addEventListener(xListener);
1090 const uno::Reference<lang::XEventListener>& xListener )
1095 if ( xAggComp.is() )
1096 xAggComp->removeEventListener(xListener);
1102static void lcl_CopyOneProperty( beans::XPropertySet& rDest, beans::XPropertySet& rSource,
const OUString& aNameStr )
1106 rDest.setPropertyValue( aNameStr, rSource.getPropertyValue( aNameStr ) );
1108 catch (uno::Exception&)
1115 const uno::Reference<text::XTextContent>& xContent,
1120 uno::Reference<text::XTextContent> xEffContent;
1130 xEffContent.set(pDrawField);
1136 xEffContent.set(xContent);
1139 if ( xAggText.is() )
1140 xAggText->insertTextContent( xRange, xEffContent, bAbsorb );
1150 if ( xAggText.is() )
1151 xAggText->removeTextContent( xContent );
1170 return uno::Reference<text::XTextCursor>();
1174 const uno::Reference<text::XTextRange>& aTextPosition )
1183 SvxUnoTextRangeBase* pRange = comphelper::getFromUnoTunnel<SvxUnoTextRangeBase>( aTextPosition );
1184 if ( pText && pRange )
1187 pCursor->SetSelection( pRange->GetSelection() );
1192 return uno::Reference<text::XTextCursor>();
1196 const OUString& aString,
sal_Bool bAbsorb )
1201 if ( !xAggSimpleText.is() )
1202 throw uno::RuntimeException();
1204 xAggSimpleText->insertString( xRange, aString, bAbsorb );
1208 sal_Int16 nControlCharacter,
sal_Bool bAbsorb )
1213 if ( !xAggSimpleText.is() )
1214 throw uno::RuntimeException();
1216 xAggSimpleText->insertControlCharacter( xRange, nControlCharacter, bAbsorb );
1232 if ( !xAggTextRange.is() )
1233 throw uno::RuntimeException();
1235 return xAggTextRange->getStart();
1243 if ( !xAggTextRange.is() )
1244 throw uno::RuntimeException();
1246 return xAggTextRange->getEnd();
1254 if ( !xAggTextRange.is() )
1255 throw uno::RuntimeException();
1257 return xAggTextRange->getString();
1265 if ( !xAggTextRange.is() )
1266 throw uno::RuntimeException();
1268 xAggTextRange->setString( aText );
1285 if ( pPage && pDoc )
1288 if (
auto pDocSh =
dynamic_cast<ScDocShell*
>( pObjSh) )
1306 throw lang::NoSupportException();
1313 uno::Sequence< uno::Type > aBaseTypes( ScShapeObj_Base::getTypes() );
1315 uno::Sequence< uno::Type > aTextTypes;
1319 uno::Reference<lang::XTypeProvider> xBaseProvider;
1322 OSL_ENSURE( xBaseProvider.is(),
"ScShapeObj: No XTypeProvider from aggregated shape!" );
1324 uno::Sequence< uno::Type > aAggTypes;
1325 if( xBaseProvider.is() )
1326 aAggTypes = xBaseProvider->getTypes();
1328 return ::comphelper::concatSequences( aBaseTypes, aTextTypes, aAggTypes );
1333 return css::uno::Sequence<sal_Int8>();
1366 throw container::NoSuchElementException();
1367 uno::Sequence< beans::PropertyValue >
aProperties;
1369 bool isEventType =
false;
1370 for(
const beans::PropertyValue& rProperty : std::as_const(
aProperties) )
1380 if ( rProperty.Value >>= sValue )
1383 OSL_ENSURE( pInfo,
"shape macro info could not be created!" );
1395 uno::Sequence< beans::PropertyValue >
aProperties;
1400 throw container::NoSuchElementException();
1403 if ( pInfo && !pInfo->
GetMacro().isEmpty() )
1437::uno::Reference< container::XNameReplace > SAL_CALL
1445 return "com.sun.star.comp.sc.ScShapeObj";
1455 uno::Reference<lang::XServiceInfo> xSI;
1459 uno::Sequence< OUString > aSupported;
1461 aSupported = xSI->getSupportedServiceNames();
1463 aSupported.realloc( aSupported.getLength() + 1 );
1464 aSupported.getArray()[ aSupported.getLength() - 1 ] =
"com.sun.star.sheet.Shape";
1468 aSupported.realloc( aSupported.getLength() + 1 );
1469 aSupported.getArray()[ aSupported.getLength() - 1 ] =
"com.sun.star.sheet.CellAnnotationShape";
PropertiesInfo aProperties
constexpr tools::Long Y() const
constexpr tools::Long X() const
really derive cell from range?
SC_DLLPUBLIC ScRange GetRange(SCTAB nTab, const tools::Rectangle &rMMRect, bool bHiddenAsZero=true) const
SC_DLLPUBLIC SCCOL MaxCol() const
SC_DLLPUBLIC SCROW MaxRow() const
SC_DLLPUBLIC bool IsNegativePage(SCTAB nTab) const
SfxObjectShell * GetDocumentShell() const
SC_DLLPUBLIC tools::Rectangle GetMMRect(SCCOL nStartCol, SCROW nStartRow, SCCOL nEndCol, SCROW nEndRow, SCTAB nTab, bool bHiddenAsZero=true) const
static ScDrawObjData * GetObjDataTab(SdrObject *pObj, SCTAB nTab)
static ScDrawObjData * GetObjData(SdrObject *pObj, bool bCreate=false)
static bool IsNoteCaption(SdrObject *pObj)
Returns true, if the passed object is the caption of a cell note.
ScDocument * GetDocument() const
static ScMacroInfo * GetMacroInfo(SdrObject *pObj, bool bCreate=false)
static void SetPageAnchored(SdrObject &)
static ScAnchorType GetAnchorType(const SdrObject &)
static ScDrawObjData * GetNoteCaptionData(SdrObject *pObj, SCTAB nTab)
Returns the object data, if the passed object is a cell note caption.
static void SetCellAnchored(SdrObject &, const ScDrawObjData &rAnchor)
static void UpdateCellAnchorFromPositionEnd(const SdrObject &rObj, ScDrawObjData &rAnchor, const ScDocument &rDoc, SCTAB nTab, bool bUseLogicRect=true)
const OUString & GetMacro() const
void SetMacro(const OUString &rMacro)
virtual css::beans::PropertyState SAL_CALL getPropertyState(const OUString &PropertyName) override
css::beans::XPropertySet * pShapePropertySet
static const SvEventDescription * GetSupportedMacroItems()
virtual css::uno::Reference< css::text::XTextRange > SAL_CALL getStart() override
virtual void SAL_CALL setPropertyValue(const OUString &aPropertyName, const css::uno::Any &aValue) override
virtual css::uno::Reference< css::container::XNameReplace > SAL_CALL getEvents() override
SdrObject * GetSdrObject() const noexcept
virtual void SAL_CALL removeEventListener(const css::uno::Reference< css::lang::XEventListener > &aListener) override
virtual css::uno::Sequence< sal_Int8 > SAL_CALL getImplementationId() override
virtual css::uno::Any SAL_CALL getPropertyValue(const OUString &PropertyName) override
virtual css::uno::Reference< css::text::XTextRange > SAL_CALL getAnchor() override
virtual void SAL_CALL addPropertyChangeListener(const OUString &aPropertyName, const css::uno::Reference< css::beans::XPropertyChangeListener > &xListener) override
ScShapeObj(css::uno::Reference< css::drawing::XShape > &xShape)
virtual css::uno::Any SAL_CALL getPropertyDefault(const OUString &aPropertyName) override
virtual void SAL_CALL setPropertyToDefault(const OUString &PropertyName) override
void GetShapePropertyState()
virtual css::uno::Sequence< OUString > SAL_CALL getSupportedServiceNames() override
virtual void SAL_CALL setParent(const css::uno::Reference< css::uno::XInterface > &xParent) override
virtual void SAL_CALL release() noexcept override
virtual css::uno::Reference< css::text::XTextCursor > SAL_CALL createTextCursorByRange(const css::uno::Reference< css::text::XTextRange > &aTextPosition) override
virtual void SAL_CALL acquire() noexcept override
virtual css::uno::Reference< css::text::XText > SAL_CALL getText() override
void GetShapePropertySet()
virtual void SAL_CALL removePropertyChangeListener(const OUString &aPropertyName, const css::uno::Reference< css::beans::XPropertyChangeListener > &aListener) override
friend class ShapeUnoEventAccessImpl
virtual css::uno::Reference< css::text::XTextRange > SAL_CALL getEnd() override
virtual void SAL_CALL addVetoableChangeListener(const OUString &PropertyName, const css::uno::Reference< css::beans::XVetoableChangeListener > &aListener) override
virtual void SAL_CALL insertString(const css::uno::Reference< css::text::XTextRange > &xRange, const OUString &aString, sal_Bool bAbsorb) override
virtual css::uno::Reference< css::text::XTextCursor > SAL_CALL createTextCursor() override
virtual css::uno::Sequence< css::uno::Type > SAL_CALL getTypes() override
virtual void SAL_CALL removeVetoableChangeListener(const OUString &PropertyName, const css::uno::Reference< css::beans::XVetoableChangeListener > &aListener) override
virtual void SAL_CALL attach(const css::uno::Reference< css::text::XTextRange > &xTextRange) override
virtual OUString SAL_CALL getImplementationName() override
virtual css::uno::Reference< css::uno::XInterface > SAL_CALL getParent() override
virtual void SAL_CALL removeTextContent(const css::uno::Reference< css::text::XTextContent > &xContent) override
css::uno::Reference< css::beans::XPropertySetInfo > mxPropSetInfo
virtual css::uno::Reference< css::beans::XPropertySetInfo > SAL_CALL getPropertySetInfo() override
virtual void SAL_CALL dispose() override
virtual void SAL_CALL insertTextContent(const css::uno::Reference< css::text::XTextRange > &xRange, const css::uno::Reference< css::text::XTextContent > &xContent, sal_Bool bAbsorb) override
virtual void SAL_CALL addEventListener(const css::uno::Reference< css::lang::XEventListener > &aListener) override
virtual ~ScShapeObj() override
css::beans::XPropertyState * pShapePropertyState
virtual void SAL_CALL insertControlCharacter(const css::uno::Reference< css::text::XTextRange > &xRange, sal_Int16 nControlCharacter, sal_Bool bAbsorb) override
virtual css::uno::Any SAL_CALL queryInterface(const css::uno::Type &rType) override
virtual OUString SAL_CALL getString() override
virtual void SAL_CALL setString(const OUString &aString) override
css::uno::Reference< css::uno::XAggregation > mxShapeAgg
virtual css::uno::Sequence< css::beans::PropertyState > SAL_CALL getPropertyStates(const css::uno::Sequence< OUString > &aPropertyName) override
virtual sal_Bool SAL_CALL supportsService(const OUString &ServiceName) override
const SdrPage * GetPage(sal_uInt16 nPgNum) const
sal_uInt16 GetPageCount() const
static SdrObject * getSdrObjectFromXShape(const css::uno::Reference< css::uno::XInterface > &xInt)
void AppendUserData(std::unique_ptr< SdrObjUserData > pData)
virtual const tools::Rectangle & GetCurrentBoundRect() const
SdrModel & getSdrModelFromSdrObject() const
SdrPage * getSdrPageFromSdrObject() const
void setHyperlink(const OUString &sHyperlink)
const OUString & GetName() const
virtual uno::Sequence< OUString > SAL_CALL getElementNames() override
virtual sal_Bool SAL_CALL hasElements() override
virtual uno::Type SAL_CALL getElementType() override
virtual uno::Any SAL_CALL getByName(const OUString &aName) override
ScMacroInfo * getInfo(bool bCreate)
ShapeUnoEventAccessImpl(ScShapeObj *pShape)
virtual sal_Bool SAL_CALL hasByName(const OUString &aName) override
virtual void SAL_CALL replaceByName(const OUString &aName, const uno::Any &aElement) override
void SetImageMap(const ImageMap &rIMap)
static SvxIMapInfo * GetIMapInfo(const SdrObject *pObject)
const ImageMap & GetImageMap() const
virtual css::uno::Any SAL_CALL queryInterface(css::uno::Type const &rType) SAL_OVERRIDE
virtual css::uno::Sequence< css::uno::Type > SAL_CALL getTypes() SAL_OVERRIDE
css::uno::Type const & get()
inline ::Point VCLPoint(const css::awt::Point &rAWTPoint)
#define TOOLS_WARN_EXCEPTION(area, stream)
Sequence< sal_Int8 > aSeq
css::beans::PropertyValue makePropertyValue(const OUString &rName, T &&rValue)
bool CPPUHELPER_DLLPUBLIC supportsService(css::lang::XServiceInfo *implementation, rtl::OUString const &name)
static void lcl_CopyOneProperty(beans::XPropertySet &rDest, beans::XPropertySet &rSource, const OUString &aNameStr)
static uno::Reference< text::XTextRange > lcl_GetTextRange(const uno::Reference< uno::XAggregation > &xAgg)
static uno::Reference< text::XSimpleText > lcl_GetSimpleText(const uno::Reference< uno::XAggregation > &xAgg)
constexpr OUStringLiteral SC_EVENTACC_ONCLICK
constexpr OUStringLiteral SC_EVENTACC_EVENTTYPE
static ScRange lcl_GetAnchorCell(const uno::Reference< drawing::XShape > &xShape, const ScDocument *pDoc, SCTAB nTab, awt::Point &rUnoPoint, awt::Size &rUnoSize, awt::Point &rCaptionPoint)
static uno::Reference< lang::XComponent > lcl_GetComponent(const uno::Reference< uno::XAggregation > &xAgg)
static bool lcl_GetCaptionPoint(const uno::Reference< drawing::XShape > &xShape, awt::Point &rCaptionPoint)
static uno::Reference< text::XText > lcl_GetText(const uno::Reference< uno::XAggregation > &xAgg)
constexpr OUStringLiteral SC_EVENTACC_SCRIPT
ScMacroInfo * ScShapeObj_getShapeHyperMacroInfo(const ScShapeObj *pShape, bool bCreate=false)
static awt::Point lcl_GetRelativePos(const uno::Reference< drawing::XShape > &xShape, const ScDocument *pDoc, SCTAB nTab, ScRange &rRange, awt::Size &rUnoSize, awt::Point &rCaptionPoint)
static bool lcl_GetPageNum(const SdrPage *pPage, SdrModel &rModel, SCTAB &rNum)
static o3tl::span< const SfxItemPropertyMapEntry > lcl_GetShapeMap()
SVT_DLLPUBLIC css::uno::Reference< css::uno::XInterface > SvUnoImageMap_createInstance()
SVT_DLLPUBLIC bool SvUnoImageMap_fillImageMap(const css::uno::Reference< css::uno::XInterface > &xImageMap, ImageMap &rMap)
constexpr OUStringLiteral SC_UNONAME_HYPERLINK
constexpr OUStringLiteral SC_UNONAME_HORIPOS
constexpr OUStringLiteral SC_UNONAME_MOVEPROTECT
constexpr OUStringLiteral SC_UNONAME_REPR
constexpr OUStringLiteral SC_UNONAME_ANCHOR
constexpr OUStringLiteral SC_UNONAME_VERTPOS
constexpr OUStringLiteral SC_UNONAME_URL
constexpr OUStringLiteral SC_UNONAME_IMAGEMAP
constexpr OUStringLiteral SC_UNONAME_TARGET
constexpr OUStringLiteral SC_UNONAME_RESIZE_WITH_CELL
constexpr OUStringLiteral SC_UNONAME_STYLE