diff options
author | Liang Qi <liang.qi@theqtcompany.com> | 2016-04-18 14:26:15 +0200 |
---|---|---|
committer | Liang Qi <liang.qi@theqtcompany.com> | 2016-04-18 15:28:37 +0000 |
commit | 95babf15bda484e7c1764d4db6a6b55c1c47378a (patch) | |
tree | 783eeb2d26fdd066ee5b975e0f01b283c5347945 /src/quicktemplates2/qquickcontrol.cpp | |
parent | 26eeea3959455fbde884631c554702ef0a8dff75 (diff) |
QQuickControlPrivate: move font to ExtraData
Change-Id: Idc01a8a23dcddc271bb01d9ab57238a860dc1c84
Reviewed-by: J-P Nurmi <jpnurmi@qt.io>
Diffstat (limited to 'src/quicktemplates2/qquickcontrol.cpp')
-rw-r--r-- | src/quicktemplates2/qquickcontrol.cpp | 12 |
1 files changed, 8 insertions, 4 deletions
diff --git a/src/quicktemplates2/qquickcontrol.cpp b/src/quicktemplates2/qquickcontrol.cpp index 618fc421..55849aa5 100644 --- a/src/quicktemplates2/qquickcontrol.cpp +++ b/src/quicktemplates2/qquickcontrol.cpp @@ -78,6 +78,10 @@ static bool isKeyFocusReason(Qt::FocusReason reason) return reason == Qt::TabFocusReason || reason == Qt::BacktabFocusReason || reason == Qt::ShortcutFocusReason; } +QQuickControlPrivate::ExtraData::ExtraData() +{ +} + QQuickControlPrivate::QQuickControlPrivate() : hasTopPadding(false), hasLeftPadding(false), hasRightPadding(false), hasBottomPadding(false), hasLocale(false), hovered(false), wheelEnabled(false), padding(0), topPadding(0), leftPadding(0), rightPadding(0), bottomPadding(0), spacing(0), @@ -280,8 +284,8 @@ void QQuickControlPrivate::resolveFont() void QQuickControlPrivate::inheritFont(const QFont &f) { Q_Q(QQuickControl); - QFont parentFont = font.resolve(f); - parentFont.resolve(font.resolve() | f.resolve()); + QFont parentFont = extra.isAllocated() ? extra->font.resolve(f) : f; + parentFont.resolve(extra.isAllocated() ? extra->font.resolve() | f.resolve() : f.resolve()); const QFont defaultFont = q->defaultFont(); const QFont resolvedFont = parentFont.resolve(defaultFont); @@ -430,10 +434,10 @@ QFont QQuickControl::font() const void QQuickControl::setFont(const QFont &font) { Q_D(QQuickControl); - if (d->font.resolve() == font.resolve() && d->font == font) + if (d->extra.value().font.resolve() == font.resolve() && d->extra.value().font == font) return; - d->font = font; + d->extra.value().font = font; d->resolveFont(); } |