diff options
| author | nathan <nathansmith@disroot.org> | 2025-11-17 06:33:27 +0000 |
|---|---|---|
| committer | nathan <nathansmith@disroot.org> | 2025-11-17 06:33:27 +0000 |
| commit | bbfc3fffc0e5f28681ebfb9fc0fd47777fded191 (patch) | |
| tree | 0dfb57799c2cf5a1ecfcc857e884b44a383c5299 /src/game.c | |
| parent | f6922dc12deb981cf95498afeb939f24171a5fc4 (diff) | |
| download | FindThings-bbfc3fffc0e5f28681ebfb9fc0fd47777fded191.tar.gz FindThings-bbfc3fffc0e5f28681ebfb9fc0fd47777fded191.tar.bz2 FindThings-bbfc3fffc0e5f28681ebfb9fc0fd47777fded191.zip | |
Scrolling focus thingy
Diffstat (limited to 'src/game.c')
| -rw-r--r-- | src/game.c | 23 |
1 files changed, 18 insertions, 5 deletions
@@ -47,14 +47,23 @@ void resetScreenScale(Game* game) FocusCommand testFloatingWindowCallback(FloatingWindow* window, Game* game) { - DrawText("test", window->rect.x + 10, - window->rect.y + 10 + RAYGUI_WINDOWBOX_STATUSBAR_HEIGHT, 15, BLUE); + float x = window->rect.x + window->scroll.x; + float y = window->rect.y + window->scroll.y; + + DrawText("test", x + 10, y + 10 + RAYGUI_WINDOWBOX_STATUSBAR_HEIGHT, 15, + BLUE); + + // Content size test. + if (window->contentSize.x != 0.0) + { + DrawText("content size test", x + 150.0, y + 150.0, 20, RED); + } - if (GuiButton((Rectangle){window->rect.x + 10.0, window->rect.y + 50.0, - 40.0, 20.0}, "A")) + // Button test. + if (GuiButton((Rectangle){x + 10.0, y + 50.0, 40.0, 20.0}, "A") + && window->hasFocus) { puts("hi"); - return DEMAND_FOCUS; } return NO_FOCUS_ACTION; @@ -111,10 +120,14 @@ void initGame(Game* game) window = createFloatingWindow("test3", (Rectangle){300.0, 300.0, 100.0, 100.0}); + window.callback = testFloatingWindowCallback; + window.contentSize = (Vector2){500.0, 500.0}; addWindowToWindowManager(&game->wm, window); window = createFloatingWindow("test4", (Rectangle){400.0, 400.0, 100.0, 100.0}); + window.callback = testFloatingWindowCallback; + window.contentSize = (Vector2){500.0, 500.0}; addWindowToWindowManager(&game->wm, window); disableGameCursor(game); |
