X-Git-Url: http://git.mutantstargoat.com/user/nuclear/?a=blobdiff_plain;f=src%2Fapp.h;h=2867309885f1f78000b03c78fa1ab950bbdcb606;hb=458f4c5972fc6b0ba43ea42c3b8d5c211d8f3f3d;hp=926c2d24abf9a84ed8f735b0e19e2220c7b343b1;hpb=84484521a697fe60f63bff077b9ba7475a45e54e;p=laserbrain_demo diff --git a/src/app.h b/src/app.h index 926c2d2..2867309 100644 --- a/src/app.h +++ b/src/app.h @@ -1,6 +1,39 @@ #ifndef APP_H_ #define APP_H_ +extern long time_msec; +extern int win_width, win_height; +extern float win_aspect; extern bool opt_gear_wireframe; +enum { + MOD_SHIFT = 1, + MOD_ALT = 2, + MOD_CTRL = 4 +}; + +bool app_init(); +void app_cleanup(); + +void app_display(); +void app_reshape(int x, int y); + +void app_keyboard(int key, bool pressed); +void app_mouse_button(int bn, bool pressed, int x, int y); +void app_mouse_motion(int x, int y); +void app_mouse_delta(int dx, int dy); + +// the following functions are implemented by the backend (main.cc) +void app_quit(); +void app_swap_buffers(); +unsigned int app_get_modifiers(); + +void app_resize(int x, int y); +void app_fullscreen(bool fs); +void app_toggle_fullscreen(); +bool app_is_fullscreen(); +void app_grab_mouse(bool grab); +void app_toggle_grab_mouse(); +bool app_is_mouse_grabbed(); + #endif // APP_H_