LibreOffice Module svgio (master) 1
|
#include <svgsvgnode.hxx>
Public Member Functions | |
SvgSvgNode (SvgDocument &rDocument, SvgNode *pParent) | |
virtual | ~SvgSvgNode () override |
virtual const SvgStyleAttributes * | getSvgStyleAttributes () const override |
virtual void | parseAttribute (const OUString &rTokenName, SVGToken aSVGToken, const OUString &aContent) override |
virtual void | decomposeSvgNode (drawinglayer::primitive2d::Primitive2DContainer &rTarget, bool bReferenced) const override |
void | seekReferenceWidth (double &fWidth, bool &bHasFound) const |
Seeks width and height of viewport, which is current before the new viewport is set. More... | |
void | seekReferenceHeight (double &fHeight, bool &bHasFound) const |
virtual basegfx::B2DRange | getCurrentViewPort () const override |
InfoProvider support for % values in children. More... | |
const basegfx::B2DRange * | getViewBox () const |
viewBox content More... | |
void | setViewBox (const basegfx::B2DRange *pViewBox) |
const SvgAspectRatio & | getSvgAspectRatio () const |
SvgAspectRatio content. More... | |
const SvgNumber & | getX () const |
x content More... | |
const SvgNumber & | getY () const |
y content More... | |
const SvgNumber & | getWidth () const |
width content More... | |
const SvgNumber & | getHeight () const |
height content More... | |
Public Member Functions inherited from svgio::svgreader::SvgNode | |
SvgNode (SVGToken aType, SvgDocument &rDocument, SvgNode *pParent) | |
virtual | ~SvgNode () override |
SvgNode (const SvgNode &)=delete | |
SvgNode & | operator= (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 SvgStyleAttributes * | getSvgStyleAttributes () 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 SvgDocument & | getDocument () const |
const SvgNode * | getParent () 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 | initializeStyleAttributes () |
Private Attributes | |
SvgStyleAttributes | maSvgStyleAttributes |
use styles More... | |
std::unique_ptr< basegfx::B2DRange > | mpViewBox |
variable scan values, dependent of given XAttributeList More... | |
SvgAspectRatio | maSvgAspectRatio |
SvgNumber | maX |
SvgNumber | maY |
SvgNumber | maWidth |
SvgNumber | maHeight |
SvgNumber | maVersion |
bool | mbStyleAttributesInitialized: 1 |
#i125258# bitfield More... | |
Additional Inherited Members | |
Protected Member Functions inherited from svgio::svgreader::SvgNode | |
const SvgStyleAttributes * | checkForCssStyle (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) |
Definition at line 27 of file svgsvgnode.hxx.
svgio::svgreader::SvgSvgNode::SvgSvgNode | ( | SvgDocument & | rDocument, |
SvgNode * | pParent | ||
) |
Definition at line 34 of file svgsvgnode.cxx.
References Svg.
|
overridevirtual |
Definition at line 100 of file svgsvgnode.cxx.
|
overridevirtual |
Reimplemented from svgio::svgreader::SvgNode.
Definition at line 289 of file svgsvgnode.cxx.
References o3tl::convert(), svgio::svgreader::SvgAspectRatio::createMapping(), basegfx::utils::createPolygonFromRect(), basegfx::utils::createScaleB2DHomMatrix(), basegfx::utils::createTranslateB2DHomMatrix(), svgio::svgreader::SvgNode::decomposeSvgNode(), basegfx::Range2D< typename TYPE, typename TRAITS >::equal(), basegfx::fTools::equalZero(), drawinglayer::primitive2d::Primitive2DContainer::getB2DRange(), svgio::svgreader::SvgNode::getDocument(), basegfx::Range2D< typename TYPE, typename TRAITS >::getHeight(), getHeight(), basegfx::Range2D< typename TYPE, typename TRAITS >::getMinX(), basegfx::Range2D< typename TYPE, typename TRAITS >::getMinY(), svgio::svgreader::SvgNumber::getNumber(), svgio::svgreader::SvgNode::getParent(), getSvgAspectRatio(), getViewBox(), basegfx::Range2D< typename TYPE, typename TRAITS >::getWidth(), getWidth(), getX(), getY(), initializeStyleAttributes(), basegfx::Range2D< typename TYPE, typename TRAITS >::isInside(), svgio::svgreader::SvgAspectRatio::isMeetOrSlice(), svgio::svgreader::SvgNumber::isSet(), svgio::svgreader::SvgAspectRatio::isSet(), basegfx::fTools::lessOrEqual(), o3tl::mm100, basegfx::fTools::more(), basegfx::Range2D< typename TYPE, typename TRAITS >::overlaps(), svgio::svgreader::percent, o3tl::px, rTarget, seekReferenceHeight(), seekReferenceWidth(), svgio::svgreader::SvgNumber::solveNonPercentage(), and svgio::svgreader::xMidYMid.
|
overridevirtual |
InfoProvider support for % values in children.
Reimplemented from svgio::svgreader::SvgNode.
Definition at line 721 of file svgsvgnode.cxx.
References svgio::svgreader::SvgNode::getCurrentViewPort(), getHeight(), svgio::svgreader::SvgNumber::getNumber(), svgio::svgreader::SvgNode::getParent(), getViewBox(), getWidth(), getX(), getY(), svgio::svgreader::SvgNumber::isSet(), svgio::svgreader::percent, seekReferenceHeight(), and seekReferenceWidth().
|
inline |
height content
Definition at line 88 of file svgsvgnode.hxx.
References maHeight.
Referenced by decomposeSvgNode(), getCurrentViewPort(), and seekReferenceHeight().
|
inline |
SvgAspectRatio content.
Definition at line 76 of file svgsvgnode.hxx.
References maSvgAspectRatio.
Referenced by decomposeSvgNode().
|
overridevirtual |
Reimplemented from svgio::svgreader::SvgNode.
Definition at line 104 of file svgsvgnode.cxx.
References svgio::svgreader::SvgNode::checkForCssStyle(), and maSvgStyleAttributes.
Referenced by initializeStyleAttributes().
|
inline |
viewBox content
Definition at line 72 of file svgsvgnode.hxx.
References mpViewBox.
Referenced by decomposeSvgNode(), getCurrentViewPort(), seekReferenceHeight(), and seekReferenceWidth().
|
inline |
width content
Definition at line 85 of file svgsvgnode.hxx.
References maWidth.
Referenced by decomposeSvgNode(), getCurrentViewPort(), and seekReferenceWidth().
|
inline |
x content
Definition at line 79 of file svgsvgnode.hxx.
References maX.
Referenced by decomposeSvgNode(), and getCurrentViewPort().
|
inline |
y content
Definition at line 82 of file svgsvgnode.hxx.
References maY.
Referenced by decomposeSvgNode(), and getCurrentViewPort().
|
private |
Definition at line 44 of file svgsvgnode.cxx.
References svgio::svgreader::SvgNode::getParent(), svgio::svgreader::SvgStyleAttributes::getParentStyle(), getSvgStyleAttributes(), svgio::svgreader::SvgStyleAttributes::isFillSet(), maSvgStyleAttributes, mbStyleAttributesInitialized, and svgio::svgreader::SvgStyleAttributes::setFill().
Referenced by decomposeSvgNode().
|
overridevirtual |
Reimplemented from svgio::svgreader::SvgNode.
Definition at line 110 of file svgsvgnode.cxx.
References svgio::svgreader::Height, basegfx::Range2D< typename TYPE, typename TRAITS >::isEmpty(), svgio::svgreader::SvgNumber::isPositive(), maHeight, maSvgAspectRatio, maSvgStyleAttributes, maVersion, maWidth, maX, maY, svgio::svgreader::SvgNode::parseAttribute(), svgio::svgreader::SvgStyleAttributes::parseStyleAttribute(), svgio::svgreader::PreserveAspectRatio, svgio::svgreader::SvgNode::readLocalCssStyle(), svgio::svgreader::readSingleNumber(), svgio::svgreader::readSvgAspectRatio(), svgio::svgreader::readViewBox(), setViewBox(), svgio::svgreader::Style, svgio::svgreader::Version, svgio::svgreader::ViewBox, svgio::svgreader::Width, svgio::svgreader::X, and svgio::svgreader::Y.
void svgio::svgreader::SvgSvgNode::seekReferenceHeight | ( | double & | fHeight, |
bool & | bHasFound | ||
) | const |
Definition at line 246 of file svgsvgnode.cxx.
References basegfx::Range2D< typename TYPE, typename TRAITS >::getHeight(), getHeight(), svgio::svgreader::SvgNumber::getNumber(), svgio::svgreader::SvgNode::getParent(), svgio::svgreader::SvgNumber::getUnit(), getViewBox(), svgio::svgreader::SvgNumber::isSet(), svgio::svgreader::percent, and svgio::svgreader::SvgNumber::solveNonPercentage().
Referenced by decomposeSvgNode(), and getCurrentViewPort().
void svgio::svgreader::SvgSvgNode::seekReferenceWidth | ( | double & | fWidth, |
bool & | bHasFound | ||
) | const |
Seeks width and height of viewport, which is current before the new viewport is set.
Definition at line 204 of file svgsvgnode.cxx.
References svgio::svgreader::SvgNumber::getNumber(), svgio::svgreader::SvgNode::getParent(), svgio::svgreader::SvgNumber::getUnit(), getViewBox(), basegfx::Range2D< typename TYPE, typename TRAITS >::getWidth(), getWidth(), svgio::svgreader::SvgNumber::isSet(), svgio::svgreader::percent, and svgio::svgreader::SvgNumber::solveNonPercentage().
Referenced by decomposeSvgNode(), and getCurrentViewPort().
|
inline |
|
private |
Definition at line 40 of file svgsvgnode.hxx.
Referenced by getHeight(), and parseAttribute().
|
private |
Definition at line 36 of file svgsvgnode.hxx.
Referenced by getSvgAspectRatio(), and parseAttribute().
|
private |
use styles
Definition at line 31 of file svgsvgnode.hxx.
Referenced by getSvgStyleAttributes(), initializeStyleAttributes(), and parseAttribute().
|
private |
Definition at line 41 of file svgsvgnode.hxx.
Referenced by parseAttribute().
|
private |
Definition at line 39 of file svgsvgnode.hxx.
Referenced by getWidth(), and parseAttribute().
|
private |
Definition at line 37 of file svgsvgnode.hxx.
Referenced by getX(), and parseAttribute().
|
private |
Definition at line 38 of file svgsvgnode.hxx.
Referenced by getY(), and parseAttribute().
|
private |
#i125258# bitfield
Definition at line 44 of file svgsvgnode.hxx.
Referenced by initializeStyleAttributes().
|
private |
variable scan values, dependent of given XAttributeList
Definition at line 35 of file svgsvgnode.hxx.
Referenced by getViewBox(), and setViewBox().