Mercurial > mamba
annotate mamba/widgets/base.py @ 24:30d4f3e62bcf
Refactor widgets *again*, add container to Habitat
author | Stefano Rivera <stefano@rivera.za.net> |
---|---|
date | Sun, 11 Sep 2011 14:21:50 +0200 |
parents | d0e8940df703 |
children | 047273a63054 |
rev | line source |
---|---|
23 | 1 import pygame |
2 | |
3 | |
4 class Widget(object): | |
5 | |
6 def __init__(self, rect): | |
7 self.rect = pygame.Rect(rect) | |
8 | |
24
30d4f3e62bcf
Refactor widgets *again*, add container to Habitat
Stefano Rivera <stefano@rivera.za.net>
parents:
23
diff
changeset
|
9 def event(self, event): |
23 | 10 "Override me" |
11 pass | |
12 | |
24
30d4f3e62bcf
Refactor widgets *again*, add container to Habitat
Stefano Rivera <stefano@rivera.za.net>
parents:
23
diff
changeset
|
13 def draw(self, surface): |
23 | 14 "Override me" |
15 pass | |
16 | |
17 | |
18 class Container(object): | |
19 | |
20 def __init__(self): | |
21 self.children = [] | |
22 | |
23 def event(self, event): | |
24 for child in self.children: | |
25 # TODO mouse events | |
24
30d4f3e62bcf
Refactor widgets *again*, add container to Habitat
Stefano Rivera <stefano@rivera.za.net>
parents:
23
diff
changeset
|
26 child.event(event) |
23 | 27 |
28 def add(self, widget): | |
29 self.children.append(widget) | |
30 | |
31 def draw(self, surface): | |
32 for child in self.children: | |
24
30d4f3e62bcf
Refactor widgets *again*, add container to Habitat
Stefano Rivera <stefano@rivera.za.net>
parents:
23
diff
changeset
|
33 child.draw(surface) |