diff options
125 files changed, 1115 insertions, 1977 deletions
diff --git a/.cmake.conf b/.cmake.conf index 213991f..10bc1fd 100644 --- a/.cmake.conf +++ b/.cmake.conf @@ -1 +1 @@ -set(QT_REPO_MODULE_VERSION "6.1.0") +set(QT_REPO_MODULE_VERSION "6.8.0") diff --git a/.qmake.conf b/.qmake.conf deleted file mode 100644 index f0b6059..0000000 --- a/.qmake.conf +++ /dev/null @@ -1,3 +0,0 @@ -load(qt_build_config) -MODULE_VERSION=5.15.0 -CMAKE_MODULE_TESTS=- diff --git a/CMakeLists.txt b/CMakeLists.txt index d5bedf8..090928a 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1,24 +1,34 @@ -# Generated from qtdeviceutilities.pro. - cmake_minimum_required(VERSION 3.15.0) include(.cmake.conf) -project(QtDeviceUtilities # special case +project(QtDeviceUtilities VERSION "${QT_REPO_MODULE_VERSION}" - DESCRIPTION "Qt Device Utilities Libraries" # special case + DESCRIPTION "Qt Device Utilities Libraries" HOMEPAGE_URL "https://qt.io/" LANGUAGES CXX C ) -find_package(Qt6 ${PROJECT_VERSION} CONFIG REQUIRED COMPONENTS BuildInternals Quick DBus) # special case -find_package(Qt6 ${PROJECT_VERSION} CONFIG OPTIONAL_COMPONENTS) +find_package(Qt6 ${PROJECT_VERSION} CONFIG REQUIRED COMPONENTS BuildInternals Core) +find_package(Qt6 ${PROJECT_VERSION} QUIET CONFIG OPTIONAL_COMPONENTS Gui Network Quick Qml QuickControls2 DBus) + +macro(assertTargets) + foreach(qtTarget IN ITEMS ${ARGN}) + if(NOT TARGET Qt::${qtTarget}) + message(NOTICE "Skipping the build as the condition \"TARGET Qt::${qtTarget}\" is not met.") + return() + endif() + endforeach() +endmacro() + +assertTargets(Quick DBus) if(NOT LINUX) message(NOTICE "Skipping the build as the condition \"LINUX\" is not met.") return() endif() -if(NOT TARGET Qt::Quick) - message(NOTICE "Skipping the build as the condition \"TARGET Qt::Quick\" is not met.") +if(WASM) + message(NOTICE "Skipping the build as the condition \"NOT WASM\" is not met.") return() endif() + qt_build_repo() diff --git a/coin/dependencies.yaml b/coin/dependencies.yaml deleted file mode 100644 index d29be23..0000000 --- a/coin/dependencies.yaml +++ /dev/null @@ -1,7 +0,0 @@ -dependencies: - ../../qt/qtquickcontrols2: - ref: 1cedab5239887750e12222c888bba8bbdbda14c2 - required: true - ../qttools: - ref: 4ad7a232cce5fd4e5ec88c2df46ca1e564772913 - required: false diff --git a/coin/module_config.yaml b/coin/module_config.yaml index 15841e7..cf4c0ce 100644 --- a/coin/module_config.yaml +++ b/coin/module_config.yaml @@ -1,4 +1,5 @@ version: 2 +tags: ["documentation"] accept_configuration: condition: or conditions: diff --git a/conanfile.py b/conanfile.py index eea43e4..6bd0644 100644 --- a/conanfile.py +++ b/conanfile.py @@ -37,7 +37,7 @@ class QtConanError(Exception): class QtDeviceUtilities(ConanFile): name = "qtdeviceutilities" - version = "6.1.0" + version = "6.4.0" license = "GPL-3.0, Commercial Qt License Agreement" author = "The Qt Company <https://www.qt.io/contact-us>" url = "https://code.qt.io/cgit/qt/qtdeviceutilities.git/" diff --git a/dependencies.yaml b/dependencies.yaml new file mode 100644 index 0000000..51d76f7 --- /dev/null +++ b/dependencies.yaml @@ -0,0 +1,7 @@ +dependencies: + ../../qt/qtdeclarative: + ref: c63bb2bad5b4e741ed8a1e16d8f1f916c9baf61d + required: true + ../qttools: + ref: 0d80d76bf14905204a248655cd88fe6cfd5706db + required: false diff --git a/examples/CMakeLists.txt b/examples/CMakeLists.txt new file mode 100644 index 0000000..dcb8cf0 --- /dev/null +++ b/examples/CMakeLists.txt @@ -0,0 +1,5 @@ +qt_examples_build_begin(EXTERNAL_BUILD) + +add_subdirectory(deviceutilities) + +qt_examples_build_end() diff --git a/examples/deviceutilities/CMakeLists.txt b/examples/deviceutilities/CMakeLists.txt new file mode 100644 index 0000000..1a67f53 --- /dev/null +++ b/examples/deviceutilities/CMakeLists.txt @@ -0,0 +1,3 @@ +if(TARGET Qt::Quick) + qt_internal_add_example(settingsuiapp) +endif() diff --git a/src/settingsui/AutoScroller.qml b/examples/deviceutilities/settingsuiapp/AutoScroller.qml index e1d5c27..e1d5c27 100644 --- a/src/settingsui/AutoScroller.qml +++ b/examples/deviceutilities/settingsuiapp/AutoScroller.qml diff --git a/examples/deviceutilities/settingsuiapp/CMakeLists.txt b/examples/deviceutilities/settingsuiapp/CMakeLists.txt new file mode 100644 index 0000000..976ad9b --- /dev/null +++ b/examples/deviceutilities/settingsuiapp/CMakeLists.txt @@ -0,0 +1,56 @@ +cmake_minimum_required(VERSION 3.16) + +project(settingsapp VERSION 1.0 LANGUAGES CXX) + +if(NOT DEFINED INSTALL_EXAMPLESDIR) + set(INSTALL_EXAMPLESDIR "${CMAKE_INSTALL_PREFIX}/share/examples") +endif() +set(INSTALL_EXAMPLEDIR "${INSTALL_EXAMPLESDIR}/deviceutilities/settingsapp") + +set(CMAKE_AUTOMOC ON) +set(CMAKE_CXX_STANDARD 17) +set(CMAKE_CXX_STANDARD_REQUIRED ON) + +find_package(Qt6 COMPONENTS Core Qml Quick) + +add_subdirectory(DeviceUtilities/SettingsUI) +add_subdirectory(DeviceUtilities/QtButtonImageProvider) + +set(qml_files + "main.qml" + "AutoScroller.qml" + "HandwritingModeButton.qml" +) + +set(images + "images/FloatingButton_Active.png" + "images/FloatingButton_Available.png" + "images/FloatingButton_Unavailable.png" +) + +qt_add_executable(settingsapp + main.cpp +) + +qt_add_qml_module(settingsapp + URI DeviceUtilities + VERSION 1.0 + QML_FILES + ${qml_files} + SOURCES + applicationsettings.cpp + applicationsettings.h + RESOURCES + ${images} +) + +target_link_libraries(settingsapp PRIVATE + Qt::Core + Qt::Gui +) + +install(TARGETS settingsapp + RUNTIME DESTINATION "${INSTALL_EXAMPLEDIR}" + BUNDLE DESTINATION "${INSTALL_EXAMPLEDIR}" + LIBRARY DESTINATION "${INSTALL_EXAMPLEDIR}" +) diff --git a/examples/deviceutilities/settingsuiapp/DeviceUtilities/QtButtonImageProvider/CMakeLists.txt b/examples/deviceutilities/settingsuiapp/DeviceUtilities/QtButtonImageProvider/CMakeLists.txt new file mode 100644 index 0000000..9e62cda --- /dev/null +++ b/examples/deviceutilities/settingsuiapp/DeviceUtilities/QtButtonImageProvider/CMakeLists.txt @@ -0,0 +1,32 @@ +# There are a number of options to qt_add_qml_module that start with capital NO. +# The most prominent NO option is probably NO_GENERATE_PLUGIN_SOURCE. +# Unfortunately image providers still need to be configured per QML engine. +# Therefore, if you bundle an image provider in your QML module, you need to implement +# the QQmlEngineExtensionPlugin::initializeEngine() method. +# This, in turn, makes it necessary to write your own plugin. +# In this example the plugin is in the QtButtonImageProvider class. + +qt_add_qml_module(qtbuttonimageproviderplugin + URI "DeviceUtilities.QtButtonImageProvider" + VERSION 1.0 + PLUGIN_TARGET qtbuttonimageproviderplugin + NO_PLUGIN_OPTIONAL + NO_GENERATE_PLUGIN_SOURCE + CLASS_NAME QtButtonImageProviderPlugin + SOURCES + plugin.cpp plugin_p.h + qtbuttonimageprovider.cpp qtbuttonimageprovider.h + QML_FILES + "QtButton.qml" +) + +target_link_libraries(qtbuttonimageproviderplugin PRIVATE + Qt::Quick +) + +install(TARGETS qtbuttonimageproviderplugin + DESTINATION "${INSTALL_EXAMPLEDIR}/DeviceUtilities/QtButtonImageProvider" +) +install(FILES $<TARGET_FILE_DIR:qtbuttonimageproviderplugin>/qmldir + DESTINATION "${INSTALL_EXAMPLEDIR}/DeviceUtilities/QtButtonImageProvider" +) diff --git a/src/settingsui/qtbuttonimageproviderplugin/QtButton.qml b/examples/deviceutilities/settingsuiapp/DeviceUtilities/QtButtonImageProvider/QtButton.qml index d65ae23..60e16ff 100644 --- a/src/settingsui/qtbuttonimageproviderplugin/QtButton.qml +++ b/examples/deviceutilities/settingsuiapp/DeviceUtilities/QtButtonImageProvider/QtButton.qml @@ -27,6 +27,7 @@ ** ****************************************************************************/ import QtQuick +import DeviceUtilities.SettingsUI Image { id: root @@ -34,9 +35,10 @@ Image { sourceSize: Qt.size(width, height) property string state: "enabled" property int cutSize: 10 - property color fillColor: viewSettings.buttonGreenColor - property color borderColor: mouseArea.pressed ? viewSettings.buttonActiveColor : viewSettings.buttonGreenColor + property color fillColor: Globals.buttonGreenColor + property color borderColor: mouseArea.pressed ? Globals.buttonActiveColor : Globals.buttonGreenColor property alias text: buttonText.text + property alias fontFamily: buttonText.font.family signal clicked() width: buttonText.contentWidth + cutSize * 4 @@ -52,7 +54,7 @@ Image { verticalAlignment: Text.AlignVCenter horizontalAlignment: Text.AlignHCenter font.pixelSize: parent.height * 0.65 - font.family: appFont + //font.family: Globals.appFont color: "white" } } diff --git a/src/settingsui/network/NetworkDetails.qml b/examples/deviceutilities/settingsuiapp/DeviceUtilities/QtButtonImageProvider/plugin.cpp index 88b0946..30ede2a 100644 --- a/src/settingsui/network/NetworkDetails.qml +++ b/examples/deviceutilities/settingsuiapp/DeviceUtilities/QtButtonImageProvider/plugin.cpp @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2016 The Qt Company Ltd. +** Copyright (C) 2018 The Qt Company Ltd. ** Contact: https://www.qt.io/licensing/ ** ** This file is part of the Device Utilities module of the Qt Toolkit. @@ -26,10 +26,4 @@ ** $QT_END_LICENSE$ ** ****************************************************************************/ -import QtQuick - -Loader { - id: root - property var selectedInterface:undefined - anchors.fill: parent -} +#include "plugin_p.h" diff --git a/src/settingsui/qtbuttonimageproviderplugin/plugin.cpp b/examples/deviceutilities/settingsuiapp/DeviceUtilities/QtButtonImageProvider/plugin_p.h index c017a05..96f64ad 100644 --- a/src/settingsui/qtbuttonimageproviderplugin/plugin.cpp +++ b/examples/deviceutilities/settingsuiapp/DeviceUtilities/QtButtonImageProvider/plugin_p.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2018 The Qt Company Ltd. +** Copyright (C) 2021 The Qt Company Ltd. ** Contact: https://www.qt.io/licensing/ ** ** This file is part of the Device Utilities module of the Qt Toolkit. @@ -26,44 +26,37 @@ ** $QT_END_LICENSE$ ** ****************************************************************************/ -#include <QQmlExtensionPlugin> -#include <QQmlEngine> +#ifndef QTBUTTONIMAGEPROVIDERQMLPLUGIN_H +#define QTBUTTONIMAGEPROVIDERQMLPLUGIN_H #include "qtbuttonimageprovider.h" - -static void initResources() -{ -#ifdef QT_STATIC - Q_INIT_RESOURCE(qmake_QtDeviceUtilities_QtButtonImageProvider); -#endif - Q_INIT_RESOURCE(qtbuttonimageprovider); -} +#include <qqmlextensionplugin.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 -class QtButtonImageProviderQmlPlugin : public QQmlExtensionPlugin +class QtButtonImageProviderQmlPlugin : public QQmlEngineExtensionPlugin { Q_OBJECT Q_PLUGIN_METADATA(IID QQmlExtensionInterface_iid) public: - QtButtonImageProviderQmlPlugin(QObject *parent = nullptr) : QQmlExtensionPlugin(parent) { initResources(); } - - void registerTypes(const char *uri) override - { - Q_UNUSED(uri) - Q_ASSERT(uri == QLatin1String("QtDeviceUtilities.QtButtonImageProvider")); - qmlRegisterType(QUrl("qrc:/QtButton.qml"), uri, 1, 0, "QtButton"); - } - - void initializeEngine(QQmlEngine *engine, const char *uri) override + void initializeEngine(QQmlEngine *engine, const char *uri) final { Q_UNUSED(uri); - QtButtonImageProvider *provider = new QtButtonImageProvider(); - engine->addImageProvider("QtButton", provider); + engine->addImageProvider("QtButton", new QtButtonImageProvider); } }; QT_END_NAMESPACE - -#include "plugin.moc" +#endif //QTBUTTONIMAGEPROVIDERQMLPLUGIN_H diff --git a/src/settingsui/qtbuttonimageproviderplugin/qtbuttonimageprovider.cpp b/examples/deviceutilities/settingsuiapp/DeviceUtilities/QtButtonImageProvider/qtbuttonimageprovider.cpp index 5bf162b..65566a5 100644 --- a/src/settingsui/qtbuttonimageproviderplugin/qtbuttonimageprovider.cpp +++ b/examples/deviceutilities/settingsuiapp/DeviceUtilities/QtButtonImageProvider/qtbuttonimageprovider.cpp @@ -26,7 +26,6 @@ ** $QT_END_LICENSE$ ** ****************************************************************************/ -#include <QQuickImageProvider> #include <QImage> #include <QPainter> #include <QPainterPath> diff --git a/src/settingsui/qtbuttonimageproviderplugin/qtbuttonimageprovider.h b/examples/deviceutilities/settingsuiapp/DeviceUtilities/QtButtonImageProvider/qtbuttonimageprovider.h index 94f410e..94f410e 100644 --- a/src/settingsui/qtbuttonimageproviderplugin/qtbuttonimageprovider.h +++ b/examples/deviceutilities/settingsuiapp/DeviceUtilities/QtButtonImageProvider/qtbuttonimageprovider.h diff --git a/examples/deviceutilities/settingsuiapp/DeviceUtilities/SettingsUI/CMakeLists.txt b/examples/deviceutilities/settingsuiapp/DeviceUtilities/SettingsUI/CMakeLists.txt new file mode 100644 index 0000000..61791e5 --- /dev/null +++ b/examples/deviceutilities/settingsuiapp/DeviceUtilities/SettingsUI/CMakeLists.txt @@ -0,0 +1,50 @@ +set(qml_files + "Globals.qml" + "SettingsUI.qml" +) + +# Resources: +set(images + "icons/back.svg" + "icons/network.svg" +) + +set_source_files_properties(Globals.qml + PROPERTIES + QT_QML_SINGLETON_TYPE true +) + +find_package(Qt6 COMPONENTS NetworkSettings QuickControls2) + +add_subdirectory(Network) + +qt_add_qml_module(settingsui + URI "DeviceUtilities.SettingsUI" + VERSION 1.0 + QML_FILES + ${qml_files} + RESOURCES + ${images} +) + +target_link_libraries(settingsui PRIVATE + Qt::NetworkSettings + Qt::QuickControls2 +) + +set_target_properties(settingsuiplugin PROPERTIES + INSTALL_RPATH $ORIGIN/../..:$ORIGIN/../../${CMAKE_INSTALL_LIBDIR} +) + +install(TARGETS settingsui + RUNTIME DESTINATION "${INSTALL_EXAMPLEDIR}" + BUNDLE DESTINATION "${INSTALL_EXAMPLEDIR}" + LIBRARY DESTINATION "${INSTALL_EXAMPLEDIR}" +) + +install(TARGETS settingsuiplugin + LIBRARY DESTINATION "${INSTALL_EXAMPLEDIR}/DeviceUtilities/SettingsUI" +) +install(FILES $<TARGET_FILE_DIR:settingsuiplugin>/qmldir + DESTINATION "${INSTALL_EXAMPLEDIR}/DeviceUtilities/SettingsUI" +) diff --git a/src/settingsui/settingsuiplugin/SettingsTitleItem.qml b/examples/deviceutilities/settingsuiapp/DeviceUtilities/SettingsUI/Globals.qml index 6156091..de31b89 100644 --- a/src/settingsui/settingsuiplugin/SettingsTitleItem.qml +++ b/examples/deviceutilities/settingsuiapp/DeviceUtilities/SettingsUI/Globals.qml @@ -1,9 +1,9 @@ /**************************************************************************** ** -** Copyright (C) 2017 The Qt Company Ltd. +** Copyright (C) 2021 The Qt Company Ltd. ** Contact: https://www.qt.io/licensing/ ** -** This file is part of the Device Utilities module of the Qt Toolkit. +** This file is part of Qt for Device Creation. ** ** $QT_BEGIN_LICENSE:GPL$ ** Commercial License Usage @@ -26,32 +26,29 @@ ** $QT_END_LICENSE$ ** ****************************************************************************/ +pragma Singleton import QtQuick +import QtDeviceUtilities.NetworkSettings -Column { - id: page - spacing: pluginMain.spacing +QtObject { + id: globals + readonly property string appFont: "TitilliumWeb" + readonly property color backgroundColor: "#09102b" + readonly property color borderColor: "#9d9faa" + readonly property color buttonGreenColor: "#41cd52" + readonly property color buttonGrayColor: "#9d9faa" + readonly property color buttonActiveColor: "#216729" + readonly property color scrollBarColor: "#41cd52" - property alias title: displayText.text + readonly property real spacing: 0.5 + readonly property real titleFontSize: 0.04 + readonly property real subTitleFontSize: 0.035 + readonly property real valueFontSize: 0.025 + readonly property real fieldHeight: 0.07 + readonly property real fieldTextHeight: 0.05 + readonly property real buttonHeight: 0.05 - Text { - id: displayText - font.pixelSize: pluginMain.titleFontSize - color: "white" - fontSizeMode: Text.Fit - minimumPixelSize: 1 - font.family: appFont - font.styleName: "Bold" - } - - Rectangle { - id: btmLine - width: page.parent.width * 0.3 - height: 3 - } - - Item { - height: pluginMain.margin - width: 1 + function margin(width) { + return (width / 3 * 2) * 0.05; } } diff --git a/src/settingsui/network/AddressListEntry.qml b/examples/deviceutilities/settingsuiapp/DeviceUtilities/SettingsUI/Network/AddressListEntry.qml index 9701587..9701587 100644 --- a/src/settingsui/network/AddressListEntry.qml +++ b/examples/deviceutilities/settingsuiapp/DeviceUtilities/SettingsUI/Network/AddressListEntry.qml diff --git a/examples/deviceutilities/settingsuiapp/DeviceUtilities/SettingsUI/Network/CMakeLists.txt b/examples/deviceutilities/settingsuiapp/DeviceUtilities/SettingsUI/Network/CMakeLists.txt new file mode 100644 index 0000000..ea3dc22 --- /dev/null +++ b/examples/deviceutilities/settingsuiapp/DeviceUtilities/SettingsUI/Network/CMakeLists.txt @@ -0,0 +1,55 @@ +set(qml_files + "CustomSwitch.qml" + "CustomTableView.qml" + "AddressListEntry.qml" + "ComboBoxEntry.qml" + "EditWiredSettings.qml" + "IpAddressTextField.qml" + "NetworkListView.qml" + "NetworkSettings.qml" + "PassphraseEnter.qml" + "WifiSelectorDelegate.qml" + "WifiSettings.qml" + "WifiSignalMonitor.qml" + "WiredSettings.qml" +) + +# Resources: +set(images + "icons/Alert_yellow_1x.png" + "icons/WifiAnim_black_2x.png" + "icons/Wifi_lightgray_2x.png" +) + +find_package(Qt6 COMPONENTS NetworkSettings QuickControls2) + +qt_add_qml_module(settingsuinetwork + URI "DeviceUtilities.SettingsUI.Network" + VERSION 1.0 + QML_FILES + ${qml_files} + RESOURCES + ${images} +) + +target_link_libraries(settingsuinetwork PRIVATE + Qt::NetworkSettings + Qt::QuickControls2 +) + +set_target_properties(settingsuinetworkplugin PROPERTIES + INSTALL_RPATH $ORIGIN/../../..:$ORIGIN/../../../${CMAKE_INSTALL_LIBDIR} +) + +install(TARGETS settingsuinetwork + RUNTIME DESTINATION "${INSTALL_EXAMPLEDIR}" + BUNDLE DESTINATION "${INSTALL_EXAMPLEDIR}" + LIBRARY DESTINATION "${INSTALL_EXAMPLEDIR}" +) + +install(TARGETS settingsuinetworkplugin + DESTINATION "${INSTALL_EXAMPLEDIR}/DeviceUtilities/SettingsUI/Network" +) +install(FILES $<TARGET_FILE_DIR:settingsuinetworkplugin>/qmldir + DESTINATION "${INSTALL_EXAMPLEDIR}/DeviceUtilities/SettingsUI/Network" +) diff --git a/src/settingsui/network/ComboBoxEntry.qml b/examples/deviceutilities/settingsuiapp/DeviceUtilities/SettingsUI/Network/ComboBoxEntry.qml index ce88964..c7e91b1 100644 --- a/src/settingsui/network/ComboBoxEntry.qml +++ b/examples/deviceutilities/settingsuiapp/DeviceUtilities/SettingsUI/Network/ComboBoxEntry.qml @@ -42,8 +42,8 @@ RowLayout { property alias model: cb.model property alias count: cb.count property int titleWidth: -1 - signal activated(var index) - signal highlighted(var index) + signal activated(int index) + signal highlighted(int index) Label { id: label diff --git a/src/settingsui/common/CustomSwitch.qml b/examples/deviceutilities/settingsuiapp/DeviceUtilities/SettingsUI/Network/CustomSwitch.qml index c552127..394629b 100644 --- a/src/settingsui/common/CustomSwitch.qml +++ b/examples/deviceutilities/settingsuiapp/DeviceUtilities/SettingsUI/Network/CustomSwitch.qml @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2017 The Qt Company Ltd. +** Copyright (C) 2021 The Qt Company Ltd. ** Contact: https://www.qt.io/licensing/ ** ** This file is part of the Device Utilities module of the Qt Toolkit. @@ -27,8 +27,9 @@ ** ****************************************************************************/ import QtQuick -import QtDeviceUtilities.QtButtonImageProvider import QtQuick.Controls +import DeviceUtilities.SettingsUI +import DeviceUtilities.QtButtonImageProvider Switch { id: control @@ -56,7 +57,7 @@ Switch { font.pixelSize: parent.height * 0.55 color: "#3b4155" text: "OFF" - font.family: appFont + font.family: Globals.appFont } Text { id: onText @@ -70,7 +71,7 @@ Switch { font.pixelSize: parent.height * 0.55 color: "#3b4155" text: "ON" - font.family: appFont + font.family: Globals.appFont } Binding { @@ -80,17 +81,12 @@ Switch { when: !mousearea.drag.active } - MouseArea { - anchors.fill: parent - onClicked: control.checked = !control.checked - } - QtButton { id: qtHandle anchors.verticalCenter: parent.verticalCenter width: parent.width * 0.475 height: parent.height * 0.9 - fillColor: control.checked ? viewSettings.buttonGreenColor : viewSettings.buttonGrayColor + fillColor: control.checked ? Globals.buttonGreenColor : Globals.buttonGrayColor text: control.checked ? "ON" : "OFF" borderColor: "transparent" Behavior on x { @@ -105,8 +101,6 @@ Switch { drag.minimumX: indicatorImg.width * 0.005 drag.maximumX: indicatorImg.width - width - indicatorImg.width * 0.005 - onClicked: control.checked = !control.checked - onReleased: { if (qtHandle.x > indicatorImg.width / 5 ) { control.checked = true diff --git a/src/settingsui/common/CustomTableView.qml b/examples/deviceutilities/settingsuiapp/DeviceUtilities/SettingsUI/Network/CustomTableView.qml index a5a7fe8..d7c9917 100644 --- a/src/settingsui/common/CustomTableView.qml +++ b/examples/deviceutilities/settingsuiapp/DeviceUtilities/SettingsUI/Network/CustomTableView.qml @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2016 The Qt Company Ltd. +** Copyright (C) 2021 The Qt Company Ltd. ** Contact: https://www.qt.io/licensing/ ** ** This file is part of the Device Utilities module of the Qt Toolkit. @@ -29,6 +29,7 @@ import QtQuick import QtQuick.Layouts import QtQuick.Controls +import DeviceUtilities.SettingsUI ColumnLayout { id: root @@ -64,7 +65,7 @@ ColumnLayout { contentItem: Rectangle { implicitWidth: listView.width * 0.0175 implicitHeight: listView.height * 0.5 - color: viewSettings.scrollBarColor + color: Globals.scrollBarColor } } @@ -72,7 +73,7 @@ ColumnLayout { id: delegateRectangle width: parent.width height: listView.height * 0.1 - property var delegateData: modelData + property var delegateData: entry Row { anchors.fill: parent @@ -91,8 +92,8 @@ ColumnLayout { antialiasing: false smooth: false renderType: listView.moving ? Text.NativeRendering : Text.QtRendering - color: listView.currentIndex == delegateRectangle.index ? viewSettings.buttonGreenColor : "white" - font.family: appFont + color: listView.currentIndex == delegateRectangle.index ? Globals.buttonGreenColor : "white" + font.family: Globals.appFont } } } diff --git a/src/settingsui/network/EditWiredSettings.qml b/examples/deviceutilities/settingsuiapp/DeviceUtilities/SettingsUI/Network/EditWiredSettings.qml index a59da20..a59da20 100644 --- a/src/settingsui/network/EditWiredSettings.qml +++ b/examples/deviceutilities/settingsuiapp/DeviceUtilities/SettingsUI/Network/EditWiredSettings.qml diff --git a/src/settingsui/network/IpAddressTextField.qml b/examples/deviceutilities/settingsuiapp/DeviceUtilities/SettingsUI/Network/IpAddressTextField.qml index 748e402..a328775 100644 --- a/src/settingsui/network/IpAddressTextField.qml +++ b/examples/deviceutilities/settingsuiapp/DeviceUtilities/SettingsUI/Network/IpAddressTextField.qml @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2016 The Qt Company Ltd. +** Copyright (C) 2021 The Qt Company Ltd. ** Contact: https://www.qt.io/licensing/ ** ** This file is part of the Device Utilities module of the Qt Toolkit. @@ -27,7 +27,6 @@ ** ****************************************************************************/ import QtQuick -import QtQuick.Layouts import QtQuick.Controls TextField { diff --git a/src/settingsui/network/NetworkListView.qml b/examples/deviceutilities/settingsuiapp/DeviceUtilities/SettingsUI/Network/NetworkListView.qml index 7c35433..128cff2 100644 --- a/src/settingsui/network/NetworkListView.qml +++ b/examples/deviceutilities/settingsuiapp/DeviceUtilities/SettingsUI/Network/NetworkListView.qml @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2017 The Qt Company Ltd. +** Copyright (C) 2021 The Qt Company Ltd. ** Contact: https://www.qt.io/licensing/ ** ** This file is part of the Device Utilities module of the Qt Toolkit. @@ -27,26 +27,25 @@ ** ****************************************************************************/ import QtQuick -import QtQml import QtDeviceUtilities.NetworkSettings -import QtDeviceUtilities.QtButtonImageProvider -import QtQuick.Controls +import DeviceUtilities.SettingsUI +import DeviceUtilities.QtButtonImageProvider ListView { id: list clip: true property var connectingService: null property bool retryConnectAfterIdle: false + + focus: true + boundsBehavior: Flickable.DragOverBounds + model: NetworkSettingsManager.services + function connectBySsid() { passphraseEnter.showSsid = true passphraseEnter.visible = true } - Component.onCompleted: { - NetworkSettingsManager.services.type = NetworkSettingsType.Unknown; - } - model: NetworkSettingsManager.services - delegate: Item { id: networkDelegate width: list.width @@ -59,17 +58,17 @@ ListView { id: networkName horizontalAlignment: Text.AlignLeft verticalAlignment: Text.AlignVCenter - font.pixelSize: pluginMain.subTitleFontSize - font.family: appFont - color: connected ? viewSettings.buttonGreenColor : "white" - text: name + font.pixelSize: Globals.subTitleFontSize + font.family: Globals.appFont + color: connected ? Globals.buttonGreenColor : "white" + text: (type === NetworkSettingsType.Wired) ? name + " (" + entry["id"] + ")" : name } Row { id: ipRow height: networkDelegate.height * 0.275 * opacity spacing: networkDelegate.width * 0.0075 Item { - width: pluginMain.margin + width: Globals.margin(list.width) height: 1 } Text { @@ -77,9 +76,9 @@ ListView { height: parent.height anchors.verticalCenter: parent.verticalCenter text: qsTr("IP Address:") - color: connected ? viewSettings.buttonGreenColor : "white" - font.pixelSize: pluginMain.valueFontSize - font.family: appFont + color: connected ? Globals.buttonGreenColor : "white" + font.pixelSize: Globals.valueFontSize + font.family: Globals.appFont verticalAlignment: Text.AlignVCenter horizontalAlignment: Text.AlignLeft } @@ -90,24 +89,25 @@ ListView { anchors.verticalCenter: parent.verticalCenter verticalAlignment: Text.AlignVCenter horizontalAlignment: Text.AlignLeft - color: connected ? viewSettings.buttonGreenColor : "white" + color: connected ? Globals.buttonGreenColor : "white" text: connected ? NetworkSettingsManager.services.itemFromRow(index).ipv4.address : (NetworkSettingsManager.services.itemFromRow(index).state === NetworkSettingsState.Idle) ? qsTr("Not connected") : qsTr("Connecting") - font.pixelSize: pluginMain.valueFontSize - font.family: appFont + font.pixelSize: Globals.valueFontSize + font.family: Globals.appFont font.styleName: connected ? "SemiBold" : "Regular" } } } QtButton { id: connectButton + fontFamily: Globals.appFont anchors.right: parent.right anchors.verticalCenter: parent.verticalCenter - fillColor: connected ? viewSettings.buttonGrayColor : viewSettings.buttonGreenColor + fillColor: connected ? Globals.buttonGrayColor : Globals.buttonGreenColor borderColor: "transparent" text: connected ? qsTr("DISCONNECT") : qsTr("CONNECT") - height: pluginMain.buttonHeight + enabled: true onClicked: { if (connected) { NetworkSettingsManager.services.itemFromRow(index).disconnectService(); @@ -124,13 +124,12 @@ ListView { Rectangle { id: delegateBottom width: networkDelegate.width - color: viewSettings.borderColor + color: Globals.borderColor height: 2 anchors.bottom: networkDelegate.bottom anchors.horizontalCenter: networkDelegate.horizontalCenter } Behavior on height { NumberAnimation { duration: 200} } - } Connections { @@ -143,7 +142,7 @@ ListView { // Popup for entering passphrase PassphraseEnter { id: passphraseEnter - parent: root + parent: list.parent visible: false } @@ -166,6 +165,4 @@ ListView { } } } - - focus: true } diff --git a/src/settingsui/network/NetworkSettings.qml b/examples/deviceutilities/settingsuiapp/DeviceUtilities/SettingsUI/Network/NetworkSettings.qml index a0555f4..6c486f6 100644 --- a/src/settingsui/network/NetworkSettings.qml +++ b/examples/deviceutilities/settingsuiapp/DeviceUtilities/SettingsUI/Network/NetworkSettings.qml @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2016 The Qt Company Ltd. +** Copyright (C) 2021 The Qt Company Ltd. ** Contact: https://www.qt.io/licensing/ ** ** This file is part of the Device Utilities module of the Qt Toolkit. @@ -27,36 +27,47 @@ ** ****************************************************************************/ import QtQuick -import QtQuick.Layouts -import QtQuick.Controls import QtDeviceUtilities.NetworkSettings -import QtDeviceUtilities.QtButtonImageProvider -import "../common" +import DeviceUtilities.QtButtonImageProvider +import DeviceUtilities.SettingsUI Item { id: networkSettingsRoot - property string title: qsTr("Network Settings") anchors.fill: parent + Connections { + target: NetworkSettingsManager + function onInterfacesChanged() { + if (NetworkSettingsManager.interface(NetworkSettingsType.Wifi, 0) !== null) { + wifiSwitch.visible = true + wifiSwitch.checked = Qt.binding(function() { return NetworkSettingsManager.interface(NetworkSettingsType.Wifi, 0).powered }) + } else { + wifiSwitch.visible = false + } + } + } + Text { id: wlanText - text: qsTr("WLAN") - font.pixelSize: pluginMain.subTitleFontSize - font.family: appFont + visible: wifiSwitch.visible + text: qsTr("WiFi") + font.pixelSize: networkSettingsRoot.height * Globals.subTitleFontSize + font.family: Globals.appFont font.styleName: "SemiBold" color: "white" anchors.top: networkSettingsRoot.top - anchors.left: parent.left + anchors.left: networkSettingsRoot.left } + CustomSwitch { id: wifiSwitch anchors.top: wlanText.bottom anchors.left: wlanText.left - height: pluginMain.buttonHeight - indicatorWidth: pluginMain.buttonWidth - indicatorHeight: pluginMain.buttonHeight - property bool wiFiAvailable: NetworkSettingsManager.interface(NetworkSettingsType.Wifi, 0) !== null - enabled: wiFiAvailable && !wifiSwitchTimer.running + height: networkSettingsRoot.height * Globals.buttonHeight + indicatorWidth: networkSettingsRoot.height * Globals.buttonWidth + indicatorHeight: networkSettingsRoot.height * Globals.buttonHeight + checkable: visible && !wifiSwitchTimer.running + onCheckedChanged: { // Power on/off all WiFi interfaces for (var i = 0; NetworkSettingsManager.interface(NetworkSettingsType.Wifi, i) !== null; i++) { @@ -64,17 +75,6 @@ Item { wifiSwitchTimer.start() } } - Component.onCompleted: { - // If any of the WiFi interfaces is powered on, switch is checked - var checkedStatus = false; - for (var i = 0; NetworkSettingsManager.interface(NetworkSettingsType.Wifi, i) !== null; i++) { - if (NetworkSettingsManager.interface(NetworkSettingsType.Wifi, i).powered) { - checkedStatus = true; - break; - } - } - checked = checkedStatus; - } // At least 1s between switching on/off Timer { @@ -89,23 +89,26 @@ Item { anchors.left: wifiSwitch.right anchors.right: manualDisconnect.left anchors.rightMargin: 10 + visible: wifiSwitch.visible enabled: wifiSwitch.checked - fillColor: enabled ? viewSettings.buttonGreenColor : viewSettings.buttonGrayColor + fillColor: enabled ? Globals.buttonGreenColor : Globals.buttonGrayColor borderColor: "transparent" - height: pluginMain.buttonHeight + height: networkSettingsRoot.height * Globals.buttonHeight text: qsTr("MANUAL CONNECT") onClicked: { networkList.connectBySsid() } } + QtButton { id: manualDisconnect anchors.top: wlanText.bottom - anchors.right: parent.right + anchors.right: networkSettingsRoot.right + visible: wifiSwitch.visible enabled: NetworkSettingsManager.currentWifiConnection - fillColor: enabled ? viewSettings.buttonGreenColor : viewSettings.buttonGrayColor + fillColor: enabled ? Globals.buttonGreenColor : Globals.buttonGrayColor borderColor: "transparent" - height: pluginMain.buttonHeight + height: networkSettingsRoot.height * Globals.buttonHeight text: qsTr("DISCONNECT") onClicked: { if (NetworkSettingsManager.currentWifiConnection) { @@ -113,16 +116,18 @@ Item { } } } + Text { id: networkListTextItem - text: qsTr("Network list:") - font.pixelSize: pluginMain.subTitleFontSize - font.family: appFont + text: qsTr("Available networks:") + font.pixelSize: networkSettingsRoot.height * Globals.subTitleFontSize + font.family: Globals.appFont font.styleName: "SemiBold" color: "white" - anchors.top: wifiSwitch.bottom + anchors.top: (wifiSwitch.visible === true) ? wifiSwitch.bottom : networkSettingsRoot.top anchors.topMargin: 10 } + NetworkListView { id: networkList anchors.top: networkListTextItem.bottom diff --git a/src/settingsui/network/PassphraseEnter.qml b/examples/deviceutilities/settingsuiapp/DeviceUtilities/SettingsUI/Network/PassphraseEnter.qml index 5d3167c..ab85201 100644 --- a/src/settingsui/network/PassphraseEnter.qml +++ b/examples/deviceutilities/settingsuiapp/DeviceUtilities/SettingsUI/Network/PassphraseEnter.qml @@ -28,22 +28,26 @@ ****************************************************************************/ import QtQuick import QtQuick.Controls -import QtDeviceUtilities.QtButtonImageProvider import QtDeviceUtilities.NetworkSettings +import DeviceUtilities.SettingsUI +import DeviceUtilities.QtButtonImageProvider Rectangle { id: passphrasePopup - width: root.width - height: root.height - color: viewSettings.backgroundColor + width: parent.width + height: parent.height + color: Globals.backgroundColor opacity: 0.9 property string extraInfo: "" property bool showSsid: false + property int margin: (width / 3 * 2) * 0.05 + property int spacing: margin * 0.5 + Rectangle { id: frame - color: viewSettings.backgroundColor - border.color: viewSettings.borderColor + color: Globals.backgroundColor + border.color: Globals.borderColor border.width: 3 anchors.centerIn: parent width: passphraseColumn.width * 1.1 @@ -52,12 +56,12 @@ Rectangle { Column { id: passphraseColumn anchors.centerIn: parent - spacing: viewSettings.spacing + spacing: spacing Text { visible: showSsid - font.pixelSize: pluginMain.subTitleFontSize - font.family: appFont + font.pixelSize: passphrasePopup.height * Globals.subTitleFontSize + font.family: Globals.appFont color: "white" text: qsTr("Enter SSID") } @@ -65,26 +69,26 @@ Rectangle { TextField { id: ssidField visible: showSsid - width: root.width * 0.4 - height: root.height * 0.075 + width: passphrasePopup.width * 0.4 + height: passphrasePopup.height * 0.075 color: "white" background: Rectangle{ color: "transparent" - border.color: ssidField.focus ? viewSettings.buttonGreenColor : viewSettings.buttonGrayColor + border.color: ssidField.focus ? Globals.buttonGreenColor : Globals.buttonGrayColor border.width: ssidField.focus ? width * 0.01 : 2 } } Text { - font.pixelSize: pluginMain.subTitleFontSize - font.family: appFont + font.pixelSize: passphrasePopup.height * Globals.subTitleFontSize + font.family: Globals.appFont color: "white" text: qsTr("Enter Passphrase") } Text { - font.pixelSize: pluginMain.valueFontSize - font.family: appFont + font.pixelSize: passphrasePopup.height * Globals.valueFontSize + font.family: Globals.appFont color: "red" text: extraInfo visible: (extraInfo !== "") @@ -92,13 +96,13 @@ Rectangle { TextField { id: passField - width: root.width * 0.4 - height: root.height * 0.075 + width: passphrasePopup.width * 0.4 + height: passphrasePopup.height * 0.075 color: "white" echoMode: TextInput.Password background: Rectangle{ color: "transparent" - border.color: passField.focus ? viewSettings.buttonGreenColor : viewSettings.buttonGrayColor + border.color: passField.focus ? Globals.buttonGreenColor : Globals.buttonGrayColor border.width: passField.focus ? width * 0.01 : 2 } } @@ -122,7 +126,7 @@ Rectangle { id: cancelButton text: qsTr("CANCEL") borderColor: "transparent" - fillColor: viewSettings.buttonGrayColor + fillColor: Globals.buttonGrayColor onClicked: { if (!showSsid) { NetworkSettingsManager.userAgent.cancelInput() diff --git a/src/settingsui/network/WifiSelectorDelegate.qml b/examples/deviceutilities/settingsuiapp/DeviceUtilities/SettingsUI/Network/WifiSelectorDelegate.qml index 3c462c5..bcee3f1 100644 --- a/src/settingsui/network/WifiSelectorDelegate.qml +++ b/examples/deviceutilities/settingsuiapp/DeviceUtilities/SettingsUI/Network/WifiSelectorDelegate.qml @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2016 The Qt Company Ltd. +** Copyright (C) 2021 The Qt Company Ltd. ** Contact: https://www.qt.io/licensing/ ** ** This file is part of the Device Utilities module of the Qt Toolkit. @@ -29,7 +29,6 @@ import QtQuick import QtQuick.Layouts import QtQuick.Controls -import QtDeviceUtilities.NetworkSettings ItemDelegate { id: root @@ -48,14 +47,14 @@ ItemDelegate { elide: Text.ElideRight horizontalAlignment: Text.AlignLeft verticalAlignment: Text.AlignVCenter - text: modelData["name"] + text: entry["name"] } WifiSignalMonitor { id: signalMonitor anchors.right: parent.right height: parent.height width: height - signalStrength: modelData.wirelessConfig["signalStrength"] + signalStrength: entry.wirelessConfig["signalStrength"] connected: connected } } diff --git a/src/settingsui/network/WifiSettings.qml b/examples/deviceutilities/settingsuiapp/DeviceUtilities/SettingsUI/Network/WifiSettings.qml index 0286483..7b4f246 100644 --- a/src/settingsui/network/WifiSettings.qml +++ b/examples/deviceutilities/settingsuiapp/DeviceUtilities/SettingsUI/Network/WifiSettings.qml @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2016 The Qt Company Ltd. +** Copyright (C) 2021 The Qt Company Ltd. ** Contact: https://www.qt.io/licensing/ ** ** This file is part of the Device Utilities module of the Qt Toolkit. @@ -36,6 +36,7 @@ Item { anchors.fill: parent Component.onCompleted: NetworkSettingsManager.services.type = NetworkSettingsType.Wifi; property bool connecting: false + property var selectedInterface: undefined Flickable { anchors.fill: parent @@ -89,7 +90,7 @@ Item { textRole: "name" Layout.fillWidth: true - onActivated: { + onActivated: function(index) { if (index >= 0) { connectView.visible = false @@ -160,7 +161,7 @@ Item { property alias text: text.text Image { - source: "../icons/Alert_yellow_1x.png" + source: "icons/Alert_yellow_1x.png" Layout.alignment: Qt.AlignVCenter } Text { diff --git a/src/settingsui/network/WifiSignalMonitor.qml b/examples/deviceutilities/settingsuiapp/DeviceUtilities/SettingsUI/Network/WifiSignalMonitor.qml index 25e4aa4..bfbcb1d 100644 --- a/src/settingsui/network/WifiSignalMonitor.qml +++ b/examples/deviceutilities/settingsuiapp/DeviceUtilities/SettingsUI/Network/WifiSignalMonitor.qml @@ -58,7 +58,7 @@ Item { id: sprite property int currentFrame: 0 anchors.fill: parent - source: "../icons/Wifi_lightgray_2x.png" + source: "icons/Wifi_lightgray_2x.png" clip: true Timer { @@ -77,7 +77,7 @@ Item { Image { height: parent.height width: parent.width * 4 - source: "../icons/WifiAnim_black_2x.png" + source: "icons/WifiAnim_black_2x.png" x: -parent.currentFrame * width / 4 } } diff --git a/src/settingsui/network/WiredSettings.qml b/examples/deviceutilities/settingsuiapp/DeviceUtilities/SettingsUI/Network/WiredSettings.qml index f5d3a8f..f5d3a8f 100644 --- a/src/settingsui/network/WiredSettings.qml +++ b/examples/deviceutilities/settingsuiapp/DeviceUtilities/SettingsUI/Network/WiredSettings.qml diff --git a/src/settingsui/settingsuiplugin/icons/Alert_yellow_1x.png b/examples/deviceutilities/settingsuiapp/DeviceUtilities/SettingsUI/Network/icons/Alert_yellow_1x.png Binary files differindex 6fd25cb..6fd25cb 100644 --- a/src/settingsui/settingsuiplugin/icons/Alert_yellow_1x.png +++ b/examples/deviceutilities/settingsuiapp/DeviceUtilities/SettingsUI/Network/icons/Alert_yellow_1x.png diff --git a/src/settingsui/settingsuiplugin/icons/WifiAnim_black_2x.png b/examples/deviceutilities/settingsuiapp/DeviceUtilities/SettingsUI/Network/icons/WifiAnim_black_2x.png Binary files differindex c2dc8c5..c2dc8c5 100644 --- a/src/settingsui/settingsuiplugin/icons/WifiAnim_black_2x.png +++ b/examples/deviceutilities/settingsuiapp/DeviceUtilities/SettingsUI/Network/icons/WifiAnim_black_2x.png diff --git a/src/settingsui/settingsuiplugin/icons/Wifi_lightgray_2x.png b/examples/deviceutilities/settingsuiapp/DeviceUtilities/SettingsUI/Network/icons/Wifi_lightgray_2x.png Binary files differindex b71b22e..b71b22e 100644 --- a/src/settingsui/settingsuiplugin/icons/Wifi_lightgray_2x.png +++ b/examples/deviceutilities/settingsuiapp/DeviceUtilities/SettingsUI/Network/icons/Wifi_lightgray_2x.png diff --git a/src/settingsui/settingsuiplugin/icons/generate_icons.sh b/examples/deviceutilities/settingsuiapp/DeviceUtilities/SettingsUI/Network/icons/generate_icons.sh index 7218df0..7218df0 100755 --- a/src/settingsui/settingsuiplugin/icons/generate_icons.sh +++ b/examples/deviceutilities/settingsuiapp/DeviceUtilities/SettingsUI/Network/icons/generate_icons.sh diff --git a/src/settingsui/settingsuiplugin/icons/ref/extra/Alert.png b/examples/deviceutilities/settingsuiapp/DeviceUtilities/SettingsUI/Network/icons/ref/extra/Alert.png Binary files differindex 80914fc..80914fc 100644 --- a/src/settingsui/settingsuiplugin/icons/ref/extra/Alert.png +++ b/examples/deviceutilities/settingsuiapp/DeviceUtilities/SettingsUI/Network/icons/ref/extra/Alert.png diff --git a/src/settingsui/settingsuiplugin/icons/scripts/cimage.sh b/examples/deviceutilities/settingsuiapp/DeviceUtilities/SettingsUI/Network/icons/scripts/cimage.sh index adbbb7f..adbbb7f 100755 --- a/src/settingsui/settingsuiplugin/icons/scripts/cimage.sh +++ b/examples/deviceutilities/settingsuiapp/DeviceUtilities/SettingsUI/Network/icons/scripts/cimage.sh diff --git a/src/settingsui/settingsuiplugin/icons/scripts/cimages.sh b/examples/deviceutilities/settingsuiapp/DeviceUtilities/SettingsUI/Network/icons/scripts/cimages.sh index db1ad04..db1ad04 100755 --- a/src/settingsui/settingsuiplugin/icons/scripts/cimages.sh +++ b/examples/deviceutilities/settingsuiapp/DeviceUtilities/SettingsUI/Network/icons/scripts/cimages.sh diff --git a/src/settingsui/settingsuiplugin/icons/scripts/rimage.sh b/examples/deviceutilities/settingsuiapp/DeviceUtilities/SettingsUI/Network/icons/scripts/rimage.sh index 69b65a3..69b65a3 100755 --- a/src/settingsui/settingsuiplugin/icons/scripts/rimage.sh +++ b/examples/deviceutilities/settingsuiapp/DeviceUtilities/SettingsUI/Network/icons/scripts/rimage.sh diff --git a/src/settingsui/settingsuiplugin/icons/scripts/rimages.sh b/examples/deviceutilities/settingsuiapp/DeviceUtilities/SettingsUI/Network/icons/scripts/rimages.sh index e9e01b0..e9e01b0 100755 --- a/src/settingsui/settingsuiplugin/icons/scripts/rimages.sh +++ b/examples/deviceutilities/settingsuiapp/DeviceUtilities/SettingsUI/Network/icons/scripts/rimages.sh diff --git a/src/imports/networksettings/plugin.h b/examples/deviceutilities/settingsuiapp/DeviceUtilities/SettingsUI/SettingsUI.qml index 6125127..5fad0ed 100644 --- a/src/imports/networksettings/plugin.h +++ b/examples/deviceutilities/settingsuiapp/DeviceUtilities/SettingsUI/SettingsUI.qml @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2016 The Qt Company Ltd. +** Copyright (C) 2021 The Qt Company Ltd. ** Contact: https://www.qt.io/licensing/ ** ** This file is part of the Device Utilities module of the Qt Toolkit. @@ -26,23 +26,18 @@ ** $QT_END_LICENSE$ ** ****************************************************************************/ -#ifndef NETWORKSETTINGSPLUGIN_PLUGIN_H -#define NETWORKSETTINGSPLUGIN_PLUGIN_H +import QtQuick +import DeviceUtilities.SettingsUI.Network -#include <QQmlExtensionPlugin> - -QT_BEGIN_NAMESPACE - -class NetworkSettingsQmlPlugin : public QQmlExtensionPlugin -{ - Q_OBJECT - Q_PLUGIN_METADATA(IID "org.qt-project.Qt.QQmlExtensionInterface") - -public: - void registerTypes(const char *uri) override; -}; - -QT_END_NAMESPACE - -#endif // NETWORKSETTINGSPLUGIN_PLUGIN_H +Rectangle { + id: main + anchors.fill: parent + color: Globals.backgroundColor + opacity: 0.97 + property int margin: Globals.margin(main.width) + signal closed() + NetworkSettings { + anchors.margins: margin + } +} diff --git a/src/settingsui/settingsuiplugin/newIcons/back_icon.svg b/examples/deviceutilities/settingsuiapp/DeviceUtilities/SettingsUI/icons/back.svg index 6034bd7..6034bd7 100644 --- a/src/settingsui/settingsuiplugin/newIcons/back_icon.svg +++ b/examples/deviceutilities/settingsuiapp/DeviceUtilities/SettingsUI/icons/back.svg diff --git a/src/settingsui/settingsuiplugin/newIcons/network_icon.svg b/examples/deviceutilities/settingsuiapp/DeviceUtilities/SettingsUI/icons/network.svg index 157fb52..157fb52 100644 --- a/src/settingsui/settingsuiplugin/newIcons/network_icon.svg +++ b/examples/deviceutilities/settingsuiapp/DeviceUtilities/SettingsUI/icons/network.svg diff --git a/src/settingsui/common/HandwritingModeButton.qml b/examples/deviceutilities/settingsuiapp/HandwritingModeButton.qml index 8b47d2e..adbb262 100644 --- a/src/settingsui/common/HandwritingModeButton.qml +++ b/examples/deviceutilities/settingsuiapp/HandwritingModeButton.qml @@ -48,7 +48,7 @@ Item { sourceSize.width: handwritingModeButton.__minWidthHeight sourceSize.height: handwritingModeButton.__minWidthHeight smooth: false - source: "qrc:/icons/FloatingButton_Unavailable.png" + source: "images/FloatingButton_Unavailable.png" } back: Image { @@ -56,7 +56,7 @@ Item { sourceSize.width: handwritingModeButton.__minWidthHeight sourceSize.height: handwritingModeButton.__minWidthHeight smooth: false - source: "qrc:/icons/FloatingButton_Available.png" + source: "images/FloatingButton_Available.png" } states: State { @@ -86,7 +86,7 @@ Item { State { name: "active" PropertyChanges { target: flipableImage; flipped: true } - PropertyChanges { target: buttonImage; source: "qrc:/icons/FloatingButton_Active.png" } + PropertyChanges { target: buttonImage; source: "images/FloatingButton_Active.png" } } ] diff --git a/examples/deviceutilities/settingsuiapp/applicationsettings.cpp b/examples/deviceutilities/settingsuiapp/applicationsettings.cpp new file mode 100644 index 0000000..937a0ce --- /dev/null +++ b/examples/deviceutilities/settingsuiapp/applicationsettings.cpp @@ -0,0 +1,61 @@ +/**************************************************************************** +** +** Copyright (C) 2016 The Qt Company Ltd. +** Contact: https://www.qt.io/licensing/ +** +** This file is part of Qt for Device Creation. +** +** $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$ +** +****************************************************************************/ +#include "applicationsettings.h" +#include <QGuiApplication> +#include <QScreen> + +ApplicationSettings::ApplicationSettings(QObject *parent) + : QObject(parent) +{ + m_screen = qobject_cast<QGuiApplication *>(QCoreApplication::instance())->primaryScreen(); + + if (m_screen->orientation() == Qt::PortraitOrientation) { + m_width = m_screen->availableGeometry().height(); + m_height = m_screen->availableGeometry().width(); + } else { + m_width = m_screen->availableGeometry().width(); + m_height = m_screen->availableGeometry().height(); + } +} + +bool ApplicationSettings::isHighDpi() +{ + return (m_screen->devicePixelRatio() >= 2.0); +} + +int ApplicationSettings::width() +{ + return m_width; +} + +int ApplicationSettings::height() +{ + return m_height; +} + diff --git a/src/settingsui/ViewSettings.qml b/examples/deviceutilities/settingsuiapp/applicationsettings.h index 4f326cf..7b450e1 100644 --- a/src/settingsui/ViewSettings.qml +++ b/examples/deviceutilities/settingsuiapp/applicationsettings.h @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2019 The Qt Company Ltd. +** Copyright (C) 2021 The Qt Company Ltd. ** Contact: https://www.qt.io/licensing/ ** ** This file is part of Qt for Device Creation. @@ -26,18 +26,39 @@ ** $QT_END_LICENSE$ ** ****************************************************************************/ -import QtQuick - -Item { - id: viewSettings - - property real pageMargin: 0.03 * Math.min(window.width, window.height) - property real spacing: pageMargin * 0.5 - property string appFont: "TitilliumWeb" - property string backgroundColor: "#09102b" - property string borderColor: "#9d9faa" - property string buttonGreenColor: "#41cd52" - property string buttonGrayColor: "#9d9faa" - property string buttonActiveColor: "#216729" - property string scrollBarColor: "#41cd52" -} + +#ifndef APPLICATIONSETTINGS_H +#define APPLICATIONSETTINGS_H + +#include <QObject> +#include <QQmlEngine> + +QT_FORWARD_DECLARE_CLASS(QScreen) + +class ApplicationSettings : public QObject +{ + Q_OBJECT + Q_PROPERTY(int width READ width CONSTANT FINAL) + Q_PROPERTY(int height READ height CONSTANT FINAL) + Q_PROPERTY(bool isHighDpi READ isHighDpi NOTIFY isHighDpiChanged FINAL) + + QML_ELEMENT + QML_SINGLETON + +public: + explicit ApplicationSettings(QObject *parent = nullptr); + + int width(); + int height(); + bool isHighDpi(); + +signals: + void isHighDpiChanged(bool isHighDpi); + +private: + QScreen *m_screen = nullptr; + int m_width = 1280; + int m_height = 720; +}; + +#endif // APPLICATIONSETTINGS_H diff --git a/src/settingsui/settingsuiplugin/icons/FloatingButton_Active.png b/examples/deviceutilities/settingsuiapp/images/FloatingButton_Active.png Binary files differindex 9b55146..9b55146 100755 --- a/src/settingsui/settingsuiplugin/icons/FloatingButton_Active.png +++ b/examples/deviceutilities/settingsuiapp/images/FloatingButton_Active.png diff --git a/src/settingsui/settingsuiplugin/icons/FloatingButton_Available.png b/examples/deviceutilities/settingsuiapp/images/FloatingButton_Available.png Binary files differindex 1479881..1479881 100755 --- a/src/settingsui/settingsuiplugin/icons/FloatingButton_Available.png +++ b/examples/deviceutilities/settingsuiapp/images/FloatingButton_Available.png diff --git a/src/settingsui/settingsuiplugin/icons/FloatingButton_Unavailable.png b/examples/deviceutilities/settingsuiapp/images/FloatingButton_Unavailable.png Binary files differindex 33aa87d..33aa87d 100755 --- a/src/settingsui/settingsuiplugin/icons/FloatingButton_Unavailable.png +++ b/examples/deviceutilities/settingsuiapp/images/FloatingButton_Unavailable.png diff --git a/src/settingsui/main.cpp b/examples/deviceutilities/settingsuiapp/main.cpp index 8ebe695..f2e51aa 100644 --- a/src/settingsui/main.cpp +++ b/examples/deviceutilities/settingsuiapp/main.cpp @@ -29,6 +29,8 @@ #include <QGuiApplication> #include <QQmlApplicationEngine> +#include "applicationsettings.h" + int main(int argc, char *argv[]) { qputenv("QT_IM_MODULE", QByteArray("qtvirtualkeyboard")); @@ -36,7 +38,7 @@ int main(int argc, char *argv[]) QGuiApplication app(argc, argv); QQmlApplicationEngine engine; - engine.load(QUrl(QStringLiteral("qrc:/main.qml"))); + engine.load(QUrl(QStringLiteral("qrc:///DeviceUtilities/main.qml"))); return app.exec(); } diff --git a/src/settingsui/main.qml b/examples/deviceutilities/settingsuiapp/main.qml index c014923..0c755df 100644 --- a/src/settingsui/main.qml +++ b/examples/deviceutilities/settingsuiapp/main.qml @@ -28,23 +28,20 @@ ****************************************************************************/ import QtQuick import QtQuick.Window -import QtDeviceUtilities.SettingsUI import QtQuick.VirtualKeyboard -import "common" +import DeviceUtilities +import DeviceUtilities.SettingsUI Window { id: window visible: true - - property alias appFont: viewSettings.appFont - - ViewSettings { - id: viewSettings - } + width: ApplicationSettings.width + height: ApplicationSettings.height Item { id: root - anchors.fill: parent + width: window.width + height: window.height SettingsUI { id: settingsUI diff --git a/qtdeviceutilities.pro b/qtdeviceutilities.pro deleted file mode 100644 index 9a13a84..0000000 --- a/qtdeviceutilities.pro +++ /dev/null @@ -1,4 +0,0 @@ -requires(linux) -requires(qtHaveModule(quick)) - -load(qt_parts) diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index 3b2c64c..0e91047 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -1,10 +1,6 @@ -# Generated from src.pro. - -add_subdirectory(settingsui/settingsuiplugin) -add_subdirectory(settingsui/qtbuttonimageproviderplugin) -add_subdirectory(settingsui) -add_subdirectory(imports) +add_subdirectory(networksettings) add_subdirectory(doc) -if(TARGET Qt::DBus) - add_subdirectory(networksettings) + +if(TARGET Qt::Qml) + add_subdirectory(networksettingsqml) endif() diff --git a/src/doc/CMakeLists.txt b/src/doc/CMakeLists.txt index 14fa8db..e4a4b7f 100644 --- a/src/doc/CMakeLists.txt +++ b/src/doc/CMakeLists.txt @@ -1,4 +1,12 @@ add_library(DeviceUtilities INTERFACE) +target_link_libraries(DeviceUtilities INTERFACE Qt::Core) + +if(QT_BUILD_ONLINE_DOCS) + set(DOC_CONF "online/qtdeviceutilities.qdocconf") +else() + set(DOC_CONF "qtdeviceutilities.qdocconf") +endif() + qt_internal_add_docs(DeviceUtilities - qtdeviceutilities.qdocconf + ${DOC_CONF} ) diff --git a/src/doc/QtDeviceUtilitiesDoc b/src/doc/QtDeviceUtilitiesDoc new file mode 100644 index 0000000..2a4573c --- /dev/null +++ b/src/doc/QtDeviceUtilitiesDoc @@ -0,0 +1 @@ +#include <QtNetworkSettings/QtNetworkSettings> diff --git a/src/doc/config/style/qt5-sidebar.html b/src/doc/config/style/qt5-sidebar.html deleted file mode 100644 index 3879827..0000000 --- a/src/doc/config/style/qt5-sidebar.html +++ /dev/null @@ -1,16 +0,0 @@ -<div class="sectionlist normallist"> - <div class="heading"> - <h2>Qt Device Utilities</h2> - </div> - <ul> - <li><a href="qtee-module-reference.html">Home</a></li> - </ul> -</div> -<div class="sectionlist normallist"> - <div class="heading"> - <h2>See Also</h2> - </div> - <ul> - <li><a href="https://doc.qt.io/QtForDeviceCreation">Qt for Device Creation</a></li> - </ul> -</div> diff --git a/src/doc/online/qtdeviceutilities.qdocconf b/src/doc/online/qtdeviceutilities.qdocconf new file mode 100644 index 0000000..c8e4c21 --- /dev/null +++ b/src/doc/online/qtdeviceutilities.qdocconf @@ -0,0 +1,9 @@ +include($QT_INSTALL_DOCS/global/qt-module-defaults-online.qdocconf) +include(../qtdeviceutilities-project.qdocconf) + +# Sidebar used for online template +HTML.stylesheets += style/qt5-sidebar.html + +# Turn off single-directory output mode +HTML.nosubdirs = "false" +HTML.outputsubdir = qtdeviceutilities diff --git a/src/doc/online/style/qt5-sidebar.html b/src/doc/online/style/qt5-sidebar.html new file mode 100644 index 0000000..d402ad0 --- /dev/null +++ b/src/doc/online/style/qt5-sidebar.html @@ -0,0 +1,11 @@ +<div class="sectionlist normallist"> + <div class="heading"> + <h2>Qt Device Utilities</h2> + </div> + <ul> + <li><a href="index.html">Home</a></li> + <li><a href="qtdeviceutilities-cpp-classes.html">C++ Classes</a></li> + <li><a href="qtdeviceutilities-qml-types.html">QML Types</a></li> + <li><a href="qtdeviceutilities-examples.html">Examples</a></li> + </ul> +</div> diff --git a/src/doc/qtdeviceutilities-project.qdocconf b/src/doc/qtdeviceutilities-project.qdocconf index 5898e49..3a3bfdb 100644 --- a/src/doc/qtdeviceutilities-project.qdocconf +++ b/src/doc/qtdeviceutilities-project.qdocconf @@ -1,43 +1,20 @@ -include($QT_INSTALL_DOCS/global/qt-module-defaults.qdocconf) - project = QtDeviceUtilities description = Qt Device Utilities $QT_VERSION version = $QT_VERSION -macro.maintitle = "\\title Qt Device Utilities $QT_VERSION" +projectname = "Qt Device Utilities" +macro.maintitle = "\\title $projectname $QT_VERSION\n\\keyword $projectname" -includepaths += -I . -# -I ../bluetoothsettings \ -# -I ../displaysettings \ -# -I ../localdevice \ -# -I ../localesettings \ -# -I ../networksettings \ -# -I ../timedatesettings +includepaths += -I . \ + -I ../networksettings # pass a custom module header to Clang moduleheader = QtDeviceUtilitiesDoc sourcedirs += src \ - ../imports/localesettings \ - ../imports/bluetoothsettings \ - ../imports/displaysettings \ - ../imports/localdevice \ - ../imports/localesettings \ - ../imports/timedatesettings \ - ../imports/networksettings \ - ../bluetoothsettings \ - ../displaysettings \ - ../localdevice \ - ../localesettings \ - ../networksettings \ - ../timedatesettings \ - ../settingsui/settingsuiplugin - -headerdirs += ../bluetoothsettings \ - ../displaysettings \ - ../localdevice \ - ../localesettings \ - ../networksettings \ - ../timedatesettings + ../networksettingsqml \ + ../networksettings + +headerdirs += ../networksettings exampledirs += ../../examples @@ -77,8 +54,8 @@ macro.B2QA = "\\e {Boot to Qt for embedded Android}" macro.B2QL = "\\e {Boot to Qt for embedded Linux}" macro.QtDU = "Qt Device Utilities" -# Keep Device Creation as the landing page -navigation.landingpage = "Qt for Device Creation" +# Qt Device Utilities as the landing page +navigation.landingpage = "Qt Device Utilities" navigation.qmltypespage = "Qt Device Utilities QML Types" navigation.cppclassespage = "Qt Device Utilities C++ Classes" diff --git a/src/doc/qtdeviceutilities.qdocconf b/src/doc/qtdeviceutilities.qdocconf index 5b56cf1..bd38e0f 100644 --- a/src/doc/qtdeviceutilities.qdocconf +++ b/src/doc/qtdeviceutilities.qdocconf @@ -1,3 +1,4 @@ +include($QT_INSTALL_DOCS/global/qt-module-defaults.qdocconf) include(qtdeviceutilities-project.qdocconf) # Turn off single-directory output mode diff --git a/src/doc/src/external-resources.qdoc b/src/doc/src/external-resources.qdoc index 38e9654..12da259 100644 --- a/src/doc/src/external-resources.qdoc +++ b/src/doc/src/external-resources.qdoc @@ -24,10 +24,6 @@ ** $QT_END_LICENSE$ ** ****************************************************************************/ -/*! - \externalpage https://doc.qt.io/QtForDeviceCreation - \title Qt for Device Creation -*/ /*! \externalpage http://code.qt.io/cgit/qt/qtdeviceutilities.git/ @@ -35,6 +31,7 @@ */ /*! - \externalpage http://code.qt.io/cgit/qt/qtdeviceutilities.git/tree/src/settingsui + \externalpage https://code.qt.io/cgit/qt/qtdeviceutilities.git/tree/examples/deviceutilities/settingsuiapp/ + \title Settings UI */ diff --git a/src/doc/src/qtdeviceutilities-index.qdoc b/src/doc/src/qtdeviceutilities-index.qdoc index 3e4467e..c7e0d96 100644 --- a/src/doc/src/qtdeviceutilities-index.qdoc +++ b/src/doc/src/qtdeviceutilities-index.qdoc @@ -1,6 +1,6 @@ /**************************************************************************** ** -** Copyright (C) 2019 The Qt Company Ltd. +** Copyright (C) 2021 The Qt Company Ltd. ** Contact: https://www.qt.io/licensing/ ** ** This file is part of the documentation of the Qt Toolkit. @@ -57,20 +57,11 @@ target_link_libraries(mytarget Qt6::NetworkSettings) \endcode - \section2 Building with qmake - - If you're using qmake to build your application, add this line to your qmake .pro file: - - \badcode - QT += networksettings - \endcode - To import the QML types into your application, use the following import statements in your .qml file: \code import QtDeviceUtilities.NetworkSettings - import QtDeviceUtilities.SettingsUI \endcode \section1 Examples diff --git a/src/doc/src/qtdeviceutilities-module-qml.qdoc b/src/doc/src/qtdeviceutilities-module-qml.qdoc index 2c8fef5..510fc01 100644 --- a/src/doc/src/qtdeviceutilities-module-qml.qdoc +++ b/src/doc/src/qtdeviceutilities-module-qml.qdoc @@ -35,15 +35,11 @@ \badcode import QtDeviceUtilities.NetworkSettings - import QtDeviceUtilities.SettingsUI \endcode \section1 QML Types \section2 Qt Network Settings Module \generatelist qmltypesbymodule QtDeviceUtilities.NetworkSettings - - \section2 Qt Settings UI Module - \generatelist qmltypesbymodule QtDeviceUtilities.SettingsUI */ diff --git a/src/imports/CMakeLists.txt b/src/imports/CMakeLists.txt deleted file mode 100644 index 163fe57..0000000 --- a/src/imports/CMakeLists.txt +++ /dev/null @@ -1,3 +0,0 @@ -# Generated from imports.pro. - -add_subdirectory(networksettings) diff --git a/src/imports/imports.pro b/src/imports/imports.pro deleted file mode 100644 index 67ab980..0000000 --- a/src/imports/imports.pro +++ /dev/null @@ -1,3 +0,0 @@ -TEMPLATE = subdirs - -SUBDIRS += networksettings diff --git a/src/imports/networksettings/CMakeLists.txt b/src/imports/networksettings/CMakeLists.txt deleted file mode 100644 index b2b07b8..0000000 --- a/src/imports/networksettings/CMakeLists.txt +++ /dev/null @@ -1,24 +0,0 @@ -# Generated from networksettings.pro. - -##################################################################### -## networksettingsplugin Plugin: -##################################################################### - -qt_add_qml_module(networksettingsplugin - URI "QtDeviceUtilities.NetworkSettings" - VERSION "${CMAKE_PROJECT_VERSION}" - CLASSNAME NetworkSettingsQmlPlugin - SKIP_TYPE_REGISTRATION - SOURCES - plugin.cpp plugin.h - PUBLIC_LIBRARIES - Qt::Core - Qt::Gui - Qt::Qml - Qt::Quick - Qt::NetworkSettings -) - -#### Keys ignored in scope 1:.:.:networksettings.pro:<TRUE>: -# QML_IMPORT_VERSION = "$$QT_VERSION" -# TARGETPATH = "QtDeviceUtilities/NetworkSettings" diff --git a/src/imports/networksettings/networksettings.pro b/src/imports/networksettings/networksettings.pro deleted file mode 100644 index c630fb2..0000000 --- a/src/imports/networksettings/networksettings.pro +++ /dev/null @@ -1,15 +0,0 @@ -QT += qml quick networksettings -CONFIG += no_cxx_module -QML_IMPORT_VERSION = $$QT_VERSION - -TARGET = networksettingsplugin -TARGETPATH = QtDeviceUtilities/NetworkSettings - -SOURCES += \ - plugin.cpp \ - -HEADERS += \ - plugin.h \ - -load(qml_plugin) - diff --git a/src/imports/networksettings/plugins.qmltypes b/src/imports/networksettings/plugins.qmltypes deleted file mode 100644 index f2603eb..0000000 --- a/src/imports/networksettings/plugins.qmltypes +++ /dev/null @@ -1,205 +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.NetworkSettings 1.0' - -Module { - dependencies: ["QtQuick 2.8"] - Component { - name: "QNetworkSettingsIPv4" - prototype: "QObject" - exports: ["QtDeviceUtilities.NetworkSettings/NetworkSettingsIPv4 1.0"] - isCreatable: false - exportMetaObjectRevisions: [0] - Enum { - name: "MethodType" - values: { - "Dhcp": 0, - "Manual": 1, - "Off": 2 - } - } - Property { name: "address"; type: "string" } - Property { name: "gateway"; type: "string" } - Property { name: "method"; type: "MethodType" } - Property { name: "mask"; type: "string" } - } - Component { - name: "QNetworkSettingsIPv6" - prototype: "QObject" - exports: ["QtDeviceUtilities.NetworkSettings/NetworkSettingsIPv6 1.0"] - isCreatable: false - exportMetaObjectRevisions: [0] - Enum { - name: "MethodType" - values: { - "Auto": 0, - "Manual": 1, - "Off": 2 - } - } - Enum { - name: "PrivacyType" - values: { - "Disabled": 0, - "Enabled": 1, - "Preferred": 2 - } - } - Property { name: "address"; type: "string" } - Property { name: "gateway"; type: "string" } - Property { name: "method"; type: "MethodType" } - Property { name: "privacy"; type: "PrivacyType" } - Property { name: "prefixLength"; type: "int" } - } - Component { - name: "QNetworkSettingsInterface" - prototype: "QObject" - exports: ["QtDeviceUtilities.NetworkSettings/NetworkInterface 1.0"] - isCreatable: false - exportMetaObjectRevisions: [0] - Property { name: "name"; type: "string"; isReadonly: true } - Property { name: "state"; type: "QNetworkSettingsState::States"; isReadonly: true } - Property { name: "type"; type: "QNetworkSettingsType::Types"; isReadonly: true } - Property { name: "powered"; type: "bool" } - Method { name: "scanServices" } - } - Component { - name: "QNetworkSettingsManager" - prototype: "QObject" - exports: [ - "QtDeviceUtilities.NetworkSettings/NetworkSettingsManager 1.0" - ] - isCreatable: false - isSingleton: true - exportMetaObjectRevisions: [0] - Property { - name: "services" - type: "QNetworkSettingsServiceFilter" - isReadonly: true - isPointer: true - } - Property { - name: "interfaces" - type: "QNetworkSettingsInterfaceModel" - isReadonly: true - isPointer: true - } - Property { - name: "userAgent" - type: "QNetworkSettingsUserAgent" - isReadonly: true - isPointer: true - } - Method { - name: "service" - type: "QNetworkSettingsService*" - Parameter { name: "name"; type: "string" } - Parameter { name: "type"; type: "int" } - } - Method { - name: "interface" - type: "QNetworkSettingsInterface*" - Parameter { name: "type"; type: "int" } - Parameter { name: "instance"; type: "int" } - } - } - Component { - name: "QNetworkSettingsProxy" - prototype: "QObject" - exports: [ - "QtDeviceUtilities.NetworkSettings/NetworkSettingsProxy 1.0" - ] - isCreatable: false - exportMetaObjectRevisions: [0] - Enum { - name: "MethodType" - values: { - "Direct": 0, - "Auto": 1, - "Manual": 2 - } - } - Property { name: "url"; type: "QUrl" } - Property { name: "servers"; type: "QAbstractItemModel"; isReadonly: true; isPointer: true } - Property { name: "excludes"; type: "QAbstractItemModel"; isReadonly: true; isPointer: true } - Property { name: "method"; type: "MethodType" } - } - Component { - name: "QNetworkSettingsService" - prototype: "QObject" - exports: ["QtDeviceUtilities.NetworkSettings/NetworkService 1.0"] - isCreatable: false - exportMetaObjectRevisions: [0] - Property { name: "id"; type: "string"; isReadonly: true } - Property { name: "name"; type: "string"; isReadonly: true } - Property { name: "state"; type: "QNetworkSettingsState::States"; isReadonly: true } - Property { name: "type"; type: "QNetworkSettingsType::Types"; isReadonly: true } - Property { name: "ipv4"; type: "QNetworkSettingsIPv4"; isReadonly: true; isPointer: true } - Property { name: "ipv6"; type: "QNetworkSettingsIPv6"; isReadonly: true; isPointer: true } - Property { name: "proxy"; type: "QNetworkSettingsProxy"; isReadonly: true; isPointer: true } - Property { - name: "wirelessConfig" - type: "QNetworkSettingsWireless" - isReadonly: true - isPointer: true - } - Property { name: "domains"; type: "QAbstractItemModel"; isReadonly: true; isPointer: true } - Property { name: "nameservers"; type: "QAbstractItemModel"; isReadonly: true; isPointer: true } - Signal { name: "wirelessChanged" } - Method { - name: "setAutoConnect" - Parameter { name: "autoconnect"; type: "bool" } - } - Method { name: "setupIpv4Config" } - Method { name: "setupIpv6Config" } - Method { name: "setupNameserversConfig" } - Method { name: "setupDomainsConfig" } - Method { name: "setupNetworkSettingsProxy" } - Method { name: "connectService" } - Method { name: "disconnectService" } - } - Component { - name: "QNetworkSettingsState" - prototype: "QObject" - exports: [ - "QtDeviceUtilities.NetworkSettings/NetworkSettingsState 1.0" - ] - isCreatable: false - exportMetaObjectRevisions: [0] - Enum { - name: "States" - values: { - "Idle": 0, - "Failure": 1, - "Association": 2, - "Configuration": 3, - "Ready": 4, - "Disconnect": 5, - "Online": 6, - "Undefined": 7 - } - } - Property { name: "state"; type: "States" } - } - Component { - name: "QNetworkSettingsType" - prototype: "QObject" - exports: ["QtDeviceUtilities.NetworkSettings/NetworkSettingsType 1.0"] - isCreatable: false - exportMetaObjectRevisions: [0] - Enum { - name: "Types" - values: { - "Wired": 0, - "Wifi": 1, - "Bluetooth": 2, - "Unknown": 3 - } - } - Property { name: "type"; type: "Types" } - } -} diff --git a/src/imports/networksettings/qmldir b/src/imports/networksettings/qmldir deleted file mode 100644 index 64b8d6e..0000000 --- a/src/imports/networksettings/qmldir +++ /dev/null @@ -1,4 +0,0 @@ -module QtDeviceUtilities.NetworkSettings -plugin networksettingsplugin -classname NetworkSettingsQmlPlugin -typeinfo plugins.qmltypes diff --git a/src/networksettings/CMakeLists.txt b/src/networksettings/CMakeLists.txt index ba8872b..03e43f4 100644 --- a/src/networksettings/CMakeLists.txt +++ b/src/networksettings/CMakeLists.txt @@ -4,7 +4,7 @@ ## NetworkSettings Module: ##################################################################### -qt_add_module(NetworkSettings +qt_internal_add_module(NetworkSettings SOURCES connman/connmancommon.cpp connman/connmancommon.h connman/qnetworksettingsinterface_p.cpp connman/qnetworksettingsinterface_p.h @@ -19,6 +19,7 @@ qt_add_module(NetworkSettings qnetworksettingsservice.cpp qnetworksettingsservice.h qnetworksettingsservicemodel.cpp qnetworksettingsservicemodel.h qnetworksettingsuseragent.cpp qnetworksettingsuseragent.h + qnetworksettingsglobal.h DBUS_INTERFACE_SOURCES connman/connman_manager.xml connman/connman_service.xml @@ -31,6 +32,7 @@ qt_add_module(NetworkSettings Qt::Core Qt::DBus Qt::Network + GENERATE_CPP_EXPORTS ) file(MAKE_DIRECTORY header_connman) diff --git a/src/networksettings/connman.pri b/src/networksettings/connman.pri deleted file mode 100644 index 957f2f0..0000000 --- a/src/networksettings/connman.pri +++ /dev/null @@ -1,22 +0,0 @@ -QT += core network dbus - -INCLUDEPATH += $${PWD}/connman - -DBUS_INTERFACES = \ - connman/connman_manager.xml \ - connman/connman_service.xml \ - connman/connman_technology.xml - -SOURCES += \ - $$PWD/connman/qnetworksettingsinterface_p.cpp \ - $$PWD/connman/qnetworksettingsservice_p.cpp \ - $$PWD/connman/qnetworksettingsuseragent_p.cpp \ - $$PWD/connman/qnetworksettingsmanager_p.cpp \ - $$PWD/connman/connmancommon.cpp - -HEADERS += \ - $$PWD/connman/qnetworksettingsinterface_p.h \ - $$PWD/connman/qnetworksettingsservice_p.h \ - $$PWD/connman/qnetworksettingsuseragent_p.h \ - $$PWD/connman/qnetworksettingsmanager_p.h \ - $$PWD/connman/connmancommon.h diff --git a/src/networksettings/connman/connman_manager.xml b/src/networksettings/connman/connman_manager.xml index 95bc0cb..ba95e8b 100644 --- a/src/networksettings/connman/connman_manager.xml +++ b/src/networksettings/connman/connman_manager.xml @@ -80,7 +80,7 @@ <signal name="TechnologyAdded" tp:name-for-bindings="Technology_Added"> <arg name="technology" type="o"/> <arg name="properties" type="a{sv}"/> - <annotation name="org.qtproject.QtDBus.QtTypeName.In1" value="QVariantMap"/> + <annotation name="org.qtproject.QtDBus.QtTypeName.Out1" value="QVariantMap"/> </signal> <signal name="TechnologyRemoved" tp:name-for-bindings="Technology_Removed"> diff --git a/src/networksettings/connman/connmancommon.cpp b/src/networksettings/connman/connmancommon.cpp index 887af48..a77bb1d 100644 --- a/src/networksettings/connman/connmancommon.cpp +++ b/src/networksettings/connman/connmancommon.cpp @@ -28,6 +28,8 @@ ****************************************************************************/ #include "connmancommon.h" +#include <QtNetworkSettings/qnetworksettings.h> + QT_BEGIN_NAMESPACE //Conversion operations for datatypes diff --git a/src/networksettings/connman/connmancommon.h b/src/networksettings/connman/connmancommon.h index 4b792ce..3b3cb79 100644 --- a/src/networksettings/connman/connmancommon.h +++ b/src/networksettings/connman/connmancommon.h @@ -30,8 +30,7 @@ #define CONNMANCOMMON_H #include <QtCore/QMetaType> -#include <QtDBus> -#include <QtNetworkSettings/qnetworksettings.h> +#include <QtDBus/QtDBus> #define PropertyAgentPath QStringLiteral("/ConnmanAgent") #define PropertyState QStringLiteral("State") @@ -54,6 +53,9 @@ QT_BEGIN_NAMESPACE +class QNetworkSettingsType; +class QNetworkSettingsState; + struct ConnmanMapStruct { QDBusObjectPath objectPath; QVariantMap propertyMap; diff --git a/src/networksettings/connman/qnetworksettingsinterface_p.cpp b/src/networksettings/connman/qnetworksettingsinterface_p.cpp index 5f008ff..eeb2abc 100644 --- a/src/networksettings/connman/qnetworksettingsinterface_p.cpp +++ b/src/networksettings/connman/qnetworksettingsinterface_p.cpp @@ -27,7 +27,6 @@ ** ****************************************************************************/ #include "qnetworksettingsinterface_p.h" -#include "qnetworksettingsinterface.h" #include "connman_technology_interface.h" #include "connmancommon.h" @@ -35,10 +34,9 @@ QT_BEGIN_NAMESPACE QNetworkSettingsInterfacePrivate::QNetworkSettingsInterfacePrivate(QNetworkSettingsInterface* parent) : QObject(parent) - , m_technology(Q_NULLPTR) + , m_technology(nullptr) ,q_ptr(parent) { - } void QNetworkSettingsInterfacePrivate::initialize(const QString& path, const QVariantMap& properties) @@ -83,7 +81,7 @@ void QNetworkSettingsInterfacePrivate::updateProperty(const QString &name, const } } -void QNetworkSettingsInterfacePrivate::setState(QNetworkSettingsState::States aState) +void QNetworkSettingsInterfacePrivate::setState(QNetworkSettingsState::State aState) { Q_Q(QNetworkSettingsInterface); m_state.setState(aState); diff --git a/src/networksettings/connman/qnetworksettingsinterface_p.h b/src/networksettings/connman/qnetworksettingsinterface_p.h index d85712a..25fbd2d 100644 --- a/src/networksettings/connman/qnetworksettingsinterface_p.h +++ b/src/networksettings/connman/qnetworksettingsinterface_p.h @@ -41,10 +41,11 @@ // #include <QObject> -#include <QtDBus> +#include <QtDBus/QDBusVariant> #include "qnetworksettings.h" #include "qnetworksettingsinterface.h" +// Automatically generated class in global namespace class NetConnmanTechnologyInterface; QT_BEGIN_NAMESPACE @@ -57,11 +58,11 @@ public: explicit QNetworkSettingsInterfacePrivate(QNetworkSettingsInterface* parent); void initialize(const QString& path, const QVariantMap& properties); void setPowered(const bool power); - void setState(QNetworkSettingsState::States aState); + void setState(QNetworkSettingsState::State aState); void scan(); QString name() const {return m_name;} - QNetworkSettingsType::Types type() const {return m_type.type();} - QNetworkSettingsState::States state() const {return m_state.state();} + QNetworkSettingsType::Type type() const {return m_type.type();} + QNetworkSettingsState::State state() const {return m_state.state();} bool powered() const {return m_powered;} QString path() const; @@ -84,21 +85,19 @@ class ConnmanSettingsInterface : public QNetworkSettingsInterface { Q_OBJECT public: - ConnmanSettingsInterface(const QString& path, const QVariantMap& properties, QObject *parent = Q_NULLPTR) + ConnmanSettingsInterface(const QString& path, const QVariantMap& properties, QObject *parent = nullptr) :QNetworkSettingsInterface(parent) { if (d_ptr) d_ptr->initialize(path, properties); } - void setState(QNetworkSettingsState::States aState) { + void setState(QNetworkSettingsState::State aState) { Q_D(QNetworkSettingsInterface); d->setState(aState); } - virtual ~ConnmanSettingsInterface() { - - } + virtual ~ConnmanSettingsInterface() {} QString path() const { if (d_ptr) diff --git a/src/networksettings/connman/qnetworksettingsmanager_p.cpp b/src/networksettings/connman/qnetworksettingsmanager_p.cpp index 3f594bd..94eec14 100644 --- a/src/networksettings/connman/qnetworksettingsmanager_p.cpp +++ b/src/networksettings/connman/qnetworksettingsmanager_p.cpp @@ -26,10 +26,8 @@ ** $QT_END_LICENSE$ ** ****************************************************************************/ -#include <QFile> -#include <QNetworkInterface> +#include "qnetworksettingsservice.h" #include "qnetworksettingsmanager_p.h" -#include "qnetworksettingsinterface.h" #include "qnetworksettingsinterface_p.h" #include "qnetworksettingsservicemodel.h" #include "qnetworksettingsuseragent.h" @@ -42,14 +40,14 @@ const QString ConnManServiceName(QStringLiteral("net.connman")); QNetworkSettingsManagerPrivate::QNetworkSettingsManagerPrivate(QNetworkSettingsManager *parent) :QObject(parent) ,q_ptr(parent) - , m_interfaceModel(Q_NULLPTR) - , m_serviceModel(Q_NULLPTR) - , m_serviceFilter(Q_NULLPTR) - , m_manager(Q_NULLPTR) - , m_agent(Q_NULLPTR) - , m_serviceWatcher(Q_NULLPTR) - , m_currentWifiConnection(Q_NULLPTR) - , m_currentWiredConnection(Q_NULLPTR) + , m_interfaceModel(nullptr) + , m_serviceModel(nullptr) + , m_serviceFilter(nullptr) + , m_manager(nullptr) + , m_agent(nullptr) + , m_serviceWatcher(nullptr) + , m_currentWifiConnection(nullptr) + , m_currentWiredConnection(nullptr) , m_initialized(false) { qRegisterMetaType<ConnmanMapStruct>("ConnmanMapStruct"); @@ -140,8 +138,7 @@ void QNetworkSettingsManagerPrivate::tryNextConnection() } if (!service) { if (!m_unnamedServicesForSsidConnection.isEmpty()) { - service = *m_unnamedServicesForSsidConnection.begin(); - m_unnamedServicesForSsidConnection.erase(m_unnamedServicesForSsidConnection.begin()); + service = m_unnamedServicesForSsidConnection.take(m_unnamedServicesForSsidConnection.firstKey()); } else { q->clearConnectionState(); } @@ -151,6 +148,26 @@ void QNetworkSettingsManagerPrivate::tryNextConnection() } } +void QNetworkSettingsManagerPrivate::setCurrentWifiConnection(QNetworkSettingsService *connection) +{ + m_currentWifiConnection = connection; +} + +QNetworkSettingsService *QNetworkSettingsManagerPrivate::currentWifiConnection() const +{ + return m_currentWifiConnection.data(); +} + +void QNetworkSettingsManagerPrivate::setCurrentWiredConnection(QNetworkSettingsService *connection) +{ + m_currentWiredConnection = connection; +} + +QNetworkSettingsService *QNetworkSettingsManagerPrivate::currentWiredConnection() const +{ + return m_currentWiredConnection.data(); +} + void QNetworkSettingsManagerPrivate::onConnmanServiceRegistered(const QString &serviceName) { if (serviceName == ConnManServiceName) { @@ -163,31 +180,34 @@ void QNetworkSettingsManagerPrivate::onTechnologyAdded(const QDBusObjectPath &te { Q_Q(QNetworkSettingsManager); - foreach (QNetworkSettingsInterface* item, m_interfaceModel.getModel()) { - ConnmanSettingsInterface* tech = qobject_cast<ConnmanSettingsInterface*>(item); - if (tech->path() != technology.path()) { - ConnmanSettingsInterface *interface = new ConnmanSettingsInterface(technology.path(), properties, this); - interface->scanServices(); - - if (interface->type() == QNetworkSettingsType::Wired) { - m_interfaceModel.insert(0, interface); - } - else if (interface->type() == QNetworkSettingsType::Wifi) { - m_interfaceModel.append(interface); - } - emit q->interfacesChanged(); + for (QNetworkSettingsInterface* item : m_interfaceModel.getModel()) { + ConnmanSettingsInterface* interface = qobject_cast<ConnmanSettingsInterface*>(item); + if (interface->path() == technology.path()) { + return; // we already know the interface/technology } } + + ConnmanSettingsInterface *interface = new ConnmanSettingsInterface(technology.path(), properties, this); + interface->scanServices(); + + if (interface->type() == QNetworkSettingsType::Wired) { + m_interfaceModel.insert(0, interface); + } + else if (interface->type() == QNetworkSettingsType::Wifi) { + m_interfaceModel.append(interface); + } + + emit q->interfacesChanged(); } void QNetworkSettingsManagerPrivate::onTechnologyRemoved(const QDBusObjectPath &technology) { Q_Q(QNetworkSettingsManager); - foreach (QNetworkSettingsInterface* item, m_interfaceModel.getModel()) { + for (QNetworkSettingsInterface* item : m_interfaceModel.getModel()) { ConnmanSettingsInterface* tech = qobject_cast<ConnmanSettingsInterface*>(item); if (tech->path() == technology.path()) { - m_interfaceModel.removeInterface(technology.path()); + m_interfaceModel.removeInterface(tech->name()); emit q->interfacesChanged(); } } @@ -201,7 +221,7 @@ void QNetworkSettingsManagerPrivate::getServicesFinished(QDBusPendingCallWatcher if (reply.isError()) return; - foreach (const ConnmanMapStruct &object, reply.value()) { + for (const ConnmanMapStruct &object : reply.value()) { const QString servicePath = object.objectPath.path(); handleNewService(servicePath); } @@ -216,7 +236,7 @@ void QNetworkSettingsManagerPrivate::getTechnologiesFinished(QDBusPendingCallWat if (reply.isError()) return; - foreach (const ConnmanMapStruct &object, reply.value()) { + for (const ConnmanMapStruct &object : reply.value()) { ConnmanSettingsInterface *item = new ConnmanSettingsInterface(object.objectPath.path(), object.propertyMap, this); item->scanServices(); @@ -232,21 +252,43 @@ void QNetworkSettingsManagerPrivate::getTechnologiesFinished(QDBusPendingCallWat void QNetworkSettingsManagerPrivate::onServicesChanged(ConnmanMapStructList changed, const QList<QDBusObjectPath> &removed) { - foreach (QDBusObjectPath path, removed) { - m_serviceModel->removeService(path.path()); - auto serviceIter = m_unnamedServices.find(path.path()); - if (serviceIter != m_unnamedServices.end()) { - serviceIter.value()->deleteLater(); - m_unnamedServices.erase(serviceIter); - } + Q_Q(QNetworkSettingsManager); + for (const QDBusObjectPath &dpath : removed) { + QString path = dpath.path(); + + if (m_serviceModel->removeService(path)) + emit q->servicesChanged(); + + if (auto service = m_unnamedServices.take(path)) + if (!service->placeholderState()) { + disconnect(service, &QNetworkSettingsService::nameChanged, + this, &QNetworkSettingsManagerPrivate::serviceReady); + disconnect(service, &QNetworkSettingsService::typeChanged, + this, &QNetworkSettingsManagerPrivate::serviceReady); + service->deleteLater(); + } + if (auto service = m_unknownServices.take(path)) + if (!service->placeholderState()) { + disconnect(service, &QNetworkSettingsService::nameChanged, + this, &QNetworkSettingsManagerPrivate::serviceReady); + disconnect(service, &QNetworkSettingsService::typeChanged, + this, &QNetworkSettingsManagerPrivate::serviceReady); + service->deleteLater(); + } + m_unnamedServicesForSsidConnection.remove(path); // do not delete here } QStringList newServices; - foreach (ConnmanMapStruct map, changed) { + for (const ConnmanMapStruct &map : changed) { + QString path = map.objectPath.path(); + + if (m_unknownServices.contains(path) || m_unnamedServices.contains(path)) + continue; + bool found = false; - foreach (QNetworkSettingsService* service, m_serviceModel->getModel()) { - if (service->id() == map.objectPath.path() && service->placeholderState() == false) { - found =true; + for (QNetworkSettingsService* service : m_serviceModel->getModel()) { + if (service->id() == path && service->placeholderState() == false) { + found = true; break; } } @@ -254,7 +296,7 @@ void QNetworkSettingsManagerPrivate::onServicesChanged(ConnmanMapStructList chan newServices.append(map.objectPath.path()); } - foreach (QString newService, newServices) { + for (QString newService : newServices) { handleNewService(newService); } @@ -282,9 +324,20 @@ void QNetworkSettingsManagerPrivate::handleNewService(const QString &servicePath } } else { + bool isUnnamedWifi = false; + //Service name or type not set, wait for update - connect(service, &QNetworkSettingsService::nameChanged, this, &QNetworkSettingsManagerPrivate::serviceReady); - connect(service, &QNetworkSettingsService::typeChanged, this, &QNetworkSettingsManagerPrivate::serviceReady); + if (service->name().isEmpty()) { + connect(service, &QNetworkSettingsService::nameChanged, this, &QNetworkSettingsManagerPrivate::serviceReady); + isUnnamedWifi = (service->type() == QNetworkSettingsType::Wifi); + } + if (service->type() == QNetworkSettingsType::Unknown) + connect(service, &QNetworkSettingsService::typeChanged, this, &QNetworkSettingsManagerPrivate::serviceReady); + + if (isUnnamedWifi) + m_unnamedServices.insert(service->id(), service); + else + m_unknownServices.insert(service->id(), service); } } @@ -299,11 +352,14 @@ void QNetworkSettingsManagerPrivate::serviceReady() QNetworkSettingsService* service = qobject_cast<QNetworkSettingsService*>(sender()); - if (service->type() != QNetworkSettingsType::Unknown - && service->type() == QNetworkSettingsType::Wifi) { + // the type changed from Unknown to Wifi + if ((service->type() == QNetworkSettingsType::Wifi) + && m_unknownServices.contains(service->id())) { + m_unknownServices.remove(service->id()); m_unnamedServices.insert(service->id(), service); } + // we have a name and a length now if (service->name().length() > 0 && service->type() != QNetworkSettingsType::Unknown) { service->disconnect(this); m_unnamedServices.remove(service->id()); @@ -314,7 +370,7 @@ void QNetworkSettingsManagerPrivate::serviceReady() } //Update the interface state accordingly - foreach (QNetworkSettingsInterface* item, m_interfaceModel.getModel()) { + for (QNetworkSettingsInterface* item : m_interfaceModel.getModel()) { ConnmanSettingsInterface* technology = qobject_cast<ConnmanSettingsInterface*>(item); if (technology->name() == service->name() && technology->type() == service->type()) { technology->setState(technology->state()); diff --git a/src/networksettings/connman/qnetworksettingsmanager_p.h b/src/networksettings/connman/qnetworksettingsmanager_p.h index c696cdd..0b0c39b 100644 --- a/src/networksettings/connman/qnetworksettingsmanager_p.h +++ b/src/networksettings/connman/qnetworksettingsmanager_p.h @@ -41,19 +41,22 @@ // #include <QObject> -#include <QtDBus> #include <QMap> +#include <QPointer> +#include <QtDBus/QDBusServiceWatcher> #include "connmancommon.h" #include "qnetworksettingsmanager.h" #include "qnetworksettingsinterfacemodel.h" #include "connman_manager_interface.h" -QT_FORWARD_DECLARE_CLASS(QNetworkSettingsServiceModel) -QT_FORWARD_DECLARE_CLASS(QNetworkSettingsServiceFilter) -QT_FORWARD_DECLARE_CLASS(QNetworkSettingsService) - QT_BEGIN_NAMESPACE +class QDBusObjectPath; +class QDBusPendingCallWatcher; +class QNetworkSettingsService; +class QNetworkSettingsServiceModel; +class QNetworkSettingsServiceFilter; + class QNetworkSettingsManagerPrivate : public QObject { Q_OBJECT @@ -69,10 +72,10 @@ public: void connectBySsid(const QString &name); void clearConnectionState(); void tryNextConnection(); - void setCurrentWifiConnection(QNetworkSettingsService *connection) {m_currentWifiConnection = connection;} - QNetworkSettingsService* currentWifiConnection() const {return m_currentWifiConnection;} - void setCurrentWiredConnection(QNetworkSettingsService *connection) {m_currentWiredConnection = connection;} - QNetworkSettingsService* currentWiredConnection() const {return m_currentWiredConnection;} + void setCurrentWifiConnection(QNetworkSettingsService *connection); + QNetworkSettingsService* currentWifiConnection() const; + void setCurrentWiredConnection(QNetworkSettingsService *connection); + QNetworkSettingsService* currentWiredConnection() const; public slots: void getServicesFinished(QDBusPendingCallWatcher *watcher); @@ -91,6 +94,7 @@ private: protected: QNetworkSettingsInterfaceModel m_interfaceModel; QNetworkSettingsServiceModel *m_serviceModel; + QMap<QString, QNetworkSettingsService*> m_unknownServices; QMap<QString, QNetworkSettingsService*> m_unnamedServices; QMap<QString, QNetworkSettingsService*> m_unnamedServicesForSsidConnection; QNetworkSettingsServiceFilter *m_serviceFilter; @@ -99,8 +103,8 @@ private: QNetworkSettingsUserAgent *m_agent; QDBusServiceWatcher *m_serviceWatcher; QString m_currentSsid; - QNetworkSettingsService *m_currentWifiConnection; - QNetworkSettingsService *m_currentWiredConnection; + QPointer<QNetworkSettingsService> m_currentWifiConnection; + QPointer<QNetworkSettingsService> m_currentWiredConnection; bool m_initialized; }; diff --git a/src/networksettings/connman/qnetworksettingsservice_p.cpp b/src/networksettings/connman/qnetworksettingsservice_p.cpp index 2523e81..082b458 100644 --- a/src/networksettings/connman/qnetworksettingsservice_p.cpp +++ b/src/networksettings/connman/qnetworksettingsservice_p.cpp @@ -438,20 +438,22 @@ void QNetworkSettingsServicePrivate::updateProperty(const QString& key, const QV } else if (key == PropertySecurity) { QStringList value = qdbus_cast<QStringList>(val); - foreach (const QString str, value) { + QNetworkSettingsWireless::Securities securities; + for (const QString &str : value) { if (str == AttributeNone || str == AttributeWps) { - m_wifiConfig.setSecurity(QNetworkSettingsWireless::None); + securities |= QNetworkSettingsWireless::Security::None; } else if (str == AttributeWep) { - m_wifiConfig.setSecurity(QNetworkSettingsWireless::WEP); + securities |= QNetworkSettingsWireless::Security::WEP; } else if (str == AttributePsk) { - m_wifiConfig.setSecurity(QNetworkSettingsWireless::WPA); + securities |=QNetworkSettingsWireless::Security::WPA; } else if (str == AttributeIeee) { - m_wifiConfig.setSecurity(QNetworkSettingsWireless::WPA2); + securities |=QNetworkSettingsWireless::Security::WPA2; } } + m_wifiConfig.setSecurity(securities); } else if (key == PropertyAutoConnect) { m_autoConnect = qdbus_cast<bool>(val); diff --git a/src/networksettings/connman/qnetworksettingsservice_p.h b/src/networksettings/connman/qnetworksettingsservice_p.h index 9190e2d..8c798c3 100644 --- a/src/networksettings/connman/qnetworksettingsservice_p.h +++ b/src/networksettings/connman/qnetworksettingsservice_p.h @@ -43,20 +43,19 @@ #include "qnetworksettingsservice.h" #include "qnetworksettings.h" -QT_FORWARD_DECLARE_CLASS(QDBusPendingCallWatcher) -QT_FORWARD_DECLARE_CLASS(QDBusVariant) - // Automatically generated class in global namespace class NetConnmanServiceInterface; QT_BEGIN_NAMESPACE +class QDBusVariant; +class QDBusPendingCallWatcher; class QNetworkSettingsServicePrivate : public QObject { Q_OBJECT Q_DECLARE_PUBLIC(QNetworkSettingsService) public: - QNetworkSettingsServicePrivate(const QString& aPath, QNetworkSettingsService *parent = Q_NULLPTR); + QNetworkSettingsServicePrivate(const QString& aPath, QNetworkSettingsService *parent = nullptr); QNetworkSettingsService *q_ptr; private slots: diff --git a/src/networksettings/connman/qnetworksettingsuseragent_p.cpp b/src/networksettings/connman/qnetworksettingsuseragent_p.cpp index 2c1e399..6ba8be7 100644 --- a/src/networksettings/connman/qnetworksettingsuseragent_p.cpp +++ b/src/networksettings/connman/qnetworksettingsuseragent_p.cpp @@ -26,6 +26,9 @@ ** $QT_END_LICENSE$ ** ****************************************************************************/ +#include <QtDBus/QDBusConnection> + +#include "qnetworksettingsuseragent.h" #include "qnetworksettingsuseragent_p.h" #include "connmancommon.h" diff --git a/src/networksettings/connman/qnetworksettingsuseragent_p.h b/src/networksettings/connman/qnetworksettingsuseragent_p.h index b85ddd2..8f356d9 100644 --- a/src/networksettings/connman/qnetworksettingsuseragent_p.h +++ b/src/networksettings/connman/qnetworksettingsuseragent_p.h @@ -41,25 +41,20 @@ // #include <QtCore/QObject> -#include <QtDBus/QtDBus> -#include "qnetworksettingsuseragent.h" +#include <QtDBus/QDBusMessage> +#include <QtDBus/QDBusObjectPath> +#include <QtDBus/QDBusAbstractAdaptor> QT_BEGIN_NAMESPACE -class QByteArray; -template<class T> class QList; -template<class Key, class Value> class QMap; -class QString; -class QVariant; - -const QString AgentPath(QStringLiteral("/ConnmanAgent")); +class QNetworkSettingsUserAgent; class QNetworkSettingsUserAgentPrivate : public QDBusAbstractAdaptor { Q_OBJECT Q_CLASSINFO("D-Bus Interface", "net.connman.Agent") Q_DECLARE_PUBLIC(QNetworkSettingsUserAgent) public: - QNetworkSettingsUserAgentPrivate(QNetworkSettingsUserAgent *parent = Q_NULLPTR); + QNetworkSettingsUserAgentPrivate(QNetworkSettingsUserAgent *parent = nullptr); void setPassphrase(const QString &passphrase); QString passphrase() const {return m_passphrase;} void cancel(); @@ -82,3 +77,4 @@ private: QT_END_NAMESPACE #endif // QNETWORKSETTINGSUSERAGENTPRIVATE_H + diff --git a/src/networksettings/networksettings.pro b/src/networksettings/networksettings.pro deleted file mode 100644 index 78e7573..0000000 --- a/src/networksettings/networksettings.pro +++ /dev/null @@ -1,31 +0,0 @@ -load(qt_build_config) - -TARGET = QtNetworkSettings -VERSION = 1.0 - -QT = core network - -MODULE = networksettings -load(qt_module) -include(connman.pri) - -# Input -SOURCES += \ - qnetworksettingsinterfacemodel.cpp \ - qnetworksettings.cpp \ - qnetworksettingsmanager.cpp \ - qnetworksettingsaddressmodel.cpp \ - qnetworksettingsservicemodel.cpp \ - qnetworksettingsservice.cpp \ - qnetworksettingsuseragent.cpp \ - qnetworksettingsinterface.cpp \ - -HEADERS += \ - qnetworksettingsinterfacemodel.h \ - qnetworksettings.h \ - qnetworksettingsmanager.h \ - qnetworksettingsaddressmodel.h \ - qnetworksettingsservicemodel.h \ - qnetworksettingsservice.h \ - qnetworksettingsuseragent.h \ - qnetworksettingsinterface.h \ diff --git a/src/networksettings/qnetworksettings.cpp b/src/networksettings/qnetworksettings.cpp index 79ec2d4..b984835 100644 --- a/src/networksettings/qnetworksettings.cpp +++ b/src/networksettings/qnetworksettings.cpp @@ -70,7 +70,7 @@ QT_BEGIN_NAMESPACE */ /*! - \enum QNetworkSettingsState::States + \enum QNetworkSettingsState::State This enum type holds the state of the network interface. @@ -95,21 +95,21 @@ QT_BEGIN_NAMESPACE \property QNetworkSettingsState::state \brief The state of the network interface. - \sa QNetworkSettingsState::States + \sa QNetworkSettingsState::State */ /*! \fn QNetworkSettingsState::stateChanged() This signal is emitted when the state of the network interface changes. - \sa QNetworkSettingsState::States + \sa QNetworkSettingsState::State */ /*! Creates a new network interface state object with the state \a state and the parent \a parent. */ -QNetworkSettingsState::QNetworkSettingsState(States state, QObject *parent) +QNetworkSettingsState::QNetworkSettingsState(State state, QObject *parent) : QObject(parent) , m_state(state) { @@ -127,14 +127,14 @@ QNetworkSettingsState::QNetworkSettingsState(QObject *parent) /*! Returns the network interface state. */ -QNetworkSettingsState::States QNetworkSettingsState::state() const { +QNetworkSettingsState::State QNetworkSettingsState::state() const { return m_state; } /*! Sets the network interface state to \a state. */ -void QNetworkSettingsState::setState(const States state) { +void QNetworkSettingsState::setState(const State state) { m_state = state; emit stateChanged(); } @@ -150,7 +150,7 @@ void QNetworkSettingsState::setState(const States state) { */ /*! - \enum QNetworkSettingsType::Types + \enum QNetworkSettingsType::Type This enum type holds the type of the network interface. @@ -168,21 +168,21 @@ void QNetworkSettingsState::setState(const States state) { \property QNetworkSettingsType::type \brief The type of the network interface. - \sa QNetworkSettingsType::Types + \sa QNetworkSettingsType::Type */ /*! \fn QNetworkSettingsType::typeChanged() This signal is emitted when the type of the network interface changes. - \sa QNetworkSettingsType::Types + \sa QNetworkSettingsType::Type */ /*! Creates a new network interface type object with the type \a type and parent \a parent. */ -QNetworkSettingsType::QNetworkSettingsType(Types type, QObject *parent) +QNetworkSettingsType::QNetworkSettingsType(Type type, QObject *parent) : QObject(parent) , m_type(type) { @@ -201,14 +201,14 @@ QNetworkSettingsType::QNetworkSettingsType(QObject *parent) /*! Returns the network interface type. */ -QNetworkSettingsType::Types QNetworkSettingsType::type() const { +QNetworkSettingsType::Type QNetworkSettingsType::type() const { return m_type; } /*! Sets the network interface type to \a type. */ -void QNetworkSettingsType::setType(const Types type) { +void QNetworkSettingsType::setType(const Type type) { m_type = type; emit typeChanged(); } @@ -222,7 +222,7 @@ void QNetworkSettingsType::setType(const Types type) { */ /*! - \enum QNetworkSettingsIPv4::MethodType + \enum QNetworkSettingsIPv4::Method This enum type holds the method used for IPv4 configuration. @@ -248,7 +248,7 @@ void QNetworkSettingsType::setType(const Types type) { \property QNetworkSettingsIPv4::method \brief Holds the method of IPv4 configuration. - \sa QNetworkSettingsIPv4::MethodType + \sa QNetworkSettingsIPv4::Method */ /*! @@ -282,11 +282,11 @@ void QNetworkSettingsIPv4::setGateway(const QString& gateway) { emit gatewayChanged(); } -QNetworkSettingsIPv4::MethodType QNetworkSettingsIPv4::method() const { +QNetworkSettingsIPv4::Method QNetworkSettingsIPv4::method() const { return m_method; } -void QNetworkSettingsIPv4::setMethod(const MethodType method) { +void QNetworkSettingsIPv4::setMethod(const Method method) { m_method = method; emit methodChanged(); } @@ -309,7 +309,7 @@ void QNetworkSettingsIPv4::setMask(const QString& mask) { */ /*! - \enum QNetworkSettingsIPv6::MethodType + \enum QNetworkSettingsIPv6::Method This enum type holds the method used for IPv6 configuration. @@ -322,7 +322,7 @@ void QNetworkSettingsIPv4::setMask(const QString& mask) { */ /*! - \enum QNetworkSettingsIPv6::PrivacyType + \enum QNetworkSettingsIPv6::Privacy \brief Holds the method of applying the privacy extensions in IPv6. \value Disabled @@ -349,14 +349,14 @@ void QNetworkSettingsIPv4::setMask(const QString& mask) { \property QNetworkSettingsIPv6::method \brief Holds the method of IPv6 configuration. - \sa QNetworkSettingsIPv6::MethodType + \sa QNetworkSettingsIPv6::Method */ /*! \property QNetworkSettingsIPv6::privacy \brief Holds the method of applying privacy extensions for IPv6. - \sa QNetworkSettingsIPv6::PrivacyType + \sa QNetworkSettingsIPv6::Privacy */ /*! @@ -391,20 +391,20 @@ void QNetworkSettingsIPv6::setGateway(const QString& gateway) { emit gatewayChanged(); } -QNetworkSettingsIPv6::MethodType QNetworkSettingsIPv6::method() const { +QNetworkSettingsIPv6::Method QNetworkSettingsIPv6::method() const { return m_method; } -void QNetworkSettingsIPv6::setMethod(const MethodType method) { +void QNetworkSettingsIPv6::setMethod(const Method method) { m_method = method; emit methodChanged(); } -QNetworkSettingsIPv6::PrivacyType QNetworkSettingsIPv6::privacy() const { +QNetworkSettingsIPv6::Privacy QNetworkSettingsIPv6::privacy() const { return m_privacy; } -void QNetworkSettingsIPv6::setPrivacy(const PrivacyType privacy) { +void QNetworkSettingsIPv6::setPrivacy(const Privacy privacy) { m_privacy = privacy; emit privacyChanged(); } @@ -427,7 +427,7 @@ void QNetworkSettingsIPv6::setPrefixLength(const int& prefixLength) { */ /*! - \enum QNetworkSettingsProxy::MethodType + \enum QNetworkSettingsProxy::Method \brief Holds the network proxy configuration method. \value Direct @@ -444,7 +444,7 @@ void QNetworkSettingsIPv6::setPrefixLength(const int& prefixLength) { \property QNetworkSettingsProxy::method \brief Holds the network proxy configuration method. - \sa MethodType + \sa QNetworkSettingsProxy::Method */ /*! @@ -454,7 +454,7 @@ void QNetworkSettingsIPv6::setPrefixLength(const int& prefixLength) { For manual proxy configuration, this property holds the proxy server address. For automatic configuration, it holds the proxy auto-config URL. - \sa MethodType + \sa QNetworkSettingsProxy::Method */ /*! @@ -537,11 +537,11 @@ void QNetworkSettingsProxy::setExcludes(const QStringList& excludes) { emit excludesChanged(); } -QNetworkSettingsProxy::MethodType QNetworkSettingsProxy::method(void) const { +QNetworkSettingsProxy::Method QNetworkSettingsProxy::method(void) const { return m_method; } -void QNetworkSettingsProxy::setMethod(const MethodType& method) { +void QNetworkSettingsProxy::setMethod(const Method& method) { m_method = method; emit methodChanged(); } @@ -554,7 +554,7 @@ void QNetworkSettingsProxy::setMethod(const MethodType& method) { */ /*! - \enum QNetworkSettingsWireless::SecurityFlags + \enum QNetworkSettingsWireless::Security \brief This enum type holds the wireless security protocol used to protect the connection. @@ -599,15 +599,12 @@ QNetworkSettingsWireless::QNetworkSettingsWireless(QObject* parent) /*! Returns whether the Wifi network supports the wireless security - protocols specified in \a security. + protocol specified in \a security. - \sa QNetworkSettingsWireless::SecurityFlags + \sa QNetworkSettingsWireless::Security */ -bool QNetworkSettingsWireless::supportsSecurity(SecurityFlags security) { - if (m_securityFlags & security) { - return true; - } - return false; +bool QNetworkSettingsWireless::supportsSecurity(Security security) { + return m_supportedSecurites.testFlag(security); } bool QNetworkSettingsWireless::hidden() const { @@ -635,14 +632,10 @@ void QNetworkSettingsWireless::setSignalStrength(const int signalStrength) { } /*! - Sets \a security flags. + Sets \a securities flags. */ -void QNetworkSettingsWireless::setSecurity(const SecurityFlags security) { - if (security == None) { - m_securityFlags = None; - } else { - m_securityFlags |= security; - } +void QNetworkSettingsWireless::setSecurity(const Securities securities) { + m_supportedSecurites = securities; } void QNetworkSettingsWireless::setOutOfRange(const bool aOutOfRange) { diff --git a/src/networksettings/qnetworksettings.h b/src/networksettings/qnetworksettings.h index 84f5899..6006149 100644 --- a/src/networksettings/qnetworksettings.h +++ b/src/networksettings/qnetworksettings.h @@ -29,82 +29,96 @@ #ifndef QNETWORKSETTINGS_H #define QNETWORKSETTINGS_H -#include <QObject> -#include <QUrl> -#include <QVariantMap> +#include <QtNetworkSettings/qnetworksettingsglobal.h> + +#include <QtCore/qobject.h> +#include <QtCore/qurl.h> #include <QtNetworkSettings/qnetworksettingsaddressmodel.h> QT_BEGIN_NAMESPACE -class Q_DECL_EXPORT QNetworkSettingsState : public QObject +class Q_NETWORKSETTINGS_EXPORT QNetworkSettingsState : public QObject { Q_OBJECT - Q_ENUMS(States) - Q_PROPERTY(States state READ state WRITE setState NOTIFY stateChanged) + Q_PROPERTY(State state READ state WRITE setState NOTIFY stateChanged) public: - enum States {Idle, Failure, Association, Configuration, Ready, Disconnect, Online, Undefined}; + enum State { + Idle = 0, + Failure, + Association, + Configuration, + Ready, + Disconnect, + Online, + Undefined + }; + Q_ENUM(State) - explicit QNetworkSettingsState(States state, QObject *parent = Q_NULLPTR); - explicit QNetworkSettingsState(QObject *parent = Q_NULLPTR); + explicit QNetworkSettingsState(State state, QObject *parent = nullptr); + explicit QNetworkSettingsState(QObject *parent = nullptr); - States state() const; - void setState(const States state); + State state() const; + void setState(const State state); Q_SIGNALS: void stateChanged(); private: - States m_state; + State m_state; }; -class Q_DECL_EXPORT QNetworkSettingsType : public QObject +class Q_NETWORKSETTINGS_EXPORT QNetworkSettingsType : public QObject { Q_OBJECT - Q_ENUMS(Types) - Q_PROPERTY(Types type READ type WRITE setType NOTIFY typeChanged) + Q_PROPERTY(Type type READ type WRITE setType NOTIFY typeChanged) public: - enum Types { - Wired, + enum Type { + Wired = 0, Wifi, Bluetooth, Unknown }; + Q_ENUM(Type) - explicit QNetworkSettingsType(Types type, QObject *parent = Q_NULLPTR); - explicit QNetworkSettingsType(QObject *parent = Q_NULLPTR); + explicit QNetworkSettingsType(Type type, QObject *parent = nullptr); + explicit QNetworkSettingsType(QObject *parent = nullptr); - Types type() const; - void setType(const Types type); + Type type() const; + void setType(const Type type); Q_SIGNALS: void typeChanged(); private: - Types m_type; + Type m_type; }; -class Q_DECL_EXPORT QNetworkSettingsIPv4 : public QObject +class Q_NETWORKSETTINGS_EXPORT QNetworkSettingsIPv4 : public QObject { Q_OBJECT - Q_ENUMS(MethodType) Q_PROPERTY(QString address READ address WRITE setAddress NOTIFY addressChanged) Q_PROPERTY(QString gateway READ gateway WRITE setGateway NOTIFY gatewayChanged) - Q_PROPERTY(MethodType method READ method WRITE setMethod NOTIFY methodChanged) + Q_PROPERTY(Method method READ method WRITE setMethod NOTIFY methodChanged) Q_PROPERTY(QString mask READ mask WRITE setMask NOTIFY maskChanged) public: - explicit QNetworkSettingsIPv4(QObject *parent = Q_NULLPTR); + explicit QNetworkSettingsIPv4(QObject *parent = nullptr); - enum MethodType {Dhcp, Manual, Off}; + enum Method { + Dhcp = 0, + Manual, + Off + }; + Q_ENUM(Method) QString address() const; void setAddress(const QString& address); QString gateway() const; void setGateway(const QString& gateway); - MethodType method() const; - void setMethod(const MethodType method); + Method method() const; + void setMethod(const Method method); QString mask() const; void setMask(const QString& mask); @@ -117,35 +131,44 @@ Q_SIGNALS: private: QString m_address; QString m_gateway; - MethodType m_method; + Method m_method; QString m_mask; }; - -class Q_DECL_EXPORT QNetworkSettingsIPv6 : public QObject +class Q_NETWORKSETTINGS_EXPORT QNetworkSettingsIPv6 : public QObject { Q_OBJECT - Q_ENUMS(MethodType PrivacyType) Q_PROPERTY(QString address READ address WRITE setAddress NOTIFY addressChanged) Q_PROPERTY(QString gateway READ gateway WRITE setGateway NOTIFY gatewayChanged) - Q_PROPERTY(MethodType method READ method WRITE setMethod NOTIFY methodChanged) - Q_PROPERTY(PrivacyType privacy READ privacy WRITE setPrivacy NOTIFY privacyChanged) + Q_PROPERTY(Method method READ method WRITE setMethod NOTIFY methodChanged) + Q_PROPERTY(Privacy privacy READ privacy WRITE setPrivacy NOTIFY privacyChanged) Q_PROPERTY(int prefixLength READ prefixLength WRITE setPrefixLength NOTIFY prefixLengthChanged) public: - explicit QNetworkSettingsIPv6(QObject *parent = Q_NULLPTR); + explicit QNetworkSettingsIPv6(QObject *parent = nullptr); - enum MethodType {Auto, Manual, Off}; - enum PrivacyType {Disabled, Enabled, Preferred}; + enum Method { + Auto = 0, + Manual, + Off + }; + Q_ENUM(Method) + + enum Privacy { + Disabled = 0, + Enabled, + Preferred + }; + Q_ENUM(Privacy) QString address() const; void setAddress(const QString& address); QString gateway() const; void setGateway(const QString& gateway); - MethodType method() const; - void setMethod(const MethodType method); - PrivacyType privacy() const; - void setPrivacy(const PrivacyType privacy); + Method method() const; + void setMethod(const Method method); + Privacy privacy() const; + void setPrivacy(const Privacy privacy); int prefixLength() const; void setPrefixLength(const int& prefixLength); @@ -159,23 +182,27 @@ Q_SIGNALS: private: QString m_address; QString m_gateway; - MethodType m_method; - PrivacyType m_privacy; + Method m_method; + Privacy m_privacy; int m_prefixLength; }; -class Q_DECL_EXPORT QNetworkSettingsProxy : public QObject +class Q_NETWORKSETTINGS_EXPORT QNetworkSettingsProxy : public QObject { Q_OBJECT - Q_ENUMS(MethodType) Q_PROPERTY(QUrl url READ url WRITE setUrl NOTIFY urlChanged) Q_PROPERTY(QAbstractItemModel* servers READ servers NOTIFY serversChanged) Q_PROPERTY(QAbstractItemModel* excludes READ excludes NOTIFY excludesChanged) - Q_PROPERTY(MethodType method READ method WRITE setMethod NOTIFY methodChanged) + Q_PROPERTY(Method method READ method WRITE setMethod NOTIFY methodChanged) public: - explicit QNetworkSettingsProxy(QObject *parent = Q_NULLPTR); + explicit QNetworkSettingsProxy(QObject *parent = nullptr); - enum MethodType {Direct, Auto, Manual}; + enum Method { + Direct = 0, + Auto, + Manual + }; + Q_ENUM(Method) QUrl url() const; void setUrl(const QUrl& url); @@ -185,8 +212,8 @@ public: QAbstractItemModel* excludes(); QStringList excludes() const; void setExcludes(const QStringList& excludes); - MethodType method() const; - void setMethod(const MethodType& method); + Method method() const; + void setMethod(const Method& method); Q_SIGNALS: void urlChanged(); @@ -197,27 +224,32 @@ private: QUrl m_url; QNetworkSettingsAddressModel m_servers; QNetworkSettingsAddressModel m_excludes; - MethodType m_method; + Method m_method; }; -class Q_DECL_EXPORT QNetworkSettingsWireless : public QObject +class Q_NETWORKSETTINGS_EXPORT QNetworkSettingsWireless : public QObject { Q_OBJECT - Q_ENUMS(SecurityFlags) Q_PROPERTY(int signalStrength READ signalStrength WRITE setSignalStrength NOTIFY signalStrengthChanged) Q_PROPERTY(bool hidden READ hidden NOTIFY hiddenChanged) Q_PROPERTY(bool isOutOfRange READ outOfRange WRITE setOutOfRange NOTIFY outOfRangeChanged) public: - explicit QNetworkSettingsWireless(QObject* parent = Q_NULLPTR); + explicit QNetworkSettingsWireless(QObject* parent = nullptr); - enum SecurityFlags {None=1, WEP=2, WPA=4, WPA2=8}; + enum class Security { + None = 0x0000, + WEP = 0x0002, + WPA = 0x0004, + WPA2 = 0x0008 + }; + Q_DECLARE_FLAGS(Securities, Security) - Q_INVOKABLE bool supportsSecurity(SecurityFlags security); + Q_INVOKABLE bool supportsSecurity(Security security); bool hidden() const; void setHidden(const bool hidden); int signalStrength() const; void setSignalStrength(const int signalStrength); - void setSecurity(const SecurityFlags security); + void setSecurity(const Securities securities); void setOutOfRange(const bool aOutOfRange); bool outOfRange() const; @@ -227,11 +259,12 @@ Q_SIGNALS: void passwordChanged(); void outOfRangeChanged(); private: - quint16 m_securityFlags; + Securities m_supportedSecurites; bool m_hidden; int m_signalStrength; bool m_isOutOfRange; }; +Q_DECLARE_OPERATORS_FOR_FLAGS(QNetworkSettingsWireless::Securities) QT_END_NAMESPACE diff --git a/src/networksettings/qnetworksettingsaddressmodel.h b/src/networksettings/qnetworksettingsaddressmodel.h index 3b0ed8d..b08f381 100644 --- a/src/networksettings/qnetworksettingsaddressmodel.h +++ b/src/networksettings/qnetworksettingsaddressmodel.h @@ -29,17 +29,18 @@ #ifndef QNETWORKSETTINGSADDRESSMODEL_H #define QNETWORKSETTINGSADDRESSMODEL_H -#include <QStringListModel> +#include <QtCore/qstringlistmodel.h> +#include <QtNetworkSettings/qnetworksettingsglobal.h> QT_BEGIN_NAMESPACE -class Q_DECL_EXPORT QNetworkSettingsAddressModel : public QStringListModel +class Q_NETWORKSETTINGS_EXPORT QNetworkSettingsAddressModel : public QStringListModel { Q_OBJECT Q_PROPERTY(int count READ count NOTIFY countChanged) public: - explicit QNetworkSettingsAddressModel(QObject *parent = Q_NULLPTR); - explicit QNetworkSettingsAddressModel(const QStringList &strings, QObject *parent = Q_NULLPTR); + explicit QNetworkSettingsAddressModel(QObject *parent = nullptr); + explicit QNetworkSettingsAddressModel(const QStringList &strings, QObject *parent = nullptr); Q_INVOKABLE void append(const QString& address); Q_INVOKABLE void remove(int index); Q_INVOKABLE void resetChanges(); diff --git a/src/networksettings/qnetworksettingsglobal.h b/src/networksettings/qnetworksettingsglobal.h new file mode 100644 index 0000000..c9af207 --- /dev/null +++ b/src/networksettings/qnetworksettingsglobal.h @@ -0,0 +1,34 @@ +/**************************************************************************** +** +** Copyright (C) 2022 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 QNETWORKSETTINGSGLOBAL_H +#define QNETWORKSETTINGSGLOBAL_H + +#include <QtNetworkSettings/qtnetworksettingsexports.h> + +#endif // QNETWORKSETTINGSGLOBAL_H diff --git a/src/networksettings/qnetworksettingsinterface.cpp b/src/networksettings/qnetworksettingsinterface.cpp index d885394..9907867 100644 --- a/src/networksettings/qnetworksettingsinterface.cpp +++ b/src/networksettings/qnetworksettingsinterface.cpp @@ -28,7 +28,6 @@ ****************************************************************************/ #include "qnetworksettingsinterface.h" #include "qnetworksettingsinterface_p.h" -#include "qnetworksettings.h" QT_BEGIN_NAMESPACE @@ -49,7 +48,7 @@ QT_BEGIN_NAMESPACE \readonly \brief Holds the state of the network interface. - \sa QNetworkSettingsState::States + \sa QNetworkSettingsState::State */ /*! @@ -68,7 +67,7 @@ QT_BEGIN_NAMESPACE \readonly \brief Holds the type of the network interface. - \sa QNetworkSettingsType::Types + \sa QNetworkSettingsType::Type */ /*! @@ -146,7 +145,7 @@ QString QNetworkSettingsInterface::name() const /*! Returns the state of the network interface. */ -QNetworkSettingsState::States QNetworkSettingsInterface::state() +QNetworkSettingsState::State QNetworkSettingsInterface::state() { Q_D(QNetworkSettingsInterface); return d->state(); @@ -168,7 +167,7 @@ QNetworkSettingsState::States QNetworkSettingsInterface::state() /*! Returns the type of the network interface. */ -QNetworkSettingsType::Types QNetworkSettingsInterface::type() +QNetworkSettingsType::Type QNetworkSettingsInterface::type() { Q_D(QNetworkSettingsInterface); return d->type(); diff --git a/src/networksettings/qnetworksettingsinterface.h b/src/networksettings/qnetworksettingsinterface.h index 20c1187..5fb9636 100644 --- a/src/networksettings/qnetworksettingsinterface.h +++ b/src/networksettings/qnetworksettingsinterface.h @@ -29,25 +29,25 @@ #ifndef QNETWORKSETTINGSINTERFACE_H #define QNETWORKSETTINGSINTERFACE_H -#include <QObject> +#include <QtCore/qobject.h> #include <QtNetworkSettings/qnetworksettings.h> -QT_FORWARD_DECLARE_CLASS(QNetworkSettingsInterfacePrivate) - QT_BEGIN_NAMESPACE -class Q_DECL_EXPORT QNetworkSettingsInterface : public QObject { +class QNetworkSettingsInterfacePrivate; +class Q_NETWORKSETTINGS_EXPORT QNetworkSettingsInterface : public QObject +{ Q_OBJECT Q_PROPERTY(QString name READ name NOTIFY nameChanged) - Q_PROPERTY(QNetworkSettingsState::States state READ state NOTIFY stateChanged) - Q_PROPERTY(QNetworkSettingsType::Types type READ type NOTIFY typeChanged) + Q_PROPERTY(QNetworkSettingsState::State state READ state NOTIFY stateChanged) + Q_PROPERTY(QNetworkSettingsType::Type type READ type NOTIFY typeChanged) Q_PROPERTY(bool powered READ powered WRITE setPowered NOTIFY poweredChanged) public: - explicit QNetworkSettingsInterface(QObject* parent = Q_NULLPTR); + explicit QNetworkSettingsInterface(QObject* parent = nullptr); QString name() const; - QNetworkSettingsState::States state(); - QNetworkSettingsType::Types type(); + QNetworkSettingsState::State state(); + QNetworkSettingsType::Type type(); bool powered() const; void setPowered(const bool powered); Q_INVOKABLE void scanServices(); diff --git a/src/networksettings/qnetworksettingsinterfacemodel.cpp b/src/networksettings/qnetworksettingsinterfacemodel.cpp index 045d3ff..95eff25 100644 --- a/src/networksettings/qnetworksettingsinterfacemodel.cpp +++ b/src/networksettings/qnetworksettingsinterfacemodel.cpp @@ -46,9 +46,9 @@ QT_BEGIN_NAMESPACE \brief This enum type holds information about a network interface. \value Type - Network interface \l{QNetworkSettingsType::Types}{type}. + Network interface \l{QNetworkSettingsType::Type}{type}. \value Status - Network interface \l{QNetworkSettingsState::States}{state}. + Network interface \l{QNetworkSettingsState::State}{state}. \value Name Network interface name. \value Powered @@ -61,7 +61,7 @@ QT_BEGIN_NAMESPACE QNetworkSettingsInterfaceModel::QNetworkSettingsInterfaceModel(QObject *parent) : QAbstractListModel(parent) { - m_roleNames.insert(Qt::UserRole, "modelData"); + m_roleNames.insert(Qt::UserRole, "entry"); m_roleNames.insert(Type, "type"); m_roleNames.insert(Status, "status"); m_roleNames.insert(Name, "name"); @@ -122,12 +122,7 @@ QVariant QNetworkSettingsInterfaceModel::data(const QModelIndex & index, int rol */ void QNetworkSettingsInterfaceModel::append(QNetworkSettingsInterface* item) { - item->setParent(this); - connectStateChanges(item); - - beginInsertRows(QModelIndex(), rowCount(), rowCount()); - m_items.append(item); - endInsertRows(); + insert(rowCount(), item); } /*! @@ -155,7 +150,7 @@ void QNetworkSettingsInterfaceModel::connectStateChanges(QNetworkSettingsInterfa void QNetworkSettingsInterfaceModel::remove(int row) { beginRemoveRows(QModelIndex(), row, row); - m_items.removeFirst(); + m_items.takeAt(row)->deleteLater(); endRemoveRows(); } @@ -196,7 +191,7 @@ void QNetworkSettingsInterfaceModel::connectionStatusChanged() QNetworkSettingsInterface *s = qobject_cast<QNetworkSettingsInterface*>(sender()); int row = 0; - foreach (QNetworkSettingsInterface* item, m_items) { + for (QNetworkSettingsInterface* item : m_items) { if (item == s) { updated(row); break; @@ -210,7 +205,7 @@ void QNetworkSettingsInterfaceModel::poweredChanged() { QNetworkSettingsInterface *s = qobject_cast<QNetworkSettingsInterface*>(sender()); int row = 0; - foreach (QNetworkSettingsInterface* item, m_items) { + for (QNetworkSettingsInterface* item : m_items) { if (item == s) { updated(row); break; diff --git a/src/networksettings/qnetworksettingsinterfacemodel.h b/src/networksettings/qnetworksettingsinterfacemodel.h index 42d40b6..aa6aa69 100644 --- a/src/networksettings/qnetworksettingsinterfacemodel.h +++ b/src/networksettings/qnetworksettingsinterfacemodel.h @@ -29,19 +29,18 @@ #ifndef QNETWORKSETTINGSINTERFACEMODEL_H #define QNETWORKSETTINGSINTERFACEMODEL_H -#include <QAbstractListModel> -#include <QtNetworkSettings/qnetworksettings.h> +#include <QtCore/QAbstractListModel> +#include <QtNetworkSettings/qnetworksettingsglobal.h> QT_BEGIN_NAMESPACE class QNetworkSettingsInterface; - -class Q_DECL_EXPORT QNetworkSettingsInterfaceModel : public QAbstractListModel +class Q_NETWORKSETTINGS_EXPORT QNetworkSettingsInterfaceModel : public QAbstractListModel { Q_OBJECT public: - explicit QNetworkSettingsInterfaceModel(QObject *parent = Q_NULLPTR); + explicit QNetworkSettingsInterfaceModel(QObject *parent = nullptr); // from QAbstractItemModel int rowCount(const QModelIndex & parent = QModelIndex()) const override; QVariant data(const QModelIndex & index, int role = Qt::DisplayRole) const override; diff --git a/src/networksettings/qnetworksettingsmanager.cpp b/src/networksettings/qnetworksettingsmanager.cpp index 667004f..7ec82fa 100644 --- a/src/networksettings/qnetworksettingsmanager.cpp +++ b/src/networksettings/qnetworksettingsmanager.cpp @@ -26,6 +26,7 @@ ** $QT_END_LICENSE$ ** ****************************************************************************/ +#include "qnetworksettings.h" #include "qnetworksettingsmanager.h" #include "qnetworksettingsservice.h" #include "qnetworksettingsservicemodel.h" @@ -33,7 +34,6 @@ #include "qnetworksettingsinterfacemodel.h" #include "qnetworksettingsmanager_p.h" #include "qnetworksettingsuseragent.h" -#include <QStringListModel> QT_BEGIN_NAMESPACE @@ -82,7 +82,7 @@ QT_BEGIN_NAMESPACE { QList<QNetworkSettingsInterface*> interfaces = manager->interfaces()->getModel(); for (const auto &interface : interfaces) { - if (interface->type() == QNetworkSettingsType::Types::Wifi) { + if (interface->type() == QNetworkSettingsType::Type::Wifi) { if (interface->powered()) { interface->scanServices(); } else { @@ -167,7 +167,7 @@ QNetworkSettingsManager::QNetworkSettingsManager(QObject *parent) : /*! Returns the service model. - \l QNetworkSettingsType::Types + \l QNetworkSettingsType::Type */ QNetworkSettingsServiceFilter *QNetworkSettingsManager::services() { @@ -191,7 +191,7 @@ QNetworkSettingsService* QNetworkSettingsManager::service(const QString& name, i { Q_D(QNetworkSettingsManager); - foreach (QNetworkSettingsService* service, d->serviceModel()->getModel()) { + for (QNetworkSettingsService* service : d->serviceModel()->getModel()) { if (service->name() == name && service->type() == type) { return service; } @@ -299,7 +299,7 @@ QNetworkSettingsInterface* QNetworkSettingsManager::interface(int type, int inst Q_D(QNetworkSettingsManager); int matchingInstance = 0; - foreach (QNetworkSettingsInterface* interface, d->m_interfaceModel.getModel()) { + for (QNetworkSettingsInterface* interface : d->m_interfaceModel.getModel()) { if (interface->type() == type) { if (matchingInstance == instance) { return interface; diff --git a/src/networksettings/qnetworksettingsmanager.h b/src/networksettings/qnetworksettingsmanager.h index 8526324..9f562d3 100644 --- a/src/networksettings/qnetworksettingsmanager.h +++ b/src/networksettings/qnetworksettingsmanager.h @@ -29,31 +29,30 @@ #ifndef QNETWORKSETTINGSMANAGER_H #define QNETWORKSETTINGSMANAGER_H -#include <QtNetworkSettings/qnetworksettings.h> -#include <QObject> -#include <QStringListModel> -#include "qnetworksettingsservicemodel.h" -#include "qnetworksettingsinterfacemodel.h" -#include "qnetworksettingsuseragent.h" -#include "qnetworksettingsservice.h" - -QT_FORWARD_DECLARE_CLASS(QNetworkSettingsManagerPrivate) -QT_FORWARD_DECLARE_CLASS(QNetworkSettingsInterface) +#include <QtCore/qobject.h> +#include <QtNetworkSettings/qnetworksettingsglobal.h> QT_BEGIN_NAMESPACE -class Q_DECL_EXPORT QNetworkSettingsManager : public QObject +class QNetworkSettingsService; +class QNetworkSettingsInterface; +class QNetworkSettingsUserAgent; +class QNetworkSettingsServiceFilter; +class QNetworkSettingsInterfaceModel; +class QNetworkSettingsManagerPrivate; +class Q_NETWORKSETTINGS_EXPORT QNetworkSettingsManager : public QObject { Q_OBJECT - Q_ENUMS(StateTypes NetworkTypeTypes) Q_PROPERTY(QNetworkSettingsServiceFilter* services READ services NOTIFY servicesChanged) Q_PROPERTY(QNetworkSettingsInterfaceModel* interfaces READ interfaces NOTIFY interfacesChanged) Q_PROPERTY(QNetworkSettingsUserAgent* userAgent READ userAgent CONSTANT) Q_PROPERTY(QNetworkSettingsService* currentWifiConnection READ currentWifiConnection NOTIFY currentWifiConnectionChanged) Q_PROPERTY(QNetworkSettingsService* currentWiredConnection READ currentWiredConnection NOTIFY currentWiredConnectionChanged) + Q_MOC_INCLUDE("qnetworksettingsservicemodel.h") + Q_MOC_INCLUDE("qnetworksettingsuseragent.h") public: - explicit QNetworkSettingsManager(QObject* parent = Q_NULLPTR); + explicit QNetworkSettingsManager(QObject* parent = nullptr); QNetworkSettingsServiceFilter* services(); QNetworkSettingsInterfaceModel* interfaces(); void setUserAgent(QNetworkSettingsUserAgent *agent); @@ -81,7 +80,6 @@ protected: private: Q_DISABLE_COPY(QNetworkSettingsManager) Q_DECLARE_PRIVATE(QNetworkSettingsManager) - }; QT_END_NAMESPACE diff --git a/src/networksettings/qnetworksettingsservice.cpp b/src/networksettings/qnetworksettingsservice.cpp index 0983c0d..ef0773c 100644 --- a/src/networksettings/qnetworksettingsservice.cpp +++ b/src/networksettings/qnetworksettingsservice.cpp @@ -58,7 +58,7 @@ QT_BEGIN_NAMESPACE \readonly \brief Holds the state of this service. - \sa QNetworkSettingsState::States + \sa QNetworkSettingsState::State */ /*! @@ -66,7 +66,7 @@ QT_BEGIN_NAMESPACE \readonly \brief Holds the type of this service. - \sa QNetworkSettingsType::Types + \sa QNetworkSettingsType::Type */ /*! @@ -195,6 +195,8 @@ QString QNetworkSettingsService::name() const } /*! + \fn void QNetworkSettingsService::setAutoConnect(bool autoconnect) + Sets automatic connections to the network service to \a autoconnect. */ void QNetworkSettingsService::setAutoConnect(const bool autoconnect) @@ -224,9 +226,9 @@ bool QNetworkSettingsService::autoConnect() const /*! Returns the network service state. - \sa QNetworkSettingsState::States + \sa QNetworkSettingsState::State */ -QNetworkSettingsState::States QNetworkSettingsService::state() +QNetworkSettingsState::State QNetworkSettingsService::state() { Q_D(QNetworkSettingsService); return d->m_state.state(); @@ -244,9 +246,9 @@ QNetworkSettingsState::States QNetworkSettingsService::state() /*! Returns the network service type. - \sa QNetworkSettingsType::Types + \sa QNetworkSettingsType::Type */ -QNetworkSettingsType::Types QNetworkSettingsService::type() +QNetworkSettingsType::Type QNetworkSettingsService::type() { Q_D(QNetworkSettingsService); return d->m_type.type(); diff --git a/src/networksettings/qnetworksettingsservice.h b/src/networksettings/qnetworksettingsservice.h index dd9d52a..0b71d50 100644 --- a/src/networksettings/qnetworksettingsservice.h +++ b/src/networksettings/qnetworksettingsservice.h @@ -29,21 +29,19 @@ #ifndef QNETWORKSETTINGSSERVICE_H #define QNETWORKSETTINGSSERVICE_H -#include <QObject> +#include <QtCore/qobject.h> #include <QtNetworkSettings/qnetworksettings.h> -QT_FORWARD_DECLARE_CLASS(QNetworkSettingsServicePrivate) - QT_BEGIN_NAMESPACE -class Q_DECL_EXPORT QNetworkSettingsService : public QObject +class QNetworkSettingsServicePrivate; +class Q_NETWORKSETTINGS_EXPORT QNetworkSettingsService : public QObject { Q_OBJECT - Q_ENUMS(StateTypes) Q_PROPERTY(QString id READ id CONSTANT) Q_PROPERTY(QString name READ name NOTIFY nameChanged) - Q_PROPERTY(QNetworkSettingsState::States state READ state NOTIFY stateChanged) - Q_PROPERTY(QNetworkSettingsType::Types type READ type NOTIFY typeChanged) + Q_PROPERTY(QNetworkSettingsState::State state READ state NOTIFY stateChanged) + Q_PROPERTY(QNetworkSettingsType::Type type READ type NOTIFY typeChanged) Q_PROPERTY(QNetworkSettingsIPv4* ipv4 READ ipv4 NOTIFY ipv4Changed) Q_PROPERTY(QNetworkSettingsIPv6* ipv6 READ ipv6 NOTIFY ipv6Changed) Q_PROPERTY(QNetworkSettingsProxy* proxy READ proxy NOTIFY proxyChanged) @@ -52,12 +50,12 @@ class Q_DECL_EXPORT QNetworkSettingsService : public QObject Q_PROPERTY(QAbstractItemModel* nameservers READ nameservers NOTIFY nameserversChanged) Q_PROPERTY(bool autoConnect READ autoConnect WRITE setAutoConnect NOTIFY autoConnectChanged) public: - explicit QNetworkSettingsService(const QString& aServiceId, QObject* parent = Q_NULLPTR); + explicit QNetworkSettingsService(const QString& aServiceId, QObject* parent = nullptr); QString id() const; QString name() const; - QNetworkSettingsState::States state(); - QNetworkSettingsType::Types type(); + QNetworkSettingsState::State state(); + QNetworkSettingsType::Type type(); QNetworkSettingsIPv4* ipv4(); QNetworkSettingsIPv6* ipv6(); QNetworkSettingsProxy* proxy(); diff --git a/src/networksettings/qnetworksettingsservicemodel.cpp b/src/networksettings/qnetworksettingsservicemodel.cpp index 115fe35..0927bcc 100644 --- a/src/networksettings/qnetworksettingsservicemodel.cpp +++ b/src/networksettings/qnetworksettingsservicemodel.cpp @@ -27,6 +27,7 @@ ** ****************************************************************************/ #include "qnetworksettingsservicemodel.h" +#include "qnetworksettingsservice.h" #include "qnetworksettings.h" QT_BEGIN_NAMESPACE @@ -49,7 +50,7 @@ QT_BEGIN_NAMESPACE This enum type holds information about the network connection. \value Type - Network \l{QNetworkSettingsType::Types}{type}. + Network \l{QNetworkSettingsType::Type}{type}. \value Name The service set identifier (SSID) of the network. \value SignalStrength @@ -64,7 +65,8 @@ QT_BEGIN_NAMESPACE QNetworkSettingsServiceModel::QNetworkSettingsServiceModel(QObject *parent) : QAbstractListModel(parent) { - m_roleNames.insert(Qt::UserRole, "modelData"); + m_roleNames.insert(Qt::UserRole, "entry"); + m_roleNames.insert(Type, "type"); m_roleNames.insert(Name, "name"); m_roleNames.insert(SignalStrength, "signalStrength"); m_roleNames.insert(Connected, "connected"); @@ -107,6 +109,9 @@ QVariant QNetworkSettingsServiceModel::data(const QModelIndex & index, int role) if (role == Qt::UserRole) { return QVariant::fromValue(static_cast<QObject*>(item)); } + else if (role == Type) { + return item->type(); + } else if (role == Name) { return item->name(); } @@ -229,7 +234,7 @@ void QNetworkSettingsServiceModel::updated(int row) QNetworkSettingsService* QNetworkSettingsServiceModel::getByName(const QString& name) { QNetworkSettingsService* ret = nullptr; - foreach (QNetworkSettingsService* item, m_items) { + for (QNetworkSettingsService* item : m_items) { if (item->name() == name) { ret = item; break; @@ -254,7 +259,7 @@ void QNetworkSettingsServiceModel::connectionStatusChanged() QNetworkSettingsService *s = qobject_cast<QNetworkSettingsService*>(sender()); int row = 0; - foreach (QNetworkSettingsService* item, m_items) { + for (QNetworkSettingsService* item : m_items) { if (item == s) { updated(row); break; @@ -271,7 +276,7 @@ void QNetworkSettingsServiceModel::signalStrengthChanged() { QNetworkSettingsWireless *s = qobject_cast<QNetworkSettingsWireless*>(sender()); int row = 0; - foreach (QNetworkSettingsService* item, m_items) { + for (QNetworkSettingsService* item : m_items) { if (item->wirelessConfig() == s) { updated(row); break; @@ -296,7 +301,7 @@ void QNetworkSettingsServiceModel::signalStrengthChanged() \property QNetworkSettingsServiceFilter::type \brief The type of the network. - \l QNetworkSettingsType::Types + \l QNetworkSettingsType::Type */ /*! @@ -318,7 +323,7 @@ void QNetworkSettingsServiceModel::signalStrengthChanged() /*! \qmltype NetworkSettingsServiceFilter - \inqmlmodule QtDeviceutilities.NetworkSettings + \inqmlmodule QtDeviceUtilities.NetworkSettings \abstract */ @@ -351,19 +356,19 @@ QNetworkSettingsServiceFilter::~QNetworkSettingsServiceFilter() /*! Returns the service model. - \l QNetworkSettingsType::Types + \l QNetworkSettingsType::Type */ -QNetworkSettingsType::Types QNetworkSettingsServiceFilter::type() const +QNetworkSettingsType::Type QNetworkSettingsServiceFilter::type() const { return m_type; } /*! - \fn void QNetworkSettingsServiceFilter::setType(QNetworkSettingsType::Types type) + \fn void QNetworkSettingsServiceFilter::setType(QNetworkSettingsType::Type type) Sets the service model to \a type. */ -void QNetworkSettingsServiceFilter::setType(const QNetworkSettingsType::Types type) +void QNetworkSettingsServiceFilter::setType(const QNetworkSettingsType::Type type) { m_type = type; emit typeChanged(); @@ -429,7 +434,7 @@ int QNetworkSettingsServiceFilter::activeRow() const QNetworkSettingsServiceModel* model = qobject_cast<QNetworkSettingsServiceModel*>(sourceModel()); QList<QNetworkSettingsService*> data = model->getModel(); int row = 0; - foreach (QNetworkSettingsService* item, data) { + for (QNetworkSettingsService* item : data) { if (item->type() == m_type && (item->state() == QNetworkSettingsState::Ready || item->state() == QNetworkSettingsState::Online)) { diff --git a/src/networksettings/qnetworksettingsservicemodel.h b/src/networksettings/qnetworksettingsservicemodel.h index 01447f6..b4392d2 100644 --- a/src/networksettings/qnetworksettingsservicemodel.h +++ b/src/networksettings/qnetworksettingsservicemodel.h @@ -29,17 +29,17 @@ #ifndef QNETWORKSETTINGSSERVICEMODEL_H #define QNETWORKSETTINGSSERVICEMODEL_H -#include <QSortFilterProxyModel> +#include <QtCore/qsortfilterproxymodel.h> #include <QtNetworkSettings/qnetworksettings.h> -#include <QtNetworkSettings/qnetworksettingsservice.h> QT_BEGIN_NAMESPACE -class Q_DECL_EXPORT QNetworkSettingsServiceModel : public QAbstractListModel +class QNetworkSettingsService; +class Q_NETWORKSETTINGS_EXPORT QNetworkSettingsServiceModel : public QAbstractListModel { Q_OBJECT public: - explicit QNetworkSettingsServiceModel(QObject *parent = Q_NULLPTR); + explicit QNetworkSettingsServiceModel(QObject *parent = nullptr); virtual ~QNetworkSettingsServiceModel(); // from QAbstractItemModel int rowCount(const QModelIndex & parent = QModelIndex()) const override; @@ -74,17 +74,17 @@ private: QHash<int, QByteArray> m_roleNames; }; -class Q_DECL_EXPORT QNetworkSettingsServiceFilter : public QSortFilterProxyModel +class Q_NETWORKSETTINGS_EXPORT QNetworkSettingsServiceFilter : public QSortFilterProxyModel { Q_OBJECT - Q_PROPERTY(QNetworkSettingsType::Types type READ type WRITE setType NOTIFY typeChanged) + Q_PROPERTY(QNetworkSettingsType::Type type READ type WRITE setType NOTIFY typeChanged) Q_PROPERTY(bool wiredNetworksAvailable MEMBER m_wiredNetworksAvailable WRITE setWiredNetworksAvailable NOTIFY wiredNetworksAvailableChanged) public: - explicit QNetworkSettingsServiceFilter(QObject* parent = Q_NULLPTR); + explicit QNetworkSettingsServiceFilter(QObject* parent = nullptr); virtual ~QNetworkSettingsServiceFilter(); bool filterAcceptsRow( int source_row, const QModelIndex& source_parent ) const override; - QNetworkSettingsType::Types type() const; - void setType(QNetworkSettingsType::Types type); + QNetworkSettingsType::Type type() const; + void setType(QNetworkSettingsType::Type type); Q_INVOKABLE QVariant itemFromRow(const int row) const; Q_INVOKABLE int activeRow() const; void setWiredNetworksAvailable(bool); @@ -92,7 +92,7 @@ Q_SIGNALS: void typeChanged(); void wiredNetworksAvailableChanged(); private: - QNetworkSettingsType::Types m_type; + QNetworkSettingsType::Type m_type; bool m_wiredNetworksAvailable; }; diff --git a/src/networksettings/qnetworksettingsuseragent.h b/src/networksettings/qnetworksettingsuseragent.h index 7b76c15..63964b6 100644 --- a/src/networksettings/qnetworksettingsuseragent.h +++ b/src/networksettings/qnetworksettingsuseragent.h @@ -29,17 +29,17 @@ #ifndef QNETWORKSETTINGSUSERAGENT_H #define QNETWORKSETTINGSUSERAGENT_H -#include <QObject> - -QT_FORWARD_DECLARE_CLASS(QNetworkSettingsUserAgentPrivate) +#include <QtCore/qobject.h> +#include <QtNetworkSettings/qnetworksettingsglobal.h> QT_BEGIN_NAMESPACE -class Q_DECL_EXPORT QNetworkSettingsUserAgent : public QObject +class QNetworkSettingsUserAgentPrivate; +class Q_NETWORKSETTINGS_EXPORT QNetworkSettingsUserAgent : public QObject { Q_OBJECT public: - explicit QNetworkSettingsUserAgent(QObject *parent = Q_NULLPTR); + explicit QNetworkSettingsUserAgent(QObject *parent = nullptr); Q_INVOKABLE void setPassphrase(const QString &passphrase); Q_INVOKABLE void cancelInput(); QString passphrase() const; diff --git a/src/networksettingsqml/CMakeLists.txt b/src/networksettingsqml/CMakeLists.txt new file mode 100644 index 0000000..db3f58c --- /dev/null +++ b/src/networksettingsqml/CMakeLists.txt @@ -0,0 +1,14 @@ +qt_internal_add_qml_module(networksettingsqml + URI "QtDeviceUtilities.NetworkSettings" + VERSION "${CMAKE_PROJECT_VERSION}" + PAST_MAJOR_VERSIONS 1 + PLUGIN_TARGET networksettingsqml + DEPENDENCIES + QtQml + SOURCES + qnetworksettingsforeign.h qnetworksettingsforeign.cpp + LIBRARIES + Qt::Core + Qt::Qml + Qt::NetworkSettings +) diff --git a/src/imports/networksettings/plugin.cpp b/src/networksettingsqml/qnetworksettingsforeign.cpp index e4d6cee..e0d73c0 100644 --- a/src/imports/networksettings/plugin.cpp +++ b/src/networksettingsqml/qnetworksettingsforeign.cpp @@ -26,18 +26,7 @@ ** $QT_END_LICENSE$ ** ****************************************************************************/ -#include "plugin.h" -#include <qnetworksettings.h> -#include <qnetworksettingsmanager.h> -#include <qnetworksettingsservice.h> -#include <qnetworksettingsuseragent.h> -#include <qnetworksettingsservicemodel.h> -#include <qnetworksettingsinterface.h> -#include <qnetworksettingsinterfacemodel.h> - -#include <qqml.h> -#include <QQmlEngine> -#include <QQmlContext> +#include "qnetworksettingsforeign.h" /*! \qmlmodule QtDeviceUtilities.NetworkSettings @@ -80,7 +69,9 @@ \qmlproperty model NetworkSettingsManager::services \readonly - Holds the service model. + Holds the service model. A delegate in a view that uses + the \e services model can access the NetworkService + item with the \e entry role. The services list in the model can be controlled with the \c type property, and NetworkService items can be retrieved @@ -110,7 +101,7 @@ Holds the interface model. A delegate in a view that uses the \e interfaces model can access the NetworkInterface - item with the \e dataModel role. + item with the \e entry role. \sa NetworkInterface */ @@ -160,32 +151,3 @@ This signal is emitted when the connection failed due to invalid user credentials. */ - -QT_BEGIN_NAMESPACE - -template <typename T> -QObject *instance(QQmlEngine *engine, QJSEngine *) { - T *t = new T(engine); - t->setObjectName(T::staticMetaObject.className()); - return t; -} - -void NetworkSettingsQmlPlugin::registerTypes(const char *uri) -{ - Q_ASSERT(QLatin1String(uri) == QLatin1String("QtDeviceUtilities.NetworkSettings")); - qmlRegisterUncreatableType<QNetworkSettingsService>(uri, 1, 0, "NetworkService", "Cannot be instantiated directly."); - qmlRegisterUncreatableType<QNetworkSettingsInterface>(uri, 1, 0, "NetworkInterface", "Cannot be instantiated directly."); - qmlRegisterUncreatableType<QNetworkSettingsIPv4>(uri, 1, 0, "NetworkSettingsIPv4", "Cannot be instantiated directly."); - qmlRegisterUncreatableType<QNetworkSettingsIPv6>(uri, 1, 0, "NetworkSettingsIPv6", "Cannot be instantiated directly."); - qmlRegisterUncreatableType<QNetworkSettingsProxy>(uri, 1, 0, "NetworkSettingsProxy", "Cannot be instantiated directly."); - qmlRegisterUncreatableType<QNetworkSettingsType>(uri, 1, 0, "NetworkSettingsType", "Cannot be instantiated directly."); - qmlRegisterUncreatableType<QNetworkSettingsState>(uri, 1, 0, "NetworkSettingsState", "Cannot be instantiated directly."); - - qRegisterMetaType<QNetworkSettingsUserAgent*>("QNetworkSettingsUserAgent*"); - qRegisterMetaType<QNetworkSettingsServiceFilter*>("QNetworkSettingsServiceFilter*"); - qRegisterMetaType<QNetworkSettingsInterfaceModel*>("QNetworkSettingsInterfaceModel*"); - - qmlRegisterSingletonType<QNetworkSettingsManager>(uri, 2, 0, "NetworkSettingsManager", &instance<QNetworkSettingsManager>); -} - -QT_END_NAMESPACE diff --git a/src/networksettingsqml/qnetworksettingsforeign.h b/src/networksettingsqml/qnetworksettingsforeign.h new file mode 100644 index 0000000..ff9ec57 --- /dev/null +++ b/src/networksettingsqml/qnetworksettingsforeign.h @@ -0,0 +1,121 @@ +/**************************************************************************** +** +** Copyright (C) 2016 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 NETWORKSETTINGSPLUGIN_PLUGIN_H +#define NETWORKSETTINGSPLUGIN_PLUGIN_H + +#include <QtQml/qqml.h> +#include <QtNetworkSettings/QtNetworkSettings> + +QT_BEGIN_NAMESPACE + +struct NetworkSettingsServiceForeign +{ + Q_GADGET + QML_FOREIGN(QNetworkSettingsService) + QML_NAMED_ELEMENT(NetworkService) + QML_UNCREATABLE("Cannot be instantiated directly.") + QML_ADDED_IN_VERSION(1, 0) +}; + +struct NetworkSettingsInterfaceForeign +{ + Q_GADGET + QML_FOREIGN(QNetworkSettingsInterface) + QML_NAMED_ELEMENT(NetworkInterface) + QML_UNCREATABLE("Cannot be instantiated directly.") + QML_ADDED_IN_VERSION(1, 0) +}; + +struct NetworkSettingsIPv4Foreign +{ + Q_GADGET + QML_FOREIGN(QNetworkSettingsIPv4) + QML_NAMED_ELEMENT(NetworkSettingsIPv4) + QML_UNCREATABLE("Cannot be instantiated directly.") + QML_ADDED_IN_VERSION(1, 0) +}; + +struct NetworkSettingsIPv6Foreign +{ + Q_GADGET + QML_FOREIGN(QNetworkSettingsIPv6) + QML_NAMED_ELEMENT(NetworkSettingsIPv6) + QML_UNCREATABLE("Cannot be instantiated directly.") + QML_ADDED_IN_VERSION(1, 0) +}; + +struct NetworkSettingsProxyForeign +{ + Q_GADGET + QML_FOREIGN(QNetworkSettingsProxy) + QML_NAMED_ELEMENT(NetworkSettingsProxy) + QML_UNCREATABLE("Cannot be instantiated directly.") + QML_ADDED_IN_VERSION(1, 0) +}; + +struct NetworkSettingsWirelessForeign +{ + Q_GADGET + QML_FOREIGN(QNetworkSettingsWireless) + QML_NAMED_ELEMENT(NetworkSettingsWireless) + QML_UNCREATABLE("Cannot be instantiated directly.") + QML_ADDED_IN_VERSION(1, 0) +}; + +struct NetworkSettingsTypeForeign +{ + Q_GADGET + QML_FOREIGN(QNetworkSettingsType) + QML_NAMED_ELEMENT(NetworkSettingsType) + QML_UNCREATABLE("Cannot be instantiated directly.") + QML_ADDED_IN_VERSION(1, 0) +}; + +struct NetworkSettingsStateForeign +{ + Q_GADGET + QML_FOREIGN(QNetworkSettingsState) + QML_NAMED_ELEMENT(NetworkSettingsState) + QML_UNCREATABLE("Cannot be instantiated directly.") + QML_ADDED_IN_VERSION(1, 0) +}; + +class QNetworkSettingsManagerForeign +{ + Q_GADGET + QML_FOREIGN(QNetworkSettingsManager) + QML_NAMED_ELEMENT(NetworkSettingsManager) + QML_SINGLETON + QML_ADDED_IN_VERSION(2, 0) +}; + +QT_END_NAMESPACE + +#endif // NETWORKSETTINGSPLUGIN_PLUGIN_H + diff --git a/src/settingsui/CMakeLists.txt b/src/settingsui/CMakeLists.txt deleted file mode 100644 index e7801db..0000000 --- a/src/settingsui/CMakeLists.txt +++ /dev/null @@ -1,88 +0,0 @@ -# Generated from settingsui.pro. - -##################################################################### -## settingsui Binary: -##################################################################### - -qt_add_executable(settingsui - GUI - SOURCES - main.cpp - PUBLIC_LIBRARIES - Qt::Gui - Qt::Qml - Qt::Quick -) - -# Resources: -set(settingsuiapp_resource_files - "AutoScroller.qml" - "ViewSettings.qml" - "common/CustomSwitch.qml" - "common/HandwritingModeButton.qml" - "main.qml" - "network/AddressListEntry.qml" - "network/ComboBoxEntry.qml" - "network/EditWiredSettings.qml" - "network/IpAddressTextField.qml" - "network/NetworkDetails.qml" - "network/NetworkListView.qml" - "network/NetworkSettings.qml" - "network/PassphraseEnter.qml" - "network/WifiSelectorDelegate.qml" - "network/WifiSettings.qml" - "network/WifiSignalMonitor.qml" - "network/WiredSettings.qml" - "settingsuiplugin/SettingsDelegate.qml" - "settingsuiplugin/SettingsHeader.qml" - "settingsuiplugin/SettingsTitleItem.qml" - "settingsuiplugin/pluginMain.qml" -) - -qt_add_resource(settingsui "settingsuiapp" - PREFIX - "/" - FILES - ${settingsuiapp_resource_files} -) - - -#### Keys ignored in scope 1:.:.:settingsui.pro:<TRUE>: -# QML_IMPORT_PATH = <EMPTY> -# TEMPLATE = "app" - -## Scopes: -##################################################################### - -qt_extend_target(settingsui CONDITION static - PUBLIC_LIBRARIES - Qt::Svg -) - -#### Keys ignored in scope 2:.:.:settingsui.pro:static: -# QTPLUGIN = "qtvirtualkeyboardplugin" - -#### Keys ignored in scope 4:.:.:deployment.pri:android-no-sdk: -# INSTALLS = "target" -# target.path = "/data/user/qt" - -#### Keys ignored in scope 6:.:.:deployment.pri:ANDROID: -# INSTALLS = "target" - -#### Keys ignored in scope 7:.:.:deployment.pri:TEST_architecture_arch STREQUAL i386: -# target.path = "/libs/x86" - -#### Keys ignored in scope 9:.:.:deployment.pri:TEST_architecture_arch STREQUAL arm: -# target.path = "/libs/armeabi-v7a" - -#### Keys ignored in scope 10:.:.:deployment.pri:else: -# target.path = "/libs/armeabi" - -#### Keys ignored in scope 12:.:.:deployment.pri:UNIX: -# INSTALLS = "target" - -#### Keys ignored in scope 14:.:.:deployment.pri:QNX: -# target.path = "/tmp/$${TARGET}/bin" - -#### Keys ignored in scope 15:.:.:deployment.pri:else: -# target.path = "$$[QT_INSTALL_BINS]" diff --git a/src/settingsui/deployment.pri b/src/settingsui/deployment.pri deleted file mode 100644 index 696c6f5..0000000 --- a/src/settingsui/deployment.pri +++ /dev/null @@ -1,27 +0,0 @@ -android-no-sdk { - target.path = /data/user/qt - export(target.path) - INSTALLS += target -} else:android { - x86 { - target.path = /libs/x86 - } else: armeabi-v7a { - target.path = /libs/armeabi-v7a - } else { - target.path = /libs/armeabi - } - export(target.path) - INSTALLS += target -} else:unix { - isEmpty(target.path) { - qnx { - target.path = /tmp/$${TARGET}/bin - } else { - target.path = $$[QT_INSTALL_BINS] - } - export(target.path) - } - INSTALLS += target -} - -export(INSTALLS) diff --git a/src/settingsui/qtbuttonimageproviderplugin/CMakeLists.txt b/src/settingsui/qtbuttonimageproviderplugin/CMakeLists.txt deleted file mode 100644 index abe52e9..0000000 --- a/src/settingsui/qtbuttonimageproviderplugin/CMakeLists.txt +++ /dev/null @@ -1,37 +0,0 @@ -# Generated from qtbuttonimageproviderplugin.pro. - -##################################################################### -## qtbuttonimageproviderplugin Plugin: -##################################################################### - -qt_add_qml_module(qtbuttonimageproviderplugin - URI "QtDeviceUtilities.QtButtonImageProvider" - VERSION "${CMAKE_PROJECT_VERSION}" - CLASSNAME QtButtonImageProviderQmlPlugin - SKIP_TYPE_REGISTRATION - SOURCES - plugin.cpp - qtbuttonimageprovider.cpp qtbuttonimageprovider.h - PUBLIC_LIBRARIES - Qt::Core - Qt::Gui - Qt::Qml - Qt::Quick -) - -# Resources: -set(qtbuttonimageprovider_resource_files - "QtButton.qml" -) - -qt_add_resource(qtbuttonimageproviderplugin "qtbuttonimageprovider" - PREFIX - "/" - FILES - ${qtbuttonimageprovider_resource_files} -) - - -#### Keys ignored in scope 1:.:.:qtbuttonimageproviderplugin.pro:<TRUE>: -# QML_IMPORT_VERSION = "$$QT_VERSION" -# TARGETPATH = "QtDeviceUtilities/QtButtonImageProvider" diff --git a/src/settingsui/qtbuttonimageproviderplugin/plugins.qmltypes b/src/settingsui/qtbuttonimageproviderplugin/plugins.qmltypes deleted file mode 100644 index 76ae3f9..0000000 --- a/src/settingsui/qtbuttonimageproviderplugin/plugins.qmltypes +++ /dev/null @@ -1,210 +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.QtButtonImageProvider 1.0' - -Module { - dependencies: [] - Component { - prototype: "QObject" - name: "QtDeviceUtilities.QtButtonImageProvider/QtButton 1.0" - exports: ["QtDeviceUtilities.QtButtonImageProvider/QtButton 1.0"] - exportMetaObjectRevisions: [0] - isComposite: true - defaultProperty: "data" - Property { name: "state"; type: "string" } - Property { name: "cutSize"; type: "int" } - Property { name: "fillColor"; type: "QColor" } - Property { name: "borderColor"; type: "QColor" } - Property { name: "text"; type: "string" } - Signal { name: "clicked" } - Property { name: "fillMode"; type: "FillMode" } - Property { name: "paintedWidth"; type: "double"; isReadonly: true } - Property { name: "paintedHeight"; type: "double"; isReadonly: true } - Property { name: "horizontalAlignment"; type: "HAlignment" } - Property { name: "verticalAlignment"; type: "VAlignment" } - Property { name: "mipmap"; revision: 1; type: "bool" } - Property { name: "autoTransform"; revision: 2; type: "bool" } - Signal { name: "paintedGeometryChanged" } - Signal { - name: "horizontalAlignmentChanged" - Parameter { name: "alignment"; type: "HAlignment" } - } - Signal { - name: "verticalAlignmentChanged" - Parameter { name: "alignment"; type: "VAlignment" } - } - Signal { - name: "mipmapChanged" - revision: 1 - Parameter { type: "bool" } - } - Property { name: "status"; type: "Status"; isReadonly: true } - Property { name: "source"; type: "QUrl" } - Property { name: "progress"; type: "double"; isReadonly: true } - Property { name: "asynchronous"; type: "bool" } - Property { name: "cache"; type: "bool" } - Property { name: "sourceSize"; type: "QSize" } - Property { name: "mirror"; type: "bool" } - Signal { - name: "sourceChanged" - Parameter { type: "QUrl" } - } - Signal { - name: "statusChanged" - Parameter { type: "QQuickImageBase::Status" } - } - Signal { - name: "progressChanged" - Parameter { name: "progress"; type: "double" } - } - Property { name: "implicitWidth"; type: "double"; isReadonly: true } - Property { name: "implicitHeight"; type: "double"; isReadonly: true } - Property { name: "parent"; type: "QQuickItem"; isPointer: true } - Property { name: "data"; type: "QObject"; isList: true; isReadonly: true } - Property { name: "resources"; type: "QObject"; isList: true; isReadonly: true } - Property { name: "children"; type: "QQuickItem"; isList: true; isReadonly: true } - Property { name: "x"; type: "double" } - Property { name: "y"; type: "double" } - Property { name: "z"; type: "double" } - Property { name: "width"; type: "double" } - Property { name: "height"; type: "double" } - Property { name: "opacity"; type: "double" } - Property { name: "enabled"; type: "bool" } - Property { name: "visible"; type: "bool" } - Property { name: "visibleChildren"; type: "QQuickItem"; isList: true; isReadonly: true } - Property { name: "states"; type: "QQuickState"; isList: true; isReadonly: true } - Property { name: "transitions"; type: "QQuickTransition"; isList: true; isReadonly: true } - Property { name: "childrenRect"; type: "QRectF"; isReadonly: true } - Property { name: "anchors"; type: "QQuickAnchors"; isReadonly: true; isPointer: true } - Property { name: "left"; type: "QQuickAnchorLine"; isReadonly: true } - Property { name: "right"; type: "QQuickAnchorLine"; isReadonly: true } - Property { name: "horizontalCenter"; type: "QQuickAnchorLine"; isReadonly: true } - Property { name: "top"; type: "QQuickAnchorLine"; isReadonly: true } - Property { name: "bottom"; type: "QQuickAnchorLine"; isReadonly: true } - Property { name: "verticalCenter"; type: "QQuickAnchorLine"; isReadonly: true } - Property { name: "baseline"; type: "QQuickAnchorLine"; isReadonly: true } - Property { name: "baselineOffset"; type: "double" } - Property { name: "clip"; type: "bool" } - Property { name: "focus"; type: "bool" } - Property { name: "activeFocus"; type: "bool"; isReadonly: true } - Property { name: "activeFocusOnTab"; revision: 1; type: "bool" } - Property { name: "rotation"; type: "double" } - Property { name: "scale"; type: "double" } - Property { name: "transformOrigin"; type: "TransformOrigin" } - Property { name: "transformOriginPoint"; type: "QPointF"; isReadonly: true } - Property { name: "transform"; type: "QQuickTransform"; isList: true; isReadonly: true } - Property { name: "smooth"; type: "bool" } - Property { name: "antialiasing"; type: "bool" } - Property { name: "containmentMask"; revision: 11; type: "QObject"; isPointer: true } - Property { name: "layer"; type: "QQuickItemLayer"; isReadonly: true; isPointer: true } - Signal { - name: "childrenRectChanged" - Parameter { type: "QRectF" } - } - Signal { - name: "baselineOffsetChanged" - Parameter { type: "double" } - } - Signal { - name: "stateChanged" - Parameter { type: "string" } - } - Signal { - name: "focusChanged" - Parameter { type: "bool" } - } - Signal { - name: "activeFocusChanged" - Parameter { type: "bool" } - } - Signal { - name: "activeFocusOnTabChanged" - revision: 1 - Parameter { type: "bool" } - } - Signal { - name: "parentChanged" - Parameter { type: "QQuickItem"; isPointer: true } - } - Signal { - name: "transformOriginChanged" - Parameter { type: "TransformOrigin" } - } - Signal { - name: "smoothChanged" - Parameter { type: "bool" } - } - Signal { - name: "antialiasingChanged" - Parameter { type: "bool" } - } - Signal { - name: "clipChanged" - Parameter { type: "bool" } - } - Signal { - name: "windowChanged" - revision: 1 - Parameter { name: "window"; type: "QQuickWindow"; isPointer: true } - } - Method { name: "update" } - Method { - name: "grabToImage" - revision: 2 - type: "bool" - Parameter { name: "callback"; type: "QJSValue" } - Parameter { name: "targetSize"; type: "QSize" } - } - Method { - name: "grabToImage" - revision: 2 - type: "bool" - Parameter { name: "callback"; type: "QJSValue" } - } - Method { - name: "contains" - type: "bool" - Parameter { name: "point"; type: "QPointF" } - } - Method { - name: "mapFromItem" - Parameter { type: "QQmlV4Function"; isPointer: true } - } - Method { - name: "mapToItem" - Parameter { type: "QQmlV4Function"; isPointer: true } - } - Method { - name: "mapFromGlobal" - revision: 7 - Parameter { type: "QQmlV4Function"; isPointer: true } - } - Method { - name: "mapToGlobal" - revision: 7 - Parameter { type: "QQmlV4Function"; isPointer: true } - } - Method { name: "forceActiveFocus" } - Method { - name: "forceActiveFocus" - Parameter { name: "reason"; type: "Qt::FocusReason" } - } - Method { - name: "nextItemInFocusChain" - revision: 1 - type: "QQuickItem*" - Parameter { name: "forward"; type: "bool" } - } - Method { name: "nextItemInFocusChain"; revision: 1; type: "QQuickItem*" } - Method { - name: "childAt" - type: "QQuickItem*" - Parameter { name: "x"; type: "double" } - Parameter { name: "y"; type: "double" } - } - } -} diff --git a/src/settingsui/qtbuttonimageproviderplugin/qmldir b/src/settingsui/qtbuttonimageproviderplugin/qmldir deleted file mode 100644 index 4107ed2..0000000 --- a/src/settingsui/qtbuttonimageproviderplugin/qmldir +++ /dev/null @@ -1,3 +0,0 @@ -module QtDeviceUtilities.QtButtonImageProvider -plugin qtbuttonimageproviderplugin -classname QtButtonImageProviderQmlPlugin diff --git a/src/settingsui/qtbuttonimageproviderplugin/qtbuttonimageprovider.qrc b/src/settingsui/qtbuttonimageproviderplugin/qtbuttonimageprovider.qrc deleted file mode 100644 index b3b680c..0000000 --- a/src/settingsui/qtbuttonimageproviderplugin/qtbuttonimageprovider.qrc +++ /dev/null @@ -1,5 +0,0 @@ -<RCC> - <qresource prefix="/"> - <file>QtButton.qml</file> - </qresource> -</RCC> diff --git a/src/settingsui/qtbuttonimageproviderplugin/qtbuttonimageproviderplugin.pro b/src/settingsui/qtbuttonimageproviderplugin/qtbuttonimageproviderplugin.pro deleted file mode 100644 index ba26174..0000000 --- a/src/settingsui/qtbuttonimageproviderplugin/qtbuttonimageproviderplugin.pro +++ /dev/null @@ -1,18 +0,0 @@ -QT += qml quick -CONFIG += no_cxx_module -QML_IMPORT_VERSION = $$QT_VERSION - -TARGET = qtbuttonimageproviderplugin -TARGETPATH = QtDeviceUtilities/QtButtonImageProvider - -SOURCES += \ - qtbuttonimageprovider.cpp \ - plugin.cpp - -HEADERS += \ - qtbuttonimageprovider.h - -RESOURCES += \ - qtbuttonimageprovider.qrc - -load(qml_plugin) diff --git a/src/settingsui/settingsui.pro b/src/settingsui/settingsui.pro deleted file mode 100644 index b20b548..0000000 --- a/src/settingsui/settingsui.pro +++ /dev/null @@ -1,18 +0,0 @@ -TEMPLATE = app - -QT += qml quick -SOURCES += main.cpp - -RESOURCES += \ - settingsuiapp.qrc - -# Additional import path used to resolve QML modules in Qt Creator's code model -QML_IMPORT_PATH = - -# Default rules for deployment. -include(deployment.pri) - -static { - QTPLUGIN += qtvirtualkeyboardplugin - QT += svg -} diff --git a/src/settingsui/settingsuiapp.qrc b/src/settingsui/settingsuiapp.qrc deleted file mode 100644 index 844ba29..0000000 --- a/src/settingsui/settingsuiapp.qrc +++ /dev/null @@ -1,25 +0,0 @@ -<RCC> - <qresource prefix="/"> - <file>main.qml</file> - <file>common/HandwritingModeButton.qml</file> - <file>AutoScroller.qml</file> - <file>common/CustomSwitch.qml</file> - <file>network/PassphraseEnter.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/NetworkListView.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>settingsuiplugin/pluginMain.qml</file> - <file>settingsuiplugin/SettingsDelegate.qml</file> - <file>settingsuiplugin/SettingsHeader.qml</file> - <file>settingsuiplugin/SettingsTitleItem.qml</file> - <file>ViewSettings.qml</file> - </qresource> -</RCC> diff --git a/src/settingsui/settingsuiplugin/CMakeLists.txt b/src/settingsui/settingsuiplugin/CMakeLists.txt deleted file mode 100644 index ec62693..0000000 --- a/src/settingsui/settingsuiplugin/CMakeLists.txt +++ /dev/null @@ -1,63 +0,0 @@ -# Generated from settingsuiplugin.pro. - -##################################################################### -## settingsuiplugin Plugin: -##################################################################### - -qt_add_qml_module(settingsuiplugin - URI "QtDeviceUtilities.SettingsUI" - VERSION "${CMAKE_PROJECT_VERSION}" - CLASSNAME SettingsUIQmlPlugin - SKIP_TYPE_REGISTRATION - SOURCES - plugin.cpp - PUBLIC_LIBRARIES - Qt::Core - Qt::Gui - Qt::Qml - Qt::Quick -) - -# Resources: -set(settingsui_resource_files - "../common/CustomSwitch.qml" - "../common/CustomTableView.qml" - "../common/HandwritingModeButton.qml" - "../network/AddressListEntry.qml" - "../network/ComboBoxEntry.qml" - "../network/EditWiredSettings.qml" - "../network/IpAddressTextField.qml" - "../network/NetworkDetails.qml" - "../network/NetworkListView.qml" - "../network/NetworkSettings.qml" - "../network/PassphraseEnter.qml" - "../network/WifiSelectorDelegate.qml" - "../network/WifiSettings.qml" - "../network/WifiSignalMonitor.qml" - "../network/WiredSettings.qml" - "SettingsDelegate.qml" - "SettingsHeader.qml" - "SettingsTitleItem.qml" - "icons/Alert_yellow_1x.png" - "icons/FloatingButton_Active.png" - "icons/FloatingButton_Available.png" - "icons/FloatingButton_Unavailable.png" - "icons/WifiAnim_black_2x.png" - "icons/Wifi_lightgray_2x.png" - "newIcons/back_icon.svg" - "newIcons/network_icon.svg" - "pluginMain.qml" -) - -qt_add_resource(settingsuiplugin "settingsui" - PREFIX - "/" - FILES - ${settingsui_resource_files} -) - - -#### Keys ignored in scope 1:.:.:settingsuiplugin.pro:<TRUE>: -# DISTFILES = "qmldir" -# QML_IMPORT_VERSION = "$$QT_VERSION" -# TARGETPATH = "QtDeviceUtilities/SettingsUI" diff --git a/src/settingsui/settingsuiplugin/SettingsDelegate.qml b/src/settingsui/settingsuiplugin/SettingsDelegate.qml deleted file mode 100644 index cf7696a..0000000 --- a/src/settingsui/settingsuiplugin/SettingsDelegate.qml +++ /dev/null @@ -1,76 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2017 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$ -** -****************************************************************************/ -import QtQuick - -Item { - width: settingsList.width - height: settingsList.height * 0.08 - - property bool isSelected: settingsList.currentIndex == index - - Image { - id: img - sourceSize.width: parent.width - sourceSize.height: parent.height - source: icon - anchors.verticalCenter: parent.verticalCenter - anchors.left: parent.left - anchors.leftMargin: parent.width * 0.075 - height: Math.min(parent.width * 0.5, parent.height * 0.6) - width: height - fillMode: Image.PreserveAspectFit - } - - Text { - text: title - height: parent.height * 0.75 - anchors.right: parent.right - anchors.left: img.right - anchors.leftMargin: parent.width * 0.025 - anchors.verticalCenter: parent.verticalCenter - fontSizeMode: Text.Fit - minimumPixelSize: 1 - font.pixelSize: Math.min(parent.width * 0.25, parent.height) - color: parent.isSelected ? viewSettings.buttonGreenColor : "white" - wrapMode: Text.WordWrap - verticalAlignment: Text.AlignVCenter - font.family: appFont - font.styleName: parent.isSelected ? "Bold" : "Regular" - } - - MouseArea { - id: mouseArea - anchors.fill: parent - onClicked: { - settingsList.currentIndex = index - settingsLoader.source = path + '/' + view + '.qml' - titleItem.title = title - } - } -} diff --git a/src/settingsui/settingsuiplugin/SettingsHeader.qml b/src/settingsui/settingsuiplugin/SettingsHeader.qml deleted file mode 100644 index 1d2f737..0000000 --- a/src/settingsui/settingsuiplugin/SettingsHeader.qml +++ /dev/null @@ -1,108 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2017 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$ -** -****************************************************************************/ -import QtQuick -import QtDeviceUtilities.NetworkSettings - -Item { - id: header - anchors.left: parent.left - anchors.right: parent.right - anchors.top: parent.top - anchors.margins: pluginMain.margin - height: pluginMain.margin * 4 - - signal clicked() - - Image { - id: backButton - objectName: "settingsBackButton" - anchors.left: parent.left - anchors.top: parent.top - source: "../newIcons/back_icon.svg" - height: parent.height * 0.5 - width: height / sourceSize.height * sourceSize.width - MouseArea { - anchors.fill: parent - anchors.margins: -parent.height * 0.2 - onClicked: header.clicked() - } - } - - Text { - id: settingsText - anchors.left: backButton.right - anchors.verticalCenter: backButton.verticalCenter - font.pixelSize: parent.height * 0.45 - text: qsTr("Settings") - color: "white" - font.family: appFont - font.styleName: "SemiBold" - MouseArea { - anchors.fill: parent - anchors.margins: -parent.height * 0.2 - onClicked: header.clicked() - } - } - - Text { - id: ipItem - width: parent.width * 0.25 - height: parent.height/2 - anchors.top: settingsText.top - anchors.right: parent.right - anchors.rightMargin: pluginMain.margin - horizontalAlignment: Text.AlignRight - verticalAlignment: Text.AlignVCenter - font.pixelSize: parent.height * 0.3 - color: "white" - font.family: appFont - font.styleName: "SemiBold" - text: NetworkSettingsManager.currentWiredConnection ? - qsTr("Wired IP: ") + - NetworkSettingsManager.currentWiredConnection.ipv4.address : "" - } - - Text { - id: wifiIpItem - width: parent.width * 0.25 - height: parent.height/2 - anchors.top: ipItem.bottom - anchors.right: parent.right - anchors.rightMargin: pluginMain.margin - horizontalAlignment: Text.AlignRight - verticalAlignment: Text.AlignVCenter - font.pixelSize: parent.height * 0.3 - color: "white" - font.family: appFont - font.styleName: "SemiBold" - text: NetworkSettingsManager.currentWifiConnection ? - qsTr("Wireless IP: ") + - NetworkSettingsManager.currentWifiConnection.ipv4.address : "" - } -} 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 deleted file mode 100644 index 3ea37ad..0000000 --- a/src/settingsui/settingsuiplugin/plugin.cpp +++ /dev/null @@ -1,104 +0,0 @@ -/**************************************************************************** -** -** 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$ -** -****************************************************************************/ -#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); -} - -/*! - \qmlmodule QtDeviceUtilities.SettingsUI - \title Qt Device Utilities: Settings UI - \ingroup qtdevice-utilities-qml-modules - \ingroup qmlmodules - \brief Provides a system-wide settings UI. - - The \c DeviceUtilities.SettingsUI module provides a single QML type, - SettingsUI, that allows applications to integrate a standard, system-wide - settings view into their user interface. - - To import and use the module's QML types, use the following statement: - - \badcode - import QtDeviceUtilities.SettingsUI - \endcode - - \section1 QML Types -*/ - -/*! - \qmltype SettingsUI - \inqmlmodule QtDeviceUtilities.SettingsUI - \brief Provides a QML type for displaying a system-wide settings UI. - - With the SettingsUI type, applications can easily integrate a standard, - system-wide settings view into their user interface. - - For example: - - \qml - import QtQuick - import QtDeviceUtilities.SettingsUI - - SettingsUI { - id: settingsUI - anchors.fill: parent - } - \endqml - - 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/pluginMain.qml b/src/settingsui/settingsuiplugin/pluginMain.qml deleted file mode 100644 index 76a6ced..0000000 --- a/src/settingsui/settingsuiplugin/pluginMain.qml +++ /dev/null @@ -1,106 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2016 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$ -** -****************************************************************************/ -import QtQuick -import QtQuick.Layouts -import QtQuick.Controls -import Qt.labs.settings -import QtDeviceUtilities.NetworkSettings - -Rectangle { - id: pluginMain - anchors.fill: parent - visible: true - color: "#09102b" - opacity: 0.97 - - property var service - property int margin: (pluginMain.width / 3 * 2) * 0.05 - property int spacing: margin * 0.5 - property int titleFontSize: height * 0.04 - property int subTitleFontSize: height * 0.035 - property int valueFontSize: height * 0.025 - property int fieldHeight: height * 0.07 - property int fieldTextHeight: height * 0.05 - property int buttonHeight: height * 0.05 - - signal closed() - - Component.onCompleted: { - settingsList.currentIndex = 0 - settingsLoader.source = settingsListModel.get(0).path + '/' + - settingsListModel.get(0).view + '.qml' - titleItem.title = settingsListModel.get(0).title - } - - SettingsHeader { - id: settingsHeader - onClicked: pluginMain.closed() - } - - ListModel { - id: settingsListModel - - ListElement { - title: "Network" - view: "NetworkSettings" - path: "network" - icon: "newIcons/network_icon.svg" - } - } - - ListView { - id: settingsList - objectName: "settingsList" - anchors.top: settingsHeader.bottom - anchors.left: parent.left - anchors.bottom: parent.bottom - width: parent.width / 3.33 - model: settingsListModel - - delegate: SettingsDelegate {} - } - - SettingsTitleItem { - id: titleItem - anchors.left: settingsList.right - anchors.right: parent.right - anchors.top: settingsHeader.bottom - anchors.leftMargin: pluginMain.margin * 2 - } - - Loader { - id: settingsLoader - anchors.top: titleItem.bottom - anchors.left: settingsList.right - anchors.right: parent.right - anchors.bottom: parent.bottom - anchors.leftMargin: pluginMain.margin * 2 - anchors.rightMargin: pluginMain.margin * 2 - } -} 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> diff --git a/src/settingsui/settingsuiplugin/settingsuiplugin.pro b/src/settingsui/settingsuiplugin/settingsuiplugin.pro deleted file mode 100644 index a2e1d59..0000000 --- a/src/settingsui/settingsuiplugin/settingsuiplugin.pro +++ /dev/null @@ -1,17 +0,0 @@ -QT += qml quick -CONFIG += no_cxx_module -QML_IMPORT_VERSION = $$QT_VERSION - -TARGET = settingsuiplugin -TARGETPATH = QtDeviceUtilities/SettingsUI - -SOURCES += \ - plugin.cpp - -DISTFILES += \ - qmldir - -RESOURCES += \ - settingsui.qrc - -load(qml_plugin) diff --git a/src/src.pro b/src/src.pro deleted file mode 100644 index 1765381..0000000 --- a/src/src.pro +++ /dev/null @@ -1,15 +0,0 @@ -TEMPLATE = subdirs -CONFIG += ordered - -qtHaveModule(dbus) { - SUBDIRS += \ - networksettings \ - -} - -SUBDIRS += \ - settingsui/settingsuiplugin \ - settingsui/qtbuttonimageproviderplugin \ - settingsui \ - imports \ - doc \ diff --git a/sync.profile b/sync.profile index ab04eaf..466cac9 100644 --- a/sync.profile +++ b/sync.profile @@ -3,12 +3,3 @@ ); %moduleheaders = ( # restrict the module headers to those found in relative path ); -# Module dependencies. -# Every module that is required to build this module should have one entry. -# Each of the module version specifiers can take one of the following values: -# - A specific Git revision. -# - any git symbolic ref resolvable from the module's repository (e.g. "refs/heads/master" to track master branch) -# -%dependencies = ( - "qtbase" => "refs/heads/dev" -); diff --git a/tests/tests.pro b/tests/tests.pro deleted file mode 100644 index 9671085..0000000 --- a/tests/tests.pro +++ /dev/null @@ -1 +0,0 @@ -TEMPLATE = subdirs |