diff options
Diffstat (limited to 'src/libui_sdl/libui/common/uipriv.h')
-rw-r--r-- | src/libui_sdl/libui/common/uipriv.h | 58 |
1 files changed, 58 insertions, 0 deletions
diff --git a/src/libui_sdl/libui/common/uipriv.h b/src/libui_sdl/libui/common/uipriv.h new file mode 100644 index 0000000..d6b54e8 --- /dev/null +++ b/src/libui_sdl/libui/common/uipriv.h @@ -0,0 +1,58 @@ +// 6 april 2015 +#ifdef __cplusplus +extern "C" { +#endif + +#include <stdarg.h> +#include "controlsigs.h" + +extern uiInitOptions options; + +extern void *uiAlloc(size_t, const char *); +#define uiNew(T) ((T *) uiAlloc(sizeof (T), #T)) +extern void *uiRealloc(void *, size_t, const char *); +extern void uiFree(void *); + +// ugh, this was only introduced in MSVC 2015... +#ifdef _MSC_VER +#define __func__ __FUNCTION__ +#endif +extern void realbug(const char *file, const char *line, const char *func, const char *prefix, const char *format, va_list ap); +#define _ns2(s) #s +#define _ns(s) _ns2(s) +extern void _implbug(const char *file, const char *line, const char *func, const char *format, ...); +#define implbug(...) _implbug(__FILE__, _ns(__LINE__), __func__, __VA_ARGS__) +extern void _userbug(const char *file, const char *line, const char *func, const char *format, ...); +#define userbug(...) _userbug(__FILE__, _ns(__LINE__), __func__, __VA_ARGS__) + +// control.c +extern uiControl *newControl(size_t size, uint32_t OSsig, uint32_t typesig, const char *typenamestr); + +// shouldquit.c +extern int shouldQuit(void); + +// areaevents.c +typedef struct clickCounter clickCounter; +// you should call Reset() to zero-initialize a new instance +// it doesn't matter that all the non-count fields are zero: the first click will fail the curButton test straightaway, so it'll return 1 and set the rest of the structure accordingly +struct clickCounter { + int curButton; + int rectX0; + int rectY0; + int rectX1; + int rectY1; + uintptr_t prevTime; + int count; +}; +int clickCounterClick(clickCounter *c, int button, int x, int y, uintptr_t time, uintptr_t maxTime, int32_t xdist, int32_t ydist); +extern void clickCounterReset(clickCounter *); +extern int fromScancode(uintptr_t, uiAreaKeyEvent *); + +// matrix.c +extern void fallbackSkew(uiDrawMatrix *, double, double, double, double); +extern void scaleCenter(double, double, double *, double *); +extern void fallbackTransformSize(uiDrawMatrix *, double *, double *); + +#ifdef __cplusplus +} +#endif |