aboutsummaryrefslogtreecommitdiff
path: root/viewport.c
diff options
context:
space:
mode:
authorrodri <rgl@antares-labs.eu>2024-02-27 11:29:06 +0000
committerrodri <rgl@antares-labs.eu>2024-02-27 11:29:06 +0000
commite0baf147d655409b721e41b0e3effabd39a96b34 (patch)
treeddfe6bbcaa5651650e8ff1f6e0b3b4dcc0bf07ee /viewport.c
parentc0bc9d332f3ab51a43d5e3d0da2d5a32e938b1d2 (diff)
downloadlibgraphics-e0baf147d655409b721e41b0e3effabd39a96b34.tar.gz
libgraphics-e0baf147d655409b721e41b0e3effabd39a96b34.tar.bz2
libgraphics-e0baf147d655409b721e41b0e3effabd39a96b34.zip
have separate routines for drawing and memdrawing.
Diffstat (limited to 'viewport.c')
-rw-r--r--viewport.c14
1 files changed, 14 insertions, 0 deletions
diff --git a/viewport.c b/viewport.c
index 81e1653..0e9b9c5 100644
--- a/viewport.c
+++ b/viewport.c
@@ -8,6 +8,18 @@
#include "graphics.h"
#include "internal.h"
+static void
+viewport_draw(Viewport *v, Image *dst)
+{
+ v->fbctl->draw(v->fbctl, dst);
+}
+
+static void
+viewport_memdraw(Viewport *v, Memimage *dst)
+{
+ v->fbctl->memdraw(v->fbctl, dst);
+}
+
Viewport *
mkviewport(Rectangle r)
{
@@ -18,6 +30,8 @@ mkviewport(Rectangle r)
v->bx = Vec2(1,0);
v->by = Vec2(0,1);
v->fbctl = mkfbctl(r);
+ v->draw = viewport_draw;
+ v->memdraw = viewport_memdraw;
return v;
}