aboutsummaryrefslogtreecommitdiff
path: root/qml/ConfigurePage.qml
diff options
context:
space:
mode:
Diffstat (limited to 'qml/ConfigurePage.qml')
-rw-r--r--qml/ConfigurePage.qml153
1 files changed, 101 insertions, 52 deletions
diff --git a/qml/ConfigurePage.qml b/qml/ConfigurePage.qml
index 1cddb3f..e15807d 100644
--- a/qml/ConfigurePage.qml
+++ b/qml/ConfigurePage.qml
@@ -1,19 +1,18 @@
+import DeltaChat 1.0
+import QtQml.Models 2.1
import QtQuick 2.12
import QtQuick.Controls 2.12
-import QtQuick.Layouts 1.12
-import QtQml.Models 2.1
import QtQuick.Dialogs 1.3
+import QtQuick.Layouts 1.12
import org.kde.kirigami 2.12 as Kirigami
-import DeltaChat 1.0
-
Kirigami.ScrollablePage {
- title: qsTr("Configure account")
id: root
required property DcContext context
required property DcAccountsEventEmitter eventEmitter
+ title: qsTr("Configure account")
contextualActions: [
Kirigami.Action {
text: "Import backup"
@@ -28,11 +27,11 @@ Kirigami.ScrollablePage {
Kirigami.FormData.label: "Address: "
}
+
TextField {
id: passwordField
Kirigami.FormData.label: "Password: "
-
echoMode: TextInput.PasswordEchoOnEdit
}
@@ -40,16 +39,19 @@ Kirigami.ScrollablePage {
Kirigami.FormData.isSection: true
Kirigami.FormData.label: "Advanced settings"
}
+
TextField {
id: imapLoginField
Kirigami.FormData.label: "IMAP login: "
}
+
TextField {
id: imapHostnameField
Kirigami.FormData.label: "IMAP server: "
}
+
TextField {
id: imapPortField
@@ -58,17 +60,33 @@ Kirigami.ScrollablePage {
ListModel {
id: securityModel
- ListElement { text: "Automatic"; value: 0 }
- ListElement { text: "SSL/TLS"; value: 1 }
- ListElement { text: "StartTLS"; value: 2 }
- ListElement { text: "Off"; value: 3 }
+
+ ListElement {
+ text: "Automatic"
+ value: 0
+ }
+
+ ListElement {
+ text: "SSL/TLS"
+ value: 1
+ }
+
+ ListElement {
+ text: "StartTLS"
+ value: 2
+ }
+
+ ListElement {
+ text: "Off"
+ value: 3
+ }
+
}
ComboBox {
id: imapSecurity
Kirigami.FormData.label: "IMAP security: "
-
model: securityModel
textRole: "text"
}
@@ -78,28 +96,30 @@ Kirigami.ScrollablePage {
Kirigami.FormData.label: "SMTP login: "
}
+
TextField {
id: smtpPasswordField
Kirigami.FormData.label: "SMTP password: "
-
echoMode: TextInput.PasswordEchoOnEdit
}
+
TextField {
id: smtpHostnameField
Kirigami.FormData.label: "SMTP server: "
}
+
TextField {
id: smtpPortField
Kirigami.FormData.label: "SMTP port: "
}
+
ComboBox {
id: smtpSecurity
Kirigami.FormData.label: "SMTP security: "
-
model: securityModel
textRole: "text"
}
@@ -108,99 +128,128 @@ Kirigami.ScrollablePage {
id: certificateChecks
Kirigami.FormData.label: "Certificate checks: "
+ textRole: "text"
model: ListModel {
id: certificateChecksModel
- ListElement { text: "Automatic"; value: 0 }
- ListElement { text: "Strict"; value: 1 }
- ListElement { text: "Accept invalid certificates"; value: 2 }
+
+ ListElement {
+ text: "Automatic"
+ value: 0
+ }
+
+ ListElement {
+ text: "Strict"
+ value: 1
+ }
+
+ ListElement {
+ text: "Accept invalid certificates"
+ value: 2
+ }
+
}
- textRole: "text"
+
}
Switch {
id: socks5Enabled
+
text: "SOCKS5 enabled"
}
+
TextField {
id: socks5Host
+
Kirigami.FormData.label: "SOCKS5 host: "
}
+
TextField {
id: socks5Port
+
Kirigami.FormData.label: "SOCKS5 port: "
}
+
TextField {
id: socks5Username
+
Kirigami.FormData.label: "SOCKS5 username: "
}
+
TextField {
id: socks5Password
+
Kirigami.FormData.label: "Password: "
echoMode: TextInput.PasswordEchoOnEdit
}
ProgressBar {
id: progressBar
- value: 0.0
+
+ value: 0
}
+
Button {
text: "Login"
onClicked: {
- console.log("Login")
- root.context.stopIo()
- root.context.setConfig("addr", addressField.text)
- root.context.setConfig("mail_pw", passwordField.text)
- root.context.setConfig("mail_user", imapLoginField.text)
- root.context.setConfig("mail_server", imapHostnameField.text)
- root.context.setConfig("mail_port", imapPortField.text)
- root.context.setConfig("mail_security", securityModel.get(imapSecurity.currentIndex).value)
- root.context.setConfig("send_user", smtpLoginField.text)
- root.context.setConfig("send_pw", smtpPasswordField.text)
- root.context.setConfig("send_server", smtpHostnameField.text)
- root.context.setConfig("send_port", smtpPortField.text)
- root.context.setConfig("send_security", securityModel.get(smtpSecurity.currentIndex).value)
+ console.log("Login");
+ root.context.stopIo();
+ root.context.setConfig("addr", addressField.text);
+ root.context.setConfig("mail_pw", passwordField.text);
+ root.context.setConfig("mail_user", imapLoginField.text);
+ root.context.setConfig("mail_server", imapHostnameField.text);
+ root.context.setConfig("mail_port", imapPortField.text);
+ root.context.setConfig("mail_security", securityModel.get(imapSecurity.currentIndex).value);
+ root.context.setConfig("send_user", smtpLoginField.text);
+ root.context.setConfig("send_pw", smtpPasswordField.text);
+ root.context.setConfig("send_server", smtpHostnameField.text);
+ root.context.setConfig("send_port", smtpPortField.text);
+ root.context.setConfig("send_security", securityModel.get(smtpSecurity.currentIndex).value);
let certificate_checks = certificateChecks.model.get(certificateChecks.currentIndex).value;
- root.context.setConfig("imap_certificate_checks", certificate_checks)
- root.context.setConfig("smtp_certificate_checks", certificate_checks)
- root.context.setConfig("socks5_enabled", socks5Enabled.checked ? "1" : "0")
- root.context.setConfig("socks5_host", socks5Host.text)
- root.context.setConfig("socks5_port", socks5Port.text)
- root.context.setConfig("socks5_user", socks5Username.text)
- root.context.setConfig("socks5_password", socks5Password.text)
- root.context.configure()
+ root.context.setConfig("imap_certificate_checks", certificate_checks);
+ root.context.setConfig("smtp_certificate_checks", certificate_checks);
+ root.context.setConfig("socks5_enabled", socks5Enabled.checked ? "1" : "0");
+ root.context.setConfig("socks5_host", socks5Host.text);
+ root.context.setConfig("socks5_port", socks5Port.text);
+ root.context.setConfig("socks5_user", socks5Username.text);
+ root.context.setConfig("socks5_password", socks5Password.text);
+ root.context.configure();
}
}
FileDialog {
id: importBackupDialog
+
title: "Import backup"
folder: shortcuts.home
onAccepted: {
- var url = importBackupDialog.fileUrl.toString()
+ var url = importBackupDialog.fileUrl.toString();
if (url.startsWith("file://")) {
- var filename = url.substring(7)
- console.log("Importing " + filename)
- root.context.importBackup(filename)
+ var filename = url.substring(7);
+ console.log("Importing " + filename);
+ root.context.importBackup(filename);
}
}
}
Connections {
- target: root.eventEmitter
function onConfigureProgress(accountId, progress, comment) {
- progressBar.value = progress / 1000.0
- if (progress == 1000) {
- root.context.startIo()
- }
+ progressBar.value = progress / 1000;
+ if (progress == 1000)
+ root.context.startIo();
+
}
function onImexProgress(accountId, progress) {
- progressBar.value = progress / 1000.0
- if (progress == 1000) {
- root.context.startIo()
- }
+ progressBar.value = progress / 1000;
+ if (progress == 1000)
+ root.context.startIo();
+
}
+
+ target: root.eventEmitter
}
+
}
+
}