diff options
author | Walter Bender <walter.bender@gmail.com> | 2011-11-18 14:35:05 (GMT) |
---|---|---|
committer | Walter Bender <walter.bender@gmail.com> | 2011-11-18 14:35:05 (GMT) |
commit | c5f8224165a607c291904ea78fc6d626f1f28fb5 (patch) | |
tree | 743fc51d0be65429b49739f4ced77c40fc475cf0 /game.py | |
parent | b1bf90471926ff7dc4a1d836b9280c5e7c479748 (diff) |
cairo conversion
Diffstat (limited to 'game.py')
-rw-r--r-- | game.py | 13 |
1 files changed, 12 insertions, 1 deletions
@@ -770,8 +770,19 @@ class Game(): return True def _expose_cb(self, win, event): - self._sprites.redraw_sprites() + ''' Callback to handle window expose events ''' + self.do_expose_event(event) return True + def do_expose_event(self, event): + ''' Handle the expose-event by drawing ''' + # Restrict Cairo to the exposed area + cr = self._canvas.window.cairo_create() + cr.rectangle(event.area.x, event.area.y, + event.area.width, event.area.height) + cr.clip() + # Refresh sprite list + self._sprites.redraw_sprites(cr=cr) + def _destroy_cb(self, win, event): gtk.main_quit() |