Search in sources :

Example 71 with Region

use of javafx.scene.layout.Region in project Board-Instrumentation-Framework by intel.

the class RadialMenuButton method initGraphics.

private void initGraphics() {
    setPickOnBounds(false);
    symbol = new Region();
    symbol.getStyleClass().add("symbol");
    symbol.setMouseTransparent(true);
    symbolRotate = new RotateTransition(Duration.millis(200), symbol);
    symbolRotate.setInterpolator(Interpolator.EASE_BOTH);
    // Add all nodes
    getChildren().addAll(symbol);
}
Also used : RotateTransition(javafx.animation.RotateTransition) Region(javafx.scene.layout.Region)

Example 72 with Region

use of javafx.scene.layout.Region in project Board-Instrumentation-Framework by intel.

the class SimpleIndicatorSkin method initGraphics.

private void initGraphics() {
    outerFrame = new Region();
    outerFrame.getStyleClass().setAll("outer-frame");
    innerFrame = new Region();
    innerFrame.getStyleClass().setAll("inner-frame");
    mainBack = new Region();
    mainBack.getStyleClass().setAll("main-back");
    main = new Region();
    main.getStyleClass().setAll("main");
    highlight = new Region();
    highlight.getStyleClass().setAll("highlight");
    pane = new Pane();
    pane.getChildren().setAll(outerFrame, innerFrame, mainBack, main, highlight);
    getChildren().setAll(pane);
}
Also used : Region(javafx.scene.layout.Region) Pane(javafx.scene.layout.Pane)

Example 73 with Region

use of javafx.scene.layout.Region in project Board-Instrumentation-Framework by intel.

the class DoubleRadialGaugeSkin method initGraphics.

private void initGraphics() {
    background = new Region();
    background.getStyleClass().setAll("background");
    ticksAndSectionsCanvas = new Canvas(PREFERRED_WIDTH, PREFERRED_HEIGHT);
    ticksAndSections = ticksAndSectionsCanvas.getGraphicsContext2D();
    innerShadow = new InnerShadow(BlurType.TWO_PASS_BOX, Color.rgb(0, 0, 0, 0.65), 8, 0d, 0d, 0d);
    glow = new DropShadow(BlurType.TWO_PASS_BOX, getSkinnable().getLedColorOne(), 20, 0d, 0d, 0d);
    glow.setInput(innerShadow);
    ledFrameOne = new Region();
    ledFrameOne.getStyleClass().setAll("led-frame");
    ledMainOne = new Region();
    ledMainOne.getStyleClass().setAll("led-main-one");
    ledMainOne.setStyle("-led-color-one: " + (colorToCss(getSkinnable().getLedColorOne())) + ";");
    ledHlOne = new Region();
    ledHlOne.getStyleClass().setAll("led-hl");
    ledFrameTwo = new Region();
    ledFrameTwo.getStyleClass().setAll("led-frame");
    ledMainTwo = new Region();
    ledMainTwo.getStyleClass().setAll("led-main-two");
    ledMainTwo.setStyle("-led-color-two: " + (colorToCss(getSkinnable().getLedColorTwo())) + ";");
    ledHlTwo = new Region();
    ledHlTwo.getStyleClass().setAll("led-hl");
    angleStepOne = getSkinnable().getAngleRangeOne() / (getSkinnable().getMaxValueOne() - getSkinnable().getMinValueOne());
    double targetAngleOne = 180 - getSkinnable().getStartAngleOne() + (getSkinnable().getValueOne() - getSkinnable().getMinValueOne()) * angleStepOne;
    targetAngleOne = clamp(180 - getSkinnable().getStartAngleOne(), 180 - getSkinnable().getStartAngleOne() + getSkinnable().getAngleRangeOne(), targetAngleOne);
    needleOneRotate = new Rotate(targetAngleOne);
    needleOne = new Region();
    needleOne.getStyleClass().setAll(DoubleRadialGauge.STYLE_CLASS_NEEDLE_ONE_STANDARD);
    needleOne.getTransforms().setAll(needleOneRotate);
    needleOneHighlight = new Region();
    needleOneHighlight.setMouseTransparent(true);
    needleOneHighlight.getStyleClass().setAll("needle-highlight");
    needleOneHighlight.getTransforms().setAll(needleOneRotate);
    angleStepTwo = -getSkinnable().getAngleRangeTwo() / (getSkinnable().getMaxValueTwo() - getSkinnable().getMinValueTwo());
    double targetAngleTwo = 180 - getSkinnable().getStartAngleTwo() + (getSkinnable().getValueTwo() - getSkinnable().getMinValueTwo()) * angleStepTwo;
    targetAngleTwo = clamp(180 - getSkinnable().getStartAngleTwo() - getSkinnable().getAngleRangeTwo(), 180 - getSkinnable().getStartAngleTwo(), targetAngleTwo);
    needleTwoRotate = new Rotate(targetAngleTwo);
    needleTwo = new Region();
    needleTwo.getStyleClass().setAll(DoubleRadialGauge.STYLE_CLASS_NEEDLE_TWO_STANDARD);
    needleTwo.getTransforms().setAll(needleTwoRotate);
    needleTwoHighlight = new Region();
    needleTwoHighlight.setMouseTransparent(true);
    needleTwoHighlight.getStyleClass().setAll("needle-highlight");
    needleTwoHighlight.getTransforms().setAll(needleTwoRotate);
    knob = new Region();
    knob.setPickOnBounds(false);
    knob.getStyleClass().setAll("knob");
    dropShadow = new DropShadow();
    dropShadow.setColor(Color.rgb(0, 0, 0, 0.25));
    dropShadow.setBlurType(BlurType.TWO_PASS_BOX);
    dropShadow.setRadius(0.015 * PREFERRED_WIDTH);
    dropShadow.setOffsetY(0.015 * PREFERRED_WIDTH);
    shadowGroup = new Group(needleOne, needleOneHighlight, needleTwo, needleTwoHighlight, knob);
    shadowGroup.setEffect(getSkinnable().isDropShadowEnabled() ? dropShadow : null);
    titleTextOne = new Text(getSkinnable().getTitleOne());
    titleTextOne.setTextOrigin(VPos.CENTER);
    titleTextOne.getStyleClass().setAll("title");
    unitTextOne = new Text(getSkinnable().getUnitOne());
    unitTextOne.setMouseTransparent(true);
    unitTextOne.setTextOrigin(VPos.CENTER);
    unitTextOne.getStyleClass().setAll("unit");
    valueTextOne = new Text(String.format(Locale.US, "%." + getSkinnable().getDecimalsOne() + "f", getSkinnable().getValueOne()));
    valueTextOne.setMouseTransparent(true);
    valueTextOne.setTextOrigin(VPos.CENTER);
    valueTextOne.getStyleClass().setAll("value");
    titleTextTwo = new Text(getSkinnable().getTitleTwo());
    titleTextTwo.setTextOrigin(VPos.CENTER);
    titleTextTwo.getStyleClass().setAll("title");
    unitTextTwo = new Text(getSkinnable().getUnitTwo());
    unitTextTwo.setMouseTransparent(true);
    unitTextTwo.setTextOrigin(VPos.CENTER);
    unitTextTwo.getStyleClass().setAll("unit");
    valueTextTwo = new Text(String.format(Locale.US, "%." + getSkinnable().getDecimalsTwo() + "f", getSkinnable().getValueTwo()));
    valueTextTwo.setMouseTransparent(true);
    valueTextTwo.setTextOrigin(VPos.CENTER);
    valueTextTwo.getStyleClass().setAll("value");
    // Add all nodes
    pane = new Pane();
    pane.getChildren().setAll(background, ticksAndSectionsCanvas, titleTextOne, titleTextTwo, ledFrameOne, ledMainOne, ledHlOne, ledFrameTwo, ledMainTwo, ledHlTwo, unitTextOne, valueTextOne, unitTextTwo, valueTextTwo, shadowGroup);
    getChildren().setAll(pane);
}
Also used : Group(javafx.scene.Group) Rotate(javafx.scene.transform.Rotate) InnerShadow(javafx.scene.effect.InnerShadow) Canvas(javafx.scene.canvas.Canvas) Region(javafx.scene.layout.Region) Text(javafx.scene.text.Text) Pane(javafx.scene.layout.Pane) DropShadow(javafx.scene.effect.DropShadow)

Example 74 with Region

use of javafx.scene.layout.Region in project Board-Instrumentation-Framework by intel.

the class GaugeSkin method initGraphics.

private void initGraphics() {
    valueBlendBottomShadow = new DropShadow();
    valueBlendBottomShadow.setBlurType(BlurType.TWO_PASS_BOX);
    valueBlendBottomShadow.setColor(Color.rgb(255, 255, 255, 0.5));
    valueBlendBottomShadow.setOffsetX(0);
    valueBlendBottomShadow.setOffsetY(0.005 * PREFERRED_WIDTH);
    valueBlendBottomShadow.setRadius(0);
    valueBlendTopShadow = new InnerShadow();
    valueBlendTopShadow.setBlurType(BlurType.TWO_PASS_BOX);
    valueBlendTopShadow.setColor(Color.rgb(0, 0, 0, 0.7));
    valueBlendTopShadow.setOffsetX(0);
    valueBlendTopShadow.setOffsetY(0.005 * PREFERRED_WIDTH);
    valueBlendTopShadow.setRadius(0.005 * PREFERRED_WIDTH);
    valueBlend = new Blend();
    valueBlend.setMode(BlendMode.MULTIPLY);
    valueBlend.setBottomInput(valueBlendBottomShadow);
    valueBlend.setTopInput(valueBlendTopShadow);
    background = new Region();
    background.getStyleClass().setAll("background");
    ticksAndSectionsCanvas = new Canvas(PREFERRED_WIDTH, PREFERRED_HEIGHT);
    ticksAndSections = ticksAndSectionsCanvas.getGraphicsContext2D();
    histogram = new Path();
    histogram.setFillRule(FillRule.NON_ZERO);
    histogram.getStyleClass().add("histogram-fill");
    minMeasuredValue = new Region();
    minMeasuredValue.getStyleClass().setAll("min-measured-value");
    minMeasuredValueRotate = new Rotate(180 - getSkinnable().getStartAngle() + (getSkinnable().getValue() - getSkinnable().getMinValue()) * angleStep);
    minMeasuredValue.getTransforms().setAll(minMeasuredValueRotate);
    minMeasuredValue.setOpacity(getSkinnable().isMinMeasuredValueVisible() ? 1 : 0);
    minMeasuredValue.setManaged(getSkinnable().isMinMeasuredValueVisible());
    maxMeasuredValue = new Region();
    maxMeasuredValue.getStyleClass().setAll("max-measured-value");
    maxMeasuredValueRotate = new Rotate(180 - getSkinnable().getStartAngle() + (getSkinnable().getValue() - getSkinnable().getMinValue()) * angleStep);
    maxMeasuredValue.getTransforms().setAll(maxMeasuredValueRotate);
    maxMeasuredValue.setOpacity(getSkinnable().isMaxMeasuredValueVisible() ? 1 : 0);
    maxMeasuredValue.setManaged(getSkinnable().isMaxMeasuredValueVisible());
    threshold = new Region();
    threshold.getStyleClass().setAll("threshold");
    thresholdRotate = new Rotate(180 - getSkinnable().getStartAngle() - getSkinnable().getMinValue() * angleStep);
    threshold.getTransforms().setAll(thresholdRotate);
    threshold.setOpacity(getSkinnable().isThresholdVisible() ? 1 : 0);
    threshold.setManaged(getSkinnable().isThresholdVisible());
    thresholdExceeded = false;
    // Set initial value
    angleStep = getSkinnable().getAngleRange() / (getSkinnable().getMaxValue() - getSkinnable().getMinValue());
    double targetAngle = 180 - getSkinnable().getStartAngle() + (getSkinnable().getValue() - getSkinnable().getMinValue()) * angleStep;
    targetAngle = clamp(180 - getSkinnable().getStartAngle(), 180 - getSkinnable().getStartAngle() + getSkinnable().getAngleRange(), targetAngle);
    needle = new Region();
    needle.getStyleClass().setAll(Gauge.STYLE_CLASS_NEEDLE_STANDARD);
    needleRotate = new Rotate(180 - getSkinnable().getStartAngle());
    needleRotate.setAngle(targetAngle);
    needle.getTransforms().setAll(needleRotate);
    needleHighlight = new Region();
    needleHighlight.setMouseTransparent(true);
    needleHighlight.getStyleClass().setAll("needle-highlight");
    needleHighlight.getTransforms().setAll(needleRotate);
    knob = new Region();
    knob.setPickOnBounds(false);
    knob.getStyleClass().setAll("knob");
    dropShadow = new DropShadow();
    dropShadow.setColor(Color.rgb(0, 0, 0, 0.25));
    dropShadow.setBlurType(BlurType.TWO_PASS_BOX);
    dropShadow.setRadius(0.015 * PREFERRED_WIDTH);
    dropShadow.setOffsetY(0.015 * PREFERRED_WIDTH);
    // , knob);
    shadowGroup = new Group(needle, needleHighlight);
    shadowGroup.setEffect(getSkinnable().isDropShadowEnabled() ? dropShadow : null);
    titleText = new Text(getSkinnable().getTitle());
    titleText.setTextOrigin(VPos.CENTER);
    titleText.getStyleClass().setAll("title");
    unitText = new Text(getSkinnable().getUnit());
    unitText.setMouseTransparent(true);
    unitText.setTextOrigin(VPos.CENTER);
    unitText.getStyleClass().setAll("unit");
    valueText = new Text(String.format(Locale.US, "%." + getSkinnable().getDecimals() + "f", getSkinnable().getValue()));
    valueText.setMouseTransparent(true);
    valueText.setTextOrigin(VPos.CENTER);
    valueText.getStyleClass().setAll("value");
    valueText.setEffect(getSkinnable().isPlainValue() ? null : valueBlend);
    // Add all nodes
    pane = new Pane();
    pane.getChildren().setAll(background, histogram, ticksAndSectionsCanvas, minMeasuredValue, maxMeasuredValue, threshold, titleText, shadowGroup, knob, unitText, valueText);
    pane.getChildren().addAll(getSkinnable().getMarkers().keySet());
    getChildren().setAll(pane);
}
Also used : Path(javafx.scene.shape.Path) Group(javafx.scene.Group) Rotate(javafx.scene.transform.Rotate) InnerShadow(javafx.scene.effect.InnerShadow) Blend(javafx.scene.effect.Blend) Canvas(javafx.scene.canvas.Canvas) Region(javafx.scene.layout.Region) Text(javafx.scene.text.Text) Pane(javafx.scene.layout.Pane) DropShadow(javafx.scene.effect.DropShadow)

Example 75 with Region

use of javafx.scene.layout.Region in project Board-Instrumentation-Framework by intel.

the class LinearSkin method initGraphics.

private void initGraphics() {
    background = new Region();
    background.getStyleClass().setAll("background");
    barBackground = new Region();
    barBackground.getStyleClass().setAll("bar-background");
    barBackgroundBorderStart1 = new MoveTo();
    barBackgroundBorderStop1 = new LineTo();
    barBackgroundBorderStart2 = new MoveTo();
    barBackgroundBorderStop2 = new LineTo();
    barBackgroundBorder = new Path(barBackgroundBorderStart1, barBackgroundBorderStop1, barBackgroundBorderStart2, barBackgroundBorderStop2);
    barBackgroundBorder.getStyleClass().setAll("bar-background-border");
    ticksAndSectionsCanvas = new Canvas(PREFERRED_WIDTH, PREFERRED_HEIGHT);
    ticksAndSections = ticksAndSectionsCanvas.getGraphicsContext2D();
    innerShadow = new InnerShadow(BlurType.TWO_PASS_BOX, Color.rgb(0, 0, 0, 0.65), 8, 0d, 0d, 0d);
    glow = new DropShadow(BlurType.TWO_PASS_BOX, getSkinnable().getLedColor(), 20, 0d, 0d, 0d);
    glow.setInput(innerShadow);
    ledFrame = new Region();
    ledFrame.getStyleClass().setAll("led-frame");
    ledMain = new Region();
    ledMain.getStyleClass().setAll("led-main");
    ledMain.setStyle("-led-color: " + (colorToCss(getSkinnable().getLedColor())) + ";");
    ledHl = new Region();
    ledHl.getStyleClass().setAll("led-hl");
    bar = new Region();
    bar.getStyleClass().setAll("bar");
    foreground = new Region();
    foreground.getStyleClass().setAll("foreground");
    titleText = new Text(getSkinnable().getTitle());
    titleText.getStyleClass().setAll("title");
    unitText = new Text(getSkinnable().getUnit());
    unitText.getStyleClass().setAll("unit");
    lcdText = new Label(getSkinnable().getNumberFormat().format(getSkinnable().getValue()));
    lcdText.getStyleClass().setAll("lcd-text");
    pane = new Pane();
    pane.getChildren().setAll(background, barBackground, barBackgroundBorder, ticksAndSectionsCanvas, titleText, unitText, lcdText, ledFrame, ledMain, ledHl, bar, foreground);
    getChildren().setAll(pane);
    resize();
}
Also used : Path(javafx.scene.shape.Path) MoveTo(javafx.scene.shape.MoveTo) LineTo(javafx.scene.shape.LineTo) InnerShadow(javafx.scene.effect.InnerShadow) Canvas(javafx.scene.canvas.Canvas) Label(javafx.scene.control.Label) Region(javafx.scene.layout.Region) Text(javafx.scene.text.Text) Pane(javafx.scene.layout.Pane) DropShadow(javafx.scene.effect.DropShadow)

Aggregations

Region (javafx.scene.layout.Region)106 Text (javafx.scene.text.Text)25 VBox (javafx.scene.layout.VBox)22 Label (javafx.scene.control.Label)21 Pane (javafx.scene.layout.Pane)21 Button (javafx.scene.control.Button)18 InnerShadow (javafx.scene.effect.InnerShadow)17 Scene (javafx.scene.Scene)16 Node (javafx.scene.Node)15 Insets (javafx.geometry.Insets)14 HBox (javafx.scene.layout.HBox)14 DropShadow (javafx.scene.effect.DropShadow)13 ArrayList (java.util.ArrayList)12 StackPane (javafx.scene.layout.StackPane)12 Canvas (javafx.scene.canvas.Canvas)11 Color (javafx.scene.paint.Color)11 GridPane (javafx.scene.layout.GridPane)10 Group (javafx.scene.Group)9 Background (javafx.scene.layout.Background)8 BackgroundFill (javafx.scene.layout.BackgroundFill)8