Class PamTabPane

java.lang.Object
javafx.scene.Node
javafx.scene.Parent
javafx.scene.layout.Region
javafx.scene.control.Control
javafx.scene.control.TabPane
pamViewFX.fxNodes.PamTabPane
All Implemented Interfaces:
javafx.css.Styleable, javafx.event.EventTarget, javafx.scene.control.Skinnable

public class PamTabPane extends javafx.scene.control.TabPane
Tab pane which allows for detachable tabs.
Author:
Jamie Macaulay
  • Property Summary

    Properties inherited from class javafx.scene.control.TabPane

    rotateGraphic, selectionModel, side, tabClosingPolicy, tabDragPolicy, tabMaxHeight, tabMaxWidth, tabMinHeight, tabMinWidth

    Properties inherited from class javafx.scene.control.Control

    contextMenu, skin, tooltip

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

    Nested classes/interfaces inherited from class javafx.scene.control.TabPane

    javafx.scene.control.TabPane.TabClosingPolicy, javafx.scene.control.TabPane.TabDragPolicy
  • Field Summary

    Fields inherited from class javafx.scene.control.TabPane

    STYLE_CLASS_FLOATING

    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
     
    PamTabPane(javafx.scene.control.Tab... arg0)
     
  • Method Summary

    Modifier and Type
    Method
    Description
    Get the add tab button.
    double
    Get the height in pixels of the header.
    javafx.beans.property.ReadOnlyDoubleProperty
    Get the height property for the tab pane header (area where all the tabs are).
    javafx.scene.layout.Region
    Get the end region for this PamTabPanwe.
    javafx.scene.layout.Region
    Get the start region for this PamTabPanwe.
    boolean
    Check if the button to add additional tabs is showing.
    double
    Reset the size of the tab pane to fit the smallest of it's tabs and have space for the tab bar.
    void
    setAddTabButton(boolean addTabButton)
    TODO - the button is removed and then added again it does not seem to appear....
    void
    setTabEndRegion(javafx.scene.layout.Region tabEndRegion)
    Set the end region for this PamTabPanwe.
    void
    setTabStartRegion(javafx.scene.layout.Region tabStartRegion)
    Set the start region for this PamTabPanwe.

    Methods inherited from class javafx.scene.control.TabPane

    getClassCssMetaData, getControlCssMetaData, getSelectionModel, getSide, getTabClosingPolicy, getTabDragPolicy, getTabMaxHeight, getTabMaxWidth, getTabMinHeight, getTabMinWidth, getTabs, isRotateGraphic, lookup, lookupAll, rotateGraphicProperty, selectionModelProperty, setRotateGraphic, setSelectionModel, setSide, setTabClosingPolicy, setTabDragPolicy, setTabMaxHeight, setTabMaxWidth, setTabMinHeight, setTabMinWidth, sideProperty, tabClosingPolicyProperty, tabDragPolicyProperty, tabMaxHeightProperty, tabMaxWidthProperty, tabMinHeightProperty, tabMinWidthProperty

    Methods inherited from class javafx.scene.control.Control

    contextMenuProperty, executeAccessibleAction, getBaselineOffset, getContextMenu, getCssMetaData, getSkin, getTooltip, isResizable, queryAccessibleAttribute, setContextMenu, setSkin, setTooltip, skinProperty, tooltipProperty

    Methods inherited from class javafx.scene.layout.Region

    backgroundProperty, borderProperty, cacheShapeProperty, centerShapeProperty, getBackground, getBorder, getHeight, getInsets, getMaxHeight, getMaxWidth, getMinHeight, getMinWidth, getOpaqueInsets, getPadding, getPrefHeight, getPrefWidth, getShape, getUserAgentStylesheet, getWidth, heightProperty, insetsProperty, isCacheShape, isCenterShape, 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

    getChildrenUnmodifiable, getStylesheets, isNeedsLayout, layout, needsLayoutProperty, 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, fireEvent, focusedProperty, focusTraversableProperty, focusVisibleProperty, focusWithinProperty, getAccessibleHelp, getAccessibleRole, getAccessibleRoleDescription, getAccessibleText, getBlendMode, getBoundsInLocal, getBoundsInParent, getCacheHint, getClip, getContentBias, 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, 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

    • PamTabPane

      public PamTabPane()
    • PamTabPane

      public PamTabPane(javafx.scene.control.Tab... arg0)
  • Method Details

    • getTabStartRegion

      public javafx.scene.layout.Region getTabStartRegion()
      Get the start region for this PamTabPanwe. The start region sits on the left side/top of the tab pane.
      Returns:
      the tab start region. null if there is no region.
    • setTabStartRegion

      public void setTabStartRegion(javafx.scene.layout.Region tabStartRegion)
      Set the start region for this PamTabPanwe. The start region sits on the left side/top of the tab pane.
      Parameters:
      the - tab start region. Set to null to remove current region.
    • getTabEndRegion

      public javafx.scene.layout.Region getTabEndRegion()
      Get the end region for this PamTabPanwe. The end region sits on the right side/bottom of the tab pane.
      Returns:
      the tab end region. null if there is no region.
    • setTabEndRegion

      public void setTabEndRegion(javafx.scene.layout.Region tabEndRegion)
      Set the end region for this PamTabPanwe. The end region sits on the right side/bottom of the tab pane.
      Parameters:
      the - tab end region. Set to null to remove current region.
    • isAddTabButton

      public boolean isAddTabButton()
      Check if the button to add additional tabs is showing. This sits after the last added tab.
      Returns:
      true if the button to add tabs is showing.
    • setAddTabButton

      public void setAddTabButton(boolean addTabButton)
      TODO - the button is removed and then added again it does not seem to appear.... Set whether a button shows to add tabs to the TabPane
      Parameters:
      addTabButton - - true to show a button next to the last tab which allows new tabs to be added.
    • getHeaderHeight

      public double getHeaderHeight()
      Get the height in pixels of the header.
      Returns:
      the height of the header in pixels.
    • getHeaderHeightProperty

      public javafx.beans.property.ReadOnlyDoubleProperty getHeaderHeightProperty()
      Get the height property for the tab pane header (area where all the tabs are).
      Returns:
      the height property for the header area.
    • getAddTabButton

      public PamButton getAddTabButton()
      Get the add tab button.
      Returns:
      the button which adds the tabs to tab pane.
    • repackTabs

      public double repackTabs()
      Reset the size of the tab pane to fit the smallest of it's tabs and have space for the tab bar. Shouldn't be necessary, but for some reason, tabs don't resize after their initial creation even if the size of their content changes.
      Returns:
      new height of the tab pane.