A TextWidget
[naja.git] / naja / widgets / base.py
1 import pygame
2
3
4 class Widget(object):
5     def __init__(self, pos, size=None):
6         self.pos = pos
7         self.size = size or (0, 0)
8         self._prepared = False
9
10     @property
11     def rect(self):
12         return pygame.Rect(self.pos, self.size)
13
14     def draw(self, surface):
15         raise NotImplemented()
16
17     def prepare(self):
18         if not self._prepared:
19             self._prepare()
20             self._prepared = True
21
22     def _prepare(self):
23         raise NotImplemented()