Class HidingTabPane

java.lang.Object
javafx.scene.Node
javafx.scene.Parent
javafx.scene.layout.Region
javafx.scene.layout.Pane
javafx.scene.layout.HBox
pamViewFX.fxNodes.PamHBox
pamViewFX.fxNodes.hidingPane.HidingTabPane
All Implemented Interfaces:
javafx.css.Styleable, javafx.event.EventTarget
Direct Known Subclasses:
TDHidingTabPane

public class HidingTabPane extends PamHBox
The hiding tab pane has tabs which collapse in size rather than the tradition tab panes in which switching a tab simply removes the current tab from the pane. The advantage of this system is that you can show two tabs side by side.

This disadvantage is that the tab pane changes size and this must be handled by the application. Generally this pane should be inside a holder pane which is resized every time the width of the hiding tab pane is resized. This can be done by settings a holder pane. e.g.

settingsTabs=new HidingTabPane();

HidingPane settingsPane=addHidingPane( settingsTabs, tdMainDisplay.settingsIconGrey, 0, Side.RIGHT, Pos.TOP_RIGHT);

settingsTabs.setHolderPane(settingsPane);

Note that the holder pane should not have any other components other than the tab pane as the tab pane changes the holder panes width to its width. Hence if there are other nodes the tab pane can become distorted.

Author:
Jamie Macaulay
  • Property Summary Link icon

    Properties
    Type
    Property
    Description
    javafx.beans.property.DoubleProperty
    Get the extra spacing property at the end of the tab pane.
    javafx.beans.property.DoubleProperty
    Get the start spacing property.

    Properties inherited from class javafx.scene.layout.HBox Link icon

    alignment, fillHeight, spacing

    Properties inherited from class javafx.scene.layout.Region Link icon

    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 Link icon

    needsLayout

    Properties inherited from class javafx.scene.Node Link icon

    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
  • Nested Class Summary Link icon

    Nested Classes
    Modifier and Type
    Class
    Description
    class 
    Array which holds the tabs.
  • Field Summary Link icon

    Fields inherited from class javafx.scene.layout.Region Link icon

    USE_COMPUTED_SIZE, USE_PREF_SIZE

    Fields inherited from class javafx.scene.Node Link icon

    BASELINE_OFFSET_SAME_AS_HEIGHT
  • Constructor Summary Link icon

    Constructors
    Constructor
    Description
    Creates a tab
  • Method Summary Link icon

    Modifier and Type
    Method
    Description
    javafx.beans.property.DoubleProperty
    Get the extra spacing property at the end of the tab pane.
    javafx.scene.layout.Pane
    Get the holder pane- the pane in which the tab pane sits.
    Get all the tabs for this hiding tab pane.
    void
    setEndSpacing(double spacing)
    Set extra right spacing for the tab pane.
    void
    setHolderPane(javafx.scene.layout.Pane holderPane)
    Set the holder pane- the holder pane can be null.
    void
    setStartSpacing(double spacing)
    Set extra left spacing for the tab pane.
    javafx.beans.property.DoubleProperty
    Get the start spacing property.

    Methods inherited from class javafx.scene.layout.HBox Link icon

    alignmentProperty, clearConstraints, fillHeightProperty, getAlignment, getBaselineOffset, getClassCssMetaData, getContentBias, getCssMetaData, getHgrow, getMargin, getSpacing, isFillHeight, requestLayout, setAlignment, setFillHeight, setHgrow, setMargin, setSpacing, spacingProperty

    Methods inherited from class javafx.scene.layout.Pane Link icon

    getChildren

    Methods inherited from class javafx.scene.layout.Region Link icon

    backgroundProperty, borderProperty, cacheShapeProperty, centerShapeProperty, getBackground, getBorder, 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 Link icon

    getChildrenUnmodifiable, getStylesheets, isNeedsLayout, layout, lookup, needsLayoutProperty, queryAccessibleAttribute

    Methods inherited from class javafx.scene.Node Link icon

    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 Link icon

    equals, getClass, hashCode, notify, notifyAll, wait, wait, wait

    Methods inherited from interface javafx.css.Styleable Link icon

    getStyleableNode
  • Property Details Link icon

    • startSpacing Link icon

      public javafx.beans.property.DoubleProperty startSpacingProperty
      Get the start spacing property. This is extra spacing to the lef tof the tab pane.
      See Also:
    • endSpacing Link icon

      public javafx.beans.property.DoubleProperty endSpacingProperty
      Get the extra spacing property at the end of the tab pane. Use this if the holder pane has extra components e.g. say that there a 30 pixel side pane in the holding pane. To keep that pane out of the process of the hiding pane resizing then the spacing value should be set 30.0;
      See Also:
  • Constructor Details Link icon

    • HidingTabPane Link icon

      public HidingTabPane()
      Creates a tab
  • Method Details Link icon

    • getHolderPane Link icon

      public javafx.scene.layout.Pane getHolderPane()
      Get the holder pane- the pane in which the tab pane sits.
      Returns:
      the holder pane.
    • setHolderPane Link icon

      public void setHolderPane(javafx.scene.layout.Pane holderPane)
      Set the holder pane- the holder pane can be null.
      Parameters:
      holderPane - - the holder pane.
    • startSpacingProperty Link icon

      public javafx.beans.property.DoubleProperty startSpacingProperty()
      Get the start spacing property. This is extra spacing to the lef tof the tab pane.
      Returns:
      start spacing property.
    • setStartSpacing Link icon

      public void setStartSpacing(double spacing)
      Set extra left spacing for the tab pane.
      Parameters:
      spacing - in pixels
    • endSpacingProperty Link icon

      public javafx.beans.property.DoubleProperty endSpacingProperty()
      Get the extra spacing property at the end of the tab pane. Use this if the holder pane has extra components e.g. say that there a 30 pixel side pane in the holding pane. To keep that pane out of the process of the hiding pane resizing then the spacing value should be set 30.0;
      Returns:
      end spacing property.
    • setEndSpacing Link icon

      public void setEndSpacing(double spacing)
      Set extra right spacing for the tab pane.
      Parameters:
      spacing - in pixels
    • getTabs Link icon

      public HidingTabPane.TabList getTabs()
      Get all the tabs for this hiding tab pane.
      Returns:
      tabs in the pane.