LibreOffice Module oox (master) 1
Public Member Functions | Private Member Functions | Private Attributes | List of all members
oox::vml::ShapeTypeContext Class Reference

#include <vmlshapecontext.hxx>

Inheritance diagram for oox::vml::ShapeTypeContext:
[legend]
Collaboration diagram for oox::vml::ShapeTypeContext:
[legend]

Public Member Functions

 ShapeTypeContext (::oox::core::ContextHandler2Helper const &rParent, std::shared_ptr< ShapeType > const &pShapeType, const AttributeList &rAttribs)
 
virtual ::oox::core::ContextHandlerRef onCreateContext (sal_Int32 nElement, const AttributeList &rAttribs) override
 
- Public Member Functions inherited from oox::core::ContextHandler2
 ContextHandler2 (ContextHandler2Helper const &rParent)
 
virtual ~ContextHandler2 () override
 
 ContextHandler2 (ContextHandler2 const &)=default
 
 ContextHandler2 (ContextHandler2 &&)=default
 
ContextHandler2operator= (ContextHandler2 const &)=delete
 
ContextHandler2operator= (ContextHandler2 &&)=delete
 
virtual void SAL_CALL acquire () noexcept override
 
virtual void SAL_CALL release () noexcept override
 
virtual css::uno::Reference< css::xml::sax::XFastContextHandler > SAL_CALL createFastChildContext (sal_Int32 nElement, const css::uno::Reference< css::xml::sax::XFastAttributeList > &rxAttribs) final override
 
virtual void SAL_CALL startFastElement (sal_Int32 nElement, const css::uno::Reference< css::xml::sax::XFastAttributeList > &rxAttribs) final override
 
virtual void SAL_CALL characters (const OUString &rChars) final override
 
virtual void SAL_CALL endFastElement (sal_Int32 nElement) final override
 
virtual ContextHandlerRef createRecordContext (sal_Int32 nRecId, SequenceInputStream &rStrm) override
 
virtual void startRecord (sal_Int32 nRecId, SequenceInputStream &rStrm) override
 
virtual void endRecord (sal_Int32 nRecId) override
 
virtual ContextHandlerRef onCreateContext (sal_Int32 nElement, const AttributeList &rAttribs) override
 
virtual void onStartElement (const AttributeList &rAttribs) override
 
virtual void onCharacters (const OUString &rChars) override
 
virtual void onEndElement () override
 
virtual ContextHandlerRef onCreateRecordContext (sal_Int32 nRecId, SequenceInputStream &rStrm) override
 
virtual void onStartRecord (SequenceInputStream &rStrm) override
 
virtual void onEndRecord () override
 
- Public Member Functions inherited from oox::core::ContextHandler
 ContextHandler (const ContextHandler &rParent)
 
virtual ~ContextHandler () override
 
XmlFilterBasegetFilter () const
 Returns the filter instance. More...
 
const RelationsgetRelations () const
 Returns the relations of the current fragment. More...
 
const OUString & getFragmentPath () const
 Returns the full path of the current fragment. More...
 
OUString getFragmentPathFromRelation (const Relation &rRelation) const
 Returns the full fragment path for the target of the passed relation. More...
 
OUString getFragmentPathFromRelId (const OUString &rRelId) const
 Returns the full fragment path for the passed relation identifier. More...
 
OUString getFragmentPathFromFirstType (std::u16string_view rType) const
 Returns the full fragment path for the first relation of the passed type. More...
 
OUString getFragmentPathFromFirstTypeFromOfficeDoc (std::u16string_view rType) const
 
virtual void SAL_CALL startFastElement (::sal_Int32 Element, const css::uno::Reference< css::xml::sax::XFastAttributeList > &Attribs) override
 
virtual void SAL_CALL startUnknownElement (const OUString &Namespace, const OUString &Name, const css::uno::Reference< css::xml::sax::XFastAttributeList > &Attribs) override
 
virtual void SAL_CALL endFastElement (::sal_Int32 Element) override
 
virtual void SAL_CALL endUnknownElement (const OUString &Namespace, const OUString &Name) override
 
virtual css::uno::Reference< css::xml::sax::XFastContextHandler > SAL_CALL createFastChildContext (::sal_Int32 Element, const css::uno::Reference< css::xml::sax::XFastAttributeList > &Attribs) override
 
virtual css::uno::Reference< css::xml::sax::XFastContextHandler > SAL_CALL createUnknownChildContext (const OUString &Namespace, const OUString &Name, const css::uno::Reference< css::xml::sax::XFastAttributeList > &Attribs) override
 
virtual void SAL_CALL characters (const OUString &aChars) override
 
virtual ContextHandlerRef createRecordContext (sal_Int32 nRecId, SequenceInputStream &rStrm)
 
virtual void startRecord (sal_Int32 nRecId, SequenceInputStream &rStrm)
 
virtual void endRecord (sal_Int32 nRecId)
 

Private Member Functions

void setStyle (std::u16string_view rStyle)
 Processes the 'style' attribute. More...
 
std::optional< OUString > decodeFragmentPath (const AttributeList &rAttribs, sal_Int32 nToken) const
 Resolve a relation identifier to a fragment path. More...
 

Private Attributes

std::shared_ptr< ShapeTypem_pShapeType
 
ShapeTypeModelmrTypeModel
 

Additional Inherited Members

- Static Public Member Functions inherited from oox::vml::ShapeContextBase
::oox::core::ContextHandlerRef createShapeContext (::oox::core::ContextHandler2Helper const &rParent, ShapeContainer &rShapes, sal_Int32 nElement, const AttributeList &rAttribs)
 
- Protected Member Functions inherited from oox::vml::ShapeContextBase
 ShapeContextBase (::oox::core::ContextHandler2Helper const &rParent)
 
- Protected Member Functions inherited from oox::core::ContextHandler
 ContextHandler (FragmentBaseDataRef rxBaseData)
 Helper constructor for the FragmentHandler. More...
 
void implSetLocator (const css::uno::Reference< css::xml::sax::XLocator > &rxLocator)
 

Detailed Description

Definition at line 96 of file vmlshapecontext.hxx.

Constructor & Destructor Documentation

◆ ShapeTypeContext()

oox::vml::ShapeTypeContext::ShapeTypeContext ( ::oox::core::ContextHandler2Helper const &  rParent,
std::shared_ptr< ShapeType > const &  pShapeType,
const AttributeList rAttribs 
)
explicit

Member Function Documentation

◆ decodeFragmentPath()

std::optional< OUString > oox::vml::ShapeTypeContext::decodeFragmentPath ( const AttributeList rAttribs,
sal_Int32  nToken 
) const
private

Resolve a relation identifier to a fragment path.

Definition at line 453 of file vmlshapecontext.cxx.

References oox::core::ContextHandler::getFragmentPathFromRelId(), oox::AttributeList::getString(), and nToken.

Referenced by onCreateContext().

◆ onCreateContext()

ContextHandlerRef oox::vml::ShapeTypeContext::onCreateContext ( sal_Int32  nElement,
const AttributeList rAttribs 
)
overridevirtual

Reimplemented from oox::core::ContextHandler2.

Reimplemented in oox::vml::ShapeContext, oox::vml::GroupShapeContext, and oox::vml::RectangleShapeContext.

Definition at line 347 of file vmlshapecontext.cxx.

References oox::assignIfUsed(), decodeFragmentPath(), oox::AttributeList::getInteger(), oox::AttributeList::getString(), oox::AttributeList::getToken(), oox::AttributeList::hasAttribute(), oox::vml::StrokeModel::maEndArrow, oox::vml::ShapeTypeModel::maFillModel, oox::vml::ShapeTypeModel::maShadowModel, oox::vml::StrokeModel::maStartArrow, oox::vml::ShapeTypeModel::maStrokeModel, oox::vml::ShapeTypeModel::maTextpathModel, oox::vml::ShadowModel::mbHasShadow, oox::vml::ShapeTypeModel::mnBlacklevel, oox::vml::ShapeTypeModel::mnGain, oox::vml::FillModel::moAngle, oox::vml::StrokeArrowModel::moArrowLength, oox::vml::StrokeArrowModel::moArrowType, oox::vml::StrokeArrowModel::moArrowWidth, oox::vml::FillModel::moBitmapPath, oox::vml::StrokeModel::moColor, oox::vml::FillModel::moColor, oox::vml::ShadowModel::moColor, oox::vml::FillModel::moColor2, oox::vml::ShapeTypeModel::moCropBottom, oox::vml::ShapeTypeModel::moCropLeft, oox::vml::ShapeTypeModel::moCropRight, oox::vml::ShapeTypeModel::moCropTop, oox::vml::StrokeModel::moDashStyle, oox::vml::StrokeModel::moEndCap, oox::vml::FillModel::moFilled, oox::vml::FillModel::moFocus, oox::vml::FillModel::moFocusPos, oox::vml::FillModel::moFocusSize, oox::vml::ShapeTypeModel::moGraphicPath, oox::vml::ShapeTypeModel::moGraphicTitle, oox::vml::StrokeModel::moJoinStyle, oox::vml::StrokeModel::moLineStyle, oox::vml::ShadowModel::moOffset, oox::vml::StrokeModel::moOpacity, oox::vml::FillModel::moOpacity, oox::vml::ShadowModel::moOpacity, oox::vml::FillModel::moOpacity2, oox::vml::FillModel::moRotate, oox::vml::ShadowModel::moShadowOn, oox::vml::TextpathModel::moString, oox::vml::StrokeModel::moStroked, oox::vml::TextpathModel::moStyle, oox::vml::TextpathModel::moTrim, oox::vml::FillModel::moType, oox::vml::StrokeModel::moWeight, oox::vml::ShapeTypeModel::moWrapAnchorX, oox::vml::ShapeTypeModel::moWrapAnchorY, oox::vml::ShapeTypeModel::moWrapSide, oox::vml::ShapeTypeModel::moWrapType, mrTypeModel, and XML_type.

Referenced by oox::vml::ShapeContext::onCreateContext().

◆ setStyle()

void oox::vml::ShapeTypeContext::setStyle ( std::u16string_view  rStyle)
private

Member Data Documentation

◆ m_pShapeType

std::shared_ptr<ShapeType> oox::vml::ShapeTypeContext::m_pShapeType
private

Definition at line 115 of file vmlshapecontext.hxx.

◆ mrTypeModel

ShapeTypeModel& oox::vml::ShapeTypeContext::mrTypeModel
private

Definition at line 116 of file vmlshapecontext.hxx.

Referenced by onCreateContext(), setStyle(), and ShapeTypeContext().


The documentation for this class was generated from the following files: