diff options
author | Matthias Rauter <matthias.rauter@qt.io> | 2024-03-06 13:17:18 +0100 |
---|---|---|
committer | Matthias Rauter <matthias.rauter@qt.io> | 2024-03-15 16:35:04 +0100 |
commit | 247453e7d5c84837b80444c26b1afd6165f63477 (patch) | |
tree | 9350c128db094514cc5429b45843e205065f75dc /src/svg/qsvgnode_p.h | |
parent | d99f357bb7b3e07d2a7b061140ab430bcaa5010e (diff) |
Enable <use> elements in <mask> and propagate state to mask children
The use node could not be created within a mask due to a missing entry
in a switch statement. This is corrected with this patch.
The mask element was implemented such that states do not propagate to
it's children. This is not correct and states are propagated correctly
with this patch.
Pick-to: 6.7 6.7.0
Fixes: QTBUG-123010
Change-Id: I4aab070c73b2e8a9bd0c642c70ea5b28eaef3416
Reviewed-by: Eirik Aavitsland <eirik.aavitsland@qt.io>
Diffstat (limited to 'src/svg/qsvgnode_p.h')
-rw-r--r-- | src/svg/qsvgnode_p.h | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/src/svg/qsvgnode_p.h b/src/svg/qsvgnode_p.h index c0fa35c..f616a45 100644 --- a/src/svg/qsvgnode_p.h +++ b/src/svg/qsvgnode_p.h @@ -101,6 +101,7 @@ public: 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; QSvgStyleProperty *styleProperty(QSvgStyleProperty::Type type) const; QSvgPaintStyleProperty *styleProperty(const QString &id) const; @@ -169,6 +170,8 @@ protected: mutable QSvgStyle m_style; static qreal strokeWidth(QPainter *p); + static void initPainter(QPainter *p); + private: QSvgNode *m_parent; |