X-Git-Url: https://git.ctpug.org.za/?a=blobdiff_plain;f=naja%2Fscenes%2Fscene.py;h=4841ab5a628cb3a318ab0c947d1d537f9f0ee03b;hb=232e58a7d1432a6d3d13001c5675e64c5cccd982;hp=ce0b68488eb1a0dc6369fa37c3dd4902cdb8d3e8;hpb=77c817eaeef44416ff09cd53024db9a80f032ba4;p=naja.git diff --git a/naja/scenes/scene.py b/naja/scenes/scene.py index ce0b684..4841ab5 100644 --- a/naja/scenes/scene.py +++ b/naja/scenes/scene.py @@ -2,6 +2,8 @@ Base Scene class. """ +from naja.widgets.base import Container + class Scene(object): """ @@ -11,7 +13,10 @@ class Scene(object): """ def __init__(self, state): self.state = state - self.widgets = [] + self.container = Container() + + def add(self, widget): + self.container.add(widget) def enter(self): pass @@ -19,12 +24,17 @@ class Scene(object): def exit(self): pass - def render(self, surface): - self.render_widgets(surface) + def render_scene(self, surface): + pass - def render_widgets(self, surface): - for widget in self.widgets: - widget.render(surface) + def render(self, surface): + self.render_scene(surface) + self.container.render(surface) def handle_event(self, ev): + if self.container.handle_event(ev): + return + self.handle_scene_event(ev) + + def handle_scene_event(ev): pass