From f1d884b6dad5a93d7a3077b6b05d3ec7fcd9a6ea Mon Sep 17 00:00:00 2001 From: Teemu Holappa Date: Thu, 11 Feb 2016 11:50:55 +0200 Subject: Refactored Qml plugins into modules. Separated C++ and Qml interfaces. All the UI's from plugins are moved to the settingsui folder. Change-Id: Id6a6623346b18321357bc42d24121c4d9cdfd098 Reviewed-by: Kimmo Ollila --- .../imports/NetworkSettings/EditWiredSettings.qml | 641 --------------------- .../imports/NetworkSettings/IpAddressTextField.qml | 43 -- .../imports/NetworkSettings/NetworkDetails.qml | 42 -- .../imports/NetworkSettings/NetworkSettings.qml | 137 ----- .../NetworkSettings/WifiSelectorDelegate.qml | 90 --- .../imports/NetworkSettings/WifiSettings.qml | 190 ------ .../imports/NetworkSettings/WifiSignalMonitor.qml | 83 --- .../imports/NetworkSettings/WiredSettings.qml | 207 ------- 8 files changed, 1433 deletions(-) delete mode 100644 src/qtdevicesettings/networksettingsplugin/imports/NetworkSettings/EditWiredSettings.qml delete mode 100644 src/qtdevicesettings/networksettingsplugin/imports/NetworkSettings/IpAddressTextField.qml delete mode 100644 src/qtdevicesettings/networksettingsplugin/imports/NetworkSettings/NetworkDetails.qml delete mode 100644 src/qtdevicesettings/networksettingsplugin/imports/NetworkSettings/NetworkSettings.qml delete mode 100644 src/qtdevicesettings/networksettingsplugin/imports/NetworkSettings/WifiSelectorDelegate.qml delete mode 100644 src/qtdevicesettings/networksettingsplugin/imports/NetworkSettings/WifiSettings.qml delete mode 100644 src/qtdevicesettings/networksettingsplugin/imports/NetworkSettings/WifiSignalMonitor.qml delete mode 100644 src/qtdevicesettings/networksettingsplugin/imports/NetworkSettings/WiredSettings.qml (limited to 'src/qtdevicesettings/networksettingsplugin/imports') diff --git a/src/qtdevicesettings/networksettingsplugin/imports/NetworkSettings/EditWiredSettings.qml b/src/qtdevicesettings/networksettingsplugin/imports/NetworkSettings/EditWiredSettings.qml deleted file mode 100644 index c678c67..0000000 --- a/src/qtdevicesettings/networksettingsplugin/imports/NetworkSettings/EditWiredSettings.qml +++ /dev/null @@ -1,641 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2015 The Qt Company Ltd. -** Contact: http://www.qt.io/licensing/ -** -** This file is part of the Qt Device Utilities module of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:LGPL3$ -** 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 http://www.qt.io/terms-conditions. For further -** information use the contact form at http://www.qt.io/contact-us. -** -** GNU Lesser General Public License Usage -** Alternatively, this file may be used under the terms of the GNU Lesser -** General Public License version 3 as published by the Free Software -** Foundation and appearing in the file LICENSE.LGPLv3 included in the -** packaging of this file. Please review the following information to -** ensure the GNU Lesser General Public License version 3 requirements -** will be met: https://www.gnu.org/licenses/lgpl.html. -** -** GNU General Public License Usage -** Alternatively, this file may be used under the terms of the GNU -** General Public License version 2.0 or later as published by the Free -** Software Foundation and appearing in the file LICENSE.GPL included in -** the packaging of this file. Please review the following information to -** ensure the GNU General Public License version 2.0 requirements will be -** met: http://www.gnu.org/licenses/gpl-2.0.html. -** -** $QT_END_LICENSE$ -** -****************************************************************************/ -import QtQuick 2.5 -import QtQuick.Layouts 1.1 -import QtQuick.Controls 1.4 -import QtQuick.Controls.Styles.Flat 1.0 as Flat -import com.theqtcompany.settings.common 1.0 -import com.theqtcompany.settings.network 1.0 - -Item { - id: root - property string title: qsTr("Ethernet Settings") - property var service: undefined - - property bool ipv4Changed: false - property bool ipv6Changed: false - property bool nameserversChanged: false - property bool domainsChanged: false - property bool proxyChanged: false - - Component.onDestruction: { - //Clear all unsaved changes from models - service.proxy.excludes.resetChanges(); - service.nameservers.resetChanges(); - service.domains.resetChanges(); - } - - Component.onCompleted: titlebar.title = service.name; - - Flickable { - anchors.fill: parent - anchors.top: saveButton.bottom - anchors.margins: Math.round(40 * Flat.FlatStyle.scaleFactor) - anchors.bottomMargin: Math.round(20 * Flat.FlatStyle.scaleFactor) - contentHeight: content.height - contentWidth: width - interactive: !ipv4Method.popupVisible && !ipv6Method.popupVisible && !proxyMethodSel.popupVisible - Column { - id: content - width: parent.width - spacing: Math.round(10 * Flat.FlatStyle.scaleFactor) - property int titleWidth: Math.round(width * 0.382) - property int groupWidth: Math.round(width - saveButton.width - 10 * Flat.FlatStyle.scaleFactor) - - //IPv4 Config - GroupBox { - flat: false - width: content.groupWidth - Layout.fillWidth: true - title: qsTr("IPv4") - - ColumnLayout { - anchors.fill: parent - - ListModel { - id: methodsModel - - ListElement { - text: "DHCP" - method: NetworkSettingsIPv4.Dhcp - } - ListElement { - text: "Manual" - method: NetworkSettingsIPv4.Manual - } - ListElement { - text: "Off" - method: NetworkSettingsIPv4.Off - } - } - - Row { - spacing: Math.round(10 * Flat.FlatStyle.scaleFactor) - TextLabel { - text: qsTr("Connection method") - width: content.titleWidth - horizontalAlignment: Text.AlignRight - } - - CustomCombobox { - id: ipv4Method - model: methodsModel - Component.onCompleted: selectedIndex = service.ipv4.method - - onSelectedIndexChanged : { - ipv4Changed = true; - service.ipv4.method = model.get(selectedIndex).method; - } - delegate: FlatStyledDropdownDelegate { } - } - } - - Column { - spacing: Math.round(10 * Flat.FlatStyle.scaleFactor) - visible: service.ipv4.method === NetworkSettingsIPv4.Dhcp - - Row { - spacing: Math.round(10 * Flat.FlatStyle.scaleFactor) - TextLabel { - text: qsTr("Address") - width: content.titleWidth - horizontalAlignment: Text.AlignRight - } - TextLabel { - text: service.ipv4.address - } - } - - Row { - spacing: Math.round(10 * Flat.FlatStyle.scaleFactor) - TextLabel { - text: qsTr("Mask") - width: content.titleWidth - horizontalAlignment: Text.AlignRight - } - TextLabel { - text: service.ipv4.mask - } - } - - Row { - spacing: Math.round(10 * Flat.FlatStyle.scaleFactor) - TextLabel { - text: qsTr("Router") - width: content.titleWidth - horizontalAlignment: Text.AlignRight - } - TextLabel { - text: service.ipv4.gateway - } - } - } - - Column { - spacing: Math.round(10 * Flat.FlatStyle.scaleFactor) - visible: service.ipv4.method === NetworkSettingsIPv4.Manual - - Row { - spacing: Math.round(10 * Flat.FlatStyle.scaleFactor) - TextLabel { - text: qsTr("Address") - width: content.titleWidth - horizontalAlignment: Text.AlignRight - } - IpAddressTextField { - id: ipv4Address - text: service.ipv4.address - onTextChanged: ipv4Changed = true; - - onAccepted: if (text.length > 0) service.ipv4.address = text - } - } - - Row { - spacing: Math.round(10 * Flat.FlatStyle.scaleFactor) - TextLabel { - text: qsTr("Mask") - width: content.titleWidth - horizontalAlignment: Text.AlignRight - } - IpAddressTextField { - id: ipv4Mask - text: service.ipv4.mask - onTextChanged: ipv4Changed = true; - onAccepted: if (text.length > 0) service.ipv4.mask = text - } - } - - Row { - spacing: Math.round(10 * Flat.FlatStyle.scaleFactor) - TextLabel { - text: qsTr("Router") - width: content.titleWidth - horizontalAlignment: Text.AlignRight - } - IpAddressTextField { - id: ipv4Gateway - text: service.ipv4.gateway - - onTextChanged: ipv4Changed = true - - onAccepted: if (text.length > 0) service.ipv4.gateway = text - } - } - } - } - } - - //IPv6 Config - GroupBox { - flat: false - width: content.groupWidth - Layout.fillWidth: true - title: qsTr("IPv6") - - ColumnLayout { - anchors.fill: parent - - ListModel { - id: ipv6methodsmodel - - ListElement { - text: qsTr("Auto") - method: NetworkSettingsIPv6.Auto - } - ListElement { - text: qsTr("Manual") - method: NetworkSettingsIPv6.Manual - } - ListElement { - text: qsTr("Off") - method: NetworkSettingsIPv6.Off - } - } - - Row { - spacing: Math.round(10 * Flat.FlatStyle.scaleFactor) - TextLabel { - text: qsTr("Connection method: ") - width: content.titleWidth - horizontalAlignment: Text.AlignRight - } - - CustomCombobox { - id: ipv6Method - model: ipv6methodsmodel - Component.onCompleted: selectedIndex = service.ipv6.method - onSelectedIndexChanged : { - ipv6Changed = true; - service.ipv6.method = model.get(selectedIndex).method; - } - delegate: FlatStyledDropdownDelegate { } - } - } - - Column { - spacing: Math.round(10 * Flat.FlatStyle.scaleFactor) - visible: service.ipv6.method === NetworkSettingsIPv6.Auto - Row { - spacing: Math.round(10 * Flat.FlatStyle.scaleFactor) - TextLabel { - text: qsTr("Address") - width: content.titleWidth - horizontalAlignment: Text.AlignRight - } - TextLabel { - text: service.ipv6.address - } - } - - Row { - spacing: Math.round(10 * Flat.FlatStyle.scaleFactor) - TextLabel { - text: qsTr("Router") - width: content.titleWidth - horizontalAlignment: Text.AlignRight - } - TextLabel { - text: service.ipv6.gateway - } - } - - Row { - spacing: Math.round(10 * Flat.FlatStyle.scaleFactor) - TextLabel { - text: qsTr("Prefix length") - width: content.titleWidth - horizontalAlignment: Text.AlignRight - } - TextLabel { - text: service.ipv6.prefixLength - } - } - } - - Column { - spacing: Math.round(10 * Flat.FlatStyle.scaleFactor) - visible: service.ipv6.method === NetworkSettingsIPv6.Manual - Row { - spacing: Math.round(10 * Flat.FlatStyle.scaleFactor) - TextLabel { - text: qsTr("Address") - width: content.titleWidth - horizontalAlignment: Text.AlignRight - } - TextField { - id: ipv6Address - text: service.ipv6.address - onTextChanged: ipv6Changed = true; - onAccepted: if (text.length > 0) service.ipv6.address = text - } - } - - Row { - spacing: Math.round(10 * Flat.FlatStyle.scaleFactor) - TextLabel { - text: qsTr("Router") - width: content.titleWidth - horizontalAlignment: Text.AlignRight - } - TextField { - id: ipv6Gateway - text: service.ipv6.gateway - onTextChanged: ipv6Changed = true; - onAccepted: if (text.length > 0) service.ipv4.gateway = text - } - } - - Row { - spacing: Math.round(10 * Flat.FlatStyle.scaleFactor) - TextLabel { - text: qsTr("Prefix length") - width: content.titleWidth - horizontalAlignment: Text.AlignRight - } - TextField { - id: ipv6PrefixLength - text: service.ipv6.prefixLength - validator: IntValidator { bottom: 0; top: 255 } - - onTextChanged: ipv6Changed = true - - onAccepted: if (text.length > 0) service.ipv6.prefixLength = parseInt(text) - } - } - } - } - } - - GroupBox { - flat: false - width: content.groupWidth - Layout.fillWidth: true - title: qsTr("Name servers") - - ColumnLayout { - anchors.fill: parent - Row { - spacing: Math.round(10 * Flat.FlatStyle.scaleFactor) - TextLabel { - text: qsTr("Address") - width: content.titleWidth - horizontalAlignment: Text.AlignRight - } - Column { - Repeater { - model: service.nameservers - - Row { - TextField { - text: edit - onTextChanged: { - nameserversChanged = true; - edit = text; - } - } - Button { - implicitWidth: height - text: "-" - onClicked: { - service.nameservers.remove(index); - nameserversChanged = true; - } - } - Button { - implicitWidth: height - visible: index==service.nameservers.count-1 - text: "+" - onClicked: service.nameservers.append("") - } - } - } - } - Row { - TextField { - id: nameServerEntryItem - visible: service.nameservers.count === 0 - text: "" - onAccepted: service.nameservers.append(text) - } - Button { - implicitWidth: height - visible: nameServerEntryItem.visible - text: "+" - onClicked: nameServerEntryItem.accepted() - } - } - } - } - } - - GroupBox { - flat: false - width: content.groupWidth - Layout.fillWidth: true - title: qsTr("Domains") - - ColumnLayout { - anchors.fill: parent - Row { - spacing: Math.round(10 * Flat.FlatStyle.scaleFactor) - TextLabel { - text: qsTr("Address") - width: content.titleWidth - horizontalAlignment: Text.AlignRight - } - Column { - Repeater { - model: service.domains - Row { - TextField { - text: edit - onTextChanged: { - root.domainsChanged = true; - edit = text; - } - } - Button { - implicitWidth: height - text: "-" - onClicked: { - service.domains.remove(index); - domainsChanged.domainsChanged = true; - } - } - Button { - implicitWidth: height - visible: index==service.domains.count-1 - text: "+" - onClicked: service.domains.append("") - } - } - } - } - Row { - TextField { - id: domainsEntryItem - visible: service.domains.count === 0 - text: "" - onAccepted: service.domains.append(text) - } - Button { - implicitWidth: height - visible: domainsEntryItem.visible - text: "+" - onClicked: domainsEntryItem.accepted() - } - } - } - } - } - - GroupBox { - flat: false - width: content.groupWidth - Layout.fillWidth: true - title: qsTr("Proxy Settings") - - ColumnLayout { - anchors.fill: parent - - ListModel { - id: proxyMethodModel - - ListElement { - text: qsTr("Direct") - method: NetworkSettingsProxy.Direct - } - ListElement { - text: qsTr("Auto") - method: NetworkSettingsProxy.Auto - } - ListElement { - text: qsTr("Manual") - method: NetworkSettingsProxy.Manual - } - } - - Row { - spacing: Math.round(10 * Flat.FlatStyle.scaleFactor) - TextLabel { - text: qsTr("Configuration") - width: content.titleWidth - horizontalAlignment: Text.AlignRight - } - - CustomCombobox { - id: proxyMethodSel - model: proxyMethodModel - Component.onCompleted: selectedIndex = service.proxy.method - onSelectedIndexChanged : { - proxyChanged = true; - service.proxy.method = model.get(selectedIndex).method; - } - delegate: FlatStyledDropdownDelegate { } - } - } - - Row { - spacing: Math.round(10 * Flat.FlatStyle.scaleFactor) - visible: service.proxy.method !== NetworkSettingsProxy.Direct - TextLabel { - text: service.proxy.method === NetworkSettingsProxy.Manual ? qsTr("Proxy address") : qsTr("Automatic configuration URL") - - width: content.titleWidth - horizontalAlignment: Text.AlignRight - } - TextField { - id: proxyUrl - text: service.proxy.url - onTextChanged: proxyChanged = true; - onAccepted: service.proxy.url = text; - } - } - Row { - spacing: Math.round(10 * Flat.FlatStyle.scaleFactor) - visible: service.proxy.method === NetworkSettingsProxy.Manual - - TextLabel { - text: qsTr("No proxy for") - width: content.titleWidth - horizontalAlignment: Text.AlignRight - } - - Column { - Repeater { - model: service.proxy.excludes - - Row { - TextField { - text: edit - onTextChanged: edit = text - } - Button { - implicitWidth: height - text: "-" - onClicked: { - service.proxy.excludes.remove(index); - proxyChanged = true; - } - } - Button { - implicitWidth: height - visible: index==service.proxy.excludes.count-1 - text: "+" - onClicked: service.proxy.excludes.append("") - } - } - } - } - Row { - TextField { - id: proxyEntryItem - visible: service.proxy.excludes.count === 0 - text: "" - onAccepted: service.proxy.excludes.append(text) - } - Button { - implicitWidth: height - visible: proxyEntryItem.visible - text: "+" - onClicked: proxyEntryItem.accepted() - } - } - } - } - } - } - } - - Button { - id: saveButton - anchors.right: parent.right - anchors.top: parent.top - anchors.margins: Math.round(10 * Flat.FlatStyle.scaleFactor) - anchors.rightMargin: Math.round(40 * Flat.FlatStyle.scaleFactor) - text: qsTr("Save") - - onClicked: { - if (ipv4Changed) { - ipv4Address.accepted(); - ipv4Mask.accepted(); - ipv4Gateway.accepted(); - service.setupIpv4Config(); - } - - if (ipv6Changed) { - ipv6Address.accepted(); - ipv6Gateway.accepted(); - ipv6PrefixLength.accepted(); - service.setupIpv6Config(); - } - - if (nameserversChanged) { - service.setupNameserversConfig(); - } - - if (domainsChanged) { - service.setupDomainsConfig(); - } - if (proxyChanged) { - proxyUrl.accepted(); - service.setupNetworkSettingsProxy(); - } - stackView.pop(); - } - } -} diff --git a/src/qtdevicesettings/networksettingsplugin/imports/NetworkSettings/IpAddressTextField.qml b/src/qtdevicesettings/networksettingsplugin/imports/NetworkSettings/IpAddressTextField.qml deleted file mode 100644 index 102d458..0000000 --- a/src/qtdevicesettings/networksettingsplugin/imports/NetworkSettings/IpAddressTextField.qml +++ /dev/null @@ -1,43 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2015 The Qt Company Ltd. -** Contact: http://www.qt.io/licensing/ -** -** This file is part of the Qt Device Utilities module of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:LGPL3$ -** 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 http://www.qt.io/terms-conditions. For further -** information use the contact form at http://www.qt.io/contact-us. -** -** GNU Lesser General Public License Usage -** Alternatively, this file may be used under the terms of the GNU Lesser -** General Public License version 3 as published by the Free Software -** Foundation and appearing in the file LICENSE.LGPLv3 included in the -** packaging of this file. Please review the following information to -** ensure the GNU Lesser General Public License version 3 requirements -** will be met: https://www.gnu.org/licenses/lgpl.html. -** -** GNU General Public License Usage -** Alternatively, this file may be used under the terms of the GNU -** General Public License version 2.0 or later as published by the Free -** Software Foundation and appearing in the file LICENSE.GPL included in -** the packaging of this file. Please review the following information to -** ensure the GNU General Public License version 2.0 requirements will be -** met: http://www.gnu.org/licenses/gpl-2.0.html. -** -** $QT_END_LICENSE$ -** -****************************************************************************/ -import QtQuick 2.5 -import QtQuick.Layouts 1.1 -import QtQuick.Controls 1.4 - -TextField { - Layout.fillWidth: true - validator: RegExpValidator { regExp: /^(\d|[1-9]\d|1\d\d|2([0-4]\d|5[0-5]))\.(\d|[1-9]\d|1\d\d|2([0-4]\d|5[0-5]))\.(\d|[1-9]\d|1\d\d|2([0-4]\d|5[0-5]))\.(\d|[1-9]\d|1\d\d|2([0-4]\d|5[0-5]))$/ } -} diff --git a/src/qtdevicesettings/networksettingsplugin/imports/NetworkSettings/NetworkDetails.qml b/src/qtdevicesettings/networksettingsplugin/imports/NetworkSettings/NetworkDetails.qml deleted file mode 100644 index 3e71be0..0000000 --- a/src/qtdevicesettings/networksettingsplugin/imports/NetworkSettings/NetworkDetails.qml +++ /dev/null @@ -1,42 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2015 The Qt Company Ltd. -** Contact: http://www.qt.io/licensing/ -** -** This file is part of the Qt Device Utilities module of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:LGPL3$ -** 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 http://www.qt.io/terms-conditions. For further -** information use the contact form at http://www.qt.io/contact-us. -** -** GNU Lesser General Public License Usage -** Alternatively, this file may be used under the terms of the GNU Lesser -** General Public License version 3 as published by the Free Software -** Foundation and appearing in the file LICENSE.LGPLv3 included in the -** packaging of this file. Please review the following information to -** ensure the GNU Lesser General Public License version 3 requirements -** will be met: https://www.gnu.org/licenses/lgpl.html. -** -** GNU General Public License Usage -** Alternatively, this file may be used under the terms of the GNU -** General Public License version 2.0 or later as published by the Free -** Software Foundation and appearing in the file LICENSE.GPL included in -** the packaging of this file. Please review the following information to -** ensure the GNU General Public License version 2.0 requirements will be -** met: http://www.gnu.org/licenses/gpl-2.0.html. -** -** $QT_END_LICENSE$ -** -****************************************************************************/ -import QtQuick 2.5 - -Loader { - id: root - property var selectedInterface:undefined - anchors.fill: parent -} diff --git a/src/qtdevicesettings/networksettingsplugin/imports/NetworkSettings/NetworkSettings.qml b/src/qtdevicesettings/networksettingsplugin/imports/NetworkSettings/NetworkSettings.qml deleted file mode 100644 index dcda5e0..0000000 --- a/src/qtdevicesettings/networksettingsplugin/imports/NetworkSettings/NetworkSettings.qml +++ /dev/null @@ -1,137 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2015 The Qt Company Ltd. -** Contact: http://www.qt.io/licensing/ -** -** This file is part of the Qt Device Utilities module of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:LGPL3$ -** 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 http://www.qt.io/terms-conditions. For further -** information use the contact form at http://www.qt.io/contact-us. -** -** GNU Lesser General Public License Usage -** Alternatively, this file may be used under the terms of the GNU Lesser -** General Public License version 3 as published by the Free Software -** Foundation and appearing in the file LICENSE.LGPLv3 included in the -** packaging of this file. Please review the following information to -** ensure the GNU Lesser General Public License version 3 requirements -** will be met: https://www.gnu.org/licenses/lgpl.html. -** -** GNU General Public License Usage -** Alternatively, this file may be used under the terms of the GNU -** General Public License version 2.0 or later as published by the Free -** Software Foundation and appearing in the file LICENSE.GPL included in -** the packaging of this file. Please review the following information to -** ensure the GNU General Public License version 2.0 requirements will be -** met: http://www.gnu.org/licenses/gpl-2.0.html. -** -** $QT_END_LICENSE$ -** -****************************************************************************/ -import QtQuick 2.5 -import QtQuick.Layouts 1.1 -import QtQuick.Controls 1.4 -import QtQuick.Controls.Styles.Flat 1.0 as Flat -import com.theqtcompany.settings.common 1.0 -import com.theqtcompany.settings.network 1.0 - -Item { - property string title: qsTr("Network Settings") - GroupBox { - id: networkSelect - anchors.fill: parent - anchors.rightMargin: parent.width * 0.618 - anchors.leftMargin: Math.round(20 * Flat.FlatStyle.scaleFactor) - anchors.topMargin: Math.round(20 * Flat.FlatStyle.scaleFactor) - title: qsTr("Select Connection") - - function stateToStr(serviceState) { - switch (serviceState) { - case NetworkService.Idle: - return qsTr("Idle"); - case NetworkService.Failure: - return qsTr("Failure"); - case NetworkService.Association: - return qsTr("Association"); - case NetworkService.Configuration: - return qsTr("Configuration"); - case NetworkService.Ready: - return qsTr("Ready"); - case NetworkService.Disconnect: - return qsTr("Disconnect"); - case NetworkService.Online: - return qsTr("Online"); - default: - return qsTr("Undefined"); - } - } - - ColumnLayout { - width: networkSelect.width - ExclusiveGroup { - id: exgroup - } - - Repeater { - model: NetworkSettingsManager.interfaces - - Button { - implicitWidth: networkSelect.width - Math.round(20 * Flat.FlatStyle.scaleFactor) - implicitHeight: Math.round(54 * Flat.FlatStyle.scaleFactor) - checkable: true - exclusiveGroup: exgroup - - Row { - anchors.fill: parent - spacing: Math.round(10 * Flat.FlatStyle.scaleFactor) - - Image { - id: typeId - height: parent.height - width: height - } - - Column { - height: Math.round(parent.height * 0.7) - spacing: 0 - anchors.verticalCenter: parent.verticalCenter - TextLabel { - text: name - } - - TextLabel { - text: networkSelect.stateToStr(modelData.state) - font.pixelSize: Math.round(12 * Flat.FlatStyle.scaleFactor) - } - - } - } - - onCheckedChanged: { - if (checked) { - networkDetails.selectedInterface = modelData - networkDetails.selectedInterface.scanServices() - if (type === NetworkSettingsType.Wired) { - networkDetails.source = "WiredSettings.qml"; - } - else if (type === NetworkSettingsType.Wifi) { - networkDetails.source = "WifiSettings.qml"; - } - } - } - } - } - } - } - - NetworkDetails { - id: networkDetails - anchors.fill: parent - anchors.leftMargin: networkSelect.width + Math.round(20 * Flat.FlatStyle.scaleFactor) - } -} diff --git a/src/qtdevicesettings/networksettingsplugin/imports/NetworkSettings/WifiSelectorDelegate.qml b/src/qtdevicesettings/networksettingsplugin/imports/NetworkSettings/WifiSelectorDelegate.qml deleted file mode 100644 index bc39ebd..0000000 --- a/src/qtdevicesettings/networksettingsplugin/imports/NetworkSettings/WifiSelectorDelegate.qml +++ /dev/null @@ -1,90 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2015 The Qt Company Ltd. -** Contact: http://www.qt.io/licensing/ -** -** This file is part of the Qt Device Utilities module of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:LGPL3$ -** 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 http://www.qt.io/terms-conditions. For further -** information use the contact form at http://www.qt.io/contact-us. -** -** GNU Lesser General Public License Usage -** Alternatively, this file may be used under the terms of the GNU Lesser -** General Public License version 3 as published by the Free Software -** Foundation and appearing in the file LICENSE.LGPLv3 included in the -** packaging of this file. Please review the following information to -** ensure the GNU Lesser General Public License version 3 requirements -** will be met: https://www.gnu.org/licenses/lgpl.html. -** -** GNU General Public License Usage -** Alternatively, this file may be used under the terms of the GNU -** General Public License version 2.0 or later as published by the Free -** Software Foundation and appearing in the file LICENSE.GPL included in -** the packaging of this file. Please review the following information to -** ensure the GNU General Public License version 2.0 requirements will be -** met: http://www.gnu.org/licenses/gpl-2.0.html. -** -** $QT_END_LICENSE$ -** -****************************************************************************/ -import QtQuick 2.5 -import QtQuick.Layouts 1.1 -import QtQuick.Controls 1.4 -import com.theqtcompany.settings.common 1.0 -import com.theqtcompany.settings.network 1.0 -import QtQuick.Controls.Styles.Flat 1.0 as Flat - -Item { - id: root - property bool checkable: true - property bool checked: false - property bool pressed: false - property bool connect: modelData["connected"] - signal clicked() - - MouseArea { - id: delegateButton - anchors.fill: parent - hoverEnabled: true - onPressed: root.pressed = true - onClicked: root.clicked() - onEntered: checked = !checked - - Rectangle { - anchors.fill: parent - color: root.checked ? Flat.FlatStyle.disabledColor : "transparent" - opacity: root.checked ? 0.15 : 1.0 - } - Rectangle { - color: Flat.FlatStyle.darkFrameColor - width: parent.width - height: Flat.FlatStyle.onePixel - anchors.bottom: parent.bottom - } - TextLabel { - id: text - anchors.left: parent.left - anchors.right: parent.right - anchors.top: parent.top - anchors.bottom: parent.bottom - anchors.margins: Math.round(10 * Flat.FlatStyle.scaleFactor) - horizontalAlignment: Text.AlignLeft - text: modelData["name"] - } - WifiSignalMonitor { - anchors.verticalCenter: parent.verticalCenter - anchors.right: parent.right - anchors.margins: Math.round(10 * Flat.FlatStyle.scaleFactor) - height: Math.round(parent.height * .8) - width: height - signalStrength: modelData["signalStrength"] - connected: modelData["connected"] - } - } -} diff --git a/src/qtdevicesettings/networksettingsplugin/imports/NetworkSettings/WifiSettings.qml b/src/qtdevicesettings/networksettingsplugin/imports/NetworkSettings/WifiSettings.qml deleted file mode 100644 index e7c2bda..0000000 --- a/src/qtdevicesettings/networksettingsplugin/imports/NetworkSettings/WifiSettings.qml +++ /dev/null @@ -1,190 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2015 The Qt Company Ltd. -** Contact: http://www.qt.io/licensing/ -** -** This file is part of the Qt Device Utilities module of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:LGPL3$ -** 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 http://www.qt.io/terms-conditions. For further -** information use the contact form at http://www.qt.io/contact-us. -** -** GNU Lesser General Public License Usage -** Alternatively, this file may be used under the terms of the GNU Lesser -** General Public License version 3 as published by the Free Software -** Foundation and appearing in the file LICENSE.LGPLv3 included in the -** packaging of this file. Please review the following information to -** ensure the GNU Lesser General Public License version 3 requirements -** will be met: https://www.gnu.org/licenses/lgpl.html. -** -** GNU General Public License Usage -** Alternatively, this file may be used under the terms of the GNU -** General Public License version 2.0 or later as published by the Free -** Software Foundation and appearing in the file LICENSE.GPL included in -** the packaging of this file. Please review the following information to -** ensure the GNU General Public License version 2.0 requirements will be -** met: http://www.gnu.org/licenses/gpl-2.0.html. -** -** $QT_END_LICENSE$ -** -****************************************************************************/ -import QtQuick 2.5 -import QtQuick.Layouts 1.1 -import QtQuick.Controls 1.4 -import QtQuick.Controls.Styles.Flat 1.0 as Flat -import com.theqtcompany.settings.common 1.0 -import com.theqtcompany.settings.network 1.0 - -Item { - id: root - anchors.fill: parent - anchors.margins: Math.round(20 * Flat.FlatStyle.scaleFactor) - - Component.onCompleted: { - NetworkSettingsManager.services.type = NetworkSettingsType.Wifi; - } - GroupBox { - id: content - title: qsTr("Wireless Settings") - anchors.fill: parent - Layout.fillWidth: true - flat: true - - ColumnLayout { - spacing: Math.round(20 * Flat.FlatStyle.scaleFactor) - width: parent.width - Row { - id: enableSwitch - width: parent.width - spacing: Math.round(10 * Flat.FlatStyle.scaleFactor) - TextLabel { - width: root.width*0.382 - horizontalAlignment: Text.AlignRight - text: selectedInterface.powered ? qsTr("Disable Wifi") : qsTr("Enable Wifi") - } - Switch { - checked: selectedInterface.powered - onCheckedChanged: selectedInterface.powered = checked - } - } - - Row { - spacing: Math.round(10 * Flat.FlatStyle.scaleFactor) - width: parent.width - - TextLabel { - id: labelText - text: qsTr("Selected network ") - width: content.width*0.382 - horizontalAlignment: Text.AlignRight - } - - CustomCombobox { - id: networkSelection - model: NetworkSettingsManager.services - visible: selectedInterface.powered - width: Math.round(200 * Flat.FlatStyle.scaleFactor) - textRole: "name" - onSelectedIndexChanged : if (selectedIndex >= 0) model.itemFromRow(selectedIndex).connectService(); - - delegate: WifiSelectorDelegate { - id: delegate - onConnectChanged: if (connect) networkSelection.setSelectIndexToVal(modelData.name, "name"); - } - } - } - - GroupBox { - id: connectView - title: qsTr("Enter a password") - flat: false - visible: false - ColumnLayout { - Row { - id: errorView - property alias text: text.text - visible: text.text !== "" - - spacing: Math.round(10 * Flat.FlatStyle.scaleFactor) - Image { - source: "../icons/Alert_yellow_1x.png" - } - Text { - id: text - color: "#face20" - text: "" - } - } - Row { - spacing: Math.round(10 * Flat.FlatStyle.scaleFactor) - visible: false - TextLabel { - text: qsTr("User name") - width: root.width*0.382 - horizontalAlignment: Text.AlignRight - } - TextField { - text: "" - inputMethodHints: Qt.ImhNoPredictiveText - } - } - Row { - spacing: Math.round(10 * Flat.FlatStyle.scaleFactor) - TextLabel { - text: qsTr("Password") - horizontalAlignment: Text.AlignRight - } - TextField { - id: password - text: "" - echoMode: TextInput.Password - inputMethodHints: Qt.ImhNoPredictiveText - } - } - Row { - spacing: Math.round(10 * Flat.FlatStyle.scaleFactor) - Button { - text: qsTr("Connect") - onClicked: { - connectView.visible = false - NetworkSettingsUserAgent.setUserCredentials("", password.text) - } - } - Button { - text: qsTr("Cancel") - onClicked:connectView.visible = false - } - } - } - } - - Button { - id: disconnect - text: qsTr("Disconnect") - visible: selectedInterface.state === NetworkSettingsState.Online || - selectedInterface.state === NetworkSettingsState.Ready - onClicked: { - console.log("disconnect"); - NetworkSettingsManager.services.itemFromRow(networkSelection.selectedIndex).disconnectService(); - networkSelection.selectedIndex = -1; - } - } - } - - Connections { - target: NetworkSettingsUserAgent - onShowUserCredentialsInput : { - connectView.visible = true - } - onError: { - errorView.visible = true - connectView.visible = true - } - } - } -} diff --git a/src/qtdevicesettings/networksettingsplugin/imports/NetworkSettings/WifiSignalMonitor.qml b/src/qtdevicesettings/networksettingsplugin/imports/NetworkSettings/WifiSignalMonitor.qml deleted file mode 100644 index 35d9e53..0000000 --- a/src/qtdevicesettings/networksettingsplugin/imports/NetworkSettings/WifiSignalMonitor.qml +++ /dev/null @@ -1,83 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2015 The Qt Company Ltd. -** Contact: http://www.qt.io/licensing/ -** -** This file is part of the Qt Device Utilities module of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:LGPL3$ -** 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 http://www.qt.io/terms-conditions. For further -** information use the contact form at http://www.qt.io/contact-us. -** -** GNU Lesser General Public License Usage -** Alternatively, this file may be used under the terms of the GNU Lesser -** General Public License version 3 as published by the Free Software -** Foundation and appearing in the file LICENSE.LGPLv3 included in the -** packaging of this file. Please review the following information to -** ensure the GNU Lesser General Public License version 3 requirements -** will be met: https://www.gnu.org/licenses/lgpl.html. -** -** GNU General Public License Usage -** Alternatively, this file may be used under the terms of the GNU -** General Public License version 2.0 or later as published by the Free -** Software Foundation and appearing in the file LICENSE.GPL included in -** the packaging of this file. Please review the following information to -** ensure the GNU General Public License version 2.0 requirements will be -** met: http://www.gnu.org/licenses/gpl-2.0.html. -** -** $QT_END_LICENSE$ -** -****************************************************************************/ -import QtQuick 2.5 - -Item { - id: root - - property bool scanning: false - property int signalStrength: 100 - property bool connected: false - - onSignalStrengthChanged: { - sprite.visible = true; - - if (signalStrength < 10) { - sprite.visible = false; - } - else if (signalStrength < 30) { - sprite.currentFrame = 0; - } - else if (signalStrength < 60) { - sprite.currentFrame = 1; - } - else if (signalStrength < 80) { - sprite.currentFrame = 2; - } - else if (signalStrength <= 100) { - sprite.currentFrame = 3; - } - } - - Image { - anchors.fill: parent - source: "Wifi_lightgray_2x.png" - } - - AnimatedSprite { - id: sprite - anchors.fill: parent - source: connected ? "WifiAnim_qt_2x.png" : "WifiAnim_black_2x.png" - frameDuration: 500 - frameCount: 4 - currentFrame: 3 - frameSync: false - frameWidth: 32 - frameHeight: 32 - loops: 40 - running: scanning - } -} diff --git a/src/qtdevicesettings/networksettingsplugin/imports/NetworkSettings/WiredSettings.qml b/src/qtdevicesettings/networksettingsplugin/imports/NetworkSettings/WiredSettings.qml deleted file mode 100644 index 4c07baa..0000000 --- a/src/qtdevicesettings/networksettingsplugin/imports/NetworkSettings/WiredSettings.qml +++ /dev/null @@ -1,207 +0,0 @@ -/**************************************************************************** -** -** Copyright (C) 2015 The Qt Company Ltd. -** Contact: http://www.qt.io/licensing/ -** -** This file is part of the Qt Device Utilities module of the Qt Toolkit. -** -** $QT_BEGIN_LICENSE:LGPL3$ -** 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 http://www.qt.io/terms-conditions. For further -** information use the contact form at http://www.qt.io/contact-us. -** -** GNU Lesser General Public License Usage -** Alternatively, this file may be used under the terms of the GNU Lesser -** General Public License version 3 as published by the Free Software -** Foundation and appearing in the file LICENSE.LGPLv3 included in the -** packaging of this file. Please review the following information to -** ensure the GNU Lesser General Public License version 3 requirements -** will be met: https://www.gnu.org/licenses/lgpl.html. -** -** GNU General Public License Usage -** Alternatively, this file may be used under the terms of the GNU -** General Public License version 2.0 or later as published by the Free -** Software Foundation and appearing in the file LICENSE.GPL included in -** the packaging of this file. Please review the following information to -** ensure the GNU General Public License version 2.0 requirements will be -** met: http://www.gnu.org/licenses/gpl-2.0.html. -** -** $QT_END_LICENSE$ -** -****************************************************************************/ -import QtQuick 2.5 -import QtQuick.Layouts 1.1 -import QtQuick.Controls 1.4 -import QtQuick.Controls.Styles.Flat 1.0 as Flat -import com.theqtcompany.settings.common 1.0 -import com.theqtcompany.settings.network 1.0 - -Item { - id: root - anchors.fill: parent - anchors.margins: Math.round(20 * Flat.FlatStyle.scaleFactor) - property bool editMode: false - property var service: null - property string title: qsTr("Network"); - - Component.onCompleted: { - NetworkSettingsManager.services.type = NetworkSettingsType.Wired; - root.service = NetworkSettingsManager.services.itemFromRow(0); - } - - ListModel { - id: methodsModel - - ListElement { - text: "DHCP" - method: NetworkSettingsIPv4.Dhcp - } - ListElement { - text: "Manual" - method: NetworkSettingsIPv4.Manual - } - ListElement { - text: "Off" - method: NetworkSettingsIPv4.Off - } - } - - GroupBox { - title: qsTr("Ethernet Connection") - anchors.fill: parent - Layout.fillWidth: true - flat: true - Column { - spacing: Math.round(10 * Flat.FlatStyle.scaleFactor) - Row { - TextLabel { - text: qsTr("Connection method: ") - } - - CustomCombobox { - id: ipv4Method - model: methodsModel - Component.onCompleted: selectedIndex = service.ipv4.method - onSelectedIndexChanged : { - if (model.get(selectedIndex).method !== NetworkSettingsIPv4.Dhcp) { - service.ipv4.method = model.get(selectedIndex).method; - editMode = true; - } - else { - //Enable DHCP - if (service.ipv4.method !== model.get(selectedIndex).method) { - service.ipv4.method = model.get(selectedIndex).method; - service.setupIpv4Config(); - } - - editMode = false; - } - } - delegate: FlatStyledDropdownDelegate { } - } - } - - Row { - visible: service.ipv4.method !== NetworkSettingsIPv4.Off - TextLabel { - text: qsTr("IP Address: ") - } - TextLabel { - text: service.ipv4.address - visible: !editMode - } - IpAddressTextField { - id: ipv4Address - placeholderText: service.ipv4.address - visible: editMode - onAccepted: if (text.length > 0) service.ipv4.address = text - } - } - - Row { - visible: service.ipv4.method !== NetworkSettingsIPv4.Off - TextLabel { - text: qsTr("Mask: ") - } - TextLabel { - text: service.ipv4.mask - visible: !editMode - } - IpAddressTextField { - id: ipv4Mask - placeholderText: service.ipv4.mask - visible: editMode - onAccepted: if (text.length > 0) service.ipv4.mask = text - } - } - - Row { - visible: service.ipv4.method !== NetworkSettingsIPv4.Off - TextLabel { - text: qsTr("Router: ") - } - TextLabel { - text: service.ipv4.gateway - visible: !editMode - } - IpAddressTextField { - id: ipv4Gateway - placeholderText: service.ipv4.gateway - visible: editMode - onAccepted: if (text.length > 0) service.ipv4.gateway = text - } - } - - Row { - visible: service.ipv4.method !== NetworkSettingsIPv4.Off - TextLabel { - text: qsTr("DNS server: ") - } - Row { - spacing: Math.round(10 * Flat.FlatStyle.scaleFactor) - Repeater { - model: service.nameservers - - TextLabel { - text: display - } - } - } - } - - Row { - Button { - text: qsTr("Save") - visible: editMode - - onClicked: { - ipv4Address.accepted(); - ipv4Mask.accepted(); - ipv4Gateway.accepted(); - service.setupIpv4Config(); - editMode = false; - } - } - Button { - text: qsTr("Cancel") - visible: editMode - onClicked: { - editMode = false; - methodSelection.currentIndex = service.ipv4.method - } - } - } - Button { - text: qsTr("Edit") - visible: !editMode - - onClicked: stackView.push({item: Qt.resolvedUrl("EditWiredSettings.qml"), properties: {service: root.service}}); - } - } - } -} - -- cgit v1.2.3