|
NovaSVG 0.10.0
A header-only SVG library
|
#include <svgelement.h>


Public Member Functions | |
| SVGGraphicsElement (Document *document, ElementID id) | |
| bool | isGraphicsElement () const final |
| const SVGTransform & | transform () const |
| Transform | localTransform () const override |
| SVGPaintServer | getPaintServer (const Paint &paint, float opacity) const |
| StrokeData | getStrokeData (const SVGLayoutState &state) const |
Public Member Functions inherited from novasvg::SVGElement | |
| SVGElement (Document *document, ElementID id) | |
| virtual | ~SVGElement ()=default |
| bool | hasAttribute (std::string_view name) const |
| const std::string & | getAttribute (std::string_view name) const |
| bool | setAttribute (std::string_view name, const std::string &value) |
| const Attribute * | findAttribute (PropertyID id) const |
| bool | hasAttribute (PropertyID id) const |
| const std::string & | getAttribute (PropertyID id) const |
| bool | setAttribute (int specificity, PropertyID id, const std::string &value) |
| void | setAttributes (const AttributeList &attributes) |
| bool | setAttribute (const Attribute &attribute) |
| virtual void | parseAttribute (PropertyID id, const std::string &value) |
| SVGElement * | previousElement () const |
| SVGElement * | nextElement () const |
| SVGNode * | addChild (std::unique_ptr< SVGNode > child) |
| SVGNode * | firstChild () const |
| SVGNode * | lastChild () const |
| ElementID | id () const |
| const AttributeList & | attributes () const |
| const SVGPropertyList & | properties () const |
| const SVGNodeList & | children () const |
| virtual Rect | fillBoundingBox () const |
| virtual Rect | strokeBoundingBox () const |
| virtual Rect | paintBoundingBox () const |
| SVGMarkerElement * | getMarker (std::string_view id) const |
| SVGClipPathElement * | getClipper (std::string_view id) const |
| SVGMaskElement * | getMasker (std::string_view id) const |
| SVGFilterElement * | getFilterElement (std::string_view id) const |
| SVGPaintElement * | getPainter (std::string_view id) const |
| SVGElement * | elementFromPoint (float x, float y) |
| template<typename T > | |
| void | transverse (T callback) |
| void | addProperty (SVGProperty &value) |
| SVGProperty * | getProperty (PropertyID id) const |
| Size | currentViewportSize () const |
| float | font_size () const |
| void | cloneChildren (SVGElement *parentElement) const |
| std::unique_ptr< SVGNode > | clone (bool deep) const final |
| virtual void | build () |
| virtual void | layoutElement (const SVGLayoutState &state) |
| void | layoutChildren (SVGLayoutState &state) |
| virtual void | layout (SVGLayoutState &state) |
| void | renderChildren (SVGRenderState &state) const |
| virtual void | render (SVGRenderState &state) const |
| virtual std::shared_ptr< Canvas > | applyFilterPrimitive (SVGFilterContext &context) const |
| bool | isDisplayNone () const |
| bool | isOverflowHidden () const |
| bool | isVisibilityHidden () const |
| bool | isHiddenElement () const |
| bool | isPointableElement () const |
| const SVGClipPathElement * | clipper () const |
| const SVGMaskElement * | masker () const |
| const SVGFilterElement * | filterElement () const |
| float | opacity () const |
| MixBlendMode | mixBlendMode () const |
| bool | isElement () const final |
Public Member Functions inherited from novasvg::SVGNode | |
| SVGNode (Document *document) | |
| virtual | ~SVGNode ()=default |
| virtual bool | isTextNode () const |
| virtual bool | isPaintElement () const |
| virtual bool | isGeometryElement () const |
| virtual bool | isTextPositioningElement () const |
| Document * | document () const |
| SVGRootElement * | rootElement () const |
| SVGElement * | parentElement () const |
| void | setParentElement (SVGElement *parent) |
| bool | isRootElement () const |
Additional Inherited Members | |
Static Public Member Functions inherited from novasvg::SVGElement | |
| static std::unique_ptr< SVGElement > | create (Document *document, ElementID id) |
Definition at line 1011 of file svgelement.h.
| NOVASVG_INLINE novasvg::SVGGraphicsElement::SVGGraphicsElement | ( | Document * | document, |
| ElementID | id | ||
| ) |
Definition at line 5676 of file svgelement.h.
References novasvg::SVGElement::addProperty().
| NOVASVG_INLINE SVGPaintServer novasvg::SVGGraphicsElement::getPaintServer | ( | const Paint & | paint, |
| float | opacity | ||
| ) | const |
Definition at line 5712 of file svgelement.h.
References novasvg::SVGElement::getPainter(), and novasvg::SVGElement::opacity().
Referenced by novasvg::SVGForeignObjectElement::layoutElement(), novasvg::SVGGeometryElement::layoutElement(), and novasvg::SVGTextPositioningElement::layoutElement().
| NOVASVG_INLINE StrokeData novasvg::SVGGraphicsElement::getStrokeData | ( | const SVGLayoutState & | state | ) | const |
Definition at line 5721 of file svgelement.h.
References novasvg::Diagonal, and novasvg::LengthContext::valueForLength().
Referenced by novasvg::SVGGeometryElement::layoutElement().
|
inlinefinalvirtual |
Reimplemented from novasvg::SVGNode.
Definition at line 1015 of file svgelement.h.
|
overridevirtual |
Reimplemented from novasvg::SVGElement.
Reimplemented in novasvg::SVGUseElement, and novasvg::SVGSVGElement.
Definition at line 5687 of file svgelement.h.
References novasvg::SVGElement::currentViewportSize(), novasvg::SVGElement::fillBoundingBox(), novasvg::FillBox, novasvg::Rect::isEmpty(), novasvg::SVGTransformOrigin::resolve(), novasvg::SVGTransformBox::specified(), novasvg::SVGTransformOrigin::specified(), novasvg::Transform::translated(), novasvg::SVGTransform::value(), and novasvg::SVGTransformBox::value().
Referenced by novasvg::SVGClipPathElement::applyClipMask(), novasvg::SVGClipPathElement::applyClipPath(), novasvg::SVGClipPathElement::clipBoundingBox(), novasvg::SVGUseElement::localTransform(), novasvg::SVGSVGElement::localTransform(), novasvg::SVGImageElement::render(), novasvg::SVGForeignObjectElement::render(), novasvg::SVGGElement::render(), novasvg::SVGSwitchElement::render(), novasvg::SVGTextElement::render(), and novasvg::SVGGeometryElement::render().
|
inline |
Definition at line 1017 of file svgelement.h.
Referenced by novasvg::SVGTextElement::render().