aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDrew DeVault <sir@cmpwn.com>2021-12-15 10:08:25 +0100
committerDrew DeVault <sir@cmpwn.com>2021-12-15 10:08:25 +0100
commita4845006af09ee33a802e2847ca7617626232ea7 (patch)
tree355da81f39f778adccebfb322301253ae1d03d41
parentsdl2::mixer: implement channel playback (diff)
downloadhare-chip8-a4845006af09ee33a802e2847ca7617626232ea7.tar.gz
sdl2: add rect drawing functions
-rw-r--r--sdl2/render.ha33
1 files changed, 33 insertions, 0 deletions
diff --git a/sdl2/render.ha b/sdl2/render.ha
index 19c3940..2c53183 100644
--- a/sdl2/render.ha
+++ b/sdl2/render.ha
@@ -150,6 +150,17 @@ export fn set_texture_blend_mode(
return wrapvoid(_set_texture_blend_mode(texture, mode));
};
+@symbol("SDL_SetRenderDrawBlendMode") fn _set_render_draw_blend_mode(
+ renderer: *renderer, mode: blend_mode) int;
+
+// Set the blend mode used for drawing operations (fill and line).
+export fn set_render_draw_blend_mode(
+ renderer: *renderer,
+ mode: blend_mode,
+) (void | error) = {
+ return wrapvoid(_set_render_draw_blend_mode(renderer, mode));
+};
+
@symbol("SDL_RenderCopy") fn _render_copy(renderer: *renderer,
texture: *texture, srcrect: nullable *rect, dstrect: nullable *rect) int;
@@ -162,3 +173,25 @@ export fn render_copy(
) (void | error) = {
return wrapvoid(_render_copy(renderer, texture, srcrect, dstrect));
};
+
+@symbol("SDL_RenderDrawRect") fn _render_draw_rect(
+ renderer: *renderer, rect: const nullable *rect) int;
+
+// Draw a rectangle on the current rendering target.
+export fn render_draw_rect(
+ renderer: *renderer,
+ rect: const nullable *rect,
+) (void | error) = {
+ return wrapvoid(_render_draw_rect(renderer, rect));
+};
+
+@symbol("SDL_RenderFillRect") fn _render_fill_rect(
+ renderer: *renderer, rect: const nullable *rect) int;
+
+// Fills a rectangle on the current rendering target.
+export fn render_fill_rect(
+ renderer: *renderer,
+ rect: const nullable *rect,
+) (void | error) = {
+ return wrapvoid(_render_fill_rect(renderer, rect));
+};