20#ifndef INCLUDED_OOX_PPT_PPTSHAPE_HXX
21#define INCLUDED_OOX_PPT_PPTSHAPE_HXX
25#include <com/sun/star/uno/Reference.hxx>
29#include <rtl/ustring.hxx>
32namespace basegfx {
class B2DHomMatrix; }
36 namespace drawing {
class XShapes; }
40 namespace core {
class XmlFilterBase; }
41 namespace drawingml {
class Theme; }
61 const char* pServiceType );
70 const css::uno::Reference< css::drawing::XShapes >& rxShapes,
85 const sal_Int32 nSecondSubType,
const std::optional< sal_Int32 >& oSubTypeIndex,
86 std::vector< oox::drawingml::ShapePtr >& rShapes,
bool bMasterOnly =
false );
88 std::vector< oox::drawingml::ShapePtr >& rShapes,
bool bMasterOnly =
false );
void addShape(::oox::core::XmlFilterBase &rFilterBase, const Theme *pTheme, const css::uno::Reference< css::drawing::XShapes > &rxShapes, const basegfx::B2DHomMatrix &aTransformation, const FillProperties &rShapeOrParentShapeFillProps, ShapeIdMap *pShapeMap=nullptr, oox::drawingml::ShapePtr pParentGroupShape=nullptr)
void setModelId(const OUString &rId)
static oox::drawingml::ShapePtr findPlaceholder(const sal_Int32 nFirstSubType, const sal_Int32 nSecondSubType, const std::optional< sal_Int32 > &oSubTypeIndex, std::vector< oox::drawingml::ShapePtr > &rShapes, bool bMasterOnly=false)
bool hasNonInheritedShapeProperties() const
Returns whether or not the shape had a non-empty spPr tag.
void addShape(oox::core::XmlFilterBase &rFilterBase, const SlidePersist &rPersist, const oox::drawingml::Theme *pTheme, const css::uno::Reference< css::drawing::XShapes > &rxShapes, basegfx::B2DHomMatrix &aTransformation, ::oox::drawingml::ShapeIdMap *pShapeMap)
void setHasNoninheritedShapeProperties()
Flags shape as having a non-empty spPr tag.
PPTShape(const oox::ppt::ShapeLocation eShapeLocation, const char *pServiceType)
ShapeLocation getShapeLocation() const
static oox::drawingml::TextListStylePtr getSubTypeTextListStyle(const SlidePersist &rSlidePersist, sal_Int32 nSubType)
virtual ~PPTShape() override
void setReferenced(bool bReferenced)
bool mbHasNoninheritedShapeProperties
Set if spPr tag is non empty for the shape.
void setPlaceholder(oox::drawingml::ShapePtr pPlaceholder)
static oox::drawingml::ShapePtr findPlaceholderByIndex(const sal_Int32 nIdx, std::vector< oox::drawingml::ShapePtr > &rShapes, bool bMasterOnly=false)
bool IsPlaceHolderCandidate(const SlidePersist &rSlidePersist) const
ShapeLocation meShapeLocation
oox::drawingml::ShapePtr mpPlaceholder
std::shared_ptr< Shape > ShapePtr
::std::map< OUString, ShapePtr > ShapeIdMap
std::shared_ptr< TextListStyle > TextListStylePtr