2023-11-29 01:42:44 +02:00
|
|
|
#pragma once
|
|
|
|
|
|
|
|
|
|
#include <stdbool.h>
|
|
|
|
|
|
|
|
|
|
#include "text.h"
|
|
|
|
|
|
2023-11-29 05:28:54 +02:00
|
|
|
typedef struct ZephWindow {
|
|
|
|
|
Size size;
|
|
|
|
|
bool is_fullscreen;
|
|
|
|
|
} ZephWindow;
|
|
|
|
|
|
2023-11-29 01:42:44 +02:00
|
|
|
typedef struct Context {
|
|
|
|
|
bool should_quit;
|
|
|
|
|
Color clear_color;
|
|
|
|
|
Size screen_size;
|
2023-11-29 05:28:54 +02:00
|
|
|
ZephWindow window;
|
2023-11-29 01:42:44 +02:00
|
|
|
ZephFont font;
|
|
|
|
|
|
|
|
|
|
Matrix4x4 projection;
|
|
|
|
|
} Context;
|
|
|
|
|
|
|
|
|
|
int init_zephr(const char* font_path, const char* window_title, Size window_size, Color *clear_color);
|
|
|
|
|
void deinit_zephr();
|
|
|
|
|
bool zephr_should_quit();
|
|
|
|
|
void zephr_swap_buffers();
|
|
|
|
|
Size zephr_get_window_size();
|
|
|
|
|
void zephr_make_window_non_resizable();
|
2023-11-29 05:28:54 +02:00
|
|
|
void zephr_toggle_fullscreen();
|
|
|
|
|
void zephr_quit();
|