diff options
author | Marc Mutz <marc.mutz@kdab.com> | 2014-10-05 21:42:05 +0200 |
---|---|---|
committer | Marc Mutz <marc.mutz@kdab.com> | 2014-10-08 13:58:40 +0200 |
commit | 9b80ed9d5662069351f42330f0521db866545c22 (patch) | |
tree | 5a18c28002d5fd3cf1d7dd24eae17a2eef836e4e /src/gui | |
parent | 9a5e4ada9c729281470d30c6d32f1e9792b756ef (diff) |
QCss: mark many classes as movable
Most of these are held in QVectors, so let QVector use the
optimized reallocation strategy.
Change-Id: I6c2182465c283705bd5ec761e3d2d3d072bc6207
Reviewed-by: Simon Hausmann <simon.hausmann@digia.com>
Reviewed-by: Friedemann Kleint <Friedemann.Kleint@digia.com>
Diffstat (limited to 'src/gui')
-rw-r--r-- | src/gui/text/qcssparser_p.h | 24 |
1 files changed, 24 insertions, 0 deletions
diff --git a/src/gui/text/qcssparser_p.h b/src/gui/text/qcssparser_p.h index 65e9b5a0ba..5e853c40d0 100644 --- a/src/gui/text/qcssparser_p.h +++ b/src/gui/text/qcssparser_p.h @@ -69,6 +69,11 @@ QT_END_NAMESPACE # undef Value #endif +#define QT_CSS_DECLARE_TYPEINFO(Class, Type) \ + } /* namespace QCss */ \ + Q_DECLARE_TYPEINFO(QCss:: Class, Type); \ + namespace QCss { + QT_BEGIN_NAMESPACE namespace QCss @@ -367,6 +372,7 @@ struct Value Q_GUI_EXPORT QString toString() const; }; +QT_CSS_DECLARE_TYPEINFO(Value, Q_MOVABLE_TYPE) struct ColorData { ColorData() : role(QPalette::NoRole), type(Invalid) {} @@ -376,6 +382,7 @@ struct ColorData { QPalette::ColorRole role; enum { Invalid, Color, Role} type; }; +QT_CSS_DECLARE_TYPEINFO(ColorData, Q_MOVABLE_TYPE) struct BrushData { BrushData() : role(QPalette::NoRole), type(Invalid) {} @@ -385,6 +392,7 @@ struct BrushData { QPalette::ColorRole role; enum { Invalid, Brush, Role, DependsOnThePalette } type; }; +QT_CSS_DECLARE_TYPEINFO(BrushData, Q_MOVABLE_TYPE) struct BackgroundData { BrushData brush; @@ -392,17 +400,20 @@ struct BackgroundData { Repeat repeat; Qt::Alignment alignment; }; +QT_CSS_DECLARE_TYPEINFO(BackgroundData, Q_MOVABLE_TYPE) struct LengthData { qreal number; enum { None, Px, Ex, Em } unit; }; +QT_CSS_DECLARE_TYPEINFO(LengthData, Q_PRIMITIVE_TYPE) struct BorderData { LengthData width; BorderStyle style; BrushData color; }; +QT_CSS_DECLARE_TYPEINFO(BorderData, Q_MOVABLE_TYPE) // 1. StyleRule - x:hover, y:clicked > z:checked { prop1: value1; prop2: value2; } @@ -452,6 +463,7 @@ struct Q_GUI_EXPORT Declaration void borderImageValue(QString *image, int *cuts, TileMode *h, TileMode *v) const; }; +QT_CSS_DECLARE_TYPEINFO(Declaration, Q_MOVABLE_TYPE) const quint64 PseudoClass_Unknown = Q_UINT64_C(0x0000000000000000); const quint64 PseudoClass_Enabled = Q_UINT64_C(0x0000000000000001); @@ -511,6 +523,7 @@ struct Pseudo QString function; bool negated; }; +QT_CSS_DECLARE_TYPEINFO(Pseudo, Q_MOVABLE_TYPE) struct AttributeSelector { @@ -526,6 +539,7 @@ struct AttributeSelector QString value; ValueMatchType valueMatchCriterium; }; +QT_CSS_DECLARE_TYPEINFO(AttributeSelector, Q_MOVABLE_TYPE) struct BasicSelector { @@ -546,6 +560,7 @@ struct BasicSelector Relation relationToNext; }; +QT_CSS_DECLARE_TYPEINFO(BasicSelector, Q_MOVABLE_TYPE) struct Q_GUI_EXPORT Selector { @@ -554,6 +569,7 @@ struct Q_GUI_EXPORT Selector quint64 pseudoClass(quint64 *negated = 0) const; QString pseudoElement() const; }; +QT_CSS_DECLARE_TYPEINFO(Selector, Q_MOVABLE_TYPE) struct StyleRule { @@ -562,24 +578,28 @@ struct StyleRule QVector<Declaration> declarations; int order; }; +QT_CSS_DECLARE_TYPEINFO(StyleRule, Q_MOVABLE_TYPE) struct MediaRule { QStringList media; QVector<StyleRule> styleRules; }; +QT_CSS_DECLARE_TYPEINFO(MediaRule, Q_MOVABLE_TYPE) struct PageRule { QString selector; QVector<Declaration> declarations; }; +QT_CSS_DECLARE_TYPEINFO(PageRule, Q_MOVABLE_TYPE) struct ImportRule { QString href; QStringList media; }; +QT_CSS_DECLARE_TYPEINFO(ImportRule, Q_MOVABLE_TYPE) enum StyleSheetOrigin { StyleSheetOrigin_Unspecified, @@ -603,6 +623,8 @@ struct StyleSheet Q_GUI_EXPORT void buildIndexes(Qt::CaseSensitivity nameCaseSensitivity = Qt::CaseSensitive); }; +QT_CSS_DECLARE_TYPEINFO(StyleSheet, Q_MOVABLE_TYPE) + class Q_GUI_EXPORT StyleSelector { @@ -695,6 +717,7 @@ struct Symbol int start, len; Q_GUI_EXPORT QString lexem() const; }; +QT_CSS_DECLARE_TYPEINFO(Symbol, Q_MOVABLE_TYPE) class Q_GUI_EXPORT Scanner { @@ -832,6 +855,7 @@ Q_DECLARE_METATYPE( QCss::BackgroundData ) Q_DECLARE_METATYPE( QCss::LengthData ) Q_DECLARE_METATYPE( QCss::BorderData ) +#undef QT_CSS_DECLARE_TYPEINFO #endif // QT_NO_CSSPARSER |