Class ThreeItemsPane

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

public class ThreeItemsPane extends javafx.scene.layout.Pane
A custom layout container that arranges up to three child nodes in either a horizontal or vertical orientation. This pane allows spacing between the nodes and provides methods to control the alignment and orientation of the child nodes.

The container manages three possible child nodes, identified as item1, item2, and item3. The layout updates dynamically whenever the nodes or properties such as orientation or spacing are modified.

Features include: - Dynamic management of child nodes: up to three nodes can be added and arranged. - Adjustable orientation: supports horizontal and vertical alignment through the orientation property. - Customizable spacing: allows setting the spacing between child nodes.

Override methods provide computed sizes for use during layouts, including preferred, minimum, and maximum widths and heights.

  • Property Summary

    Properties
    Type
    Property
    Description
    final javafx.beans.property.ObjectProperty<javafx.scene.Node>
    Returns the property object for the first item in the ThreeItemsPane.
    final javafx.beans.property.ObjectProperty<javafx.scene.Node>
    Returns the property object for the second item in the ThreeItemsPane.
    final javafx.beans.property.ObjectProperty<javafx.scene.Node>
    Returns the property object for the third item in the ThreeItemsPane.
    final javafx.beans.property.ObjectProperty<javafx.geometry.Orientation>
    Returns the property object for the orientation of the ThreeItemsPane.
    final javafx.beans.property.DoubleProperty
     

    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 instance of the ThreeItemsPane class.
  • Method Summary

    Modifier and Type
    Method
    Description
    protected double
    computeMaxHeight(double width)
     
    protected double
    computeMaxWidth(double height)
     
    protected double
    computeMinHeight(double width)
     
    protected double
    computeMinWidth(double height)
     
    protected double
    computePrefHeight(double width)
     
    protected double
    computePrefWidth(double height)
     
    javafx.geometry.Orientation
     
    final javafx.scene.Node
    Gets the value of the item1 property.
    final javafx.scene.Node
    Gets the value of the item2 property.
    final javafx.scene.Node
    Gets the value of the item3 property.
    final javafx.geometry.Orientation
    Gets the value of the orientation property.
    final double
    Gets the value of the spacing property.
    final javafx.beans.property.ObjectProperty<javafx.scene.Node>
    Returns the property object for the first item in the ThreeItemsPane.
    final javafx.beans.property.ObjectProperty<javafx.scene.Node>
    Returns the property object for the second item in the ThreeItemsPane.
    final javafx.beans.property.ObjectProperty<javafx.scene.Node>
    Returns the property object for the third item in the ThreeItemsPane.
    protected void
     
    final javafx.beans.property.ObjectProperty<javafx.geometry.Orientation>
    Returns the property object for the orientation of the ThreeItemsPane.
    void
     
    final void
    setItem1(javafx.scene.Node item1)
    Sets the value of the item1 property.
    final void
    setItem2(javafx.scene.Node item2)
    Sets the value of the item2 property.
    final void
    setItem3(javafx.scene.Node item3)
    Sets the value of the item3 property.
    void
    setOrientation(javafx.geometry.Orientation orientation)
    Sets the value of the orientation property.
    final void
    setSpacing(double spacing)
    Sets the value of the spacing property.
    final javafx.beans.property.DoubleProperty
     

    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, 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, 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

    • orientation

      public final javafx.beans.property.ObjectProperty<javafx.geometry.Orientation> orientationProperty
      Returns the property object for the orientation of the ThreeItemsPane. This property determines whether the layout of the items is horizontal or vertical.
      See Also:
    • item1

      public final javafx.beans.property.ObjectProperty<javafx.scene.Node> item1Property
      Returns the property object for the first item in the ThreeItemsPane. This property represents the first Node managed by the pane.
      See Also:
    • item2

      public final javafx.beans.property.ObjectProperty<javafx.scene.Node> item2Property
      Returns the property object for the second item in the ThreeItemsPane. This property represents the second Node managed by the pane.
      See Also:
    • item3

      public final javafx.beans.property.ObjectProperty<javafx.scene.Node> item3Property
      Returns the property object for the third item in the ThreeItemsPane. This property represents the third Node managed by the pane.
      See Also:
    • spacing

      public final javafx.beans.property.DoubleProperty spacingProperty
      See Also:
  • Constructor Details

    • ThreeItemsPane

      public ThreeItemsPane()
      Constructs a new instance of the ThreeItemsPane class.
  • Method Details

    • requestLayout

      public void requestLayout()
      Overrides:
      requestLayout in class javafx.scene.Parent
    • getContentBias

      public javafx.geometry.Orientation getContentBias()
      Overrides:
      getContentBias in class javafx.scene.Node
      Returns:
      null unless one of its children has a content bias.
    • getOrientation

      public final javafx.geometry.Orientation getOrientation()
      Gets the value of the orientation property.
      Property description:
      Returns the property object for the orientation of the ThreeItemsPane. This property determines whether the layout of the items is horizontal or vertical.
      Returns:
      the value of the orientation property
      See Also:
    • orientationProperty

      public final javafx.beans.property.ObjectProperty<javafx.geometry.Orientation> orientationProperty()
      Returns the property object for the orientation of the ThreeItemsPane. This property determines whether the layout of the items is horizontal or vertical.
      Returns:
      the orientation property
      See Also:
    • setOrientation

      public void setOrientation(javafx.geometry.Orientation orientation)
      Sets the value of the orientation property.
      Property description:
      Returns the property object for the orientation of the ThreeItemsPane. This property determines whether the layout of the items is horizontal or vertical.
      Parameters:
      orientation - the value for the orientation property
      See Also:
    • getItem1

      public final javafx.scene.Node getItem1()
      Gets the value of the item1 property.
      Property description:
      Returns the property object for the first item in the ThreeItemsPane. This property represents the first Node managed by the pane.
      Returns:
      the value of the item1 property
      See Also:
    • item1Property

      public final javafx.beans.property.ObjectProperty<javafx.scene.Node> item1Property()
      Returns the property object for the first item in the ThreeItemsPane. This property represents the first Node managed by the pane.
      Returns:
      the property object representing the first item Node
      See Also:
    • setItem1

      public final void setItem1(javafx.scene.Node item1)
      Sets the value of the item1 property.
      Property description:
      Returns the property object for the first item in the ThreeItemsPane. This property represents the first Node managed by the pane.
      Parameters:
      item1 - the value for the item1 property
      See Also:
    • getItem2

      public final javafx.scene.Node getItem2()
      Gets the value of the item2 property.
      Property description:
      Returns the property object for the second item in the ThreeItemsPane. This property represents the second Node managed by the pane.
      Returns:
      the value of the item2 property
      See Also:
    • item2Property

      public final javafx.beans.property.ObjectProperty<javafx.scene.Node> item2Property()
      Returns the property object for the second item in the ThreeItemsPane. This property represents the second Node managed by the pane.
      Returns:
      the property object representing the second item Node
      See Also:
    • setItem2

      public final void setItem2(javafx.scene.Node item2)
      Sets the value of the item2 property.
      Property description:
      Returns the property object for the second item in the ThreeItemsPane. This property represents the second Node managed by the pane.
      Parameters:
      item2 - the value for the item2 property
      See Also:
    • getItem3

      public final javafx.scene.Node getItem3()
      Gets the value of the item3 property.
      Property description:
      Returns the property object for the third item in the ThreeItemsPane. This property represents the third Node managed by the pane.
      Returns:
      the value of the item3 property
      See Also:
    • item3Property

      public final javafx.beans.property.ObjectProperty<javafx.scene.Node> item3Property()
      Returns the property object for the third item in the ThreeItemsPane. This property represents the third Node managed by the pane.
      Returns:
      the property object representing the first item Node
      See Also:
    • setItem3

      public final void setItem3(javafx.scene.Node item3)
      Sets the value of the item3 property.
      Property description:
      Returns the property object for the third item in the ThreeItemsPane. This property represents the third Node managed by the pane.
      Parameters:
      item3 - the value for the item3 property
      See Also:
    • getSpacing

      public final double getSpacing()
      Gets the value of the spacing property.
      Property description:
      Returns:
      the value of the spacing property
      See Also:
    • spacingProperty

      public final javafx.beans.property.DoubleProperty spacingProperty()
      Returns:
      the spacing property
      See Also:
    • setSpacing

      public final void setSpacing(double spacing)
      Sets the value of the spacing property.
      Property description:
      Parameters:
      spacing - the value for the spacing property
      See Also:
    • layoutChildren

      protected void layoutChildren()
      Overrides:
      layoutChildren in class javafx.scene.Parent
    • 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
    • computeMaxHeight

      protected double computeMaxHeight(double width)
      Overrides:
      computeMaxHeight in class javafx.scene.layout.Region
    • computePrefWidth

      protected double computePrefWidth(double height)
      Overrides:
      computePrefWidth in class javafx.scene.layout.Region
    • computeMinWidth

      protected double computeMinWidth(double height)
      Overrides:
      computeMinWidth in class javafx.scene.layout.Region
    • computeMaxWidth

      protected double computeMaxWidth(double height)
      Overrides:
      computeMaxWidth in class javafx.scene.layout.Region