PagesControl, refactor

This commit is contained in:
MihailRis
2023-11-20 03:31:18 +03:00
parent 41f9c51a27
commit 4ea7bda249
15 changed files with 339 additions and 117 deletions
+15 -4
View File
@@ -45,6 +45,7 @@ void GUI::act(float delta) {
}
this->hover = hover;
auto prevfocus = focus;
if (Events::jclicked(0)) {
if (pressed == nullptr && this->hover) {
pressed = hover;
@@ -52,7 +53,10 @@ void GUI::act(float delta) {
if (focus && focus != pressed) {
focus->defocus();
}
focus = pressed;
if (focus != pressed) {
focus = pressed;
focus->focus(this);
}
}
if (this->hover == nullptr && focus) {
focus->defocus();
@@ -63,9 +67,7 @@ void GUI::act(float delta) {
pressed = nullptr;
}
if (focus) {
if (!focus->isfocused()){
focus = nullptr;
} else if (Events::jpressed(keycode::ESCAPE)) {
if (Events::jpressed(keycode::ESCAPE)) {
focus->defocus();
focus = nullptr;
} else {
@@ -78,8 +80,17 @@ void GUI::act(float delta) {
if (Events::clicked(mousecode::BUTTON_1)) {
focus->mouseMove(this, mx, my);
}
if (prevfocus == focus)
for (int i = mousecode::BUTTON_1; i < mousecode::BUTTON_1+12; i++) {
if (Events::jclicked(i)) {
focus->clicked(this, i);
}
}
}
}
if (focus && !focus->isfocused()) {
focus = nullptr;
}
}
void GUI::draw(Batch2D* batch, Assets* assets) {