Mercurial > libervia-desktop-kivy
view cagou/core/common.py @ 127:9d3d700a65b7
setup: proper setup.py:
setup.py is working, but there is two issues with Kivy: cython need to be installed first, and stable version currently doesn't work with most recent cython (cf. https://github.com/kivy/kivy/issues/5375 and https://github.com/kivy/kivy/issues/5606).
A requirements.txt has been added to use dev version of sat + dev version of kivy which works with latest cython.
Once cython is installed, pip install -r requirements.txt works fine.
author | Goffi <goffi@goffi.org> |
---|---|
date | Thu, 05 Apr 2018 18:47:02 +0200 |
parents | cd99f70ea592 |
children | 1cca97e27a69 |
line wrap: on
line source
#!/usr//bin/env python2 # -*- coding: utf-8 -*- # Cagou: desktop/mobile frontend for Salut à Toi XMPP client # Copyright (C) 2016-2018 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/>. """common widgets, which can be reused everywhere""" from kivy.uix.image import Image from kivy.uix.behaviors import ButtonBehavior from kivy.uix.boxlayout import BoxLayout from cagou import G class IconButton(ButtonBehavior, Image): pass class JidWidget(ButtonBehavior, BoxLayout): def __init__(self, jid, profile, **kwargs): self.jid = jid self.profile = profile self.nick = kwargs.get('nick') super(JidWidget, self).__init__(**kwargs) def getImage(self, wid): host = G.host if host.contact_lists[self.profile].isRoom(self.jid.bare): wid.opacity = 0 return "" else: return host.getAvatar(self.jid, profile=self.profile) or host.getDefaultAvatar(self.jid)