Class ItemPagingControlBase<T>

java.lang.Object
javafx.scene.Node
javafx.scene.Parent
javafx.scene.layout.Region
javafx.scene.control.Control
com.dlsc.gemsfx.paging.PagingControlBase
com.dlsc.gemsfx.paging.ItemPagingControlBase<T>
Type Parameters:
T - the type of the items shown in the control
All Implemented Interfaces:
javafx.css.Styleable, javafx.event.EventTarget, javafx.scene.control.Skinnable
Direct Known Subclasses:
PagingGridTableView, PagingListView

public abstract class ItemPagingControlBase<T> extends PagingControlBase
The abstract superclass for PagingListView and PagingGridTableView. It manages the common attributes of these paging controls, such as the loading service, the loader, the loading status, the load delay, the "fill rows" attribute, etc ...
  • Nested Class Summary

  • Property Summary

    Properties
    Type
    Property
    Description
    final javafx.beans.property.LongProperty
    The delay in milliseconds before the list view will display the progress indicator for long-running load operations.
    final javafx.beans.property.BooleanProperty
    The control might not have enough data to fill its last page with items / cells.
    final javafx.beans.property.LongProperty
    The delay in milliseconds before the loading service will actually try to retrieve the data from (for example) a backend.
    final javafx.beans.property.ObjectProperty<javafx.util.Callback<PagingLoadRequest, PagingLoadResponse<T>>>
    Provides access to the loader property, which is a callback used to handle loading of paginated data.
    final javafx.beans.property.ObjectProperty<LoadingService<T>>
    Returns the service responsible for executing the actual loading of the data on a background thread.
    final javafx.beans.property.ObjectProperty<LoadingPane.Status>
    The loading status used for the wrapped LoadingPane.
    final javafx.beans.property.ObjectProperty<Consumer<T>>
    A callback for opening an item represented by a row in the table view.
    final javafx.beans.property.ObjectProperty<javafx.geometry.Side>
    Controls on which side the paging controls should be located.
    final javafx.beans.property.ObjectProperty<javafx.scene.Node>
    The Node to show to the user when the PagingListView has no content to show.
    final javafx.beans.property.ObjectProperty<javafx.scene.control.MultipleSelectionModel<T>>
    The SelectionModel provides the API through which it is possible to select single or multiple items within a ListView, as well as inspect which items have been selected by the user.
    final javafx.beans.property.BooleanProperty
    A flag used to control the visibility of the paging controls (page buttons, previous, next, etc...).
    final javafx.beans.property.BooleanProperty
    Controls whether the control uses a scroll pane to wrap its content.

    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
  • 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
    Modifier
    Constructor
    Description
    protected
    Constructs an instance of ItemPagingControlBase and initializes the paging and loading service behavior.
  • Method Summary

    Modifier and Type
    Method
    Description
    final javafx.beans.property.LongProperty
    The delay in milliseconds before the list view will display the progress indicator for long-running load operations.
    final javafx.beans.property.BooleanProperty
    The control might not have enough data to fill its last page with items / cells.
    static List<javafx.css.CssMetaData<? extends javafx.css.Styleable, ?>>
    Gets the CssMetaData associated with this class, which may include the CssMetaData of its superclasses.
    final long
    Gets the value of the commitLoadStatusDelay property.
    List<javafx.css.CssMetaData<? extends javafx.css.Styleable, ?>>
     
    final javafx.collections.ObservableList<T>
    Returns an observable list with the items shown by the current page.
    final long
    Gets the value of the loadDelayInMillis property.
    final javafx.util.Callback<PagingLoadRequest, PagingLoadResponse<T>>
    Gets the value of the loader property.
    Gets the value of the loadingService property.
    Gets the value of the loadingStatus property.
    final Consumer<T>
    Gets the value of the onOpenItem property.
    final javafx.geometry.Side
    Gets the value of the pagingControlsLocation property.
    final javafx.scene.Node
    Gets the value of the placeholder property.
    final javafx.scene.control.MultipleSelectionModel<T>
    Returns the currently installed selection model.
    final boolean
    Gets the value of the fillLastPage property.
    final boolean
    Gets the value of the showPagingControls property.
    final boolean
    Gets the value of the usingScrollPane property.
    final javafx.beans.property.LongProperty
    The delay in milliseconds before the loading service will actually try to retrieve the data from (for example) a backend.
    final javafx.beans.property.ObjectProperty<javafx.util.Callback<PagingLoadRequest, PagingLoadResponse<T>>>
    Provides access to the loader property, which is a callback used to handle loading of paginated data.
    final javafx.beans.property.ObjectProperty<LoadingService<T>>
    Returns the service responsible for executing the actual loading of the data on a background thread.
    final javafx.beans.property.ObjectProperty<LoadingPane.Status>
    The loading status used for the wrapped LoadingPane.
    final javafx.beans.property.ObjectProperty<Consumer<T>>
    A callback for opening an item represented by a row in the table view.
    final javafx.beans.property.ObjectProperty<javafx.geometry.Side>
    Controls on which side the paging controls should be located.
    final javafx.beans.property.ObjectProperty<javafx.scene.Node>
    The Node to show to the user when the PagingListView has no content to show.
    abstract void
    Triggers an explicit refresh of the control.
    final void
    Triggers an explicit reload of the list view.
    final javafx.beans.property.ObjectProperty<javafx.scene.control.MultipleSelectionModel<T>>
    The SelectionModel provides the API through which it is possible to select single or multiple items within a ListView, as well as inspect which items have been selected by the user.
    final void
    setCommitLoadStatusDelay(long commitLoadStatusDelay)
    Sets the value of the commitLoadStatusDelay property.
    final void
    setFillLastPage(boolean fillLastPage)
    Sets the value of the fillLastPage property.
    final void
    setLoadDelayInMillis(long loadDelayInMillis)
    Sets the value of the loadDelayInMillis property.
    final void
    setLoader(javafx.util.Callback<PagingLoadRequest, PagingLoadResponse<T>> loader)
    Sets the value of the loader property.
    final void
    Sets the value of the loadingService property.
    final void
    Sets the value of the loadingStatus property.
    final void
    setOnOpenItem(Consumer<T> onOpenItem)
    Sets the value of the onOpenItem property.
    final void
    setPagingControlsLocation(javafx.geometry.Side pagingControlsLocation)
    Sets the value of the pagingControlsLocation property.
    final void
    setPlaceholder(javafx.scene.Node value)
    Sets the value of the placeholder property.
    final void
    setSelectionModel(javafx.scene.control.MultipleSelectionModel<T> value)
    Sets the MultipleSelectionModel to be used in the ListView.
    final void
    setShowPagingControls(boolean showPagingControls)
    Sets the value of the showPagingControls property.
    final void
    setUsingScrollPane(boolean usingScrollPane)
    Sets the value of the usingScrollPane property.
    final javafx.beans.property.BooleanProperty
    A flag used to control the visibility of the paging controls (page buttons, previous, next, etc...).
    final javafx.beans.property.BooleanProperty
    Controls whether the control uses a scroll pane to wrap its content.

    Methods inherited from class javafx.scene.control.Control

    computeMaxHeight, computeMaxWidth, computeMinHeight, computeMinWidth, computePrefHeight, computePrefWidth, contextMenuProperty, createDefaultSkin, executeAccessibleAction, getBaselineOffset, getContextMenu, getCssMetaData, getInitialFocusTraversable, getSkin, getTooltip, isResizable, layoutChildren, 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, 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

    getChildren, getChildrenUnmodifiable, getManagedChildren, getStylesheets, isNeedsLayout, layout, lookup, needsLayoutProperty, 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, fireEvent, focusedProperty, focusTraversableProperty, focusVisibleProperty, focusWithinProperty, getAccessibleHelp, getAccessibleRole, getAccessibleRoleDescription, getAccessibleText, getBlendMode, getBoundsInLocal, getBoundsInParent, getCacheHint, getClip, getContentBias, getCursor, getDepthTest, getEffect, getEffectiveNodeOrientation, getEventDispatcher, getId, getInitialCursor, 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

  • Constructor Details

    • ItemPagingControlBase

      protected ItemPagingControlBase()
      Constructs an instance of ItemPagingControlBase and initializes the paging and loading service behavior. This constructor sets up listeners and bindings for various properties to control the behavior of the pagination mechanism and the underlying loading service. Specifically:
      • Automatically unbinds and resets the state of the previous loading service when a new one is set.
      • Binds the new loading service's properties such as page, page size, load delay, and loader to their corresponding properties in this control.
      • Updates the loading status based on the state of the new loading service.
      • Sets up listeners for reloading or refreshing the data whenever relevant properties, such as page or page size, are changed.
      • Adds validation for certain operations, ensuring that invalid configurations such as negative load delays or unsupported paging control locations throw exceptions with descriptive error messages.
      Additionally, the constructor initializes the loading service with a default LoadingService, applies delay validation, and specifies constraints for the paging controls' location.
  • Method Details

    • getLoadingStatus

      public final LoadingPane.Status getLoadingStatus()
      Gets the value of the loadingStatus property.
      Property description:
      The loading status used for the wrapped LoadingPane. The loading pane will appear if the loader takes a long time to return the new page items.
      Returns:
      the value of the loadingStatus property
      See Also:
    • loadingStatusProperty

      public final javafx.beans.property.ObjectProperty<LoadingPane.Status> loadingStatusProperty()
      The loading status used for the wrapped LoadingPane. The loading pane will appear if the loader takes a long time to return the new page items.
      Returns:
      the loading status
      See Also:
    • setLoadingStatus

      public final void setLoadingStatus(LoadingPane.Status loadingStatus)
      Sets the value of the loadingStatus property.
      Property description:
      The loading status used for the wrapped LoadingPane. The loading pane will appear if the loader takes a long time to return the new page items.
      Parameters:
      loadingStatus - the value for the loadingStatus property
      See Also:
    • getLoadDelayInMillis

      public final long getLoadDelayInMillis()
      Gets the value of the loadDelayInMillis property.
      Property description:
      The delay in milliseconds before the loading service will actually try to retrieve the data from (for example) a backend. This delay is around a few hundred milliseconds by default. Delaying the loading has the advantage that sudden property changes will not trigger multiple backend queries but will get batched together in a single reload operation.
      Returns:
      the value of the loadDelayInMillis property
      See Also:
    • loadDelayInMillisProperty

      public final javafx.beans.property.LongProperty loadDelayInMillisProperty()
      The delay in milliseconds before the loading service will actually try to retrieve the data from (for example) a backend. This delay is around a few hundred milliseconds by default. Delaying the loading has the advantage that sudden property changes will not trigger multiple backend queries but will get batched together in a single reload operation.
      Returns:
      the delay before data will actually be loaded
      See Also:
    • setLoadDelayInMillis

      public final void setLoadDelayInMillis(long loadDelayInMillis)
      Sets the value of the loadDelayInMillis property.
      Property description:
      The delay in milliseconds before the loading service will actually try to retrieve the data from (for example) a backend. This delay is around a few hundred milliseconds by default. Delaying the loading has the advantage that sudden property changes will not trigger multiple backend queries but will get batched together in a single reload operation.
      Parameters:
      loadDelayInMillis - the value for the loadDelayInMillis property
      See Also:
    • loadingServiceProperty

      public final javafx.beans.property.ObjectProperty<LoadingService<T>> loadingServiceProperty()
      Returns the service responsible for executing the actual loading of the data on a background thread.
      Returns:
      the loading service
      See Also:
    • setLoadingService

      public final void setLoadingService(LoadingService<T> loadingService)
      Sets the value of the loadingService property.
      Property description:
      Returns the service responsible for executing the actual loading of the data on a background thread.
      Parameters:
      loadingService - the value for the loadingService property
      See Also:
    • getLoadingService

      public final LoadingService<T> getLoadingService()
      Gets the value of the loadingService property.
      Property description:
      Returns the service responsible for executing the actual loading of the data on a background thread.
      Returns:
      the value of the loadingService property
      See Also:
    • getCommitLoadStatusDelay

      public final long getCommitLoadStatusDelay()
      Gets the value of the commitLoadStatusDelay property.
      Property description:
      The delay in milliseconds before the list view will display the progress indicator for long-running load operations.
      Returns:
      the value of the commitLoadStatusDelay property
      See Also:
    • commitLoadStatusDelayProperty

      public final javafx.beans.property.LongProperty commitLoadStatusDelayProperty()
      The delay in milliseconds before the list view will display the progress indicator for long-running load operations.
      Returns:
      the commit delay for the nested loading pane
      See Also:
    • setCommitLoadStatusDelay

      public final void setCommitLoadStatusDelay(long commitLoadStatusDelay)
      Sets the value of the commitLoadStatusDelay property.
      Property description:
      The delay in milliseconds before the list view will display the progress indicator for long-running load operations.
      Parameters:
      commitLoadStatusDelay - the value for the commitLoadStatusDelay property
      See Also:
    • getLoader

      public final javafx.util.Callback<PagingLoadRequest, PagingLoadResponse<T>> getLoader()
      Gets the value of the loader property.
      Property description:
      Provides access to the loader property, which is a callback used to handle loading of paginated data. The callback is responsible for processing PagingLoadRequest and returning the corresponding PagingLoadResponse.
      Returns:
      the value of the loader property
      See Also:
    • loaderProperty

      public final javafx.beans.property.ObjectProperty<javafx.util.Callback<PagingLoadRequest, PagingLoadResponse<T>>> loaderProperty()
      Provides access to the loader property, which is a callback used to handle loading of paginated data. The callback is responsible for processing PagingLoadRequest and returning the corresponding PagingLoadResponse.
      Returns:
      the loader property
      See Also:
    • setLoader

      public final void setLoader(javafx.util.Callback<PagingLoadRequest, PagingLoadResponse<T>> loader)
      Sets the value of the loader property.
      Property description:
      Provides access to the loader property, which is a callback used to handle loading of paginated data. The callback is responsible for processing PagingLoadRequest and returning the corresponding PagingLoadResponse.
      Parameters:
      loader - the value for the loader property
      See Also:
    • isFillLastPage

      public final boolean isFillLastPage()
      Gets the value of the fillLastPage property.
      Property description:
      The control might not have enough data to fill its last page with items / cells. This flag can be used to control whether we want the control to become smaller because of missing items or if we want the view to fill the page with empty cells.

      Can be set via CSS using the -fx-fill-last-page property. Valid values are: true, false. The default value is false.

      Returns:
      the value of the fillLastPage property
      See Also:
    • fillLastPageProperty

      public final javafx.beans.property.BooleanProperty fillLastPageProperty()
      The control might not have enough data to fill its last page with items / cells. This flag can be used to control whether we want the control to become smaller because of missing items or if we want the view to fill the page with empty cells.

      Can be set via CSS using the -fx-fill-last-page property. Valid values are: true, false. The default value is false.

      Returns:
      a flag used to control whether the last page will be filled with empty cells if needed
      See Also:
    • setFillLastPage

      public final void setFillLastPage(boolean fillLastPage)
      Sets the value of the fillLastPage property.
      Property description:
      The control might not have enough data to fill its last page with items / cells. This flag can be used to control whether we want the control to become smaller because of missing items or if we want the view to fill the page with empty cells.

      Can be set via CSS using the -fx-fill-last-page property. Valid values are: true, false. The default value is false.

      Parameters:
      fillLastPage - the value for the fillLastPage property
      See Also:
    • getItemsOnCurrentPage

      public final javafx.collections.ObservableList<T> getItemsOnCurrentPage()
      Returns an observable list with the items shown by the current page.
      Returns:
      the currently shown items
    • getPagingControlsLocation

      public final javafx.geometry.Side getPagingControlsLocation()
      Gets the value of the pagingControlsLocation property.
      Property description:
      Controls on which side the paging controls should be located. Currently only Side.TOP and Side.BOTTOM are supported.

      Can be set via CSS using the -fx-paging-controls-location property. Valid values are: TOP, BOTTOM. The default value is BOTTOM.

      Returns:
      the value of the pagingControlsLocation property
      See Also:
    • pagingControlsLocationProperty

      public final javafx.beans.property.ObjectProperty<javafx.geometry.Side> pagingControlsLocationProperty()
      Controls on which side the paging controls should be located. Currently only Side.TOP and Side.BOTTOM are supported.

      Can be set via CSS using the -fx-paging-controls-location property. Valid values are: TOP, BOTTOM. The default value is BOTTOM.

      Returns:
      the location where the paging controls will be shown
      See Also:
    • setPagingControlsLocation

      public final void setPagingControlsLocation(javafx.geometry.Side pagingControlsLocation)
      Sets the value of the pagingControlsLocation property.
      Property description:
      Controls on which side the paging controls should be located. Currently only Side.TOP and Side.BOTTOM are supported.

      Can be set via CSS using the -fx-paging-controls-location property. Valid values are: TOP, BOTTOM. The default value is BOTTOM.

      Parameters:
      pagingControlsLocation - the value for the pagingControlsLocation property
      See Also:
    • isShowPagingControls

      public final boolean isShowPagingControls()
      Gets the value of the showPagingControls property.
      Property description:
      A flag used to control the visibility of the paging controls (page buttons, previous, next, etc...).

      Can be set via CSS using the -fx-show-paging-controls property. Valid values are: true, false. The default value is true.

      Returns:
      the value of the showPagingControls property
      See Also:
    • showPagingControlsProperty

      public final javafx.beans.property.BooleanProperty showPagingControlsProperty()
      A flag used to control the visibility of the paging controls (page buttons, previous, next, etc...).

      Can be set via CSS using the -fx-show-paging-controls property. Valid values are: true, false. The default value is true.

      Returns:
      a property that is true if the paging controls should be visible
      See Also:
    • setShowPagingControls

      public final void setShowPagingControls(boolean showPagingControls)
      Sets the value of the showPagingControls property.
      Property description:
      A flag used to control the visibility of the paging controls (page buttons, previous, next, etc...).

      Can be set via CSS using the -fx-show-paging-controls property. Valid values are: true, false. The default value is true.

      Parameters:
      showPagingControls - the value for the showPagingControls property
      See Also:
    • placeholderProperty

      public final javafx.beans.property.ObjectProperty<javafx.scene.Node> placeholderProperty()
      The Node to show to the user when the PagingListView has no content to show. This happens when the list model has no data or when a filter has been applied to the list model, resulting in there being nothing to show the user.
      Returns:
      the placeholder property
      See Also:
    • setPlaceholder

      public final void setPlaceholder(javafx.scene.Node value)
      Sets the value of the placeholder property.
      Property description:
      The Node to show to the user when the PagingListView has no content to show. This happens when the list model has no data or when a filter has been applied to the list model, resulting in there being nothing to show the user.
      Parameters:
      value - the value for the placeholder property
      See Also:
    • getPlaceholder

      public final javafx.scene.Node getPlaceholder()
      Gets the value of the placeholder property.
      Property description:
      The Node to show to the user when the PagingListView has no content to show. This happens when the list model has no data or when a filter has been applied to the list model, resulting in there being nothing to show the user.
      Returns:
      the value of the placeholder property
      See Also:
    • getOnOpenItem

      public final Consumer<T> getOnOpenItem()
      Gets the value of the onOpenItem property.
      Property description:
      A callback for opening an item represented by a row in the table view.
      Returns:
      the value of the onOpenItem property
      See Also:
    • onOpenItemProperty

      public final javafx.beans.property.ObjectProperty<Consumer<T>> onOpenItemProperty()
      A callback for opening an item represented by a row in the table view.
      Returns:
      a callback for opening table items
      See Also:
    • setOnOpenItem

      public final void setOnOpenItem(Consumer<T> onOpenItem)
      Sets the value of the onOpenItem property.
      Property description:
      A callback for opening an item represented by a row in the table view.
      Parameters:
      onOpenItem - the value for the onOpenItem property
      See Also:
    • isUsingScrollPane

      public final boolean isUsingScrollPane()
      Gets the value of the usingScrollPane property.
      Property description:
      Controls whether the control uses a scroll pane to wrap its content.

      Can be set via CSS using the -fx-use-scroll-pane property. Valid values are: true, false. The default value is false.

      Returns:
      the value of the usingScrollPane property
      See Also:
    • usingScrollPaneProperty

      public final javafx.beans.property.BooleanProperty usingScrollPaneProperty()
      Controls whether the control uses a scroll pane to wrap its content.

      Can be set via CSS using the -fx-use-scroll-pane property. Valid values are: true, false. The default value is false.

      Returns:
      a flag indicating whether a scroll pane is used
      See Also:
    • setUsingScrollPane

      public final void setUsingScrollPane(boolean usingScrollPane)
      Sets the value of the usingScrollPane property.
      Property description:
      Controls whether the control uses a scroll pane to wrap its content.

      Can be set via CSS using the -fx-use-scroll-pane property. Valid values are: true, false. The default value is false.

      Parameters:
      usingScrollPane - the value for the usingScrollPane property
      See Also:
    • setSelectionModel

      public final void setSelectionModel(javafx.scene.control.MultipleSelectionModel<T> value)
      Sets the MultipleSelectionModel to be used in the ListView. Despite a ListView requiring a MultipleSelectionModel, it is possible to configure it to only allow single selection (see MultipleSelectionModel.setSelectionMode(javafx.scene.control.SelectionMode) for more information).
      Parameters:
      value - the MultipleSelectionModel to be used in this ListView
    • getSelectionModel

      public final javafx.scene.control.MultipleSelectionModel<T> getSelectionModel()
      Returns the currently installed selection model.
      Returns:
      the currently installed selection model
    • selectionModelProperty

      public final javafx.beans.property.ObjectProperty<javafx.scene.control.MultipleSelectionModel<T>> selectionModelProperty()
      The SelectionModel provides the API through which it is possible to select single or multiple items within a ListView, as well as inspect which items have been selected by the user. Note that it has a generic type that must match the type of the ListView itself.
      Returns:
      the selectionModel property
      See Also:
    • refresh

      public abstract void refresh()
      Triggers an explicit refresh of the control. Refreshing the view does not trigger data loading.
    • reload

      public final void reload()
      Triggers an explicit reload of the list view.
    • getClassCssMetaData

      public static List<javafx.css.CssMetaData<? extends javafx.css.Styleable, ?>> getClassCssMetaData()
      Gets the CssMetaData associated with this class, which may include the CssMetaData of its superclasses.
      Returns:
      the CssMetaData
    • getControlCssMetaData

      public List<javafx.css.CssMetaData<? extends javafx.css.Styleable, ?>> getControlCssMetaData()
      Overrides:
      getControlCssMetaData in class PagingControlBase