From e2be973c9a521fdbc3ecabb08b235c3dc1af0e43 Mon Sep 17 00:00:00 2001 From: ramollia <> Date: Thu, 4 Dec 2025 17:02:12 +0100 Subject: [PATCH] changed the transitionNextCustom to be easier to use --- app/src/main/java/org/toop/app/Server.java | 4 ++-- .../java/org/toop/app/widget/complex/ViewWidget.java | 10 +++++++++- .../main/java/org/toop/app/widget/view/ServerView.java | 5 +---- 3 files changed, 12 insertions(+), 7 deletions(-) diff --git a/app/src/main/java/org/toop/app/Server.java b/app/src/main/java/org/toop/app/Server.java index 56f4c10..786b7d9 100644 --- a/app/src/main/java/org/toop/app/Server.java +++ b/app/src/main/java/org/toop/app/Server.java @@ -122,8 +122,8 @@ public final class Server { new EventFlow().addPostEvent(new NetworkEvents.SendLogin(clientId, user)).postEvent(); - primary = new ServerView(user, this::sendChallenge, this::disconnect); - WidgetContainer.getCurrentView().transitionNextCustom(primary); + primary = new ServerView(user, this::sendChallenge); + WidgetContainer.getCurrentView().transitionNextCustom(primary, "disconnect", this::disconnect); startPopulateScheduler(); populateGameList(); diff --git a/app/src/main/java/org/toop/app/widget/complex/ViewWidget.java b/app/src/main/java/org/toop/app/widget/complex/ViewWidget.java index 84205ba..4dc8b04 100644 --- a/app/src/main/java/org/toop/app/widget/complex/ViewWidget.java +++ b/app/src/main/java/org/toop/app/widget/complex/ViewWidget.java @@ -37,9 +37,17 @@ public abstract class ViewWidget extends StackWidget { view.add(Pos.BOTTOM_LEFT, Primitive.vbox(backButton)); } - public void transitionNextCustom(ViewWidget view) { + public void transitionNextCustom(ViewWidget view, String key, Runnable runnable) { view.previous = this; + replace(Pos.CENTER, view); + + var customButton = Primitive.button(key, () -> { + runnable.run(); + view.transitionPrevious(); + }); + + view.add(Pos.BOTTOM_LEFT, Primitive.vbox(customButton)); } public void transitionPrevious() { diff --git a/app/src/main/java/org/toop/app/widget/view/ServerView.java b/app/src/main/java/org/toop/app/widget/view/ServerView.java index 94da1e2..7365e74 100644 --- a/app/src/main/java/org/toop/app/widget/view/ServerView.java +++ b/app/src/main/java/org/toop/app/widget/view/ServerView.java @@ -14,14 +14,12 @@ import javafx.scene.control.ListView; public final class ServerView extends ViewWidget { private final String user; private final Consumer onPlayerClicked; - private final Runnable onDisconnect; private final ListView