Package de.gsi.chart.viewer
Class DataViewer
- java.lang.Object
-
- javafx.scene.Node
-
- javafx.scene.Parent
-
- javafx.scene.layout.Region
-
- javafx.scene.layout.Pane
-
- javafx.scene.layout.BorderPane
-
- de.gsi.chart.viewer.DataViewer
-
- All Implemented Interfaces:
javafx.css.Styleable,javafx.event.EventTarget
@DefaultProperty("views") public class DataViewer extends javafx.scene.layout.BorderPaneDataViewer to manage multiple 'DatavView's which contain either custom 'Pane' derived nodes and or managed 'DataViewWindow' that can be detached and re-attached to the DataViewusage example:
final DataView view1 = new DataView("ChartViews", chartIcon); // [..] these nodes are detachable sub-windows (with decorated minimize, maximize, close buttons) view1.getVisibleChildren().addAll(customNode1, customNode2, customNode3); // [..] add undecorated custom Pan final DataView view2 = new DataView("Custom View", customViewIcon, getDemoPane()); final DataViewer viewer = new DataViewer(); viewer.getViews().addAll(view1, view2); // [..] to switch between configurations one may use: // a) Toolbar which contains the 'Text-Icon' Buttons for each view viewer.getToolBar(); // b) directly/programmatically, e.g.: viewer.setSelectedView(view2);- Author:
- Grzegorz Kruk, rstein
-
-
Field Summary
Fields Modifier and Type Field Description protected javafx.beans.value.ChangeListener<? super DataView>activeSubDataViewChangeListenerprotected javafx.beans.value.ChangeListener<? super java.lang.Boolean>closeWindowButtonHandlerprotected javafx.beans.property.BooleanPropertyexplorerVisibleprotected static java.lang.StringFONT_AWESOMEprotected static intFONT_SIZEprotected javafx.collections.ListChangeListener<? super DataView>subDataViewChangeListener
-
Constructor Summary
Constructors Constructor Description DataViewer()DataViewer(DataView... views)
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description javafx.beans.property.BooleanPropertydetachableWindowProperty()javafx.beans.property.BooleanPropertyexplorerVisibleProperty()Determines if the explorer view is visible.DataViewgetSelectedView()javafx.scene.control.ToolBargetToolBar()javafx.collections.ObservableList<javafx.scene.Node>getUserToolBarItems()javafx.collections.ObservableList<DataView>getViews()Returns a modifiable list of views displayed by the viewer.DataViewWindow.WindowDecorationgetWindowDecoration()booleanisDetachableWindow()booleanisExplorerVisible()Returns the value of theexplorerVisibleProperty().javafx.beans.property.ObjectProperty<DataView>selectedViewProperty()voidsetDetachableWindow(boolean state)voidsetExplorerVisible(boolean value)Sets the value of theexplorerVisibleProperty().voidsetSelectedView(DataView selectedView)voidsetSelectedView(java.lang.String viewName)voidsetWindowDecoration(DataViewWindow.WindowDecoration state)javafx.beans.property.BooleanPropertyshowListStyleDataViewProperty()protected voidupdateDetachableWindowProperty(DataView root)voidupdateMenuButton(javafx.scene.control.Menu menuButton, DataView dataView)protected voidupdateToolBar()protected voidupdateWindowDecorations(DataView root)javafx.beans.property.ObjectProperty<DataViewWindow.WindowDecoration>windowDecorationProperty()-
Methods inherited from class javafx.scene.layout.BorderPane
bottomProperty, centerProperty, clearConstraints, computeMinHeight, computeMinWidth, computePrefHeight, computePrefWidth, getAlignment, getBottom, getCenter, getContentBias, getLeft, getMargin, getRight, getTop, layoutChildren, leftProperty, rightProperty, setAlignment, setBottom, setCenter, setLeft, setMargin, setRight, setTop, topProperty
-
Methods inherited from class javafx.scene.layout.Region
backgroundProperty, borderProperty, cacheShapeProperty, centerShapeProperty, computeMaxHeight, computeMaxWidth, getBackground, getBorder, getClassCssMetaData, getCssMetaData, getHeight, getInsets, getMaxHeight, getMaxWidth, getMinHeight, getMinWidth, getOpaqueInsets, getPadding, getPrefHeight, getPrefWidth, getShape, getUserAgentStylesheet, getWidth, heightProperty, insetsProperty, isCacheShape, isCenterShape, isResizable, isScaleShape, isSnapToPixel, layoutInArea, layoutInArea, layoutInArea, layoutInArea, maxHeight, maxHeightProperty, maxWidth, maxWidthProperty, minHeight, minHeightProperty, minWidth, minWidthProperty, opaqueInsetsProperty, paddingProperty, positionInArea, positionInArea, prefHeight, prefHeightProperty, prefWidth, prefWidthProperty, resize, scaleShapeProperty, setBackground, setBorder, setCacheShape, setCenterShape, setHeight, setMaxHeight, setMaxSize, setMaxWidth, setMinHeight, setMinSize, setMinWidth, setOpaqueInsets, setPadding, setPrefHeight, setPrefSize, setPrefWidth, setScaleShape, setShape, setSnapToPixel, setWidth, shapeProperty, snappedBottomInset, snappedLeftInset, snappedRightInset, snappedTopInset, snapPosition, snapPositionX, snapPositionY, snapSize, snapSizeX, snapSizeY, snapSpace, snapSpaceX, snapSpaceY, snapToPixelProperty, widthProperty
-
Methods inherited from class javafx.scene.Parent
getBaselineOffset, getChildrenUnmodifiable, getManagedChildren, getStylesheets, isNeedsLayout, layout, lookup, needsLayoutProperty, queryAccessibleAttribute, requestLayout, requestParentLayout, setNeedsLayout, updateBounds
-
Methods inherited from class javafx.scene.Node
accessibleHelpProperty, accessibleRoleDescriptionProperty, accessibleRoleProperty, accessibleTextProperty, addEventFilter, addEventHandler, applyCss, autosize, blendModeProperty, boundsInLocalProperty, boundsInParentProperty, buildEventDispatchChain, cacheHintProperty, cacheProperty, clipProperty, computeAreaInScreen, contains, contains, cursorProperty, depthTestProperty, disabledProperty, disableProperty, effectiveNodeOrientationProperty, effectProperty, eventDispatcherProperty, executeAccessibleAction, fireEvent, focusedProperty, focusTraversableProperty, getAccessibleHelp, getAccessibleRole, getAccessibleRoleDescription, getAccessibleText, getBlendMode, getBoundsInLocal, getBoundsInParent, getCacheHint, getClip, getCursor, getDepthTest, getEffect, getEffectiveNodeOrientation, getEventDispatcher, getId, getInitialCursor, getInitialFocusTraversable, getInputMethodRequests, getLayoutBounds, getLayoutX, getLayoutY, getLocalToParentTransform, getLocalToSceneTransform, getNodeOrientation, getOnContextMenuRequested, getOnDragDetected, getOnDragDone, getOnDragDropped, getOnDragEntered, getOnDragExited, getOnDragOver, getOnInputMethodTextChanged, getOnKeyPressed, getOnKeyReleased, getOnKeyTyped, getOnMouseClicked, getOnMouseDragEntered, getOnMouseDragExited, getOnMouseDragged, getOnMouseDragOver, getOnMouseDragReleased, getOnMouseEntered, getOnMouseExited, getOnMouseMoved, getOnMousePressed, getOnMouseReleased, getOnRotate, getOnRotationFinished, getOnRotationStarted, getOnScroll, getOnScrollFinished, getOnScrollStarted, getOnSwipeDown, getOnSwipeLeft, getOnSwipeRight, getOnSwipeUp, getOnTouchMoved, getOnTouchPressed, getOnTouchReleased, getOnTouchStationary, getOnZoom, getOnZoomFinished, getOnZoomStarted, getOpacity, getParent, getProperties, getPseudoClassStates, getRotate, getRotationAxis, getScaleX, getScaleY, getScaleZ, getScene, getStyle, getStyleableParent, getStyleClass, getTransforms, getTranslateX, getTranslateY, getTranslateZ, getTypeSelector, getUserData, getViewOrder, hasProperties, hoverProperty, idProperty, inputMethodRequestsProperty, intersects, intersects, isCache, isDisable, isDisabled, isFocused, isFocusTraversable, isHover, isManaged, isMouseTransparent, isPickOnBounds, isPressed, isVisible, layoutBoundsProperty, layoutXProperty, layoutYProperty, localToParent, localToParent, localToParent, localToParent, localToParent, localToParentTransformProperty, localToScene, localToScene, localToScene, localToScene, localToScene, localToScene, localToScene, localToScene, localToScene, localToScene, localToSceneTransformProperty, localToScreen, localToScreen, localToScreen, localToScreen, localToScreen, lookupAll, managedProperty, mouseTransparentProperty, nodeOrientationProperty, notifyAccessibleAttributeChanged, onContextMenuRequestedProperty, onDragDetectedProperty, onDragDoneProperty, onDragDroppedProperty, onDragEnteredProperty, onDragExitedProperty, onDragOverProperty, onInputMethodTextChangedProperty, onKeyPressedProperty, onKeyReleasedProperty, onKeyTypedProperty, onMouseClickedProperty, onMouseDragEnteredProperty, onMouseDragExitedProperty, onMouseDraggedProperty, onMouseDragOverProperty, onMouseDragReleasedProperty, onMouseEnteredProperty, onMouseExitedProperty, onMouseMovedProperty, onMousePressedProperty, onMouseReleasedProperty, onRotateProperty, onRotationFinishedProperty, onRotationStartedProperty, onScrollFinishedProperty, onScrollProperty, onScrollStartedProperty, onSwipeDownProperty, onSwipeLeftProperty, onSwipeRightProperty, onSwipeUpProperty, onTouchMovedProperty, onTouchPressedProperty, onTouchReleasedProperty, onTouchStationaryProperty, onZoomFinishedProperty, onZoomProperty, onZoomStartedProperty, opacityProperty, parentProperty, parentToLocal, parentToLocal, parentToLocal, parentToLocal, parentToLocal, pickOnBoundsProperty, pressedProperty, pseudoClassStateChanged, relocate, removeEventFilter, removeEventHandler, requestFocus, resizeRelocate, rotateProperty, rotationAxisProperty, scaleXProperty, scaleYProperty, scaleZProperty, sceneProperty, sceneToLocal, sceneToLocal, sceneToLocal, sceneToLocal, sceneToLocal, sceneToLocal, sceneToLocal, sceneToLocal, screenToLocal, screenToLocal, screenToLocal, setAccessibleHelp, setAccessibleRole, setAccessibleRoleDescription, setAccessibleText, setBlendMode, setCache, setCacheHint, setClip, setCursor, setDepthTest, setDisable, setDisabled, setEffect, setEventDispatcher, setEventHandler, setFocused, setFocusTraversable, setHover, setId, setInputMethodRequests, setLayoutX, setLayoutY, setManaged, setMouseTransparent, setNodeOrientation, setOnContextMenuRequested, setOnDragDetected, setOnDragDone, setOnDragDropped, setOnDragEntered, setOnDragExited, setOnDragOver, setOnInputMethodTextChanged, setOnKeyPressed, setOnKeyReleased, setOnKeyTyped, setOnMouseClicked, setOnMouseDragEntered, setOnMouseDragExited, setOnMouseDragged, setOnMouseDragOver, setOnMouseDragReleased, setOnMouseEntered, setOnMouseExited, setOnMouseMoved, setOnMousePressed, setOnMouseReleased, setOnRotate, setOnRotationFinished, setOnRotationStarted, setOnScroll, setOnScrollFinished, setOnScrollStarted, setOnSwipeDown, setOnSwipeLeft, setOnSwipeRight, setOnSwipeUp, setOnTouchMoved, setOnTouchPressed, setOnTouchReleased, setOnTouchStationary, setOnZoom, setOnZoomFinished, setOnZoomStarted, setOpacity, setPickOnBounds, setPressed, setRotate, setRotationAxis, setScaleX, setScaleY, setScaleZ, setStyle, setTranslateX, setTranslateY, setTranslateZ, setUserData, setViewOrder, setVisible, snapshot, snapshot, startDragAndDrop, startFullDrag, styleProperty, toBack, toFront, toString, translateXProperty, translateYProperty, translateZProperty, usesMirroring, viewOrderProperty, visibleProperty
-
-
-
-
Field Detail
-
FONT_AWESOME
protected static final java.lang.String FONT_AWESOME
- See Also:
- Constant Field Values
-
FONT_SIZE
protected static final int FONT_SIZE
- See Also:
- Constant Field Values
-
explorerVisible
protected final javafx.beans.property.BooleanProperty explorerVisible
-
subDataViewChangeListener
protected final javafx.collections.ListChangeListener<? super DataView> subDataViewChangeListener
-
activeSubDataViewChangeListener
protected final javafx.beans.value.ChangeListener<? super DataView> activeSubDataViewChangeListener
-
closeWindowButtonHandler
protected final javafx.beans.value.ChangeListener<? super java.lang.Boolean> closeWindowButtonHandler
-
-
Constructor Detail
-
DataViewer
public DataViewer()
-
DataViewer
public DataViewer(DataView... views)
-
-
Method Detail
-
detachableWindowProperty
public javafx.beans.property.BooleanProperty detachableWindowProperty()
- Returns:
- detachableWindow property that controls whether window can be detached by dragging or not
-
explorerVisibleProperty
public javafx.beans.property.BooleanProperty explorerVisibleProperty()
Determines if the explorer view is visible.- Returns:
- boolean property (true: visible)
-
getSelectedView
public final DataView getSelectedView()
-
getToolBar
public javafx.scene.control.ToolBar getToolBar()
-
getUserToolBarItems
public javafx.collections.ObservableList<javafx.scene.Node> getUserToolBarItems()
-
getViews
public final javafx.collections.ObservableList<DataView> getViews()
Returns a modifiable list of views displayed by the viewer.- Returns:
- list of views
-
getWindowDecoration
public DataViewWindow.WindowDecoration getWindowDecoration()
-
isDetachableWindow
public boolean isDetachableWindow()
- Returns:
- true: window can be detached by dragging gesture
-
isExplorerVisible
public final boolean isExplorerVisible()
Returns the value of theexplorerVisibleProperty().- Returns:
trueif the explorer view is visible,falseotherwise
-
selectedViewProperty
public final javafx.beans.property.ObjectProperty<DataView> selectedViewProperty()
-
setDetachableWindow
public void setDetachableWindow(boolean state)
- Parameters:
state- true: window can be detached by dragging gesture
-
setExplorerVisible
public final void setExplorerVisible(boolean value)
Sets the value of theexplorerVisibleProperty().- Parameters:
value-trueto make the explorer visible,falseto make it invisible
-
setSelectedView
public final void setSelectedView(DataView selectedView)
-
setSelectedView
public final void setSelectedView(java.lang.String viewName)
-
setWindowDecoration
public void setWindowDecoration(DataViewWindow.WindowDecoration state)
-
showListStyleDataViewProperty
public javafx.beans.property.BooleanProperty showListStyleDataViewProperty()
-
updateMenuButton
public void updateMenuButton(javafx.scene.control.Menu menuButton, DataView dataView)
-
windowDecorationProperty
public javafx.beans.property.ObjectProperty<DataViewWindow.WindowDecoration> windowDecorationProperty()
-
updateDetachableWindowProperty
protected void updateDetachableWindowProperty(DataView root)
-
updateToolBar
protected void updateToolBar()
-
updateWindowDecorations
protected void updateWindowDecorations(DataView root)
-
-