diff options
| author | Arslaan Pathan <[email protected]> | 2026-04-08 13:41:35 +1200 |
|---|---|---|
| committer | Arslaan Pathan <[email protected]> | 2026-04-08 13:41:35 +1200 |
| commit | c9660a840256308d4dde40613a1af3296d3fdead (patch) | |
| tree | 13e3049ea6bc6d2606bffeced7dc1ead990a1169 /src/saffron.c | |
| parent | 04ff8c0a6acc2cc9204492690b7f99f892ed439a (diff) | |
| download | saffron-c9660a840256308d4dde40613a1af3296d3fdead.tar.xz saffron-c9660a840256308d4dde40613a1af3296d3fdead.zip | |
what (i cannot put the commit message into words)
I added a lot of stuff, it dont really work fully yet but its very good stuff
Diffstat (limited to 'src/saffron.c')
| -rw-r--r-- | src/saffron.c | 34 |
1 files changed, 25 insertions, 9 deletions
diff --git a/src/saffron.c b/src/saffron.c index dc6e470..8724101 100644 --- a/src/saffron.c +++ b/src/saffron.c @@ -1,13 +1,29 @@ #include <stdio.h> +#include <stdbool.h> +#include <stdlib.h> #include <SDL3/SDL.h> #include <SDL3_ttf/SDL_ttf.h> -#include <SDL3/SDL_main.h> +#include <saffron.h> /* meson include directories */ -typedef struct SaffronWidget { - int x, y, w, h; - void (*draw)(struct SaffronWidget *self, SDL_Renderer *renderer); - void (*on_click)(struct SaffronWidget *self); - struct SaffronWidget *parent; - struct SaffronWidget **children; - int child_count; -} SaffronWidget; +bool saffron_init(void) { + if (!SDL_Init(SDL_INIT_VIDEO)) { + printf("[saffron] SDL init failed: %s\n", SDL_GetError()); + return false; + } + if (!TTF_Init()) { + printf("[saffron] TTF init failed: %s\n", SDL_GetError()); + return false; + } + return true; +} + +void saffron_widget_draw(SaffronWidget* widget, SDL_Renderer *renderer) { + // do stuff later +} + +void saffron_widget_add_child(SaffronWidget *parent, SaffronWidget *child) { + child->parent = parent; + parent->children = realloc(parent->children, sizeof(SaffronWidget*) * (parent->child_count + 1)); + parent->children[parent->child_count] = child; + parent->child_count++; +} |
