diff mde/menus.d @ 132:264028f4115a

Cleaned up mde.imde and a couple of widget functions. New mde.menus module to add default menus. The input singleton is now created in mde.input.Input instead of mde.imde.
author Diggory Hardy <diggory.hardy@gmail.com>
date Fri, 23 Jan 2009 14:59:05 +0000
parents
children 9fd705793568
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/mde/menus.d	Fri Jan 23 14:59:05 2009 +0000
@@ -0,0 +1,40 @@
+/* LICENSE BLOCK
+Part of mde: a Modular D game-oriented Engine
+Copyright © 2007-2008 Diggory Hardy
+
+This program is free software: you can redistribute it and/or modify it under
+the terms of the GNU General Public License as published by the Free Software
+Foundation, either version 2 of the License, or (at your option) any later version.
+
+This program is distributed in the hope that it will be useful, but WITHOUT ANY
+WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A
+PARTICULAR PURPOSE. See the GNU General Public License for more details.
+
+You should have received a copy of the GNU General Public License
+along with this program.  If not, see <http://www.gnu.org/licenses/>. */
+
+/******************************************************************************
+ * Import this module to add some standard menus to imde.menus.
+ * 
+ * Note that the widget manager also adds menu items in debug mode.
+ *****************************************************************************/
+module mde.menus;
+
+import mde.content.miscContent;
+import mde.imde;
+debug {
+    import tango.util.log.Log : Log, Logger;
+    private Logger logger;
+    static this () {
+        logger = Log.getLogger ("mde.menus");
+    }
+}
+
+static this () {
+    auto quit = new EventContent("quit");
+    quit.addCallback ((Content){
+        debug logger.trace ("Quit (from menu)");
+        run = false;
+    });
+    menus.append (new ContentList ("main", [cast(Content)quit]));
+}