Settings stored persistently using QSettings.
[openvpnui.git] / qml / pages / ConfigurePage.qml
index b6ad3da..1692d1e 100644 (file)
@@ -1,6 +1,6 @@
 /*
-  Copyright (C) 2013 Jolla Ltd.
-  Contact: Thomas Perl <thomas.perl@jollamobile.com>
+  Copyright (C) 2014 David Llewellyn-Jones
+  Contact: David Llewellyn-Jones <david@flypig.co.uk>
   All rights reserved.
 
   You may use this file under the terms of BSD license as follows:
   ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
   (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
   SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
+
+  Built using the standard template from Jolla
+  Copyright (C) 2013 Jolla Ltd.
+  Contact: Thomas Perl <thomas.perl@jollamobile.com>
 */
 
 import QtQuick 2.0
 import Sailfish.Silica 1.0
 
-
 Dialog {
     id: configurePage
     canAccept: true
     acceptDestinationAction: PageStackAction.Pop
 
+    Connections {
+        target:VpnControl
+    }
+
     SilicaFlickable {
         // ComboBox requires a flickable ancestor
         width: parent.width
@@ -60,6 +67,7 @@ Dialog {
             TextField {
                 id: configureAddress
                 width: parent.width
+                text: VpnControl.server
                 label: "Server address"
                 placeholderText: "Server address"
                 focus: true
@@ -69,6 +77,7 @@ Dialog {
             TextField {
                 id: configurePort
                 width: parent.width
+                text: VpnControl.port;
                 inputMethodHints: Qt.ImhFormattedNumbersOnly
                 label: "Port number"
                 placeholderText: "Port number"
@@ -78,22 +87,26 @@ Dialog {
             TextSwitch {
                 id: configureCompression
                 text: "Use Compression"
+                checked: VpnControl.compressed
+                automaticCheck: true
             }
 
             TextSwitch {
                 id: configureTLS
                 text: "Use TLS authentication"
+                checked: VpnControl.useTLS
                 onCheckedChanged: {
                     configureTLSdirection.enabled = checked
                     configureTLSinfo.visible = checked
                 }
+                automaticCheck: true
             }
             // set currentIndex to change the selected value
             ComboBox {
                 id: configureTLSdirection
                 width: parent.width
                 label: "TLS direction"
-                currentIndex: 1
+                currentIndex: VpnControl.tlsDirection;
                 enabled: false
 
                 menu: ContextMenu {
@@ -102,6 +115,13 @@ Dialog {
                 }
             }
 
+            Button {
+                id: connect
+                text: "Select key"
+                enabled: true
+                onClicked: VpnControl.vpnConnect()
+            }
+
             Label {
                 text: "Place key files on SD card:"
                 color: Theme.secondaryColor
@@ -139,6 +159,12 @@ Dialog {
     }
 
     onAccepted: {
+        VpnControl.setServer(configureAddress.text)
+        VpnControl.setPort(configurePort.text)
+        VpnControl.setCompressed(configureCompression.checked)
+        VpnControl.setUseTLS(configureTLS.checked)
+        VpnControl.setTlsDirection(configureTLSdirection.currentIndex)
+        VpnControl.updateConfiguration()
     }
 
 }