From 6b8af9cf83851c075c6c9514b1deaa931c2b19a4 Mon Sep 17 00:00:00 2001 From: Thomas Guillermo Albers Raviola Date: Fri, 16 Jan 2026 23:02:32 +0100 Subject: Initial commit --- 07-july/src/gui/gui_renderer.c | 0 07-july/src/gui/gui_renderer.h | 9 +++++++++ 07-july/src/gui/widget.c | 17 +++++++++++++++++ 07-july/src/gui/widget.h | 13 +++++++++++++ 4 files changed, 39 insertions(+) create mode 100644 07-july/src/gui/gui_renderer.c create mode 100644 07-july/src/gui/gui_renderer.h create mode 100644 07-july/src/gui/widget.c create mode 100644 07-july/src/gui/widget.h (limited to '07-july/src/gui') diff --git a/07-july/src/gui/gui_renderer.c b/07-july/src/gui/gui_renderer.c new file mode 100644 index 0000000..e69de29 diff --git a/07-july/src/gui/gui_renderer.h b/07-july/src/gui/gui_renderer.h new file mode 100644 index 0000000..2c1b57f --- /dev/null +++ b/07-july/src/gui/gui_renderer.h @@ -0,0 +1,9 @@ +#ifndef GUI_RENDERER_H +#define GUI_RENDERER_H + +extern void gui_renderer_init(); +extern void gui_renderer_submit(widget *widget); +extern void gui_renderer_quit(); + + +#endif // GUI_RENDERER_H diff --git a/07-july/src/gui/widget.c b/07-july/src/gui/widget.c new file mode 100644 index 0000000..9ed00f7 --- /dev/null +++ b/07-july/src/gui/widget.c @@ -0,0 +1,17 @@ +#include "widget.h" +#include + +widget_t *Widget_CreateImage(texture_t *texture, int x, int y, int w, int h) +{ + widget_t *widget = (widget_t *) malloc( sizeof(widget_t) ); + *widget = (widget_t){ x, y, w, h, 0, texture }; + + glGenBuffers(1, &widget->vbo); + glBindBuffer(GL_ARRAY_BUFFER, widget->vbo); + glBufferData(GL_ARRAY_BUFFER, sizeof(GLfloat) * 4, NULL, GL_DYNAMIC_DRAW); +} + +void Widget_Destroy(widget_t *widget) +{ + free(widget); +} diff --git a/07-july/src/gui/widget.h b/07-july/src/gui/widget.h new file mode 100644 index 0000000..91fc4c4 --- /dev/null +++ b/07-july/src/gui/widget.h @@ -0,0 +1,13 @@ +#ifndef WIDGET_H +#define WIDGET_H + +#include "GL/glew.h" +#include "../texture.h" + +typedef struct +{ + int x, y, w, h; + texture_t *texture; +} widget_t; + +#endif // WIDGET_H -- cgit v1.2.3