diff options
author | Lars Knoll <lars.knoll@qt.io> | 2016-08-17 14:12:06 +0200 |
---|---|---|
committer | Lars Knoll <lars.knoll@qt.io> | 2016-10-10 14:12:11 +0000 |
commit | b9447812542a4315718cd0fad9a9fb10a25e114a (patch) | |
tree | 82663a4159f4ff6f433e060813c75de0916b2c16 /src/quick | |
parent | 0f63a7d09605ca2ca8571edd4a27b3a035fd06a5 (diff) |
Make itemviews and positioners configurable
Change-Id: Ia26cbbdb2b2a0ed74398bfad7689db7289ad8c6a
Reviewed-by: Oswald Buddenhagen <oswald.buddenhagen@theqtcompany.com>
Reviewed-by: Simon Hausmann <simon.hausmann@qt.io>
Diffstat (limited to 'src/quick')
-rw-r--r-- | src/quick/configure.json | 25 | ||||
-rw-r--r-- | src/quick/items/items.pri | 31 | ||||
-rw-r--r-- | src/quick/items/qquickgridview_p.h | 5 | ||||
-rw-r--r-- | src/quick/items/qquickitemsmodule.cpp | 28 | ||||
-rw-r--r-- | src/quick/items/qquickitemview_p.h | 4 | ||||
-rw-r--r-- | src/quick/items/qquickitemview_p_p.h | 4 | ||||
-rw-r--r-- | src/quick/items/qquickpositioners_p.h | 4 | ||||
-rw-r--r-- | src/quick/items/qquickpositioners_p_p.h | 4 |
8 files changed, 91 insertions, 14 deletions
diff --git a/src/quick/configure.json b/src/quick/configure.json index eb7119e6b2..87da6d3344 100644 --- a/src/quick/configure.json +++ b/src/quick/configure.json @@ -11,9 +11,11 @@ "quick-animatedimage": "boolean", "quick-canvas": "boolean", "quick-flipable": "boolean", + "quick-gridview": "boolean", "quick-listview": "boolean", "quick-path": "boolean", "quick-pathview": "boolean", + "quick-positioners": "boolean", "quick-shadereffect": "boolean", "quick-sprite": "boolean" } @@ -58,6 +60,20 @@ "privateFeature" ] }, + "quick-gridview": { + "label": "GridView item", + "purpose": "Provides the Qt Quick GridView item", + "output": [ + "privateFeature" + ] + }, + "quick-itemview": { + "label": "ItemView item", + "condition": "features.quick-gridview || features.quick-listview", + "output": [ + "privateFeature" + ] + }, "quick-listview": { "label": "ListView item", "purpose": "Provides the Qt Quick ListView item", @@ -80,6 +96,13 @@ "privateFeature" ] }, + "quick-positioners": { + "label": "Positioner items", + "purpose": "Provides Positioner items in Qt Quick", + "output": [ + "privateFeature" + ] + }, "quick-shadereffect": { "label": "ShaderEffect item", "purpose": "Provides Shader effects in Qt Quick", @@ -104,9 +127,11 @@ "quick-animatedimage", "quick-canvas", "quick-flipable", + "quick-gridview", "quick-listview", "quick-path", "quick-pathview", + "quick-positioners", "quick-shadereffect", "quick-sprite" ] diff --git a/src/quick/items/items.pri b/src/quick/items/items.pri index 297babb742..37f3a138ad 100644 --- a/src/quick/items/items.pri +++ b/src/quick/items/items.pri @@ -43,9 +43,6 @@ HEADERS += \ $$PWD/qquickflickablebehavior_p.h \ $$PWD/qquickrepeater_p.h \ $$PWD/qquickrepeater_p_p.h \ - $$PWD/qquickgridview_p.h \ - $$PWD/qquickpositioners_p.h \ - $$PWD/qquickpositioners_p_p.h \ $$PWD/qquickloader_p.h \ $$PWD/qquickloader_p_p.h \ $$PWD/qquicktranslate_p.h \ @@ -60,8 +57,6 @@ HEADERS += \ $$PWD/qquickdrag_p.h \ $$PWD/qquickdroparea_p.h \ $$PWD/qquickmultipointtoucharea_p.h \ - $$PWD/qquickitemview_p.h \ - $$PWD/qquickitemview_p_p.h \ $$PWD/qquickitemviewtransition_p.h \ $$PWD/qquickscreen_p.h \ $$PWD/qquickwindowattached_p.h \ @@ -96,8 +91,6 @@ SOURCES += \ $$PWD/qquickpincharea.cpp \ $$PWD/qquickflickable.cpp \ $$PWD/qquickrepeater.cpp \ - $$PWD/qquickgridview.cpp \ - $$PWD/qquickpositioners.cpp \ $$PWD/qquickloader.cpp \ $$PWD/qquicktranslate.cpp \ $$PWD/qquickclipnode.cpp \ @@ -109,7 +102,6 @@ SOURCES += \ $$PWD/qquickdrag.cpp \ $$PWD/qquickdroparea.cpp \ $$PWD/qquickmultipointtoucharea.cpp \ - $$PWD/qquickitemview.cpp \ $$PWD/qquickitemviewtransition.cpp \ $$PWD/qquickwindowmodule.cpp \ $$PWD/qquickscreen.cpp \ @@ -126,6 +118,21 @@ qtConfig(quick-animatedimage) { $$PWD/qquickanimatedimage.cpp } +qtConfig(quick-gridview) { + HEADERS += \ + $$PWD/qquickgridview_p.h + SOURCES += \ + $$PWD/qquickgridview.cpp +} + +qtConfig(quick-itemview) { + HEADERS += \ + $$PWD/qquickitemview_p.h \ + $$PWD/qquickitemview_p_p.h + SOURCES += \ + $$PWD/qquickitemview.cpp +} + qtConfig(quick-listview) { HEADERS += \ $$PWD/qquicklistview_p.h @@ -141,6 +148,14 @@ qtConfig(quick-pathview) { $$PWD/qquickpathview.cpp } +qtConfig(quick-positioners) { + HEADERS += \ + $$PWD/qquickpositioners_p.h \ + $$PWD/qquickpositioners_p_p.h + SOURCES += \ + $$PWD/qquickpositioners.cpp +} + qtConfig(quick-flipable) { HEADERS += \ $$PWD/qquickflipable_p.h diff --git a/src/quick/items/qquickgridview_p.h b/src/quick/items/qquickgridview_p.h index 44bc8444f2..aaf6e4a75b 100644 --- a/src/quick/items/qquickgridview_p.h +++ b/src/quick/items/qquickgridview_p.h @@ -51,8 +51,11 @@ // We mean it. // -#include "qquickitemview_p.h" +#include <QtQuick/private/qtquickglobal_p.h> + +QT_REQUIRE_CONFIG(quick_gridview); +#include "qquickitemview_p.h" QT_BEGIN_NAMESPACE diff --git a/src/quick/items/qquickitemsmodule.cpp b/src/quick/items/qquickitemsmodule.cpp index 227da5cae3..51ce18b23e 100644 --- a/src/quick/items/qquickitemsmodule.cpp +++ b/src/quick/items/qquickitemsmodule.cpp @@ -58,7 +58,9 @@ #if QT_CONFIG(quick_listview) #include "qquicklistview_p.h" #endif +#if QT_CONFIG(quick_gridview) #include "qquickgridview_p.h" +#endif #if QT_CONFIG(quick_pathview) #include "qquickpathview_p.h" #endif @@ -67,7 +69,9 @@ #include <private/qquickpath_p.h> #include <private/qquickpathinterpolator_p.h> #endif +#if QT_CONFIG(quick_positioners) #include "qquickpositioners_p.h" +#endif #include "qquickrepeater_p.h" #include "qquickloader_p.h" #if QT_CONFIG(quick_animatedimage) @@ -156,18 +160,25 @@ static void qt_quickitems_defineModule(const char *uri, int major, int minor) qmlRegisterType<QQuickAnimatedImage>(uri,major,minor,"AnimatedImage"); #endif qmlRegisterType<QQuickBorderImage>(uri,major,minor,"BorderImage"); - qmlRegisterType<QQuickColumn>(uri,major,minor,"Column"); qmlRegisterType<QQuickFlickable>(uri,major,minor,"Flickable"); #if QT_CONFIG(quick_flipable) qmlRegisterType<QQuickFlipable>(uri,major,minor,"Flipable"); #endif - qmlRegisterType<QQuickFlow>(uri,major,minor,"Flow"); // qmlRegisterType<QQuickFocusPanel>(uri,major,minor,"FocusPanel"); qmlRegisterType<QQuickFocusScope>(uri,major,minor,"FocusScope"); qmlRegisterType<QQuickGradient>(uri,major,minor,"Gradient"); qmlRegisterType<QQuickGradientStop>(uri,major,minor,"GradientStop"); +#if QT_CONFIG(quick_positioners) + qmlRegisterType<QQuickColumn>(uri,major,minor,"Column"); + qmlRegisterType<QQuickFlow>(uri,major,minor,"Flow"); qmlRegisterType<QQuickGrid>(uri,major,minor,"Grid"); + qmlRegisterUncreatableType<QQuickBasePositioner>(uri,major,minor,"Positioner", + QStringLiteral("Positioner is an abstract type that is only available as an attached property.")); + qmlRegisterType<QQuickRow>(uri,major,minor,"Row"); +#endif +#if QT_CONFIG(quick_gridview) qmlRegisterType<QQuickGridView>(uri,major,minor,"GridView"); +#endif qmlRegisterType<QQuickImage>(uri,major,minor,"Image"); qmlRegisterType<QQuickItem>(uri,major,minor,"Item"); #if QT_CONFIG(quick_listview) @@ -190,11 +201,8 @@ static void qt_quickitems_defineModule(const char *uri, int major, int minor) #if QT_CONFIG(quick_pathview) qmlRegisterType<QQuickPathView>(uri,major,minor,"PathView"); #endif - qmlRegisterUncreatableType<QQuickBasePositioner>(uri,major,minor,"Positioner", - QStringLiteral("Positioner is an abstract type that is only available as an attached property.")); qmlRegisterType<QQuickRectangle>(uri,major,minor,"Rectangle"); qmlRegisterType<QQuickRepeater>(uri,major,minor,"Repeater"); - qmlRegisterType<QQuickRow>(uri,major,minor,"Row"); qmlRegisterType<QQuickTranslate>(uri,major,minor,"Translate"); qmlRegisterType<QQuickRotation>(uri,major,minor,"Rotation"); qmlRegisterType<QQuickScale>(uri,major,minor,"Scale"); @@ -282,13 +290,19 @@ static void qt_quickitems_defineModule(const char *uri, int major, int minor) #endif qmlRegisterType<QQuickItem, 1>(uri, 2, 1,"Item"); +#if QT_CONFIG(quick_positioners) qmlRegisterType<QQuickGrid, 1>(uri, 2, 1, "Grid"); +#endif +#if QT_CONFIG(quick_itemview) qmlRegisterUncreatableType<QQuickItemView, 1>(uri, 2, 1, "ItemView", QQuickItemView::tr("ItemView is an abstract base class")); qmlRegisterUncreatableType<QQuickItemView, 2>(uri, 2, 3, "ItemView", QQuickItemView::tr("ItemView is an abstract base class")); +#endif #if QT_CONFIG(quick_listview) qmlRegisterType<QQuickListView, 1>(uri, 2, 1, "ListView"); #endif +#if QT_CONFIG(quick_gridview) qmlRegisterType<QQuickGridView, 1>(uri, 2, 1, "GridView"); +#endif qmlRegisterType<QQuickTextEdit, 1>(uri, 2, 1, "TextEdit"); qmlRegisterType<QQuickText, 2>(uri, 2, 2, "Text"); @@ -317,12 +331,14 @@ static void qt_quickitems_defineModule(const char *uri, int major, int minor) qmlRegisterType<QQuickText, 6>(uri, 2, 6, "Text"); qmlRegisterType<QQuickTextEdit, 6>(uri, 2, 6, "TextEdit"); qmlRegisterType<QQuickTextInput, 6>(uri, 2, 6, "TextInput"); +#if QT_CONFIG(quick_positioners) qmlRegisterUncreatableType<QQuickBasePositioner, 6>(uri, 2, 6, "Positioner", QStringLiteral("Positioner is an abstract type that is only available as an attached property.")); qmlRegisterType<QQuickColumn, 6>(uri, 2, 6, "Column"); qmlRegisterType<QQuickRow, 6>(uri, 2, 6, "Row"); qmlRegisterType<QQuickGrid, 6>(uri, 2, 6, "Grid"); qmlRegisterType<QQuickFlow, 6>(uri, 2, 6, "Flow"); +#endif qmlRegisterUncreatableType<QQuickEnterKeyAttached, 6>(uri, 2, 6, "EnterKey", QQuickEnterKeyAttached::tr("EnterKey is only available via attached properties")); #if QT_CONFIG(quick_shadereffect) @@ -332,7 +348,9 @@ static void qt_quickitems_defineModule(const char *uri, int major, int minor) #if QT_CONFIG(quick_listview) qmlRegisterType<QQuickListView, 7>(uri, 2, 7, "ListView"); #endif +#if QT_CONFIG(quick_gridview) qmlRegisterType<QQuickGridView, 7>(uri, 2, 7, "GridView"); +#endif qmlRegisterType<QQuickTextInput, 7>(uri, 2, 7, "TextInput"); qmlRegisterType<QQuickTextEdit, 7>(uri, 2, 7, "TextEdit"); #if QT_CONFIG(quick_pathview) diff --git a/src/quick/items/qquickitemview_p.h b/src/quick/items/qquickitemview_p.h index 1a28fc212b..c289ace408 100644 --- a/src/quick/items/qquickitemview_p.h +++ b/src/quick/items/qquickitemview_p.h @@ -51,6 +51,10 @@ // We mean it. // +#include <QtQuick/private/qtquickglobal_p.h> + +QT_REQUIRE_CONFIG(quick_itemview); + #include "qquickflickable_p.h" #include <qpointer.h> #include <QtCore/QLoggingCategory> diff --git a/src/quick/items/qquickitemview_p_p.h b/src/quick/items/qquickitemview_p_p.h index 0893d6e749..62851c9a89 100644 --- a/src/quick/items/qquickitemview_p_p.h +++ b/src/quick/items/qquickitemview_p_p.h @@ -51,6 +51,10 @@ // We mean it. // +#include <QtQuick/private/qtquickglobal_p.h> + +QT_REQUIRE_CONFIG(quick_itemview); + #include "qquickitemview_p.h" #include "qquickitemviewtransition_p.h" #include "qquickflickable_p_p.h" diff --git a/src/quick/items/qquickpositioners_p.h b/src/quick/items/qquickpositioners_p.h index f6388f111d..c25ecd6dbc 100644 --- a/src/quick/items/qquickpositioners_p.h +++ b/src/quick/items/qquickpositioners_p.h @@ -51,6 +51,10 @@ // We mean it. // +#include <QtQuick/private/qtquickglobal_p.h> + +QT_REQUIRE_CONFIG(quick_positioners); + #include "qquickimplicitsizeitem_p.h" #include "qquickitemviewtransition_p.h" diff --git a/src/quick/items/qquickpositioners_p_p.h b/src/quick/items/qquickpositioners_p_p.h index d18f9b3724..6dd84e6098 100644 --- a/src/quick/items/qquickpositioners_p_p.h +++ b/src/quick/items/qquickpositioners_p_p.h @@ -51,6 +51,10 @@ // We mean it. // +#include <QtQuick/private/qtquickglobal_p.h> + +QT_REQUIRE_CONFIG(quick_positioners); + #include "qquickpositioners_p.h" #include "qquickimplicitsizeitem_p_p.h" |