aboutsummaryrefslogtreecommitdiff
path: root/tests/sdl_resize.c
diff options
context:
space:
mode:
authorAlon Zakai <alonzakai@gmail.com>2012-10-17 11:25:01 -0700
committerAlon Zakai <alonzakai@gmail.com>2012-10-17 13:58:42 -0700
commit998106173842d2e6510368ed0ef325fe78370475 (patch)
tree1ca5d212b130faf485971c0db933c2030fa2ea99 /tests/sdl_resize.c
parentee500a3d942327563451bfc81dee0a3044a3cb7e (diff)
support for SDL resize event
Diffstat (limited to 'tests/sdl_resize.c')
-rw-r--r--tests/sdl_resize.c45
1 files changed, 45 insertions, 0 deletions
diff --git a/tests/sdl_resize.c b/tests/sdl_resize.c
new file mode 100644
index 00000000..dc3b374e
--- /dev/null
+++ b/tests/sdl_resize.c
@@ -0,0 +1,45 @@
+#include <stdio.h>
+#include <SDL/SDL.h>
+#include <SDL/SDL_ttf.h>
+#include <assert.h>
+#include <emscripten.h>
+
+int stage = 0;
+
+void loop() {
+ SDL_Event event;
+ while (SDL_PollEvent(&event)) {
+ switch(event.type) {
+ case SDL_VIDEORESIZE: {
+ SDL_ResizeEvent *r = (SDL_ResizeEvent*)&event;
+ printf("resize event! %d:%d\n", r->w, r->h);
+ switch (stage) {
+ case 0:
+ assert(r->w == 100);
+ assert(r->h == 200);
+ emscripten_set_canvas_size(123, 246);
+ stage++;
+ break;
+ case 1:
+ assert(r->w == 123);
+ assert(r->h == 246);
+ int result = 1;
+ REPORT_RESULT();
+ break;
+ }
+ }
+ }
+ }
+}
+
+void main_2();
+
+int main() {
+ SDL_Init(SDL_INIT_VIDEO);
+ SDL_Surface *screen = SDL_SetVideoMode(600, 450, 32, SDL_HWSURFACE);
+
+ emscripten_set_canvas_size(100, 200);
+
+ emscripten_set_main_loop(loop, 0, 0);
+}
+