summaryrefslogtreecommitdiffstats
path: root/src/de/fhswf/in/inf/java2/aufgabe02/CardChangeEvent.java
diff options
context:
space:
mode:
authorStefan Suhren <suhren.stefan@fh-swf.de>2015-03-31 11:19:32 +0200
committerStefan Suhren <suhren.stefan@fh-swf.de>2015-03-31 11:19:32 +0200
commite53db140f27e405f4e541ad23b737836db36b2ad (patch)
tree8646193cd16ff1b4d0c1b95a4b7c8f2f18d21468 /src/de/fhswf/in/inf/java2/aufgabe02/CardChangeEvent.java
parentbafe58a20a02e79b2af61c7b179e7d9ff68b8a4f (diff)
downloadJava2-e53db140f27e405f4e541ad23b737836db36b2ad.tar.gz
Java2-e53db140f27e405f4e541ad23b737836db36b2ad.zip
Exercise No.2.1 with extra MainBorderPain
Diffstat (limited to 'src/de/fhswf/in/inf/java2/aufgabe02/CardChangeEvent.java')
-rw-r--r--src/de/fhswf/in/inf/java2/aufgabe02/CardChangeEvent.java75
1 files changed, 75 insertions, 0 deletions
diff --git a/src/de/fhswf/in/inf/java2/aufgabe02/CardChangeEvent.java b/src/de/fhswf/in/inf/java2/aufgabe02/CardChangeEvent.java
new file mode 100644
index 0000000..2050536
--- /dev/null
+++ b/src/de/fhswf/in/inf/java2/aufgabe02/CardChangeEvent.java
@@ -0,0 +1,75 @@
+/**
+ * Class CardChangeEvent.
+ */
+
+package de.fhswf.in.inf.java2.aufgabe02;
+
+import javafx.collections.ObservableList;
+import javafx.event.ActionEvent;
+import javafx.event.EventHandler;
+import javafx.scene.Node;
+import javafx.scene.control.Label;
+
+/**
+ * Generic handler for loading Labels on button click.
+ *
+ * @author $Author: $
+ * @version $Revision: $, $Date: $ UTC
+ */
+public class CardChangeEvent implements EventHandler<ActionEvent>
+{
+
+ private ObservableList<Node> children;
+
+ private String labelName;
+
+ private Label label = null;
+
+ /**
+ * Adds an eventHandler for the button so that a label is loaded into the
+ * stack pane.
+ *
+ */
+ public CardChangeEvent(ObservableList<Node> children, String labelName)
+ {
+ if (children == null)
+ {
+ throw new IllegalArgumentException("children can't be null.");
+ }
+
+ if (labelName == null)
+ {
+ throw new IllegalArgumentException("labelName can't be null.");
+ }
+
+ if (labelName.isEmpty())
+ {
+ throw new IllegalArgumentException("labelName can't be empty.");
+ }
+
+ this.children = children;
+ this.labelName = labelName;
+ }
+
+ /*
+ * (non-Javadoc)
+ *
+ * @see javafx.event.EventHandler#handle(javafx.event.Event)
+ */
+ @Override
+ public void handle(ActionEvent event)
+ {
+ for (Node node : children)
+ {
+ node.setVisible(false);
+ }
+
+ if (label == null)
+ {
+ label = new Label(labelName);
+ children.add(label);
+ }
+
+ label.setVisible(true);
+ }
+}