Package detectionPlotFX.layout
Class DetectionPlotDisplay
java.lang.Object
javafx.scene.Node
javafx.scene.Parent
javafx.scene.layout.Region
javafx.scene.layout.Pane
javafx.scene.layout.BorderPane
pamViewFX.fxNodes.PamBorderPane
detectionPlotFX.layout.DetectionPlotDisplay
- All Implemented Interfaces:
javafx.css.Styleable,javafx.event.EventTarget
A detection display plot usually plots a single detection.
The axis on a detection display plot can be anything,
e.g. dB and bin number, linear amplitude and frequency.
TODO - explain data structure.
- Author:
- Jamie Macaulay
-
Property Summary
Properties inherited from class javafx.scene.layout.BorderPane
bottom, center, left, right, topProperties inherited from class javafx.scene.layout.Region
background, border, cacheShape, centerShape, height, insets, maxHeight, maxWidth, minHeight, minWidth, opaqueInsets, padding, prefHeight, prefWidth, scaleShape, shape, snapToPixel, widthProperties inherited from class javafx.scene.Parent
needsLayoutProperties inherited from class javafx.scene.Node
accessibleHelp, accessibleRoleDescription, accessibleRole, accessibleText, blendMode, boundsInLocal, boundsInParent, cacheHint, cache, clip, cursor, depthTest, disabled, disable, effectiveNodeOrientation, effect, eventDispatcher, focused, focusTraversable, focusVisible, focusWithin, hover, id, inputMethodRequests, layoutBounds, layoutX, layoutY, localToParentTransform, localToSceneTransform, managed, mouseTransparent, nodeOrientation, onContextMenuRequested, onDragDetected, onDragDone, onDragDropped, onDragEntered, onDragExited, onDragOver, onInputMethodTextChanged, onKeyPressed, onKeyReleased, onKeyTyped, onMouseClicked, onMouseDragEntered, onMouseDragExited, onMouseDragged, onMouseDragOver, onMouseDragReleased, onMouseEntered, onMouseExited, onMouseMoved, onMousePressed, onMouseReleased, onRotate, onRotationFinished, onRotationStarted, onScrollFinished, onScroll, onScrollStarted, onSwipeDown, onSwipeLeft, onSwipeRight, onSwipeUp, onTouchMoved, onTouchPressed, onTouchReleased, onTouchStationary, onZoomFinished, onZoom, onZoomStarted, opacity, parent, pickOnBounds, pressed, rotate, rotationAxis, scaleX, scaleY, scaleZ, scene, style, translateX, translateY, translateZ, viewOrder, visible -
Field Summary
Fields inherited from class javafx.scene.layout.Region
USE_COMPUTED_SIZE, USE_PREF_SIZEFields inherited from class javafx.scene.Node
BASELINE_OFFSET_SAME_AS_HEIGHT -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionvoidClear tyhe plot.voidSet the data model to represent the parent currently selected in the display.voidRedraw the current dataunit.Get a plot pane axis.getAxisPane(javafx.geometry.Side side) Get an axis paneGet the current DDDataInfo for the graph.Get the settings pane which allows changing of axis and data blocks.Get the projector for the plot.getHidingPane(javafx.geometry.Side side) Get the hiding pane.Get the plot pane.The pane which holds settings for the the current plot.booleanCheck whether the time scroll bar is enabled.booleanisViewer()Get whether PAMGuard is in viewer mode.voidnewDataBlockAdded(PamDataBlock dataBlock) Called whenever a new datablock is added.voidnewDataUnit(PamDataUnit newDataUnit) Display a new data unit on the graph.voidvoidsetAxisVisible(boolean top, boolean right, boolean bottom, boolean left) Set which axis are shown on the graph.voidsetDataInfo(DDDataInfo dDDataInfo) Set the DataInfo for the display.voidsetDataInfo(DDDataProvider newDataProviderFX) Set the DataInfo for the display.voidsetDataUnit(PamDataUnit newDataUnit) Convenience function.voidsetEnableScrollBar(boolean enableScrollBarPane) voidsetMinHidePaneHeight(double minHeight) Set the minimum height of the hiding side panes.voidSetup the scroll bar if the pot changes.voidsetupScrollBar(PamDataUnit newDataUnit) Setup the scroll bar so that it has the correct limits and datagram for the current data unit.Methods inherited from class pamViewFX.fxNodes.PamBorderPane
setBottomSpace, setLeftSpace, setRightSpace, setTopSpaceMethods 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, topPropertyMethods inherited from class javafx.scene.layout.Pane
getChildrenMethods 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, widthPropertyMethods inherited from class javafx.scene.Parent
getBaselineOffset, getChildrenUnmodifiable, getManagedChildren, getStylesheets, isNeedsLayout, layout, lookup, needsLayoutProperty, queryAccessibleAttribute, requestLayout, requestParentLayout, setNeedsLayout, updateBoundsMethods 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, focusVisibleProperty, focusWithinProperty, 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, isFocusVisible, isFocusWithin, 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, visiblePropertyMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface javafx.css.Styleable
getStyleableNode
-
Constructor Details
-
DetectionPlotDisplay
-
DetectionPlotDisplay
public DetectionPlotDisplay()
-
-
Method Details
-
isViewer
public boolean isViewer()Get whether PAMGuard is in viewer mode.- Returns:
- true if in viewer mode.
-
setDataInfo
Set the DataInfo for the display.- Parameters:
newDataProviderFX- - a DDDataProvider used to create a new DDDataInfo instance.
-
setDataInfo
Set the DataInfo for the display.- Parameters:
dDDataInfo- - the DataInfo to set.
-
removeDataInfo
public void removeDataInfo() -
getCurrentDataInfo
Get the current DDDataInfo for the graph.- Returns:
- the current DDDataInfo. Can be null.
-
newDataUnit
Display a new data unit on the graph.- Parameters:
the- new data unit to display
-
setupScrollBar
public void setupScrollBar()Setup the scroll bar if the pot changes. -
setupScrollBar
Setup the scroll bar so that it has the correct limits and datagram for the current data unit. -
setDataUnit
Convenience function. Same asnewDataUnit(PamguardMVC.PamDataUnit)- Parameters:
the- new data unit to display
-
clearPane
public void clearPane()Clear tyhe plot. -
drawCurrentUnit
public void drawCurrentUnit()Redraw the current dataunit. -
setAxisVisible
public void setAxisVisible(boolean top, boolean right, boolean bottom, boolean left) Set which axis are shown on the graph.- Parameters:
axis- the axis in order TOP, RIGHT BOTTOM, LEFT. true to show, false to not show. Default is to show. This should not be more thna four elements long
-
getAllAxisPanes
Get a plot pane axis.- Parameters:
the- axis side- Returns:
- the pam axis
-
dataModelToDisplay
public void dataModelToDisplay()Set the data model to represent the parent currently selected in the display. (Only FX GUI) -
getAxisPane
Get an axis pane- Parameters:
side- the axis to get.
-
getHidingPane
Get the hiding pane.- Parameters:
side- - the side.- Returns:
- the hiding pane.
-
newDataBlockAdded
Called whenever a new datablock is added.- Parameters:
dataBlock- - the data blovck to add
-
setMinHidePaneHeight
public void setMinHidePaneHeight(double minHeight) Set the minimum height of the hiding side panes. If the detection plot goes below this height the hiding panes pop out of the display. This ensures all controls are easily accessble to the user.- Parameters:
minHeight- the minimum height of the hiding pane.
-
getDataTypePane
Get the settings pane which allows changing of axis and data blocks.- Returns:
- the settings pane for changing axis and data blocks.
-
getPlotPane
Get the plot pane. This is where all the basic nodes such as axis and drawing canvas are held.- Returns:
- the plot pane.
-
setEnableScrollBar
public void setEnableScrollBar(boolean enableScrollBarPane) - Parameters:
enableSettingsButton-
-
getDetectionPlotProjector
Get the projector for the plot. This handles pixel to data conversion and vice versa.- Returns:
- the projector for the plot.
-
getSettingsHolder
The pane which holds settings for the the current plot.- Returns:
- the pane which holds settings for the current plot.
-
isEnableScrollBar
public boolean isEnableScrollBar()Check whether the time scroll bar is enabled.- Returns:
- true if the time scroll bar is enabled.
-