Qt
Internal/Contributor docs for the Qt SDK. <b>Note:</b> These are NOT official API docs; those are found <a href='https://doc.qt.io/'>here</a>.
|
#include <qsgdistancefieldglyphnode_p.h>
Public Member Functions | |
QSGDistanceFieldGlyphNode (QSGRenderContext *context) | |
~QSGDistanceFieldGlyphNode () | |
QPointF | baseLine () const override |
void | setGlyphs (const QPointF &position, const QGlyphRun &glyphs) override |
void | setColor (const QColor &color) override |
void | setPreferredAntialiasingMode (AntialiasingMode mode) override |
void | setRenderTypeQuality (int renderTypeQuality) override |
void | setStyle (QQuickText::TextStyle style) override |
void | setStyleColor (const QColor &color) override |
void | update () override |
void | preprocess () override |
Override this function to do processing on the node before it is rendered. | |
void | invalidateGlyphs (const QVector< quint32 > &glyphs) override |
void | updateGeometry () |
Public Member Functions inherited from QSGGlyphNode | |
QSGGlyphNode () | |
~QSGGlyphNode () override | |
virtual QRectF | boundingRect () const |
virtual void | setBoundingRect (const QRectF &bounds) |
void | accept (QSGNodeVisitorEx *visitor) override |
Public Member Functions inherited from QSGVisitableNode | |
QSGVisitableNode () | |
~QSGVisitableNode () override | |
Public Member Functions inherited from QSGGeometryNode | |
QSGGeometryNode () | |
Creates a new geometry node without geometry and material. | |
~QSGGeometryNode () override | |
Deletes this geometry node. | |
void | setMaterial (QSGMaterial *material) |
Sets the material of this geometry node to material. | |
QSGMaterial * | material () const |
Returns the material of the QSGGeometryNode. | |
void | setOpaqueMaterial (QSGMaterial *material) |
Sets the opaque material of this geometry to material. | |
QSGMaterial * | opaqueMaterial () const |
Returns the opaque material of the QSGGeometryNode. | |
QSGMaterial * | activeMaterial () const |
Returns the material which should currently be used for geometry node. | |
void | setRenderOrder (int order) |
Sets the render order of this node to be order. | |
int | renderOrder () const |
Returns the render order of this geometry node. | |
void | setInheritedOpacity (qreal opacity) |
Sets the inherited opacity of this geometry to opacity. | |
qreal | inheritedOpacity () const |
Set during rendering to specify the inherited opacity for that rendering pass. | |
Public Member Functions inherited from QSGBasicGeometryNode | |
~QSGBasicGeometryNode () override | |
Deletes this QSGBasicGeometryNode. | |
void | setGeometry (QSGGeometry *geometry) |
Sets the geometry of this node to geometry. | |
const QSGGeometry * | geometry () const |
Returns this node's geometry. | |
QSGGeometry * | geometry () |
Returns this node's geometry. | |
const QMatrix4x4 * | matrix () const |
Will be set during rendering to contain transformation of the geometry for that rendering pass. | |
const QSGClipNode * | clipList () const |
Will be set during rendering to contain the clip of the geometry for that rendering pass. | |
void | setRendererMatrix (const QMatrix4x4 *m) |
void | setRendererClipList (const QSGClipNode *c) |
Public Member Functions inherited from QSGNode | |
QSGNode () | |
Constructs a new node. | |
virtual | ~QSGNode () |
Destroys the node. | |
QSGNode * | parent () const |
Returns the parent node of this node. | |
void | removeChildNode (QSGNode *node) |
Removes node from this node's list of children. | |
void | removeAllChildNodes () |
Removes all child nodes from this node's list of children. | |
void | prependChildNode (QSGNode *node) |
Prepends node to this node's the list of children. | |
void | appendChildNode (QSGNode *node) |
Appends node to this node's list of children. | |
void | insertChildNodeBefore (QSGNode *node, QSGNode *before) |
Inserts node to this node's list of children before the node specified with before. | |
void | insertChildNodeAfter (QSGNode *node, QSGNode *after) |
Inserts node to this node's list of children after the node specified with after. | |
void | reparentChildNodesTo (QSGNode *newParent) |
int | childCount () const |
Returns the number of child nodes. | |
QSGNode * | childAtIndex (int i) const |
Returns the child at index i. | |
QSGNode * | firstChild () const |
Returns the first child of this node. | |
QSGNode * | lastChild () const |
Returns the last child of this node. | |
QSGNode * | nextSibling () const |
Returns the node after this in the parent's list of children. | |
QSGNode * | previousSibling () const |
Returns the node before this in the parent's list of children. | |
NodeType | type () const |
Returns the type of this node. | |
QT_DEPRECATED void | clearDirty () |
void | markDirty (DirtyState bits) |
Notifies all connected renderers that the node has dirty bits. | |
QT_DEPRECATED DirtyState | dirtyState () const |
virtual bool | isSubtreeBlocked () const |
Returns whether this node and its subtree is available for use. | |
Flags | flags () const |
Returns the set of flags for this node. | |
void | setFlag (Flag, bool=true) |
Sets the flag f on this node if enabled is true; otherwise clears the flag. | |
void | setFlags (Flags, bool=true) |
Sets the flags f on this node if enabled is true; otherwise clears the flags. | |
Public Member Functions inherited from QSGDistanceFieldGlyphConsumer | |
virtual | ~QSGDistanceFieldGlyphConsumer () |
Additional Inherited Members | |
Public Types inherited from QSGGlyphNode | |
enum | AntialiasingMode { DefaultAntialiasing = -1 , GrayAntialiasing , LowQualitySubPixelAntialiasing , HighQualitySubPixelAntialiasing } |
Public Types inherited from QSGNode | |
enum | NodeType { BasicNodeType , GeometryNodeType , TransformNodeType , ClipNodeType , OpacityNodeType , RootNodeType , RenderNodeType } |
Can be used to figure out the type of node. More... | |
enum | Flag { OwnedByParent = 0x0001 , UsePreprocess = 0x0002 , OwnsGeometry = 0x00010000 , OwnsMaterial = 0x00020000 , OwnsOpaqueMaterial = 0x00040000 , IsVisitableNode = 0x01000000 } |
The QSGNode::Flag enum describes flags on the QSGNode. More... | |
enum | DirtyStateBit { DirtySubtreeBlocked = 0x0080 , DirtyMatrix = 0x0100 , DirtyNodeAdded = 0x0400 , DirtyNodeRemoved = 0x0800 , DirtyGeometry = 0x1000 , DirtyMaterial = 0x2000 , DirtyOpacity = 0x4000 , DirtyForceUpdate = 0x8000 , DirtyUsePreprocess = UsePreprocess , DirtyPropagationMask } |
Used in QSGNode::markDirty() to indicate how the scene graph has changed. More... | |
Public Attributes inherited from QSGDistanceFieldGlyphConsumer | |
QIntrusiveListNode | node |
Protected Member Functions inherited from QSGGeometryNode | |
QSGGeometryNode (QSGGeometryNodePrivate &dd) | |
Protected Member Functions inherited from QSGBasicGeometryNode | |
QSGBasicGeometryNode (NodeType type) | |
Creates a new basic geometry node of type type. | |
QSGBasicGeometryNode (QSGBasicGeometryNodePrivate &dd, NodeType type) | |
Protected Member Functions inherited from QSGNode | |
QSGNode (NodeType type) | |
Constructs a new node with the given node type. | |
QSGNode (QSGNodePrivate &dd, NodeType type) | |
Constructs a new node with the given node type. | |
Protected Attributes inherited from QSGGlyphNode | |
QRectF | m_bounding_rect |
Protected Attributes inherited from QSGNode | |
QScopedPointer< QSGNodePrivate > | d_ptr |
Definition at line 28 of file qsgdistancefieldglyphnode_p.h.
QSGDistanceFieldGlyphNode::QSGDistanceFieldGlyphNode | ( | QSGRenderContext * | context | ) |
Definition at line 14 of file qsgdistancefieldglyphnode.cpp.
References QSGGeometry::DrawTriangles, and qsgnode_set_description().
Referenced by updateGeometry().
QSGDistanceFieldGlyphNode::~QSGDistanceFieldGlyphNode | ( | ) |
Definition at line 34 of file qsgdistancefieldglyphnode.cpp.
References QGlyphRun::glyphIndexes(), QSGDistanceFieldGlyphCache::release(), and QSGDistanceFieldGlyphCache::unregisterGlyphNode().
|
inlineoverridevirtual |
Implements QSGGlyphNode.
Definition at line 34 of file qsgdistancefieldglyphnode_p.h.
|
overridevirtual |
Implements QSGDistanceFieldGlyphConsumer.
Definition at line 142 of file qsgdistancefieldglyphnode.cpp.
References QSet< T >::contains(), i, QSGNode::setFlag(), and QSGNode::UsePreprocess.
|
overridevirtual |
Override this function to do processing on the node before it is rendered.
Preprocessing needs to be explicitly enabled by setting the flag QSGNode::UsePreprocess. The flag needs to be set before the node is added to the scene graph and will cause the preprocess() function to be called for every frame the node is rendered.
Reimplemented from QSGNode.
Definition at line 134 of file qsgdistancefieldglyphnode.cpp.
References QSGNode::setFlag(), updateGeometry(), and QSGNode::UsePreprocess.
Implements QSGGlyphNode.
Definition at line 47 of file qsgdistancefieldglyphnode.cpp.
References QSGNode::DirtyMaterial, QSGNode::markDirty(), and QSGDistanceFieldTextMaterial::setColor().
|
overridevirtual |
Implements QSGGlyphNode.
Definition at line 74 of file qsgdistancefieldglyphnode.cpp.
References QList< T >::count(), QSGRenderContext::distanceFieldGlyphCache(), QRawFont::familyName(), font, QGlyphRun::glyphIndexes(), i, QSet< T >::insert(), QString::number(), QRawFont::pixelSize(), QSGDistanceFieldGlyphCache::populate(), position(), PRIdQSIZETYPE, qCDebug, qsgnode_set_description(), QStringLiteral, QGlyphRun::rawFont(), QSGDistanceFieldGlyphCache::registerGlyphNode(), QSGNode::setFlag(), QSet< T >::size(), and QSGNode::UsePreprocess.
|
overridevirtual |
Implements QSGGlyphNode.
Definition at line 66 of file qsgdistancefieldglyphnode.cpp.
Referenced by QSGDefaultContext::createGlyphNode().
|
overridevirtual |
Reimplemented from QSGGlyphNode.
Definition at line 58 of file qsgdistancefieldglyphnode.cpp.
Referenced by QSGDefaultContext::createGlyphNode().
|
overridevirtual |
Implements QSGGlyphNode.
Definition at line 112 of file qsgdistancefieldglyphnode.cpp.
Implements QSGGlyphNode.
Definition at line 120 of file qsgdistancefieldglyphnode.cpp.
|
overridevirtual |
Implements QSGGlyphNode.
Definition at line 128 of file qsgdistancefieldglyphnode.cpp.
void QSGDistanceFieldGlyphNode::updateGeometry | ( | ) |
Definition at line 156 of file qsgdistancefieldglyphnode.cpp.
References QSGDistanceFieldGlyphNode(), QSGNode::appendChildNode(), QHash< Key, T >::clear(), QHash< Key, T >::constBegin(), QHash< Key, T >::constEnd(), QSGNode::DirtyGeometry, QSGDistanceFieldGlyphCache::distanceFieldRadius(), QSGNode::firstChild(), QSGDistanceFieldGlyphCache::fontScale(), QSGBasicGeometryNode::geometry(), QGlyphRun::glyphIndexes(), QSGDistanceFieldGlyphCache::glyphMetrics(), QSGDistanceFieldGlyphCache::glyphTexCoord(), QSGDistanceFieldGlyphCache::glyphTexture(), i, QHash< Key, T >::isEmpty(), QPointF::isNull(), QSGNode::markDirty(), QSGNode::nextSibling(), o, QRawFont::pixelSize(), position(), QGlyphRun::positions(), positions, PRIdQSIZETYPE, Q_ASSERT, qCDebug, qMin(), QGlyphRun::rawFont(), QSGGeometry::TexturedPoint2D::set(), QSGGlyphNode::setBoundingRect(), QSGDistanceFieldTextMaterial::setTexture(), QHash< Key, T >::size(), QSGGeometry::UnsignedShortType, v1, QSGDistanceFieldGlyphCache::Metrics::width, QPointF::x(), and QPointF::y().
Referenced by preprocess().