summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--CMakeLists.txt4
-rw-r--r--dependencies.yaml4
-rw-r--r--examples/CMakeLists.txt5
-rw-r--r--examples/deviceutilities/CMakeLists.txt3
-rw-r--r--examples/deviceutilities/settingsuiapp/AutoScroller.qml (renamed from src/settingsui/AutoScroller.qml)0
-rw-r--r--examples/deviceutilities/settingsuiapp/CMakeLists.txt56
-rw-r--r--examples/deviceutilities/settingsuiapp/DeviceUtilities/QtButtonImageProvider/CMakeLists.txt32
-rw-r--r--examples/deviceutilities/settingsuiapp/DeviceUtilities/QtButtonImageProvider/QtButton.qml (renamed from src/settingsui/qtbuttonimageproviderplugin/QtButton.qml)8
-rw-r--r--examples/deviceutilities/settingsuiapp/DeviceUtilities/QtButtonImageProvider/plugin.cpp (renamed from src/settingsui/qtbuttonimageproviderplugin/plugin.cpp)0
-rw-r--r--examples/deviceutilities/settingsuiapp/DeviceUtilities/QtButtonImageProvider/plugin_p.h (renamed from src/settingsui/settingsuiplugin/plugin_p.h)26
-rw-r--r--examples/deviceutilities/settingsuiapp/DeviceUtilities/QtButtonImageProvider/qtbuttonimageprovider.cpp (renamed from src/settingsui/qtbuttonimageproviderplugin/qtbuttonimageprovider.cpp)1
-rw-r--r--examples/deviceutilities/settingsuiapp/DeviceUtilities/QtButtonImageProvider/qtbuttonimageprovider.h (renamed from src/settingsui/qtbuttonimageproviderplugin/qtbuttonimageprovider.h)0
-rw-r--r--examples/deviceutilities/settingsuiapp/DeviceUtilities/SettingsUI/CMakeLists.txt53
-rw-r--r--examples/deviceutilities/settingsuiapp/DeviceUtilities/SettingsUI/Globals.qml53
-rw-r--r--examples/deviceutilities/settingsuiapp/DeviceUtilities/SettingsUI/Network/AddressListEntry.qml (renamed from src/settingsui/network/AddressListEntry.qml)0
-rw-r--r--examples/deviceutilities/settingsuiapp/DeviceUtilities/SettingsUI/Network/CMakeLists.txt56
-rw-r--r--examples/deviceutilities/settingsuiapp/DeviceUtilities/SettingsUI/Network/ComboBoxEntry.qml (renamed from src/settingsui/network/ComboBoxEntry.qml)4
-rw-r--r--examples/deviceutilities/settingsuiapp/DeviceUtilities/SettingsUI/Network/CustomSwitch.qml (renamed from src/settingsui/common/CustomSwitch.qml)11
-rw-r--r--examples/deviceutilities/settingsuiapp/DeviceUtilities/SettingsUI/Network/CustomTableView.qml (renamed from src/settingsui/common/CustomTableView.qml)9
-rw-r--r--examples/deviceutilities/settingsuiapp/DeviceUtilities/SettingsUI/Network/EditWiredSettings.qml (renamed from src/settingsui/network/EditWiredSettings.qml)0
-rw-r--r--examples/deviceutilities/settingsuiapp/DeviceUtilities/SettingsUI/Network/IpAddressTextField.qml (renamed from src/settingsui/network/IpAddressTextField.qml)3
-rw-r--r--examples/deviceutilities/settingsuiapp/DeviceUtilities/SettingsUI/Network/NetworkDetails.qml (renamed from src/settingsui/network/NetworkDetails.qml)0
-rw-r--r--examples/deviceutilities/settingsuiapp/DeviceUtilities/SettingsUI/Network/NetworkListView.qml (renamed from src/settingsui/network/NetworkListView.qml)34
-rw-r--r--examples/deviceutilities/settingsuiapp/DeviceUtilities/SettingsUI/Network/NetworkSettings.qml (renamed from src/settingsui/network/NetworkSettings.qml)48
-rw-r--r--examples/deviceutilities/settingsuiapp/DeviceUtilities/SettingsUI/Network/PassphraseEnter.qml (renamed from src/settingsui/network/PassphraseEnter.qml)44
-rw-r--r--examples/deviceutilities/settingsuiapp/DeviceUtilities/SettingsUI/Network/WifiSelectorDelegate.qml (renamed from src/settingsui/network/WifiSelectorDelegate.qml)3
-rw-r--r--examples/deviceutilities/settingsuiapp/DeviceUtilities/SettingsUI/Network/WifiSettings.qml (renamed from src/settingsui/network/WifiSettings.qml)7
-rw-r--r--examples/deviceutilities/settingsuiapp/DeviceUtilities/SettingsUI/Network/WifiSignalMonitor.qml (renamed from src/settingsui/network/WifiSignalMonitor.qml)4
-rw-r--r--examples/deviceutilities/settingsuiapp/DeviceUtilities/SettingsUI/Network/WiredSettings.qml (renamed from src/settingsui/network/WiredSettings.qml)0
-rw-r--r--examples/deviceutilities/settingsuiapp/DeviceUtilities/SettingsUI/Network/icons/Alert_yellow_1x.png (renamed from src/settingsui/settingsuiplugin/icons/Alert_yellow_1x.png)bin631 -> 631 bytes
-rw-r--r--examples/deviceutilities/settingsuiapp/DeviceUtilities/SettingsUI/Network/icons/WifiAnim_black_2x.png (renamed from src/settingsui/settingsuiplugin/icons/WifiAnim_black_2x.png)bin1870 -> 1870 bytes
-rw-r--r--examples/deviceutilities/settingsuiapp/DeviceUtilities/SettingsUI/Network/icons/Wifi_lightgray_2x.png (renamed from src/settingsui/settingsuiplugin/icons/Wifi_lightgray_2x.png)bin939 -> 939 bytes
-rwxr-xr-xexamples/deviceutilities/settingsuiapp/DeviceUtilities/SettingsUI/Network/icons/generate_icons.sh (renamed from src/settingsui/settingsuiplugin/icons/generate_icons.sh)0
-rw-r--r--examples/deviceutilities/settingsuiapp/DeviceUtilities/SettingsUI/Network/icons/ref/extra/Alert.png (renamed from src/settingsui/settingsuiplugin/icons/ref/extra/Alert.png)bin1502 -> 1502 bytes
-rwxr-xr-xexamples/deviceutilities/settingsuiapp/DeviceUtilities/SettingsUI/Network/icons/scripts/cimage.sh (renamed from src/settingsui/settingsuiplugin/icons/scripts/cimage.sh)0
-rwxr-xr-xexamples/deviceutilities/settingsuiapp/DeviceUtilities/SettingsUI/Network/icons/scripts/cimages.sh (renamed from src/settingsui/settingsuiplugin/icons/scripts/cimages.sh)0
-rwxr-xr-xexamples/deviceutilities/settingsuiapp/DeviceUtilities/SettingsUI/Network/icons/scripts/rimage.sh (renamed from src/settingsui/settingsuiplugin/icons/scripts/rimage.sh)0
-rwxr-xr-xexamples/deviceutilities/settingsuiapp/DeviceUtilities/SettingsUI/Network/icons/scripts/rimages.sh (renamed from src/settingsui/settingsuiplugin/icons/scripts/rimages.sh)0
-rw-r--r--examples/deviceutilities/settingsuiapp/DeviceUtilities/SettingsUI/SettingsDelegate.qml (renamed from src/settingsui/settingsuiplugin/SettingsDelegate.qml)14
-rw-r--r--examples/deviceutilities/settingsuiapp/DeviceUtilities/SettingsUI/SettingsHeader.qml (renamed from src/settingsui/settingsuiplugin/SettingsHeader.qml)55
-rw-r--r--examples/deviceutilities/settingsuiapp/DeviceUtilities/SettingsUI/SettingsTitleItem.qml (renamed from src/settingsui/settingsuiplugin/SettingsTitleItem.qml)10
-rw-r--r--examples/deviceutilities/settingsuiapp/DeviceUtilities/SettingsUI/SettingsUI.qml (renamed from src/settingsui/settingsuiplugin/pluginMain.qml)48
-rw-r--r--examples/deviceutilities/settingsuiapp/DeviceUtilities/SettingsUI/icons/back.svg (renamed from src/settingsui/settingsuiplugin/newIcons/back_icon.svg)0
-rw-r--r--examples/deviceutilities/settingsuiapp/DeviceUtilities/SettingsUI/icons/network.svg (renamed from src/settingsui/settingsuiplugin/newIcons/network_icon.svg)0
-rw-r--r--examples/deviceutilities/settingsuiapp/HandwritingModeButton.qml (renamed from src/settingsui/common/HandwritingModeButton.qml)6
-rw-r--r--examples/deviceutilities/settingsuiapp/applicationsettings.cpp61
-rw-r--r--examples/deviceutilities/settingsuiapp/applicationsettings.h (renamed from src/settingsui/ViewSettings.qml)53
-rwxr-xr-xexamples/deviceutilities/settingsuiapp/images/FloatingButton_Active.png (renamed from src/settingsui/settingsuiplugin/icons/FloatingButton_Active.png)bin3584 -> 3584 bytes
-rwxr-xr-xexamples/deviceutilities/settingsuiapp/images/FloatingButton_Available.png (renamed from src/settingsui/settingsuiplugin/icons/FloatingButton_Available.png)bin3554 -> 3554 bytes
-rwxr-xr-xexamples/deviceutilities/settingsuiapp/images/FloatingButton_Unavailable.png (renamed from src/settingsui/settingsuiplugin/icons/FloatingButton_Unavailable.png)bin3134 -> 3134 bytes
-rw-r--r--examples/deviceutilities/settingsuiapp/main.cpp (renamed from src/settingsui/main.cpp)4
-rw-r--r--examples/deviceutilities/settingsuiapp/main.qml (renamed from src/settingsui/main.qml)15
-rw-r--r--src/CMakeLists.txt8
-rw-r--r--src/doc/CMakeLists.txt9
-rw-r--r--src/doc/config/style/qt5-sidebar.html16
-rw-r--r--src/doc/online/qtdeviceutilities.qdocconf9
-rw-r--r--src/doc/online/style/qt5-sidebar.html11
-rw-r--r--src/doc/qtdeviceutilities-project.qdocconf4
-rw-r--r--src/doc/qtdeviceutilities.qdocconf1
-rw-r--r--src/doc/src/qtdeviceutilities-index.qdoc11
-rw-r--r--src/doc/src/qtdeviceutilities-module-qml.qdoc4
-rw-r--r--src/networksettings/connman/connmancommon.cpp2
-rw-r--r--src/networksettings/connman/connmancommon.h4
-rw-r--r--src/networksettings/connman/qnetworksettingsinterface_p.cpp6
-rw-r--r--src/networksettings/connman/qnetworksettingsinterface_p.h17
-rw-r--r--src/networksettings/connman/qnetworksettingsmanager_p.cpp97
-rw-r--r--src/networksettings/connman/qnetworksettingsmanager_p.h26
-rw-r--r--src/networksettings/connman/qnetworksettingsservice_p.cpp10
-rw-r--r--src/networksettings/connman/qnetworksettingsservice_p.h7
-rw-r--r--src/networksettings/connman/qnetworksettingsuseragent_p.cpp3
-rw-r--r--src/networksettings/connman/qnetworksettingsuseragent_p.h16
-rw-r--r--src/networksettings/qnetworksettings.cpp79
-rw-r--r--src/networksettings/qnetworksettings.h135
-rw-r--r--src/networksettings/qnetworksettingsaddressmodel.h4
-rw-r--r--src/networksettings/qnetworksettingsinterface.cpp9
-rw-r--r--src/networksettings/qnetworksettingsinterface.h16
-rw-r--r--src/networksettings/qnetworksettingsinterfacemodel.cpp11
-rw-r--r--src/networksettings/qnetworksettingsinterfacemodel.h4
-rw-r--r--src/networksettings/qnetworksettingsmanager.cpp6
-rw-r--r--src/networksettings/qnetworksettingsmanager.h21
-rw-r--r--src/networksettings/qnetworksettingsservice.cpp14
-rw-r--r--src/networksettings/qnetworksettingsservice.h14
-rw-r--r--src/networksettings/qnetworksettingsservicemodel.cpp13
-rw-r--r--src/networksettings/qnetworksettingsservicemodel.h14
-rw-r--r--src/networksettings/qnetworksettingsuseragent.h5
-rw-r--r--src/networksettingsqml/CMakeLists.txt (renamed from src/networksettings/networksettingsqml/CMakeLists.txt)0
-rw-r--r--src/networksettingsqml/qnetworksettingsforeign.cpp (renamed from src/networksettings/networksettingsqml/qnetworksettingsforeign.cpp)0
-rw-r--r--src/networksettingsqml/qnetworksettingsforeign.h (renamed from src/networksettings/networksettingsqml/qnetworksettingsforeign.h)26
-rw-r--r--src/settingsui/CMakeLists.txt50
-rw-r--r--src/settingsui/qtbuttonimageproviderplugin/CMakeLists.txt26
-rw-r--r--src/settingsui/qtbuttonimageproviderplugin/plugin_p.h79
-rw-r--r--src/settingsui/settingsuiapp.qrc25
-rw-r--r--src/settingsui/settingsuiplugin/CMakeLists.txt60
-rw-r--r--src/settingsui/settingsuiplugin/plugin.cpp72
94 files changed, 879 insertions, 799 deletions
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 5fd523a..090928a 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -8,8 +8,8 @@ project(QtDeviceUtilities
LANGUAGES CXX C
)
-find_package(Qt6 ${PROJECT_VERSION} CONFIG REQUIRED COMPONENTS BuildInternals)
-find_package(Qt6 ${PROJECT_VERSION} CONFIG OPTIONAL_COMPONENTS Quick DBus)
+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})
diff --git a/dependencies.yaml b/dependencies.yaml
index f7cdf13..391f307 100644
--- a/dependencies.yaml
+++ b/dependencies.yaml
@@ -1,7 +1,7 @@
dependencies:
../../qt/qtdeclarative:
- ref: 6eeacee7ac506a8a0d583ff278a55312b49ab21d
+ ref: c5def993c3d13071238610ddcbba946d6e8397c6
required: true
../qttools:
- ref: 874753036b26c3de283528a51657d9a4f1b87141
+ ref: 69b01f0867db648ff496f2bd240f054516cf6486
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..3a5fe87
--- /dev/null
+++ b/examples/deviceutilities/settingsuiapp/CMakeLists.txt
@@ -0,0 +1,56 @@
+cmake_minimum_required(VERSION 3.19)
+
+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/qtbuttonimageproviderplugin/plugin.cpp b/examples/deviceutilities/settingsuiapp/DeviceUtilities/QtButtonImageProvider/plugin.cpp
index 30ede2a..30ede2a 100644
--- a/src/settingsui/qtbuttonimageproviderplugin/plugin.cpp
+++ b/examples/deviceutilities/settingsuiapp/DeviceUtilities/QtButtonImageProvider/plugin.cpp
diff --git a/src/settingsui/settingsuiplugin/plugin_p.h b/examples/deviceutilities/settingsuiapp/DeviceUtilities/QtButtonImageProvider/plugin_p.h
index 46f2119..96f64ad 100644
--- a/src/settingsui/settingsuiplugin/plugin_p.h
+++ b/examples/deviceutilities/settingsuiapp/DeviceUtilities/QtButtonImageProvider/plugin_p.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 the Device Utilities module of the Qt Toolkit.
@@ -26,10 +26,11 @@
** $QT_END_LICENSE$
**
****************************************************************************/
-#ifndef SETTINGSUIPLUGIN_H
-#define SETTINGSUIPLUGIN_H
+#ifndef QTBUTTONIMAGEPROVIDERQMLPLUGIN_H
+#define QTBUTTONIMAGEPROVIDERQMLPLUGIN_H
+
+#include "qtbuttonimageprovider.h"
#include <qqmlextensionplugin.h>
-#include <qqmlengine.h>
//
// W A R N I N G
@@ -44,13 +45,18 @@
QT_BEGIN_NAMESPACE
-struct SettingsUiComponent
+class QtButtonImageProviderQmlPlugin : public QQmlEngineExtensionPlugin
{
- Q_GADGET
- QML_NAMED_ELEMENT(SettingsUI)
- QML_ADDED_IN_VERSION(2, 0)
+ Q_OBJECT
+ Q_PLUGIN_METADATA(IID QQmlExtensionInterface_iid)
+
+public:
+ void initializeEngine(QQmlEngine *engine, const char *uri) final
+ {
+ Q_UNUSED(uri);
+ engine->addImageProvider("QtButton", new QtButtonImageProvider);
+ }
};
QT_END_NAMESPACE
-
-#endif //SETTINGSUIPLUGIN_H
+#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..c14398d
--- /dev/null
+++ b/examples/deviceutilities/settingsuiapp/DeviceUtilities/SettingsUI/CMakeLists.txt
@@ -0,0 +1,53 @@
+set(qml_files
+ "Globals.qml"
+ "SettingsDelegate.qml"
+ "SettingsHeader.qml"
+ "SettingsTitleItem.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/examples/deviceutilities/settingsuiapp/DeviceUtilities/SettingsUI/Globals.qml b/examples/deviceutilities/settingsuiapp/DeviceUtilities/SettingsUI/Globals.qml
new file mode 100644
index 0000000..cea47d0
--- /dev/null
+++ b/examples/deviceutilities/settingsuiapp/DeviceUtilities/SettingsUI/Globals.qml
@@ -0,0 +1,53 @@
+/****************************************************************************
+**
+** Copyright (C) 2021 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$
+**
+****************************************************************************/
+pragma Singleton
+import QtQuick
+
+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"
+
+ 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
+
+ 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..183c9fb
--- /dev/null
+++ b/examples/deviceutilities/settingsuiapp/DeviceUtilities/SettingsUI/Network/CMakeLists.txt
@@ -0,0 +1,56 @@
+set(qml_files
+ "CustomSwitch.qml"
+ "CustomTableView.qml"
+ "AddressListEntry.qml"
+ "ComboBoxEntry.qml"
+ "EditWiredSettings.qml"
+ "IpAddressTextField.qml"
+ "NetworkDetails.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..34b0421 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 {
@@ -90,7 +91,7 @@ Switch {
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 {
diff --git a/src/settingsui/common/CustomTableView.qml b/examples/deviceutilities/settingsuiapp/DeviceUtilities/SettingsUI/Network/CustomTableView.qml
index a5a7fe8..059795c 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
}
}
@@ -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/NetworkDetails.qml b/examples/deviceutilities/settingsuiapp/DeviceUtilities/SettingsUI/Network/NetworkDetails.qml
index 88b0946..88b0946 100644
--- a/src/settingsui/network/NetworkDetails.qml
+++ b/examples/deviceutilities/settingsuiapp/DeviceUtilities/SettingsUI/Network/NetworkDetails.qml
diff --git a/src/settingsui/network/NetworkListView.qml b/examples/deviceutilities/settingsuiapp/DeviceUtilities/SettingsUI/Network/NetworkListView.qml
index 7c35433..68498b5 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,10 +27,9 @@
**
****************************************************************************/
import QtQuick
-import QtQml
import QtDeviceUtilities.NetworkSettings
-import QtDeviceUtilities.QtButtonImageProvider
-import QtQuick.Controls
+import DeviceUtilities.SettingsUI
+import DeviceUtilities.QtButtonImageProvider
ListView {
id: list
@@ -59,9 +58,9 @@ ListView {
id: networkName
horizontalAlignment: Text.AlignLeft
verticalAlignment: Text.AlignVCenter
- font.pixelSize: pluginMain.subTitleFontSize
- font.family: appFont
- color: connected ? viewSettings.buttonGreenColor : "white"
+ font.pixelSize: Globals.subTitleFontSize
+ font.family: Globals.appFont
+ color: connected ? Globals.buttonGreenColor : "white"
text: name
}
Row {
@@ -69,7 +68,7 @@ ListView {
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
+ height: Globals.buttonHeight
onClicked: {
if (connected) {
NetworkSettingsManager.services.itemFromRow(index).disconnectService();
@@ -124,7 +124,7 @@ ListView {
Rectangle {
id: delegateBottom
width: networkDelegate.width
- color: viewSettings.borderColor
+ color: Globals.borderColor
height: 2
anchors.bottom: networkDelegate.bottom
anchors.horizontalCenter: networkDelegate.horizontalCenter
diff --git a/src/settingsui/network/NetworkSettings.qml b/examples/deviceutilities/settingsuiapp/DeviceUtilities/SettingsUI/Network/NetworkSettings.qml
index a0555f4..2b59c61 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,11 +27,9 @@
**
****************************************************************************/
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
@@ -41,22 +39,23 @@ Item {
Text {
id: wlanText
text: qsTr("WLAN")
- font.pixelSize: pluginMain.subTitleFontSize
- font.family: appFont
+ 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
+ height: networkSettingsRoot.height * Globals.buttonHeight
+ indicatorWidth: networkSettingsRoot.height * Globals.buttonWidth
+ indicatorHeight: networkSettingsRoot.height * Globals.buttonHeight
property bool wiFiAvailable: NetworkSettingsManager.interface(NetworkSettingsType.Wifi, 0) !== null
- enabled: wiFiAvailable && !wifiSwitchTimer.running
+ checkable: wiFiAvailable && !wifiSwitchTimer.running
+
onCheckedChanged: {
// Power on/off all WiFi interfaces
for (var i = 0; NetworkSettingsManager.interface(NetworkSettingsType.Wifi, i) !== null; i++) {
@@ -64,17 +63,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 {
@@ -90,9 +78,9 @@ Item {
anchors.right: manualDisconnect.left
anchors.rightMargin: 10
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()
@@ -101,11 +89,11 @@ Item {
QtButton {
id: manualDisconnect
anchors.top: wlanText.bottom
- anchors.right: parent.right
+ anchors.right: networkSettingsRoot.right
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) {
@@ -116,8 +104,8 @@ Item {
Text {
id: networkListTextItem
text: qsTr("Network list:")
- font.pixelSize: pluginMain.subTitleFontSize
- font.family: appFont
+ font.pixelSize: networkSettingsRoot.height * Globals.subTitleFontSize
+ font.family: Globals.appFont
font.styleName: "SemiBold"
color: "white"
anchors.top: wifiSwitch.bottom
diff --git a/src/settingsui/network/PassphraseEnter.qml b/examples/deviceutilities/settingsuiapp/DeviceUtilities/SettingsUI/Network/PassphraseEnter.qml
index 5d3167c..f0978d2 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: parent.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: parent.height * Globals.subTitleFontSize
+ font.family: Globals.appFont
color: "white"
text: qsTr("Enter Passphrase")
}
Text {
- font.pixelSize: pluginMain.valueFontSize
- font.family: appFont
+ font.pixelSize: parent.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..9c2ad11 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
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
index 6fd25cb..6fd25cb 100644
--- a/src/settingsui/settingsuiplugin/icons/Alert_yellow_1x.png
+++ b/examples/deviceutilities/settingsuiapp/DeviceUtilities/SettingsUI/Network/icons/Alert_yellow_1x.png
Binary files differ
diff --git a/src/settingsui/settingsuiplugin/icons/WifiAnim_black_2x.png b/examples/deviceutilities/settingsuiapp/DeviceUtilities/SettingsUI/Network/icons/WifiAnim_black_2x.png
index c2dc8c5..c2dc8c5 100644
--- a/src/settingsui/settingsuiplugin/icons/WifiAnim_black_2x.png
+++ b/examples/deviceutilities/settingsuiapp/DeviceUtilities/SettingsUI/Network/icons/WifiAnim_black_2x.png
Binary files differ
diff --git a/src/settingsui/settingsuiplugin/icons/Wifi_lightgray_2x.png b/examples/deviceutilities/settingsuiapp/DeviceUtilities/SettingsUI/Network/icons/Wifi_lightgray_2x.png
index b71b22e..b71b22e 100644
--- a/src/settingsui/settingsuiplugin/icons/Wifi_lightgray_2x.png
+++ b/examples/deviceutilities/settingsuiapp/DeviceUtilities/SettingsUI/Network/icons/Wifi_lightgray_2x.png
Binary files differ
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
index 80914fc..80914fc 100644
--- a/src/settingsui/settingsuiplugin/icons/ref/extra/Alert.png
+++ b/examples/deviceutilities/settingsuiapp/DeviceUtilities/SettingsUI/Network/icons/ref/extra/Alert.png
Binary files differ
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/settingsui/settingsuiplugin/SettingsDelegate.qml b/examples/deviceutilities/settingsuiapp/DeviceUtilities/SettingsUI/SettingsDelegate.qml
index cf7696a..b3a1193 100644
--- a/src/settingsui/settingsuiplugin/SettingsDelegate.qml
+++ b/examples/deviceutilities/settingsuiapp/DeviceUtilities/SettingsUI/SettingsDelegate.qml
@@ -27,11 +27,14 @@
**
****************************************************************************/
import QtQuick
+import DeviceUtilities.SettingsUI
Item {
- width: settingsList.width
- height: settingsList.height * 0.08
+ id: delegate
+ width: parent.width
+ height: parent.height * 0.08
+ //TODO: Do not expect id from other qml file to work/exist
property bool isSelected: settingsList.currentIndex == index
Image {
@@ -57,13 +60,14 @@ Item {
fontSizeMode: Text.Fit
minimumPixelSize: 1
font.pixelSize: Math.min(parent.width * 0.25, parent.height)
- color: parent.isSelected ? viewSettings.buttonGreenColor : "white"
+ color: delegate.isSelected ? Globals.buttonGreenColor : "white"
wrapMode: Text.WordWrap
verticalAlignment: Text.AlignVCenter
- font.family: appFont
- font.styleName: parent.isSelected ? "Bold" : "Regular"
+ font.family: Globals.appFont
+ font.styleName: delegate.isSelected ? "Bold" : "Regular"
}
+ //TODO: Do not expect id from other qml file to work/exist
MouseArea {
id: mouseArea
anchors.fill: parent
diff --git a/src/settingsui/settingsuiplugin/SettingsHeader.qml b/examples/deviceutilities/settingsuiapp/DeviceUtilities/SettingsUI/SettingsHeader.qml
index 1d2f737..5667a3c 100644
--- a/src/settingsui/settingsuiplugin/SettingsHeader.qml
+++ b/examples/deviceutilities/settingsuiapp/DeviceUtilities/SettingsUI/SettingsHeader.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.
@@ -34,54 +34,57 @@ Item {
anchors.left: parent.left
anchors.right: parent.right
anchors.top: parent.top
- anchors.margins: pluginMain.margin
- height: pluginMain.margin * 4
+ anchors.margins: margin
+ height: margin * 4
+
+ property int margin: Globals.margin(header.width)
+ property int spacing: margin * 0.5
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
+ id: networkButton
+ anchors.left: header.left
+ anchors.top: header.top
+ source: "icons/back.svg"
+ height: header.height * 0.5
width: height / sourceSize.height * sourceSize.width
MouseArea {
anchors.fill: parent
anchors.margins: -parent.height * 0.2
- onClicked: header.clicked()
+ onClicked: parent.clicked()
}
+ visible: false
}
Text {
id: settingsText
- anchors.left: backButton.right
- anchors.verticalCenter: backButton.verticalCenter
- font.pixelSize: parent.height * 0.45
+ anchors.left: networkButton.right
+ anchors.verticalCenter: networkButton.verticalCenter
+ font.pixelSize: header.height * 0.45
text: qsTr("Settings")
color: "white"
- font.family: appFont
+ font.family: Globals.appFont
font.styleName: "SemiBold"
MouseArea {
anchors.fill: parent
anchors.margins: -parent.height * 0.2
- onClicked: header.clicked()
+ onClicked: parent.clicked()
}
}
Text {
id: ipItem
- width: parent.width * 0.25
- height: parent.height/2
+ width: header.width * 0.25
+ height: header.height/2
anchors.top: settingsText.top
- anchors.right: parent.right
- anchors.rightMargin: pluginMain.margin
+ anchors.right: header.right
+ anchors.rightMargin: margin
horizontalAlignment: Text.AlignRight
verticalAlignment: Text.AlignVCenter
- font.pixelSize: parent.height * 0.3
+ font.pixelSize: header.height * 0.3
color: "white"
- font.family: appFont
+ font.family: Globals.appFont
font.styleName: "SemiBold"
text: NetworkSettingsManager.currentWiredConnection ?
qsTr("Wired IP: ") +
@@ -90,16 +93,16 @@ Item {
Text {
id: wifiIpItem
- width: parent.width * 0.25
- height: parent.height/2
+ width: header.width * 0.25
+ height: header.height/2
anchors.top: ipItem.bottom
anchors.right: parent.right
- anchors.rightMargin: pluginMain.margin
+ anchors.rightMargin: margin
horizontalAlignment: Text.AlignRight
verticalAlignment: Text.AlignVCenter
- font.pixelSize: parent.height * 0.3
+ font.pixelSize: header.height * 0.3
color: "white"
- font.family: appFont
+ font.family: Globals.appFont
font.styleName: "SemiBold"
text: NetworkSettingsManager.currentWifiConnection ?
qsTr("Wireless IP: ") +
diff --git a/src/settingsui/settingsuiplugin/SettingsTitleItem.qml b/examples/deviceutilities/settingsuiapp/DeviceUtilities/SettingsUI/SettingsTitleItem.qml
index 6156091..d43f8e8 100644
--- a/src/settingsui/settingsuiplugin/SettingsTitleItem.qml
+++ b/examples/deviceutilities/settingsuiapp/DeviceUtilities/SettingsUI/SettingsTitleItem.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.
@@ -30,17 +30,17 @@ import QtQuick
Column {
id: page
- spacing: pluginMain.spacing
+ spacing: Globals.margin(page.width) * Globals.spacing
property alias title: displayText.text
Text {
id: displayText
- font.pixelSize: pluginMain.titleFontSize
+ font.pixelSize: (page.parent.height * Globals.titleFontSize)
color: "white"
fontSizeMode: Text.Fit
minimumPixelSize: 1
- font.family: appFont
+ font.family: Globals.appFont
font.styleName: "Bold"
}
@@ -51,7 +51,7 @@ Column {
}
Item {
- height: pluginMain.margin
+ height: Globals.margin(page.width)
width: 1
}
}
diff --git a/src/settingsui/settingsuiplugin/pluginMain.qml b/examples/deviceutilities/settingsuiapp/DeviceUtilities/SettingsUI/SettingsUI.qml
index 76a6ced..44ce51d 100644
--- a/src/settingsui/settingsuiplugin/pluginMain.qml
+++ 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.
@@ -27,27 +27,15 @@
**
****************************************************************************/
import QtQuick
-import QtQuick.Layouts
-import QtQuick.Controls
-import Qt.labs.settings
-import QtDeviceUtilities.NetworkSettings
+import DeviceUtilities.SettingsUI.Network
Rectangle {
- id: pluginMain
+ id: main
anchors.fill: parent
- visible: true
- color: "#09102b"
+ color: Globals.backgroundColor
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
+ property int margin: Globals.margin(main.width)
signal closed()
@@ -60,7 +48,7 @@ Rectangle {
SettingsHeader {
id: settingsHeader
- onClicked: pluginMain.closed()
+ onClicked: main.closed()
}
ListModel {
@@ -69,8 +57,8 @@ Rectangle {
ListElement {
title: "Network"
view: "NetworkSettings"
- path: "network"
- icon: "newIcons/network_icon.svg"
+ path: "Network"
+ icon: "icons/network.svg"
}
}
@@ -78,9 +66,9 @@ Rectangle {
id: settingsList
objectName: "settingsList"
anchors.top: settingsHeader.bottom
- anchors.left: parent.left
- anchors.bottom: parent.bottom
- width: parent.width / 3.33
+ anchors.left: main.left
+ anchors.bottom: main.bottom
+ width: main.width / 3.33
model: settingsListModel
delegate: SettingsDelegate {}
@@ -89,18 +77,20 @@ Rectangle {
SettingsTitleItem {
id: titleItem
anchors.left: settingsList.right
- anchors.right: parent.right
+ anchors.right: main.right
anchors.top: settingsHeader.bottom
- anchors.leftMargin: pluginMain.margin * 2
+ anchors.leftMargin: margin * 2
}
Loader {
id: settingsLoader
+ width: main.width
+ height: main.height
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
+ anchors.right: main.right
+ anchors.bottom: main.bottom
+ anchors.leftMargin: margin * 2
+ anchors.rightMargin: margin * 2
}
}
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
index 9b55146..9b55146 100755
--- a/src/settingsui/settingsuiplugin/icons/FloatingButton_Active.png
+++ b/examples/deviceutilities/settingsuiapp/images/FloatingButton_Active.png
Binary files differ
diff --git a/src/settingsui/settingsuiplugin/icons/FloatingButton_Available.png b/examples/deviceutilities/settingsuiapp/images/FloatingButton_Available.png
index 1479881..1479881 100755
--- a/src/settingsui/settingsuiplugin/icons/FloatingButton_Available.png
+++ b/examples/deviceutilities/settingsuiapp/images/FloatingButton_Available.png
Binary files differ
diff --git a/src/settingsui/settingsuiplugin/icons/FloatingButton_Unavailable.png b/examples/deviceutilities/settingsuiapp/images/FloatingButton_Unavailable.png
index 33aa87d..33aa87d 100755
--- a/src/settingsui/settingsuiplugin/icons/FloatingButton_Unavailable.png
+++ b/examples/deviceutilities/settingsuiapp/images/FloatingButton_Unavailable.png
Binary files differ
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/src/CMakeLists.txt b/src/CMakeLists.txt
index 25640ce..0e91047 100644
--- a/src/CMakeLists.txt
+++ b/src/CMakeLists.txt
@@ -1,6 +1,6 @@
add_subdirectory(networksettings)
-add_subdirectory(networksettings/networksettingsqml)
-add_subdirectory(settingsui/settingsuiplugin)
-add_subdirectory(settingsui/qtbuttonimageproviderplugin)
-add_subdirectory(settingsui)
add_subdirectory(doc)
+
+if(TARGET Qt::Qml)
+ add_subdirectory(networksettingsqml)
+endif()
diff --git a/src/doc/CMakeLists.txt b/src/doc/CMakeLists.txt
index 20feded..e4a4b7f 100644
--- a/src/doc/CMakeLists.txt
+++ b/src/doc/CMakeLists.txt
@@ -1,5 +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/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 cfd5d5a..01b1c96 100644
--- a/src/doc/qtdeviceutilities-project.qdocconf
+++ b/src/doc/qtdeviceutilities-project.qdocconf
@@ -1,5 +1,3 @@
-include($QT_INSTALL_DOCS/global/qt-module-defaults.qdocconf)
-
project = QtDeviceUtilities
description = Qt Device Utilities $QT_VERSION
version = $QT_VERSION
@@ -12,7 +10,7 @@ includepaths += -I . \
moduleheader = QtDeviceUtilitiesDoc
sourcedirs += src \
- ../networksettings/networksettingsqml \
+ ../networksettingsqml \
../networksettings
headerdirs += ../networksettings
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/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/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 6b9dd31..3b3cb79 100644
--- a/src/networksettings/connman/connmancommon.h
+++ b/src/networksettings/connman/connmancommon.h
@@ -31,7 +31,6 @@
#include <QtCore/QMetaType>
#include <QtDBus/QtDBus>
-#include <QtNetworkSettings/qnetworksettings.h>
#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..9a812d1 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) {
@@ -187,7 +204,7 @@ void QNetworkSettingsManagerPrivate::onTechnologyRemoved(const QDBusObjectPath &
foreach (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();
}
}
@@ -232,21 +249,31 @@ 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);
+ foreach (const QDBusObjectPath &dpath, removed) {
+ QString path = dpath.path();
+
+ if (m_serviceModel->removeService(path))
+ emit q->servicesChanged();
+
+ if (auto service = m_unnamedServices.take(path))
+ service->deleteLater();
+ if (auto service = m_unknownServices.take(path))
+ service->deleteLater();
+ m_unnamedServicesForSsidConnection.remove(path); // do not delete here
}
QStringList newServices;
- foreach (ConnmanMapStruct map, changed) {
+ foreach (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;
+ if (service->id() == path && service->placeholderState() == false) {
+ found = true;
break;
}
}
@@ -282,9 +309,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 +337,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());
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..dce48d9 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);
+ QNetworkSettingsWireless::Securities securities;
foreach (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/qnetworksettings.cpp b/src/networksettings/qnetworksettings.cpp
index 79ec2d4..97314d7 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 {
@@ -637,12 +634,8 @@ void QNetworkSettingsWireless::setSignalStrength(const int signalStrength) {
/*!
Sets \a security 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..3e921c1 100644
--- a/src/networksettings/qnetworksettings.h
+++ b/src/networksettings/qnetworksettings.h
@@ -31,7 +31,6 @@
#include <QObject>
#include <QUrl>
-#include <QVariantMap>
#include <QtNetworkSettings/qnetworksettingsaddressmodel.h>
QT_BEGIN_NAMESPACE
@@ -39,72 +38,85 @@ QT_BEGIN_NAMESPACE
class Q_DECL_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
{
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
{
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 +129,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
{
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 Method {
+ Auto = 0,
+ Manual,
+ Off
+ };
+ Q_ENUM(Method)
- enum MethodType {Auto, Manual, Off};
- enum PrivacyType {Disabled, Enabled, Preferred};
+ 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 +180,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_DECL_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 +210,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 +222,32 @@ private:
QUrl m_url;
QNetworkSettingsAddressModel m_servers;
QNetworkSettingsAddressModel m_excludes;
- MethodType m_method;
+ Method m_method;
};
class Q_DECL_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 +257,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..20d2919 100644
--- a/src/networksettings/qnetworksettingsaddressmodel.h
+++ b/src/networksettings/qnetworksettingsaddressmodel.h
@@ -38,8 +38,8 @@ class Q_DECL_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/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..997af1f 100644
--- a/src/networksettings/qnetworksettingsinterface.h
+++ b/src/networksettings/qnetworksettingsinterface.h
@@ -32,22 +32,22 @@
#include <QObject>
#include <QtNetworkSettings/qnetworksettings.h>
-QT_FORWARD_DECLARE_CLASS(QNetworkSettingsInterfacePrivate)
-
QT_BEGIN_NAMESPACE
-class Q_DECL_EXPORT QNetworkSettingsInterface : public QObject {
+class QNetworkSettingsInterfacePrivate;
+class Q_DECL_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..2ab5020 100644
--- a/src/networksettings/qnetworksettingsinterfacemodel.cpp
+++ b/src/networksettings/qnetworksettingsinterfacemodel.cpp
@@ -46,7 +46,7 @@ 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}.
\value 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();
}
diff --git a/src/networksettings/qnetworksettingsinterfacemodel.h b/src/networksettings/qnetworksettingsinterfacemodel.h
index 42d40b6..5fd4999 100644
--- a/src/networksettings/qnetworksettingsinterfacemodel.h
+++ b/src/networksettings/qnetworksettingsinterfacemodel.h
@@ -30,18 +30,16 @@
#define QNETWORKSETTINGSINTERFACEMODEL_H
#include <QAbstractListModel>
-#include <QtNetworkSettings/qnetworksettings.h>
QT_BEGIN_NAMESPACE
class QNetworkSettingsInterface;
-
class Q_DECL_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..32df2de 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()
{
diff --git a/src/networksettings/qnetworksettingsmanager.h b/src/networksettings/qnetworksettingsmanager.h
index 01159dd..95b8892 100644
--- a/src/networksettings/qnetworksettingsmanager.h
+++ b/src/networksettings/qnetworksettingsmanager.h
@@ -29,31 +29,29 @@
#ifndef QNETWORKSETTINGSMANAGER_H
#define QNETWORKSETTINGSMANAGER_H
-#include <QtNetworkSettings/qnetworksettings.h>
#include <QObject>
-#include <QStringListModel>
-#include <QtNetworkSettings/qnetworksettingsservicemodel.h>
-#include <QtNetworkSettings/qnetworksettingsinterfacemodel.h>
-#include <QtNetworkSettings/qnetworksettingsuseragent.h>
-#include <QtNetworkSettings/qnetworksettingsservice.h>
-
-QT_FORWARD_DECLARE_CLASS(QNetworkSettingsManagerPrivate)
-QT_FORWARD_DECLARE_CLASS(QNetworkSettingsInterface)
QT_BEGIN_NAMESPACE
+class QNetworkSettingsService;
+class QNetworkSettingsInterface;
+class QNetworkSettingsUserAgent;
+class QNetworkSettingsServiceFilter;
+class QNetworkSettingsInterfaceModel;
+class QNetworkSettingsManagerPrivate;
class Q_DECL_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 +79,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..482db82 100644
--- a/src/networksettings/qnetworksettingsservice.h
+++ b/src/networksettings/qnetworksettingsservice.h
@@ -32,18 +32,16 @@
#include <QObject>
#include <QtNetworkSettings/qnetworksettings.h>
-QT_FORWARD_DECLARE_CLASS(QNetworkSettingsServicePrivate)
-
QT_BEGIN_NAMESPACE
+class QNetworkSettingsServicePrivate;
class Q_DECL_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..52dfd47 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
@@ -296,7 +297,7 @@ void QNetworkSettingsServiceModel::signalStrengthChanged()
\property QNetworkSettingsServiceFilter::type
\brief The type of the network.
- \l QNetworkSettingsType::Types
+ \l QNetworkSettingsType::Type
*/
/*!
@@ -351,19 +352,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();
diff --git a/src/networksettings/qnetworksettingsservicemodel.h b/src/networksettings/qnetworksettingsservicemodel.h
index 01447f6..332ade8 100644
--- a/src/networksettings/qnetworksettingsservicemodel.h
+++ b/src/networksettings/qnetworksettingsservicemodel.h
@@ -31,15 +31,15 @@
#include <QSortFilterProxyModel>
#include <QtNetworkSettings/qnetworksettings.h>
-#include <QtNetworkSettings/qnetworksettingsservice.h>
QT_BEGIN_NAMESPACE
+class QNetworkSettingsService;
class Q_DECL_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;
@@ -77,14 +77,14 @@ private:
class Q_DECL_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..cbd0d8b 100644
--- a/src/networksettings/qnetworksettingsuseragent.h
+++ b/src/networksettings/qnetworksettingsuseragent.h
@@ -31,15 +31,14 @@
#include <QObject>
-QT_FORWARD_DECLARE_CLASS(QNetworkSettingsUserAgentPrivate)
-
QT_BEGIN_NAMESPACE
+class QNetworkSettingsUserAgentPrivate;
class Q_DECL_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/networksettings/networksettingsqml/CMakeLists.txt b/src/networksettingsqml/CMakeLists.txt
index db3f58c..db3f58c 100644
--- a/src/networksettings/networksettingsqml/CMakeLists.txt
+++ b/src/networksettingsqml/CMakeLists.txt
diff --git a/src/networksettings/networksettingsqml/qnetworksettingsforeign.cpp b/src/networksettingsqml/qnetworksettingsforeign.cpp
index e3d1414..e3d1414 100644
--- a/src/networksettings/networksettingsqml/qnetworksettingsforeign.cpp
+++ b/src/networksettingsqml/qnetworksettingsforeign.cpp
diff --git a/src/networksettings/networksettingsqml/qnetworksettingsforeign.h b/src/networksettingsqml/qnetworksettingsforeign.h
index b979397..ff9ec57 100644
--- a/src/networksettings/networksettingsqml/qnetworksettingsforeign.h
+++ b/src/networksettingsqml/qnetworksettingsforeign.h
@@ -30,17 +30,7 @@
#define NETWORKSETTINGSPLUGIN_PLUGIN_H
#include <QtQml/qqml.h>
-#include <QtNetworkSettings/qnetworksettings.h>
-#include <QtNetworkSettings/qnetworksettingsmanager.h>
-#include <QtNetworkSettings/qnetworksettingsservice.h>
-#include <QtNetworkSettings/qnetworksettingsuseragent.h>
-#include <QtNetworkSettings/qnetworksettingsservicemodel.h>
-#include <QtNetworkSettings/qnetworksettingsinterface.h>
-#include <QtNetworkSettings/qnetworksettingsinterfacemodel.h>
-
-Q_DECLARE_METATYPE(QNetworkSettingsUserAgent)
-Q_DECLARE_METATYPE(QNetworkSettingsServiceFilter)
-Q_DECLARE_METATYPE(QNetworkSettingsInterfaceModel)
+#include <QtNetworkSettings/QtNetworkSettings>
QT_BEGIN_NAMESPACE
@@ -48,7 +38,7 @@ struct NetworkSettingsServiceForeign
{
Q_GADGET
QML_FOREIGN(QNetworkSettingsService)
- QML_NAMED_ELEMENT(NetworkSettingsService)
+ QML_NAMED_ELEMENT(NetworkService)
QML_UNCREATABLE("Cannot be instantiated directly.")
QML_ADDED_IN_VERSION(1, 0)
};
@@ -57,7 +47,7 @@ struct NetworkSettingsInterfaceForeign
{
Q_GADGET
QML_FOREIGN(QNetworkSettingsInterface)
- QML_NAMED_ELEMENT(NetworkSettingsInterface)
+ QML_NAMED_ELEMENT(NetworkInterface)
QML_UNCREATABLE("Cannot be instantiated directly.")
QML_ADDED_IN_VERSION(1, 0)
};
@@ -89,6 +79,15 @@ struct NetworkSettingsProxyForeign
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
@@ -110,6 +109,7 @@ struct NetworkSettingsStateForeign
class QNetworkSettingsManagerForeign
{
Q_GADGET
+ QML_FOREIGN(QNetworkSettingsManager)
QML_NAMED_ELEMENT(NetworkSettingsManager)
QML_SINGLETON
QML_ADDED_IN_VERSION(2, 0)
diff --git a/src/settingsui/CMakeLists.txt b/src/settingsui/CMakeLists.txt
deleted file mode 100644
index 5bec7ee..0000000
--- a/src/settingsui/CMakeLists.txt
+++ /dev/null
@@ -1,50 +0,0 @@
-#####################################################################
-## settingsui Binary:
-#####################################################################
-
-qt_internal_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_internal_add_resource(settingsui "settingsuiapp"
- PREFIX
- "/"
- FILES
- ${settingsuiapp_resource_files}
-)
-
-qt_internal_extend_target(settingsui CONDITION static
- PUBLIC_LIBRARIES
- Qt::Svg
-)
diff --git a/src/settingsui/qtbuttonimageproviderplugin/CMakeLists.txt b/src/settingsui/qtbuttonimageproviderplugin/CMakeLists.txt
deleted file mode 100644
index d799013..0000000
--- a/src/settingsui/qtbuttonimageproviderplugin/CMakeLists.txt
+++ /dev/null
@@ -1,26 +0,0 @@
-#####################################################################
-## qtbuttonimageproviderplugin Plugin:
-#####################################################################
-
-qt_internal_add_qml_module(qtbuttonimageproviderplugin
- URI "QtDeviceUtilities.QtButtonImageProvider"
- VERSION "${CMAKE_PROJECT_VERSION}"
- CLASS_NAME QtButtonImageProviderQmlPlugin
- PLUGIN_TARGET qtbuttonimageproviderplugin
- NO_PLUGIN_OPTIONAL
- NO_GENERATE_PLUGIN_SOURCE
- CLASS_NAME QtButtonImageProviderPlugin
- PAST_MAJOR_VERSIONS 1
- DEPENDENCIES
- QtQml
- SOURCES
- plugin.cpp plugin_p.h
- qtbuttonimageprovider.cpp qtbuttonimageprovider.h
- LIBRARIES
- Qt::Core
- Qt::Gui
- Qt::Qml
- Qt::Quick
- QML_FILES
- "QtButton.qml"
-)
diff --git a/src/settingsui/qtbuttonimageproviderplugin/plugin_p.h b/src/settingsui/qtbuttonimageproviderplugin/plugin_p.h
deleted file mode 100644
index 9fa479d..0000000
--- a/src/settingsui/qtbuttonimageproviderplugin/plugin_p.h
+++ /dev/null
@@ -1,79 +0,0 @@
-/****************************************************************************
-**
-** 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.
-**
-** $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 QTBUTTONIMAGEPROVIDERQMLPLUGIN_H
-#define QTBUTTONIMAGEPROVIDERQMLPLUGIN_H
-
-#include <qqmlextensionplugin.h>
-#include <qqmlengine.h>
-
-#include "qtbuttonimageprovider.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.
-//
-
-extern void qml_register_types_QtDeviceUtilities_QtButtonImageProvider();
-
-QT_BEGIN_NAMESPACE
-
-struct QtButtonForeign
-{
- Q_GADGET
- QML_NAMED_ELEMENT(QtButton)
- QML_ADDED_IN_VERSION(1, 0)
-};
-
-class QtButtonImageProviderQmlPlugin : public QQmlEngineExtensionPlugin
-{
- Q_OBJECT
- Q_PLUGIN_METADATA(IID QQmlExtensionInterface_iid)
-
-public:
- QtButtonImageProviderQmlPlugin(QObject *parent = nullptr) : QQmlEngineExtensionPlugin(parent) {
- volatile auto registration = &qml_register_types_QtDeviceUtilities_QtButtonImageProvider;
- Q_UNUSED(registration);
- }
-
- void initializeEngine(QQmlEngine *engine, const char *uri) override
- {
- Q_UNUSED(uri);
- QtButtonImageProvider *provider = new QtButtonImageProvider();
- engine->addImageProvider("QtButton", provider);
- }
-};
-
-QT_END_NAMESPACE
-#endif //QTBUTTONIMAGEPROVIDERQMLPLUGIN_H
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 6ab5bf7..0000000
--- a/src/settingsui/settingsuiplugin/CMakeLists.txt
+++ /dev/null
@@ -1,60 +0,0 @@
-#####################################################################
-## settingsuiplugin Plugin:
-#####################################################################
-set(settingsui_qml_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"
- "pluginMain.qml"
-)
-
-qt_internal_add_qml_module(settingsuiplugin
- URI "QtDeviceUtilities.SettingsUI"
- VERSION "${CMAKE_PROJECT_VERSION}"
- PLUGIN_TARGET settingsuiplugin
- PAST_MAJOR_VERSIONS 2
- SOURCES
- plugin.cpp
- plugin_p.h
- PUBLIC_LIBRARIES
- Qt::Core
- Qt::Gui
- Qt::Qml
- Qt::Quick
- QML_FILES
- ${settingsui_qml_files}
-)
-
-# Resources:
-set(settingsui_resource_files
- "icons/Alert_yellow_1x.png"
- "icons/FloatingButton_Active.png"
- "icons/FloatingButton_Available.png"
- "icons/FloatingButton_Unavailable.png"
- "icons/WifiAnim_black_2x.png"
- "icons/Wifi_lightgray_2x.png"
- "newIcons/back_icon.svg"
- "newIcons/network_icon.svg"
-)
-
-qt_internal_add_resource(settingsuiplugin "settingsui"
- PREFIX
- "/"
- FILES
- ${settingsui_resource_files}
-)
diff --git a/src/settingsui/settingsuiplugin/plugin.cpp b/src/settingsui/settingsuiplugin/plugin.cpp
deleted file mode 100644
index 8ac64e1..0000000
--- a/src/settingsui/settingsuiplugin/plugin.cpp
+++ /dev/null
@@ -1,72 +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 "plugin_p.h"
-/*!
- \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.
-*/