Mercurial > libervia-desktop-kivy
annotate cagou/kv/common.kv @ 404:f7476818f9fb
core (common): JidSelector + behaviors various improvments:
- renamed *Behaviour => *Behavior to be consistent with Kivy + moved to new
"core.behaviors" modules
- use a dedicated property in ContactItem for notification counter (which is now named
"badge")
- in JidSelector, well-known strings now create use a dedicated layout, add separator
(except if new `add_separators` property is set to False), and are added to attribute of
the same name
- a new `item_class` property is now used to indicate the class to instanciate for items
(by default it's a ContactItem)
- FilterBahavior.do_filter now expect the parent layout instead of directly the children,
this is to allow a FilterBahavior to manage several children layout at once (used with
JidSelector)
- core.utils has been removed, as the behavior there has been moved to core.behaviors
author | Goffi <goffi@goffi.org> |
---|---|
date | Wed, 12 Feb 2020 20:02:58 +0100 |
parents | 54f6a47cc60a |
children | 2a58f3d756ad |
rev | line source |
---|---|
107 | 1 # Cagou: desktop/mobile frontend for Salut à Toi XMPP client |
282 | 2 # Copyright (C) 2016-2019 Jérôme Poisson (goffi@goffi.org) |
107 | 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 | |
17 | |
397
54f6a47cc60a
core (common): added a notifications counter on ContactButton and use it in JidSelector:
Goffi <goffi@goffi.org>
parents:
391
diff
changeset
|
18 <NotifLabel>: |
54f6a47cc60a
core (common): added a notifications counter on ContactButton and use it in JidSelector:
Goffi <goffi@goffi.org>
parents:
391
diff
changeset
|
19 background_color: 1, 0, 0, 1 |
54f6a47cc60a
core (common): added a notifications counter on ContactButton and use it in JidSelector:
Goffi <goffi@goffi.org>
parents:
391
diff
changeset
|
20 size_hint: None, None |
54f6a47cc60a
core (common): added a notifications counter on ContactButton and use it in JidSelector:
Goffi <goffi@goffi.org>
parents:
391
diff
changeset
|
21 text_size: None, root.height |
54f6a47cc60a
core (common): added a notifications counter on ContactButton and use it in JidSelector:
Goffi <goffi@goffi.org>
parents:
391
diff
changeset
|
22 padding_x: sp(5) |
54f6a47cc60a
core (common): added a notifications counter on ContactButton and use it in JidSelector:
Goffi <goffi@goffi.org>
parents:
391
diff
changeset
|
23 size: self.texture_size |
54f6a47cc60a
core (common): added a notifications counter on ContactButton and use it in JidSelector:
Goffi <goffi@goffi.org>
parents:
391
diff
changeset
|
24 bold: True |
54f6a47cc60a
core (common): added a notifications counter on ContactButton and use it in JidSelector:
Goffi <goffi@goffi.org>
parents:
391
diff
changeset
|
25 canvas.before: |
54f6a47cc60a
core (common): added a notifications counter on ContactButton and use it in JidSelector:
Goffi <goffi@goffi.org>
parents:
391
diff
changeset
|
26 Color: |
54f6a47cc60a
core (common): added a notifications counter on ContactButton and use it in JidSelector:
Goffi <goffi@goffi.org>
parents:
391
diff
changeset
|
27 rgba: root.background_color |
54f6a47cc60a
core (common): added a notifications counter on ContactButton and use it in JidSelector:
Goffi <goffi@goffi.org>
parents:
391
diff
changeset
|
28 Ellipse: |
54f6a47cc60a
core (common): added a notifications counter on ContactButton and use it in JidSelector:
Goffi <goffi@goffi.org>
parents:
391
diff
changeset
|
29 size: self.size |
54f6a47cc60a
core (common): added a notifications counter on ContactButton and use it in JidSelector:
Goffi <goffi@goffi.org>
parents:
391
diff
changeset
|
30 pos: self.pos |
54f6a47cc60a
core (common): added a notifications counter on ContactButton and use it in JidSelector:
Goffi <goffi@goffi.org>
parents:
391
diff
changeset
|
31 |
54f6a47cc60a
core (common): added a notifications counter on ContactButton and use it in JidSelector:
Goffi <goffi@goffi.org>
parents:
391
diff
changeset
|
32 |
322
e2b51663d8b8
core, android: new share widget + added Cagou to "share" menu:
Goffi <goffi@goffi.org>
parents:
282
diff
changeset
|
33 <ContactItem>: |
e2b51663d8b8
core, android: new share widget + added Cagou to "share" menu:
Goffi <goffi@goffi.org>
parents:
282
diff
changeset
|
34 size_hint: None, None |
e2b51663d8b8
core, android: new share widget + added Cagou to "share" menu:
Goffi <goffi@goffi.org>
parents:
282
diff
changeset
|
35 width: self.base_width |
e2b51663d8b8
core, android: new share widget + added Cagou to "share" menu:
Goffi <goffi@goffi.org>
parents:
282
diff
changeset
|
36 height: self.minimum_height |
e2b51663d8b8
core, android: new share widget + added Cagou to "share" menu:
Goffi <goffi@goffi.org>
parents:
282
diff
changeset
|
37 orientation: 'vertical' |
397
54f6a47cc60a
core (common): added a notifications counter on ContactButton and use it in JidSelector:
Goffi <goffi@goffi.org>
parents:
391
diff
changeset
|
38 avatar: avatar |
54f6a47cc60a
core (common): added a notifications counter on ContactButton and use it in JidSelector:
Goffi <goffi@goffi.org>
parents:
391
diff
changeset
|
39 avatar_layout: avatar_layout |
54f6a47cc60a
core (common): added a notifications counter on ContactButton and use it in JidSelector:
Goffi <goffi@goffi.org>
parents:
391
diff
changeset
|
40 FloatLayout: |
54f6a47cc60a
core (common): added a notifications counter on ContactButton and use it in JidSelector:
Goffi <goffi@goffi.org>
parents:
391
diff
changeset
|
41 id: avatar_layout |
322
e2b51663d8b8
core, android: new share widget + added Cagou to "share" menu:
Goffi <goffi@goffi.org>
parents:
282
diff
changeset
|
42 size_hint: 1, None |
e2b51663d8b8
core, android: new share widget + added Cagou to "share" menu:
Goffi <goffi@goffi.org>
parents:
282
diff
changeset
|
43 height: dp(60) |
397
54f6a47cc60a
core (common): added a notifications counter on ContactButton and use it in JidSelector:
Goffi <goffi@goffi.org>
parents:
391
diff
changeset
|
44 Avatar: |
54f6a47cc60a
core (common): added a notifications counter on ContactButton and use it in JidSelector:
Goffi <goffi@goffi.org>
parents:
391
diff
changeset
|
45 id: avatar |
54f6a47cc60a
core (common): added a notifications counter on ContactButton and use it in JidSelector:
Goffi <goffi@goffi.org>
parents:
391
diff
changeset
|
46 pos_hint: {'x': 0, 'y': 0} |
54f6a47cc60a
core (common): added a notifications counter on ContactButton and use it in JidSelector:
Goffi <goffi@goffi.org>
parents:
391
diff
changeset
|
47 source: root.data.get('avatar') or app.default_avatar |
54f6a47cc60a
core (common): added a notifications counter on ContactButton and use it in JidSelector:
Goffi <goffi@goffi.org>
parents:
391
diff
changeset
|
48 allow_stretch: True |
54f6a47cc60a
core (common): added a notifications counter on ContactButton and use it in JidSelector:
Goffi <goffi@goffi.org>
parents:
391
diff
changeset
|
49 BoxLayout: |
54f6a47cc60a
core (common): added a notifications counter on ContactButton and use it in JidSelector:
Goffi <goffi@goffi.org>
parents:
391
diff
changeset
|
50 id: label_box |
54f6a47cc60a
core (common): added a notifications counter on ContactButton and use it in JidSelector:
Goffi <goffi@goffi.org>
parents:
391
diff
changeset
|
51 size_hint: 1, None |
54f6a47cc60a
core (common): added a notifications counter on ContactButton and use it in JidSelector:
Goffi <goffi@goffi.org>
parents:
391
diff
changeset
|
52 height: self.minimum_height |
54f6a47cc60a
core (common): added a notifications counter on ContactButton and use it in JidSelector:
Goffi <goffi@goffi.org>
parents:
391
diff
changeset
|
53 Label: |
54f6a47cc60a
core (common): added a notifications counter on ContactButton and use it in JidSelector:
Goffi <goffi@goffi.org>
parents:
391
diff
changeset
|
54 size_hint: 1, None |
54f6a47cc60a
core (common): added a notifications counter on ContactButton and use it in JidSelector:
Goffi <goffi@goffi.org>
parents:
391
diff
changeset
|
55 height: self.font_size + sp(5) |
54f6a47cc60a
core (common): added a notifications counter on ContactButton and use it in JidSelector:
Goffi <goffi@goffi.org>
parents:
391
diff
changeset
|
56 text_size: self.size |
54f6a47cc60a
core (common): added a notifications counter on ContactButton and use it in JidSelector:
Goffi <goffi@goffi.org>
parents:
391
diff
changeset
|
57 shorten: True |
54f6a47cc60a
core (common): added a notifications counter on ContactButton and use it in JidSelector:
Goffi <goffi@goffi.org>
parents:
391
diff
changeset
|
58 shorten_from: "right" |
54f6a47cc60a
core (common): added a notifications counter on ContactButton and use it in JidSelector:
Goffi <goffi@goffi.org>
parents:
391
diff
changeset
|
59 text: root.data.get('nick', root.jid.node or root.jid) |
54f6a47cc60a
core (common): added a notifications counter on ContactButton and use it in JidSelector:
Goffi <goffi@goffi.org>
parents:
391
diff
changeset
|
60 bold: True |
54f6a47cc60a
core (common): added a notifications counter on ContactButton and use it in JidSelector:
Goffi <goffi@goffi.org>
parents:
391
diff
changeset
|
61 valign: 'middle' |
54f6a47cc60a
core (common): added a notifications counter on ContactButton and use it in JidSelector:
Goffi <goffi@goffi.org>
parents:
391
diff
changeset
|
62 halign: 'center' |
322
e2b51663d8b8
core, android: new share widget + added Cagou to "share" menu:
Goffi <goffi@goffi.org>
parents:
282
diff
changeset
|
63 |
e2b51663d8b8
core, android: new share widget + added Cagou to "share" menu:
Goffi <goffi@goffi.org>
parents:
282
diff
changeset
|
64 |
145
654b00fa3fdc
core (common): renamed JidWidget to JidItem to avoid name conflict with XMLUI
Goffi <goffi@goffi.org>
parents:
134
diff
changeset
|
65 <JidItem>: |
193
284cb5c467b0
core (common): split JidItem in 3 classes:
Goffi <goffi@goffi.org>
parents:
178
diff
changeset
|
66 size_hint: 1, None |
274 | 67 height: dp(68) |
256
ba7b8cb7ddcd
common: don't use anymore positional argument in JidItem
Goffi <goffi@goffi.org>
parents:
247
diff
changeset
|
68 avatar: avatar |
274 | 69 padding: 0, dp(2), 0, dp(2) |
107 | 70 canvas.before: |
71 Color: | |
193
284cb5c467b0
core (common): split JidItem in 3 classes:
Goffi <goffi@goffi.org>
parents:
178
diff
changeset
|
72 rgba: self.bg_color |
107 | 73 Rectangle: |
74 pos: self.pos | |
75 size: self.size | |
76 Image: | |
256
ba7b8cb7ddcd
common: don't use anymore positional argument in JidItem
Goffi <goffi@goffi.org>
parents:
247
diff
changeset
|
77 id: avatar |
107 | 78 size_hint: None, None |
79 size: dp(64), dp(64) | |
80 Label: | |
193
284cb5c467b0
core (common): split JidItem in 3 classes:
Goffi <goffi@goffi.org>
parents:
178
diff
changeset
|
81 size_hint: 1, 1 |
284cb5c467b0
core (common): split JidItem in 3 classes:
Goffi <goffi@goffi.org>
parents:
178
diff
changeset
|
82 text_size: self.size |
284cb5c467b0
core (common): split JidItem in 3 classes:
Goffi <goffi@goffi.org>
parents:
178
diff
changeset
|
83 color: root.color |
107 | 84 bold: True |
85 text: root.jid | |
86 halign: 'left' | |
87 valign: 'middle' | |
193
284cb5c467b0
core (common): split JidItem in 3 classes:
Goffi <goffi@goffi.org>
parents:
178
diff
changeset
|
88 padding_x: dp(5) |
131
36fc269e2a32
core: changed default background color to white
Goffi <goffi@goffi.org>
parents:
126
diff
changeset
|
89 |
193
284cb5c467b0
core (common): split JidItem in 3 classes:
Goffi <goffi@goffi.org>
parents:
178
diff
changeset
|
90 <JidToggle>: |
284cb5c467b0
core (common): split JidItem in 3 classes:
Goffi <goffi@goffi.org>
parents:
178
diff
changeset
|
91 canvas.before: |
284cb5c467b0
core (common): split JidItem in 3 classes:
Goffi <goffi@goffi.org>
parents:
178
diff
changeset
|
92 Color: |
284cb5c467b0
core (common): split JidItem in 3 classes:
Goffi <goffi@goffi.org>
parents:
178
diff
changeset
|
93 rgba: self.selected_color if self.state == 'down' else self.bg_color |
284cb5c467b0
core (common): split JidItem in 3 classes:
Goffi <goffi@goffi.org>
parents:
178
diff
changeset
|
94 Rectangle: |
284cb5c467b0
core (common): split JidItem in 3 classes:
Goffi <goffi@goffi.org>
parents:
178
diff
changeset
|
95 pos: self.pos |
284cb5c467b0
core (common): split JidItem in 3 classes:
Goffi <goffi@goffi.org>
parents:
178
diff
changeset
|
96 size: self.size |
131
36fc269e2a32
core: changed default background color to white
Goffi <goffi@goffi.org>
parents:
126
diff
changeset
|
97 |
134 | 98 <Symbol>: |
247
cf61a011f731
core (notes), common (symbol): added an icon showing note level:
Goffi <goffi@goffi.org>
parents:
218
diff
changeset
|
99 width: dp(35) |
cf61a011f731
core (notes), common (symbol): added an icon showing note level:
Goffi <goffi@goffi.org>
parents:
218
diff
changeset
|
100 height: dp(35) |
134 | 101 font_name: app.expand('{media}/fonts/fontello/font/fontello.ttf') |
102 text_size: self.size | |
247
cf61a011f731
core (notes), common (symbol): added an icon showing note level:
Goffi <goffi@goffi.org>
parents:
218
diff
changeset
|
103 font_size: dp(30) |
134 | 104 halign: 'center' |
105 valign: 'middle' | |
215
254481ba2bae
core (common): set width = height by default for Symbol + use a transparent background color by default
Goffi <goffi@goffi.org>
parents:
193
diff
changeset
|
106 bg_color: 0, 0, 0, 0 |
134 | 107 canvas.before: |
108 Color: | |
109 rgba: self.bg_color | |
110 Rectangle: | |
111 pos: self.pos | |
112 size: self.size | |
178
11ff8cd93659
common: new ActionSymbol widget, which use a symbol to show an action
Goffi <goffi@goffi.org>
parents:
150
diff
changeset
|
113 |
218
30be583dbabc
core (common): new SymbolLabel class to have a clickable area with a symbol and a label next to it.
Goffi <goffi@goffi.org>
parents:
215
diff
changeset
|
114 <SymbolLabel>: |
30be583dbabc
core (common): new SymbolLabel class to have a clickable area with a symbol and a label next to it.
Goffi <goffi@goffi.org>
parents:
215
diff
changeset
|
115 size_hint: None, 1 |
30be583dbabc
core (common): new SymbolLabel class to have a clickable area with a symbol and a label next to it.
Goffi <goffi@goffi.org>
parents:
215
diff
changeset
|
116 width: self.minimum_width |
30be583dbabc
core (common): new SymbolLabel class to have a clickable area with a symbol and a label next to it.
Goffi <goffi@goffi.org>
parents:
215
diff
changeset
|
117 symbol_wid: symbol_wid |
30be583dbabc
core (common): new SymbolLabel class to have a clickable area with a symbol and a label next to it.
Goffi <goffi@goffi.org>
parents:
215
diff
changeset
|
118 label: label |
30be583dbabc
core (common): new SymbolLabel class to have a clickable area with a symbol and a label next to it.
Goffi <goffi@goffi.org>
parents:
215
diff
changeset
|
119 Symbol: |
30be583dbabc
core (common): new SymbolLabel class to have a clickable area with a symbol and a label next to it.
Goffi <goffi@goffi.org>
parents:
215
diff
changeset
|
120 id: symbol_wid |
30be583dbabc
core (common): new SymbolLabel class to have a clickable area with a symbol and a label next to it.
Goffi <goffi@goffi.org>
parents:
215
diff
changeset
|
121 size_hint: None, 1 |
30be583dbabc
core (common): new SymbolLabel class to have a clickable area with a symbol and a label next to it.
Goffi <goffi@goffi.org>
parents:
215
diff
changeset
|
122 symbol: root.symbol |
30be583dbabc
core (common): new SymbolLabel class to have a clickable area with a symbol and a label next to it.
Goffi <goffi@goffi.org>
parents:
215
diff
changeset
|
123 color: root.color |
30be583dbabc
core (common): new SymbolLabel class to have a clickable area with a symbol and a label next to it.
Goffi <goffi@goffi.org>
parents:
215
diff
changeset
|
124 Label: |
30be583dbabc
core (common): new SymbolLabel class to have a clickable area with a symbol and a label next to it.
Goffi <goffi@goffi.org>
parents:
215
diff
changeset
|
125 id: label |
30be583dbabc
core (common): new SymbolLabel class to have a clickable area with a symbol and a label next to it.
Goffi <goffi@goffi.org>
parents:
215
diff
changeset
|
126 size_hint: None, 1 |
30be583dbabc
core (common): new SymbolLabel class to have a clickable area with a symbol and a label next to it.
Goffi <goffi@goffi.org>
parents:
215
diff
changeset
|
127 text_size: None, root.height |
30be583dbabc
core (common): new SymbolLabel class to have a clickable area with a symbol and a label next to it.
Goffi <goffi@goffi.org>
parents:
215
diff
changeset
|
128 size: self.texture_size |
30be583dbabc
core (common): new SymbolLabel class to have a clickable area with a symbol and a label next to it.
Goffi <goffi@goffi.org>
parents:
215
diff
changeset
|
129 padding_x: dp(5) |
30be583dbabc
core (common): new SymbolLabel class to have a clickable area with a symbol and a label next to it.
Goffi <goffi@goffi.org>
parents:
215
diff
changeset
|
130 valign: 'middle' |
30be583dbabc
core (common): new SymbolLabel class to have a clickable area with a symbol and a label next to it.
Goffi <goffi@goffi.org>
parents:
215
diff
changeset
|
131 text: root.text |
30be583dbabc
core (common): new SymbolLabel class to have a clickable area with a symbol and a label next to it.
Goffi <goffi@goffi.org>
parents:
215
diff
changeset
|
132 bold: root.bold |
30be583dbabc
core (common): new SymbolLabel class to have a clickable area with a symbol and a label next to it.
Goffi <goffi@goffi.org>
parents:
215
diff
changeset
|
133 |
178
11ff8cd93659
common: new ActionSymbol widget, which use a symbol to show an action
Goffi <goffi@goffi.org>
parents:
150
diff
changeset
|
134 <ActionSymbol>: |
11ff8cd93659
common: new ActionSymbol widget, which use a symbol to show an action
Goffi <goffi@goffi.org>
parents:
150
diff
changeset
|
135 bg_color: 0, 0, 0, 0 |
11ff8cd93659
common: new ActionSymbol widget, which use a symbol to show an action
Goffi <goffi@goffi.org>
parents:
150
diff
changeset
|
136 color: app.c_sec_light |
348
38fd457b2158
core (common, share_widget): new JidSelector widget:
Goffi <goffi@goffi.org>
parents:
322
diff
changeset
|
137 |
38fd457b2158
core (common, share_widget): new JidSelector widget:
Goffi <goffi@goffi.org>
parents:
322
diff
changeset
|
138 |
404
f7476818f9fb
core (common): JidSelector + behaviors various improvments:
Goffi <goffi@goffi.org>
parents:
397
diff
changeset
|
139 <JidSelectorCategoryLayout>: |
f7476818f9fb
core (common): JidSelector + behaviors various improvments:
Goffi <goffi@goffi.org>
parents:
397
diff
changeset
|
140 size_hint: 1, None |
f7476818f9fb
core (common): JidSelector + behaviors various improvments:
Goffi <goffi@goffi.org>
parents:
397
diff
changeset
|
141 height: self.minimum_height |
f7476818f9fb
core (common): JidSelector + behaviors various improvments:
Goffi <goffi@goffi.org>
parents:
397
diff
changeset
|
142 spacing: 0 |
f7476818f9fb
core (common): JidSelector + behaviors various improvments:
Goffi <goffi@goffi.org>
parents:
397
diff
changeset
|
143 |
348
38fd457b2158
core (common, share_widget): new JidSelector widget:
Goffi <goffi@goffi.org>
parents:
322
diff
changeset
|
144 <JidSelector>: |
38fd457b2158
core (common, share_widget): new JidSelector widget:
Goffi <goffi@goffi.org>
parents:
322
diff
changeset
|
145 layout: layout |
38fd457b2158
core (common, share_widget): new JidSelector widget:
Goffi <goffi@goffi.org>
parents:
322
diff
changeset
|
146 StackLayout: |
38fd457b2158
core (common, share_widget): new JidSelector widget:
Goffi <goffi@goffi.org>
parents:
322
diff
changeset
|
147 id: layout |
38fd457b2158
core (common, share_widget): new JidSelector widget:
Goffi <goffi@goffi.org>
parents:
322
diff
changeset
|
148 size_hint: 1, None |
38fd457b2158
core (common, share_widget): new JidSelector widget:
Goffi <goffi@goffi.org>
parents:
322
diff
changeset
|
149 height: self.minimum_height |
38fd457b2158
core (common, share_widget): new JidSelector widget:
Goffi <goffi@goffi.org>
parents:
322
diff
changeset
|
150 spacing: 0 |