Qt
Internal/Contributor docs for the Qt SDK. Note: These are NOT official API docs; those are found at https://doc.qt.io/
Loading...
Searching...
No Matches
QSvgNode Class Referenceabstract

#include <qsvgnode_p.h>

Inheritance diagram for QSvgNode:
Collaboration diagram for QSvgNode:

Public Types

enum  Type {
  Doc , Group , Defs , Switch ,
  AnimateColor , AnimateTransform , Circle , Ellipse ,
  Image , Line , Path , Polygon ,
  Polyline , Rect , Text , Textarea ,
  Tspan , Use , Video , Mask ,
  Symbol , Marker , Pattern , Filter ,
  FeMerge , FeMergenode , FeColormatrix , FeGaussianblur ,
  FeOffset , FeComposite , FeFlood , FeBlend ,
  FeUnsupported
}
enum  DisplayMode {
  InlineMode , BlockMode , ListItemMode , RunInMode ,
  CompactMode , MarkerMode , TableMode , InlineTableMode ,
  TableRowGroupMode , TableHeaderGroupMode , TableFooterGroupMode , TableRowMode ,
  TableColumnGroupMode , TableColumnMode , TableCellMode , TableCaptionMode ,
  NoneMode , InheritMode
}

Public Member Functions

 QSvgNode (QSvgNode *parent=0)
virtual ~QSvgNode ()
void draw (QPainter *p, QSvgExtraStates &states)
virtual bool separateFillStroke (const QSvgExtraStates &) const
virtual void drawCommand (QPainter *p, QSvgExtraStates &states)=0
void fillThenStroke (QPainter *p, QSvgExtraStates &states)
QImage drawIntoBuffer (QPainter *p, QSvgExtraStates &states, const QRect &boundsRect)
void applyMaskToBuffer (QImage *proxy, QImage mask) const
void drawWithMask (QPainter *p, QSvgExtraStates &states, const QImage &mask, const QRect &boundsRect)
void applyBufferToCanvas (QPainter *p, QImage proxy) const
QSvgNodeparent () const
bool isDescendantOf (const QSvgNode *parent) const
void appendStyleProperty (QSvgStyleProperty *prop, const QString &id)
void applyStyle (QPainter *p, QSvgExtraStates &states) const
void applyStyleRecursive (QPainter *p, QSvgExtraStates &states) const
void revertStyle (QPainter *p, QSvgExtraStates &states) const
void revertStyleRecursive (QPainter *p, QSvgExtraStates &states) const
void applyAnimatedStyle (QPainter *p, QSvgExtraStates &states) const
void revertAnimatedStyle (QPainter *p, QSvgExtraStates &states) const
QSvgStylePropertystyleProperty (QSvgStyleProperty::Type type) const
QSvgPaintStylePropertystyleProperty (QStringView id) const
QSvgTinyDocumentdocument () const
virtual Type type () const =0
QString typeName () const
virtual QRectF internalFastBounds (QPainter *p, QSvgExtraStates &states) const
virtual QRectF internalBounds (QPainter *p, QSvgExtraStates &states) const
QRectF bounds (QPainter *p, QSvgExtraStates &states) const
QRectF bounds () const
virtual QRectF decoratedInternalBounds (QPainter *p, QSvgExtraStates &states) const
virtual QRectF decoratedBounds (QPainter *p, QSvgExtraStates &states) const
void setRequiredFeatures (const QStringList &lst)
const QStringListrequiredFeatures () const
void setRequiredExtensions (const QStringList &lst)
const QStringListrequiredExtensions () const
void setRequiredLanguages (const QStringList &lst)
const QStringListrequiredLanguages () const
void setRequiredFormats (const QStringList &lst)
const QStringListrequiredFormats () const
void setRequiredFonts (const QStringList &lst)
const QStringListrequiredFonts () const
void setVisible (bool visible)
bool isVisible () const
void setDisplayMode (DisplayMode display)
DisplayMode displayMode () const
QString nodeId () const
void setNodeId (const QString &i)
QString xmlClass () const
void setXmlClass (const QString &str)
QString maskId () const
void setMaskId (const QString &str)
bool hasMask () const
QString filterId () const
void setFilterId (const QString &str)
bool hasFilter () const
QString markerStartId () const
void setMarkerStartId (const QString &str)
bool hasMarkerStart () const
QString markerMidId () const
void setMarkerMidId (const QString &str)
bool hasMarkerMid () const
QString markerEndId () const
void setMarkerEndId (const QString &str)
bool hasMarkerEnd () const
bool hasAnyMarker () const
virtual bool requiresGroupRendering () const
virtual bool shouldDrawNode (QPainter *p, QSvgExtraStates &states) const
const QSvgStaticStylestyle () const

Protected Types

enum  BoundsMode { Simplistic , IncludeMiterLimit }

Protected Member Functions

QRectF filterRegion (QRectF bounds) const

Static Protected Member Functions

static qreal strokeWidth (QPainter *p)
static void initPainter (QPainter *p)
static QRectF boundsOnStroke (QPainter *p, const QPainterPath &path, qreal width, BoundsMode mode)

Protected Attributes

QSvgStaticStyle m_style
QSvgAnimatedStyle m_animatedStyle

Friends

class QSvgTinyDocument

Detailed Description

Definition at line 30 of file qsvgnode_p.h.

Member Enumeration Documentation

◆ BoundsMode

enum QSvgNode::BoundsMode
protected
Enumerator
Simplistic 
IncludeMiterLimit 

Definition at line 188 of file qsvgnode_p.h.

◆ DisplayMode

Enumerator
InlineMode 
BlockMode 
ListItemMode 
RunInMode 
CompactMode 
MarkerMode 
TableMode 
InlineTableMode 
TableRowGroupMode 
TableHeaderGroupMode 
TableFooterGroupMode 
TableRowMode 
TableColumnGroupMode 
TableColumnMode 
TableCellMode 
TableCaptionMode 
NoneMode 
InheritMode 

Definition at line 69 of file qsvgnode_p.h.

◆ Type

Enumerator
Doc 
Group 
Defs 
Switch 
AnimateColor 
AnimateTransform 
Circle 
Ellipse 
Image 
Line 
Path 
Polygon 
Polyline 
Rect 
Text 
Textarea 
Tspan 
Use 
Video 
Mask 
Symbol 
Marker 
Pattern 
Filter 
FeMerge 
FeMergenode 
FeColormatrix 
FeGaussianblur 
FeOffset 
FeComposite 
FeFlood 
FeBlend 
FeUnsupported 

Definition at line 33 of file qsvgnode_p.h.

Constructor & Destructor Documentation

◆ QSvgNode()

QSvgNode::QSvgNode ( QSvgNode * parent = 0)

Definition at line 27 of file qsvgnode.cpp.

◆ ~QSvgNode()

QSvgNode::~QSvgNode ( )
virtual

Definition at line 34 of file qsvgnode.cpp.

Member Function Documentation

◆ appendStyleProperty()

void QSvgNode::appendStyleProperty ( QSvgStyleProperty * prop,
const QString & id )

Definition at line 190 of file qsvgnode.cpp.

◆ applyAnimatedStyle()

void QSvgNode::applyAnimatedStyle ( QPainter * p,
QSvgExtraStates & states ) const

Definition at line 276 of file qsvgnode.cpp.

◆ applyBufferToCanvas()

void QSvgNode::applyBufferToCanvas ( QPainter * p,
QImage proxy ) const

Definition at line 171 of file qsvgnode.cpp.

◆ applyMaskToBuffer()

void QSvgNode::applyMaskToBuffer ( QImage * proxy,
QImage mask ) const

Definition at line 163 of file qsvgnode.cpp.

◆ applyStyle()

void QSvgNode::applyStyle ( QPainter * p,
QSvgExtraStates & states ) const

Definition at line 243 of file qsvgnode.cpp.

◆ applyStyleRecursive()

void QSvgNode::applyStyleRecursive ( QPainter * p,
QSvgExtraStates & states ) const

Apply the styles of all parents to the painter and the states. The styles are applied from the top level node to the current node. This function can be used to set the correct style for a node if it's draw function is triggered out of the ordinary draw context, for example the mask node, that is cross-referenced.

Definition at line 257 of file qsvgnode.cpp.

◆ bounds() [1/2]

QRectF QSvgNode::bounds ( ) const

Definition at line 364 of file qsvgnode.cpp.

◆ bounds() [2/2]

QRectF QSvgNode::bounds ( QPainter * p,
QSvgExtraStates & states ) const

Definition at line 497 of file qsvgnode.cpp.

◆ boundsOnStroke()

QRectF QSvgNode::boundsOnStroke ( QPainter * p,
const QPainterPath & path,
qreal width,
BoundsMode mode )
staticprotected

Definition at line 658 of file qsvgnode.cpp.

◆ decoratedBounds()

QRectF QSvgNode::decoratedBounds ( QPainter * p,
QSvgExtraStates & states ) const
virtual

Definition at line 510 of file qsvgnode.cpp.

◆ decoratedInternalBounds()

QRectF QSvgNode::decoratedInternalBounds ( QPainter * p,
QSvgExtraStates & states ) const
virtual

◆ displayMode()

QSvgNode::DisplayMode QSvgNode::displayMode ( ) const

Definition at line 630 of file qsvgnode.cpp.

◆ document()

QSvgTinyDocument * QSvgNode::document ( ) const

Definition at line 383 of file qsvgnode.cpp.

◆ draw()

void QSvgNode::draw ( QPainter * p,
QSvgExtraStates & states )

Definition at line 39 of file qsvgnode.cpp.

◆ drawCommand()

◆ drawIntoBuffer()

QImage QSvgNode::drawIntoBuffer ( QPainter * p,
QSvgExtraStates & states,
const QRect & boundsRect )

Definition at line 140 of file qsvgnode.cpp.

◆ drawWithMask()

void QSvgNode::drawWithMask ( QPainter * p,
QSvgExtraStates & states,
const QImage & mask,
const QRect & boundsRect )

Definition at line 127 of file qsvgnode.cpp.

◆ fillThenStroke()

void QSvgNode::fillThenStroke ( QPainter * p,
QSvgExtraStates & states )

Definition at line 103 of file qsvgnode.cpp.

◆ filterId()

QString QSvgNode::filterId ( ) const

Definition at line 545 of file qsvgnode.cpp.

◆ filterRegion()

QRectF QSvgNode::filterRegion ( QRectF bounds) const
protected

Definition at line 689 of file qsvgnode.cpp.

◆ hasAnyMarker()

bool QSvgNode::hasAnyMarker ( ) const

Definition at line 613 of file qsvgnode.cpp.

◆ hasFilter()

bool QSvgNode::hasFilter ( ) const

Definition at line 555 of file qsvgnode.cpp.

◆ hasMarkerEnd()

bool QSvgNode::hasMarkerEnd ( ) const

Definition at line 606 of file qsvgnode.cpp.

◆ hasMarkerMid()

bool QSvgNode::hasMarkerMid ( ) const

Definition at line 589 of file qsvgnode.cpp.

◆ hasMarkerStart()

bool QSvgNode::hasMarkerStart ( ) const

Definition at line 572 of file qsvgnode.cpp.

◆ hasMask()

bool QSvgNode::hasMask ( ) const

Definition at line 538 of file qsvgnode.cpp.

◆ initPainter()

void QSvgNode::initPainter ( QPainter * p)
staticprotected

Definition at line 643 of file qsvgnode.cpp.

◆ internalBounds()

QRectF QSvgNode::internalBounds ( QPainter * p,
QSvgExtraStates & states ) const
virtual

◆ internalFastBounds()

QRectF QSvgNode::internalFastBounds ( QPainter * p,
QSvgExtraStates & states ) const
virtual

Reimplemented in QSvgEllipse, QSvgFeFilterPrimitive, QSvgLine, QSvgPath, QSvgPolygon, QSvgPolyline, QSvgRect, and QSvgText.

Definition at line 354 of file qsvgnode.cpp.

◆ isDescendantOf()

bool QSvgNode::isDescendantOf ( const QSvgNode * parent) const

Definition at line 179 of file qsvgnode.cpp.

◆ isVisible()

bool QSvgNode::isVisible ( ) const
inline

Definition at line 224 of file qsvgnode_p.h.

◆ markerEndId()

QString QSvgNode::markerEndId ( ) const

Definition at line 596 of file qsvgnode.cpp.

◆ markerMidId()

QString QSvgNode::markerMidId ( ) const

Definition at line 579 of file qsvgnode.cpp.

◆ markerStartId()

QString QSvgNode::markerStartId ( ) const

Definition at line 562 of file qsvgnode.cpp.

◆ maskId()

QString QSvgNode::maskId ( ) const

Definition at line 528 of file qsvgnode.cpp.

◆ nodeId()

QString QSvgNode::nodeId ( ) const
inline

Definition at line 229 of file qsvgnode_p.h.

◆ parent()

QSvgNode * QSvgNode::parent ( ) const
inline

Definition at line 219 of file qsvgnode_p.h.

◆ requiredExtensions()

const QStringList & QSvgNode::requiredExtensions ( ) const

Definition at line 450 of file qsvgnode.cpp.

◆ requiredFeatures()

const QStringList & QSvgNode::requiredFeatures ( ) const

Definition at line 440 of file qsvgnode.cpp.

◆ requiredFonts()

const QStringList & QSvgNode::requiredFonts ( ) const

Definition at line 480 of file qsvgnode.cpp.

◆ requiredFormats()

const QStringList & QSvgNode::requiredFormats ( ) const

Definition at line 470 of file qsvgnode.cpp.

◆ requiredLanguages()

const QStringList & QSvgNode::requiredLanguages ( ) const

Definition at line 460 of file qsvgnode.cpp.

◆ requiresGroupRendering()

bool QSvgNode::requiresGroupRendering ( ) const
virtual

Reimplemented in QSvgG, QSvgLine, QSvgPath, QSvgPolygon, QSvgPolyline, and QSvgSymbolLike.

Definition at line 620 of file qsvgnode.cpp.

◆ revertAnimatedStyle()

void QSvgNode::revertAnimatedStyle ( QPainter * p,
QSvgExtraStates & states ) const

Definition at line 282 of file qsvgnode.cpp.

◆ revertStyle()

void QSvgNode::revertStyle ( QPainter * p,
QSvgExtraStates & states ) const

Definition at line 264 of file qsvgnode.cpp.

◆ revertStyleRecursive()

void QSvgNode::revertStyleRecursive ( QPainter * p,
QSvgExtraStates & states ) const

Definition at line 269 of file qsvgnode.cpp.

◆ separateFillStroke()

virtual bool QSvgNode::separateFillStroke ( const QSvgExtraStates & ) const
inlinevirtual

Reimplemented in QSvgEllipse, QSvgPath, QSvgPolygon, QSvgPolyline, QSvgRect, and QSvgText.

Definition at line 94 of file qsvgnode_p.h.

◆ setDisplayMode()

void QSvgNode::setDisplayMode ( DisplayMode display)

Definition at line 625 of file qsvgnode.cpp.

◆ setFilterId()

void QSvgNode::setFilterId ( const QString & str)

Definition at line 550 of file qsvgnode.cpp.

◆ setMarkerEndId()

void QSvgNode::setMarkerEndId ( const QString & str)

Definition at line 601 of file qsvgnode.cpp.

◆ setMarkerMidId()

void QSvgNode::setMarkerMidId ( const QString & str)

Definition at line 584 of file qsvgnode.cpp.

◆ setMarkerStartId()

void QSvgNode::setMarkerStartId ( const QString & str)

Definition at line 567 of file qsvgnode.cpp.

◆ setMaskId()

void QSvgNode::setMaskId ( const QString & str)

Definition at line 533 of file qsvgnode.cpp.

◆ setNodeId()

void QSvgNode::setNodeId ( const QString & i)

Definition at line 518 of file qsvgnode.cpp.

◆ setRequiredExtensions()

void QSvgNode::setRequiredExtensions ( const QStringList & lst)

Definition at line 445 of file qsvgnode.cpp.

◆ setRequiredFeatures()

void QSvgNode::setRequiredFeatures ( const QStringList & lst)

Definition at line 435 of file qsvgnode.cpp.

◆ setRequiredFonts()

void QSvgNode::setRequiredFonts ( const QStringList & lst)

Definition at line 475 of file qsvgnode.cpp.

◆ setRequiredFormats()

void QSvgNode::setRequiredFormats ( const QStringList & lst)

Definition at line 465 of file qsvgnode.cpp.

◆ setRequiredLanguages()

void QSvgNode::setRequiredLanguages ( const QStringList & lst)

Definition at line 455 of file qsvgnode.cpp.

◆ setVisible()

void QSvgNode::setVisible ( bool visible)

Definition at line 485 of file qsvgnode.cpp.

◆ setXmlClass()

void QSvgNode::setXmlClass ( const QString & str)

Definition at line 523 of file qsvgnode.cpp.

◆ shouldDrawNode()

bool QSvgNode::shouldDrawNode ( QPainter * p,
QSvgExtraStates & states ) const
virtual

◆ strokeWidth()

qreal QSvgNode::strokeWidth ( QPainter * p)
staticprotected

Definition at line 635 of file qsvgnode.cpp.

◆ style()

const QSvgStaticStyle & QSvgNode::style ( ) const
inline

Definition at line 178 of file qsvgnode_p.h.

◆ styleProperty() [1/2]

QSvgPaintStyleProperty * QSvgNode::styleProperty ( QStringView id) const

Definition at line 346 of file qsvgnode.cpp.

◆ styleProperty() [2/2]

QSvgStyleProperty * QSvgNode::styleProperty ( QSvgStyleProperty::Type type) const

Definition at line 288 of file qsvgnode.cpp.

◆ type()

◆ typeName()

QString QSvgNode::typeName ( ) const

Definition at line 395 of file qsvgnode.cpp.

◆ xmlClass()

QString QSvgNode::xmlClass ( ) const
inline

Definition at line 234 of file qsvgnode_p.h.

◆ QSvgTinyDocument

friend class QSvgTinyDocument
friend

Definition at line 216 of file qsvgnode_p.h.

Member Data Documentation

◆ m_animatedStyle

QSvgAnimatedStyle QSvgNode::m_animatedStyle
mutableprotected

Definition at line 181 of file qsvgnode_p.h.

◆ m_style

QSvgStaticStyle QSvgNode::m_style
mutableprotected

Definition at line 180 of file qsvgnode_p.h.


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