|
@ -13,7 +13,7 @@ import java.io.IOException;
|
||||||
import java.util.logging.Logger;
|
import java.util.logging.Logger;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
*
|
* Class to load the views from FXML Files and switch between the views.
|
||||||
*/
|
*/
|
||||||
public class Factory {
|
public class Factory {
|
||||||
private TournamentDecorator tournamentDecorator;
|
private TournamentDecorator tournamentDecorator;
|
||||||
|
@ -21,16 +21,29 @@ public class Factory {
|
||||||
|
|
||||||
private static final Logger logger = Logger.getLogger(Factory.class.getCanonicalName());
|
private static final Logger logger = Logger.getLogger(Factory.class.getCanonicalName());
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Contructor to create Factory instance.
|
||||||
|
* @param fileIO the fileIO instance which saves and reads the tournament from files.
|
||||||
|
* @param tournamentDecorator the touramanetDecorator class to access the tournament.
|
||||||
|
*/
|
||||||
public Factory(FileIO fileIO, TournamentDecorator tournamentDecorator) {
|
public Factory(FileIO fileIO, TournamentDecorator tournamentDecorator) {
|
||||||
this.fileIO = fileIO;
|
this.fileIO = fileIO;
|
||||||
this.tournamentDecorator = tournamentDecorator;
|
this.tournamentDecorator = tournamentDecorator;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Setter Method of tournament
|
||||||
|
* @param tournament the new tournament Object.
|
||||||
|
*/
|
||||||
public void setTournament(Tournament tournament) {
|
public void setTournament(Tournament tournament) {
|
||||||
this.tournamentDecorator.setTournament(tournament);
|
this.tournamentDecorator.setTournament(tournament);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Method to load the main Window (without the content in the center)
|
||||||
|
* @return the boarder Pane which is loaded.
|
||||||
|
*/
|
||||||
public BorderPane loadMainWindow() {
|
public BorderPane loadMainWindow() {
|
||||||
FXMLLoader loader = new FXMLLoader(getClass().getResource("mainWindow.fxml"));
|
FXMLLoader loader = new FXMLLoader(getClass().getResource("mainWindow.fxml"));
|
||||||
try {
|
try {
|
||||||
|
@ -42,6 +55,11 @@ public class Factory {
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Class which loads all views of Enum View
|
||||||
|
* @param factoryDecorator the FactoryDecorator which is used to setup the controller.
|
||||||
|
* @param pane the pane where the loaded view will be visible
|
||||||
|
*/
|
||||||
public void loadAllViews(FactoryDecorator factoryDecorator, BorderPane pane){
|
public void loadAllViews(FactoryDecorator factoryDecorator, BorderPane pane){
|
||||||
for(View view : View.values()){
|
for(View view : View.values()){
|
||||||
try {
|
try {
|
||||||
|
@ -53,32 +71,57 @@ public class Factory {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
public void showTournamentList(BorderPane pane, FactoryDecorator factoryDecorator) {
|
/**
|
||||||
|
* Method to show the view TournamentList
|
||||||
|
* @param pane the Pane where the View will be visible
|
||||||
|
*/
|
||||||
|
public void showTournamentList(BorderPane pane) {
|
||||||
tournamentDecorator.setTournament(null);
|
tournamentDecorator.setTournament(null);
|
||||||
setCenterOfBorderPane(pane, View.tournamentList);
|
setCenterOfBorderPane(pane, View.tournamentList);
|
||||||
}
|
}
|
||||||
|
|
||||||
//Can be used to Open new Scene in same Stage.
|
/**
|
||||||
//This way possible to later give object to Controller
|
* Method to show the view ParticipantFormular
|
||||||
public void showParticipantFormular(BorderPane pane, FactoryDecorator factoryDecorator) {
|
* @param pane the Pane where the View will be visible
|
||||||
|
*/
|
||||||
|
public void showParticipantFormular(BorderPane pane) {
|
||||||
setCenterOfBorderPane(pane, View.participantFormular);
|
setCenterOfBorderPane(pane, View.participantFormular);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void showPlacesFormular(BorderPane pane, FactoryDecorator factoryDecorator) {
|
/**
|
||||||
|
* Method to show the view PlacesFormular
|
||||||
|
* @param pane the Pane where the View will be visible
|
||||||
|
*/
|
||||||
|
public void showPlacesFormular(BorderPane pane) {
|
||||||
setCenterOfBorderPane(pane, View.placesFormular);
|
setCenterOfBorderPane(pane, View.placesFormular);
|
||||||
}
|
}
|
||||||
|
|
||||||
public void showGameScheduler(BorderPane pane, FactoryDecorator factoryDecorator) {
|
/**
|
||||||
|
* Method to show the view GameScheduler
|
||||||
|
* @param pane the Pane where the View will be visible
|
||||||
|
*/
|
||||||
|
public void showGameScheduler(BorderPane pane) {
|
||||||
setCenterOfBorderPane(pane, View.gameScheduler);
|
setCenterOfBorderPane(pane, View.gameScheduler);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Method to change the view in the center of the boarder pane in the mainWindow
|
||||||
|
* @param pane the Pane where the View will be visible
|
||||||
|
* @param view the view which should be visible
|
||||||
|
*/
|
||||||
private void setCenterOfBorderPane(BorderPane pane, View view) {
|
private void setCenterOfBorderPane(BorderPane pane, View view) {
|
||||||
FXController controller = null;
|
FXController controller = null;
|
||||||
pane.setCenter(view.getPane());
|
pane.setCenter(view.getPane());
|
||||||
resetFooter(pane, true);
|
resetFooter(pane, true);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Method to load a Game View
|
||||||
|
* @param box the box where the game view should be added.
|
||||||
|
* @param gameDecorator the gameDecorator instance of the game.
|
||||||
|
* @param factoryDecorator
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
public GameController loadGameView(VBox box, GameDecorator gameDecorator, 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"));
|
||||||
|
|
|
@ -116,7 +116,7 @@ public class FactoryDecorator implements IsObservable {
|
||||||
*/
|
*/
|
||||||
public void openTournamentList() {
|
public void openTournamentList() {
|
||||||
logger.fine("Showing TournamentList view");
|
logger.fine("Showing TournamentList view");
|
||||||
factory.showTournamentList((BorderPane) pane, this);
|
factory.showTournamentList((BorderPane) pane);
|
||||||
informListener();
|
informListener();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -125,7 +125,7 @@ public class FactoryDecorator implements IsObservable {
|
||||||
*/
|
*/
|
||||||
public void openParticipantForm() {
|
public void openParticipantForm() {
|
||||||
logger.fine("Showing participant form view");
|
logger.fine("Showing participant form view");
|
||||||
factory.showParticipantFormular((BorderPane) pane, this);
|
factory.showParticipantFormular((BorderPane) pane);
|
||||||
informListener();
|
informListener();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -134,12 +134,12 @@ public class FactoryDecorator implements IsObservable {
|
||||||
*/
|
*/
|
||||||
public void openPlacesForm() {
|
public void openPlacesForm() {
|
||||||
logger.fine("Showing places form view");
|
logger.fine("Showing places form view");
|
||||||
factory.showPlacesFormular((BorderPane) pane, this);
|
factory.showPlacesFormular((BorderPane) pane);
|
||||||
informListener();
|
informListener();
|
||||||
}
|
}
|
||||||
|
|
||||||
public void openScheduleView() {
|
public void openScheduleView() {
|
||||||
factory.showGameScheduler((BorderPane) pane, this);
|
factory.showGameScheduler((BorderPane) pane);
|
||||||
informListener();
|
informListener();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue