Mercurial > libervia-desktop-kivy
annotate cagou/plugins/plugin_wid_contact_list.kv @ 307:aafd814e34b5
doc: first draft
author | Goffi <goffi@goffi.org> |
---|---|
date | Tue, 23 Jul 2019 20:08:38 +0200 |
parents | 1b835bcfa663 |
children | e2b51663d8b8 |
rev | line source |
---|---|
9 | 1 # Cagou: desktop/mobile frontend for Salut à Toi XMPP client |
282 | 2 # Copyright (C) 2016-2019 Jérôme Poisson (goffi@goffi.org) |
9 | 3 |
4 # This program is free software: you can redistribute it and/or modify | |
5 # it under the terms of the GNU Affero General Public License as published by | |
6 # the Free Software Foundation, either version 3 of the License, or | |
7 # (at your option) any later version. | |
8 | |
9 # This program is distributed in the hope that it will be useful, | |
10 # but WITHOUT ANY WARRANTY; without even the implied warranty of | |
11 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
12 # GNU Affero General Public License for more details. | |
13 | |
14 # You should have received a copy of the GNU Affero General Public License | |
15 # along with this program. If not, see <http://www.gnu.org/licenses/>. | |
16 | |
219 | 17 #:import _ sat.core.i18n._ |
223
9e5f9f0cee48
plugin contact list: use new TouchMenuBehaviour to implement contact deletion
Goffi <goffi@goffi.org>
parents:
221
diff
changeset
|
18 #:import e kivy.utils.escape_markup |
50
c45d6e9ec731
contact list: fixed contact list display
Goffi <goffi@goffi.org>
parents:
15
diff
changeset
|
19 |
221
e1a385a791cc
plugin contact list: implemented contact addition
Goffi <goffi@goffi.org>
parents:
219
diff
changeset
|
20 <AddContactMenu>: |
e1a385a791cc
plugin contact list: implemented contact addition
Goffi <goffi@goffi.org>
parents:
219
diff
changeset
|
21 padding: dp(20) |
e1a385a791cc
plugin contact list: implemented contact addition
Goffi <goffi@goffi.org>
parents:
219
diff
changeset
|
22 spacing: dp(10) |
e1a385a791cc
plugin contact list: implemented contact addition
Goffi <goffi@goffi.org>
parents:
219
diff
changeset
|
23 Label: |
e1a385a791cc
plugin contact list: implemented contact addition
Goffi <goffi@goffi.org>
parents:
219
diff
changeset
|
24 size_hint: 1, None |
e1a385a791cc
plugin contact list: implemented contact addition
Goffi <goffi@goffi.org>
parents:
219
diff
changeset
|
25 color: 1, 1, 1, 1 |
223
9e5f9f0cee48
plugin contact list: use new TouchMenuBehaviour to implement contact deletion
Goffi <goffi@goffi.org>
parents:
221
diff
changeset
|
26 text: _("Please enter new contact JID") |
221
e1a385a791cc
plugin contact list: implemented contact addition
Goffi <goffi@goffi.org>
parents:
219
diff
changeset
|
27 text_size: root.width, None |
e1a385a791cc
plugin contact list: implemented contact addition
Goffi <goffi@goffi.org>
parents:
219
diff
changeset
|
28 size: self.texture_size |
e1a385a791cc
plugin contact list: implemented contact addition
Goffi <goffi@goffi.org>
parents:
219
diff
changeset
|
29 halign: "center" |
e1a385a791cc
plugin contact list: implemented contact addition
Goffi <goffi@goffi.org>
parents:
219
diff
changeset
|
30 bold: True |
e1a385a791cc
plugin contact list: implemented contact addition
Goffi <goffi@goffi.org>
parents:
219
diff
changeset
|
31 TextInput: |
e1a385a791cc
plugin contact list: implemented contact addition
Goffi <goffi@goffi.org>
parents:
219
diff
changeset
|
32 id: contact_jid |
e1a385a791cc
plugin contact list: implemented contact addition
Goffi <goffi@goffi.org>
parents:
219
diff
changeset
|
33 size_hint: 1, None |
e1a385a791cc
plugin contact list: implemented contact addition
Goffi <goffi@goffi.org>
parents:
219
diff
changeset
|
34 height: sp(30) |
e1a385a791cc
plugin contact list: implemented contact addition
Goffi <goffi@goffi.org>
parents:
219
diff
changeset
|
35 hint_text: _("enter here your new contact JID") |
e1a385a791cc
plugin contact list: implemented contact addition
Goffi <goffi@goffi.org>
parents:
219
diff
changeset
|
36 Button: |
e1a385a791cc
plugin contact list: implemented contact addition
Goffi <goffi@goffi.org>
parents:
219
diff
changeset
|
37 size_hint: 1, None |
e1a385a791cc
plugin contact list: implemented contact addition
Goffi <goffi@goffi.org>
parents:
219
diff
changeset
|
38 height: sp(50) |
e1a385a791cc
plugin contact list: implemented contact addition
Goffi <goffi@goffi.org>
parents:
219
diff
changeset
|
39 text: _("add this contact") |
e1a385a791cc
plugin contact list: implemented contact addition
Goffi <goffi@goffi.org>
parents:
219
diff
changeset
|
40 on_release: root.addContact(contact_jid.text) |
e1a385a791cc
plugin contact list: implemented contact addition
Goffi <goffi@goffi.org>
parents:
219
diff
changeset
|
41 Widget: |
e1a385a791cc
plugin contact list: implemented contact addition
Goffi <goffi@goffi.org>
parents:
219
diff
changeset
|
42 |
e1a385a791cc
plugin contact list: implemented contact addition
Goffi <goffi@goffi.org>
parents:
219
diff
changeset
|
43 |
223
9e5f9f0cee48
plugin contact list: use new TouchMenuBehaviour to implement contact deletion
Goffi <goffi@goffi.org>
parents:
221
diff
changeset
|
44 <DelContactMenu>: |
9e5f9f0cee48
plugin contact list: use new TouchMenuBehaviour to implement contact deletion
Goffi <goffi@goffi.org>
parents:
221
diff
changeset
|
45 padding: dp(20) |
9e5f9f0cee48
plugin contact list: use new TouchMenuBehaviour to implement contact deletion
Goffi <goffi@goffi.org>
parents:
221
diff
changeset
|
46 spacing: dp(10) |
9e5f9f0cee48
plugin contact list: use new TouchMenuBehaviour to implement contact deletion
Goffi <goffi@goffi.org>
parents:
221
diff
changeset
|
47 Avatar: |
9e5f9f0cee48
plugin contact list: use new TouchMenuBehaviour to implement contact deletion
Goffi <goffi@goffi.org>
parents:
221
diff
changeset
|
48 id: avatar |
9e5f9f0cee48
plugin contact list: use new TouchMenuBehaviour to implement contact deletion
Goffi <goffi@goffi.org>
parents:
221
diff
changeset
|
49 size_hint: 1, None |
9e5f9f0cee48
plugin contact list: use new TouchMenuBehaviour to implement contact deletion
Goffi <goffi@goffi.org>
parents:
221
diff
changeset
|
50 height: dp(60) |
9e5f9f0cee48
plugin contact list: use new TouchMenuBehaviour to implement contact deletion
Goffi <goffi@goffi.org>
parents:
221
diff
changeset
|
51 source: root.contact_item.data.get('avatar', app.default_avatar) |
9e5f9f0cee48
plugin contact list: use new TouchMenuBehaviour to implement contact deletion
Goffi <goffi@goffi.org>
parents:
221
diff
changeset
|
52 allow_stretch: True |
9e5f9f0cee48
plugin contact list: use new TouchMenuBehaviour to implement contact deletion
Goffi <goffi@goffi.org>
parents:
221
diff
changeset
|
53 Label: |
9e5f9f0cee48
plugin contact list: use new TouchMenuBehaviour to implement contact deletion
Goffi <goffi@goffi.org>
parents:
221
diff
changeset
|
54 size_hint: 1, None |
9e5f9f0cee48
plugin contact list: use new TouchMenuBehaviour to implement contact deletion
Goffi <goffi@goffi.org>
parents:
221
diff
changeset
|
55 color: 1, 1, 1, 1 |
9e5f9f0cee48
plugin contact list: use new TouchMenuBehaviour to implement contact deletion
Goffi <goffi@goffi.org>
parents:
221
diff
changeset
|
56 text: _("Are you sure you wand to remove [b]{name}[/b] from your contact list?").format(name=e(root.contact_item.jid)) |
9e5f9f0cee48
plugin contact list: use new TouchMenuBehaviour to implement contact deletion
Goffi <goffi@goffi.org>
parents:
221
diff
changeset
|
57 markup: True |
9e5f9f0cee48
plugin contact list: use new TouchMenuBehaviour to implement contact deletion
Goffi <goffi@goffi.org>
parents:
221
diff
changeset
|
58 text_size: root.width, None |
9e5f9f0cee48
plugin contact list: use new TouchMenuBehaviour to implement contact deletion
Goffi <goffi@goffi.org>
parents:
221
diff
changeset
|
59 size: self.texture_size |
9e5f9f0cee48
plugin contact list: use new TouchMenuBehaviour to implement contact deletion
Goffi <goffi@goffi.org>
parents:
221
diff
changeset
|
60 halign: "center" |
9e5f9f0cee48
plugin contact list: use new TouchMenuBehaviour to implement contact deletion
Goffi <goffi@goffi.org>
parents:
221
diff
changeset
|
61 BoxLayout: |
9e5f9f0cee48
plugin contact list: use new TouchMenuBehaviour to implement contact deletion
Goffi <goffi@goffi.org>
parents:
221
diff
changeset
|
62 Button: |
9e5f9f0cee48
plugin contact list: use new TouchMenuBehaviour to implement contact deletion
Goffi <goffi@goffi.org>
parents:
221
diff
changeset
|
63 background_color: 1, 0, 0, 1 |
9e5f9f0cee48
plugin contact list: use new TouchMenuBehaviour to implement contact deletion
Goffi <goffi@goffi.org>
parents:
221
diff
changeset
|
64 size_hint: 0.5, None |
9e5f9f0cee48
plugin contact list: use new TouchMenuBehaviour to implement contact deletion
Goffi <goffi@goffi.org>
parents:
221
diff
changeset
|
65 height: sp(50) |
9e5f9f0cee48
plugin contact list: use new TouchMenuBehaviour to implement contact deletion
Goffi <goffi@goffi.org>
parents:
221
diff
changeset
|
66 text: _("yes, remove it") |
9e5f9f0cee48
plugin contact list: use new TouchMenuBehaviour to implement contact deletion
Goffi <goffi@goffi.org>
parents:
221
diff
changeset
|
67 bold: True |
9e5f9f0cee48
plugin contact list: use new TouchMenuBehaviour to implement contact deletion
Goffi <goffi@goffi.org>
parents:
221
diff
changeset
|
68 on_release: root.do_delete_contact() |
9e5f9f0cee48
plugin contact list: use new TouchMenuBehaviour to implement contact deletion
Goffi <goffi@goffi.org>
parents:
221
diff
changeset
|
69 Button: |
9e5f9f0cee48
plugin contact list: use new TouchMenuBehaviour to implement contact deletion
Goffi <goffi@goffi.org>
parents:
221
diff
changeset
|
70 size_hint: 0.5, None |
9e5f9f0cee48
plugin contact list: use new TouchMenuBehaviour to implement contact deletion
Goffi <goffi@goffi.org>
parents:
221
diff
changeset
|
71 height: sp(50) |
9e5f9f0cee48
plugin contact list: use new TouchMenuBehaviour to implement contact deletion
Goffi <goffi@goffi.org>
parents:
221
diff
changeset
|
72 text: _("no, keep it") |
9e5f9f0cee48
plugin contact list: use new TouchMenuBehaviour to implement contact deletion
Goffi <goffi@goffi.org>
parents:
221
diff
changeset
|
73 on_release: root.hide() |
9e5f9f0cee48
plugin contact list: use new TouchMenuBehaviour to implement contact deletion
Goffi <goffi@goffi.org>
parents:
221
diff
changeset
|
74 Widget: |
9e5f9f0cee48
plugin contact list: use new TouchMenuBehaviour to implement contact deletion
Goffi <goffi@goffi.org>
parents:
221
diff
changeset
|
75 |
9e5f9f0cee48
plugin contact list: use new TouchMenuBehaviour to implement contact deletion
Goffi <goffi@goffi.org>
parents:
221
diff
changeset
|
76 |
9 | 77 <ContactItem>: |
219 | 78 size_hint: None, None |
79 width: self.base_width | |
80 height: self.minimum_height | |
81 orientation: 'vertical' | |
9 | 82 Avatar: |
219 | 83 id: avatar |
84 size_hint: 1, None | |
85 height: dp(60) | |
9 | 86 source: root.data.get('avatar', app.default_avatar) |
157
e1f6dab40eed
contact list: fixed avatar stretching
Goffi <goffi@goffi.org>
parents:
126
diff
changeset
|
87 allow_stretch: True |
9 | 88 Label: |
110
34dfe0e32064
contact list: text entered in header input do filtering in shown contacts
Goffi <goffi@goffi.org>
parents:
50
diff
changeset
|
89 id: jid_label |
219 | 90 size_hint: None, None |
91 text_size: root.base_width, None | |
92 size: self.texture_size | |
9 | 93 text: root.jid |
94 bold: True | |
219 | 95 valign: 'middle' |
96 halign: 'center' | |
97 | |
221
e1a385a791cc
plugin contact list: implemented contact addition
Goffi <goffi@goffi.org>
parents:
219
diff
changeset
|
98 |
219 | 99 <ContactList>: |
100 float_layout: float_layout | |
101 layout: layout | |
102 orientation: 'vertical' | |
103 BoxLayout: | |
104 size_hint: 1, None | |
255
03d74435c01c
contact: fixed add contact button size
Goffi <goffi@goffi.org>
parents:
223
diff
changeset
|
105 height: dp(35) |
03d74435c01c
contact: fixed add contact button size
Goffi <goffi@goffi.org>
parents:
223
diff
changeset
|
106 width: dp(35) |
03d74435c01c
contact: fixed add contact button size
Goffi <goffi@goffi.org>
parents:
223
diff
changeset
|
107 font_size: dp(30) |
219 | 108 Widget: |
109 SymbolLabel: | |
110 symbol: 'plus-circled' | |
111 text: _("add a contact") | |
221
e1a385a791cc
plugin contact list: implemented contact addition
Goffi <goffi@goffi.org>
parents:
219
diff
changeset
|
112 on_release: root.addContactMenu() |
219 | 113 Widget: |
114 FloatLayout: | |
115 id: float_layout | |
116 ScrollView: | |
117 size_hint: 1, 1 | |
118 pos_hint: {'x': 0, 'y': 0} | |
119 do_scroll_x: False | |
120 scroll_type: ['bars', 'content'] | |
121 bar_width: dp(6) | |
122 StackLayout: | |
123 id: layout | |
124 size_hint: 1, None | |
125 height: self.minimum_height | |
126 spacing: 0 |