diff options
author | Christian Mollekopf <chrigi_1@fastmail.fm> | 2016-03-12 12:30:08 +0100 |
---|---|---|
committer | Christian Mollekopf <chrigi_1@fastmail.fm> | 2016-03-12 12:30:08 +0100 |
commit | 680fd8bed732fcafd98ae1c410ba5473e38d18c1 (patch) | |
tree | b2d4f24fb1ddf4866ad42de64c7e32f9912436ad | |
parent | 9510a3b6a932888f74138d3adb790fa81040a7e1 (diff) | |
download | kube-680fd8bed732fcafd98ae1c410ba5473e38d18c1.tar.gz kube-680fd8bed732fcafd98ae1c410ba5473e38d18c1.zip |
Dynamically create components instead of just hiding them
-rw-r--r-- | components/mail/contents/ui/main.qml | 31 | ||||
-rw-r--r-- | components/package/contents/ui/FocusComposer.qml | 6 | ||||
-rw-r--r-- | components/package/contents/ui/Settings.qml | 5 |
3 files changed, 20 insertions, 22 deletions
diff --git a/components/mail/contents/ui/main.qml b/components/mail/contents/ui/main.qml index d864f2fc..83bd85b2 100644 --- a/components/mail/contents/ui/main.qml +++ b/components/mail/contents/ui/main.qml | |||
@@ -74,7 +74,14 @@ ApplicationWindow { | |||
74 | height: parent.height | 74 | height: parent.height |
75 | text: "Settings" | 75 | text: "Settings" |
76 | onClicked: { | 76 | onClicked: { |
77 | settings.visible = true | 77 | settingsComponent.createObject(app) |
78 | } | ||
79 | Component { | ||
80 | id: settingsComponent | ||
81 | KubeComponents.Settings { | ||
82 | id: settings | ||
83 | anchors.fill: parent | ||
84 | } | ||
78 | } | 85 | } |
79 | } | 86 | } |
80 | 87 | ||
@@ -83,7 +90,7 @@ ApplicationWindow { | |||
83 | iconName: "mail-message-new" | 90 | iconName: "mail-message-new" |
84 | text: "Compose" | 91 | text: "Compose" |
85 | onClicked: { | 92 | onClicked: { |
86 | composer.visible = true | 93 | composerComponent.createObject(app) |
87 | } | 94 | } |
88 | } | 95 | } |
89 | 96 | ||
@@ -92,8 +99,15 @@ ApplicationWindow { | |||
92 | iconName: "mail-message-reply" | 99 | iconName: "mail-message-reply" |
93 | text: "Reply" | 100 | text: "Reply" |
94 | onClicked: { | 101 | onClicked: { |
102 | composerComponent.createObject(app) | ||
95 | composer.originalMessage = mailListView.currentMail | 103 | composer.originalMessage = mailListView.currentMail |
96 | composer.visible = true | 104 | } |
105 | } | ||
106 | Component { | ||
107 | id: composerComponent | ||
108 | KubeComponents.FocusComposer { | ||
109 | id: composer | ||
110 | anchors.fill: parent | ||
97 | } | 111 | } |
98 | } | 112 | } |
99 | 113 | ||
@@ -177,16 +191,5 @@ ApplicationWindow { | |||
177 | 191 | ||
178 | } | 192 | } |
179 | 193 | ||
180 | KubeComponents.Settings { | ||
181 | id: settings | ||
182 | |||
183 | anchors.fill: parent | ||
184 | } | ||
185 | |||
186 | KubeComponents.FocusComposer { | ||
187 | id: composer | ||
188 | |||
189 | anchors.fill: parent | ||
190 | } | ||
191 | } | 194 | } |
192 | 195 | ||
diff --git a/components/package/contents/ui/FocusComposer.qml b/components/package/contents/ui/FocusComposer.qml index ab04dbed..1cd3cb32 100644 --- a/components/package/contents/ui/FocusComposer.qml +++ b/components/package/contents/ui/FocusComposer.qml | |||
@@ -25,8 +25,6 @@ Rectangle { | |||
25 | id: root | 25 | id: root |
26 | property variant originalMessage | 26 | property variant originalMessage |
27 | 27 | ||
28 | visible: false | ||
29 | |||
30 | color: ColorPalette.border | 28 | color: ColorPalette.border |
31 | 29 | ||
32 | opacity: 0.9 | 30 | opacity: 0.9 |
@@ -35,7 +33,7 @@ Rectangle { | |||
35 | anchors.fill: parent | 33 | anchors.fill: parent |
36 | 34 | ||
37 | onClicked: { | 35 | onClicked: { |
38 | root.visible = false | 36 | root.destroy() |
39 | } | 37 | } |
40 | } | 38 | } |
41 | 39 | ||
@@ -74,7 +72,7 @@ Rectangle { | |||
74 | 72 | ||
75 | onClicked: { | 73 | onClicked: { |
76 | composer.send() | 74 | composer.send() |
77 | root.visible = false | 75 | root.destroy() |
78 | } | 76 | } |
79 | } | 77 | } |
80 | } | 78 | } |
diff --git a/components/package/contents/ui/Settings.qml b/components/package/contents/ui/Settings.qml index acdc42d7..e0d993ad 100644 --- a/components/package/contents/ui/Settings.qml +++ b/components/package/contents/ui/Settings.qml | |||
@@ -29,17 +29,14 @@ import org.kube.framework.theme 1.0 | |||
29 | Rectangle { | 29 | Rectangle { |
30 | id: root | 30 | id: root |
31 | 31 | ||
32 | visible: false | ||
33 | |||
34 | color: ColorPalette.border | 32 | color: ColorPalette.border |
35 | 33 | ||
36 | opacity: 0.9 | 34 | opacity: 0.9 |
37 | 35 | ||
38 | MouseArea { | 36 | MouseArea { |
39 | anchors.fill: parent | 37 | anchors.fill: parent |
40 | |||
41 | onClicked: { | 38 | onClicked: { |
42 | root.visible = false | 39 | root.destroy() |
43 | } | 40 | } |
44 | } | 41 | } |
45 | 42 | ||