separate input handling
This commit is contained in:
parent
b34de18b64
commit
27e5ead579
3 changed files with 43 additions and 40 deletions
40
input.c
Normal file
40
input.c
Normal file
|
|
@ -0,0 +1,40 @@
|
|||
#include "ugui.h"
|
||||
|
||||
/*=============================================================================*
|
||||
* Input Handling *
|
||||
*=============================================================================*/
|
||||
|
||||
|
||||
#define TEST_CTX(ctx) { if (!ctx) return -1; }
|
||||
|
||||
|
||||
int ug_input_mousemove(ug_ctx_t *ctx, int x, int y)
|
||||
{
|
||||
TEST_CTX(ctx)
|
||||
if (x < 0 || y < 0)
|
||||
return 0;
|
||||
|
||||
ctx->mouse.pos = (ug_vec2_t){.x = x, .y = y};
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
int ug_input_mousedown(ug_ctx_t *ctx, unsigned int mask)
|
||||
{
|
||||
TEST_CTX(ctx);
|
||||
|
||||
ctx->mouse.update |= mask;
|
||||
|
||||
return 0;
|
||||
}
|
||||
|
||||
|
||||
int ug_input_mouseup(ug_ctx_t *ctx, unsigned int mask)
|
||||
{
|
||||
TEST_CTX(ctx);
|
||||
|
||||
ctx->mouse.update |= mask;
|
||||
|
||||
return 0;
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue