aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorJ-P Nurmi <jpnurmi@qt.io>2017-02-06 10:20:43 +0100
committerJ-P Nurmi <jpnurmi@qt.io>2017-02-06 11:32:21 +0000
commit68d7935e836f368b41518afe2ea0d4491e8544a1 (patch)
treea1ce9c571732a46604c163f656701a8815eb17f3
parentedf92fed9017a594fde8c6c6f634bb1386a6bdd3 (diff)
Make styles configurable features
./configure [...] Qt Quick Controls 2: Styles ................................. Default Material Universal Supports both syntaxes: -(no-)style-[material|universal] -(no-)feature-quickcontrols2-[material|universal] Change-Id: I011cc38e5752d2c718376ca7493940271920b3e1 Reviewed-by: Mitch Curtis <mitch.curtis@qt.io>
-rw-r--r--.gitignore3
-rw-r--r--configure.json1
-rw-r--r--src/imports/controls/controls.pro2
-rw-r--r--src/imports/controls/material/material.pro2
-rw-r--r--src/imports/controls/universal/universal.pro2
-rw-r--r--src/quickcontrols2/configure.json40
-rw-r--r--src/quickcontrols2/qtquickcontrols2global_p.h1
7 files changed, 51 insertions, 0 deletions
diff --git a/.gitignore b/.gitignore
index 5de4c876..541fb64b 100644
--- a/.gitignore
+++ b/.gitignore
@@ -6,6 +6,9 @@
/mkspecs
/doc
+/src/quickcontrols2/qtquickcontrols2-config.h
+/src/quickcontrols2/qtquickcontrols2-config.pri
+/src/quickcontrols2/qtquickcontrols2-config_p.h
/src/quicktemplates2/qtquicktemplates2-config.h
/src/quicktemplates2/qtquicktemplates2-config.pri
/src/quicktemplates2/qtquicktemplates2-config_p.h
diff --git a/configure.json b/configure.json
index 5378d2d7..717877a8 100644
--- a/configure.json
+++ b/configure.json
@@ -1,5 +1,6 @@
{
"subconfigs": [
+ "src/quickcontrols2",
"src/quicktemplates2"
]
}
diff --git a/src/imports/controls/controls.pro b/src/imports/controls/controls.pro
index 47d1f64e..b39a0fda 100644
--- a/src/imports/controls/controls.pro
+++ b/src/imports/controls/controls.pro
@@ -28,3 +28,5 @@ qtquickcompiler {
CONFIG += no_cxx_module
load(qml_plugin)
+
+requires(qtConfig(quickcontrols2-default))
diff --git a/src/imports/controls/material/material.pro b/src/imports/controls/material/material.pro
index 28448a0e..c5e85485 100644
--- a/src/imports/controls/material/material.pro
+++ b/src/imports/controls/material/material.pro
@@ -20,3 +20,5 @@ include(material.pri)
CONFIG += no_cxx_module
load(qml_plugin)
+
+requires(qtConfig(quickcontrols2-material))
diff --git a/src/imports/controls/universal/universal.pro b/src/imports/controls/universal/universal.pro
index 3d091635..eba5a9d8 100644
--- a/src/imports/controls/universal/universal.pro
+++ b/src/imports/controls/universal/universal.pro
@@ -20,3 +20,5 @@ include(universal.pri)
CONFIG += no_cxx_module
load(qml_plugin)
+
+requires(qtConfig(quickcontrols2-universal))
diff --git a/src/quickcontrols2/configure.json b/src/quickcontrols2/configure.json
new file mode 100644
index 00000000..e1d16d17
--- /dev/null
+++ b/src/quickcontrols2/configure.json
@@ -0,0 +1,40 @@
+{
+ "module": "quickcontrols2",
+
+ "commandline": {
+ "options": {
+ "style-material": { "type": "boolean", "name": "quickcontrols2-material" },
+ "style-universal": { "type": "boolean", "name": "quickcontrols2-universal" }
+ }
+ },
+
+ "features": {
+ "quickcontrols2-default": {
+ "label": "Default",
+ "output": [ "privateFeature" ]
+ },
+ "quickcontrols2-material": {
+ "label": "Material",
+ "purpose": "A style based on the Material Design guidelines",
+ "output": [ "privateFeature" ]
+ },
+ "quickcontrols2-universal": {
+ "label": "Universal",
+ "purpose": "A style based on the Universal Design guidelines",
+ "output": [ "privateFeature" ]
+ }
+ },
+
+ "summary": [
+ {
+ "section": "Qt Quick Controls 2",
+ "entries": [
+ {
+ "message": "Styles",
+ "type": "featureList",
+ "args": "quickcontrols2-default quickcontrols2-material quickcontrols2-universal"
+ }
+ ]
+ }
+ ]
+}
diff --git a/src/quickcontrols2/qtquickcontrols2global_p.h b/src/quickcontrols2/qtquickcontrols2global_p.h
index 3058d884..7a54849e 100644
--- a/src/quickcontrols2/qtquickcontrols2global_p.h
+++ b/src/quickcontrols2/qtquickcontrols2global_p.h
@@ -49,6 +49,7 @@
//
#include <QtQuickControls2/qtquickcontrols2global.h>
+#include <QtQuickControls2/private/qtquickcontrols2-config_p.h>
#define Q_QUICKCONTROLS2_PRIVATE_EXPORT Q_QUICKCONTROLS2_EXPORT