From f39db1b6ec6aec6c907d87323fbe7175971a100e Mon Sep 17 00:00:00 2001 From: Lara Blersch <lb210@hdm-stuttgart.de> Date: Fri, 23 Jun 2023 12:38:37 +0200 Subject: [PATCH] updatet mealplan with remove options --- .../hdm/controllers/MealPlanController.java | 47 ++- .../controllers/RecipeCreatorController.java | 1 - src/main/java/mi/hdm/mealPlan/MealPlan.java | 1 + src/main/resources/fxml/Meal_Plan.fxml | 310 +++++++++--------- src/main/resources/fxml/recipe-creator.fxml | 2 +- src/main/resources/fxml/recipe-editor.fxml | 2 +- .../images/Tasty_Pages_Back_Arrow.png | Bin 5644 -> 0 bytes 7 files changed, 185 insertions(+), 178 deletions(-) delete mode 100644 src/main/resources/images/Tasty_Pages_Back_Arrow.png diff --git a/src/main/java/mi/hdm/controllers/MealPlanController.java b/src/main/java/mi/hdm/controllers/MealPlanController.java index 2e1d2b1..fcfc2c4 100644 --- a/src/main/java/mi/hdm/controllers/MealPlanController.java +++ b/src/main/java/mi/hdm/controllers/MealPlanController.java @@ -7,10 +7,7 @@ import javafx.geometry.Pos; import javafx.scene.control.*; import javafx.scene.image.Image; import javafx.scene.image.ImageView; -import javafx.scene.layout.AnchorPane; -import javafx.scene.layout.GridPane; -import javafx.scene.layout.StackPane; -import javafx.scene.layout.VBox; +import javafx.scene.layout.*; import javafx.scene.text.Font; import javafx.scene.text.FontWeight; import javafx.scene.text.Text; @@ -104,30 +101,50 @@ public class MealPlanController extends BaseController { for (int j = 0; j < 7; j++) { final int J = j; - mealPlan.getRecipeCodeForDay(LocalDate.now().plusDays(j)).ifPresentOrElse(code -> { + mealPlan.getRecipeCodeForDay(LocalDate.now().plusDays(J)).ifPresentOrElse(code -> { Recipe r = recipeManager.getRecipeByCode(code); VBox displayRecipeVBox = new VBox(); ImageView recipeImage = new ImageView(new Image(r.getImageURL().toString())); + HBox recipeHBox = new HBox(); Label name = new Label(r.getName()); name.setFont(font); - displayRecipeVBox.getChildren().addAll(recipeImage, name); + name.setStyle("-fx-padding: 0 50 10 10;"); + name.setOnMouseClicked(e -> + changeScene(View.RECIPE_VIEW, r) + ); + + Button removeRecipeButton = new Button(); + removeRecipeButton.setStyle("-fx-background-color: dedede;" + + "-fx-background-radius: 5;"); + ImageView imageView = new ImageView(String.valueOf(Recipe.class.getResource("/images/Tasty_Pages_X_Icon.png"))); + imageView.setPreserveRatio(true); + imageView.setFitHeight(20); + imageView.setFitWidth(20); + removeRecipeButton.setGraphic(imageView); + removeRecipeButton.setOnAction(e -> { + mealPlan.clear(LocalDate.now().plusDays(J)); + }); + + recipeHBox.getChildren().addAll(name, removeRecipeButton); + displayRecipeVBox.getChildren().addAll(recipeImage, recipeHBox); mealPlanGrid.add(displayRecipeVBox, J, 1); recipeImage.setPreserveRatio(true); recipeImage.fitWidthProperty().bind(mealPlanGrid.widthProperty().divide(7)); recipeImage.fitHeightProperty().bind(mealPlanGrid.heightProperty().subtract(60)); - name.setPadding(new Insets(10)); }, () -> { Button addRecipeButton = new Button(); addRecipeButton.setStyle("-fx-background-color: dedede;" + - "-fx-background-radius: 15;"); + "-fx-background-radius: 10;"); ImageView imageView = new ImageView(String.valueOf(Recipe.class.getResource("/images/Tasty_Pages_Plus_Icon.png"))); imageView.setPreserveRatio(true); imageView.setFitHeight(50); imageView.setFitWidth(50); addRecipeButton.setGraphic(imageView); mealPlanGrid.add(addRecipeButton, J, 1); - addRecipeButton.setOnMouseClicked(element -> searchRecipes(LocalDate.now().plusDays(J))); + addRecipeButton.setOnMouseClicked(e -> + searchRecipes(LocalDate.now().plusDays(J)) + ); GridPane.setHalignment(addRecipeButton, HPos.CENTER); }); @@ -135,8 +152,8 @@ public class MealPlanController extends BaseController { } } - // @FXML - public void searchRecipes(LocalDate date) { + + public void searchRecipes(LocalDate date) { searchVBox = new VBox(); searchVBox.setMaxSize(800, 800); searchVBox.setAlignment(Pos.CENTER); @@ -175,7 +192,13 @@ public class MealPlanController extends BaseController { } ); searchScrollPane.setContent(resultContainer); - } + } + + @FXML + public void clearMealplan() { + mealPlan.clear(); + displayMealPlan(); + } private void drawNutritionTable() { log.debug("Drawing nutrition table for meal plan."); diff --git a/src/main/java/mi/hdm/controllers/RecipeCreatorController.java b/src/main/java/mi/hdm/controllers/RecipeCreatorController.java index 19b9b9e..d8eb4df 100644 --- a/src/main/java/mi/hdm/controllers/RecipeCreatorController.java +++ b/src/main/java/mi/hdm/controllers/RecipeCreatorController.java @@ -24,7 +24,6 @@ import java.util.stream.IntStream; import static mi.hdm.helpers.Validation.isInteger; public class RecipeCreatorController extends BaseController { - //TODO: select image when creating recipe private static final int ELEMENTS_PER_SEARCH_PAGE = 100; private final RecipeManager recipeManager; diff --git a/src/main/java/mi/hdm/mealPlan/MealPlan.java b/src/main/java/mi/hdm/mealPlan/MealPlan.java index d8a1639..40bd1af 100644 --- a/src/main/java/mi/hdm/mealPlan/MealPlan.java +++ b/src/main/java/mi/hdm/mealPlan/MealPlan.java @@ -70,6 +70,7 @@ public class MealPlan { plan.put(date, recipeCode); } + public void clear(LocalDate date) { if (date == null) { throw new NullPointerException("Date can not be null"); diff --git a/src/main/resources/fxml/Meal_Plan.fxml b/src/main/resources/fxml/Meal_Plan.fxml index 17bf3cb..8fb3507 100644 --- a/src/main/resources/fxml/Meal_Plan.fxml +++ b/src/main/resources/fxml/Meal_Plan.fxml @@ -4,188 +4,172 @@ <?import javafx.scene.control.*?> <?import javafx.scene.layout.*?> <?import javafx.scene.text.*?> -<AnchorPane fx:id="parent" prefHeight="700.0" prefWidth="960.0" xmlns="http://javafx.com/javafx/17.0.2-ea" - xmlns:fx="http://javafx.com/fxml/1" fx:controller="mi.hdm.controllers.MealPlanController"> - <StackPane fx:id="stackPane" prefHeight="150.0" prefWidth="200.0" AnchorPane.bottomAnchor="0.0" - AnchorPane.leftAnchor="0.0" AnchorPane.rightAnchor="0.0" AnchorPane.topAnchor="0.0"> + +<AnchorPane fx:id="parent" prefHeight="700.0" prefWidth="960.0" xmlns="http://javafx.com/javafx/17.0.2-ea" xmlns:fx="http://javafx.com/fxml/1" fx:controller="mi.hdm.controllers.MealPlanController"> + <StackPane fx:id="stackPane" prefHeight="150.0" prefWidth="200.0" AnchorPane.bottomAnchor="0.0" AnchorPane.leftAnchor="0.0" AnchorPane.rightAnchor="0.0" AnchorPane.topAnchor="0.0"> <VBox prefHeight="445.0" prefWidth="872.0"> <GridPane hgap="8.0" prefHeight="57.0" prefWidth="842.0" vgap="8.0"> <columnConstraints> - <ColumnConstraints hgrow="SOMETIMES" minWidth="10.0" prefWidth="78.0"/> - <ColumnConstraints hgrow="SOMETIMES" minWidth="10.0" prefWidth="473.0"/> - <ColumnConstraints hgrow="SOMETIMES" minWidth="10.0" prefWidth="100.0"/> + <ColumnConstraints hgrow="SOMETIMES" minWidth="10.0" prefWidth="78.0" /> + <ColumnConstraints hgrow="SOMETIMES" minWidth="10.0" prefWidth="473.0" /> + <ColumnConstraints hgrow="SOMETIMES" minWidth="10.0" prefWidth="100.0" /> </columnConstraints> <rowConstraints> - <RowConstraints minHeight="10.0" prefHeight="49.999996185302734" vgrow="SOMETIMES"/> + <RowConstraints minHeight="10.0" prefHeight="49.999996185302734" vgrow="SOMETIMES" /> </rowConstraints> <VBox.margin> - <Insets left="15.0" right="15.0"/> + <Insets left="15.0" right="15.0" /> </VBox.margin> - <Label alignment="TOP_CENTER" text="Meal Plan" textFill="#d91c1c" GridPane.columnIndex="1" - GridPane.halignment="CENTER" GridPane.valignment="TOP"> + <Label alignment="TOP_CENTER" text="Meal Plan" textFill="#d91c1c" GridPane.columnIndex="1" GridPane.halignment="CENTER" GridPane.valignment="TOP"> <font> - <Font name="Arial" size="34.0"/> + <Font name="Arial" size="34.0" /> </font> </Label> </GridPane> - <GridPane fx:id="mealPlanGrid" prefHeight="214.0" prefWidth="812.0" GridPane.columnIndex="1" - GridPane.rowIndex="0"> + <GridPane fx:id="mealPlanGrid" prefHeight="214.0" prefWidth="812.0" GridPane.columnIndex="1" GridPane.rowIndex="0"> <columnConstraints> - <ColumnConstraints hgrow="SOMETIMES" minWidth="10.0" prefWidth="100.0"/> - <ColumnConstraints hgrow="SOMETIMES" minWidth="10.0" prefWidth="100.0"/> - <ColumnConstraints hgrow="SOMETIMES" minWidth="10.0" prefWidth="100.0"/> - <ColumnConstraints hgrow="SOMETIMES" minWidth="10.0" prefWidth="100.0"/> - <ColumnConstraints hgrow="SOMETIMES" minWidth="10.0" prefWidth="100.0"/> - <ColumnConstraints hgrow="SOMETIMES" minWidth="10.0" prefWidth="100.0"/> - <ColumnConstraints hgrow="SOMETIMES" minWidth="10.0" prefWidth="100.0"/> + <ColumnConstraints hgrow="SOMETIMES" minWidth="10.0" prefWidth="100.0" /> + <ColumnConstraints hgrow="SOMETIMES" minWidth="10.0" prefWidth="100.0" /> + <ColumnConstraints hgrow="SOMETIMES" minWidth="10.0" prefWidth="100.0" /> + <ColumnConstraints hgrow="SOMETIMES" minWidth="10.0" prefWidth="100.0" /> + <ColumnConstraints hgrow="SOMETIMES" minWidth="10.0" prefWidth="100.0" /> + <ColumnConstraints hgrow="SOMETIMES" minWidth="10.0" prefWidth="100.0" /> + <ColumnConstraints hgrow="SOMETIMES" minWidth="10.0" prefWidth="100.0" /> </columnConstraints> <rowConstraints> - <RowConstraints maxHeight="110.0" minHeight="10.0" prefHeight="32.0" vgrow="SOMETIMES"/> - <RowConstraints maxHeight="204.0" minHeight="10.0" prefHeight="182.0" vgrow="SOMETIMES"/> + <RowConstraints maxHeight="110.0" minHeight="10.0" prefHeight="32.0" vgrow="SOMETIMES" /> + <RowConstraints maxHeight="204.0" minHeight="10.0" prefHeight="182.0" vgrow="SOMETIMES" /> </rowConstraints> <VBox.margin> - <Insets bottom="30.0" left="30.0" right="30.0" top="30.0"/> + <Insets bottom="30.0" left="30.0" right="30.0" top="30.0" /> </VBox.margin> </GridPane> - <VBox prefHeight="328.0" prefWidth="945.0" spacing="15.0"> - <VBox.margin> - <Insets left="15.0"/> - </VBox.margin> - <Text fill="#1e1e1e" strokeType="OUTSIDE" strokeWidth="0.0" text="Nutrition"> - <font> - <Font name="Arial Bold" size="25.0"/> - </font> - </Text> - <Text fill="#1e1e1e" strokeType="OUTSIDE" strokeWidth="0.0" - text="Check out your nutrition scores for this week's meal plan!"> - <font> - <Font name="Arial" size="17.0"/> - </font> - </Text> - <!-- Nutrition table starts here --> - <VBox prefHeight="200" prefWidth="500"> - <HBox alignment="CENTER_LEFT" prefHeight="57.0" prefWidth="872.0" spacing="5.0"> - <Text fill="#1e1e1e" strokeType="OUTSIDE" strokeWidth="0.0" text="Calories" - wrappingWidth="83.47006416320801"> - <font> - <Font name="Arial" size="17.0"/> - </font> - </Text> - <ProgressBar fx:id="caloriesProgressBar" prefHeight="24.0" prefWidth="631.0" progress="0.0" - style="-fx-background-color: #d9d9d9; -fx-background-radius: 5; -fx-control-inner-background: a; -fx-accent: #d91c1c;"> - <HBox.margin> - <Insets left="70.0"/> - </HBox.margin> - </ProgressBar> - <Text fx:id="caloriesPercentage" fill="#1e1e1e" strokeType="OUTSIDE" strokeWidth="0.0" text="0%" - wrappingWidth="83.47006416320801"> - <font> - <Font name="Arial" size="17.0"/> - </font> - </Text> - </HBox> - <HBox alignment="CENTER_LEFT" prefHeight="53.0" prefWidth="872.0" spacing="5.0"> - <Text fill="#1e1e1e" strokeType="OUTSIDE" strokeWidth="0.0" text="Carbs" - wrappingWidth="83.47006416320801"> - <font> - <Font name="Arial" size="17.0"/> - </font> - </Text> - <ProgressBar fx:id="carbsProgressBar" prefHeight="24.0" prefWidth="631.0" progress="0.0" - style="-fx-background-color: #d9d9d9; -fx-control-inner-background: a; -fx-background-radius: 5; -fx-accent: #d91c1c;"> - <HBox.margin> - <Insets left="70.0"/> - </HBox.margin> - </ProgressBar> - <Text fx:id="carbsPercentage" fill="#1e1e1e" strokeType="OUTSIDE" strokeWidth="0.0" text="0%" - wrappingWidth="83.47006416320801"> - <font> - <Font name="Arial" size="17.0"/> - </font> - </Text> - </HBox> - <HBox alignment="CENTER_LEFT" prefHeight="57.0" prefWidth="872.0" spacing="5.0"> - <Text fill="#1e1e1e" strokeType="OUTSIDE" strokeWidth="0.0" text="Fat" - wrappingWidth="83.47006416320801"> - <font> - <Font name="Arial" size="17.0"/> - </font> - </Text> - <ProgressBar fx:id="fatProgressbar" prefHeight="24.0" prefWidth="631.0" progress="0.0" - style="-fx-background-color: #d9d9d9; -fx-background-radius: 5; -fx-control-inner-background: a; -fx-accent: #d91c1c;"> - <HBox.margin> - <Insets left="70.0"/> - </HBox.margin> - </ProgressBar> - <Text fx:id="fatPercentage" fill="#1e1e1e" strokeType="OUTSIDE" strokeWidth="0.0" text="0%" - wrappingWidth="83.47006416320801"> - <font> - <Font name="Arial" size="17.0"/> - </font> - </Text> - </HBox> - <HBox alignment="CENTER_LEFT" prefHeight="53.0" prefWidth="872.0" spacing="5.0"> - <Text fill="#1e1e1e" strokeType="OUTSIDE" strokeWidth="0.0" text="Protein" - wrappingWidth="83.47006416320801"> - <font> - <Font name="Arial" size="17.0"/> - </font> - </Text> - <ProgressBar fx:id="proteinProgressBar" prefHeight="24.0" prefWidth="631.0" progress="0.0" - style="-fx-background-color: #d9d9d9; -fx-control-inner-background: a; -fx-background-radius: 5; -fx-accent: #d91c1c;"> - <HBox.margin> - <Insets left="70.0"/> - </HBox.margin> - </ProgressBar> - <Text fx:id="proteinPercentage" fill="#1e1e1e" strokeType="OUTSIDE" strokeWidth="0.0" text="0%" - wrappingWidth="83.47006416320801"> - <font> - <Font name="Arial" size="17.0"/> - </font> - </Text> - </HBox> - <HBox alignment="CENTER_LEFT" prefHeight="53.0" prefWidth="872.0" spacing="5.0"> - <Text fill="#1e1e1e" strokeType="OUTSIDE" strokeWidth="0.0" text="Fibers" - wrappingWidth="83.47006416320801"> - <font> - <Font name="Arial" size="17.0"/> - </font> - </Text> - <ProgressBar fx:id="fibersProgressBar" prefHeight="24.0" prefWidth="631.0" progress="0.0" - style="-fx-background-color: #d9d9d9; -fx-control-inner-background: a; -fx-background-radius: 5; -fx-accent: #d91c1c;"> - <HBox.margin> - <Insets left="70.0"/> - </HBox.margin> - </ProgressBar> - <Text fx:id="fiberPercentage" fill="#1e1e1e" strokeType="OUTSIDE" strokeWidth="0.0" text="0%" - wrappingWidth="83.47006416320801"> - <font> - <Font name="Arial" size="17.0"/> - </font> - </Text> - </HBox> - <HBox alignment="CENTER_LEFT" prefHeight="53.0" prefWidth="872.0" spacing="5.0"> - <Text fill="#1e1e1e" strokeType="OUTSIDE" strokeWidth="0.0" text="Salt" - wrappingWidth="83.47006416320801"> - <font> - <Font name="Arial" size="17.0"/> - </font> - </Text> - <ProgressBar fx:id="saltProgressBar" prefHeight="24.0" prefWidth="631.0" progress="0.0" - style="-fx-background-color:#d9d9d9; -fx-control-inner-background: a; -fx-background-radius: 5; -fx-accent: #d91c1c;"> - <HBox.margin> - <Insets left="70.0"/> - </HBox.margin> - </ProgressBar> - <Text fx:id="saltPercentage" fill="#1e1e1e" strokeType="OUTSIDE" strokeWidth="0.0" text="0%" - wrappingWidth="83.47006416320801"> - <font> - <Font name="Arial" size="17.0"/> - </font> - </Text> - </HBox> - </VBox> - </VBox> + <HBox prefHeight="100.0" prefWidth="200.0"> + <children> + <VBox prefHeight="346.0" prefWidth="945.0" spacing="15.0"> + <Text fill="#1e1e1e" strokeType="OUTSIDE" strokeWidth="0.0" text="Nutrition"> + <font> + <Font name="Arial Bold" size="25.0" /> + </font> + </Text> + <Text fill="#1e1e1e" strokeType="OUTSIDE" strokeWidth="0.0" text="Check out your nutrition scores for this week's meal plan!"> + <font> + <Font name="Arial" size="17.0" /> + </font> + </Text> + <!-- Nutrition table starts here --> + <VBox prefHeight="200" prefWidth="500"> + <HBox alignment="CENTER_LEFT" prefHeight="57.0" prefWidth="872.0" spacing="5.0"> + <Text fill="#1e1e1e" strokeType="OUTSIDE" strokeWidth="0.0" text="Calories" wrappingWidth="83.47006416320801"> + <font> + <Font name="Arial" size="17.0" /> + </font> + </Text> + <ProgressBar fx:id="caloriesProgressBar" prefHeight="24.0" prefWidth="631.0" progress="0.0" style="-fx-background-color: #d9d9d9; -fx-background-radius: 5; -fx-control-inner-background: a; -fx-accent: #d91c1c;"> + <HBox.margin> + <Insets left="70.0" /> + </HBox.margin> + </ProgressBar> + <Text fx:id="caloriesPercentage" fill="#1e1e1e" strokeType="OUTSIDE" strokeWidth="0.0" text="0%" wrappingWidth="83.47006416320801"> + <font> + <Font name="Arial" size="17.0" /> + </font> + </Text> + </HBox> + <HBox alignment="CENTER_LEFT" prefHeight="53.0" prefWidth="872.0" spacing="5.0"> + <Text fill="#1e1e1e" strokeType="OUTSIDE" strokeWidth="0.0" text="Carbs" wrappingWidth="83.47006416320801"> + <font> + <Font name="Arial" size="17.0" /> + </font> + </Text> + <ProgressBar fx:id="carbsProgressBar" prefHeight="24.0" prefWidth="631.0" progress="0.0" style="-fx-background-color: #d9d9d9; -fx-control-inner-background: a; -fx-background-radius: 5; -fx-accent: #d91c1c;"> + <HBox.margin> + <Insets left="70.0" /> + </HBox.margin> + </ProgressBar> + <Text fx:id="carbsPercentage" fill="#1e1e1e" strokeType="OUTSIDE" strokeWidth="0.0" text="0%" wrappingWidth="83.47006416320801"> + <font> + <Font name="Arial" size="17.0" /> + </font> + </Text> + </HBox> + <HBox alignment="CENTER_LEFT" prefHeight="57.0" prefWidth="872.0" spacing="5.0"> + <Text fill="#1e1e1e" strokeType="OUTSIDE" strokeWidth="0.0" text="Fat" wrappingWidth="83.47006416320801"> + <font> + <Font name="Arial" size="17.0" /> + </font> + </Text> + <ProgressBar fx:id="fatProgressbar" prefHeight="24.0" prefWidth="631.0" progress="0.0" style="-fx-background-color: #d9d9d9; -fx-background-radius: 5; -fx-control-inner-background: a; -fx-accent: #d91c1c;"> + <HBox.margin> + <Insets left="70.0" /> + </HBox.margin> + </ProgressBar> + <Text fx:id="fatPercentage" fill="#1e1e1e" strokeType="OUTSIDE" strokeWidth="0.0" text="0%" wrappingWidth="83.47006416320801"> + <font> + <Font name="Arial" size="17.0" /> + </font> + </Text> + </HBox> + <HBox alignment="CENTER_LEFT" prefHeight="53.0" prefWidth="872.0" spacing="5.0"> + <Text fill="#1e1e1e" strokeType="OUTSIDE" strokeWidth="0.0" text="Protein" wrappingWidth="83.47006416320801"> + <font> + <Font name="Arial" size="17.0" /> + </font> + </Text> + <ProgressBar fx:id="proteinProgressBar" prefHeight="24.0" prefWidth="631.0" progress="0.0" style="-fx-background-color: #d9d9d9; -fx-control-inner-background: a; -fx-background-radius: 5; -fx-accent: #d91c1c;"> + <HBox.margin> + <Insets left="70.0" /> + </HBox.margin> + </ProgressBar> + <Text fx:id="proteinPercentage" fill="#1e1e1e" strokeType="OUTSIDE" strokeWidth="0.0" text="0%" wrappingWidth="83.47006416320801"> + <font> + <Font name="Arial" size="17.0" /> + </font> + </Text> + </HBox> + <HBox alignment="CENTER_LEFT" prefHeight="53.0" prefWidth="872.0" spacing="5.0"> + <Text fill="#1e1e1e" strokeType="OUTSIDE" strokeWidth="0.0" text="Fibers" wrappingWidth="83.47006416320801"> + <font> + <Font name="Arial" size="17.0" /> + </font> + </Text> + <ProgressBar fx:id="fibersProgressBar" prefHeight="24.0" prefWidth="631.0" progress="0.0" style="-fx-background-color: #d9d9d9; -fx-control-inner-background: a; -fx-background-radius: 5; -fx-accent: #d91c1c;"> + <HBox.margin> + <Insets left="70.0" /> + </HBox.margin> + </ProgressBar> + <Text fx:id="fiberPercentage" fill="#1e1e1e" strokeType="OUTSIDE" strokeWidth="0.0" text="0%" wrappingWidth="83.47006416320801"> + <font> + <Font name="Arial" size="17.0" /> + </font> + </Text> + </HBox> + <HBox alignment="CENTER_LEFT" prefHeight="53.0" prefWidth="872.0" spacing="5.0"> + <Text fill="#1e1e1e" strokeType="OUTSIDE" strokeWidth="0.0" text="Salt" wrappingWidth="83.47006416320801"> + <font> + <Font name="Arial" size="17.0" /> + </font> + </Text> + <ProgressBar fx:id="saltProgressBar" prefHeight="24.0" prefWidth="631.0" progress="0.0" style="-fx-background-color:#d9d9d9; -fx-control-inner-background: a; -fx-background-radius: 5; -fx-accent: #d91c1c;"> + <HBox.margin> + <Insets left="70.0" /> + </HBox.margin> + </ProgressBar> + <Text fx:id="saltPercentage" fill="#1e1e1e" strokeType="OUTSIDE" strokeWidth="0.0" text="0%" wrappingWidth="83.47006416320801"> + <font> + <Font name="Arial" size="17.0" /> + </font> + </Text> + </HBox> + </VBox> + </VBox> + <Button fx:id="clearButton" mnemonicParsing="false" onAction="#clearMealplan" prefHeight="36.0" prefWidth="170.0" style="-fx-background-color: transparent; -fx-border-color: d91c1c; -fx-border-width: 4; -fx-border-radius: 5;" text="Clear Meal Plan" textFill="#d91c1c"> + <font> + <Font name="System Bold" size="13.0" /> + </font> + </Button> + </children> + </HBox> </VBox> </StackPane> </AnchorPane> diff --git a/src/main/resources/fxml/recipe-creator.fxml b/src/main/resources/fxml/recipe-creator.fxml index 152c54b..2007cb5 100644 --- a/src/main/resources/fxml/recipe-creator.fxml +++ b/src/main/resources/fxml/recipe-creator.fxml @@ -159,7 +159,7 @@ <Insets bottom="10.0" left="5.0" right="5.0" top="5.0" /> </padding> <ImageView accessibleRole="BUTTON" fitHeight="40.0" fitWidth="200.0" onMouseClicked="#changeSceneToHome" pickOnBounds="true" preserveRatio="true" GridPane.valignment="CENTER"> - <Image url="@../images/Tasty_Pages_Back_Arrow.png" /> + <Image url="@../images/Tasty_Pages_Arrow_back.png" /> <cursor> <Cursor fx:constant="HAND" /> </cursor> diff --git a/src/main/resources/fxml/recipe-editor.fxml b/src/main/resources/fxml/recipe-editor.fxml index cda3e92..c7bda35 100644 --- a/src/main/resources/fxml/recipe-editor.fxml +++ b/src/main/resources/fxml/recipe-editor.fxml @@ -153,7 +153,7 @@ <Insets bottom="10.0" left="5.0" right="5.0" top="5.0" /> </padding> <ImageView fitHeight="40.0" fitWidth="200.0" onMouseClicked="#changeSceneToRecipe" pickOnBounds="true" preserveRatio="true" GridPane.valignment="CENTER"> - <Image url="@../images/Tasty_Pages_Back_Arrow.png" /> + <Image url="@../images/Tasty_Pages_Arrow_back.png" /> <cursor> <Cursor fx:constant="HAND" /> </cursor> diff --git a/src/main/resources/images/Tasty_Pages_Back_Arrow.png b/src/main/resources/images/Tasty_Pages_Back_Arrow.png deleted file mode 100644 index ed29f175a0aa11688c02c4e858009120b388ed2a..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 5644 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 Py$fhR(pN82wfgXXZAITO -- GitLab