# HG changeset patch # User Jeremy Thurgood # Date 1316262991 -7200 # Node ID 7f6a28456fda7cfd3bd9f55a952951f254627bf1 # Parent 98ccef2a1a3ce751f9d32e27d7b18436c4e1a755 Cleanup and apply delayed loading to all level menus. diff -r 98ccef2a1a3c -r 7f6a28456fda mamba/habitats/levelmenu.py --- a/mamba/habitats/levelmenu.py Sat Sep 17 14:33:50 2011 +0200 +++ b/mamba/habitats/levelmenu.py Sat Sep 17 14:36:31 2011 +0200 @@ -19,23 +19,27 @@ WIDTH = 5 def __init__(self): - print "init" super(LevelMenu, self).__init__() self.level_buttons = {} self.container.add(GridContainer(width=self.WIDTH)) self.container.add_callback(KEYDOWN, self.keydown_event) def on_enter(self): - print "enter" super(LevelMenu, self).on_enter() - self.setup_levels() + self._setup_levels() def dispatch(self, ev): if HabitatSetupEvent.matches(ev): - self.setup_levels(ev) + self._setup_levels(ev) return super(LevelMenu, self).dispatch(ev) + def _setup_levels(self, ev=None): + if ev is not None: + self.setup_levels() + else: + HabitatSetupEvent.post() + def setup_level(self, i, name): level = self.get_level(name) button = LevelButton((20 + 120 * (i % self.WIDTH), @@ -46,7 +50,7 @@ self.container.add(button) self.level_buttons[name] = button - def setup_levels(self, ev=None): + def setup_levels(self): for i, name in enumerate(self.list_levels()): self.setup_level(i, name) @@ -79,15 +83,6 @@ level_namespace = 'official' - def setup_levels(self, ev=None): - if ev is not None: - self._setup_levels() - else: - HabitatSetupEvent.post() - - def _setup_levels(self): - super(OfficialLevelMenu, self).setup_levels() - def list_levels(self): if not OFFICIAL_LEVELS: OFFICIAL_LEVELS.extend(get_official_levels())