Mercurial > libervia-desktop-kivy
diff src/cagou/plugins/plugin_upload_voice.kv @ 95:3e3c097b07b7
upload: added voice plugin (for Android)
author | Goffi <goffi@goffi.org> |
---|---|
date | Tue, 27 Dec 2016 21:54:09 +0100 |
parents | |
children |
line wrap: on
line diff
--- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/src/cagou/plugins/plugin_upload_voice.kv Tue Dec 27 21:54:09 2016 +0100 @@ -0,0 +1,71 @@ +# Cagou: desktop/mobile frontend for Salut à Toi XMPP client +# Copyright (C) 2016 Jérôme Poisson (goffi@goffi.org) + +# This program is free software: you can redistribute it and/or modify +# it under the terms of the GNU Affero General Public License as published by +# the Free Software Foundation, either version 3 of the License, or +# (at your option) any later version. + +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU Affero General Public License for more details. + +# You should have received a copy of the GNU Affero General Public License +# along with this program. If not, see <http://www.gnu.org/licenses/>. + +#:import _ sat.core.i18n._ +#:import IconButton cagou.core.common.IconButton + + +<VoiceRecorder>: + orientation: "vertical" + counter: counter + Label: + size_hint: 1, 0.4 + text_size: self.size + halign: 'center' + valign: 'top' + text: _(u"Push the microphone button to start the record, then push it again to stop it.\nWhen you are satisfied, click on the upload button") + Label: + id: counter + size_hint: 1, None + height: dp(60) + bold: True + font_size: sp(40) + text_size: self.size + text: u"{}:{:02}".format(root.time/60, root.time%60) + halign: 'center' + valign: 'middle' + BoxLayout: + size_hint: 1, None + height: dp(60) + Widget + IconButton: + source: app.expand("{media}/icons/muchoslava/png/") + ("micro_on_50.png" if root.recording else "micro_off_50.png") + allow_stretch: True + size_hint: None, None + size: dp(60), dp(60) + on_release: root.switchRecording() + IconButton: + opacity: 0 if root.recording or not root.time and not root.playing else 1 + source: app.expand("{media}/icons/muchoslava/png/") + ("stop_50.png" if root.playing else "play_50.png") + allow_stretch: True + size_hint: None, None + size: dp(60), dp(60) + on_release: root.playRecord() + Widget + Widget: + size_hint: 1, None + height: dp(50) + Button: + text: "upload" + size_hint: 1, None + height: dp(50) + on_release: root.callback(root.audio.file_path) + Button: + text: "cancel" + size_hint: 1, None + height: dp(50) + on_release: root.cancel_cb(root) + Widget