LibreOffice Module svgio (master) 1
Public Member Functions | Private Member Functions | Private Attributes | List of all members
svgio::svgreader::SvgGradientNode Class Referencefinal

#include <svggradientnode.hxx>

Inheritance diagram for svgio::svgreader::SvgGradientNode:
[legend]
Collaboration diagram for svgio::svgreader::SvgGradientNode:
[legend]

Public Member Functions

 SvgGradientNode (SVGToken aType, SvgDocument &rDocument, SvgNode *pParent)
 
virtual ~SvgGradientNode () override
 
virtual const SvgStyleAttributesgetSvgStyleAttributes () const override
 
virtual void parseAttribute (const OUString &rTokenName, SVGToken aSVGToken, const OUString &aContent) override
 
void collectGradientEntries (drawinglayer::primitive2d::SvgGradientEntryVector &aVector) const
 collect gradient stop entries More...
 
SvgNumber getX1 () const
 x1 content More...
 
SvgNumber getY1 () const
 y1 content More...
 
SvgNumber getX2 () const
 x2 content More...
 
SvgNumber getY2 () const
 y2 content More...
 
SvgNumber getCx () const
 Cx content. More...
 
SvgNumber getCy () const
 Cy content. More...
 
SvgNumber getR () const
 R content. More...
 
const SvgNumbergetFx () const
 Fx content. More...
 
const SvgNumbergetFy () const
 Fy content. More...
 
SvgUnits getGradientUnits () const
 gradientUnits content More...
 
void setGradientUnits (const SvgUnits aGradientUnits)
 
drawinglayer::primitive2d::SpreadMethod getSpreadMethod () const
 SpreadMethod content. More...
 
void setSpreadMethod (const drawinglayer::primitive2d::SpreadMethod aSpreadMethod)
 
std::optional< basegfx::B2DHomMatrixgetGradientTransform () const
 transform content, set if found in current context More...
 
void setGradientTransform (const std::optional< basegfx::B2DHomMatrix > &pMatrix)
 
- Public Member Functions inherited from svgio::svgreader::SvgNode
 SvgNode (SVGToken aType, SvgDocument &rDocument, SvgNode *pParent)
 
virtual ~SvgNode () override
 
 SvgNode (const SvgNode &)=delete
 
SvgNodeoperator= (const SvgNode &)=delete
 
void accept (Visitor &rVisitor)
 
void readLocalCssStyle (std::u16string_view aContent)
 scan helper to read and interpret a local CssStyle to mpLocalCssStyle More...
 
void parseAttributes (const css::uno::Reference< css::xml::sax::XAttributeList > &xAttribs)
 style helpers More...
 
virtual const SvgStyleAttributesgetSvgStyleAttributes () const
 
virtual void parseAttribute (const OUString &rTokenName, SVGToken aSVGToken, const OUString &aContent)
 
virtual void decomposeSvgNode (drawinglayer::primitive2d::Primitive2DContainer &rTarget, bool bReferenced) const
 
virtual bool supportsParentStyle () const
 #i125258# tell if this node is allowed to have a parent style (e.g. defs do not) More...
 
SVGToken getType () const
 basic data read access More...
 
const SvgDocumentgetDocument () const
 
const SvgNodegetParent () const
 
const std::vector< std::unique_ptr< SvgNode > > & getChildren () const
 
virtual basegfx::B2DRange getCurrentViewPort () const override
 InfoProvider support for %, em and ex values. More...
 
virtual double getCurrentFontSizeInherited () const override
 return font size of node inherited from parents More...
 
virtual double getCurrentXHeightInherited () const override
 return xheight of node inherited from parents More...
 
double getCurrentFontSize () const
 
double getCurrentXHeight () const
 
std::optional< OUString > const & getId () const
 Id access. More...
 
void setId (OUString const &)
 
std::optional< OUString > const & getClass () const
 Class access. More...
 
void setClass (OUString const &)
 
XmlSpace getXmlSpace () const
 XmlSpace access. More...
 
void setXmlSpace (XmlSpace eXmlSpace)
 
Display getDisplay () const
 Display access #i121656#. More...
 
void setDisplay (Display eDisplay)
 
void setAlternativeParent (const SvgNode *pAlternativeParent=nullptr)
 alternative parent More...
 
bool hasLocalCssStyle ()
 Check if there is a local css style. More...
 
- Public Member Functions inherited from svgio::svgreader::InfoProvider
virtual ~InfoProvider ()
 
virtual basegfx::B2DRange getCurrentViewPort () const =0
 
virtual double getCurrentFontSizeInherited () const =0
 return font size of node inherited from parents More...
 
virtual double getCurrentXHeightInherited () const =0
 return xheight of node inherited from parents More...
 

Private Member Functions

void tryToFindLink ()
 link on demand More...
 

Private Attributes

SvgStyleAttributes maSvgStyleAttributes
 use styles More...
 
SvgNumber maX1
 linear gradient values More...
 
SvgNumber maY1
 
SvgNumber maX2
 
SvgNumber maY2
 
SvgNumber maCx
 radial gradient values More...
 
SvgNumber maCy
 
SvgNumber maR
 
SvgNumber maFx
 
SvgNumber maFy
 
SvgUnits maGradientUnits
 variable scan values, dependent of given XAttributeList More...
 
drawinglayer::primitive2d::SpreadMethod maSpreadMethod
 
std::optional< basegfx::B2DHomMatrixmpaGradientTransform
 
bool mbResolvingLink
 link to another gradient used as style. More...
 
OUString maXLink
 
const SvgGradientNodempXLink
 

Additional Inherited Members

- Protected Member Functions inherited from svgio::svgreader::SvgNode
const SvgStyleAttributescheckForCssStyle (const SvgStyleAttributes &rOriginal) const
 helper to evtl. link to css style More...
 
void fillCssStyleVector (const SvgStyleAttributes &rOriginal)
 helper for filling the CssStyle vector once dependent on mbCssStyleVectorBuilt More...
 
void addCssStyle (const SvgDocument &rDocument, const OUString &aConcatenated)
 
void fillCssStyleVectorUsingHierarchyAndSelectors (const SvgNode &rCurrent, const OUString &aConcatenated)
 
void fillCssStyleVectorUsingParent (const SvgNode &rCurrent)
 

Detailed Description

Definition at line 29 of file svggradientnode.hxx.

Constructor & Destructor Documentation

◆ SvgGradientNode()

svgio::svgreader::SvgGradientNode::SvgGradientNode ( SVGToken  aType,
SvgDocument rDocument,
SvgNode pParent 
)

◆ ~SvgGradientNode()

svgio::svgreader::SvgGradientNode::~SvgGradientNode ( )
overridevirtual

Definition at line 50 of file svggradientnode.cxx.

Member Function Documentation

◆ collectGradientEntries()

void svgio::svgreader::SvgGradientNode::collectGradientEntries ( drawinglayer::primitive2d::SvgGradientEntryVector aVector) const

◆ getCx()

SvgNumber svgio::svgreader::SvgGradientNode::getCx ( ) const

◆ getCy()

SvgNumber svgio::svgreader::SvgGradientNode::getCy ( ) const

◆ getFx()

const SvgNumber * svgio::svgreader::SvgGradientNode::getFx ( ) const

◆ getFy()

const SvgNumber * svgio::svgreader::SvgGradientNode::getFy ( ) const

◆ getGradientTransform()

std::optional< basegfx::B2DHomMatrix > svgio::svgreader::SvgGradientNode::getGradientTransform ( ) const

◆ getGradientUnits()

SvgUnits svgio::svgreader::SvgGradientNode::getGradientUnits ( ) const
inline

gradientUnits content

Definition at line 104 of file svggradientnode.hxx.

References maGradientUnits.

Referenced by svgio::svgreader::SvgStyleAttributes::add_fillGradient().

◆ getR()

SvgNumber svgio::svgreader::SvgGradientNode::getR ( ) const

◆ getSpreadMethod()

drawinglayer::primitive2d::SpreadMethod svgio::svgreader::SvgGradientNode::getSpreadMethod ( ) const
inline

SpreadMethod content.

Definition at line 108 of file svggradientnode.hxx.

References maSpreadMethod.

Referenced by svgio::svgreader::SvgStyleAttributes::add_fillGradient().

◆ getSvgStyleAttributes()

const SvgStyleAttributes * svgio::svgreader::SvgGradientNode::getSvgStyleAttributes ( ) const
overridevirtual

◆ getX1()

SvgNumber svgio::svgreader::SvgGradientNode::getX1 ( ) const

◆ getX2()

SvgNumber svgio::svgreader::SvgGradientNode::getX2 ( ) const

◆ getY1()

SvgNumber svgio::svgreader::SvgGradientNode::getY1 ( ) const

◆ getY2()

SvgNumber svgio::svgreader::SvgGradientNode::getY2 ( ) const

◆ parseAttribute()

void svgio::svgreader::SvgGradientNode::parseAttribute ( const OUString &  rTokenName,
SVGToken  aSVGToken,
const OUString &  aContent 
)
overridevirtual

◆ setGradientTransform()

void svgio::svgreader::SvgGradientNode::setGradientTransform ( const std::optional< basegfx::B2DHomMatrix > &  pMatrix)
inline

Definition at line 113 of file svggradientnode.hxx.

References mpaGradientTransform.

Referenced by parseAttribute().

◆ setGradientUnits()

void svgio::svgreader::SvgGradientNode::setGradientUnits ( const SvgUnits  aGradientUnits)
inline

Definition at line 105 of file svggradientnode.hxx.

References maGradientUnits.

Referenced by parseAttribute().

◆ setSpreadMethod()

void svgio::svgreader::SvgGradientNode::setSpreadMethod ( const drawinglayer::primitive2d::SpreadMethod  aSpreadMethod)
inline

Definition at line 109 of file svggradientnode.hxx.

References maSpreadMethod.

Referenced by parseAttribute().

◆ tryToFindLink()

void svgio::svgreader::SvgGradientNode::tryToFindLink ( )
private

Member Data Documentation

◆ maCx

SvgNumber svgio::svgreader::SvgGradientNode::maCx
private

radial gradient values

Definition at line 42 of file svggradientnode.hxx.

Referenced by getCx(), and parseAttribute().

◆ maCy

SvgNumber svgio::svgreader::SvgGradientNode::maCy
private

Definition at line 43 of file svggradientnode.hxx.

Referenced by getCy(), and parseAttribute().

◆ maFx

SvgNumber svgio::svgreader::SvgGradientNode::maFx
private

Definition at line 45 of file svggradientnode.hxx.

Referenced by getFx(), and parseAttribute().

◆ maFy

SvgNumber svgio::svgreader::SvgGradientNode::maFy
private

Definition at line 46 of file svggradientnode.hxx.

Referenced by getFy(), and parseAttribute().

◆ maGradientUnits

SvgUnits svgio::svgreader::SvgGradientNode::maGradientUnits
private

variable scan values, dependent of given XAttributeList

Definition at line 49 of file svggradientnode.hxx.

Referenced by getGradientUnits(), and setGradientUnits().

◆ maR

SvgNumber svgio::svgreader::SvgGradientNode::maR
private

Definition at line 44 of file svggradientnode.hxx.

Referenced by getR(), and parseAttribute().

◆ maSpreadMethod

drawinglayer::primitive2d::SpreadMethod svgio::svgreader::SvgGradientNode::maSpreadMethod
private

Definition at line 50 of file svggradientnode.hxx.

Referenced by getSpreadMethod(), and setSpreadMethod().

◆ maSvgStyleAttributes

SvgStyleAttributes svgio::svgreader::SvgGradientNode::maSvgStyleAttributes
private

use styles

Definition at line 33 of file svggradientnode.hxx.

Referenced by getSvgStyleAttributes(), and parseAttribute().

◆ maX1

SvgNumber svgio::svgreader::SvgGradientNode::maX1
private

linear gradient values

Definition at line 36 of file svggradientnode.hxx.

Referenced by getX1(), and parseAttribute().

◆ maX2

SvgNumber svgio::svgreader::SvgGradientNode::maX2
private

Definition at line 38 of file svggradientnode.hxx.

Referenced by getX2(), and parseAttribute().

◆ maXLink

OUString svgio::svgreader::SvgGradientNode::maXLink
private

Definition at line 57 of file svggradientnode.hxx.

Referenced by parseAttribute(), and tryToFindLink().

◆ maY1

SvgNumber svgio::svgreader::SvgGradientNode::maY1
private

Definition at line 37 of file svggradientnode.hxx.

Referenced by getY1(), and parseAttribute().

◆ maY2

SvgNumber svgio::svgreader::SvgGradientNode::maY2
private

Definition at line 39 of file svggradientnode.hxx.

Referenced by getY2(), and parseAttribute().

◆ mbResolvingLink

bool svgio::svgreader::SvgGradientNode::mbResolvingLink
mutableprivate

link to another gradient used as style.

If maXLink is set, the node can be fetched on demand by using

Definition at line 56 of file svggradientnode.hxx.

Referenced by collectGradientEntries(), getCx(), getCy(), getFx(), getFy(), getGradientTransform(), getR(), getX1(), getX2(), getY1(), and getY2().

◆ mpaGradientTransform

std::optional<basegfx::B2DHomMatrix> svgio::svgreader::SvgGradientNode::mpaGradientTransform
private

Definition at line 51 of file svggradientnode.hxx.

Referenced by getGradientTransform(), and setGradientTransform().

◆ mpXLink

const SvgGradientNode* svgio::svgreader::SvgGradientNode::mpXLink
private

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