diff options
Diffstat (limited to 'src/main')
6 files changed, 226 insertions, 177 deletions
diff --git a/src/main/java/at/ac/tuwien/sepm/assignment/groupphase/einsatzverwaltung/dto/Registration.java b/src/main/java/at/ac/tuwien/sepm/assignment/groupphase/einsatzverwaltung/dto/Registration.java index 8551266..93530bc 100644 --- a/src/main/java/at/ac/tuwien/sepm/assignment/groupphase/einsatzverwaltung/dto/Registration.java +++ b/src/main/java/at/ac/tuwien/sepm/assignment/groupphase/einsatzverwaltung/dto/Registration.java @@ -2,6 +2,7 @@ package at.ac.tuwien.sepm.assignment.groupphase.einsatzverwaltung.dto; import com.google.auto.value.AutoValue; import java.time.Instant; +import java.util.Date; @AutoValue public abstract class Registration { @@ -17,6 +18,12 @@ public abstract class Registration { return new AutoValue_Registration.Builder().id(0); } + public boolean isActive() { + Instant now = (new Date()).toInstant(); + + return start().isBefore(now) && end().isAfter(now); + } + @AutoValue.Builder public abstract static class Builder { public abstract Builder id(long id); diff --git a/src/main/java/at/ac/tuwien/sepm/assignment/groupphase/einsatzverwaltung/ui/vehiclepane/VehiclePaneController.java b/src/main/java/at/ac/tuwien/sepm/assignment/groupphase/einsatzverwaltung/ui/vehiclepane/VehiclePaneController.java index 2db6f37..29230f3 100644 --- a/src/main/java/at/ac/tuwien/sepm/assignment/groupphase/einsatzverwaltung/ui/vehiclepane/VehiclePaneController.java +++ b/src/main/java/at/ac/tuwien/sepm/assignment/groupphase/einsatzverwaltung/ui/vehiclepane/VehiclePaneController.java @@ -4,8 +4,6 @@ import at.ac.tuwien.sepm.assignment.groupphase.einsatzverwaltung.dto.Employee.Ed import at.ac.tuwien.sepm.assignment.groupphase.einsatzverwaltung.dto.Registration; import at.ac.tuwien.sepm.assignment.groupphase.einsatzverwaltung.dto.Vehicle; import java.io.IOException; -import java.time.Instant; -import java.util.Date; import java.util.List; import java.util.Optional; import javafx.fxml.FXML; @@ -16,6 +14,7 @@ import javafx.scene.image.ImageView; import javafx.scene.text.Text; public class VehiclePaneController { + @FXML private Text txtType; @FXML private Text txtNumber; @FXML private ImageView ivNEF; @@ -35,11 +34,16 @@ public class VehiclePaneController { } private Node rootElement; + private Vehicle data; public Node getRootElement() { return rootElement; } + public Vehicle getData() { + return data; + } + /** * * Set the displayed data of this VehiclePane. * @@ -52,23 +56,22 @@ public class VehiclePaneController { String constrType = vehicle.constructionType().name(); txtRooftype.setText( constrType.substring(0, 1).toUpperCase() + constrType.substring(1).toLowerCase()); - txtNumber.setText("" + vehicle.id()); + txtNumber.setText("-" + vehicle.id()); if (vehicle.hasNef()) { - ivNEF.setImage(new Image("../images/NEF.png")); + ivNEF.setImage(new Image("images/NEF.png")); txtNEF.setText("hat NEF-Halterung"); } else { - ivNEF.setImage(new Image("../images/NotNEF.png")); + ivNEF.setImage(new Image("images/NotNEF.png")); txtNEF.setText("keine NEF-Halterung"); } if (showQualification) { - Instant now = (new Date()).toInstant(); List<Registration> regs = vehicle.registrations(); assert regs != null; Optional<EducationLevel> edu = regs.stream() - .filter(reg -> reg.start().isBefore(now) && reg.end().isAfter(now)) + .filter(Registration::isActive) .map(reg -> reg.employee().educationLevel()) .max(EducationLevel::compareTo); @@ -80,5 +83,11 @@ public class VehiclePaneController { ivQualification.setVisible(false); ivQualification.setManaged(false); } + + this.data = vehicle; + } + + public void setSelected(boolean selected) { + // TODO } } diff --git a/src/main/java/at/ac/tuwien/sepm/assignment/groupphase/einsatzverwaltung/userInterface/CreateOperationController.java b/src/main/java/at/ac/tuwien/sepm/assignment/groupphase/einsatzverwaltung/userInterface/CreateOperationController.java index 7b04efe..58874da 100644 --- a/src/main/java/at/ac/tuwien/sepm/assignment/groupphase/einsatzverwaltung/userInterface/CreateOperationController.java +++ b/src/main/java/at/ac/tuwien/sepm/assignment/groupphase/einsatzverwaltung/userInterface/CreateOperationController.java @@ -1,13 +1,19 @@ package at.ac.tuwien.sepm.assignment.groupphase.einsatzverwaltung.userInterface; import at.ac.tuwien.sepm.assignment.groupphase.einsatzverwaltung.dao.DBOperationDAO; +import at.ac.tuwien.sepm.assignment.groupphase.einsatzverwaltung.dto.Employee; +import at.ac.tuwien.sepm.assignment.groupphase.einsatzverwaltung.dto.Employee.EducationLevel; import at.ac.tuwien.sepm.assignment.groupphase.einsatzverwaltung.dto.Operation; import at.ac.tuwien.sepm.assignment.groupphase.einsatzverwaltung.dto.Operation.Severity; import at.ac.tuwien.sepm.assignment.groupphase.einsatzverwaltung.dto.Operation.Status; +import at.ac.tuwien.sepm.assignment.groupphase.einsatzverwaltung.dto.Registration; import at.ac.tuwien.sepm.assignment.groupphase.einsatzverwaltung.dto.Vehicle; +import at.ac.tuwien.sepm.assignment.groupphase.einsatzverwaltung.dto.Vehicle.ConstructionType; +import at.ac.tuwien.sepm.assignment.groupphase.einsatzverwaltung.dto.Vehicle.VehicleType; import at.ac.tuwien.sepm.assignment.groupphase.einsatzverwaltung.service.OperationService; import at.ac.tuwien.sepm.assignment.groupphase.einsatzverwaltung.service.OperationServiceImpl; import at.ac.tuwien.sepm.assignment.groupphase.einsatzverwaltung.service.VehicleService; +import at.ac.tuwien.sepm.assignment.groupphase.einsatzverwaltung.ui.vehiclepane.VehiclePaneController; import at.ac.tuwien.sepm.assignment.groupphase.exception.InvalidOperationException; import at.ac.tuwien.sepm.assignment.groupphase.exception.ServiceException; import at.ac.tuwien.sepm.assignment.groupphase.util.JDBCConnectionManager; @@ -15,10 +21,11 @@ import at.ac.tuwien.sepm.assignment.groupphase.util.SpringFXMLLoader; import java.io.IOException; import java.lang.invoke.MethodHandles; import java.time.Instant; -import java.util.EnumSet; +import java.time.LocalDate; +import java.time.temporal.ChronoUnit; +import java.util.Arrays; import java.util.LinkedList; import java.util.Set; -import javafx.collections.FXCollections; import javafx.event.ActionEvent; import javafx.fxml.FXML; import javafx.scene.Parent; @@ -27,10 +34,10 @@ import javafx.scene.control.Alert; import javafx.scene.control.Alert.AlertType; import javafx.scene.control.Button; import javafx.scene.control.Label; -import javafx.scene.control.ListCell; import javafx.scene.control.ListView; import javafx.scene.control.TextField; import javafx.scene.layout.AnchorPane; +import javafx.scene.layout.FlowPane; import javafx.stage.Stage; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -46,13 +53,14 @@ public class CreateOperationController { public TextField txtAddress; public TextField txtNote; public Button btnCreateOperation; - public ListView<Vehicle> lvVehicles; public ListView lvActiveOperations; public Label lblChosenVehicles; - public LinkedList<Vehicle> chosenVehicles = new LinkedList<>(); + public FlowPane fpVehicles; + + private LinkedList<Vehicle> chosenVehicles = new LinkedList<>(); // TODO: Anders? - OperationService operationService = + private OperationService operationService = new OperationServiceImpl(new DBOperationDAO(new JDBCConnectionManager())); private final VehicleService vehicleService; private final SpringFXMLLoader fxmlLoader; @@ -65,65 +73,55 @@ public class CreateOperationController { @FXML public void initialize() { lblChosenVehicles.setText("keine ausgewählt"); - lvVehicles.setCellFactory( - param -> - new ListCell<Vehicle>() { - @Override - protected void updateItem(Vehicle item, boolean empty) { - super.updateItem(item, empty); - - if (empty || item == null || item.name() == null) { - setText(null); - } else { - setText(item.name()); - } - } - }); - - lvVehicles.setOnMouseClicked( - event -> { - if (event.getClickCount() == 2) { - boolean remove = false; - if (lvVehicles.getSelectionModel().getSelectedItem() == null) { - return; - } - for (Vehicle vehicle : chosenVehicles) { - if (lvVehicles.getSelectionModel().getSelectedItem().equals(vehicle)) { - remove = true; - break; - } - } - if (!remove) { - chosenVehicles.add(lvVehicles.getSelectionModel().getSelectedItem()); - - } else { - chosenVehicles.remove(lvVehicles.getSelectionModel().getSelectedItem()); - } - StringBuilder result = new StringBuilder(); - for (int i = 0; i < chosenVehicles.size(); i++) { - if (i == chosenVehicles.size() - 1) { - result.append(chosenVehicles.get(i).name()); - } else { - result.append(chosenVehicles.get(i).name()).append(", "); - } - } - if (result.toString().equals("")) { - lblChosenVehicles.setText("keine ausgewählt"); - } else { - lblChosenVehicles.setText(result.toString()); - } - } - }); } public void updateList() { try { - this.lvVehicles.setItems( - FXCollections.observableArrayList( - vehicleService.list( - EnumSet.of( - Vehicle.Status.FREI_FUNK, Vehicle.Status.FREI_WACHE)))); - } catch (ServiceException e) { + fpVehicles.getChildren().clear(); + List<Vehicle> vehicles = vehicleService.list(); + + // TODO Remove debug + vehicles = testData(); + + for (Vehicle vehicle : vehicles) { + VehiclePaneController controller = VehiclePaneController.createVehiclePane(); + + controller.setData(vehicle, true); + controller + .getRootElement() + .setOnMouseClicked( + event -> { + if (event.getClickCount() == 2) { + if (chosenVehicles.contains(vehicle)) { + chosenVehicles.remove(vehicle); + controller.setSelected(false); + } else { + chosenVehicles.add(vehicle); + controller.setSelected(true); + } + + StringBuilder result = new StringBuilder(); + for (int i = 0; i < chosenVehicles.size(); i++) { + if (i == chosenVehicles.size() - 1) { + result.append(chosenVehicles.get(i).name()); + } else { + result.append(chosenVehicles.get(i).name()) + .append(", "); + } + } + if (result.toString().equals("")) { + lblChosenVehicles.setText("keine ausgewählt"); + } else { + lblChosenVehicles.setText(result.toString()); + } + } + }); + + fpVehicles.getChildren().add(controller.getRootElement()); + } + } catch (ServiceException | IOException e) { + LOG.error("Error while updating list.", e); + Alert alert = new Alert(Alert.AlertType.ERROR); alert.setTitle("Fehler"); alert.setHeaderText("Fehler!"); @@ -132,14 +130,30 @@ public class CreateOperationController { } } - /*private LinkedList<Vehicle> mylist() { + private LinkedList<Vehicle> testData() { + Employee empl = + Employee.builder() + .birthday(LocalDate.MIN) + .isDriver(true) + .isPilot(true) + .educationLevel(EducationLevel.NKV) + .name("Hans Test") + .build(); + Registration reg = + Registration.builder() + .employee(empl) + .start(Instant.now().minus(1, ChronoUnit.HOURS)) + .end(Instant.now().plus(1, ChronoUnit.HOURS)) + .build(); + Vehicle vehicle = Vehicle.builder() .name("Test-KTW") .constructionType(ConstructionType.HOCHDACH) .type(VehicleType.KTW) .status(Vehicle.Status.FREI_WACHE) - .hasNef(true) + .hasNef(false) + .registrations(Arrays.asList(reg)) .build(); Vehicle vehicle1 = @@ -149,13 +163,14 @@ public class CreateOperationController { .type(VehicleType.NEF) .status(Vehicle.Status.FREI_FUNK) .hasNef(true) + .registrations(Arrays.asList(reg)) .build(); LinkedList<Vehicle> list = new LinkedList<>(); list.add(vehicle); list.add(vehicle1); // this.lvVehicles.setItems(FXCollections.observableArrayList(list)); return list; - }*/ + } @FXML protected void createOperationClicked() { diff --git a/src/main/resources/fxml/CreateOperationController.fxml b/src/main/resources/fxml/CreateOperationController.fxml index 086a5d1..18a1508 100644 --- a/src/main/resources/fxml/CreateOperationController.fxml +++ b/src/main/resources/fxml/CreateOperationController.fxml @@ -5,91 +5,114 @@ <?import javafx.scene.control.Label?> <?import javafx.scene.control.ListView?> <?import javafx.scene.control.TextField?> +<?import javafx.scene.effect.DropShadow?> <?import javafx.scene.layout.AnchorPane?> +<?import javafx.scene.layout.FlowPane?> <?import javafx.scene.text.Font?> -<AnchorPane maxHeight="-Infinity" maxWidth="-Infinity" minHeight="-Infinity" minWidth="-Infinity" prefHeight="650.0" prefWidth="1200.0" xmlns="http://javafx.com/javafx/9.0.1" xmlns:fx="http://javafx.com/fxml/1" fx:controller="at.ac.tuwien.sepm.assignment.groupphase.einsatzverwaltung.userInterface.CreateOperationController"> - <children> - <AnchorPane layoutX="964.0" layoutY="-66.0" prefHeight="182.0" prefWidth="1200.0" style="-fx-background-color: #2D75B6;" AnchorPane.leftAnchor="0.0" AnchorPane.topAnchor="0.0" /> - <AnchorPane fx:id="apCreateOperation" layoutX="40.0" layoutY="71.0" prefHeight="151.0" prefWidth="920.0" style="-fx-background-color: white; -fx-effect: dropshadow(three-pass-box, rgba(0,0,0,0.8), 5, 0, 0, 5);"> - <children> - <Label layoutX="14.0" layoutY="14.0" prefHeight="30.0" prefWidth="62.0" text="Code"> - <font> - <Font size="19.0" /> - </font> - </Label> - <Label layoutX="185.0" layoutY="14.0" prefHeight="30.0" prefWidth="94.0" text="Adresse"> - <font> - <Font size="19.0" /> - </font> - </Label> - <Label layoutX="587.0" layoutY="14.0" prefHeight="30.0" prefWidth="121.0" text="Anmerkung"> - <font> - <Font size="19.0" /> - </font> - </Label> - <TextField fx:id="txtCode" layoutX="14.0" layoutY="48.0" prefHeight="39.0" prefWidth="163.0"> - <font> - <Font name="System Bold" size="20.0" /> - </font> - </TextField> - <TextField fx:id="txtAddress" layoutX="185.0" layoutY="48.0" prefHeight="39.0" prefWidth="396.0"> - <font> - <Font name="System Bold" size="20.0" /> - </font> - </TextField> - <TextField fx:id="txtNote" layoutX="587.0" layoutY="48.0" prefHeight="39.0" prefWidth="319.0"> - <font> - <Font name="System Bold" size="20.0" /> - </font> - </TextField> - <Label layoutX="14.0" layoutY="101.0" prefHeight="30.0" prefWidth="102.0" text="Fahrzeuge:"> - <font> - <Font size="19.0" /> - </font> - </Label> - <Label fx:id="lblChosenVehicles" layoutX="116.0" layoutY="102.0" prefHeight="30.0" prefWidth="610.0" text="keine ausgewählt"> - <font> - <Font size="19.0" /> - </font> - </Label> - <Button fx:id="btnCreateOperation" layoutX="747.0" layoutY="95.0" mnemonicParsing="false" onAction="#createOperationClicked" prefHeight="0.0" prefWidth="158.0" text="Erstellen"> - <font> - <Font name="System Bold" size="21.0" /> - </font> - </Button> - </children> - </AnchorPane> - <Hyperlink layoutX="44.0" layoutY="38.0" onAction="#onRegistrationLinkClicked" text="Anmeldungen" textFill="WHITE"> +<AnchorPane maxHeight="-Infinity" maxWidth="-Infinity" minHeight="-Infinity" minWidth="-Infinity" + prefHeight="650.0" prefWidth="1200.0" xmlns="http://javafx.com/javafx/9.0.1" + xmlns:fx="http://javafx.com/fxml/1" + fx:controller="at.ac.tuwien.sepm.assignment.groupphase.einsatzverwaltung.userInterface.CreateOperationController"> + <AnchorPane layoutX="964.0" layoutY="-66.0" prefHeight="182.0" prefWidth="1200.0" + style="-fx-background-color: #2D75B6;" AnchorPane.leftAnchor="0.0" AnchorPane.topAnchor="0.0"/> + <AnchorPane fx:id="apCreateOperation" layoutX="40.0" layoutY="71.0" prefHeight="151.0" + prefWidth="920.0" + style="-fx-background-color: white; -fx-effect: dropshadow(three-pass-box, rgba(0,0,0,0.8), 5, 0, 0, 5);"> + <Label layoutX="14.0" layoutY="14.0" prefHeight="30.0" prefWidth="62.0" text="Code"> <font> - <Font size="15.0" /> + <Font size="19.0"/> </font> - </Hyperlink> - <Hyperlink layoutX="802.0" layoutY="38.0" onAction="#onEmployeeLinkClicked" text="Personen" textFill="WHITE"> + </Label> + <Label layoutX="185.0" layoutY="14.0" prefHeight="30.0" prefWidth="94.0" text="Adresse"> <font> - <Font size="15.0" /> + <Font size="19.0"/> </font> - </Hyperlink> - <Hyperlink layoutX="877.0" layoutY="38.0" onAction="#onVehicleLinkClicked" text="Fahrzeuge" textFill="WHITE"> + </Label> + <Label layoutX="587.0" layoutY="14.0" prefHeight="30.0" prefWidth="121.0" text="Anmerkung"> <font> - <Font size="15.0" /> + <Font size="19.0"/> </font> - </Hyperlink> - <AnchorPane fx:id="apActiveOperations" layoutX="968.0" layoutY="71.0" prefHeight="315.0" prefWidth="207.0" style="-fx-background-color: white; -fx-effect: dropshadow(three-pass-box, rgba(0,0,0,0.8), 10, 0, 0, 5);"> - <children> - <ListView fx:id="lvActiveOperations" layoutX="4.0" layoutY="74.0" prefHeight="242.0" prefWidth="200.0" style="-fx-background-color: white;" /> - <Label layoutX="10.0" layoutY="14.0" prefHeight="46.0" prefWidth="103.0" text="Aktive Einsätze"> - <font> - <Font name="System Bold" size="14.0" /> - </font> - </Label> - <Label layoutX="148.0" layoutY="28.0" text="Archiv"> - <font> - <Font size="13.0" /> - </font> - </Label> - </children> - </AnchorPane> - <ListView fx:id="lvVehicles" layoutX="40.0" layoutY="228.0" prefHeight="388.0" prefWidth="920.0" style="-fx-effect: dropshadow(three-pass-box, rgba(0,0,0,0.8), 10, 0, 0, 5);" /> - </children> + </Label> + <TextField fx:id="txtCode" layoutX="14.0" layoutY="48.0" prefHeight="39.0" + prefWidth="163.0"> + <font> + <Font name="System Bold" size="20.0"/> + </font> + </TextField> + <TextField fx:id="txtAddress" layoutX="185.0" layoutY="48.0" prefHeight="39.0" + prefWidth="396.0"> + <font> + <Font name="System Bold" size="20.0"/> + </font> + </TextField> + <TextField fx:id="txtNote" layoutX="587.0" layoutY="48.0" prefHeight="39.0" + prefWidth="319.0"> + <font> + <Font name="System Bold" size="20.0"/> + </font> + </TextField> + <Label layoutX="14.0" layoutY="101.0" prefHeight="30.0" prefWidth="102.0" + text="Fahrzeuge:"> + <font> + <Font size="19.0"/> + </font> + </Label> + <Label fx:id="lblChosenVehicles" layoutX="116.0" layoutY="102.0" prefHeight="30.0" + prefWidth="610.0" text="keine ausgewählt"> + <font> + <Font size="19.0"/> + </font> + </Label> + <Button fx:id="btnCreateOperation" layoutX="747.0" layoutY="95.0" mnemonicParsing="false" + onAction="#createOperationClicked" prefHeight="0.0" prefWidth="158.0" text="Erstellen"> + <font> + <Font name="System Bold" size="21.0"/> + </font> + </Button> + </AnchorPane> + <Hyperlink layoutX="44.0" layoutY="38.0" onAction="#onRegistrationLinkClicked" text="Anmeldungen" + textFill="WHITE"> + <font> + <Font size="15.0"/> + </font> + </Hyperlink> + <Hyperlink layoutX="802.0" layoutY="38.0" onAction="#onEmployeeLinkClicked" text="Personen" + textFill="WHITE"> + <font> + <Font size="15.0"/> + </font> + </Hyperlink> + <Hyperlink layoutX="877.0" layoutY="38.0" onAction="#onVehicleLinkClicked" text="Fahrzeuge" + textFill="WHITE"> + <font> + <Font size="15.0"/> + </font> + </Hyperlink> + <!--<AnchorPane fx:id="apActiveOperations" layoutX="968.0" layoutY="71.0" prefHeight="315.0" prefWidth="207.0" style="-fx-background-color: white; -fx-effect: dropshadow(gaussian, rgba(0.5,0.5,0.5,0.8), 5, 0, 0, 3);">--> + <AnchorPane fx:id="apActiveOperations" layoutX="968.0" layoutY="71.0" prefHeight="315.0" + prefWidth="207.0" + style="-fx-background-color: white; -fx-effect: dropshadow(gaussian, rgba(0.8,0.8,0.8,0.8), 5, 0, 0, 3);"> + <children> + <ListView fx:id="lvActiveOperations" layoutX="4.0" layoutY="74.0" prefHeight="242.0" + prefWidth="200.0" style="-fx-background-color: white;"/> + <Label layoutX="10.0" layoutY="14.0" prefHeight="46.0" prefWidth="103.0" + text="Aktive Einsätze"> + <font> + <Font name="System Bold" size="14.0"/> + </font> + </Label> + <Label layoutX="148.0" layoutY="28.0" text="Archiv"> + <font> + <Font size="13.0"/> + </font> + </Label> + </children> + </AnchorPane> + <FlowPane fx:id="fpVehicles" hgap="12" layoutX="40.0" layoutY="228.0" prefHeight="388.0" + prefWidth="920.0" styleClass=".shadowedWhite" stylesheets="@../styles/main.css" vgap="12"> + <effect> + <DropShadow blurType="GAUSSIAN" color="GRAY" offsetX="0" offsetY="3.0" radius="5"/> + </effect> + </FlowPane> </AnchorPane> diff --git a/src/main/resources/fxml/vehiclePane.fxml b/src/main/resources/fxml/vehiclePane.fxml index 8b1d194..38be664 100644 --- a/src/main/resources/fxml/vehiclePane.fxml +++ b/src/main/resources/fxml/vehiclePane.fxml @@ -10,61 +10,56 @@ <?import javafx.scene.text.Text?> <?import javafx.scene.text.TextFlow?> -<GridPane hgap="6.0" xmlns="http://javafx.com/javafx/9.0.1" xmlns:fx="http://javafx.com/fxml/1" - fx:controller="at.ac.tuwien.sepm.assignment.groupphase.einsatzverwaltung.ui.vehiclepane.VehiclePaneController"> +<GridPane hgap="6.0" style="-fx-background-color: white;" xmlns="http://javafx.com/javafx/9.0.1" xmlns:fx="http://javafx.com/fxml/1" fx:controller="at.ac.tuwien.sepm.assignment.groupphase.einsatzverwaltung.ui.vehiclepane.VehiclePaneController"> <columnConstraints> - <ColumnConstraints/> - <ColumnConstraints/> - <ColumnConstraints/> - <ColumnConstraints/> + <ColumnConstraints /> + <ColumnConstraints /> + <ColumnConstraints /> + <ColumnConstraints /> </columnConstraints> <rowConstraints> - <RowConstraints/> - <RowConstraints/> - <RowConstraints/> - <RowConstraints/> + <RowConstraints /> + <RowConstraints /> + <RowConstraints /> + <RowConstraints /> </rowConstraints> <padding> - <Insets bottom="6.0" left="6.0" right="6.0" top="6.0"/> + <Insets bottom="6.0" left="12.0" right="12.0" top="6.0" /> </padding> <TextFlow GridPane.columnIndex="0" GridPane.columnSpan="2" GridPane.rowIndex="0"> - <Text text="RTW" fx:id="txtType"> + <Text fx:id="txtType" text="RTW"> <font> - <Font name="System Bold" size="18.0"/> + <Font name="System Bold" size="18.0" /> </font> </Text> - <Text text="-10003" fx:id="txtNumber"> + <Text fx:id="txtNumber" text="-10003"> <font> - <Font size="16.0"/> + <Font size="16.0" /> </font> </Text> </TextFlow> - <ImageView fx:id="ivNEF" fitHeight="25.0" fitWidth="25.0" pickOnBounds="true" preserveRatio="true" - GridPane.columnIndex="0" GridPane.rowIndex="1"> - <Image url="@../images/NotNEF.png"/> + <ImageView fx:id="ivNEF" fitHeight="25.0" fitWidth="25.0" pickOnBounds="true" preserveRatio="true" GridPane.columnIndex="0" GridPane.rowIndex="1"> + <Image url="@../images/NotNEF.png" /> </ImageView> <Text fx:id="txtNEF" text="keine NEF-Halterung" GridPane.columnIndex="1" GridPane.rowIndex="1"> <font> - <Font size="14.0"/> + <Font size="14.0" /> </font> </Text> - <ImageView fx:id="ivQualification" fitHeight="25.0" fitWidth="25.0" pickOnBounds="true" - preserveRatio="true" - GridPane.columnIndex="0" GridPane.rowIndex="2"> - <Image url="@../images/Qualification.png"/> + <ImageView fx:id="ivQualification" fitHeight="25.0" fitWidth="25.0" pickOnBounds="true" preserveRatio="true" GridPane.columnIndex="0" GridPane.rowIndex="2"> + <Image url="@../images/Qualification.png" /> </ImageView> <Text fx:id="txtQualification" text="Notarzt" GridPane.columnIndex="1" GridPane.rowIndex="2"> <font> - <Font size="14.0"/> + <Font size="14.0" /> </font> </Text> - <ImageView fitHeight="25.0" fitWidth="25.0" pickOnBounds="true" preserveRatio="true" - GridPane.columnIndex="0" GridPane.rowIndex="3"> - <Image url="@../images/Vehicle.png"/> + <ImageView fitHeight="25.0" fitWidth="25.0" pickOnBounds="true" preserveRatio="true" GridPane.columnIndex="0" GridPane.rowIndex="3"> + <Image url="@../images/Vehicle.png" /> </ImageView> <Text fx:id="txtRooftype" text="Hochdach" GridPane.columnIndex="1" GridPane.rowIndex="3"> <font> - <Font size="14.0"/> + <Font size="14.0" /> </font> </Text> </GridPane> diff --git a/src/main/resources/styles/main.css b/src/main/resources/styles/main.css new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/src/main/resources/styles/main.css |