mirror of
https://github.com/nicbarker/clay.git
synced 2025-04-21 13:48:07 +00:00
37 lines
1.3 KiB
C
37 lines
1.3 KiB
C
|
Clay_Vector2 mousePosition;
|
||
|
|
||
|
void clay_RGFW_update(RGFW_window* win, double deltaTime) {
|
||
|
|
||
|
|
||
|
RGFW_Event ev = win->event;
|
||
|
switch (ev.type) {
|
||
|
case RGFW_mouseButtonPressed: {
|
||
|
switch (ev.button) {
|
||
|
case RGFW_mouseScrollUp:
|
||
|
case RGFW_mouseScrollDown:
|
||
|
Clay_UpdateScrollContainers(
|
||
|
false,
|
||
|
(Clay_Vector2) { 0, ev.scroll },
|
||
|
0
|
||
|
);
|
||
|
break;
|
||
|
default:
|
||
|
Clay_SetPointerState(mousePosition, RGFW_isMousePressed(win, RGFW_mouseLeft));
|
||
|
break;
|
||
|
}
|
||
|
break;
|
||
|
}
|
||
|
case RGFW_mouseButtonReleased:
|
||
|
Clay_SetPointerState(mousePosition, RGFW_isMousePressed(win, RGFW_mouseLeft));
|
||
|
break;
|
||
|
case RGFW_mousePosChanged:
|
||
|
mousePosition = (Clay_Vector2){ (float)ev.point.x, (float)ev.point.y };
|
||
|
Clay_SetPointerState(mousePosition, RGFW_isMousePressed(win, RGFW_mouseLeft));
|
||
|
break;
|
||
|
|
||
|
case RGFW_windowResized:
|
||
|
Clay_SetLayoutDimensions((Clay_Dimensions) { (float)win->r.w, (float)win->r.h });
|
||
|
break;
|
||
|
default: break;
|
||
|
}
|
||
|
}
|