diff options
author | zheng_wenlong <wenlong_zheng@nexty-ele.com> | 2019-04-08 18:43:05 +0900 |
---|---|---|
committer | zheng_wenlong <wenlong_zheng@nexty-ele.com> | 2019-04-10 09:59:55 +0900 |
commit | 238076ffff13356c620a7834e25537d4a41e97a6 (patch) | |
tree | 73a1a1c9cebc6da145d7baaac1eaec7329ec4f2a /app/wifi/Wifi.qml |
Add demo3 settings source code for cluster mode.icefish_8.99.5icefish_8.99.4icefish_8.99.3icefish_8.99.2icefish_8.99.1icefish/8.99.5icefish/8.99.4icefish/8.99.3icefish/8.99.2icefish/8.99.1halibut_8.0.6halibut_8.0.5halibut_8.0.4halibut_8.0.3halibut_8.0.2halibut_8.0.1halibut_8.0.0halibut_7.99.3halibut_7.99.2halibut_7.99.1halibut/8.0.6halibut/8.0.5halibut/8.0.4halibut/8.0.3halibut/8.0.2halibut/8.0.1halibut/8.0.0halibut/7.99.3halibut/7.99.2halibut/7.99.18.99.58.99.48.99.38.99.28.99.18.0.68.0.58.0.48.0.38.0.28.0.18.0.07.99.37.99.27.99.1halibut
Add demo3 settings source code for cluster mode.
[Patch Set 2] Update LICENSE file.
Change-Id: I586a211bb55e5017de62e36edd0bbba6968de1b8
BUG-AGL: SPEC-2261
Signed-off-by: zheng_wenlong <wenlong_zheng@nexty-ele.com>
Diffstat (limited to 'app/wifi/Wifi.qml')
-rw-r--r-- | app/wifi/Wifi.qml | 175 |
1 files changed, 175 insertions, 0 deletions
diff --git a/app/wifi/Wifi.qml b/app/wifi/Wifi.qml new file mode 100644 index 0000000..85e8b60 --- /dev/null +++ b/app/wifi/Wifi.qml @@ -0,0 +1,175 @@ +/* + * Copyright (C) 2016 The Qt Company Ltd. + * Copyright (C) 2018 Konsulko Group + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +import QtQuick 2.6 +import QtQuick.Layouts 1.1 +import QtQuick.Controls 2.0 +import AGL.Demo.Controls 1.0 +import ".." + +SettingPage { + id: root + icon: '/wifi/images/HMI_Settings_WifiIcon.svg' + title: 'Wifi' + checkable: true + checked: network.wifiEnabled + readonly property bool isWifi: true + + onCheckedChanged: { + network.power(checked) + } + + Component { + id: wifiDevice + MouseArea { + height: 120 + width: ListView.view.width + Image { + anchors.left: parent.left + id: icon + source: { + var svg + if (strength < 30) + svg = "1Bar" + else if (strength < 50) + svg = "2Bars" + else if (strength < 70) + svg = "3Bars" + else + svg = "Full" + if (security === "Open") { + return 'images/HMI_Settings_Wifi_%1.svg'.arg(svg) + } else { + return 'images/HMI_Settings_Wifi_Locked_%1.svg'.arg(svg) + } + } + } + Column { + anchors.left: icon.right + anchors.leftMargin: 5 + Label { + id: networkNameText + text: ssid + color: '#66FF99' + font.pixelSize: 48 + font.bold: sstate === "ready" + || sstate === "online" + } + Label { + visible: sstate === "ready" + || sstate === "online" + text: "connected, " + address + font.pixelSize: 18 + color: "white" + } + } + + onClicked: { + if ((sstate === "ready") || sstate === "online") { + console.log("Disconnecting from ", ssid, " (", service, ")") + networkNameText.font.italic = 1 + network.disconnect(service) + } else { + console.log("Connecting to ", ssid, " (", service, ")") + networkNameText.font.italic = 1 + network.connect(service) + } + } + + Image { + source: '../images/HMI_Settings_DividingLine.svg' + anchors.horizontalCenter: parent.horizontalCenter + anchors.top: parent.top + anchors.topMargin: -15 + visible: model.index > 0 + } + } + } + + ListView { + id: view + anchors.fill: parent + anchors.margins: 100 + model: WifiNetworkModel + delegate: wifiDevice + clip: true + } + + MouseArea { + id: dialog + anchors.fill: parent + visible: false + z: 1 + onVisibleChanged: { + if (visible) { + password.forceActiveFocus() + } else { + password.text = '' + } + } + + ColumnLayout { + anchors.fill: parent + Item { + Layout.fillWidth: true + Layout.fillHeight: true + Layout.preferredHeight: 1 + Rectangle { + anchors.fill: parent + color: 'black' + opacity: 0.5 + } + RowLayout { + anchors.centerIn: parent + TextField { + id: password + property int reqid: 0 + placeholderText: 'Password' + } + Button { + text: 'Connect' + highlighted: true + onClicked: { + network.input(password.reqid, password.text) + dialog.visible = false + } + } + Button { + text: 'Cancel' + onClicked: dialog.visible = false + } + } + } + + Keyboard { + id: keyboard + Layout.fillWidth: true + Layout.fillHeight: true + Layout.preferredHeight: 1 + target: activeFocusControl + } + } + } + + Connections { + target: network + onInputRequest: { + password.reqid = id + dialog.visible = true + } + } +} |