Class StretchingTilePane

java.lang.Object
javafx.scene.Node
javafx.scene.Parent
javafx.scene.layout.Region
javafx.scene.layout.Pane
com.dlsc.gemsfx.StretchingTilePane
All Implemented Interfaces:
javafx.css.Styleable, javafx.event.EventTarget

public class StretchingTilePane extends javafx.scene.layout.Pane
A specialized pane that can be used to display a list of tiles (nodes) in one or more rows. The pane first calculates how many tiles fit next to each other in a row and then arranges them in a grid. The tiles are stretched to fill the entire width of each row. All tiles have the same height and width.
Note: the main difference to the standard JavaFX TilePane is that the tiles are stretched to fill the entire width of each row.
  • Property Summary

    Properties
    Type
    Property
    Description
    final javafx.beans.property.DoubleProperty
    The horizontal gap between the tiles.
    final javafx.beans.property.DoubleProperty
    The vertical gap between the tiles.

    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
    Constructs a new tile pane with an horizontal gap of 0 and a vertical gap of 0.
    StretchingTilePane(double hgap, double vgap)
    Constructs a new tile pane with the given horizontal and vertical gap.
    StretchingTilePane(double hgap, double vgap, javafx.scene.Node... children)
    Constructs a new tile pane with the specified horizontal and vertical gaps and an optional list of child nodes.
  • Method Summary

    Modifier and Type
    Method
    Description
    protected double
    computeMinHeight(double width)
     
    protected double
    computePrefHeight(double width)
     
    static List<javafx.css.CssMetaData<? extends javafx.css.Styleable, ?>>
     
    javafx.geometry.Orientation
    We need the content bias to be horizontal so that the component's width will be considered for layout purposes.
    List<javafx.css.CssMetaData<? extends javafx.css.Styleable, ?>>
     
    final double
    Gets the value of the hgap property.
    final double
    Gets the value of the vgap property.
    final javafx.beans.property.DoubleProperty
    The horizontal gap between the tiles.
    protected void
     
    final void
    setHgap(double value)
    Sets the value of the hgap property.
    final void
    setVgap(double value)
    Sets the value of the vgap property.
    final javafx.beans.property.DoubleProperty
    The vertical gap between the tiles.

    Methods inherited from class javafx.scene.layout.Pane

    getChildren

    Methods inherited from class javafx.scene.layout.Region

    backgroundProperty, borderProperty, cacheShapeProperty, centerShapeProperty, computeMaxHeight, computeMaxWidth, computeMinWidth, computePrefWidth, 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, requestLayout, 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, requestFocusTraversal, 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 Object

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

    Methods inherited from interface javafx.css.Styleable

    getStyleableNode
  • Property Details

    • hgap

      public final javafx.beans.property.DoubleProperty hgapProperty
      The horizontal gap between the tiles.

      Can be set via CSS using the -fx-hgap property. Valid values are: positive numbers. The default value is 0.

      See Also:
    • vgap

      public final javafx.beans.property.DoubleProperty vgapProperty
      The vertical gap between the tiles.

      Can be set via CSS using the -fx-vgap property. Valid values are: positive numbers. The default value is 0.

      See Also:
  • Constructor Details

    • StretchingTilePane

      public StretchingTilePane()
      Constructs a new tile pane with an horizontal gap of 0 and a vertical gap of 0.
    • StretchingTilePane

      public StretchingTilePane(double hgap, double vgap)
      Constructs a new tile pane with the given horizontal and vertical gap.
      Parameters:
      hgap - the horizontal gap between the tiles.
      vgap - the vertical gap between the tiles.
    • StretchingTilePane

      public StretchingTilePane(double hgap, double vgap, javafx.scene.Node... children)
      Constructs a new tile pane with the specified horizontal and vertical gaps and an optional list of child nodes.
      Parameters:
      hgap - the horizontal gap between the tiles.
      vgap - the vertical gap between the tiles.
      children - the child nodes to be added to the tile pane.
  • Method Details

    • getContentBias

      public javafx.geometry.Orientation getContentBias()
      We need the content bias to be horizontal so that the component's width will be considered for layout purposes.
      Overrides:
      getContentBias in class javafx.scene.Node
      Returns:
      the content bias.
    • hgapProperty

      public final javafx.beans.property.DoubleProperty hgapProperty()
      The horizontal gap between the tiles.

      Can be set via CSS using the -fx-hgap property. Valid values are: positive numbers. The default value is 0.

      Returns:
      the horizontal gap property.
      See Also:
    • setHgap

      public final void setHgap(double value)
      Sets the value of the hgap property.
      Property description:
      The horizontal gap between the tiles.

      Can be set via CSS using the -fx-hgap property. Valid values are: positive numbers. The default value is 0.

      Parameters:
      value - the value for the hgap property
      See Also:
    • getHgap

      public final double getHgap()
      Gets the value of the hgap property.
      Property description:
      The horizontal gap between the tiles.

      Can be set via CSS using the -fx-hgap property. Valid values are: positive numbers. The default value is 0.

      Returns:
      the value of the hgap property
      See Also:
    • vgapProperty

      public final javafx.beans.property.DoubleProperty vgapProperty()
      The vertical gap between the tiles.

      Can be set via CSS using the -fx-vgap property. Valid values are: positive numbers. The default value is 0.

      Returns:
      the vertical gap property.
      See Also:
    • setVgap

      public final void setVgap(double value)
      Sets the value of the vgap property.
      Property description:
      The vertical gap between the tiles.

      Can be set via CSS using the -fx-vgap property. Valid values are: positive numbers. The default value is 0.

      Parameters:
      value - the value for the vgap property
      See Also:
    • getVgap

      public final double getVgap()
      Gets the value of the vgap property.
      Property description:
      The vertical gap between the tiles.

      Can be set via CSS using the -fx-vgap property. Valid values are: positive numbers. The default value is 0.

      Returns:
      the value of the vgap property
      See Also:
    • computePrefHeight

      protected double computePrefHeight(double width)
      Overrides:
      computePrefHeight in class javafx.scene.layout.Region
    • computeMinHeight

      protected double computeMinHeight(double width)
      Overrides:
      computeMinHeight in class javafx.scene.layout.Region
    • layoutChildren

      protected void layoutChildren()
      Overrides:
      layoutChildren in class javafx.scene.Parent
    • getCssMetaData

      public List<javafx.css.CssMetaData<? extends javafx.css.Styleable, ?>> getCssMetaData()
      Specified by:
      getCssMetaData in interface javafx.css.Styleable
      Overrides:
      getCssMetaData in class javafx.scene.layout.Region
    • getClassCssMetaData

      public static List<javafx.css.CssMetaData<? extends javafx.css.Styleable, ?>> getClassCssMetaData()