Class AcceleratorTreeView

java.lang.Object
javafx.scene.Node
javafx.scene.Parent
javafx.scene.layout.Region
javafx.scene.layout.Pane
javafx.scene.layout.VBox
xal.extension.fxapplication.widgets.XalTreeView<AcceleratorNode>
xal.extension.fxapplication.widgets.AcceleratorTreeView
All Implemented Interfaces:
javafx.css.Styleable, javafx.event.EventTarget

public class AcceleratorTreeView extends XalTreeView<AcceleratorNode>
This class extends XalTreeView to represent the Accelerator tree or a sequence. It supports both normal AcceleratorSeq and AcceleratorSeqCombo objects. The widget can be used independently or coupled to the application document.

In the first case, use the update method to set the accelerator sequence that will be shown.

For integration with the application document, use the setDocument method. It will update the tree every time either the accelerator or the sequence is changed. Double clicking a sequence results in setting the sequence in the document. See also XalTreeView.

Author:
Juan F. Esteban Müller <juanf.estebanmuller@ess.eu>
  • Property Summary

    Properties inherited from class xal.extension.fxapplication.widgets.XalTreeView

    selectedItem

    Properties inherited from class javafx.scene.layout.VBox

    alignment, fillWidth, spacing

    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

    Constructors
    Constructor
    Description
     
  • Method Summary

    Modifier and Type
    Method
    Description
    javafx.scene.control.TreeItem<AcceleratorNode>
    This method allows to add a node in the TreeView after adding it to the accelerator, avoiding to reload the full treeview.
    protected void
    addItem(javafx.scene.control.TreeItem<AcceleratorNode> item, javafx.scene.control.TreeItem<AcceleratorNode> parentItem)
     
    boolean
     
    void
    Convenience method to deselect all filters.
    void
    deselectFilters(String[] elementTypes)
    Convenience method to deselect some filters.The Tree is updated only once.
    protected void
    doubleClickEventHandler(javafx.scene.input.MouseEvent event)
     
    protected String
    getId(javafx.scene.control.TreeItem<AcceleratorNode> selectedItem)
    This method should be implemented by subclasses to get the node ID corresponding to a TreeItem object.
    Get the list of element types that are selected in the filter.
    void
    Hides the filter menu.
    boolean
     
    boolean
     
    void
     
    void
    Convenience method to select all filters.
    void
    selectFilters(String[] elementTypes)
    Convenience method to select some filters.The Tree is updated only once.
    void
    selectFilters(String[] elementTypes, boolean unselectOthers)
    Convenience method to select some filters.The Tree is updated only once.
    void
    setAlwaysShowRfCavities(boolean alwaysShowRfCavities)
     
    void
    This method uses the accelerator property to update the tree every time the accelerator is changed, and vice versa.
    void
    setShowAcceleratorNode(boolean showAcceleratorNode)
     
    void
    Shows the filter menu.
    void
    update(Accelerator accelerator)
    The method should repopulate the TreeView using the data from the Accelerator object passed as an argument.
    void
    update(AcceleratorSeq acceleratorSeq)
    Update the TreeView with a new accelerator sequence.
    protected void
     
    protected void
     

    Methods inherited from class javafx.scene.layout.VBox

    alignmentProperty, clearConstraints, computeMinHeight, computeMinWidth, computePrefHeight, computePrefWidth, fillWidthProperty, getAlignment, getClassCssMetaData, getContentBias, getCssMetaData, getMargin, getSpacing, getVgrow, isFillWidth, layoutChildren, requestLayout, setAlignment, setFillWidth, setMargin, setSpacing, setVgrow, spacingProperty

    Methods inherited from class javafx.scene.layout.Pane

    getChildren

    Methods inherited from class javafx.scene.layout.Region

    backgroundProperty, borderProperty, cacheShapeProperty, centerShapeProperty, computeMaxHeight, computeMaxWidth, getBackground, getBorder, 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, 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, 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, visibleProperty

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait

    Methods inherited from interface javafx.css.Styleable

    getStyleableNode
  • Constructor Details

    • AcceleratorTreeView

      public AcceleratorTreeView()
  • Method Details

    • doubleClickEventHandler

      protected void doubleClickEventHandler(javafx.scene.input.MouseEvent event)
      Overrides:
      doubleClickEventHandler in class XalTreeView<AcceleratorNode>
    • setDocument

      public void setDocument(XalFxDocument document)
      Description copied from class: XalTreeView
      This method uses the accelerator property to update the tree every time the accelerator is changed, and vice versa.

      Use this method for full integration with the document. If the TreeView is expected to be decoupled from the document, then use the update method.

      Specified by:
      setDocument in class XalTreeView<AcceleratorNode>
    • isShowAcceleratorNode

      public boolean isShowAcceleratorNode()
    • setShowAcceleratorNode

      public void setShowAcceleratorNode(boolean showAcceleratorNode)
    • isAlwaysShowRfCavities

      public boolean isAlwaysShowRfCavities()
    • setAlwaysShowRfCavities

      public void setAlwaysShowRfCavities(boolean alwaysShowRfCavities)
    • addElement

      public javafx.scene.control.TreeItem<AcceleratorNode> addElement(AcceleratorNode node)
      Description copied from class: XalTreeView
      This method allows to add a node in the TreeView after adding it to the accelerator, avoiding to reload the full treeview.
      Specified by:
      addElement in class XalTreeView<AcceleratorNode>
      Returns:
    • addItem

      protected void addItem(javafx.scene.control.TreeItem<AcceleratorNode> item, javafx.scene.control.TreeItem<AcceleratorNode> parentItem)
      Overrides:
      addItem in class XalTreeView<AcceleratorNode>
    • replaceElement

      public void replaceElement(AcceleratorNode nodeBefore, AcceleratorNode nodeAfter)
    • update

      public void update(Accelerator accelerator)
      Description copied from class: XalTreeView
      The method should repopulate the TreeView using the data from the Accelerator object passed as an argument.
      Specified by:
      update in class XalTreeView<AcceleratorNode>
    • update

      public void update(AcceleratorSeq acceleratorSeq)
      Update the TreeView with a new accelerator sequence.
      Parameters:
      acceleratorSeq -
    • updateTreeViewKeepSelection

      protected void updateTreeViewKeepSelection()
    • updateTreeView

      protected void updateTreeView()
    • hideFilterMenu

      public void hideFilterMenu()
      Hides the filter menu. Then the application must make sure to define the right filter.
    • showFilterMenu

      public void showFilterMenu()
      Shows the filter menu.
    • selectAllFilters

      public void selectAllFilters()
      Convenience method to select all filters. The Tree is updated only once.
    • deselectAllFilters

      public void deselectAllFilters()
      Convenience method to deselect all filters. The Tree is updated only once.
    • getSelectedFilters

      public String[] getSelectedFilters()
      Get the list of element types that are selected in the filter.
      Returns:
      An array of Strings with the selected types.
    • areAllFiltersSelected

      public boolean areAllFiltersSelected()
      Returns:
      true if all filters are selected.
    • selectFilters

      public void selectFilters(String[] elementTypes, boolean unselectOthers)
      Convenience method to select some filters.The Tree is updated only once.
      Parameters:
      unselectOthers - flag to disable the filters not passed as arguments.
      elementTypes - Strings with element types to be selected.
    • selectFilters

      public void selectFilters(String[] elementTypes)
      Convenience method to select some filters.The Tree is updated only once.
      Parameters:
      elementTypes - Strings with element types to be selected.
    • deselectFilters

      public void deselectFilters(String[] elementTypes)
      Convenience method to deselect some filters.The Tree is updated only once.
      Parameters:
      elementTypes - Strings with element types to be unselected.
    • getId

      protected String getId(javafx.scene.control.TreeItem<AcceleratorNode> selectedItem)
      Description copied from class: XalTreeView
      This method should be implemented by subclasses to get the node ID corresponding to a TreeItem object.
      Specified by:
      getId in class XalTreeView<AcceleratorNode>
      Returns: