radio = new Circle(radioRadius); radio.getStyleClass().setAll("radio"); radio.setStrokeWidth(2); radio.setFill(Color.TRANSPARENT); radio.setSmooth(true); dot = new Circle(radioRadius); dot.getStyleClass().setAll("dot"); dot.fillProperty().bind(control.selectedColorProperty()); dot.setScaleX(0); dot.setScaleY(0); dot.setSmooth(true); new JFXKeyFrame(Duration.millis(200), JFXKeyValue.builder() .setTarget(dot.scaleXProperty()) .setEndValueSupplier(() -> getSkinnable().isSelected() ? 0.55 : 0) .setInterpolator(Interpolator.EASE_BOTH) .build(), JFXKeyValue.builder() .setTarget(dot.scaleYProperty()) .setEndValueSupplier(() -> getSkinnable().isSelected() ? 0.55 : 0) .setInterpolator(Interpolator.EASE_BOTH) .build(), JFXKeyValue.builder() .setTarget(radio.strokeProperty()) .setEndValueSupplier(() -> getSkinnable().isSelected() ? ((JFXRadioButton) getSkinnable()).getSelectedColor() : ((JFXRadioButton) getSkinnable()).getUnSelectedColor()) .setInterpolator(Interpolator.EASE_BOTH)
line.setSmooth(true); circle = new Circle(); circle.setFill(getSkinnable().isSelected() ? toggleButton.getToggleColor() : toggleButton.getUnToggleColor()); circle.setCenterX(-circleRadius); circle.setCenterY(0); circle.setRadius(circleRadius); circle.setSmooth(true); JFXDepthManager.setDepth(circle, 1); .setTarget(circle.fillProperty()) .setEndValueSupplier(() -> getSkinnable().isSelected() ? ((JFXToggleButton) getSkinnable()).getToggleColor()
private void updateColors() { boolean isSelected = getSkinnable().isSelected(); Color unSelectedColor = ((JFXRadioButton) getSkinnable()).getUnSelectedColor(); Color selectedColor = ((JFXRadioButton) getSkinnable()).getSelectedColor(); rippler.setRipplerFill(isSelected ? selectedColor : unSelectedColor); radio.setStroke(isSelected ? selectedColor : unSelectedColor); }
public void moveCircle(Circle circle, Scene scene) { Timer timer = new Timer(); timer.scheduleAtFixedRate(new TimerTask() { @Override public void run() { Platform.runLater(() -> { circle.setCenterX(random((int) scene.getX())); circle.setCenterY(random((int) scene.getY())); }); } }, 1000, 1000); }
private StackPane createMinutesContent(LocalTime time) { Circle selectionCircle = new Circle(contentCircleRadius / 6); selectionCircle.fillProperty().bind(timePicker.defaultColorProperty()); Circle minCircle = new Circle(selectionCircle.getRadius() / 8); minCircle.setFill(Color.rgb(255, 255, 255, 0.87)); minCircle.setTranslateX(selectionCircle.getRadius() - minCircle.getRadius()); minCircle.setVisible(time.getMinute() % 5 != 0); selectedMinLabel.textProperty().addListener((o, oldVal, newVal) -> { if (Integer.parseInt(newVal) % 5 == 0) { minCircle.setVisible(false); } else { minCircle.setVisible(true); pointerGroup.getChildren().add(minsPointer); pointerGroup.setTranslateX((-contentCircleRadius + shift) / 2); minsPointerRotate = new Rotate(0, contentCircleRadius - shift, selectionCircle.getRadius()); pointerGroup.getTransforms().add(minsPointerRotate); double radius = contentCircleRadius - shift - selectionCircle.getRadius(); for (int i = 0; i < 12; i++) { StackPane labelContainer = new StackPane(); double labelSize = (selectionCircle.getRadius() / Math.sqrt(2)) * 2; labelContainer.setMinSize(labelSize, labelSize);
private void updateColor() { final ColorPicker colorPicker = (ColorPicker) getSkinnable(); Color color = colorPicker.getValue(); // update picker box color Color circleColor = color == null ? Color.WHITE : color; Circle colorCircle = new Circle(); colorCircle.setFill(circleColor); colorCircle.setLayoutX(colorBox.getWidth() / 4); colorCircle.setLayoutY(colorBox.getHeight() / 2); colorBox.getChildren().add(colorCircle); Timeline animateColor = new Timeline(new KeyFrame(Duration.millis(240), new KeyValue(colorCircle.radiusProperty(), 200, Interpolator.EASE_BOTH))); animateColor.setOnFinished((finish) -> { JFXNodeUtils.updateBackground(colorBox.getBackground(), colorBox, colorCircle.getFill()); colorBox.getChildren().remove(colorCircle); }); animateColor.play(); // update label color displayNode.setTextFill(circleColor.grayscale().getRed() < 0.5 ? Color.valueOf( "rgba(255, 255, 255, 0.87)") : Color.valueOf("rgba(0, 0, 0, 0.87)")); if (colorLabelVisible.get()) { displayNode.setText(JFXNodeUtils.colorToHex(circleColor)); } else { displayNode.setText(""); } }
@Override protected Node getMask() { double radius = ripplerPane.getWidth() / 2; return new Circle(radius, radius, radius); }
Circle circle = new Circle(); circle.getStyleClass().add("circle"); circle.setRadius(CIRCLE_RADIUS); circle.setCenterX(CIRCLE_RADIUS); circle.setCenterY(CIRCLE_RADIUS); line.setStartX(CIRCLE_RADIUS); line.setStartY(CIRCLE_RADIUS); line.setEndX(CIRCLE_RADIUS); line.setEndY(LINE_LENGTH); circle.setCenterX(CIRCLE_RADIUS); circle.setCenterY(CIRCLE_RADIUS + LINE_LENGTH); break; line.setEndX(LINE_LENGTH); line.setEndY(CIRCLE_RADIUS); circle.setCenterX(CIRCLE_RADIUS + LINE_LENGTH); circle.setCenterY(CIRCLE_RADIUS); break; circle.setCenterX(CIRCLE_RADIUS); circle.setCenterY(CIRCLE_RADIUS); line.setStartX(CIRCLE_RADIUS); line.setStartY(CIRCLE_RADIUS);
final Circle connectedShape = new Circle(); connectedShape.setStrokeWidth(15); connectedShape.setFill(Color.TRANSPARENT); connectedShape.layoutXProperty().bind(receiverUI.layoutXProperty()); connectedShape.layoutYProperty().bind(receiverUI.layoutYProperty()); } else { connectedShape.layoutXProperty().bind(receiverUI.layoutXProperty().add(receiverUI.getBoundsInLocal().getWidth() * 0.5)); connectedShape.layoutYProperty().bind(receiverUI.layoutYProperty().add(receiverUI.getBoundsInLocal().getHeight() * 0.5)); final KeyValue kv0 = new KeyValue(connectedShape.radiusProperty(), 0); final KeyFrame kf0 = new KeyFrame(Duration.ZERO, kv0); timeline.getKeyFrames().add(kf0); final KeyValue kv1 = new KeyValue(connectedShape.radiusProperty(), 60); final KeyFrame kf1 = new KeyFrame(Duration.millis(500), kv1); timeline.getKeyFrames().add(kf1); final KeyValue kv2 = new KeyValue(connectedShape.strokeProperty(), new Color(1, 0, 0, 1.0)); final KeyFrame kf2 = new KeyFrame(Duration.millis(0), kv2); timeline.getKeyFrames().add(kf2); final KeyValue kv3 = new KeyValue(connectedShape.strokeProperty(), new Color(1, 0, 0, 0.0)); final KeyFrame kf3 = new KeyFrame(Duration.millis(400), kv3); timeline.getKeyFrames().add(kf3);
public TransformerSymbol(Color stroke, double strokeWidth, double size) { setPrefSize(size, size); c1 = new Circle(); c1.setFill(Color.TRANSPARENT); c1.setStroke(stroke); c1.setStrokeWidth(strokeWidth); c2 = new Circle(); c2.setFill(Color.TRANSPARENT); c2.setStroke(stroke); c2.setStrokeWidth(strokeWidth); getChildren().addAll(c1, c2); }
protected BorderPane createContentPane(LocalTime time, boolean _24HourView) { Circle circle = new Circle(contentCircleRadius), selectionCircle = new Circle(contentCircleRadius / 6); circle.setFill(Color.rgb(224, 224, 224, 0.67)); timeValue; if (_24HourView) { if (Point2D.distance(0, 0, dx, dy) >= (contentCircleRadius - shift - (2 * selectionCircle.getRadius()))) { hoursContent.getChildren().get(1).setVisible(false); hoursContent.getChildren().get(0).setVisible(true); }; circle.setOnMousePressed(mouseActionHandler); circle.setOnMouseDragged(mouseActionHandler);
/** * draw a circle with given text on the given pane * * @param pane * @param text * @param radius * @param color * @param x * @param y */ public static Circle drawCircleWithText(Pane pane, String text, double radius, Color color, double x, double y) { Circle circle = new Circle(); circle.setRadius(radius); circle.setFill(color); circle.setTranslateX(x); circle.setTranslateY(y); Label label = new Label(text); label.setTranslateX(x + radius); label.setTranslateY(y + radius); label.setTextFill(color); pane.getChildren().addAll(circle, label); return circle; }
setMouseTransparent(true); getStyleClass().add("position-marker"); //$NON-NLS-1$ Circle outer = new Circle(8); outer.setFill(Color.WHITE); Circle c = new Circle(6); c.fillProperty().bind(fillProperty()); getChildren().add(c); Circle inner = new Circle(3); inner.setFill(Color.WHITE); getChildren().add(inner);
/** * Builds a clip-ready {@link Circle} with a specific radius and specific center position. * * @param radius The radius of this circle. * @param centerX The horizontal position for this circle's center * @param centerY The vertical position for this circle's center * * @return A circle with the given radius and center position */ private static Circle getCircleClip(final double radius, final double centerX, final double centerY) { final Circle clip = new Circle(radius); clip.setCenterX(centerX); clip.setCenterY(centerY); return clip; }
private StackPane createHoursContent(LocalTime time, boolean _24HourView) { Circle selectionCircle = new Circle(contentCircleRadius / 6), _24HourSelectionCircle = new Circle(contentCircleRadius / 6); selectionCircle.fillProperty().bind(timePicker.defaultColorProperty()); _24HourSelectionCircle.fillProperty().bind(timePicker.defaultColorProperty()); pointerGroup.getChildren().add(hoursPointer); pointerGroup.setTranslateX((-contentCircleRadius + shift) / 2); hoursPointerRotate = new Rotate(0, contentCircleRadius - shift, selectionCircle.getRadius()); pointerRotate.set(hoursPointerRotate); pointerGroup.getTransforms().add(hoursPointerRotate); pointer24HourGroup.getChildren().add(_24HoursPointer); pointer24HourGroup.setTranslateX(((-contentCircleRadius + shift) / 2) + (_24HourShift / 2)); _24HourHoursPointerRotate = new Rotate(0, contentCircleRadius - shift - _24HourShift, selectionCircle.getRadius()); _24HourPointerRotate.set(_24HourHoursPointerRotate); pointer24HourGroup.getTransforms().add(_24HourHoursPointerRotate); double radius = contentCircleRadius - shift - selectionCircle.getRadius(); for (int i = 0; i < 12; i++) { double labelSize = (selectionCircle.getRadius() / Math.sqrt(2)) * 2; labelContainer.setMinSize(labelSize, labelSize); double labelSize = (selectionCircle.getRadius() / Math.sqrt(2)) * 2; labelContainer.setMinSize(labelSize, labelSize);
/** * Constructs a new map view with an initially empty list of countries which will * result in the entire world to be shown. */ public WorldMapView() { getStyleClass().add(DEFAULT_STYLE_CLASS); setCountryViewFactory(country -> { CountryView view = new CountryView(country); view.setOnMouseEntered(evt -> tooltip.setText(country.getLocale().getDisplayCountry())); Tooltip.install(view, tooltip); return view; }); setLocationViewFactory(location -> { Circle circle = new Circle(); circle.setRadius(4); circle.setTranslateX(-4); circle.setTranslateY(-4); circle.setOnMouseEntered(evt -> tooltip.setText(location.getName())); Tooltip.install(circle, tooltip); return circle; }); }
@Override protected void layoutChildren() { double size = Math.min(getWidth(), getHeight()); double shift = size / 3.3; c1.setCenterX(size / 2); c1.setCenterY(shift); c1.setRadius(shift); c2.setCenterX(size / 2); c2.setCenterY(size - shift); c2.setRadius(shift); } }
protected void initSenderAndReceiver() { receiverConnectorUI = new Circle(15); final VNode sender = getSender().getNode(); final FXFlowNodeSkin senderSkin = (FXFlowNodeSkin) getController(). getNodeSkinLookup().getById(skinFactory, sender.getId()); senderShape = senderSkin.getConnectorShape(getSender()); final Node senderNode = senderShape.getNode(); senderConnectorUI = senderShape; receiverConnectorUI.setLayoutX(senderNode.getLayoutX() +receiverConnectorUI.getRadius()); receiverConnectorUI.setLayoutY(senderNode.getLayoutY() +receiverConnectorUI.getRadius()); }
if( event.getEventType() == MouseEvent.MOUSE_ENTERED ) { if( isfirst ) c1.setOpacity( 1 ); else c2.setOpacity( 1 ); } else if( event.getEventType() == MouseEvent.MOUSE_EXITED ) { if( isfirst ) c1.setOpacity( 0 ); else c2.setOpacity( 0 ); } else if( event.getEventType() == MouseEvent.MOUSE_DRAGGED ) { double x = event.getSceneX(); line.setStartX( x ); line.setStartY( y ); c1.setCenterX( x ); c1.setCenterY( y ); } else { line.setEndX( x ); line.setEndY( y ); c2.setCenterX( x ); c2.setCenterY( y ); c1.setOpacity( 0 ); MouseHandler mh1 = new MouseHandler( true ); c1.setOnMouseEntered( mh1 ); c1.setOnMouseExited( mh1 ); c1.setOnMouseDragged( mh1 ); c2 = new Circle( x2, y2, radius, Color.RED ); c2.setOpacity( 0 ); MouseHandler mh2 = new MouseHandler( false );
@Override protected void handleControlPropertyChanged(String p) { if ("TOGGLE_COLOR".equals(p)) { if (getSkinnable().isSelected()) { circle.setFill(((JFXToggleButton) getSkinnable()).getToggleColor()); } } else if ("UNTOGGLE_COLOR".equals(p)) { if (!getSkinnable().isSelected()) { circle.setFill(((JFXToggleButton) getSkinnable()).getUnToggleColor()); } } else if ("TOGGLE_LINE_COLOR".equals(p)) { if (getSkinnable().isSelected()) { line.setStroke(((JFXToggleButton) getSkinnable()).getToggleLineColor()); } } else if ("UNTOGGLE_LINE_COLOR".equals(p)) { if (!getSkinnable().isSelected()) { line.setStroke(((JFXToggleButton) getSkinnable()).getUnToggleLineColor()); } } else { super.handleControlPropertyChanged(p); } }