// Path: src/main/java/eu.hansolo.enzo/common/ValueEvent.java
// public class ValueEvent extends Event {
//     public static final EventType<ValueEvent> VALUE_EXCEEDED = new EventType(ANY, "VALUE_EXCEEDED");
//     public static final EventType<ValueEvent> VALUE_UNDERRUN = new EventType(ANY, "VALUE_UNDERRUN");
// 
// 
//     // ******************** Constructors **************************************
//     public ValueEvent(final Object SOURCE, final EventTarget TARGET, EventType<ValueEvent> TYPE) {
//         super(SOURCE, TARGET, TYPE);
//     }
// }


import eu.hansolo.enzo.common.ValueEvent;
import javafx.animation.AnimationTimer;
import javafx.application.Application;
import javafx.collections.ObservableList;
import javafx.event.EventHandler;
import javafx.geometry.Insets;
import javafx.scene.Node;
import javafx.scene.Parent;
import javafx.scene.Scene;
import javafx.scene.layout.StackPane;
import javafx.scene.paint.Color;
import javafx.stage.Stage;
import java.util.Random;
                            .prefWidth(1280)
                            .prefHeight(400)
                            //.styleClass(Lcd.STYLE_CLASS_GREEN_DARKGREEN)
                            .foregroundShadowVisible(true)
                            .crystalOverlayVisible(true)
                            .title("Room Temp")
                            .batteryVisible(true)
                            .signalVisible(true)
                            .alarmVisible(true)
                            .unit("°C")
                            .unitVisible(true)
                            .decimals(3)
                            .animationDurationInMs(1500)
                            .minMeasuredValueDecimals(2)
                            .minMeasuredValueVisible(true)
                            .maxMeasuredValueDecimals(2)
                            .maxMeasuredValueVisible(true)
                            .formerValueVisible(true)
                            .threshold(26)
                            .thresholdVisible(true)
                            .trendVisible(true)
                            .numberSystemVisible(false)
                            .lowerRightTextVisible(true)
                            .lowerRightText("Info")
                            //.valueFont(Lcd.LcdFont.ELEKTRA)
                            .valueFont(Lcd.LcdFont.LCD)
                            .animated(true)
                            .build();

        control.addEventHandler(ValueEvent.VALUE_EXCEEDED, new EventHandler<ValueEvent>() {
// Path: src/main/java/eu.hansolo.enzo/common/ValueEvent.java
// public class ValueEvent extends Event {
//     public static final EventType<ValueEvent> VALUE_EXCEEDED = new EventType(ANY, "VALUE_EXCEEDED");
//     public static final EventType<ValueEvent> VALUE_UNDERRUN = new EventType(ANY, "VALUE_UNDERRUN");
// 
// 
//     // ******************** Constructors **************************************
//     public ValueEvent(final Object SOURCE, final EventTarget TARGET, EventType<ValueEvent> TYPE) {
//         super(SOURCE, TARGET, TYPE);
//     }
// }


// Path: src/main/java/eu.hansolo.enzo/lcd/DemoLcd.java
import eu.hansolo.enzo.common.ValueEvent;
import javafx.animation.AnimationTimer;
import javafx.application.Application;
import javafx.collections.ObservableList;
import javafx.event.EventHandler;
import javafx.geometry.Insets;
import javafx.scene.Node;
import javafx.scene.Parent;
import javafx.scene.Scene;
import javafx.scene.layout.StackPane;
import javafx.scene.paint.Color;
import javafx.stage.Stage;
import java.util.Random;

                            .prefWidth(1280)
                            .prefHeight(400)
                            //.styleClass(Lcd.STYLE_CLASS_GREEN_DARKGREEN)
                            .foregroundShadowVisible(true)
                            .crystalOverlayVisible(true)
                            .title("Room Temp")
                            .batteryVisible(true)
                            .signalVisible(true)
                            .alarmVisible(true)
                            .unit("°C")
                            .unitVisible(true)
                            .decimals(3)
                            .animationDurationInMs(1500)
                            .minMeasuredValueDecimals(2)
                            .minMeasuredValueVisible(true)
                            .maxMeasuredValueDecimals(2)
                            .maxMeasuredValueVisible(true)
                            .formerValueVisible(true)
                            .threshold(26)
                            .thresholdVisible(true)
                            .trendVisible(true)
                            .numberSystemVisible(false)
                            .lowerRightTextVisible(true)
                            .lowerRightText("Info")
                            //.valueFont(Lcd.LcdFont.ELEKTRA)
                            .valueFont(Lcd.LcdFont.LCD)
                            .animated(true)
                            .build();

        control.addEventHandler(ValueEvent.VALUE_EXCEEDED, new EventHandler<ValueEvent>() {
            @Override public void handle(ValueEvent valueEvent) {