diff options
Diffstat (limited to 'src/de/fhswf/in/inf/java2/aufgabe02/MainBorderPane.java')
| -rw-r--r-- | src/de/fhswf/in/inf/java2/aufgabe02/MainBorderPane.java | 54 |
1 files changed, 54 insertions, 0 deletions
diff --git a/src/de/fhswf/in/inf/java2/aufgabe02/MainBorderPane.java b/src/de/fhswf/in/inf/java2/aufgabe02/MainBorderPane.java new file mode 100644 index 0000000..c70e1b3 --- /dev/null +++ b/src/de/fhswf/in/inf/java2/aufgabe02/MainBorderPane.java @@ -0,0 +1,54 @@ +/** + * Class MainBorderPain. + */ + +package de.fhswf.in.inf.java2.aufgabe02; + +import java.util.Map; + +import javafx.scene.control.Button; +import javafx.scene.layout.BorderPane; +import javafx.scene.layout.StackPane; +import javafx.scene.layout.VBox; + +/** + * Dynamically creates the buttons and labels. + * + * @author $Author: $ + * @version $Revision: $, $Date: $ UTC + */ +public class MainBorderPane extends BorderPane +{ + + StackPane labelPane = new StackPane(); + + VBox buttonPane = new VBox(); + + /** + * Creates buttons with text from key and the button creates a label with + * name from value. + * + * @param names + * The Map with the key value mappings. + * + */ + public MainBorderPane(Map<String, String> names) + { + if (names == null) + { + throw new IllegalArgumentException("labels can't be null."); + } + + Button tmp; + for (String name : names.keySet()) + { + tmp = new Button(name); + tmp.setOnAction(new CardChangeEvent(labelPane.getChildren(), names + .get(name))); + buttonPane.getChildren().add(tmp); + } + + setLeft(buttonPane); + setCenter(labelPane); + } +} |
