#ifndef PLATFORM #define PLATFORM #include #include typedef struct Color { uint8_t r, g, b; } Color; #define WHITE ((Color){255,255,255}) #define BLACK ((Color){0,0,0}) typedef enum Key { Key_backspace, Key_ctrl, Key_enter, Key_h, Key_n, Key_p, Key_y, Count_Key } Key; bool KeyIsDown(Key key); bool KeyIsUp(Key key); bool KeyIsJustPressedOrRepeat(Key key); bool KeyIsJustPressed(Key key); bool KeyIsJustReleased(Key key); bool InputGetNextPrintable(char const *out_key); typedef struct Screen { void *handle; } Screen; typedef struct Window { int width; int height; void *handle; Screen screen; } Window; Screen ScreenGetFocused(); int ScreenGetWidth(Screen screen); int ScreenGetHeight(Screen screen); // Make a window specifically suitable for tools like launchers. // Always on top, not resizable, closes on lost focus. Window ScreenMakeStaticWindow(int x, int y, int width, int height); void WindowClear(Color color); #endif /* PLATFORM */