diff options
| -rw-r--r-- | README.md | 2 | ||||
| -rwxr-xr-x | src/main.c | 9 | ||||
| -rwxr-xr-x | src/objects.c | 5 |
3 files changed, 14 insertions, 2 deletions
@@ -33,7 +33,7 @@ Then use something like qpwgraph to to force change the input of ``audio_reactiv ## Todo -- [ ] resizeable +- [x] resizeable - [ ] arguments - [ ] settable average peak - [ ] settable RGB @@ -1,5 +1,6 @@ #include <SDL2/SDL_render.h> #include <SDL2/SDL_timer.h> +#include <SDL2/SDL_video.h> #include <stdio.h> #include <stdbool.h> #include <time.h> @@ -24,7 +25,7 @@ int main(int argc, char *argv[]) int startw=600; int starth=600; - SDL_Window *window = SDL_CreateWindow(PROJECT_NAME, SDL_WINDOWPOS_CENTERED, SDL_WINDOWPOS_CENTERED, startw, starth, SDL_WINDOW_SHOWN | SDL_WINDOW_OPENGL); + SDL_Window *window = SDL_CreateWindow(PROJECT_NAME, SDL_WINDOWPOS_CENTERED, SDL_WINDOWPOS_CENTERED, startw, starth, SDL_WINDOW_SHOWN | SDL_WINDOW_OPENGL | SDL_WINDOW_RESIZABLE); if (!window) { printf("Failed to create window: %s\n", SDL_GetError()); } @@ -91,6 +92,12 @@ int main(int argc, char *argv[]) e.window.event == SDL_WINDOWEVENT_FOCUS_GAINED) { window_visible = true; + } else if(SDL_WINDOWEVENT_RESIZED){ + SDL_GetRendererOutputSize(renderer, &stuff.width, &stuff.height); + SDL_DestroyRenderer(renderer); + renderer = SDL_CreateRenderer(window,-1,SDL_RENDERER_SOFTWARE); + stuff.renderer=renderer; + window_resized(&stuff); } } stuff.mx=e.button.x; diff --git a/src/objects.c b/src/objects.c index 7cdfb4c..f48e9ee 100755 --- a/src/objects.c +++ b/src/objects.c @@ -158,3 +158,8 @@ void draw(STUFFS *stuff){ frame_i1++; SDL_RenderPresent(stuff->renderer); } + +void window_resized(STUFFS *stuff){ + stuff->obj.attractor.pos.x=(float)stuff->width/2; + stuff->obj.attractor.pos.y=(float)stuff->height/2; +} |
