added generic support for handling user events
[rocksndiamonds.git] / src / libgame / system.c
index 488e838e8c4b82650edbcd48caee246420f1c6d8..15e86a4afbc7084012132acac0f133577914085f 100644 (file)
@@ -317,6 +317,8 @@ void InitGfxCustomArtworkInfo(void)
 void InitGfxOtherSettings(void)
 {
   gfx.cursor_mode = CURSOR_DEFAULT;
+  gfx.mouse_x = 0;
+  gfx.mouse_y = 0;
 }
 
 void InitTileCursorInfo(void)
@@ -1731,12 +1733,18 @@ void StopTextInput(void)
 #endif
 }
 
-boolean CheckCloseWindowEvent(ClientMessageEvent *event)
+void PushUserEvent(int code, int value1, int value2)
 {
-  if (event->type != EVENT_CLIENTMESSAGE)
-    return FALSE;
+  UserEvent event;
+
+  SDL_memset(&event, 0, sizeof(event));
+
+  event.type = EVENT_USER;
+  event.code = code;
+  event.value1 = value1;
+  event.value2 = value2;
 
-  return TRUE;         // the only possible message here is SDL_QUIT
+  SDL_PushEvent((SDL_Event *)&event);
 }