X-Git-Url: http://git.mutantstargoat.com/user/nuclear/?a=blobdiff_plain;f=src%2Fmain.cc;h=01c9d12e6b3e66e322566624460c5c37053f85de;hb=c5c29f4044110dd153ee5ca3b018c812d518a053;hp=45b56325282bbdb89a74e3947ccd14971e81aa18;hpb=c64bd959ffb4034cb288780f13a351b00fb22ca0;p=laserbrain_demo diff --git a/src/main.cc b/src/main.cc index 45b5632..01c9d12 100644 --- a/src/main.cc +++ b/src/main.cc @@ -5,7 +5,7 @@ #include #include "app.h" -static bool init(); +static bool init(int argc, char **argv); static void process_event(SDL_Event *ev); static void proc_modkeys(); @@ -51,7 +51,7 @@ int main(int argc, char **argv) SDL_GL_GetDrawableSize(win, &win_width, &win_height); win_aspect = (float)win_width / (float)win_height; - if(!init()) { + if(!init(argc, argv)) { SDL_Quit(); return 1; } @@ -90,11 +90,51 @@ unsigned int app_get_modifiers() return modkeys; } -static bool init() +void app_resize(int x, int y) +{ + SDL_SetWindowSize(win, x, y); +} + +void app_fullscreen(bool fs) +{ + SDL_SetWindowFullscreen(win, fs ? SDL_WINDOW_FULLSCREEN_DESKTOP : 0); + fullscreen = fs; +} + +void app_toggle_fullscreen() +{ + app_fullscreen(!fullscreen); +} + +bool app_is_fullscreen() +{ + return fullscreen; +} + +void app_grab_mouse(bool grab) +{ + SDL_SetWindowGrab(win, grab ? SDL_TRUE : SDL_FALSE); + SDL_ShowCursor(grab ? 1 : 0); + SDL_SetRelativeMouseMode(grab ? SDL_TRUE : SDL_FALSE); + mouse_grabbed = grab; +} + +void app_toggle_grab_mouse() +{ + app_grab_mouse(!mouse_grabbed); +} + +bool app_is_mouse_grabbed() +{ + return mouse_grabbed; +} + + +static bool init(int argc, char **argv) { glewInit(); - if(!app_init()) { + if(!app_init(argc, argv)) { return false; }