123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172 |
- #ifndef CORE_WINDOW_H
- #define CORE_WINDOW_H
- #include <core/Vector.h>
- typedef bool (*CoreWindowRunHandler)(void* data);
- typedef void (*CoreWindowTickHandler)(void* data);
- typedef void (*CoreWindowRenderHandler)(void* data, float lag);
- typedef struct {
- CoreIntVector2 size;
- bool fullscreen;
- const char* name;
- } CoreWindowOptions;
- bool coreWindowOpen(const CoreWindowOptions* options);
- void coreWindowClose(void);
- void coreWindowShow(void);
- void coreWindowTrapCursor(void);
- void coreWindowFreeCursor(void);
- bool coreWindowIsCursorTrapped(void);
- const CoreIntVector2* coreWindowGetSize(void);
- bool CoreWindowSizeChanged(void);
- bool coreWindowShouldClose(void);
- void coreWindowRunHandler(CoreWindowRunHandler wr, void* data);
- void coreWindowTickHandler(CoreWindowTickHandler t, void* data);
- void coreWindowRenderHandler(CoreWindowRenderHandler r, void* data);
- void coreWindowNanosPerTick(i64 nanos);
- void coreWindowRun(void);
- float coreWindowTicksPerSecond(void);
- float coreWindowFramesPerSecond(void);
- // namespace Input {
- // void setLimit(int limit);
- // void reset();
- // void enable();
- // void disable();
- // bool isEnabled();
- // void fill(const char* s);
- // int getCursor();
- // void setCursor(int index);
- // const List<uint32>& getUnicode();
- //
- // template<int N>
- // void toString(StringBuffer<N>& s) {
- // for(uint32 c : getUnicode()) {
- // s.appendUnicode(c);
- // }
- // }
- // }
- typedef size_t CoreButton;
- CoreButton coreControlsAdd(const char* name);
- void coreControlsBindKey(CoreButton b, int key);
- void coreControlsBindGamepad(CoreButton b, int gamepadButton);
- void coreControlsBindMouse(CoreButton b, int mouseButton);
- CoreVector2 coreControlsLastMousePosition(void);
- CoreVector2 coreControlsMousePosition(void);
- CoreVector2 coreControlsLeftGamepadAxis(void);
- CoreVector2 coreControlsRightGamepadAxis(void);
- float coreControlsLeftGamepadTrigger(void);
- float coreControlsRightGamepadTrigger(void);
- bool coreControlsDown(CoreButton b);
- int coreControlsDownTime(CoreButton b);
- bool coreControlsReleased(CoreButton b);
- const char* coreControlsName(CoreButton b);
- #endif
|