diff mde/events.d @ 30:467c74d4804d

Major changes to the scheduler, previously only used by the main loop. Revamped Scheduler. Functions can be removed, have multiple schedules, have their scheduling changed, etc. Scheduler has a unittest. Checked all pass. Main loop scheduler moved to mde. Draw-on-demand currently disabled, simplifying this. Made mtunitest.d remove the temporary file it uses afterwards. committer: Diggory Hardy <diggory.hardy@gmail.com>
author Diggory Hardy <diggory.hardy@gmail.com>
date Mon, 28 Apr 2008 10:59:47 +0100
parents f985c28c0ec9
children baa87e68d7dc
line wrap: on
line diff
--- a/mde/events.d	Sat Apr 12 14:10:13 2008 +0100
+++ b/mde/events.d	Mon Apr 28 10:59:47 2008 +0100
@@ -17,16 +17,16 @@
 module mde.events;
 
 import global = mde.global;
-static import mde.SDL;
+import sdl = mde.SDL;           // resizeWindow
 
 import mde.input.input;
 import mde.input.exception;
 
 import mde.scheduler.InitFunctions;
-import mde.scheduler.runTime;
 
 import derelict.sdl.events;
 
+import tango.time.Time;
 import tango.util.log.Log : Log, Logger;
 
 private Logger logger;
@@ -34,8 +34,6 @@
     logger = Log.getLogger ("mde.events");
     
     init.addFunc (&initInput, "initInput");
-
-    Scheduler.perFrame (&mde.events.pollEvents);
 }
 
 void initInput () { // init func
@@ -54,7 +52,7 @@
     }
 }
 
-void pollEvents (double) {
+void pollEvents (TimeSpan) {
     SDL_Event event;
     while (SDL_PollEvent (&event)) {
         switch (event.type) {
@@ -63,13 +61,13 @@
                 global.run = false;
                 break;
             case SDL_VIDEORESIZE:
-                mde.SDL.resizeWindow (event.resize.w, event.resize.h);
-                Scheduler.requestUpdate(RF_KEYS.DRAW);
+                sdl.resizeWindow (event.resize.w, event.resize.h);
+                //global.scheduler.request(global.SCHEDULE.DRAW);
                 break;
-            case SDL_ACTIVEEVENT:
+            /+case SDL_ACTIVEEVENT:
             case SDL_VIDEOEXPOSE:
-                Scheduler.requestUpdate(RF_KEYS.DRAW);
-                break;
+                //global.scheduler.request(global.SCHEDULE.DRAW);
+                break;+/
             default:
                 try {
                     global.input (event);