Added: newGame button, first-impl, no-resizable, newGame can be done better , (say set root)

This commit is contained in:
rubenpirreram
2026-05-23 20:51:15 +02:00
parent 90bf94b35d
commit dc1e448c26
2 changed files with 12 additions and 7 deletions
@@ -45,12 +45,11 @@ public class GUI extends Application implements IView {
private ClientController controller;
public GUI(Stage stage) {
this.primaryStage = stage;
}
@Override
public void start(Stage stage) throws Exception {
this.primaryStage = stage;
primaryStage.setResizable(false);
loaderLogin = new FXMLLoader(getClass().getResource("/GUIScene/login.fxml"));
loginScene = new Scene(loaderLogin.load());
controllerLogin = loaderLogin.getController();
@@ -73,7 +72,7 @@ public class GUI extends Application implements IView {
loaderLeaderboard = new FXMLLoader(getClass().getResource("/GUIScene/standing.fxml"));
leaderboardScene = new Scene(loaderLeaderboard.load());
controllerLeaderboard = loaderLeaderboard.getController();
controllerLeaderboard.setController(controller);
controllerLeaderboard.setController(controller,primaryStage,loginScene);
mainScene = new Scene(loaderMain.load());
controllerMain = loaderMain.getController();
@@ -81,7 +80,7 @@ public class GUI extends Application implements IView {
showLogin();
stage.setTitle("Mesos");
primaryStage.setTitle("Mesos");
primaryStage.setMaximized(true);
primaryStage.setOnCloseRequest(e -> {
Platform.exit();
@@ -6,6 +6,7 @@ import javafx.animation.ScaleTransition;
import it.polimi.ingsw.gc14.Model.PlayableCard;
import javafx.event.Event;
import javafx.fxml.FXML;
import javafx.scene.Scene;
import javafx.scene.control.ScrollPane;
import javafx.stage.Popup;
import javafx.geometry.Insets;
@@ -23,6 +24,7 @@ import javafx.scene.paint.LinearGradient;
import javafx.scene.paint.Stop;
import javafx.scene.paint.CycleMethod;
import javafx.scene.text.Font;
import javafx.stage.Stage;
import javafx.stage.Window;
import javafx.util.Duration;
@@ -42,6 +44,8 @@ public class LeaderboardFXMLController {
// Cache condivisa con MainFXMLController
private static final Map<String, Image> imageCache = new HashMap<>();
private Scene loginScene;
private Stage primaryStage;
private Image loadImage(String path) {
return imageCache.computeIfAbsent(path,
@@ -49,8 +53,10 @@ public class LeaderboardFXMLController {
}
public void setController(ClientController controller) {
public void setController(ClientController controller, Stage primaryStage, Scene loginScene) {
this.controller = controller;
this.loginScene=loginScene;
this.primaryStage=primaryStage;
}
@@ -356,6 +362,6 @@ public class LeaderboardFXMLController {
// ==== ACTIONS ====
@FXML
private void onNewGame() {
//controller.requestNewGame();
primaryStage.setScene(loginScene);
}
}