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, top
Properties inherited from class javafx.scene.layout.Region
background, border, cacheShape, centerShape, height, insets, maxHeight, maxWidth, minHeight, minWidth, opaqueInsets, padding, prefHeight, prefWidth, scaleShape, shape, snapToPixel, width
Properties inherited from class javafx.scene.Parent
needsLayout
Properties 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_SIZE
Fields inherited from class javafx.scene.Node
BASELINE_OFFSET_SAME_AS_HEIGHT
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionvoid
Clear tyhe plot.void
Set the data model to represent the parent currently selected in the display.void
Redraw 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.boolean
Check whether the time scroll bar is enabled.boolean
isViewer()
Get whether PAMGuard is in viewer mode.void
newDataBlockAdded
(PamDataBlock dataBlock) Called whenever a new datablock is added.void
newDataUnit
(PamDataUnit newDataUnit) Display a new data unit on the graph.void
void
setAxisVisible
(boolean top, boolean right, boolean bottom, boolean left) Set which axis are shown on the graph.void
setDataInfo
(DDDataInfo dDDataInfo) Set the DataInfo for the display.void
setDataInfo
(DDDataProvider newDataProviderFX) Set the DataInfo for the display.void
setDataUnit
(PamDataUnit newDataUnit) Convenience function.void
setEnableScrollBar
(boolean enableScrollBarPane) void
setMinHidePaneHeight
(double minHeight) Set the minimum height of the hiding side panes.void
Setup the scroll bar if the pot changes.void
setupScrollBar
(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, setTopSpace
Methods inherited from class javafx.scene.layout.BorderPane
bottomProperty, centerProperty, clearConstraints, getAlignment, getBottom, getCenter, getContentBias, getLeft, getMargin, getRight, getTop, leftProperty, rightProperty, setAlignment, setBottom, setCenter, setLeft, setMargin, setRight, setTop, topProperty
Methods inherited from class javafx.scene.layout.Pane
getChildren
Methods inherited from class javafx.scene.layout.Region
backgroundProperty, borderProperty, cacheShapeProperty, centerShapeProperty, 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, maxHeight, maxHeightProperty, maxWidth, maxWidthProperty, minHeight, minHeightProperty, minWidth, minWidthProperty, opaqueInsetsProperty, paddingProperty, positionInArea, prefHeight, prefHeightProperty, prefWidth, prefWidthProperty, resize, scaleShapeProperty, setBackground, setBorder, setCacheShape, setCenterShape, setMaxHeight, setMaxSize, setMaxWidth, setMinHeight, setMinSize, setMinWidth, setOpaqueInsets, setPadding, setPrefHeight, setPrefSize, setPrefWidth, setScaleShape, setShape, setSnapToPixel, shapeProperty, snappedBottomInset, snappedLeftInset, snappedRightInset, snappedTopInset, snapPositionX, snapPositionY, snapSizeX, snapSizeY, snapSpaceX, snapSpaceY, snapToPixelProperty, widthProperty
Methods inherited from class javafx.scene.Parent
getBaselineOffset, getChildrenUnmodifiable, getStylesheets, isNeedsLayout, layout, lookup, needsLayoutProperty, queryAccessibleAttribute, requestLayout
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, focusVisibleProperty, focusWithinProperty, getAccessibleHelp, getAccessibleRole, getAccessibleRoleDescription, getAccessibleText, getBlendMode, getBoundsInLocal, getBoundsInParent, getCacheHint, getClip, getCursor, getDepthTest, getEffect, getEffectiveNodeOrientation, getEventDispatcher, getId, 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, setEffect, setEventDispatcher, setFocusTraversable, 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, 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
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, wait, wait, wait
Methods 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.
-