annotate cagou/core/dialog.py @ 412:7c6149c249c1

chat: attachment sending: - files to send are not sent directly anymore, but added to attachment, and linked to the message when it is sent, this is more user friendly and avoid the accidental sending of wrong file - user can remove the attachment before sending the message, using the "close" symbol - new "Chat.addAtachment" method - upload progress is shown on the AttachmentItem thanks to the "progress" property - AttachmentItem stays in the attachments layout until uploaded or an error happens. Messages can still be sent while the item is being uploaded.
author Goffi <goffi@goffi.org>
date Sun, 23 Feb 2020 15:39:03 +0100
parents 1da3c379205b
children 3c9ba4a694ef
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
203
dbd2274fc78b core: new core.dialog module with a ConfirmDialog
Goffi <goffi@goffi.org>
parents:
diff changeset
1 #!/usr//bin/env python2
379
1da3c379205b fixed shebangs
Goffi <goffi@goffi.org>
parents: 378
diff changeset
2
203
dbd2274fc78b core: new core.dialog module with a ConfirmDialog
Goffi <goffi@goffi.org>
parents:
diff changeset
3
dbd2274fc78b core: new core.dialog module with a ConfirmDialog
Goffi <goffi@goffi.org>
parents:
diff changeset
4 # Cagou: desktop/mobile frontend for Salut à Toi XMPP client
378
4d660b252487 dates update
Goffi <goffi@goffi.org>
parents: 312
diff changeset
5 # Copyright (C) 2016-2020 Jérôme Poisson (goffi@goffi.org)
203
dbd2274fc78b core: new core.dialog module with a ConfirmDialog
Goffi <goffi@goffi.org>
parents:
diff changeset
6
dbd2274fc78b core: new core.dialog module with a ConfirmDialog
Goffi <goffi@goffi.org>
parents:
diff changeset
7 # This program is free software: you can redistribute it and/or modify
dbd2274fc78b core: new core.dialog module with a ConfirmDialog
Goffi <goffi@goffi.org>
parents:
diff changeset
8 # it under the terms of the GNU Affero General Public License as published by
dbd2274fc78b core: new core.dialog module with a ConfirmDialog
Goffi <goffi@goffi.org>
parents:
diff changeset
9 # the Free Software Foundation, either version 3 of the License, or
dbd2274fc78b core: new core.dialog module with a ConfirmDialog
Goffi <goffi@goffi.org>
parents:
diff changeset
10 # (at your option) any later version.
dbd2274fc78b core: new core.dialog module with a ConfirmDialog
Goffi <goffi@goffi.org>
parents:
diff changeset
11
dbd2274fc78b core: new core.dialog module with a ConfirmDialog
Goffi <goffi@goffi.org>
parents:
diff changeset
12 # This program is distributed in the hope that it will be useful,
dbd2274fc78b core: new core.dialog module with a ConfirmDialog
Goffi <goffi@goffi.org>
parents:
diff changeset
13 # but WITHOUT ANY WARRANTY; without even the implied warranty of
dbd2274fc78b core: new core.dialog module with a ConfirmDialog
Goffi <goffi@goffi.org>
parents:
diff changeset
14 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
dbd2274fc78b core: new core.dialog module with a ConfirmDialog
Goffi <goffi@goffi.org>
parents:
diff changeset
15 # GNU Affero General Public License for more details.
dbd2274fc78b core: new core.dialog module with a ConfirmDialog
Goffi <goffi@goffi.org>
parents:
diff changeset
16
dbd2274fc78b core: new core.dialog module with a ConfirmDialog
Goffi <goffi@goffi.org>
parents:
diff changeset
17 # You should have received a copy of the GNU Affero General Public License
dbd2274fc78b core: new core.dialog module with a ConfirmDialog
Goffi <goffi@goffi.org>
parents:
diff changeset
18 # along with this program. If not, see <http://www.gnu.org/licenses/>.
dbd2274fc78b core: new core.dialog module with a ConfirmDialog
Goffi <goffi@goffi.org>
parents:
diff changeset
19
dbd2274fc78b core: new core.dialog module with a ConfirmDialog
Goffi <goffi@goffi.org>
parents:
diff changeset
20 """generic dialogs"""
dbd2274fc78b core: new core.dialog module with a ConfirmDialog
Goffi <goffi@goffi.org>
parents:
diff changeset
21
dbd2274fc78b core: new core.dialog module with a ConfirmDialog
Goffi <goffi@goffi.org>
parents:
diff changeset
22 from sat.core.i18n import _
243
50f7c000b4ae xmlui: implemented MessageDialog
Goffi <goffi@goffi.org>
parents: 203
diff changeset
23 from cagou.core.constants import Const as C
203
dbd2274fc78b core: new core.dialog module with a ConfirmDialog
Goffi <goffi@goffi.org>
parents:
diff changeset
24 from kivy.uix.boxlayout import BoxLayout
dbd2274fc78b core: new core.dialog module with a ConfirmDialog
Goffi <goffi@goffi.org>
parents:
diff changeset
25 from kivy import properties
dbd2274fc78b core: new core.dialog module with a ConfirmDialog
Goffi <goffi@goffi.org>
parents:
diff changeset
26 from sat.core import log as logging
dbd2274fc78b core: new core.dialog module with a ConfirmDialog
Goffi <goffi@goffi.org>
parents:
diff changeset
27
dbd2274fc78b core: new core.dialog module with a ConfirmDialog
Goffi <goffi@goffi.org>
parents:
diff changeset
28 log = logging.getLogger(__name__)
dbd2274fc78b core: new core.dialog module with a ConfirmDialog
Goffi <goffi@goffi.org>
parents:
diff changeset
29
dbd2274fc78b core: new core.dialog module with a ConfirmDialog
Goffi <goffi@goffi.org>
parents:
diff changeset
30
243
50f7c000b4ae xmlui: implemented MessageDialog
Goffi <goffi@goffi.org>
parents: 203
diff changeset
31 class MessageDialog(BoxLayout):
50f7c000b4ae xmlui: implemented MessageDialog
Goffi <goffi@goffi.org>
parents: 203
diff changeset
32 title = properties.StringProperty()
50f7c000b4ae xmlui: implemented MessageDialog
Goffi <goffi@goffi.org>
parents: 203
diff changeset
33 message = properties.StringProperty()
50f7c000b4ae xmlui: implemented MessageDialog
Goffi <goffi@goffi.org>
parents: 203
diff changeset
34 level = properties.OptionProperty(C.XMLUI_DATA_LVL_INFO, options=C.XMLUI_DATA_LVLS)
50f7c000b4ae xmlui: implemented MessageDialog
Goffi <goffi@goffi.org>
parents: 203
diff changeset
35 close_cb = properties.ObjectProperty()
50f7c000b4ae xmlui: implemented MessageDialog
Goffi <goffi@goffi.org>
parents: 203
diff changeset
36
50f7c000b4ae xmlui: implemented MessageDialog
Goffi <goffi@goffi.org>
parents: 203
diff changeset
37
203
dbd2274fc78b core: new core.dialog module with a ConfirmDialog
Goffi <goffi@goffi.org>
parents:
diff changeset
38 class ConfirmDialog(BoxLayout):
dbd2274fc78b core: new core.dialog module with a ConfirmDialog
Goffi <goffi@goffi.org>
parents:
diff changeset
39 title = properties.StringProperty()
312
772c170b47a9 Python3 port:
Goffi <goffi@goffi.org>
parents: 282
diff changeset
40 message = properties.StringProperty(_("Are you sure?"))
203
dbd2274fc78b core: new core.dialog module with a ConfirmDialog
Goffi <goffi@goffi.org>
parents:
diff changeset
41 # callback for no/cancel
dbd2274fc78b core: new core.dialog module with a ConfirmDialog
Goffi <goffi@goffi.org>
parents:
diff changeset
42 no_cb = properties.ObjectProperty()
dbd2274fc78b core: new core.dialog module with a ConfirmDialog
Goffi <goffi@goffi.org>
parents:
diff changeset
43 # callback for yes/ok
dbd2274fc78b core: new core.dialog module with a ConfirmDialog
Goffi <goffi@goffi.org>
parents:
diff changeset
44 yes_cb = properties.ObjectProperty()