Class CheckListView<T>

  • Type Parameters:
    T - The type of the data in the CheckListView.
    All Implemented Interfaces:
    javafx.css.Styleable, javafx.event.EventTarget, javafx.scene.control.Skinnable

    public class CheckListView<T>
    extends javafx.scene.control.ListView<T>
    A simple UI control that makes it possible to select zero or more items within a ListView without the need to set a custom cell factory or manually create boolean properties for each row - simply use the check model to request the current selection state.

    Screenshot

    The following screenshot shows the CheckListView with some sample data:
    Screenshot of CheckListView

    Code Example:

    To create the CheckListView shown in the screenshot, simply do the following:

     
     // create the data to show in the CheckListView 
     final ObservableList<String> strings = FXCollections.observableArrayList();
     for (int i = 0; i <= 100; i++) {
         strings.add("Item " + i);
     }
     
     // Create the CheckListView with the data 
     final CheckListView<String> checkListView = new CheckListView<>(strings);
           
     // and listen to the relevant events (e.g. when the selected indices or 
     // selected items change).
     checkListView.getCheckModel().getCheckedItems().addListener(new ListChangeListener<String>() {
         public void onChanged(ListChangeListener.Change<? extends String> c) {
             System.out.println(checkListView.getCheckModel().getCheckedItems());
         }
     });
     
    • Property Summary

      Properties 
      Type Property Description
      javafx.beans.property.ObjectProperty<IndexedCheckModel<T>> checkModel
      The check model provides the API through which it is possible to check single or multiple items within a CheckListView, as well as inspect which items have been checked by the user.
      • Properties inherited from class javafx.scene.control.ListView

        cellFactory, editable, editingIndex, fixedCellSize, focusModel, items, onEditCancel, onEditCommit, onEditStart, onScrollTo, orientation, placeholder, selectionModel
      • 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, 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.ListView

        javafx.scene.control.ListView.EditEvent<T extends java.lang.Object>
    • 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
      CheckListView()
      Creates a new CheckListView instance with an empty list of choices.
      CheckListView​(javafx.collections.ObservableList<T> items)
      Creates a new CheckListView instance with the given items available as choices.
    • Method Summary

      All Methods Instance Methods Concrete Methods 
      Modifier and Type Method Description
      javafx.beans.property.ObjectProperty<IndexedCheckModel<T>> checkModelProperty()
      The check model provides the API through which it is possible to check single or multiple items within a CheckListView, as well as inspect which items have been checked by the user.
      IndexedCheckModel<T> getCheckModel()
      Returns the currently installed check model.
      javafx.beans.property.BooleanProperty getItemBooleanProperty​(int index)
      Returns the BooleanProperty for a given item index in the CheckListView.
      javafx.beans.property.BooleanProperty getItemBooleanProperty​(T item)
      Returns the BooleanProperty for a given item in the CheckListView.
      void setCheckModel​(IndexedCheckModel<T> value)
      Sets the 'check model' to be used in the CheckListView - this is the code that is responsible for representing the selected state of each CheckBox - that is, whether each CheckBox is checked or not (and not to be confused with the selection model concept, which is used in the ListView control to represent the selection state of each row)..
      • Methods inherited from class javafx.scene.control.ListView

        cellFactoryProperty, createDefaultSkin, edit, editableProperty, editAnyEvent, editCancelEvent, editCommitEvent, editingIndexProperty, editStartEvent, fixedCellSizeProperty, focusModelProperty, getCellFactory, getClassCssMetaData, getControlCssMetaData, getEditingIndex, getFixedCellSize, getFocusModel, getItems, getOnEditCancel, getOnEditCommit, getOnEditStart, getOnScrollTo, getOrientation, getPlaceholder, getSelectionModel, isEditable, itemsProperty, onEditCancelProperty, onEditCommitProperty, onEditStartProperty, onScrollToProperty, orientationProperty, placeholderProperty, queryAccessibleAttribute, refresh, scrollTo, scrollTo, selectionModelProperty, setCellFactory, setEditable, setFixedCellSize, setFocusModel, setItems, setOnEditCancel, setOnEditCommit, setOnEditStart, setOnScrollTo, setOrientation, setPlaceholder, setSelectionModel
      • Methods inherited from class javafx.scene.control.Control

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

        clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, wait
      • Methods inherited from interface javafx.css.Styleable

        getStyleableNode
    • Property Detail

      • checkModel

        public final javafx.beans.property.ObjectProperty<IndexedCheckModel<T>> checkModelProperty
        The check model provides the API through which it is possible to check single or multiple items within a CheckListView, as well as inspect which items have been checked by the user. Note that it has a generic type that must match the type of the CheckListView itself.
    • Constructor Detail

      • CheckListView

        public CheckListView()
        Creates a new CheckListView instance with an empty list of choices.
      • CheckListView

        public CheckListView​(javafx.collections.ObservableList<T> items)
        Creates a new CheckListView instance with the given items available as choices.
        Parameters:
        items - The items to display within the CheckListView.
    • Method Detail

      • getItemBooleanProperty

        public javafx.beans.property.BooleanProperty getItemBooleanProperty​(int index)
        Returns the BooleanProperty for a given item index in the CheckListView. This is useful if you want to bind to the property.
      • getItemBooleanProperty

        public javafx.beans.property.BooleanProperty getItemBooleanProperty​(T item)
        Returns the BooleanProperty for a given item in the CheckListView. This is useful if you want to bind to the property.
      • setCheckModel

        public final void setCheckModel​(IndexedCheckModel<T> value)
        Sets the 'check model' to be used in the CheckListView - this is the code that is responsible for representing the selected state of each CheckBox - that is, whether each CheckBox is checked or not (and not to be confused with the selection model concept, which is used in the ListView control to represent the selection state of each row)..
      • getCheckModel

        public final IndexedCheckModel<T> getCheckModel()
        Returns the currently installed check model.
      • checkModelProperty

        public final javafx.beans.property.ObjectProperty<IndexedCheckModel<T>> checkModelProperty()
        The check model provides the API through which it is possible to check single or multiple items within a CheckListView, as well as inspect which items have been checked by the user. Note that it has a generic type that must match the type of the CheckListView itself.