Unify the PEP drawing methods in the RosterWindow.
This commit is contained in:
parent
30191888ba
commit
b7c7beafd9
|
@ -1276,53 +1276,31 @@ class RosterWindow:
|
||||||
|
|
||||||
return False
|
return False
|
||||||
|
|
||||||
|
|
||||||
def draw_mood(self, jid, account):
|
def draw_mood(self, jid, account):
|
||||||
iters = self._get_contact_iter(jid, account, model=self.model)
|
if gajim.config.get('show_mood_in_roster'):
|
||||||
if not iters or not gajim.config.get('show_mood_in_roster'):
|
self._draw_pep(jid, account, 'tune', C_MOOD_PIXBUF)
|
||||||
return
|
|
||||||
jid = self.model[iters[0]][C_JID].decode('utf-8')
|
|
||||||
contact = gajim.contacts.get_contact(account, jid)
|
|
||||||
if 'mood' in contact.pep:
|
|
||||||
pixbuf = contact.pep['mood'].asPixbufIcon()
|
|
||||||
else:
|
|
||||||
pixbuf = None
|
|
||||||
for child_iter in iters:
|
|
||||||
self.model[child_iter][C_MOOD_PIXBUF] = pixbuf
|
|
||||||
return False
|
|
||||||
|
|
||||||
|
|
||||||
def draw_activity(self, jid, account):
|
def draw_activity(self, jid, account):
|
||||||
iters = self._get_contact_iter(jid, account, model=self.model)
|
if gajim.config.get('show_activity_in_roster'):
|
||||||
if not iters or not gajim.config.get('show_activity_in_roster'):
|
self._draw_pep(jid, account, 'tune', C_ACTIVITY_PIXBUF)
|
||||||
return
|
|
||||||
jid = self.model[iters[0]][C_JID]
|
|
||||||
jid = jid.decode('utf-8')
|
|
||||||
contact = gajim.contacts.get_contact(account, jid)
|
|
||||||
if 'activity' in contact.pep:
|
|
||||||
pixbuf = contact.pep['activity'].asPixbufIcon()
|
|
||||||
else:
|
|
||||||
pixbuf = None
|
|
||||||
for child_iter in iters:
|
|
||||||
self.model[child_iter][C_ACTIVITY_PIXBUF] = pixbuf
|
|
||||||
return False
|
|
||||||
|
|
||||||
|
|
||||||
def draw_tune(self, jid, account):
|
def draw_tune(self, jid, account):
|
||||||
|
if gajim.config.get('show_tunes_in_roster'):
|
||||||
|
self._draw_pep(jid, account, 'tune', C_TUNE_PIXBUF)
|
||||||
|
|
||||||
|
def _draw_pep(self, jid, account, pep_type, model_column):
|
||||||
iters = self._get_contact_iter(jid, account, model=self.model)
|
iters = self._get_contact_iter(jid, account, model=self.model)
|
||||||
if not iters or not gajim.config.get('show_tunes_in_roster'):
|
if not iters:
|
||||||
return
|
return
|
||||||
jid = self.model[iters[0]][C_JID]
|
jid = self.model[iters[0]][C_JID]
|
||||||
jid = jid.decode('utf-8')
|
jid = jid.decode('utf-8')
|
||||||
contact = gajim.contacts.get_contact(account, jid)
|
contact = gajim.contacts.get_contact(account, jid)
|
||||||
if 'tune' in contact.pep:
|
if pep_type in contact.pep:
|
||||||
pixbuf = contact.pep['tune'].asPixbufIcon()
|
pixbuf = contact.pep[pep_type].asPixbufIcon()
|
||||||
else:
|
else:
|
||||||
pixbuf = None
|
pixbuf = None
|
||||||
for child_iter in iters:
|
for child_iter in iters:
|
||||||
self.model[child_iter][C_TUNE_PIXBUF] = pixbuf
|
self.model[child_iter][model_column] = pixbuf
|
||||||
return False
|
|
||||||
|
|
||||||
|
|
||||||
def draw_avatar(self, jid, account):
|
def draw_avatar(self, jid, account):
|
||||||
iters = self._get_contact_iter(jid, account, model=self.model)
|
iters = self._get_contact_iter(jid, account, model=self.model)
|
||||||
|
|
Loading…
Reference in New Issue