private void styleStringChanged( ObservableValue<? extends StyledString> observable, StyledString oldValue, StyledString newValue) { if (oldValue != null) { oldValue.getSegmentList().removeListener(this::segmentsChanged); } if (newValue != null) { newValue.getSegmentList().addListener(this::segmentsChanged); } }
private void styleStringChanged( ObservableValue<? extends StyledString> observable, StyledString oldValue, StyledString newValue) { if (oldValue != null) { oldValue.getSegmentList().removeListener(this::segmentsChanged); } if (newValue != null) { newValue.getSegmentList().addListener(this::segmentsChanged); } }
/** * Create a scenegraph node from the styled string * * @param s * the string * @return a scenegraph node */ public static Node toNode(StyledString s) { List<Text> segList = new ArrayList<>(); for (StyledStringSegment seg : s.getSegmentList()) { Text t = new Text(seg.getText()); t.getStyleClass().addAll(seg.getStyleClass()); segList.add(t); } return new TextFlow(segList.toArray(new Node[0])); }
/** * Create a scenegraph node from the styled string * * @param s * the string * @return a scenegraph node */ public static Node toNode(StyledString s) { List<Text> segList = new ArrayList<>(); for (StyledStringSegment seg : s.getSegmentList()) { Text t = new Text(seg.getText()); t.getStyleClass().addAll(seg.getStyleClass()); segList.add(t); } TextFlow textFlow = new TextFlow(segList.toArray(new Node[0])); textFlow.getStyleClass().add("styled-string"); //$NON-NLS-1$ return textFlow; }
@Override public void dispose() { getSkinnable().getStyleString().getSegmentList() .removeListener(this::segmentsChanged); getSkinnable().styledStringProperty().removeListener( this::styleStringChanged); Bindings.unbindContent(this.l.getStyleClass(), getSkinnable().getStyleClass()); super.dispose(); }
@Override public void dispose() { getSkinnable().getStyleString().getSegmentList() .removeListener(this::segmentsChanged); getSkinnable().styledStringProperty().removeListener( this::styleStringChanged); Bindings.unbindContent(this.l.getStyleClass(), getSkinnable().getStyleClass()); super.dispose(); }