mirror of
https://git.code.sf.net/p/quake/quakeforge
synced 2025-02-21 19:21:47 +00:00
[ui] Add a function to get current mouse position
And hot/active ids.
This commit is contained in:
parent
35e2ffb4ab
commit
95b660d7fd
2 changed files with 17 additions and 0 deletions
|
@ -93,6 +93,12 @@ typedef struct imui_window_s {
|
||||||
bool no_collapse;
|
bool no_collapse;
|
||||||
} imui_window_t;
|
} imui_window_t;
|
||||||
|
|
||||||
|
typedef struct imui_io_s {
|
||||||
|
view_pos_t mouse;
|
||||||
|
uint32_t hot;
|
||||||
|
uint32_t active;
|
||||||
|
} imui_io_t;
|
||||||
|
|
||||||
imui_ctx_t *IMUI_NewContext (struct canvas_system_s canvas_sys,
|
imui_ctx_t *IMUI_NewContext (struct canvas_system_s canvas_sys,
|
||||||
const char *font, float fontsize);
|
const char *font, float fontsize);
|
||||||
void IMUI_DestroyContext (imui_ctx_t *ctx);
|
void IMUI_DestroyContext (imui_ctx_t *ctx);
|
||||||
|
@ -100,6 +106,7 @@ void IMUI_DestroyContext (imui_ctx_t *ctx);
|
||||||
void IMUI_SetVisible (imui_ctx_t *ctx, bool visible);
|
void IMUI_SetVisible (imui_ctx_t *ctx, bool visible);
|
||||||
void IMUI_SetSize (imui_ctx_t *ctx, int xlen, int ylen);
|
void IMUI_SetSize (imui_ctx_t *ctx, int xlen, int ylen);
|
||||||
bool IMUI_ProcessEvent (imui_ctx_t *ctx, const struct IE_event_s *ie_event);
|
bool IMUI_ProcessEvent (imui_ctx_t *ctx, const struct IE_event_s *ie_event);
|
||||||
|
imui_io_t IMUI_GetIO (imui_ctx_t *ctx) __attribute__((pure));
|
||||||
void IMUI_BeginFrame (imui_ctx_t *ctx);
|
void IMUI_BeginFrame (imui_ctx_t *ctx);
|
||||||
void IMUI_Draw (imui_ctx_t *ctx);
|
void IMUI_Draw (imui_ctx_t *ctx);
|
||||||
|
|
||||||
|
|
|
@ -329,6 +329,16 @@ IMUI_ProcessEvent (imui_ctx_t *ctx, const IE_event_t *ie_event)
|
||||||
return ctx->hot != nullent || ctx->active != nullent;
|
return ctx->hot != nullent || ctx->active != nullent;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
imui_io_t
|
||||||
|
IMUI_GetIO (imui_ctx_t *ctx)
|
||||||
|
{
|
||||||
|
return (imui_io_t) {
|
||||||
|
.mouse = ctx->mouse_position,
|
||||||
|
.hot = ctx->hot,
|
||||||
|
.active = ctx->active,
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
void
|
void
|
||||||
IMUI_BeginFrame (imui_ctx_t *ctx)
|
IMUI_BeginFrame (imui_ctx_t *ctx)
|
||||||
{
|
{
|
||||||
|
|
Loading…
Reference in a new issue