summaryrefslogtreecommitdiffstats
path: root/src/settingsui/settingsuiplugin
diff options
context:
space:
mode:
authorDan Ackers <dan.ackers@qt.io>2021-06-21 11:19:40 +0300
committerDan Ackers <dan.ackers@qt.io>2021-06-24 16:58:28 +0300
commitc0c3066d25678a92bcb2932b6595d019e9613d27 (patch)
tree657691e138e2d9aaf5ed948f9143370a0f8f89c5 /src/settingsui/settingsuiplugin
parent10c59319e196f717e569a9a0bfc45ae73d88d1fd (diff)
Port qtdeviceutilities to use declarative types
Task-number: QTBUG-94426 Change-Id: I9ac17f38eccff96e25a6c1d40998b222d349274d Reviewed-by: Teemu Holappa <teemu.holappa@qt.io>
Diffstat (limited to 'src/settingsui/settingsuiplugin')
-rw-r--r--src/settingsui/settingsuiplugin/CMakeLists.txt45
-rw-r--r--src/settingsui/settingsuiplugin/icons.qrc12
-rw-r--r--src/settingsui/settingsuiplugin/plugin.cpp34
-rw-r--r--src/settingsui/settingsuiplugin/plugin_p.h56
-rw-r--r--src/settingsui/settingsuiplugin/plugins.qmltypes32
-rw-r--r--src/settingsui/settingsuiplugin/qmldir4
-rw-r--r--src/settingsui/settingsuiplugin/settingsui.qrc31
7 files changed, 80 insertions, 134 deletions
diff --git a/src/settingsui/settingsuiplugin/CMakeLists.txt b/src/settingsui/settingsuiplugin/CMakeLists.txt
index 0f72bc0..6ab5bf7 100644
--- a/src/settingsui/settingsuiplugin/CMakeLists.txt
+++ b/src/settingsui/settingsuiplugin/CMakeLists.txt
@@ -1,27 +1,7 @@
#####################################################################
## settingsuiplugin Plugin:
#####################################################################
-
-qt_internal_add_qml_module(settingsuiplugin
- URI "QtDeviceUtilities.SettingsUI"
- VERSION "${CMAKE_PROJECT_VERSION}"
- CLASS_NAME SettingsUIQmlPlugin
- PLUGIN_TARGET settingsuiplugin
- NO_GENERATE_PLUGIN_SOURCE
- NO_PLUGIN_OPTIONAL
- NO_GENERATE_QMLTYPES
- INSTALL_SOURCE_QMLTYPES "plugins.qmltypes"
- SOURCES
- plugin.cpp
- PUBLIC_LIBRARIES
- Qt::Core
- Qt::Gui
- Qt::Qml
- Qt::Quick
-)
-
-# Resources:
-set(settingsui_resource_files
+set(settingsui_qml_files
"../common/CustomSwitch.qml"
"../common/CustomTableView.qml"
"../common/HandwritingModeButton.qml"
@@ -40,6 +20,28 @@ set(settingsui_resource_files
"SettingsDelegate.qml"
"SettingsHeader.qml"
"SettingsTitleItem.qml"
+ "pluginMain.qml"
+)
+
+qt_internal_add_qml_module(settingsuiplugin
+ URI "QtDeviceUtilities.SettingsUI"
+ VERSION "${CMAKE_PROJECT_VERSION}"
+ PLUGIN_TARGET settingsuiplugin
+ PAST_MAJOR_VERSIONS 2
+ SOURCES
+ plugin.cpp
+ plugin_p.h
+ PUBLIC_LIBRARIES
+ Qt::Core
+ Qt::Gui
+ Qt::Qml
+ Qt::Quick
+ QML_FILES
+ ${settingsui_qml_files}
+)
+
+# Resources:
+set(settingsui_resource_files
"icons/Alert_yellow_1x.png"
"icons/FloatingButton_Active.png"
"icons/FloatingButton_Available.png"
@@ -48,7 +50,6 @@ set(settingsui_resource_files
"icons/Wifi_lightgray_2x.png"
"newIcons/back_icon.svg"
"newIcons/network_icon.svg"
- "pluginMain.qml"
)
qt_internal_add_resource(settingsuiplugin "settingsui"
diff --git a/src/settingsui/settingsuiplugin/icons.qrc b/src/settingsui/settingsuiplugin/icons.qrc
deleted file mode 100644
index c6944ca..0000000
--- a/src/settingsui/settingsuiplugin/icons.qrc
+++ /dev/null
@@ -1,12 +0,0 @@
-<RCC>
- <qresource prefix="/">
- <file>icons/Alert_yellow_1x.png</file>
- <file>icons/FloatingButton_Active.png</file>
- <file>icons/FloatingButton_Available.png</file>
- <file>icons/FloatingButton_Unavailable.png</file>
- <file>icons/WifiAnim_black_2x.png</file>
- <file>icons/Wifi_lightgray_2x.png</file>
- <file>newIcons/back_icon.svg</file>
- <file>newIcons/network_icon.svg</file>
- </qresource>
-</RCC>
diff --git a/src/settingsui/settingsuiplugin/plugin.cpp b/src/settingsui/settingsuiplugin/plugin.cpp
index 3ea37ad..8ac64e1 100644
--- a/src/settingsui/settingsuiplugin/plugin.cpp
+++ b/src/settingsui/settingsuiplugin/plugin.cpp
@@ -26,17 +26,7 @@
** $QT_END_LICENSE$
**
****************************************************************************/
-#include <QtQml/qqmlextensionplugin.h>
-#include <QtQml/qqml.h>
-
-static void initResources()
-{
-#ifdef QT_STATIC
- Q_INIT_RESOURCE(qmake_QtDeviceUtilities_SettingsUI);
-#endif
- Q_INIT_RESOURCE(settingsui);
-}
-
+#include "plugin_p.h"
/*!
\qmlmodule QtDeviceUtilities.SettingsUI
\title Qt Device Utilities: Settings UI
@@ -80,25 +70,3 @@ static void initResources()
There is no need to import the various \c {DeviceUtilities.*} modules and
to declare a custom settings UI, unless specifically required.
*/
-
-QT_BEGIN_NAMESPACE
-
-class SettingsUIQmlPlugin : public QQmlExtensionPlugin
-{
- Q_OBJECT
- Q_PLUGIN_METADATA(IID "org.qt-project.Qt.QQmlExtensionInterface")
-
-public:
- SettingsUIQmlPlugin(QObject *parent = nullptr) : QQmlExtensionPlugin(parent) { initResources(); }
- void registerTypes(const char *uri) override
- {
- // @uri QtDeviceUtilities.SettingsUI
- Q_ASSERT(uri == QLatin1String("QtDeviceUtilities.SettingsUI"));
- qmlRegisterType(QUrl("qrc:/pluginMain.qml"), uri, 2, 0, "SettingsUI");
- }
-
-};
-
-QT_END_NAMESPACE
-
-#include "plugin.moc"
diff --git a/src/settingsui/settingsuiplugin/plugin_p.h b/src/settingsui/settingsuiplugin/plugin_p.h
new file mode 100644
index 0000000..46f2119
--- /dev/null
+++ b/src/settingsui/settingsuiplugin/plugin_p.h
@@ -0,0 +1,56 @@
+/****************************************************************************
+**
+** Copyright (C) 2019 The Qt Company Ltd.
+** Contact: https://www.qt.io/licensing/
+**
+** This file is part of the Device Utilities module of the Qt Toolkit.
+**
+** $QT_BEGIN_LICENSE:GPL$
+** Commercial License Usage
+** Licensees holding valid commercial Qt licenses may use this file in
+** accordance with the commercial license agreement provided with the
+** Software or, alternatively, in accordance with the terms contained in
+** a written agreement between you and The Qt Company. For licensing terms
+** and conditions see https://www.qt.io/terms-conditions. For further
+** information use the contact form at https://www.qt.io/contact-us.
+**
+** GNU General Public License Usage
+** Alternatively, this file may be used under the terms of the GNU
+** General Public License version 3 or (at your option) any later version
+** approved by the KDE Free Qt Foundation. The licenses are as published by
+** the Free Software Foundation and appearing in the file LICENSE.GPL3
+** included in the packaging of this file. Please review the following
+** information to ensure the GNU General Public License requirements will
+** be met: https://www.gnu.org/licenses/gpl-3.0.html.
+**
+** $QT_END_LICENSE$
+**
+****************************************************************************/
+#ifndef SETTINGSUIPLUGIN_H
+#define SETTINGSUIPLUGIN_H
+#include <qqmlextensionplugin.h>
+#include <qqmlengine.h>
+
+//
+// W A R N I N G
+// -------------
+//
+// This file is not part of the Qt API. It exists for the convenience
+// of other Qt classes. This header file may change from version to
+// version without notice, or even be removed.
+//
+// We mean it.
+//
+
+QT_BEGIN_NAMESPACE
+
+struct SettingsUiComponent
+{
+ Q_GADGET
+ QML_NAMED_ELEMENT(SettingsUI)
+ QML_ADDED_IN_VERSION(2, 0)
+};
+
+QT_END_NAMESPACE
+
+#endif //SETTINGSUIPLUGIN_H
diff --git a/src/settingsui/settingsuiplugin/plugins.qmltypes b/src/settingsui/settingsuiplugin/plugins.qmltypes
deleted file mode 100644
index a3bdbd9..0000000
--- a/src/settingsui/settingsuiplugin/plugins.qmltypes
+++ /dev/null
@@ -1,32 +0,0 @@
-import QtQuick.tooling 1.2
-
-// This file describes the plugin-supplied types contained in the library.
-// It is used for QML tooling purposes only.
-//
-// This file was auto-generated by:
-// 'qmlplugindump -nonrelocatable QtDeviceUtilities.SettingsUI 1.0'
-
-Module {
- dependencies: ["QtQuick 2.8"]
- Component {
- prototype: "QQuickRectangle"
- name: "QtDeviceUtilities.SettingsUI/SettingsUI 1.0"
- exports: ["QtDeviceUtilities.SettingsUI/SettingsUI 1.0"]
- exportMetaObjectRevisions: [0]
- isComposite: true
- defaultProperty: "data"
- Property { name: "__initialized"; type: "bool" }
- Property { name: "service"; type: "QVariant" }
- Property { name: "margin"; type: "int" }
- Property { name: "spacing"; type: "int" }
- Property { name: "titleFontSize"; type: "int" }
- Property { name: "subTitleFontSize"; type: "int" }
- Property { name: "valueFontSize"; type: "int" }
- Property { name: "fieldHeight"; type: "int" }
- Property { name: "fieldTextHeight"; type: "int" }
- Property { name: "buttonHeight"; type: "int" }
- Property { name: "model"; type: "QUrl" }
- Signal { name: "closed" }
- Method { name: "init"; type: "QVariant" }
- }
-}
diff --git a/src/settingsui/settingsuiplugin/qmldir b/src/settingsui/settingsuiplugin/qmldir
deleted file mode 100644
index 88d0e45..0000000
--- a/src/settingsui/settingsuiplugin/qmldir
+++ /dev/null
@@ -1,4 +0,0 @@
-module QtDeviceUtilities.SettingsUI
-plugin settingsuiplugin
-classname SettingsUIQmlPlugin
-typeinfo plugins.qmltypes
diff --git a/src/settingsui/settingsuiplugin/settingsui.qrc b/src/settingsui/settingsuiplugin/settingsui.qrc
deleted file mode 100644
index 7c8b661..0000000
--- a/src/settingsui/settingsuiplugin/settingsui.qrc
+++ /dev/null
@@ -1,31 +0,0 @@
-<RCC>
- <qresource prefix="/">
- <file>pluginMain.qml</file>
- <file>../common/CustomTableView.qml</file>
- <file>../common/HandwritingModeButton.qml</file>
- <file>../network/AddressListEntry.qml</file>
- <file>../network/ComboBoxEntry.qml</file>
- <file>../network/EditWiredSettings.qml</file>
- <file>../network/IpAddressTextField.qml</file>
- <file>../network/NetworkDetails.qml</file>
- <file>../network/NetworkSettings.qml</file>
- <file>../network/WifiSelectorDelegate.qml</file>
- <file>../network/WifiSettings.qml</file>
- <file>../network/WifiSignalMonitor.qml</file>
- <file>../network/WiredSettings.qml</file>
- <file>../common/CustomSwitch.qml</file>
- <file>../network/NetworkListView.qml</file>
- <file>../network/PassphraseEnter.qml</file>
- <file>SettingsHeader.qml</file>
- <file>SettingsDelegate.qml</file>
- <file>SettingsTitleItem.qml</file>
- <file>icons/Alert_yellow_1x.png</file>
- <file>icons/FloatingButton_Active.png</file>
- <file>icons/FloatingButton_Available.png</file>
- <file>icons/FloatingButton_Unavailable.png</file>
- <file>icons/WifiAnim_black_2x.png</file>
- <file>icons/Wifi_lightgray_2x.png</file>
- <file>newIcons/back_icon.svg</file>
- <file>newIcons/network_icon.svg</file>
- </qresource>
-</RCC>