41 lines
710 B
C
41 lines
710 B
C
#ifndef GUI_H
|
|
#define GUI_H
|
|
|
|
#include <stdint.h>
|
|
|
|
#define GUI_EVENT_CLOSE_WINDOW 1u
|
|
#define GUI_EVENT_EXPOSE 2u
|
|
#define GUI_EVENT_KEY_PRESS 3u
|
|
#define GUI_EVENT_KEY_RELEASE 4u
|
|
#define GUI_EVENT_BUTTON_PRESS 5u
|
|
#define GUI_EVENT_BUTTON_RELEASE 6u
|
|
|
|
typedef struct
|
|
{
|
|
uint32_t key;
|
|
uint8_t mods;
|
|
} Gui_KeyEvent;
|
|
|
|
typedef struct
|
|
{
|
|
uint8_t button;
|
|
} Gui_ButtonEvent;
|
|
|
|
typedef struct
|
|
{
|
|
uint8_t type;
|
|
union
|
|
{
|
|
Gui_KeyEvent key;
|
|
Gui_ButtonEvent button;
|
|
};
|
|
} Gui_Event;
|
|
|
|
bool Gui_Init();
|
|
void * Gui_CreateWindow();
|
|
void Gui_SwapBuffers(void * window);
|
|
void Gui_CloseWindow(void * window);
|
|
void Gui_WaitForEvent(Gui_Event * event);
|
|
|
|
#endif
|