Added avatar support

This commit is contained in:
Anna
2010-05-17 17:31:42 -04:00
parent 522a522129
commit ebf6ec6e22
2 changed files with 40 additions and 3 deletions

View File

@ -2,6 +2,7 @@ import re
import datetime, dateutil.tz
import gtk, gobject
from threading import RLock
from avcache import AvCache
class TweetPane(gtk.ScrolledWindow):
@ -249,8 +250,9 @@ class TweetBox(gtk.HBox):
def init_widgets(self):
# Build the image
self.avatar = gtk.Image()
self.avatar.set_alignment(0.0, 0.0)
self.pack_start(self.avatar, expand=False, fill=False)
self.avatar.hide()
# Everything else goes in a VBox beside the image
text_box = gtk.VBox()
@ -311,6 +313,14 @@ class TweetBox(gtk.HBox):
def set_status(self, status, read=True):
# Set avatar
try:
with AvCache().lock:
self.avatar.set_from_pixbuf(AvCache().map[status.user.screen_name])
self.avatar.show()
except KeyError:
self.avatar.hide()
self.set_read(read)
timezone = dateutil.tz.gettz()
@ -343,7 +353,6 @@ class TweetBox(gtk.HBox):
# If this is in reply to something, set appropriate label
if self.in_reply_to_screen_name and self.in_reply_to_id:
self.reply_to_button.set_label('in reply to ' + self.in_reply_to_screen_name)
def clear_status(self):