refactoring of GameController.java to load content only if previous games are edited.
This commit is contained in:
		
							parent
							
								
									62df1db34b
								
							
						
					
					
						commit
						923be52610
					
				| 
						 | 
					@ -29,18 +29,34 @@ public abstract class FXController {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    public abstract void loadContent();
 | 
					    public abstract void loadContent();
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    protected void setTournamentDecorator(TournamentDecorator tournamentDecorator) {
 | 
				
			||||||
 | 
					        this.tournamentDecorator = tournamentDecorator;
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    protected TournamentDecorator getTournamentDecorator() {
 | 
					    protected TournamentDecorator getTournamentDecorator() {
 | 
				
			||||||
        return tournamentDecorator;
 | 
					        return tournamentDecorator;
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    protected void setFactoryDecorator(FactoryDecorator factoryDecorator) {
 | 
				
			||||||
 | 
					        this.factoryDecorator = factoryDecorator;
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    protected FactoryDecorator getFactoryDecorator() {
 | 
					    protected FactoryDecorator getFactoryDecorator() {
 | 
				
			||||||
        return factoryDecorator;
 | 
					        return factoryDecorator;
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    protected void setFileIO(FileIO fileIO) {
 | 
				
			||||||
 | 
					        this.fileIO = fileIO;
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    protected FileIO getFileIO() {
 | 
					    protected FileIO getFileIO() {
 | 
				
			||||||
        return fileIO;
 | 
					        return fileIO;
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    protected void setPane(Pane pane) {
 | 
				
			||||||
 | 
					        this.pane = pane;
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    protected Pane getPane() {
 | 
					    protected Pane getPane() {
 | 
				
			||||||
        return pane;
 | 
					        return pane;
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -13,6 +13,7 @@ import java.net.URL;
 | 
				
			||||||
public class Factory {
 | 
					public class Factory {
 | 
				
			||||||
    private TournamentDecorator tournamentDecorator;
 | 
					    private TournamentDecorator tournamentDecorator;
 | 
				
			||||||
    private FileIO fileIO;
 | 
					    private FileIO fileIO;
 | 
				
			||||||
 | 
					    //TODO save views instead of recreate them.
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    public Factory(FileIO fileIO, TournamentDecorator tournamentDecorator){
 | 
					    public Factory(FileIO fileIO, TournamentDecorator tournamentDecorator){
 | 
				
			||||||
        this.fileIO = fileIO;
 | 
					        this.fileIO = fileIO;
 | 
				
			||||||
| 
						 | 
					@ -57,17 +58,18 @@ public class Factory {
 | 
				
			||||||
        setCenterOfBorderPane(pane, getClass().getResource("gameScheduleView/GameSchedule.fxml"), factoryDecorator);
 | 
					        setCenterOfBorderPane(pane, getClass().getResource("gameScheduleView/GameSchedule.fxml"), factoryDecorator);
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    public void loadGameView(VBox box, Game game, FactoryDecorator factoryDecorator) {
 | 
					    public GameController loadGameView(VBox box, GameDecorator gameDecorator, FactoryDecorator factoryDecorator) {
 | 
				
			||||||
        try {
 | 
					        try {
 | 
				
			||||||
            FXMLLoader loader = new FXMLLoader(getClass().getResource("gameScheduleView/Game.fxml"));
 | 
					            FXMLLoader loader = new FXMLLoader(getClass().getResource("gameScheduleView/Game.fxml"));
 | 
				
			||||||
            box.getChildren().add(loader.load());
 | 
					            box.getChildren().add(loader.load());
 | 
				
			||||||
            GameController controller = loader.getController();
 | 
					            GameController controller = loader.getController();
 | 
				
			||||||
            controller.setup(tournamentDecorator, fileIO, factoryDecorator, box, new GameDecorator(game));
 | 
					            controller.setup(tournamentDecorator, fileIO, factoryDecorator, box, gameDecorator);
 | 
				
			||||||
            controller.loadContent();
 | 
					            return controller;
 | 
				
			||||||
        } catch (IOException e) {
 | 
					        } catch (IOException e) {
 | 
				
			||||||
            e.printStackTrace();
 | 
					            e.printStackTrace();
 | 
				
			||||||
            //TODO LOGGER
 | 
					            //TODO LOGGER
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
 | 
					        return null;
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    private FXController setCenterOfBorderPane(BorderPane pane, URL location, FactoryDecorator factoryDecorator) {
 | 
					    private FXController setCenterOfBorderPane(BorderPane pane, URL location, FactoryDecorator factoryDecorator) {
 | 
				
			||||||
| 
						 | 
					@ -77,7 +79,6 @@ public class Factory {
 | 
				
			||||||
            pane.setCenter(loader.load());
 | 
					            pane.setCenter(loader.load());
 | 
				
			||||||
            controller = loader.getController();
 | 
					            controller = loader.getController();
 | 
				
			||||||
            controller.setup(tournamentDecorator, fileIO, factoryDecorator, pane);
 | 
					            controller.setup(tournamentDecorator, fileIO, factoryDecorator, pane);
 | 
				
			||||||
            controller.loadContent();
 | 
					 | 
				
			||||||
        } catch (IOException e) {
 | 
					        } catch (IOException e) {
 | 
				
			||||||
            e.printStackTrace();
 | 
					            e.printStackTrace();
 | 
				
			||||||
            //TODO handle and logging?
 | 
					            //TODO handle and logging?
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -1,5 +1,6 @@
 | 
				
			||||||
package ch.zhaw.projekt2.turnierverwaltung;
 | 
					package ch.zhaw.projekt2.turnierverwaltung;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					import ch.zhaw.projekt2.turnierverwaltung.main.gameScheduleView.GameController;
 | 
				
			||||||
import ch.zhaw.projekt2.turnierverwaltung.main.gameScheduleView.GameDecorator;
 | 
					import ch.zhaw.projekt2.turnierverwaltung.main.gameScheduleView.GameDecorator;
 | 
				
			||||||
import javafx.scene.layout.BorderPane;
 | 
					import javafx.scene.layout.BorderPane;
 | 
				
			||||||
import javafx.scene.layout.Pane;
 | 
					import javafx.scene.layout.Pane;
 | 
				
			||||||
| 
						 | 
					@ -46,8 +47,7 @@ public class FactoryDecorator implements IsObservable{
 | 
				
			||||||
    public void openTournament(FileIO.TournamentFile tournamentFile){
 | 
					    public void openTournament(FileIO.TournamentFile tournamentFile){
 | 
				
			||||||
        try {
 | 
					        try {
 | 
				
			||||||
            factory.setTournament(fileIO.loadTournament(tournamentFile));
 | 
					            factory.setTournament(fileIO.loadTournament(tournamentFile));
 | 
				
			||||||
            factory.loadGameScheduler((BorderPane) pane, this);
 | 
					            openScheduleView();
 | 
				
			||||||
            informListener();
 | 
					 | 
				
			||||||
        } catch (IOException e) {
 | 
					        } catch (IOException e) {
 | 
				
			||||||
            e.printStackTrace();
 | 
					            e.printStackTrace();
 | 
				
			||||||
        } catch (ClassNotFoundException e) {
 | 
					        } catch (ClassNotFoundException e) {
 | 
				
			||||||
| 
						 | 
					@ -55,20 +55,28 @@ public class FactoryDecorator implements IsObservable{
 | 
				
			||||||
        } //TODO handle and logging
 | 
					        } //TODO handle and logging
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    public void openTournamentList() {
 | 
				
			||||||
 | 
					        factory.loadTournamentList((BorderPane) pane, this);
 | 
				
			||||||
 | 
					        informListener();
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    public void openParticipantFormular() {
 | 
					    public void openParticipantFormular() {
 | 
				
			||||||
        factory.loadParticipantFormular((BorderPane) pane, this);
 | 
					        factory.loadParticipantFormular((BorderPane) pane, this);
 | 
				
			||||||
 | 
					        informListener();
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    public void openPlacesFormular() {
 | 
					    public void openPlacesFormular() {
 | 
				
			||||||
        factory.loadPlacesFormular((BorderPane) pane, this);
 | 
					        factory.loadPlacesFormular((BorderPane) pane, this);
 | 
				
			||||||
 | 
					        informListener();
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    public void openScheduleView() {
 | 
					    public void openScheduleView() {
 | 
				
			||||||
        factory.loadGameScheduler((BorderPane) pane, this);
 | 
					        factory.loadGameScheduler((BorderPane) pane, this);
 | 
				
			||||||
 | 
					        informListener();
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    public void openGameView(VBox vBox, Game game) {
 | 
					    public GameController openGameView(VBox vBox, GameDecorator gameDecorator) {
 | 
				
			||||||
        factory.loadGameView(vBox ,game, this);
 | 
					        return factory.loadGameView(vBox ,gameDecorator, this);
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    public void informListener() {
 | 
					    public void informListener() {
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -6,6 +6,7 @@ public class Game implements Serializable {
 | 
				
			||||||
    private Participant participant1, participant2;
 | 
					    private Participant participant1, participant2;
 | 
				
			||||||
    private int points1, points2;
 | 
					    private int points1, points2;
 | 
				
			||||||
    private Place place;
 | 
					    private Place place;
 | 
				
			||||||
 | 
					    private Game previousGame1, previousGame2;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    public Game(Participant participant1, Participant participant2) {
 | 
					    public Game(Participant participant1, Participant participant2) {
 | 
				
			||||||
| 
						 | 
					@ -13,6 +14,11 @@ public class Game implements Serializable {
 | 
				
			||||||
        this.participant2 = participant2;
 | 
					        this.participant2 = participant2;
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    public Game(Game previousGame1, Game previousGame2){
 | 
				
			||||||
 | 
					        this.previousGame1 = previousGame1;
 | 
				
			||||||
 | 
					        this.previousGame2 = previousGame2;
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    public Place getLocation() {
 | 
					    public Place getLocation() {
 | 
				
			||||||
        return place;
 | 
					        return place;
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
| 
						 | 
					@ -71,4 +77,9 @@ public class Game implements Serializable {
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    public void refreshParticipants(){
 | 
				
			||||||
 | 
					        participant1 = previousGame1.getWinner();
 | 
				
			||||||
 | 
					        participant2 = previousGame2.getWinner();
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -102,7 +102,7 @@ public class Tournament implements Serializable {
 | 
				
			||||||
                }
 | 
					                }
 | 
				
			||||||
            } else {
 | 
					            } else {
 | 
				
			||||||
                for (int j = 0; j < (gameList.get(i-1).size()/2); j++) {
 | 
					                for (int j = 0; j < (gameList.get(i-1).size()/2); j++) {
 | 
				
			||||||
                    gameRound.add(new Game(null,null));
 | 
					                    gameRound.add(new Game(gameList.get(i-1).get(j*2),gameList.get(i-1).get(j*2+1)));
 | 
				
			||||||
                }
 | 
					                }
 | 
				
			||||||
            }
 | 
					            }
 | 
				
			||||||
            gameList.add(gameRound);
 | 
					            gameList.add(gameRound);
 | 
				
			||||||
| 
						 | 
					@ -110,20 +110,6 @@ public class Tournament implements Serializable {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    public void refreshGameParticipants(){
 | 
					 | 
				
			||||||
        for(int i = 1; i < gameList.size(); i++){
 | 
					 | 
				
			||||||
            for(int j = 0; j/2 < gameList.get(i).size(); j ++){
 | 
					 | 
				
			||||||
                Participant winner = gameList.get(i-1).get(j).getWinner();
 | 
					 | 
				
			||||||
                if(winner != null){
 | 
					 | 
				
			||||||
                    if(j % 2 == 0){
 | 
					 | 
				
			||||||
                        gameList.get(i).get(j/2).setParticipant1(winner);
 | 
					 | 
				
			||||||
                    } else{
 | 
					 | 
				
			||||||
                        gameList.get(i).get(j/2).setParticipant2(winner);
 | 
					 | 
				
			||||||
                    }
 | 
					 | 
				
			||||||
                }
 | 
					 | 
				
			||||||
            }
 | 
					 | 
				
			||||||
        }
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
    public String getName() {
 | 
					    public String getName() {
 | 
				
			||||||
        return name;
 | 
					        return name;
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -126,10 +126,6 @@ public class TournamentDecorator implements IsObservable{
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    public void refreshGameParticipants() {
 | 
					 | 
				
			||||||
        getTournament().refreshGameParticipants();
 | 
					 | 
				
			||||||
        informListener();
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
    public void informListener() {
 | 
					    public void informListener() {
 | 
				
			||||||
        for(IsObserver observer : listener) {
 | 
					        for(IsObserver observer : listener) {
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -25,7 +25,7 @@ public class MainWindow extends Application {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        BorderPane pane = factory.loadMainWindow();
 | 
					        BorderPane pane = factory.loadMainWindow();
 | 
				
			||||||
        factoryDecorator = new FactoryDecorator(fileIO, factory, pane);
 | 
					        factoryDecorator = new FactoryDecorator(fileIO, factory, pane);
 | 
				
			||||||
        factory.loadTournamentList(pane, factoryDecorator);
 | 
					        factoryDecorator.openTournamentList();
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        Scene scene = new Scene(pane);
 | 
					        Scene scene = new Scene(pane);
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -31,8 +31,6 @@ public class GameController extends FXController{
 | 
				
			||||||
    @FXML
 | 
					    @FXML
 | 
				
			||||||
    void saveGamerResult(ActionEvent event) {
 | 
					    void saveGamerResult(ActionEvent event) {
 | 
				
			||||||
        gameDecorator.saveGame(pointsTeamOne.getText(), pointsTeamTwo.getText(), placesChoiceBox.getValue());
 | 
					        gameDecorator.saveGame(pointsTeamOne.getText(), pointsTeamTwo.getText(), placesChoiceBox.getValue());
 | 
				
			||||||
        getTournamentDecorator().refreshGameParticipants();
 | 
					 | 
				
			||||||
        loadContent();
 | 
					 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    @Override
 | 
					    @Override
 | 
				
			||||||
| 
						 | 
					@ -43,8 +41,23 @@ public class GameController extends FXController{
 | 
				
			||||||
        pointsTeamTwo.setText(String.valueOf(gameDecorator.getPoints2()));
 | 
					        pointsTeamTwo.setText(String.valueOf(gameDecorator.getPoints2()));
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    public void refreshParticipants(){
 | 
				
			||||||
 | 
					        gameDecorator.refreshParticipants();
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    public void addListener(GameDecorator gameDecorator){
 | 
				
			||||||
 | 
					        gameDecorator.addListener(new IsObserver() {
 | 
				
			||||||
 | 
					            @Override
 | 
				
			||||||
 | 
					            public void update() {
 | 
				
			||||||
 | 
					                refreshParticipants();
 | 
				
			||||||
 | 
					                loadContent();
 | 
				
			||||||
 | 
					            }
 | 
				
			||||||
 | 
					        });
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    public void setup(TournamentDecorator tournamentDecorator, FileIO fileIO, FactoryDecorator factoryDecorator, Pane pane, GameDecorator gameDecorator) {
 | 
					    public void setup(TournamentDecorator tournamentDecorator, FileIO fileIO, FactoryDecorator factoryDecorator, Pane pane, GameDecorator gameDecorator) {
 | 
				
			||||||
        super.setup(tournamentDecorator, fileIO, factoryDecorator, pane);
 | 
					        setTournamentDecorator(tournamentDecorator);
 | 
				
			||||||
        this.gameDecorator = gameDecorator;
 | 
					        this.gameDecorator = gameDecorator;
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -6,7 +6,7 @@ import java.util.ArrayList;
 | 
				
			||||||
import java.util.List;
 | 
					import java.util.List;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					
 | 
				
			||||||
public class GameDecorator {
 | 
					public class GameDecorator implements IsObservable{
 | 
				
			||||||
    private Game game;
 | 
					    private Game game;
 | 
				
			||||||
    private List<IsObserver> listener = new ArrayList<>();
 | 
					    private List<IsObserver> listener = new ArrayList<>();
 | 
				
			||||||
 | 
					
 | 
				
			||||||
| 
						 | 
					@ -14,10 +14,21 @@ public class GameDecorator {
 | 
				
			||||||
        this.game = game;
 | 
					        this.game = game;
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    @Override
 | 
				
			||||||
 | 
					    public void addListener(IsObserver observer) {
 | 
				
			||||||
 | 
					        listener.add(observer);
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    @Override
 | 
				
			||||||
 | 
					    public void removeListener(IsObserver observer) {
 | 
				
			||||||
 | 
					        listener.remove(observer);
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    public void saveGame(String points1, String points2, Place place){
 | 
					    public void saveGame(String points1, String points2, Place place){
 | 
				
			||||||
        game.setPoints1(Integer.parseInt(points1));
 | 
					        game.setPoints1(Integer.parseInt(points1));
 | 
				
			||||||
        game.setPoints2(Integer.parseInt(points2));
 | 
					        game.setPoints2(Integer.parseInt(points2));
 | 
				
			||||||
        game.setPlace(place);
 | 
					        game.setPlace(place);
 | 
				
			||||||
 | 
					        informListener();
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    public String getPoints1() {
 | 
					    public String getPoints1() {
 | 
				
			||||||
| 
						 | 
					@ -42,7 +53,17 @@ public class GameDecorator {
 | 
				
			||||||
        return "2";
 | 
					        return "2";
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    public void refreshParticipants(){
 | 
				
			||||||
 | 
					        game.refreshParticipants();
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    public Place getLocation() {
 | 
					    public Place getLocation() {
 | 
				
			||||||
        return game.getPlace();
 | 
					        return game.getPlace();
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					    public void informListener() {
 | 
				
			||||||
 | 
					        for(IsObserver observer : listener) {
 | 
				
			||||||
 | 
					            observer.update();
 | 
				
			||||||
 | 
					        }
 | 
				
			||||||
 | 
					    }
 | 
				
			||||||
}
 | 
					}
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
| 
						 | 
					@ -13,6 +13,7 @@ import javafx.scene.layout.VBox;
 | 
				
			||||||
import org.checkerframework.checker.units.qual.C;
 | 
					import org.checkerframework.checker.units.qual.C;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
import java.io.IOException;
 | 
					import java.io.IOException;
 | 
				
			||||||
 | 
					import java.util.ArrayList;
 | 
				
			||||||
import java.util.List;
 | 
					import java.util.List;
 | 
				
			||||||
 | 
					
 | 
				
			||||||
public class GameScheduleController extends FXController {
 | 
					public class GameScheduleController extends FXController {
 | 
				
			||||||
| 
						 | 
					@ -55,12 +56,22 @@ public class GameScheduleController extends FXController {
 | 
				
			||||||
 | 
					
 | 
				
			||||||
        List<List<Game>> gameList = getTournamentDecorator().getTournament().getGameList();
 | 
					        List<List<Game>> gameList = getTournamentDecorator().getTournament().getGameList();
 | 
				
			||||||
 | 
					
 | 
				
			||||||
 | 
					        List<GameDecorator> gameDecorators = new ArrayList<>();
 | 
				
			||||||
        for (int i = 0; i < gameList.size(); i++) {
 | 
					        for (int i = 0; i < gameList.size(); i++) {
 | 
				
			||||||
 | 
					            List<GameDecorator> newGameDecorators = new ArrayList<>();
 | 
				
			||||||
            VBox vBox = new VBox();
 | 
					            VBox vBox = new VBox();
 | 
				
			||||||
            for (int j = 0; j < gameList.get(i).size(); j++) {
 | 
					            for (int j = 0; j < gameList.get(i).size(); j++) {
 | 
				
			||||||
                getFactoryDecorator().openGameView(vBox,gameList.get(i).get(j));
 | 
					                GameDecorator gameDecorator = new GameDecorator(gameList.get(i).get(j));
 | 
				
			||||||
 | 
					                newGameDecorators.add(gameDecorator);
 | 
				
			||||||
 | 
					                GameController controller = getFactoryDecorator().openGameView(vBox,gameDecorator);
 | 
				
			||||||
 | 
					                if(i>0){
 | 
				
			||||||
 | 
					                    controller.addListener(gameDecorators.get(j*2));
 | 
				
			||||||
 | 
					                    controller.addListener(gameDecorators.get(j*2+1));
 | 
				
			||||||
 | 
					                }
 | 
				
			||||||
 | 
					                controller.loadContent();
 | 
				
			||||||
            }
 | 
					            }
 | 
				
			||||||
            hBoxCenter.getChildren().add(vBox);
 | 
					            hBoxCenter.getChildren().add(vBox);
 | 
				
			||||||
 | 
					            gameDecorators = newGameDecorators;
 | 
				
			||||||
        }
 | 
					        }
 | 
				
			||||||
 | 
					
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
		Reference in New Issue