package mi.hdm.controllers; import javafx.fxml.FXML; import javafx.scene.control.Label; import javafx.scene.layout.TilePane; import javafx.scene.layout.VBox; import mi.hdm.recipes.Recipe; import mi.hdm.recipes.RecipeManager; import org.apache.logging.log4j.LogManager; import org.apache.logging.log4j.Logger; public class RecipeViewController extends BaseController { private static final Logger log = LogManager.getLogger(RecipeViewController.class); private final RecipeManager recipeManager; @FXML private TilePane recipeTilePane; public RecipeViewController(RecipeManager recipeManager) { this.recipeManager = recipeManager; } @FXML public void changeSceneToMain() { try { changeScene(View.MAIN); } catch (Exception e) { e.printStackTrace(); log.error("Something went wrong when changing the scene."); } } @FXML public void initialize() { mapRecipes(); log.debug("Added {} recipes to GUI", recipeManager.getRecipes().size()); } private void mapRecipes() { for (Recipe recipe : recipeManager.getRecipes()) { Label recipeName = new Label(recipe.getName()); Label recipeDescription = new Label(recipe.getDescription()); VBox currentRecipeBox = new VBox(recipeName, recipeDescription); currentRecipeBox.setPrefWidth(180); currentRecipeBox.setPrefHeight(250); recipeTilePane.getChildren().add(currentRecipeBox); } } }