1 //gcc -Wextra -pedantic-errors -o main.out main.c -lSDL2
9 #define WINDOW_WIDTH 600
13 SDL_Renderer
*renderer
;
17 SDL_Init(SDL_INIT_VIDEO
);
18 SDL_CreateWindowAndRenderer(WINDOW_WIDTH
, WINDOW_WIDTH
, 0, &window
, &renderer
);
19 //SDL_SetWindowFullscreen(window, SDL_WINDOW_FULLSCREEN_DESKTOP);
21 SDL_SetRenderDrawColor(renderer
, 0, 0, 0, 0);
22 SDL_RenderClear(renderer
);
23 SDL_SetRenderDrawColor(renderer
, 255, 0, 0, 255);
25 for (i
= 0; i
< WINDOW_WIDTH
; ++i
)
26 SDL_RenderDrawPoint(renderer
, i
, i
);
28 SDL_RenderPresent(renderer
);
32 Uint32 fullscreen_status
= 0;
36 if(SDL_PollEvent(&event
)) {
43 printf("Key: %d\t%d\t%d\n", event
.key
.keysym
.scancode
, event
.key
.keysym
.sym
, event
.key
.keysym
.mod
);
45 if(event
.key
.keysym
.scancode
== SDL_SCANCODE_F
&& event
.key
.keysym
.mod
== KMOD_LCTRL
) {
46 fullscreen_status
= fullscreen_status
? 0 : SDL_WINDOW_FULLSCREEN_DESKTOP
;
47 SDL_SetWindowFullscreen(window
, fullscreen_status
);
50 if(event
.key
.keysym
.scancode
== SDL_SCANCODE_Q
&& event
.key
.keysym
.mod
== KMOD_LCTRL
) {
55 case SDL_MOUSEBUTTONDOWN
:
56 //do whatever you want to do after a mouse button was pressed,
58 //if(event.button.button == SDL_BUTTON_LEFT) {
59 while(event
.type
!= SDL_MOUSEBUTTONUP
) {
60 SDL_GetMouseState(&mouseX
, &mouseY
);
61 SDL_RenderDrawPoint(renderer
, mouseX
, mouseY
);
62 SDL_RenderDrawPoint(renderer
, mouseX
, mouseY
+1);
63 SDL_RenderDrawPoint(renderer
, mouseX
+1, mouseY
);
64 SDL_RenderDrawPoint(renderer
, mouseX
+1, mouseY
+1);
65 SDL_RenderPresent(renderer
);
66 SDL_PollEvent(&event
);
68 printf("Click: %d\t%d\t%d\n", mouseX
, mouseY
, event
.button
.button
);
75 SDL_DestroyRenderer(renderer
);
76 SDL_DestroyWindow(window
);