1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374 |
- #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;
- void coreInitButton(void);
- void coreDestroyButton(void);
- CoreButton coreButtonAdd(const char* name);
- void coreButtonBindKey(CoreButton b, int key);
- void coreButtonBindGamepad(CoreButton b, int gamepadButton);
- void coreButtonBindMouse(CoreButton b, int mouseButton);
- CoreVector2 coreButtonLastMousePosition(void);
- CoreVector2 coreButtonMousePosition(void);
- CoreVector2 coreButtonLeftGamepadAxis(void);
- CoreVector2 coreButtonRightGamepadAxis(void);
- float coreButtonLeftGamepadTrigger(void);
- float coreButtonRightGamepadTrigger(void);
- bool coreButtonDown(CoreButton b);
- int coreButtonDownTime(CoreButton b);
- bool coreButtonReleased(CoreButton b);
- const char* coreButtonName(CoreButton b);
- #endif
|