Compare commits

..

13 Commits

Author SHA1 Message Date
0adbe6caf3 commented 2023-02-06 05:11:36 +01:00
911dd9f2d3 some unused Methods implemented 2023-02-05 22:45:10 +01:00
22cc69ecf7 bug fixes 2023-02-03 14:07:30 +01:00
85a599cda5 Kommentare ergänzt 2023-02-01 12:27:20 +01:00
f664299fae Merge branch 'main' of https://git.bib.de/DopplerEffekt/VPR-Projekt-JavaFX
# Conflicts:
#	src/main/java/com/example/vpr_javafx/Data.java
#	src/main/java/com/example/vpr_javafx/HelloController.java
#	target/classes/com/example/vpr_javafx/Data.class
#	target/classes/com/example/vpr_javafx/HelloController.class
#	target/classes/com/example/vpr_javafx/MenuOverview-view.fxml
#	user.txt
2023-02-01 12:21:32 +01:00
d3f08d30a5 Bestellungsverarbeitung 2023-02-01 12:12:26 +01:00
f1db5ecca9 Kommentare ergänzt 2023-02-01 11:58:55 +01:00
aecf521d96 Tweaks 2023-02-01 09:50:47 +01:00
1e6d13698f Updated 2023-02-01 09:13:24 +01:00
30511d32b4 changeorder-view hinzugefügt 2023-02-01 08:52:15 +01:00
8ac02b756b anpassungen Registration-view.fxml 2023-02-01 08:51:35 +01:00
b9ccf98bf6 Merge branch 'main' of https://git.bib.de/DopplerEffekt/VPR-Projekt-JavaFX 2023-01-31 21:25:08 +01:00
159f04271c Registrierung abgeschlossen 2023-01-31 21:24:48 +01:00
24 changed files with 694 additions and 284 deletions

View File

@@ -1,20 +1,20 @@
Montag;Pommes;mit Kroketten und Gemüse;Vegan;g,2,3
Montag;Vegane Waffel;mit Puderzucker;DessertV;g,b,k
Montag;Schnitzel;mit Kroketten, Gemüse und Soße;Fleisch;g,c,a,2,3
Montag;Wackelpudding;mit Vanillesoße;Dessert;c,2
Dienstag;Rote Linsen Curry;mit Süßkartoffeln;Vegan;g,b,2,3
Dienstag;Vegane Pancakes;mit Ahornsirup;DessertV;g,b,3
Dienstag;Gebratene Nudeln;mit Gemüse;Vegetarisch;b,c,a,i,3
Dienstag;Berliner;mit Erdbeerfüllung;Dessert;c,a
Mittwoch;Bratkartoffeln;mit veganer Bratensoße;Vegan;b,2,3
Mittwoch;Pudding;mit Schokostreuseln;DessertV;b,2
Mittwoch;Bratkartoffeln;mit Leberkäse und Ei;Fleisch;a,j,2,3
Mittwoch;Pudding;mit Vanillesoße;Dessert;c,2
Donnerstag;Bauerntopf;mit veganem Hack;Vegan;g,c,a,h,1,2,3
Donnerstag;Bananenbrot;mit Datteln;DessertV;g,c
Donnerstag;Bauerntopf;mit veganem Hack;Vegan;g,c,a,h,1,2,3
Donnerstag;Bananenbrot;mit Datteln;DessertV;g,c
Freitag;Bauerntopf;mit veganem Hack;Vegan;g,c,a,h,1,2,3
Freitag;Bananenbrot;mit Datteln;DessertV;g,c
Freitag;Bauerntopf;mit veganem Hack;Vegan;g,c,a,h,1,2,3
Freitag;Bananenbrot;mit Datteln;DessertV;g,c
06.02.2023;Montag;Pommes;mit Kroketten und Gemüse;Vegan;g,2,3
06.02.2023;Montag;Vegane Waffel;mit Puderzucker;DessertV;g,b,k
06.02.2023;Montag;Schnitzel;mit Kroketten, Gemüse und Soße;Fleisch;g,c,a,2,3
06.02.2023;Montag;Wackelpudding;mit Vanillesoße;Dessert;c,2
07.02.2023;Dienstag;Rote Linsen Curry;mit Süßkartoffeln;Vegan;g,b,2,3
07.02.2023;Dienstag;Vegane Pancakes;mit Ahornsirup;DessertV;g,b,3
07.02.2023;Dienstag;Gebratene Nudeln;mit Gemüse;Vegetarisch;b,c,a,i,3
07.02.2023;Dienstag;Berliner;mit Erdbeerfüllung;Dessert;c,a
08.02.2023;Mittwoch;Bratkartoffeln;mit veganer Bratensoße;Vegan;b,2,3
08.02.2023;Mittwoch;Pudding;mit Schokostreuseln;DessertV;b,2
08.02.2023;Mittwoch;Bratkartoffeln;mit Leberkäse und Ei;Fleisch;a,j,2,3
08.02.2023;Mittwoch;Pudding;mit Vanillesoße;Dessert;c,2
09.02.2023;Donnerstag;Bauerntopf;mit veganem Hack;Vegan;g,c,a,h,1,2,3
09.02.2023;Donnerstag;Bananenbrot;mit Datteln;DessertV;g,c
09.02.2023;Donnerstag;Bauerntopf;mit veganem Hack;Vegan;g,c,a,h,1,2,3
09.02.2023;Donnerstag;Bananenbrot;mit Datteln;DessertV;g,c
10.02.2023;Freitag;Bauerntopf;mit veganem Hack;Vegan;g,c,a,h,1,2,3
10.02.2023;Freitag;Bananenbrot;mit Datteln;DessertV;g,c
10.02.2023;Freitag;Bauerntopf;mit veganem Hack;Vegan;g,c,a,h,1,2,3
10.02.2023;Freitag;Bananenbrot;mit Datteln;DessertV;g,c

25
parentOrder.txt Normal file
View File

@@ -0,0 +1,25 @@
[Felix Düsterhaus;Detmolderstrasse 101,33102 Paderborn;1234567;Lisa;12345678A, Hauptgericht: Pommes
mit Kroketten und Gemüse
(g,2,3) Dessert: Vegane Waffel
mit Puderzucker
(g,b,k), Hauptgericht: Bratkartoffeln
mit veganer Bratensoße
(b,2,3) Dessert: Pudding
mit Schokostreuseln
(b,2)]
[Felix Düsterhaus;Detmolderstrasse 101,33102 Paderborn;1234567;Lisa;12345678A, Hauptgericht: Rote Linsen Curry
mit Süßkartoffeln
(g,b,2,3) Dessert: Vegane Pancakes
mit Ahornsirup
(g,b,3)]
[Felix Düsterhaus;Detmolderstrasse 101,33102 Paderborn;1234567;Lisa;12345678A, Hauptgericht: Rote Linsen Curry
mit Süßkartoffeln
(g,b,2,3) Dessert: Vegane Pancakes
mit Ahornsirup
(g,b,3), Hauptgericht: Bratkartoffeln
mit veganer Bratensoße
(b,2,3) Dessert: Pudding
mit Schokostreuseln
(b,2)]
[Felix Düsterhaus
]

View File

@@ -60,7 +60,7 @@
<!-- Default configuration for running with: mvn clean javafx:run -->
<id>default-cli</id>
<configuration>
<mainClass>com.example.vpr_javafx/com.example.vpr_javafx.HelloApplication</mainClass>
<mainClass>com.example.vpr_javafx/com.example.vpr_javafx.MainApplication</mainClass>
</configuration>
</execution>
</executions>

View File

@@ -16,7 +16,6 @@ import java.util.List;
import java.util.Scanner;
import java.util.regex.Matcher;
import java.util.regex.Pattern;
import javax.swing.*;
/**
* Data is a class to edit files.
@@ -47,8 +46,8 @@ public class Data {
{
String[] parts = lines.get(i).split(";");
String phoneNumber = parts[3];
String password = parts[5];
String phoneNumber = parts[2];
String password = parts[4];
user.put(phoneNumber, password);
}
@@ -75,12 +74,11 @@ public class Data {
String[] parts = row.split(";");
String nameParent1 = parts[0];
String nameParent2 = parts[1];
String billAddress = parts[2];
String phonenumber = parts[3];
String nameChildren = parts[4];
String password = parts[5];
userList.add(new com.example.vpr_javafx.User(nameParent1, nameParent2, billAddress, phonenumber, nameChildren, password));
String billAddress = parts[1];
String phonenumber = parts[2];
String nameChildren = parts[3];
String password = parts[4];
userList.add(new com.example.vpr_javafx.User(nameParent1, billAddress, phonenumber, nameChildren, password));
}
return userList;
@@ -283,12 +281,15 @@ public class Data {
}
/**
* The method validates the user input
* The method validates the user input for login
*
* @return boolean inputValid
* @author Kevin Maier, Kevin Pfannenstiel
* @param tfPhone Phone number the user typed in
* @param pfPassword Password the user typed in
* @param controller Controller
* @return phoneNumberValid, passwordValid
* @author Kevin Maier, Kevin Pfannenstiel
*/
public boolean validateData(TextField tfPhone, PasswordField pfPassword, HelloController controller)
public boolean validateData(TextField tfPhone, PasswordField pfPassword, MainController controller)
{
boolean phoneNumberMatchFound;
boolean passwordMatchFound;
@@ -300,8 +301,8 @@ public class Data {
String phoneNumber = tfPhone.getText();
String password = pfPassword.getText();
Pattern phoneNumberPattern = Pattern.compile("[0-9]*");
Pattern passwordPattern = Pattern.compile("^(?=.*[A-Za-z])(?=.*\\d)[A-Za-z\\d]{8,}$");
Pattern phoneNumberPattern = Pattern.compile("[0-9]*"); // Pattern that requires numbers
Pattern passwordPattern = Pattern.compile("^(?=.*[A-Za-z])(?=.*\\d)[A-Za-z\\d]{8,}$"); // Pattern that requires minimum eight characters, at least one letter and one number
if (password.isEmpty() || phoneNumber.isEmpty())
{
@@ -355,48 +356,124 @@ public class Data {
public ArrayList<com.example.vpr_javafx.Order> changeOrder(String userLogin) {
/*
File orderFile = new File("C:/Unterricht/VPR/orders.txt");
if (orderFile.delete()) {
System.out.println("Datei gelöscht: " + orderFile.getName());
} else {
System.out.println("Fehler, " + orderFile.getName() + " nicht gelöscht.");
}
*/
ArrayList<com.example.vpr_javafx.Order> changedOrderList = new ArrayList<>();
List<String> rows = getRows();
int changedEntries = 0;
//ImageIcon icon = new ImageIcon("file:target/classes/com/example/vpr_javafx/pics/vegetarisch.png");
UIManager.put("OptionPane.noButtonText", "Nein");
UIManager.put("OptionPane.yesButtonText", "Ja");
int result = JOptionPane.showInternalConfirmDialog(null, "Bestellungen wirklich Löschen?", "Bestätigung", JOptionPane.YES_NO_OPTION);
for (String row : rows) {
String[] parts = row.split(";");
if (result == JOptionPane.YES_OPTION) {
for (String row : rows) {
String[] parts = row.split(";");
String date = parts[0];
String user = parts[1];
String mealtyp = parts[2];
String deserttyp = parts[3];
if(!userLogin.equals(user)) {
changedOrderList.add(new com.example.vpr_javafx.Order(date, user, mealtyp, deserttyp));
} else {
changedEntries++;
}
String date = parts[0];
String user = parts[1];
String mealtyp = parts[2];
String deserttyp = parts[3];
if(!userLogin.equals(user)) {
changedOrderList.add(new com.example.vpr_javafx.Order(date, user, mealtyp, deserttyp));
} else {
changedEntries++;
}
try {
}
try {
FileWriter writer = new FileWriter("orders2.txt");
for(com.example.vpr_javafx.Order str: changedOrderList) {
writer.write(str + System.lineSeparator());
}
writer.close();
System.out.println("Daten gelöscht");
System.out.println(changedEntries + " Einträge entfernt.");
} catch (IOException e) {
e.printStackTrace();
}
JOptionPane.showMessageDialog(null, changedEntries + " Bestellungen Gelöscht, Sie können eine neue Bestellung aufgeben");
} else {
JOptionPane.showMessageDialog(null, "Bestellung nicht gelöscht.");
}
return changedOrderList;
}
/**
* The method validates the user input for registration
*
* @param tfName The name the user typed in
* @param tfPhone The phone number the user typed in
* @param pfPassword The password the user typed in
* @param tfStreet The street name the user typed in
* @param tfHouseNumber The house number the user typed in
* @param tfPostalCode The postal code the user typed in
* @param tfCity The city the user typed in
* @param tfChild The child the user typed in
* @param controller Controller
* @return phoneNumberValid, passwordValid, postalCodeValid
*/
public boolean validateRegistration(TextField tfName, TextField tfPhone, PasswordField pfPassword, TextField tfStreet, TextField tfHouseNumber, TextField tfPostalCode, TextField tfCity, TextField tfChild, MainController controller)
{
boolean phoneNumberMatchFound;
boolean passwordMatchFound;
boolean postalCodeFound;
boolean phoneNumberValid = false;
boolean passwordValid = false;
boolean postalCodeValid = false;
Alert alert = new Alert(Alert.AlertType.WARNING);
HashMap<String, String> users = readLoginData();
String phoneNumber = tfPhone.getText();
String password = pfPassword.getText();
String postalCode = tfPostalCode.getText();
Pattern phoneNumberPattern = Pattern.compile("[0-9]*"); // Pattern that requires numbers
Pattern passwordPattern = Pattern.compile("^(?=.*[A-Za-z])(?=.*\\d)[A-Za-z\\d]{8,}$"); // Pattern that requires minimum eight characters, at least one letter and one number
Pattern postalCodePattern = Pattern.compile("[0-9]{5}"); // Pattern that requires 5 numbers
if (tfName.getText().isEmpty() || tfPhone.getText().isEmpty() || pfPassword.getText().isEmpty() || tfStreet.getText().isEmpty() || tfHouseNumber.getText().isEmpty() || tfPostalCode.getText().isEmpty() || tfCity.getText().isEmpty() || tfChild.getText().isEmpty())
{
alert.setContentText("Registrierung fehlgeschlagen. Registrierungsdaten unvollständig.");
alert.show();
}
Matcher phoneNumberMatcher = phoneNumberPattern.matcher(phoneNumber);
Matcher passwordMatcher = passwordPattern.matcher(password);
Matcher postalCodeMatcher = postalCodePattern.matcher(postalCode);
phoneNumberMatchFound = phoneNumberMatcher.find();
passwordMatchFound = passwordMatcher.find();
postalCodeFound = postalCodeMatcher.find();
if (users.containsKey(phoneNumber) || !phoneNumberMatchFound || phoneNumber.length() >= 15)
{
alert.setContentText("Registrierung fehlgeschlagen. Die eingegebenen Telefonnummer ist bereits vergeben oder ist nicht korrekt.");
alert.show();
}
else
{
phoneNumberValid = true;
}
if (!passwordMatchFound)
{
alert.setContentText("Registrierung fehlgeschlagen. Das Passwort muss mindestens 8 Zeichen lang sein und mindestens 1 Ziffer und 1 Zeichen beinhalten.");
alert.show();
}
else
{
passwordValid = true;
}
if (!postalCodeFound)
{
alert.setContentText("Registrierung fehlgeschlagen. Die Postleitzahl ist nicht richtig.");
}
else
{
postalCodeValid = true;
}
return phoneNumberValid && passwordValid && postalCodeValid;
}
}

View File

@@ -1,42 +0,0 @@
//package com.example.vpr_javafx;
//
//import java.io.IOException;
//import java.nio.file.Files;
//import java.nio.file.Paths;
//import java.util.HashMap;
//import java.util.List;
//
//public class LoginDatei
//{
// private final String dateiname;
//
// public LoginDatei(String dateiname)
// {
// this.dateiname = dateiname;
// }
//
// public HashMap<String, String> readFile()
// {
// try {
// List<String> lines = Files.readAllLines(Paths.get(dateiname));
//
// HashMap<String, String> user = new HashMap<>();
//
// for (int i = 0; i < lines.size(); i++)
// {
// String[] parts = lines.get(i).split(";");
//
// String phoneNumber = parts[3];
// String password = parts[5];
//
// user.put(phoneNumber, password);
// }
//
// return user;
//
// } catch (IOException e) {
// e.printStackTrace();
// return new HashMap<>();
// }
// }
//}

View File

@@ -7,20 +7,18 @@ import javafx.stage.Stage;
import java.io.IOException;
public class HelloApplication extends Application {
public class MainApplication extends Application {
@Override
public void start(Stage stage) throws IOException {
FXMLLoader fxmlLoader = new FXMLLoader(HelloApplication.class.getResource("MenuOverview-view.fxml"));
FXMLLoader fxmlLoader = new FXMLLoader(MainApplication.class.getResource("MenuOverview-view.fxml"));
Scene scene = new Scene(fxmlLoader.load(),1000, 800);
stage.setTitle("Mittagsbestellung");
stage.setScene(scene);
stage.show();
HelloController controller = fxmlLoader.getController();
MainController controller = fxmlLoader.getController();
controller.FillLabels();
controller.writeAllergene();
}
public static void main(String[] args) {
launch();
}
public static void main(String[] args) {launch();}
}

View File

@@ -1,5 +1,7 @@
package com.example.vpr_javafx;
import javafx.collections.FXCollections;
import javafx.collections.ObservableList;
import javafx.event.ActionEvent;
import javafx.fxml.FXML;
import javafx.fxml.FXMLLoader;
@@ -9,20 +11,17 @@ import javafx.scene.Scene;
import javafx.scene.control.*;
import javafx.scene.image.Image;
import javafx.scene.image.ImageView;
import javafx.scene.layout.AnchorPane;
import javafx.scene.layout.StackPane;
import javafx.stage.Stage;
import java.io.Console;
import java.io.File;
import java.io.FileWriter;
import java.io.IOException;
import java.nio.file.Files;
import java.nio.file.Paths;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.Arrays;
import java.util.List;
public class HelloController {
public class MainController {
@FXML
private Label lMonH1;
@@ -65,6 +64,17 @@ public class HelloController {
@FXML
private Label lFriD2;
@FXML
private Label monDat;
@FXML
private Label tueDat;
@FXML
private Label wedDat;
@FXML
private Label thurDat;
@FXML
private Label friDat;
@FXML
private ImageView imgImage1;
@FXML
@@ -85,8 +95,6 @@ public class HelloController {
private ImageView imgImage9;
@FXML
private ImageView imgImage10;
@FXML
private AnchorPane anchorPane;
@FXML
private TextField tfPhone;
@@ -133,6 +141,9 @@ public class HelloController {
@FXML
private RadioButton rbFriH2;
@FXML
private ListView<String> orderList;
@FXML
final String imagePathUrl = "file:target/classes/com/example/vpr_javafx/pics/";
@@ -147,6 +158,13 @@ public class HelloController {
private ArrayList<String> chosenMeals;
/**
* OnSignInButton() validates if the input of the logindata are valid when the user click on the button.
*
* @author Kevin Pfannenstiel
* @param event
* @throws IOException
*/
@FXML
protected void OnSignInButton(ActionEvent event) throws IOException
{
@@ -154,23 +172,51 @@ public class HelloController {
data.validateData(tfPhone, pfPassword, this);
}
/**
* FillLabels() fills the labels with the dishes, allergenics and the dates.
*
* @author Kevin Pfannenstiel, Felix Düsterhaus
*/
@FXML
protected void FillLabels() {
try {
List<String> menu = Files.readAllLines(Paths.get("menue.txt"));
List<String> menuLines = Files.readAllLines(Paths.get("menue.txt"));
for (int i = 0; i < menu.size(); i++)
for (int i = 0; i < menuLines.size(); i++)
{
String[] parts = menu.get(i).split(";");
String[] parts = menuLines.get(i).split(";");
String dish = parts[1];
String sideDish = parts[2];
String typ = parts[3];
String allergenic = parts[4];
String date = parts[0];
String day = parts[1];
String dish = parts[2];
String sideDish = parts[3];
String typ = parts[4];
String allergenic = parts[5];
String dayMenu = dish+"\n"+sideDish+"\n"+"("+allergenic+")";
String[] allergenics = allergenic.split(",");
Menu menu = new Menu(date, dish, sideDish, typ, Arrays.stream(allergenics).toList());
String dayMenu = dish+"\n"+sideDish+"\n"+allergenic;
switch (day)
{
case "Montag":
monDat.setText(menu.getDate());
break;
case "Dienstag":
tueDat.setText(menu.getDate());
break;
case "Mittwoch":
wedDat.setText(menu.getDate());
break;
case "Donnerstag":
thurDat.setText(menu.getDate());
break;
case "Freitag":
friDat.setText(menu.getDate());
}
if(typ.equals("Fleisch")) {
imageUrl=meatImageUrl;
@@ -297,14 +343,14 @@ public class HelloController {
protected void ToRegistration(ActionEvent event) throws IOException
{
Parent root = FXMLLoader.load(getClass().getResource("Registration-view.fxml"));
Stage stage = (Stage) ((Node) event.getSource()).getScene().getWindow();
Stage stage = new Stage();
Scene scene = new Scene(root);
stage.setScene(scene);
stage.show();
}
/**
* OnRegistrationButton() lässt einen neuen Nutzer anlegen
* OnRegistrationButton() creates a new user
* @param event
* @throws IOException
* @author Kevin Maier
@@ -313,17 +359,12 @@ public class HelloController {
protected void OnRegistrationButton(ActionEvent event) throws IOException
{
Alert alert = new Alert(Alert.AlertType.WARNING);
Data validData = new Data("user.txt");
Data validRegistration = new Data("user.txt");
if (tfName.getText().isEmpty() || tfPhone.getText().isEmpty() || tfChild.getText().isEmpty())
if (validRegistration.validateRegistration(tfName, tfPhone, pfPassword, tfStreet, tfHouseNumber, tfPostalCode, tfCity, tfChild, this))
{
alert.setContentText("Registrierungsdaten unvollständig");
}
else if (validData.validateData(tfPhone, pfPassword, this))
{
try (FileWriter writer = new FileWriter("user.txt")){
writer.write(tfName.getText() + ";" + tfStreet.getText() + " " + tfHouseNumber.getText() + "," + tfPostalCode + " " + tfCity.getText() + ";" + tfPhone.getText() + ";" + tfChild.getText() + ";" + pfPassword.getText());
writer.flush();
try (FileWriter writer = new FileWriter("user.txt", true)){
writer.write(tfName.getText() + ";" + tfStreet.getText() + " " + tfHouseNumber.getText() + "," + tfPostalCode.getText() + " " + tfCity.getText() + ";" + tfPhone.getText() + ";" + tfChild.getText() + ";" + pfPassword.getText() + System.lineSeparator());
}
catch (IOException e)
{
@@ -332,6 +373,12 @@ public class HelloController {
}
}
/**
* setRadioButton() is used in the validateData() method and activates the radiobuttons in the scene, if the
* logindata are valid.
*
* @author Kevin Pfannenstiel
*/
@FXML
protected void setRadioButton()
{
@@ -364,11 +411,16 @@ public class HelloController {
rbThurH2.setVisible(true);
rbFriH1.setVisible(true);
rbFriH2.setVisible(true);
}
/**
* resetSelection() sets the radiobuttons inactive.
*
* @author Kevin Pfannenstiel
* @param event
*/
@FXML
protected void resetSelection(ActionEvent event) throws IOException
protected void resetSelection(ActionEvent event)
{
rbMonH1.setSelected(false);
rbMonH2.setSelected(false);
@@ -383,14 +435,67 @@ public class HelloController {
chosenMeals.clear();
}
/**
* toOrder() writes the orders of the user in a text-file and switches the scene to the order-menu
*
* @author Kevin Pfannenstiel
* @param event
* @throws IOException
*/
@FXML
protected ArrayList<String> getLabelValueWithRadio(ActionEvent event)
protected void toOrder(ActionEvent event) throws IOException
{
try (FileWriter writer = new FileWriter("parentOrder.txt", true))
{
writer.write(getLabelValueWithRadio().toString() + System.lineSeparator());
Alert alert = new Alert(Alert.AlertType.INFORMATION);
alert.setContentText("Bestellung abgeschickt.");
Parent rootParent = FXMLLoader.load(getClass().getResource("Order-view.fxml"));
Stage stage = (Stage) ((Node) event.getSource()).getScene().getWindow();
Scene scene = new Scene(rootParent);
stage.setScene(scene);
stage.show();
ObservableList<String> orders = FXCollections.observableArrayList(getLabelValueWithRadio());
orderList = new ListView<>(orders);
StackPane rootStackPane = new StackPane();
rootStackPane.getChildren().add(orderList);
Scene scene2 = new Scene(rootStackPane);
stage.setScene(scene2);
stage.show();
}
catch (IOException e)
{
e.printStackTrace();
}
}
/**
* getLabelValueWithRadio() gets the string from the Label which is connected to the selected radiobutton
* and inserts it into a list
*
* @author Kevin Pfannenstiel
* @return
*/
@FXML
protected ArrayList<String> getLabelValueWithRadio()
{
chosenMeals = new ArrayList<>();
String mainDish;
String dessert;
Data data = new Data("user.txt");
for (User user : data.readUser())
{
if (tfPhone.getText().equals(user.getPhonenumber()) && pfPassword.getText().equals(user.getPassword()))
{
chosenMeals.add(user.getNameParent1()+"\n");
break;
}
}
if (rbMonH1.isSelected())
{
mainDish = lMonH1.getText();

View File

@@ -8,7 +8,6 @@ package com.example.vpr_javafx;
*/
public class User {
private String nameParent1;
private String nameParent2;
private String billAddress;
private String phoneNumber;
private String nameChildren;
@@ -18,16 +17,14 @@ public class User {
* constructor
*
* @param nameParent1 name of the first parent of the child
* @param nameParent2 name of the second parent of the child
* @param billAddress the address the bill should be sent to
* @param phoneNumber phonenumber of one of the parents and also the username
* @param nameChildren name of the children
* @param password password of the user
* @author Madeleine Vigier
*/
public User(String nameParent1, String nameParent2, String billAddress, String phoneNumber, String nameChildren, String password) {
public User(String nameParent1, String billAddress, String phoneNumber, String nameChildren, String password) {
this.nameParent1 = nameParent1;
this.nameParent2 = nameParent2;
this.billAddress = billAddress;
this.phoneNumber = phoneNumber;
this.nameChildren = nameChildren;
@@ -64,15 +61,6 @@ public class User {
return nameParent1;
}
/**
* the method getNameParent2() gets nameParent2
*
* @return nameParent2
* @author Madeleine Vigier
*/
public String getNameParent2() {
return nameParent2;
}
/**
* the methode toString() returns a String representation of an object
@@ -82,6 +70,6 @@ public class User {
*/
@Override
public String toString() {
return nameParent1 + ";" + nameParent2 + ";" + billAddress + ";" + phoneNumber + ";" + nameChildren + ";" + password;
return nameParent1 + ";" + billAddress + ";" + phoneNumber + ";" + nameChildren + ";" + password;
}
}

View File

@@ -7,8 +7,8 @@
<?import javafx.scene.shape.*?>
<?import javafx.scene.text.*?>
<AnchorPane fx:id="anchorPane" maxHeight="-Infinity" maxWidth="-Infinity" minHeight="-Infinity" minWidth="-Infinity" prefHeight="795.0" prefWidth="980.0" style="-fx-background-color: #f0C8bd;" xmlns="http://javafx.com/javafx/11.0.14-internal" xmlns:fx="http://javafx.com/fxml/1" fx:controller="com.example.vpr_javafx.HelloController">
<Label layoutX="76.0" layoutY="176.0" text="Montag" textFill="#6f7baf">
<AnchorPane fx:id="anchorPane" maxHeight="-Infinity" maxWidth="-Infinity" minHeight="-Infinity" minWidth="-Infinity" prefHeight="795.0" prefWidth="980.0" style="-fx-background-color: #f0C8bd;" xmlns="http://javafx.com/javafx/11.0.14-internal" xmlns:fx="http://javafx.com/fxml/1" fx:controller="com.example.vpr_javafx.MainController">
<Label layoutX="97.0" layoutY="176.0" text="Montag" textFill="#6f7baf">
<font>
<Font name="Century Gothic Bold" size="13.0" />
</font>
@@ -16,7 +16,7 @@
<Insets />
</opaqueInsets>
</Label>
<Label layoutX="74.0" layoutY="299.0" text="Dienstag" textFill="#6f7baf">
<Label layoutX="95.0" layoutY="299.0" text="Dienstag" textFill="#6f7baf">
<font>
<Font name="Century Gothic Bold" size="13.0" />
</font>
@@ -24,7 +24,7 @@
<Insets />
</opaqueInsets>
</Label>
<Label layoutX="72.0" layoutY="422.0" text="Mittwoch" textFill="#6f7baf">
<Label layoutX="93.0" layoutY="422.0" text="Mittwoch" textFill="#6f7baf">
<font>
<Font name="Century Gothic Bold" size="13.0" />
</font>
@@ -32,7 +32,7 @@
<Insets />
</opaqueInsets>
</Label>
<Label layoutX="63.0" layoutY="543.0" text="Donnerstag" textFill="#6f7baf">
<Label layoutX="84.0" layoutY="543.0" text="Donnerstag" textFill="#6f7baf">
<font>
<Font name="Century Gothic Bold" size="13.0" />
</font>
@@ -40,7 +40,7 @@
<Insets />
</opaqueInsets>
</Label>
<Label layoutX="79.0" layoutY="664.0" text="Freitag" textFill="#6f7baf">
<Label layoutX="100.0" layoutY="664.0" text="Freitag" textFill="#6f7baf">
<font>
<Font name="Century Gothic Bold" size="13.0" />
</font>
@@ -70,56 +70,56 @@
</font></Label>
<PasswordField fx:id="pfPassword" style="-fx-background-color: #f0c8cb;" />
<Button mnemonicParsing="false" onAction="#OnSignInButton" style="-fx-background-color: #c7d0f0;" text="anmelden" textFill="WHITE" />
<Button onAction="#ToRegistration" style="-fx-background-color: #c7d0f0;" textFill="WHITE" mnemonicParsing="false" text="registrieren" />
<Button mnemonicParsing="false" onAction="#ToRegistration" style="-fx-background-color: #c7d0f0;" text="registrieren" textFill="WHITE" />
</items>
</ToolBar>
<Line endX="100.0" layoutX="245.0" layoutY="310.0" startX="-100.0" stroke="#746fa6" strokeWidth="3.0" />
<Line endX="100.0" layoutX="245.0" layoutY="187.0" startX="-100.0" stroke="#746fa6" strokeWidth="3.0" />
<Line endX="100.0" layoutX="245.0" layoutY="433.0" startX="-100.0" stroke="#746fa6" strokeWidth="3.0" />
<Line endX="100.0" layoutX="245.0" layoutY="554.0" startX="-100.0" stroke="#746fa6" strokeWidth="3.0" />
<Line endX="100.0" layoutX="245.0" layoutY="675.0" startX="-100.0" stroke="#746fa6" strokeWidth="3.0" />
<Line endX="100.0" layoutX="266.0" layoutY="310.0" startX="-100.0" stroke="#746fa6" strokeWidth="3.0" />
<Line endX="100.0" layoutX="266.0" layoutY="187.0" startX="-100.0" stroke="#746fa6" strokeWidth="3.0" />
<Line endX="100.0" layoutX="266.0" layoutY="433.0" startX="-100.0" stroke="#746fa6" strokeWidth="3.0" />
<Line endX="100.0" layoutX="266.0" layoutY="554.0" startX="-100.0" stroke="#746fa6" strokeWidth="3.0" />
<Line endX="100.0" layoutX="266.0" layoutY="675.0" startX="-100.0" stroke="#746fa6" strokeWidth="3.0" />
<Line endX="100.0" layoutX="581.0" layoutY="187.0" startX="-100.0" stroke="#746fa6" strokeWidth="3.0" />
<Line endX="100.0" layoutX="581.0" layoutY="310.0" startX="-100.0" stroke="#746fa6" strokeWidth="3.0" />
<Line endX="100.0" layoutX="581.0" layoutY="433.0" startX="-100.0" stroke="#746fa6" strokeWidth="3.0" />
<Line endX="100.0" layoutX="581.0" layoutY="554.0" startX="-100.0" stroke="#746fa6" strokeWidth="3.0" />
<Line endX="100.0" layoutX="581.0" layoutY="675.0" startX="-100.0" stroke="#746fa6" strokeWidth="3.0" />
<Label fx:id="lMonH1" layoutX="148.0" layoutY="132.0" prefHeight="54.0" prefWidth="198.0" textFill="#6f7baf">
<Label fx:id="lMonH1" layoutX="169.0" layoutY="132.0" prefHeight="54.0" prefWidth="198.0" textFill="#6f7baf">
<font>
<Font name="Century Gothic Bold" size="13.0" />
</font></Label>
<Label fx:id="lMonH2" layoutX="148.0" layoutY="188.0" prefHeight="54.0" prefWidth="198.0" textFill="#6f7baf">
<Label fx:id="lMonH2" layoutX="169.0" layoutY="188.0" prefHeight="54.0" prefWidth="198.0" textFill="#6f7baf">
<font>
<Font name="Century Gothic Bold" size="13.0" />
</font></Label>
<Label fx:id="lTueH1" layoutX="148.0" layoutY="255.0" prefHeight="54.0" prefWidth="198.0" text="" textFill="#6f7baf">
<Label fx:id="lTueH1" layoutX="169.0" layoutY="255.0" prefHeight="54.0" prefWidth="198.0" text="" textFill="#6f7baf">
<font>
<Font name="Century Gothic Bold" size="13.0" />
</font></Label>
<Label fx:id="lTueH2" layoutX="148.0" layoutY="311.0" prefHeight="54.0" prefWidth="198.0" text="" textFill="#6f7baf">
<Label fx:id="lTueH2" layoutX="169.0" layoutY="311.0" prefHeight="54.0" prefWidth="198.0" text="" textFill="#6f7baf">
<font>
<Font name="Century Gothic Bold" size="13.0" />
</font></Label>
<Label fx:id="lWednH1" layoutX="148.0" layoutY="378.0" prefHeight="54.0" prefWidth="198.0" text="" textFill="#6f7baf">
<Label fx:id="lWednH1" layoutX="169.0" layoutY="378.0" prefHeight="54.0" prefWidth="198.0" text="" textFill="#6f7baf">
<font>
<Font name="Century Gothic Bold" size="13.0" />
</font></Label>
<Label fx:id="lWednH2" layoutX="148.0" layoutY="434.0" prefHeight="54.0" prefWidth="198.0" text="" textFill="#6f7baf">
<Label fx:id="lWednH2" layoutX="169.0" layoutY="434.0" prefHeight="54.0" prefWidth="198.0" text="" textFill="#6f7baf">
<font>
<Font name="Century Gothic Bold" size="13.0" />
</font></Label>
<Label fx:id="lThurH1" layoutX="148.0" layoutY="501.0" prefHeight="54.0" prefWidth="198.0" text="" textFill="#6f7baf">
<Label fx:id="lThurH1" layoutX="169.0" layoutY="501.0" prefHeight="54.0" prefWidth="198.0" text="" textFill="#6f7baf">
<font>
<Font name="Century Gothic Bold" size="13.0" />
</font></Label>
<Label fx:id="lThurH2" layoutX="148.0" layoutY="555.0" prefHeight="54.0" prefWidth="198.0" text="" textFill="#6f7baf">
<Label fx:id="lThurH2" layoutX="169.0" layoutY="555.0" prefHeight="54.0" prefWidth="198.0" text="" textFill="#6f7baf">
<font>
<Font name="Century Gothic Bold" size="13.0" />
</font></Label>
<Label fx:id="lFriH1" layoutX="148.0" layoutY="621.0" prefHeight="54.0" prefWidth="198.0" text="" textFill="#6f7baf">
<Label fx:id="lFriH1" layoutX="169.0" layoutY="621.0" prefHeight="54.0" prefWidth="198.0" text="" textFill="#6f7baf">
<font>
<Font name="Century Gothic Bold" size="13.0" />
</font></Label>
<Label fx:id="lFriH2" layoutX="148.0" layoutY="676.0" prefHeight="54.0" prefWidth="198.0" text="" textFill="#6f7baf">
<Label fx:id="lFriH2" layoutX="169.0" layoutY="676.0" prefHeight="54.0" prefWidth="198.0" text="" textFill="#6f7baf">
<font>
<Font name="Century Gothic Bold" size="13.0" />
</font></Label>
@@ -163,7 +163,7 @@
<font>
<Font name="Century Gothic Bold" size="13.0" />
</font></Label>
<Line endX="-99.99999237060547" endY="390.5999755859375" layoutX="243.0" layoutY="352.0" startX="-99.99998474121094" startY="-223.20001220703125" stroke="#746fa6" strokeWidth="3.0" />
<Line endX="-99.99999237060547" endY="390.5999755859375" layoutX="264.0" layoutY="350.0" startX="-99.99998474121094" startY="-223.20001220703125" stroke="#746fa6" strokeWidth="3.0" />
<ImageView fitHeight="107.0" fitWidth="138.0" layoutX="820.0" layoutY="9.0" pickOnBounds="true" preserveRatio="true">
<image>
<Image url="@pics/logo.png" />
@@ -200,26 +200,66 @@
</font>
</Label>
<Label fx:id="allergene" layoutX="780.0" layoutY="362.0" prefHeight="183.0" prefWidth="192.0" />
<ImageView fx:id="imgImage1" fitHeight="30.0" fitWidth="35.0" layoutX="112.0" layoutY="146.0" pickOnBounds="true" preserveRatio="true" />
<ImageView fx:id="imgImage2" fitHeight="30.0" fitWidth="35.0" layoutX="112.0" layoutY="195.0" pickOnBounds="true" preserveRatio="true" />
<ImageView fx:id="imgImage3" fitHeight="30.0" fitWidth="35.0" layoutX="112.0" layoutY="271.0" pickOnBounds="true" preserveRatio="true" />
<ImageView fx:id="imgImage4" fitHeight="30.0" fitWidth="35.0" layoutX="112.0" layoutY="318.0" pickOnBounds="true" preserveRatio="true" />
<ImageView fx:id="imgImage5" fitHeight="30.0" fitWidth="35.0" layoutX="112.0" layoutY="392.0" pickOnBounds="true" preserveRatio="true" />
<ImageView fx:id="imgImage6" fitHeight="30.0" fitWidth="35.0" layoutX="112.0" layoutY="439.0" pickOnBounds="true" preserveRatio="true" />
<ImageView fx:id="imgImage7" fitHeight="30.0" fitWidth="35.0" layoutX="112.0" layoutY="515.0" pickOnBounds="true" preserveRatio="true" />
<ImageView fx:id="imgImage8" fitHeight="30.0" fitWidth="35.0" layoutX="112.0" layoutY="559.0" pickOnBounds="true" preserveRatio="true" />
<ImageView fx:id="imgImage9" fitHeight="30.0" fitWidth="35.0" layoutX="112.0" layoutY="635.0" pickOnBounds="true" preserveRatio="true" />
<ImageView fx:id="imgImage10" fitHeight="30.0" fitWidth="35.0" layoutX="112.0" layoutY="680.0" pickOnBounds="true" preserveRatio="true" />
<ImageView fx:id="imgImage1" fitHeight="30.0" fitWidth="35.0" layoutX="126.0" layoutY="140.0" pickOnBounds="true" preserveRatio="true" />
<ImageView fx:id="imgImage2" fitHeight="30.0" fitWidth="35.0" layoutX="126.0" layoutY="196.0" pickOnBounds="true" preserveRatio="true" />
<ImageView fx:id="imgImage3" fitHeight="30.0" fitWidth="35.0" layoutX="126.0" layoutY="265.0" pickOnBounds="true" preserveRatio="true" />
<ImageView fx:id="imgImage4" fitHeight="30.0" fitWidth="35.0" layoutX="126.0" layoutY="319.0" pickOnBounds="true" preserveRatio="true" />
<ImageView fx:id="imgImage5" fitHeight="30.0" fitWidth="35.0" layoutX="126.0" layoutY="386.0" pickOnBounds="true" preserveRatio="true" />
<ImageView fx:id="imgImage6" fitHeight="30.0" fitWidth="35.0" layoutX="126.0" layoutY="440.0" pickOnBounds="true" preserveRatio="true" />
<ImageView fx:id="imgImage7" fitHeight="30.0" fitWidth="35.0" layoutX="126.0" layoutY="509.0" pickOnBounds="true" preserveRatio="true" />
<ImageView fx:id="imgImage8" fitHeight="30.0" fitWidth="35.0" layoutX="126.0" layoutY="560.0" pickOnBounds="true" preserveRatio="true" />
<ImageView fx:id="imgImage9" fitHeight="30.0" fitWidth="35.0" layoutX="126.0" layoutY="629.0" pickOnBounds="true" preserveRatio="true" />
<ImageView fx:id="imgImage10" fitHeight="30.0" fitWidth="35.0" layoutX="126.0" layoutY="681.0" pickOnBounds="true" preserveRatio="true" />
<Button fx:id="btResetSelection" layoutX="779.0" layoutY="622.0" mnemonicParsing="false" onAction="#resetSelection" text="Auswahl aufheben" visible="false" />
<Button fx:id="btToOrder" layoutX="779.0" layoutY="675.0" mnemonicParsing="false" prefHeight="26.0" prefWidth="114.0" text="Bestellen" visible="false" />
<RadioButton fx:id="rbMonH1" layoutX="359.0" layoutY="159.0" mnemonicParsing="false" onAction="#getLabelValueWithRadio" visible="false" />
<RadioButton fx:id="rbMonH2" layoutX="359.0" layoutY="201.0" mnemonicParsing="false" onAction="#getLabelValueWithRadio" visible="false" />
<RadioButton fx:id="rbTueH1" layoutX="360.0" layoutY="278.0" mnemonicParsing="false" onAction="#getLabelValueWithRadio" visible="false" />
<RadioButton fx:id="rbTueH2" layoutX="361.0" layoutY="325.0" mnemonicParsing="false" onAction="#getLabelValueWithRadio" visible="false" />
<RadioButton fx:id="rbWednH1" layoutX="360.0" layoutY="405.0" mnemonicParsing="false" onAction="#getLabelValueWithRadio" visible="false" />
<RadioButton fx:id="rbWednH2" layoutX="359.0" layoutY="445.0" mnemonicParsing="false" onAction="#getLabelValueWithRadio" visible="false" />
<RadioButton fx:id="rbThurH1" layoutX="360.0" layoutY="528.0" mnemonicParsing="false" onAction="#getLabelValueWithRadio" visible="false" />
<RadioButton fx:id="rbThurH2" layoutX="360.0" layoutY="566.0" mnemonicParsing="false" onAction="#getLabelValueWithRadio" visible="false" />
<RadioButton fx:id="rbFriH1" layoutX="360.0" layoutY="650.0" mnemonicParsing="false" onAction="#getLabelValueWithRadio" visible="false" />
<RadioButton fx:id="rbFriH2" layoutX="360.0" layoutY="687.0" mnemonicParsing="false" onAction="#getLabelValueWithRadio" visible="false" />
<Button fx:id="btToOrder" layoutX="779.0" layoutY="675.0" mnemonicParsing="false" onAction="#toOrder" prefHeight="26.0" prefWidth="114.0" text="Bestellen" visible="false" />
<RadioButton fx:id="rbMonH1" layoutX="377.0" layoutY="159.0" mnemonicParsing="false" onAction="#getLabelValueWithRadio" visible="false" />
<RadioButton fx:id="rbMonH2" layoutX="377.0" layoutY="206.0" mnemonicParsing="false" onAction="#getLabelValueWithRadio" visible="false" />
<RadioButton fx:id="rbTueH1" layoutX="377.0" layoutY="277.0" mnemonicParsing="false" onAction="#getLabelValueWithRadio" visible="false" />
<RadioButton fx:id="rbTueH2" layoutX="377.0" layoutY="324.0" mnemonicParsing="false" onAction="#getLabelValueWithRadio" visible="false" />
<RadioButton fx:id="rbWednH1" layoutX="377.0" layoutY="398.0" mnemonicParsing="false" onAction="#getLabelValueWithRadio" visible="false" />
<RadioButton fx:id="rbWednH2" layoutX="377.0" layoutY="445.0" mnemonicParsing="false" onAction="#getLabelValueWithRadio" visible="false" />
<RadioButton fx:id="rbThurH1" layoutX="377.0" layoutY="521.0" mnemonicParsing="false" onAction="#getLabelValueWithRadio" visible="false" />
<RadioButton fx:id="rbThurH2" layoutX="377.0" layoutY="565.0" mnemonicParsing="false" onAction="#getLabelValueWithRadio" visible="false" />
<RadioButton fx:id="rbFriH1" layoutX="377.0" layoutY="648.0" mnemonicParsing="false" onAction="#getLabelValueWithRadio" visible="false" />
<RadioButton fx:id="rbFriH2" layoutX="377.0" layoutY="692.0" mnemonicParsing="false" onAction="#getLabelValueWithRadio" visible="false" />
<Label fx:id="monDat" layoutX="14.0" layoutY="176.0" text="30.01.2023" textFill="#6f7baf">
<font>
<Font name="Century Gothic Bold" size="13.0" />
</font>
<opaqueInsets>
<Insets />
</opaqueInsets>
</Label>
<Label fx:id="tueDat" layoutX="14.0" layoutY="299.0" text="31.01.2023" textFill="#6f7baf">
<font>
<Font name="Century Gothic Bold" size="13.0" />
</font>
<opaqueInsets>
<Insets />
</opaqueInsets>
</Label>
<Label fx:id="wedDat" layoutX="14.0" layoutY="424.0" text="01.02.2023" textFill="#6f7baf">
<font>
<Font name="Century Gothic Bold" size="13.0" />
</font>
<opaqueInsets>
<Insets />
</opaqueInsets>
</Label>
<Label fx:id="thurDat" layoutX="14.0" layoutY="543.0" text="02.02.2023" textFill="#6f7baf">
<font>
<Font name="Century Gothic Bold" size="13.0" />
</font>
<opaqueInsets>
<Insets />
</opaqueInsets>
</Label>
<Label fx:id="friDat" layoutX="14.0" layoutY="664.0" text="03.02.2023" textFill="#6f7baf">
<font>
<Font name="Century Gothic Bold" size="13.0" />
</font>
<opaqueInsets>
<Insets />
</opaqueInsets>
</Label>
</AnchorPane>

View File

@@ -6,7 +6,7 @@
<?import javafx.scene.shape.*?>
<?import javafx.scene.text.*?>
<AnchorPane prefHeight="400.0" prefWidth="600.0" xmlns="http://javafx.com/javafx/11.0.14-internal" xmlns:fx="http://javafx.com/fxml/1" fx:controller="com.example.vpr_javafx.HelloController">
<AnchorPane prefHeight="400.0" prefWidth="600.0" xmlns="http://javafx.com/javafx/11.0.14-internal" xmlns:fx="http://javafx.com/fxml/1" fx:controller="com.example.vpr_javafx.MainController">
<Label layoutX="27.0" layoutY="160.0" style="-fx-font-weight: bold; -fx-font-family: century gothic; -fx-font-size: 14; -fx-text-fill: #746FA6;" text="Montag" textFill="BLUE">
<font>
<Font name="Century Gothic" size="13.0" />

View File

@@ -0,0 +1,29 @@
<?xml version="1.0" encoding="UTF-8"?>
<?import javafx.scene.control.*?>
<?import javafx.scene.layout.*?>
<AnchorPane prefHeight="400.0" prefWidth="600.0" xmlns="http://javafx.com/javafx/11.0.14-internal" xmlns:fx="http://javafx.com/fxml/1" fx:controller="com.example.vpr_javafx.MainController">
<children>
<GridPane layoutX="81.0" layoutY="50.0" prefHeight="272.0" prefWidth="496.0">
<columnConstraints>
<ColumnConstraints hgrow="SOMETIMES" maxWidth="455.6" minWidth="10.0" prefWidth="394.8" />
<ColumnConstraints hgrow="SOMETIMES" maxWidth="430.0" minWidth="0.0" prefWidth="12.0" />
<ColumnConstraints hgrow="SOMETIMES" maxWidth="210.0" minWidth="0.0" prefWidth="90.0" />
</columnConstraints>
<rowConstraints>
<RowConstraints maxHeight="271.20000000000005" minHeight="10.0" prefHeight="202.0" vgrow="SOMETIMES" />
<RowConstraints maxHeight="271.20000000000005" minHeight="10.0" prefHeight="54.39999999999998" vgrow="SOMETIMES" />
<RowConstraints maxHeight="90.39999999999998" minHeight="0.0" prefHeight="0.0" vgrow="SOMETIMES" />
<RowConstraints maxHeight="51.39999999999998" minHeight="0.0" prefHeight="0.0" vgrow="SOMETIMES" />
</rowConstraints>
<children>
<ListView fx:id="orderList" prefHeight="229.0" prefWidth="410.0" GridPane.rowSpan="2" />
<Button mnemonicParsing="false" onAction="#removeFromOrder" prefHeight="26.0" prefWidth="89.0" text="stornieren" GridPane.columnIndex="2" />
<Button mnemonicParsing="false" prefHeight="26.0" prefWidth="90.0" text="bestellen" GridPane.columnIndex="2" GridPane.rowIndex="1" />
</children>
</GridPane>
<Button layoutX="16.0" layoutY="353.0" mnemonicParsing="false" text="zurück" />
<Label layoutX="239.0" layoutY="22.0" text="Stornier-Menü" />
</children>
</AnchorPane>

View File

@@ -1,12 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
<?import javafx.geometry.*?>
<?import javafx.scene.control.*?>
<?import javafx.scene.layout.*?>
<?import javafx.scene.text.*?>
<AnchorPane prefHeight="400.0" prefWidth="600.0" xmlns="http://javafx.com/javafx/11.0.14-internal" xmlns:fx="http://javafx.com/fxml/1" fx:controller="com.example.vpr_javafx.HelloController">
<AnchorPane prefHeight="400.0" prefWidth="600.0" style="-fx-background-color: #F0C8BD;" xmlns="http://javafx.com/javafx/11.0.2" xmlns:fx="http://javafx.com/fxml/1" fx:controller="com.example.vpr_javafx.MainController">
<children>
<GridPane layoutX="50.0" layoutY="62.0" prefHeight="275.0" prefWidth="500.0">
<GridPane layoutX="50.0" layoutY="62.0" prefHeight="275.0" prefWidth="500.0" style="-fx-background-color: #F0C8BD;">
<columnConstraints>
<ColumnConstraints hgrow="SOMETIMES" maxWidth="153.0" minWidth="10.0" prefWidth="85.0" />
<ColumnConstraints hgrow="SOMETIMES" maxWidth="261.0" minWidth="10.0" prefWidth="200.0" />
@@ -23,22 +23,70 @@
<RowConstraints minHeight="10.0" prefHeight="30.0" vgrow="SOMETIMES" />
</rowConstraints>
<children>
<Label text="Name" />
<Label text="Handynummer" GridPane.rowIndex="1" />
<Label prefWidth="95.0" text="Passwort: " GridPane.rowIndex="2" />
<Label text="Kind:" GridPane.rowIndex="5" />
<Label text="Straße" GridPane.rowIndex="3" />
<Label text="Ort" GridPane.rowIndex="4" />
<Button mnemonicParsing="false" onAction="#OnRegistrationButton" prefHeight="26.0" prefWidth="90.0" text="Abschicken" translateX="100.0" GridPane.columnIndex="1" GridPane.rowIndex="7" />
<PasswordField fx:id="pfPassword" promptText="Passwort" GridPane.columnIndex="1" GridPane.rowIndex="2" />
<TextField fx:id="tfName" promptText="Voller Name" GridPane.columnIndex="1" />
<TextField fx:id="tfPhone" promptText="Handynummer" GridPane.columnIndex="1" GridPane.rowIndex="1" />
<TextField fx:id="tfChild" promptText="Kind" GridPane.columnIndex="1" GridPane.rowIndex="5" />
<TextField GridPane.columnIndex="1" GridPane.rowIndex="4" />
<TextField fx:id="tfStreet" prefWidth="254.0" promptText="Straße" GridPane.columnIndex="1" GridPane.rowIndex="3" />
<TextField fx:id="tfHouseNumber" prefWidth="123.0" promptText="Hausnummer" GridPane.columnIndex="2" GridPane.rowIndex="3"/>
<TextField fx:id="tfPostalCode" promptText="Postleitzahl" GridPane.columnIndex="1" GridPane.rowIndex="4" />
<TextField fx:id="tfCity" promptText="Ort" GridPane.columnIndex="2" GridPane.rowIndex="4" />
<Label text="Name:" textFill="#746fa6">
<font>
<Font name="Century Gothic Bold" size="12.0" />
</font></Label>
<Label text="Handynummer:" textFill="#746fa6" GridPane.rowIndex="1">
<font>
<Font name="Century Gothic Bold" size="12.0" />
</font></Label>
<Label prefWidth="95.0" text="Passwort: " textFill="#746fa6" GridPane.rowIndex="2">
<font>
<Font name="Century Gothic Bold" size="12.0" />
</font></Label>
<Label text="Kind:" textFill="#746fa6" GridPane.rowIndex="5">
<font>
<Font name="Century Gothic Bold" size="12.0" />
</font></Label>
<Label text="Straße:" textFill="#746fa6" GridPane.rowIndex="3">
<font>
<Font name="Century Gothic Bold" size="12.0" />
</font></Label>
<Label text="Ort:" textFill="#746fa6" GridPane.rowIndex="4">
<font>
<Font name="Century Gothic Bold" size="12.0" />
</font></Label>
<Button mnemonicParsing="false" onAction="#OnRegistrationButton" prefHeight="26.0" prefWidth="90.0" style="-fx-background-color: #CBC7F0; -fx-border-color: #746FA6;" text="Abschicken" textFill="WHITE" translateX="100.0" GridPane.columnIndex="1" GridPane.rowIndex="7">
<font>
<Font name="Century Gothic" size="12.0" />
</font></Button>
<PasswordField fx:id="pfPassword" promptText="Passwort" GridPane.columnIndex="1" GridPane.rowIndex="2">
<font>
<Font name="Century Gothic" size="12.0" />
</font></PasswordField>
<TextField fx:id="tfName" promptText="Voller Name" GridPane.columnIndex="1">
<font>
<Font name="Century Gothic" size="12.0" />
</font></TextField>
<TextField fx:id="tfPhone" promptText="Handynummer" GridPane.columnIndex="1" GridPane.rowIndex="1">
<font>
<Font name="Century Gothic" size="12.0" />
</font></TextField>
<TextField fx:id="tfChild" promptText="Kind" GridPane.columnIndex="1" GridPane.rowIndex="5">
<font>
<Font name="Century Gothic" size="12.0" />
</font></TextField>
<TextField GridPane.columnIndex="1" GridPane.rowIndex="4">
<font>
<Font name="Century Gothic" size="12.0" />
</font></TextField>
<TextField fx:id="tfStreet" prefWidth="254.0" promptText="Straße" GridPane.columnIndex="1" GridPane.rowIndex="3">
<font>
<Font name="Century Gothic" size="12.0" />
</font></TextField>
<TextField fx:id="tfHouseNumber" prefWidth="123.0" promptText="Hausnummer" GridPane.columnIndex="2" GridPane.rowIndex="3">
<font>
<Font name="Century Gothic" size="12.0" />
</font></TextField>
<TextField fx:id="tfPostalCode" promptText="Postleitzahl" GridPane.columnIndex="1" GridPane.rowIndex="4">
<font>
<Font name="Century Gothic" size="12.0" />
</font></TextField>
<TextField fx:id="tfCity" promptText="Ort" GridPane.columnIndex="2" GridPane.rowIndex="4">
<font>
<Font name="Century Gothic" size="12.0" />
</font></TextField>
</children>
</GridPane>

View File

@@ -12,7 +12,7 @@
<?import javafx.scene.shape.Line?>
<?import javafx.scene.text.Font?>
<AnchorPane maxHeight="-Infinity" maxWidth="-Infinity" minHeight="-Infinity" minWidth="-Infinity" prefHeight="742.0" prefWidth="980.0" style="-fx-background-color: #f0C8bd;" xmlns="http://javafx.com/javafx/19" xmlns:fx="http://javafx.com/fxml/1" fx:controller="com.example.vpr_javafx.HelloController">
<AnchorPane maxHeight="-Infinity" maxWidth="-Infinity" minHeight="-Infinity" minWidth="-Infinity" prefHeight="742.0" prefWidth="980.0" style="-fx-background-color: #f0C8bd;" xmlns="http://javafx.com/javafx/19" xmlns:fx="http://javafx.com/fxml/1" fx:controller="com.example.vpr_javafx.MainController">
<Label layoutX="76.0" layoutY="176.0" text="Montag" textFill="#6f7baf">
<font>
<Font name="Century Gothic Bold" size="13.0" />

View File

@@ -0,0 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
<?import javafx.scene.control.*?>
<?import javafx.scene.layout.*?>
<AnchorPane maxHeight="-Infinity" maxWidth="-Infinity" minHeight="-Infinity" minWidth="-Infinity" prefHeight="400.0" prefWidth="600.0" xmlns="http://javafx.com/javafx/11.0.14-internal" xmlns:fx="http://javafx.com/fxml/1" fx:controller="com.example.vpr_javafx.HelloController">
<children>
<Button fx:id="btDeleteSelection" layoutX="457.0" layoutY="264.0" mnemonicParsing="false" text="Löschen" />
<Button fx:id="btToMenu" onAction="#ToMenu" layoutX="461.0" layoutY="305.0" mnemonicParsing="false" visible="false" text="Zurück" />
<ListView fx:id="listViewDelete" layoutX="200.0" layoutY="89.0" prefHeight="200.0" prefWidth="200.0" />
</children>
</AnchorPane>

View File

@@ -7,8 +7,8 @@
<?import javafx.scene.shape.*?>
<?import javafx.scene.text.*?>
<AnchorPane fx:id="anchorPane" maxHeight="-Infinity" maxWidth="-Infinity" minHeight="-Infinity" minWidth="-Infinity" prefHeight="795.0" prefWidth="980.0" style="-fx-background-color: #f0C8bd;" xmlns="http://javafx.com/javafx/11.0.14-internal" xmlns:fx="http://javafx.com/fxml/1" fx:controller="com.example.vpr_javafx.HelloController">
<Label layoutX="76.0" layoutY="176.0" text="Montag" textFill="#6f7baf">
<AnchorPane fx:id="anchorPane" maxHeight="-Infinity" maxWidth="-Infinity" minHeight="-Infinity" minWidth="-Infinity" prefHeight="795.0" prefWidth="980.0" style="-fx-background-color: #f0C8bd;" xmlns="http://javafx.com/javafx/11.0.14-internal" xmlns:fx="http://javafx.com/fxml/1" fx:controller="com.example.vpr_javafx.MainController">
<Label layoutX="97.0" layoutY="176.0" text="Montag" textFill="#6f7baf">
<font>
<Font name="Century Gothic Bold" size="13.0" />
</font>
@@ -16,7 +16,7 @@
<Insets />
</opaqueInsets>
</Label>
<Label layoutX="74.0" layoutY="299.0" text="Dienstag" textFill="#6f7baf">
<Label layoutX="95.0" layoutY="299.0" text="Dienstag" textFill="#6f7baf">
<font>
<Font name="Century Gothic Bold" size="13.0" />
</font>
@@ -24,7 +24,7 @@
<Insets />
</opaqueInsets>
</Label>
<Label layoutX="72.0" layoutY="422.0" text="Mittwoch" textFill="#6f7baf">
<Label layoutX="93.0" layoutY="422.0" text="Mittwoch" textFill="#6f7baf">
<font>
<Font name="Century Gothic Bold" size="13.0" />
</font>
@@ -32,7 +32,7 @@
<Insets />
</opaqueInsets>
</Label>
<Label layoutX="63.0" layoutY="543.0" text="Donnerstag" textFill="#6f7baf">
<Label layoutX="84.0" layoutY="543.0" text="Donnerstag" textFill="#6f7baf">
<font>
<Font name="Century Gothic Bold" size="13.0" />
</font>
@@ -40,7 +40,7 @@
<Insets />
</opaqueInsets>
</Label>
<Label layoutX="79.0" layoutY="664.0" text="Freitag" textFill="#6f7baf">
<Label layoutX="100.0" layoutY="664.0" text="Freitag" textFill="#6f7baf">
<font>
<Font name="Century Gothic Bold" size="13.0" />
</font>
@@ -70,56 +70,56 @@
</font></Label>
<PasswordField fx:id="pfPassword" style="-fx-background-color: #f0c8cb;" />
<Button mnemonicParsing="false" onAction="#OnSignInButton" style="-fx-background-color: #c7d0f0;" text="anmelden" textFill="WHITE" />
<Button onAction="#ToRegistration" style="-fx-background-color: #c7d0f0;" textFill="WHITE" mnemonicParsing="false" text="registrieren" />
<Button mnemonicParsing="false" onAction="#ToRegistration" style="-fx-background-color: #c7d0f0;" text="registrieren" textFill="WHITE" />
</items>
</ToolBar>
<Line endX="100.0" layoutX="245.0" layoutY="310.0" startX="-100.0" stroke="#746fa6" strokeWidth="3.0" />
<Line endX="100.0" layoutX="245.0" layoutY="187.0" startX="-100.0" stroke="#746fa6" strokeWidth="3.0" />
<Line endX="100.0" layoutX="245.0" layoutY="433.0" startX="-100.0" stroke="#746fa6" strokeWidth="3.0" />
<Line endX="100.0" layoutX="245.0" layoutY="554.0" startX="-100.0" stroke="#746fa6" strokeWidth="3.0" />
<Line endX="100.0" layoutX="245.0" layoutY="675.0" startX="-100.0" stroke="#746fa6" strokeWidth="3.0" />
<Line endX="100.0" layoutX="266.0" layoutY="310.0" startX="-100.0" stroke="#746fa6" strokeWidth="3.0" />
<Line endX="100.0" layoutX="266.0" layoutY="187.0" startX="-100.0" stroke="#746fa6" strokeWidth="3.0" />
<Line endX="100.0" layoutX="266.0" layoutY="433.0" startX="-100.0" stroke="#746fa6" strokeWidth="3.0" />
<Line endX="100.0" layoutX="266.0" layoutY="554.0" startX="-100.0" stroke="#746fa6" strokeWidth="3.0" />
<Line endX="100.0" layoutX="266.0" layoutY="675.0" startX="-100.0" stroke="#746fa6" strokeWidth="3.0" />
<Line endX="100.0" layoutX="581.0" layoutY="187.0" startX="-100.0" stroke="#746fa6" strokeWidth="3.0" />
<Line endX="100.0" layoutX="581.0" layoutY="310.0" startX="-100.0" stroke="#746fa6" strokeWidth="3.0" />
<Line endX="100.0" layoutX="581.0" layoutY="433.0" startX="-100.0" stroke="#746fa6" strokeWidth="3.0" />
<Line endX="100.0" layoutX="581.0" layoutY="554.0" startX="-100.0" stroke="#746fa6" strokeWidth="3.0" />
<Line endX="100.0" layoutX="581.0" layoutY="675.0" startX="-100.0" stroke="#746fa6" strokeWidth="3.0" />
<Label fx:id="lMonH1" layoutX="148.0" layoutY="132.0" prefHeight="54.0" prefWidth="198.0" textFill="#6f7baf">
<Label fx:id="lMonH1" layoutX="169.0" layoutY="132.0" prefHeight="54.0" prefWidth="198.0" textFill="#6f7baf">
<font>
<Font name="Century Gothic Bold" size="13.0" />
</font></Label>
<Label fx:id="lMonH2" layoutX="148.0" layoutY="188.0" prefHeight="54.0" prefWidth="198.0" textFill="#6f7baf">
<Label fx:id="lMonH2" layoutX="169.0" layoutY="188.0" prefHeight="54.0" prefWidth="198.0" textFill="#6f7baf">
<font>
<Font name="Century Gothic Bold" size="13.0" />
</font></Label>
<Label fx:id="lTueH1" layoutX="148.0" layoutY="255.0" prefHeight="54.0" prefWidth="198.0" text="" textFill="#6f7baf">
<Label fx:id="lTueH1" layoutX="169.0" layoutY="255.0" prefHeight="54.0" prefWidth="198.0" text="" textFill="#6f7baf">
<font>
<Font name="Century Gothic Bold" size="13.0" />
</font></Label>
<Label fx:id="lTueH2" layoutX="148.0" layoutY="311.0" prefHeight="54.0" prefWidth="198.0" text="" textFill="#6f7baf">
<Label fx:id="lTueH2" layoutX="169.0" layoutY="311.0" prefHeight="54.0" prefWidth="198.0" text="" textFill="#6f7baf">
<font>
<Font name="Century Gothic Bold" size="13.0" />
</font></Label>
<Label fx:id="lWednH1" layoutX="148.0" layoutY="378.0" prefHeight="54.0" prefWidth="198.0" text="" textFill="#6f7baf">
<Label fx:id="lWednH1" layoutX="169.0" layoutY="378.0" prefHeight="54.0" prefWidth="198.0" text="" textFill="#6f7baf">
<font>
<Font name="Century Gothic Bold" size="13.0" />
</font></Label>
<Label fx:id="lWednH2" layoutX="148.0" layoutY="434.0" prefHeight="54.0" prefWidth="198.0" text="" textFill="#6f7baf">
<Label fx:id="lWednH2" layoutX="169.0" layoutY="434.0" prefHeight="54.0" prefWidth="198.0" text="" textFill="#6f7baf">
<font>
<Font name="Century Gothic Bold" size="13.0" />
</font></Label>
<Label fx:id="lThurH1" layoutX="148.0" layoutY="501.0" prefHeight="54.0" prefWidth="198.0" text="" textFill="#6f7baf">
<Label fx:id="lThurH1" layoutX="169.0" layoutY="501.0" prefHeight="54.0" prefWidth="198.0" text="" textFill="#6f7baf">
<font>
<Font name="Century Gothic Bold" size="13.0" />
</font></Label>
<Label fx:id="lThurH2" layoutX="148.0" layoutY="555.0" prefHeight="54.0" prefWidth="198.0" text="" textFill="#6f7baf">
<Label fx:id="lThurH2" layoutX="169.0" layoutY="555.0" prefHeight="54.0" prefWidth="198.0" text="" textFill="#6f7baf">
<font>
<Font name="Century Gothic Bold" size="13.0" />
</font></Label>
<Label fx:id="lFriH1" layoutX="148.0" layoutY="621.0" prefHeight="54.0" prefWidth="198.0" text="" textFill="#6f7baf">
<Label fx:id="lFriH1" layoutX="169.0" layoutY="621.0" prefHeight="54.0" prefWidth="198.0" text="" textFill="#6f7baf">
<font>
<Font name="Century Gothic Bold" size="13.0" />
</font></Label>
<Label fx:id="lFriH2" layoutX="148.0" layoutY="676.0" prefHeight="54.0" prefWidth="198.0" text="" textFill="#6f7baf">
<Label fx:id="lFriH2" layoutX="169.0" layoutY="676.0" prefHeight="54.0" prefWidth="198.0" text="" textFill="#6f7baf">
<font>
<Font name="Century Gothic Bold" size="13.0" />
</font></Label>
@@ -163,7 +163,7 @@
<font>
<Font name="Century Gothic Bold" size="13.0" />
</font></Label>
<Line endX="-99.99999237060547" endY="390.5999755859375" layoutX="243.0" layoutY="352.0" startX="-99.99998474121094" startY="-223.20001220703125" stroke="#746fa6" strokeWidth="3.0" />
<Line endX="-99.99999237060547" endY="390.5999755859375" layoutX="264.0" layoutY="350.0" startX="-99.99998474121094" startY="-223.20001220703125" stroke="#746fa6" strokeWidth="3.0" />
<ImageView fitHeight="107.0" fitWidth="138.0" layoutX="820.0" layoutY="9.0" pickOnBounds="true" preserveRatio="true">
<image>
<Image url="@pics/logo.png" />
@@ -200,26 +200,66 @@
</font>
</Label>
<Label fx:id="allergene" layoutX="780.0" layoutY="362.0" prefHeight="183.0" prefWidth="192.0" />
<ImageView fx:id="imgImage1" fitHeight="30.0" fitWidth="35.0" layoutX="112.0" layoutY="146.0" pickOnBounds="true" preserveRatio="true" />
<ImageView fx:id="imgImage2" fitHeight="30.0" fitWidth="35.0" layoutX="112.0" layoutY="195.0" pickOnBounds="true" preserveRatio="true" />
<ImageView fx:id="imgImage3" fitHeight="30.0" fitWidth="35.0" layoutX="112.0" layoutY="271.0" pickOnBounds="true" preserveRatio="true" />
<ImageView fx:id="imgImage4" fitHeight="30.0" fitWidth="35.0" layoutX="112.0" layoutY="318.0" pickOnBounds="true" preserveRatio="true" />
<ImageView fx:id="imgImage5" fitHeight="30.0" fitWidth="35.0" layoutX="112.0" layoutY="392.0" pickOnBounds="true" preserveRatio="true" />
<ImageView fx:id="imgImage6" fitHeight="30.0" fitWidth="35.0" layoutX="112.0" layoutY="439.0" pickOnBounds="true" preserveRatio="true" />
<ImageView fx:id="imgImage7" fitHeight="30.0" fitWidth="35.0" layoutX="112.0" layoutY="515.0" pickOnBounds="true" preserveRatio="true" />
<ImageView fx:id="imgImage8" fitHeight="30.0" fitWidth="35.0" layoutX="112.0" layoutY="559.0" pickOnBounds="true" preserveRatio="true" />
<ImageView fx:id="imgImage9" fitHeight="30.0" fitWidth="35.0" layoutX="112.0" layoutY="635.0" pickOnBounds="true" preserveRatio="true" />
<ImageView fx:id="imgImage10" fitHeight="30.0" fitWidth="35.0" layoutX="112.0" layoutY="680.0" pickOnBounds="true" preserveRatio="true" />
<ImageView fx:id="imgImage1" fitHeight="30.0" fitWidth="35.0" layoutX="126.0" layoutY="140.0" pickOnBounds="true" preserveRatio="true" />
<ImageView fx:id="imgImage2" fitHeight="30.0" fitWidth="35.0" layoutX="126.0" layoutY="196.0" pickOnBounds="true" preserveRatio="true" />
<ImageView fx:id="imgImage3" fitHeight="30.0" fitWidth="35.0" layoutX="126.0" layoutY="265.0" pickOnBounds="true" preserveRatio="true" />
<ImageView fx:id="imgImage4" fitHeight="30.0" fitWidth="35.0" layoutX="126.0" layoutY="319.0" pickOnBounds="true" preserveRatio="true" />
<ImageView fx:id="imgImage5" fitHeight="30.0" fitWidth="35.0" layoutX="126.0" layoutY="386.0" pickOnBounds="true" preserveRatio="true" />
<ImageView fx:id="imgImage6" fitHeight="30.0" fitWidth="35.0" layoutX="126.0" layoutY="440.0" pickOnBounds="true" preserveRatio="true" />
<ImageView fx:id="imgImage7" fitHeight="30.0" fitWidth="35.0" layoutX="126.0" layoutY="509.0" pickOnBounds="true" preserveRatio="true" />
<ImageView fx:id="imgImage8" fitHeight="30.0" fitWidth="35.0" layoutX="126.0" layoutY="560.0" pickOnBounds="true" preserveRatio="true" />
<ImageView fx:id="imgImage9" fitHeight="30.0" fitWidth="35.0" layoutX="126.0" layoutY="629.0" pickOnBounds="true" preserveRatio="true" />
<ImageView fx:id="imgImage10" fitHeight="30.0" fitWidth="35.0" layoutX="126.0" layoutY="681.0" pickOnBounds="true" preserveRatio="true" />
<Button fx:id="btResetSelection" layoutX="779.0" layoutY="622.0" mnemonicParsing="false" onAction="#resetSelection" text="Auswahl aufheben" visible="false" />
<Button fx:id="btToOrder" layoutX="779.0" layoutY="675.0" mnemonicParsing="false" prefHeight="26.0" prefWidth="114.0" text="Bestellen" visible="false" />
<RadioButton fx:id="rbMonH1" layoutX="359.0" layoutY="159.0" mnemonicParsing="false" onAction="#getLabelValueWithRadio" visible="false" />
<RadioButton fx:id="rbMonH2" layoutX="359.0" layoutY="201.0" mnemonicParsing="false" onAction="#getLabelValueWithRadio" visible="false" />
<RadioButton fx:id="rbTueH1" layoutX="360.0" layoutY="278.0" mnemonicParsing="false" onAction="#getLabelValueWithRadio" visible="false" />
<RadioButton fx:id="rbTueH2" layoutX="361.0" layoutY="325.0" mnemonicParsing="false" onAction="#getLabelValueWithRadio" visible="false" />
<RadioButton fx:id="rbWednH1" layoutX="360.0" layoutY="405.0" mnemonicParsing="false" onAction="#getLabelValueWithRadio" visible="false" />
<RadioButton fx:id="rbWednH2" layoutX="359.0" layoutY="445.0" mnemonicParsing="false" onAction="#getLabelValueWithRadio" visible="false" />
<RadioButton fx:id="rbThurH1" layoutX="360.0" layoutY="528.0" mnemonicParsing="false" onAction="#getLabelValueWithRadio" visible="false" />
<RadioButton fx:id="rbThurH2" layoutX="360.0" layoutY="566.0" mnemonicParsing="false" onAction="#getLabelValueWithRadio" visible="false" />
<RadioButton fx:id="rbFriH1" layoutX="360.0" layoutY="650.0" mnemonicParsing="false" onAction="#getLabelValueWithRadio" visible="false" />
<RadioButton fx:id="rbFriH2" layoutX="360.0" layoutY="687.0" mnemonicParsing="false" onAction="#getLabelValueWithRadio" visible="false" />
<Button fx:id="btToOrder" layoutX="779.0" layoutY="675.0" mnemonicParsing="false" onAction="#toOrder" prefHeight="26.0" prefWidth="114.0" text="Bestellen" visible="false" />
<RadioButton fx:id="rbMonH1" layoutX="377.0" layoutY="159.0" mnemonicParsing="false" onAction="#getLabelValueWithRadio" visible="false" />
<RadioButton fx:id="rbMonH2" layoutX="377.0" layoutY="206.0" mnemonicParsing="false" onAction="#getLabelValueWithRadio" visible="false" />
<RadioButton fx:id="rbTueH1" layoutX="377.0" layoutY="277.0" mnemonicParsing="false" onAction="#getLabelValueWithRadio" visible="false" />
<RadioButton fx:id="rbTueH2" layoutX="377.0" layoutY="324.0" mnemonicParsing="false" onAction="#getLabelValueWithRadio" visible="false" />
<RadioButton fx:id="rbWednH1" layoutX="377.0" layoutY="398.0" mnemonicParsing="false" onAction="#getLabelValueWithRadio" visible="false" />
<RadioButton fx:id="rbWednH2" layoutX="377.0" layoutY="445.0" mnemonicParsing="false" onAction="#getLabelValueWithRadio" visible="false" />
<RadioButton fx:id="rbThurH1" layoutX="377.0" layoutY="521.0" mnemonicParsing="false" onAction="#getLabelValueWithRadio" visible="false" />
<RadioButton fx:id="rbThurH2" layoutX="377.0" layoutY="565.0" mnemonicParsing="false" onAction="#getLabelValueWithRadio" visible="false" />
<RadioButton fx:id="rbFriH1" layoutX="377.0" layoutY="648.0" mnemonicParsing="false" onAction="#getLabelValueWithRadio" visible="false" />
<RadioButton fx:id="rbFriH2" layoutX="377.0" layoutY="692.0" mnemonicParsing="false" onAction="#getLabelValueWithRadio" visible="false" />
<Label fx:id="monDat" layoutX="14.0" layoutY="176.0" text="30.01.2023" textFill="#6f7baf">
<font>
<Font name="Century Gothic Bold" size="13.0" />
</font>
<opaqueInsets>
<Insets />
</opaqueInsets>
</Label>
<Label fx:id="tueDat" layoutX="14.0" layoutY="299.0" text="31.01.2023" textFill="#6f7baf">
<font>
<Font name="Century Gothic Bold" size="13.0" />
</font>
<opaqueInsets>
<Insets />
</opaqueInsets>
</Label>
<Label fx:id="wedDat" layoutX="14.0" layoutY="424.0" text="01.02.2023" textFill="#6f7baf">
<font>
<Font name="Century Gothic Bold" size="13.0" />
</font>
<opaqueInsets>
<Insets />
</opaqueInsets>
</Label>
<Label fx:id="thurDat" layoutX="14.0" layoutY="543.0" text="02.02.2023" textFill="#6f7baf">
<font>
<Font name="Century Gothic Bold" size="13.0" />
</font>
<opaqueInsets>
<Insets />
</opaqueInsets>
</Label>
<Label fx:id="friDat" layoutX="14.0" layoutY="664.0" text="03.02.2023" textFill="#6f7baf">
<font>
<Font name="Century Gothic Bold" size="13.0" />
</font>
<opaqueInsets>
<Insets />
</opaqueInsets>
</Label>
</AnchorPane>

View File

@@ -6,7 +6,7 @@
<?import javafx.scene.shape.*?>
<?import javafx.scene.text.*?>
<AnchorPane prefHeight="400.0" prefWidth="600.0" xmlns="http://javafx.com/javafx/11.0.14-internal" xmlns:fx="http://javafx.com/fxml/1" fx:controller="com.example.vpr_javafx.HelloController">
<AnchorPane prefHeight="400.0" prefWidth="600.0" xmlns="http://javafx.com/javafx/11.0.14-internal" xmlns:fx="http://javafx.com/fxml/1" fx:controller="com.example.vpr_javafx.MainController">
<Label layoutX="27.0" layoutY="160.0" style="-fx-font-weight: bold; -fx-font-family: century gothic; -fx-font-size: 14; -fx-text-fill: #746FA6;" text="Montag" textFill="BLUE">
<font>
<Font name="Century Gothic" size="13.0" />

View File

@@ -0,0 +1,29 @@
<?xml version="1.0" encoding="UTF-8"?>
<?import javafx.scene.control.*?>
<?import javafx.scene.layout.*?>
<AnchorPane prefHeight="400.0" prefWidth="600.0" xmlns="http://javafx.com/javafx/11.0.14-internal" xmlns:fx="http://javafx.com/fxml/1" fx:controller="com.example.vpr_javafx.MainController">
<children>
<GridPane layoutX="81.0" layoutY="50.0" prefHeight="272.0" prefWidth="496.0">
<columnConstraints>
<ColumnConstraints hgrow="SOMETIMES" maxWidth="455.6" minWidth="10.0" prefWidth="394.8" />
<ColumnConstraints hgrow="SOMETIMES" maxWidth="430.0" minWidth="0.0" prefWidth="12.0" />
<ColumnConstraints hgrow="SOMETIMES" maxWidth="210.0" minWidth="0.0" prefWidth="90.0" />
</columnConstraints>
<rowConstraints>
<RowConstraints maxHeight="271.20000000000005" minHeight="10.0" prefHeight="202.0" vgrow="SOMETIMES" />
<RowConstraints maxHeight="271.20000000000005" minHeight="10.0" prefHeight="54.39999999999998" vgrow="SOMETIMES" />
<RowConstraints maxHeight="90.39999999999998" minHeight="0.0" prefHeight="0.0" vgrow="SOMETIMES" />
<RowConstraints maxHeight="51.39999999999998" minHeight="0.0" prefHeight="0.0" vgrow="SOMETIMES" />
</rowConstraints>
<children>
<ListView fx:id="orderList" prefHeight="229.0" prefWidth="410.0" GridPane.rowSpan="2" />
<Button mnemonicParsing="false" onAction="#removeFromOrder" prefHeight="26.0" prefWidth="89.0" text="stornieren" GridPane.columnIndex="2" />
<Button mnemonicParsing="false" prefHeight="26.0" prefWidth="90.0" text="bestellen" GridPane.columnIndex="2" GridPane.rowIndex="1" />
</children>
</GridPane>
<Button layoutX="16.0" layoutY="353.0" mnemonicParsing="false" text="zurück" />
<Label layoutX="239.0" layoutY="22.0" text="Stornier-Menü" />
</children>
</AnchorPane>

View File

@@ -2,13 +2,15 @@
<?import javafx.scene.control.*?>
<?import javafx.scene.layout.*?>
<?import javafx.scene.text.*?>
<AnchorPane prefHeight="400.0" prefWidth="600.0" xmlns="http://javafx.com/javafx/11.0.14-internal" xmlns:fx="http://javafx.com/fxml/1" fx:controller="com.example.vpr_javafx.HelloController">
<AnchorPane prefHeight="400.0" prefWidth="600.0" style="-fx-background-color: #F0C8BD;" xmlns="http://javafx.com/javafx/11.0.2" xmlns:fx="http://javafx.com/fxml/1" fx:controller="com.example.vpr_javafx.MainController">
<children>
<GridPane layoutX="100.0" layoutY="75.0" prefHeight="250.0" prefWidth="400.0">
<GridPane layoutX="50.0" layoutY="62.0" prefHeight="275.0" prefWidth="500.0" style="-fx-background-color: #F0C8BD;">
<columnConstraints>
<ColumnConstraints hgrow="SOMETIMES" maxWidth="153.0" minWidth="10.0" prefWidth="89.8" />
<ColumnConstraints hgrow="SOMETIMES" maxWidth="261.0" minWidth="10.0" prefWidth="226.2" />
<ColumnConstraints hgrow="SOMETIMES" maxWidth="153.0" minWidth="10.0" prefWidth="85.0" />
<ColumnConstraints hgrow="SOMETIMES" maxWidth="261.0" minWidth="10.0" prefWidth="200.0" />
<ColumnConstraints hgrow="SOMETIMES" maxWidth="261.0" minWidth="10.0" prefWidth="200.0" />
</columnConstraints>
<rowConstraints>
<RowConstraints minHeight="10.0" prefHeight="30.0" vgrow="SOMETIMES" />
@@ -17,18 +19,76 @@
<RowConstraints minHeight="10.0" prefHeight="30.0" vgrow="SOMETIMES" />
<RowConstraints minHeight="10.0" prefHeight="30.0" vgrow="SOMETIMES" />
<RowConstraints minHeight="10.0" prefHeight="30.0" vgrow="SOMETIMES" />
<RowConstraints minHeight="10.0" prefHeight="30.0" vgrow="SOMETIMES" />
<RowConstraints minHeight="10.0" prefHeight="30.0" vgrow="SOMETIMES" />
</rowConstraints>
<children>
<Label text="Voller Name: " />
<Label text="Handynummer: " GridPane.rowIndex="1" />
<Label prefWidth="95.0" text="Passwort: " GridPane.rowIndex="2" />
<Label text="Kind: " GridPane.rowIndex="3" />
<Button mnemonicParsing="false" onAction="#OnRegistrationButton" prefHeight="26.0" prefWidth="90.0" text="Abschicken" translateX="100.0" GridPane.columnIndex="1" GridPane.rowIndex="5" />
<PasswordField fx:id="pfPassword" GridPane.columnIndex="1" GridPane.rowIndex="2" />
<TextField fx:id="tfName" GridPane.columnIndex="1" />
<TextField fx:id="tfPhone" GridPane.columnIndex="1" GridPane.rowIndex="1" />
<TextField fx:id="tfChild" GridPane.columnIndex="1" GridPane.rowIndex="3" />
<Label text="Name:" textFill="#746fa6">
<font>
<Font name="Century Gothic Bold" size="12.0" />
</font></Label>
<Label text="Handynummer:" textFill="#746fa6" GridPane.rowIndex="1">
<font>
<Font name="Century Gothic Bold" size="12.0" />
</font></Label>
<Label prefWidth="95.0" text="Passwort: " textFill="#746fa6" GridPane.rowIndex="2">
<font>
<Font name="Century Gothic Bold" size="12.0" />
</font></Label>
<Label text="Kind:" textFill="#746fa6" GridPane.rowIndex="5">
<font>
<Font name="Century Gothic Bold" size="12.0" />
</font></Label>
<Label text="Straße:" textFill="#746fa6" GridPane.rowIndex="3">
<font>
<Font name="Century Gothic Bold" size="12.0" />
</font></Label>
<Label text="Ort:" textFill="#746fa6" GridPane.rowIndex="4">
<font>
<Font name="Century Gothic Bold" size="12.0" />
</font></Label>
<Button mnemonicParsing="false" onAction="#OnRegistrationButton" prefHeight="26.0" prefWidth="90.0" style="-fx-background-color: #CBC7F0; -fx-border-color: #746FA6;" text="Abschicken" textFill="WHITE" translateX="100.0" GridPane.columnIndex="1" GridPane.rowIndex="7">
<font>
<Font name="Century Gothic" size="12.0" />
</font></Button>
<PasswordField fx:id="pfPassword" promptText="Passwort" GridPane.columnIndex="1" GridPane.rowIndex="2">
<font>
<Font name="Century Gothic" size="12.0" />
</font></PasswordField>
<TextField fx:id="tfName" promptText="Voller Name" GridPane.columnIndex="1">
<font>
<Font name="Century Gothic" size="12.0" />
</font></TextField>
<TextField fx:id="tfPhone" promptText="Handynummer" GridPane.columnIndex="1" GridPane.rowIndex="1">
<font>
<Font name="Century Gothic" size="12.0" />
</font></TextField>
<TextField fx:id="tfChild" promptText="Kind" GridPane.columnIndex="1" GridPane.rowIndex="5">
<font>
<Font name="Century Gothic" size="12.0" />
</font></TextField>
<TextField GridPane.columnIndex="1" GridPane.rowIndex="4">
<font>
<Font name="Century Gothic" size="12.0" />
</font></TextField>
<TextField fx:id="tfStreet" prefWidth="254.0" promptText="Straße" GridPane.columnIndex="1" GridPane.rowIndex="3">
<font>
<Font name="Century Gothic" size="12.0" />
</font></TextField>
<TextField fx:id="tfHouseNumber" prefWidth="123.0" promptText="Hausnummer" GridPane.columnIndex="2" GridPane.rowIndex="3">
<font>
<Font name="Century Gothic" size="12.0" />
</font></TextField>
<TextField fx:id="tfPostalCode" promptText="Postleitzahl" GridPane.columnIndex="1" GridPane.rowIndex="4">
<font>
<Font name="Century Gothic" size="12.0" />
</font></TextField>
<TextField fx:id="tfCity" promptText="Ort" GridPane.columnIndex="2" GridPane.rowIndex="4">
<font>
<Font name="Century Gothic" size="12.0" />
</font></TextField>
</children>
</GridPane>
</children>
</AnchorPane>
</AnchorPane>

View File

@@ -12,7 +12,7 @@
<?import javafx.scene.shape.Line?>
<?import javafx.scene.text.Font?>
<AnchorPane maxHeight="-Infinity" maxWidth="-Infinity" minHeight="-Infinity" minWidth="-Infinity" prefHeight="742.0" prefWidth="980.0" style="-fx-background-color: #f0C8bd;" xmlns="http://javafx.com/javafx/19" xmlns:fx="http://javafx.com/fxml/1" fx:controller="com.example.vpr_javafx.HelloController">
<AnchorPane maxHeight="-Infinity" maxWidth="-Infinity" minHeight="-Infinity" minWidth="-Infinity" prefHeight="742.0" prefWidth="980.0" style="-fx-background-color: #f0C8bd;" xmlns="http://javafx.com/javafx/19" xmlns:fx="http://javafx.com/fxml/1" fx:controller="com.example.vpr_javafx.MainController">
<Label layoutX="76.0" layoutY="176.0" text="Montag" textFill="#6f7baf">
<font>
<Font name="Century Gothic Bold" size="13.0" />

View File

@@ -1,2 +1,3 @@
Felix Düsterhaus;Sabine Gubitz;Detmolderstrasse 101,33102 Paderborn;1234567;Lisa,Peter;12345678A
Kevin Pfannenstiel;Marlene Pfannenstiel;Fürstenallee 30, 33102 Paderborn;7654321;Anton;12345678B
Felix Düsterhaus;Detmolderstrasse 101,33102 Paderborn;1234567;Lisa;12345678A
Kevin Pfannenstiel;Fürstenallee 30, 33102 Paderborn;7654321;Anton;12345678B
Max Muster;Fürstenallee 5,33102 Paderborn;123456789;Klaus Muster;12345abc