diff options
author | J-P Nurmi <jpnurmi@qt.io> | 2016-04-20 14:40:42 +0200 |
---|---|---|
committer | J-P Nurmi <jpnurmi@qt.io> | 2016-04-21 05:43:13 +0000 |
commit | 05f6b386f9e49d263c47a1b5cce668bbc964f32e (patch) | |
tree | 23fe4dc9086b34ccb9dcc14fe1675a6231ae391c | |
parent | 3090b31c4a99bf725baa0996b49ae9d31124bf76 (diff) |
Default: use QQuickColorImageProvider
This way we don't need to duplicate all images that are built into the
main controls plugin's resources.
In order to make them work with QQuickColorImageProvider, some of the
images had to be converted from Format_Indexed8 to Format_ARGB32:
QPainter::begin: Cannot paint on an image with the QImage::Format_Indexed8 format
QPainter::setCompositionMode: Painter not active
Change-Id: I67f8820e803ef7ff29ce60460ed4ca5bb2fad4cb
Reviewed-by: Mitch Curtis <mitch.curtis@theqtcompany.com>
25 files changed, 6 insertions, 17 deletions
diff --git a/src/imports/controls/CheckIndicator.qml b/src/imports/controls/CheckIndicator.qml index 68ff134e..585bdb25 100644 --- a/src/imports/controls/CheckIndicator.qml +++ b/src/imports/controls/CheckIndicator.qml @@ -51,7 +51,7 @@ Rectangle { Image { x: (parent.width - width) / 2 y: (parent.height - height) / 2 - source: "qrc:/qt-project.org/imports/Qt/labs/controls/images/check" + (control.activeFocus ? "-focus.png" : ".png") + source: "image://default/check/" + (control.activeKeyFocus ? "#0066ff" : "#353637") visible: control.checkState === Qt.Checked } diff --git a/src/imports/controls/ComboBox.qml b/src/imports/controls/ComboBox.qml index c04ca842..10e8c0c9 100644 --- a/src/imports/controls/ComboBox.qml +++ b/src/imports/controls/ComboBox.qml @@ -87,8 +87,7 @@ T.ComboBox { Image { x: parent.width - width - 4 y: (parent.height - height) / 2 - source: "qrc:/qt-project.org/imports/Qt/labs/controls/images/double-arrow" - + (control.activeKeyFocus ? "-focus" : "") + ".png" + source: "image://default/double-arrow/" + (control.activeKeyFocus ? "#0066ff" : "#353637") } } //! [background] diff --git a/src/imports/controls/Dial.qml b/src/imports/controls/Dial.qml index a92bc112..50f7ea7e 100644 --- a/src/imports/controls/Dial.qml +++ b/src/imports/controls/Dial.qml @@ -61,7 +61,7 @@ T.Dial { y: background.y + background.height / 2 - handle.height / 2 width: 14 height: 10 - source: "qrc:/qt-project.org/imports/Qt/labs/controls/images/dial-indicator" + (control.activeKeyFocus ? "-focus.png" : ".png") + source: "image://default/dial-indicator/" + (control.activeKeyFocus ? "#0066ff" : "#353637") antialiasing: true opacity: control.enabled ? 1 : 0.3 transform: [ diff --git a/src/imports/controls/images/check-focus.png b/src/imports/controls/images/check-focus.png Binary files differdeleted file mode 100644 index 335373a9..00000000 --- a/src/imports/controls/images/check-focus.png +++ /dev/null diff --git a/src/imports/controls/images/check-focus@2x.png b/src/imports/controls/images/check-focus@2x.png Binary files differdeleted file mode 100644 index 66b32d16..00000000 --- a/src/imports/controls/images/check-focus@2x.png +++ /dev/null diff --git a/src/imports/controls/images/check-focus@3x.png b/src/imports/controls/images/check-focus@3x.png Binary files differdeleted file mode 100644 index 298b874c..00000000 --- a/src/imports/controls/images/check-focus@3x.png +++ /dev/null diff --git a/src/imports/controls/images/check-focus@4x.png b/src/imports/controls/images/check-focus@4x.png Binary files differdeleted file mode 100644 index 0106ee8f..00000000 --- a/src/imports/controls/images/check-focus@4x.png +++ /dev/null diff --git a/src/imports/controls/images/check@2x.png b/src/imports/controls/images/check@2x.png Binary files differindex 597aab7f..bc5aaabe 100644 --- a/src/imports/controls/images/check@2x.png +++ b/src/imports/controls/images/check@2x.png diff --git a/src/imports/controls/images/check@3x.png b/src/imports/controls/images/check@3x.png Binary files differindex 1a10289b..0f515e0b 100644 --- a/src/imports/controls/images/check@3x.png +++ b/src/imports/controls/images/check@3x.png diff --git a/src/imports/controls/images/check@4x.png b/src/imports/controls/images/check@4x.png Binary files differindex 54e885f6..8ad1fe21 100644 --- a/src/imports/controls/images/check@4x.png +++ b/src/imports/controls/images/check@4x.png diff --git a/src/imports/controls/images/dial-indicator-focus.png b/src/imports/controls/images/dial-indicator-focus.png Binary files differdeleted file mode 100644 index 21fd5889..00000000 --- a/src/imports/controls/images/dial-indicator-focus.png +++ /dev/null diff --git a/src/imports/controls/images/dial-indicator-focus@2x.png b/src/imports/controls/images/dial-indicator-focus@2x.png Binary files differdeleted file mode 100644 index d120a4ac..00000000 --- a/src/imports/controls/images/dial-indicator-focus@2x.png +++ /dev/null diff --git a/src/imports/controls/images/dial-indicator-focus@3x.png b/src/imports/controls/images/dial-indicator-focus@3x.png Binary files differdeleted file mode 100644 index 02820654..00000000 --- a/src/imports/controls/images/dial-indicator-focus@3x.png +++ /dev/null diff --git a/src/imports/controls/images/dial-indicator-focus@4x.png b/src/imports/controls/images/dial-indicator-focus@4x.png Binary files differdeleted file mode 100644 index d838669c..00000000 --- a/src/imports/controls/images/dial-indicator-focus@4x.png +++ /dev/null diff --git a/src/imports/controls/images/dial-indicator.png b/src/imports/controls/images/dial-indicator.png Binary files differindex 92357c51..8cb0824f 100644 --- a/src/imports/controls/images/dial-indicator.png +++ b/src/imports/controls/images/dial-indicator.png diff --git a/src/imports/controls/images/dial-indicator@2x.png b/src/imports/controls/images/dial-indicator@2x.png Binary files differindex f436443b..cd4f8d81 100644 --- a/src/imports/controls/images/dial-indicator@2x.png +++ b/src/imports/controls/images/dial-indicator@2x.png diff --git a/src/imports/controls/images/dial-indicator@3x.png b/src/imports/controls/images/dial-indicator@3x.png Binary files differindex d883045b..f443605c 100644 --- a/src/imports/controls/images/dial-indicator@3x.png +++ b/src/imports/controls/images/dial-indicator@3x.png diff --git a/src/imports/controls/images/dial-indicator@4x.png b/src/imports/controls/images/dial-indicator@4x.png Binary files differindex 79477712..dec99715 100644 --- a/src/imports/controls/images/dial-indicator@4x.png +++ b/src/imports/controls/images/dial-indicator@4x.png diff --git a/src/imports/controls/images/double-arrow-focus.png b/src/imports/controls/images/double-arrow-focus.png Binary files differdeleted file mode 100644 index d68de2c2..00000000 --- a/src/imports/controls/images/double-arrow-focus.png +++ /dev/null diff --git a/src/imports/controls/images/double-arrow-focus@2x.png b/src/imports/controls/images/double-arrow-focus@2x.png Binary files differdeleted file mode 100644 index d0686fc8..00000000 --- a/src/imports/controls/images/double-arrow-focus@2x.png +++ /dev/null diff --git a/src/imports/controls/images/double-arrow-focus@3x.png b/src/imports/controls/images/double-arrow-focus@3x.png Binary files differdeleted file mode 100644 index 2cf08077..00000000 --- a/src/imports/controls/images/double-arrow-focus@3x.png +++ /dev/null diff --git a/src/imports/controls/images/double-arrow-focus@4x.png b/src/imports/controls/images/double-arrow-focus@4x.png Binary files differdeleted file mode 100644 index e0b6eeb3..00000000 --- a/src/imports/controls/images/double-arrow-focus@4x.png +++ /dev/null diff --git a/src/imports/controls/images/drop-indicator@4x.png b/src/imports/controls/images/drop-indicator@4x.png Binary files differindex 58311fbe..b82b6db3 100644 --- a/src/imports/controls/images/drop-indicator@4x.png +++ b/src/imports/controls/images/drop-indicator@4x.png diff --git a/src/imports/controls/qtquickcontrols2plugin.cpp b/src/imports/controls/qtquickcontrols2plugin.cpp index 672e6591..c6982062 100644 --- a/src/imports/controls/qtquickcontrols2plugin.cpp +++ b/src/imports/controls/qtquickcontrols2plugin.cpp @@ -48,6 +48,7 @@ #include <QtQuickTemplates2/private/qquickpopup_p.h> #include <QtQuickControls2/private/qquickstyleplugin_p.h> #include <QtQuickControls2/private/qquickstyleselector_p.h> +#include <QtQuickControls2/private/qquickcolorimageprovider_p.h> #include "qquickbusyindicatorring_p.h" #include "qquickdialring_p.h" @@ -137,9 +138,10 @@ void QtQuickControls2Plugin::registerTypes(const char *uri) void QtQuickControls2Plugin::initializeEngine(QQmlEngine *engine, const char *uri) { - Q_UNUSED(engine); Q_UNUSED(uri); + engine->addImageProvider(QStringLiteral("default"), new QQuickColorImageProvider(QStringLiteral(":/qt-project.org/imports/Qt/labs/controls/images"))); + const QByteArray import = QByteArray(uri) + ".impl"; qmlRegisterType<QQuickBusyIndicatorRing>(import, 1, 0, "BusyRing"); qmlRegisterType<QQuickBusyIndicatorAnimator>(import, 1, 0, "BusyRingAnimator"); diff --git a/src/imports/controls/qtquickcontrols2plugin.qrc b/src/imports/controls/qtquickcontrols2plugin.qrc index ecac3d2b..71cd3032 100644 --- a/src/imports/controls/qtquickcontrols2plugin.qrc +++ b/src/imports/controls/qtquickcontrols2plugin.qrc @@ -8,25 +8,13 @@ <file>images/dial-indicator@2x.png</file> <file>images/dial-indicator@3x.png</file> <file>images/dial-indicator@4x.png</file> - <file>images/dial-indicator-focus.png</file> - <file>images/dial-indicator-focus@2x.png</file> - <file>images/dial-indicator-focus@3x.png</file> - <file>images/dial-indicator-focus@4x.png</file> <file>images/drop-indicator.png</file> <file>images/drop-indicator@2x.png</file> <file>images/drop-indicator@3x.png</file> <file>images/drop-indicator@4x.png</file> - <file>images/check-focus.png</file> - <file>images/check-focus@2x.png</file> - <file>images/check-focus@3x.png</file> - <file>images/check-focus@4x.png</file> <file>images/double-arrow.png</file> <file>images/double-arrow@2x.png</file> <file>images/double-arrow@3x.png</file> <file>images/double-arrow@4x.png</file> - <file>images/double-arrow-focus.png</file> - <file>images/double-arrow-focus@2x.png</file> - <file>images/double-arrow-focus@3x.png</file> - <file>images/double-arrow-focus@4x.png</file> </qresource> </RCC> |