Web   ·   Wiki   ·   Activities   ·   Blog   ·   Lists   ·   Chat   ·   Meeting   ·   Bugs   ·   Git   ·   Translate   ·   Archive   ·   People   ·   Donate
summaryrefslogtreecommitdiffstats
path: root/sprites.py
diff options
context:
space:
mode:
authorWalter Bender <walter@walter-laptop.(none)>2009-12-23 12:40:07 (GMT)
committer Walter Bender <walter@walter-laptop.(none)>2009-12-23 12:40:07 (GMT)
commit81218718ceafaa22f71a4c97d81f395c0773a9fc (patch)
tree2efec8011f52e6200b6f733bb9d2e439a7306965 /sprites.py
parent2b6be3b9b819f7c1e8bb23a7f9d565291caf81dd (diff)
more label support
Diffstat (limited to 'sprites.py')
-rw-r--r--sprites.py10
1 files changed, 7 insertions, 3 deletions
diff --git a/sprites.py b/sprites.py
index cf993b9..eb480c2 100644
--- a/sprites.py
+++ b/sprites.py
@@ -33,7 +33,6 @@ class Sprites:
self.area = self.canvas.window
self.gc = self.area.new_gc()
self.cm = self.gc.get_colormap()
- self.color = self.cm.alloc_color('black')
self.fd = pango.FontDescription('Sans')
self.list = []
@@ -75,6 +74,7 @@ class Sprites:
class Sprite:
def __init__(self, sprites, x, y, image):
+ self.sprites = sprites
self.x = x
self.y = y
self.layer = 100
@@ -82,8 +82,8 @@ class Sprite:
self.scale = 12
self.horiz_align = "center"
self.vert_align = "middle"
+ self.color = self.sprites.cm.alloc_color('black')
self.set_image(image)
- self.sprites = sprites
self.sprites.append_to_list(self)
def set_image(self, image):
@@ -122,6 +122,9 @@ class Sprite:
self.label = str(label)
self.inval()
+ def set_label_color(self, r, g, b):
+ self.color = self.sprites.cm.alloc_color(r, g, b)
+
def set_label_attributes(self, scale, horiz_align="center",
vert_align="middle"):
self.scale = scale
@@ -165,6 +168,7 @@ class Sprite:
self.sprites.fd.set_size(int(self.scale*pango.SCALE))
pl.set_font_description(self.sprites.fd)
w = pl.get_size()[0]/pango.SCALE
+ # check to see if w excedes self.width, in which case, rescale
if self.horiz_align == "center":
x = int(self.x+(self.width-w)/2)
elif self.horiz_align == 'left':
@@ -178,5 +182,5 @@ class Sprite:
y = self.y
else: # bottom align
y = int(self.y+self.height-h)
- self.sprites.gc.set_foreground(self.sprites.color)
+ self.sprites.gc.set_foreground(self.color)
self.sprites.area.draw_layout(self.sprites.gc, x, y, pl)