aboutsummaryrefslogtreecommitdiffstats
path: root/src/quicktemplates2/qquicktheme_p.h
diff options
context:
space:
mode:
authorJ-P Nurmi <jpnurmi@qt.io>2018-05-13 19:34:29 +0200
committerJ-P Nurmi <jpnurmi@qt.io>2018-05-22 14:20:58 +0000
commit9478053838ae2d950b162c2b93a2a400c82d9bf7 (patch)
tree317481f78a4c02e6c03ee6be50ac12df205e5b75 /src/quicktemplates2/qquicktheme_p.h
parent1a3c1a089ff088482c9d093f4fa002e2d47cc103 (diff)
Create and init QQuickTheme from QtQuickControls2Plugin
Instead of creating and setting the QQuickTheme instance from each style plugin (e.g. QtQuickControls2MaterialStylePlugin), create the QQuickTheme instance in QtQuickControls2Plugin when the style is being resolved, and just pass the instance to be initialized by the style plugin(s). This avoids the problem that QQuickTheme API was virtual, and sub-classes created from plugins would have vtables destroyed before the QQuickTheme was destroyed. Task-number: QTBUG-67062 Task-number: QTBUG-68087 Change-Id: I19e9ced5296b708c2668c30163389cb3da6be7cf Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
Diffstat (limited to 'src/quicktemplates2/qquicktheme_p.h')
-rw-r--r--src/quicktemplates2/qquicktheme_p.h5
1 files changed, 1 insertions, 4 deletions
diff --git a/src/quicktemplates2/qquicktheme_p.h b/src/quicktemplates2/qquicktheme_p.h
index 44610c09..d51cc5b6 100644
--- a/src/quicktemplates2/qquicktheme_p.h
+++ b/src/quicktemplates2/qquicktheme_p.h
@@ -61,7 +61,7 @@ class Q_QUICKTEMPLATES2_PRIVATE_EXPORT QQuickTheme
{
public:
QQuickTheme();
- virtual ~QQuickTheme();
+ ~QQuickTheme();
static QQuickTheme *instance();
@@ -90,12 +90,9 @@ public:
static QFont font(Scope scope);
static QPalette palette(Scope scope);
-protected:
void setFont(Scope scope, const QFont &font);
void setPalette(Scope scope, const QPalette &palette);
- virtual void resolve();
-
private:
Q_DISABLE_COPY(QQuickTheme)
Q_DECLARE_PRIVATE(QQuickTheme)