diff options
author | Rafael Ortiz <rafael@activitycentral.com> | 2011-09-27 17:23:17 (GMT) |
---|---|---|
committer | Rafael Ortiz <rafael@activitycentral.com> | 2011-09-27 17:23:17 (GMT) |
commit | a998a202ee7afe0ef283bbae8eb338294c004abc (patch) | |
tree | 373c8b05cc6a4037388507be1a0fb360ab9a9274 /svglabel.py | |
parent | 5a0c2083c7b04a5d4b30ef0a91ddcb4e0b236535 (diff) |
matching mainline
Diffstat (limited to 'svglabel.py')
-rw-r--r-- | svglabel.py | 62 |
1 files changed, 33 insertions, 29 deletions
diff --git a/svglabel.py b/svglabel.py index ef2ab74..9991765 100644 --- a/svglabel.py +++ b/svglabel.py @@ -15,20 +15,20 @@ # Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA. # -import gtk, pygtk +import gtk import rsvg -import cairo import re + class SvgLabel(gtk.DrawingArea): - + filename = '' fill_color = '' stroke_color = '' background_color = '' - - - def __init__(self, filename, fill_color, stroke_color, pixbuf = False, background_color = '', request_x = 45, request_y = 45): + + def __init__(self, filename, fill_color, stroke_color, pixbuf=False, + background_color='', request_x=45, request_y=45): gtk.DrawingArea.__init__(self) self.set_size_request(request_x, request_y) self.filename = filename @@ -38,15 +38,16 @@ class SvgLabel(gtk.DrawingArea): self.modify_bg(gtk.STATE_NORMAL, gtk.gdk.color_parse(background_color)) if pixbuf: self.pixbuf = pixbuf - else: - self.pixbuf = self._read_icon_data(self.filename, self.fill_color, self.stroke_color) - + else: + self.pixbuf = self._read_icon_data(self.filename, self.fill_color, + self.stroke_color) + self.connect('expose-event', self._expose_cb) - + def _expose_cb(self, widget, event): widget.window.draw_pixbuf(None, self.pixbuf, 0, 0, 0, 0) return False - + def _read_icon_data(self, filename, fill_color, stroke_color): icon_file = open(filename, 'r') data = icon_file.read() @@ -62,38 +63,41 @@ class SvgLabel(gtk.DrawingArea): self.data_size = len(data) return rsvg.Handle(data=data).get_pixbuf() - + def set_color(self, fill_color, stroke_color): self.fill_color = fill_color self.stroke_color = stroke_color - self.pixmap = self._read_icon_data(self.filename, self.fill_color, self.stroke_color) - self.queue_draw() - + self.pixmap = self._read_icon_data(self.filename, self.fill_color, + self.stroke_color) + self.queue_draw() + def set_fill_color(self, fill_color): self.fill_color = fill_color - self.pixmap = self._read_icon_data(self.filename, self.fill_color, self.stroke_color) - self.queue_draw() - + self.pixmap = self._read_icon_data(self.filename, self.fill_color, + self.stroke_color) + self.queue_draw() + def get_fill_color(self): return self.fill_color - + def set_stroke_color(self, stroke_color): self.stroke_color = stroke_color - self.pixmap = self._read_icon_data(self.filename, self.fill_color, self.stroke_color) - self.queue_draw() - + self.pixmap = self._read_icon_data(self.filename, self.fill_color, + self.stroke_color) + self.queue_draw() + def get_stroke_color(self): return self.stroke_color - + def get_pixbuf(self): return self.pixbuf - + def set_pixbuf(self, pixbuf): self.pixbuf = pixbuf - self.queue_draw() - + self.queue_draw() + def set_background(self, background_color): self.background_color = background_color - self.modify_bg(gtk.STATE_NORMAL, gtk.gdk.color_parse(self.background_color)) - self.queue_draw() - + self.modify_bg(gtk.STATE_NORMAL, + gtk.gdk.color_parse(self.background_color)) + self.queue_draw() |