diff options
author | Kalle Viironen <kalle.viironen@digia.com> | 2014-04-15 15:10:27 +0300 |
---|---|---|
committer | Kalle Viironen <kalle.viironen@digia.com> | 2014-04-15 15:10:38 +0300 |
commit | d757a8ee2d86c3f4b694f8fdff5defa7b0dbab75 (patch) | |
tree | 27b30b37643ebfe4615d7eb645b72cd42a4316cb /basicsuite/launchersettings/NetworkList.qml | |
parent | 80c1335ec02c038329603486315d06d7bddc1326 (diff) | |
parent | 63d998641077d9074281f402ae7becb41c037a2c (diff) |
Merge branch 'stable' into releaseQtEE_v2.1.0
* stable: (21 commits)
Revert "Show PieMenu in enterprise controls list view."
Show PieMenu in enterprise controls list view.
Fix PieMenu not showing in enterprise-gallery launcher demo.
Update enterprise controls demos to version 1.1
Revert "Add input field for decimal numbers"
Doc: Update documentation version to 2.1.0
[launchersettings] Fix UI scaling
[about-b2qt] Use Screen element for setting width/height
Change default font for demos to support arabic numbers
[launchersettings] Small fixes in wifi settings section
sensorexplorer: Use identifier field when description is empty
Make sensors demo not rely on measurement errors
Doc: Update screenshot for the textinput demo
Remove incorrect assingment of QUrl to bool
qt5-everywhere: update working radio playlist
Show launchersettings and sensors demos in QtCreator
Doc: Switch to use the global Qt template for example docs
Updated preview_l.jpg for textinput demo
Rearrange the order of demos in the launcher
Merge updates from upstream into keyboard example
...
Change-Id: I83f65cb50cf53609d9bb131c94c3d020882a2ccd
Diffstat (limited to 'basicsuite/launchersettings/NetworkList.qml')
-rw-r--r-- | basicsuite/launchersettings/NetworkList.qml | 73 |
1 files changed, 40 insertions, 33 deletions
diff --git a/basicsuite/launchersettings/NetworkList.qml b/basicsuite/launchersettings/NetworkList.qml index b733eb6..204e4e2 100644 --- a/basicsuite/launchersettings/NetworkList.qml +++ b/basicsuite/launchersettings/NetworkList.qml @@ -42,9 +42,6 @@ import QtQuick 2.0 import QtQuick.Controls 1.0 import Qt.labs.wifi 0.1 -// ### TODO -// - only 1 delagate open at the time - Item { Component { id: listDelegate @@ -52,17 +49,28 @@ Item { id: delegateBackground property bool expanded: false property bool connected: wifiManager.connectedSSID == network.ssid - property variant networkModel: model - property alias ssidText: ssidLabel.text + property bool actingNetwork: networkView.currentNetworkSsid == network.ssid height: (expanded ? (connected ? 180: 260) : 70) + width: parent.width clip: true // ### fixme color: "#5C5C5C" border.color: "black" border.width: 1 - Behavior on height { NumberAnimation { duration: 500; easing.type: Easing.InOutCubic } } + onExpandedChanged: { + if (expanded) { + if (networkView.hasExpandedDelegate) + networkView.expandedDelegate.expanded = false + networkView.expandedDelegate = this + } else { + networkView.expandedDelegate = 0 + } + } - width: parent.width + Component.onDestruction: if (expanded) networkView.expandedDelegate = 0 + onHeightChanged: if (expanded) networkView.positionViewAtIndex(index, ListView.Contain) + + Behavior on height { NumberAnimation { duration: 500; easing.type: Easing.InOutCubic } } Text { id: ssidLabel @@ -72,7 +80,7 @@ Item { font.pixelSize: 20 font.bold: true color: "#E6E6E6" - text: network.ssid + (connected ? " (connected)" : ""); + text: network.ssid + (actingNetwork ? networkView.networkStateText : ""); } Text { @@ -113,9 +121,7 @@ Item { MouseArea { anchors.fill: parent - onClicked: { - parent.expanded = !expanded - } + onClicked: parent.expanded = !expanded } TextField { @@ -134,15 +140,8 @@ Item { y: passwordInput.visible ? passwordInput.y + passwordInput.height + 20 : passwordInput.y anchors.horizontalCenter: parent.horizontalCenter text: connected ? "Disconnect" : "Connect" - onClicked: { - networkView.currentIndex = index - if (connected) { - wifiManager.disconnect() - } else { - networkView.activeNetwork = networkView.currentItem - wifiManager.connect(network, passwordInput.text); - } - } + onClicked: connected ? wifiManager.disconnect() + : wifiManager.connect(network, passwordInput.text); } } } @@ -153,20 +152,28 @@ Item { model: wifiManager.networks delegate: listDelegate - property variant activeNetwork: "" - property variant networkState: wifiManager.networkState + property string networkStateText: "" + property string currentNetworkSsid: "" + property variant expandedDelegate: 0 + property bool hasExpandedDelegate: expandedDelegate != 0 - onNetworkStateChanged: { - if (activeNetwork) { - var ssid = activeNetwork.networkModel.ssid - var state = "" - if (networkState == WifiManager.ObtainingIPAddress) - state = " (obtaining ip..)" - else if (networkState == WifiManager.DhcpRequestFailed) - state = " (dhcp request failed)" - else if (networkState == WifiManager.Connected) - state = " (connected)" - activeNetwork.ssidText = ssid + state + Connections { + target: wifiManager + onNetworkStateChanged: { + networkView.currentNetworkSsid = network.ssid + var networkStateText = "" + var state = wifiManager.networkState + if (state == WifiManager.ObtainingIPAddress) + networkStateText = " (obtaining ip..)" + else if (state == WifiManager.DhcpRequestFailed) + networkStateText = " (dhcp request failed)" + else if (state == WifiManager.Connected) + networkStateText = " (connected)" + else if (state == WifiManager.Authenticating) + networkStateText = " (authenticating..)" + else if (state == WifiManager.HandshakeFailed) + networkStateText = " (wrong password)" + networkView.networkStateText = networkStateText } } } |