changeset 400:03db0d517ac3

Little bit of refactoring.
author Jeremy Thurgood <firxen@gmail.com>
date Sat, 17 Sep 2011 11:34:11 +0200
parents 12d67f69e6b2
children 20b424c5c1ef
files mamba/habitats/mainmenu.py
diffstat 1 files changed, 12 insertions(+), 15 deletions(-) [+]
line wrap: on
line diff
--- a/mamba/habitats/mainmenu.py	Sat Sep 17 11:28:18 2011 +0200
+++ b/mamba/habitats/mainmenu.py	Sat Sep 17 11:34:11 2011 +0200
@@ -13,21 +13,11 @@
 class MainMenu(Habitat):
     def __init__(self):
         super(MainMenu, self).__init__()
-        start = TextButton((100, 100), "Play game")
-        start.add_callback('clicked', self.start_event)
-        self.container.add(start)
-        edit = TextButton((100, 200), "Edit level")
-        edit.add_callback('clicked', self.edit_event)
-        self.container.add(edit)
-        quit = TextButton((100, 300), "Quit")
-        quit.add_callback('clicked', self.quit_keydown_event)
-        self.container.add(quit)
-        userlevels = TextButton((100, 400), "User Levels")
-        userlevels.add_callback('clicked', self.userlevels_event)
-        self.container.add(userlevels)
-        networklevels = TextButton((100, 500), "Network Levels")
-        networklevels.add_callback('clicked', self.networklevels_event)
-        self.container.add(networklevels)
+        self.add_button((100, 100), "Play game", self.start_event)
+        self.add_button((100, 200), "Edit level", self.edit_event)
+        self.add_button((100, 300), "Quit", self.quit_keydown_event)
+        self.add_button((100, 400), "User Levels", self.userlevels_event)
+        self.add_button((100, 500), "Network Levels", self.networklevels_event)
         self.container.add_callback(KEYDOWN, self.keydown_event)
 
         # Just for debugging cascading containers...
@@ -38,6 +28,13 @@
         c.add(TextButton((400, 200), "4"))
         self.container.add(c)
 
+    def add_button(self, pos, text, clicked):
+        button = TextButton(pos, text)
+        if clicked is not None:
+            button.add_callback('clicked', clicked)
+        self.container.add(button)
+        return button
+
     def start_event(self, ev, widget):
         from mamba.habitats.levelmenu import LevelMenu
         NewHabitatEvent.post(LevelMenu())