Dekko
Loading...
Searching...
No Matches
EncryptionSelector.qml
1import QtQuick 2.4
2import Lomiri.Components 1.3
3import Lomiri.Components.ListItems 1.3 as AreTheseStillValid
4import Dekko.Mail.Accounts 1.0
6Item {
7
8 property var selectedMethod: encryptionMethodModel.count ? encryptionMethodModel.get(selectedIndex).method : AccountConfig.None
9 property alias selectedIndex: cryptSelector.selectedIndex
10 height: col.height
11 anchors {
12 left: parent.left
13 right: parent.right
14 }
15
16 function setEncryptionType(type) {
17 encryptionMethodModel.loadCryptModel()
18 var idx = 0;
19 switch(type) {
20 case AccountConfig.None:
21 break
22 case AccountConfig.STARTTLS:
23 idx = 1
24 break
25 case AccountConfig.SSL:
26 idx = 2
27 break
28 }
29 cryptSelector.selectedIndex = idx
30 }
31
32 Column {
33 id: col
34 anchors {
35 left: parent.left
36 top: parent.top
37 right: parent.right
38 }
39 spacing: units.gu(1)
40
41 Label {
42 anchors {
43 left: parent.left
44 right: parent.right
45 }
46 text: qsTr("Encryption")
47 }
48 AreTheseStillValid.ItemSelector {
49 id: cryptSelector
50 objectName: "encryptionSelector"
51
52 model: encryptionMethodModel
53 delegate: OptionSelectorDelegate {
54 text: model.description
55 }
56
57 ListModel {
58 id: encryptionMethodModel
59
60 function loadCryptModel() {
61 encryptionMethodModel.append({ "description": qsTr("No encryption"), "method": AccountConfig.None })
62 encryptionMethodModel.append({ "description": qsTr("Use encryption (STARTTLS)"), "method": AccountConfig.STARTTLS })
63 encryptionMethodModel.append({ "description": qsTr("Force encryption (SSL/TLS)"), "method": AccountConfig.SSL })
64 }
65 }
66// Component.onCompleted: encryptionMethodModel.loadCryptModel()
67 }
68 }
69}
70
71