java.lang.Object
javafx.scene.Node
javafx.scene.Parent
javafx.scene.layout.Region
javafx.scene.control.Control
com.dlsc.gemsfx.MultiColumnListView<T>
- Type Parameters:
T- the item types, e.g. "Issues" or "Tickets"
- All Implemented Interfaces:
javafx.css.Styleable,javafx.event.EventTarget,javafx.scene.control.Skinnable
public class MultiColumnListView<T>
extends javafx.scene.control.Control
A view for displaying multiple columns where each column consists of a header
control and a
ListView. The control allows the user to rearrange the items in each
ListView and also to drag and drop items from one column to another.-
Property Summary
PropertiesTypePropertyDescriptionfinal javafx.beans.property.ObjectProperty<javafx.util.Callback<MultiColumnListView<T>,MultiColumnListView.ColumnListCell<T>>> The cell factory that will be used for each one of theListViewinstances.final javafx.beans.property.ListProperty<MultiColumnListView.ListViewColumn<T>>A list of columns that define how many columns will be shown inside the view.final javafx.beans.property.BooleanPropertyControls whether the user can rearrange items via drag and drop or not.final javafx.beans.property.ObjectProperty<T>final javafx.beans.property.ObjectProperty<javafx.util.Callback<MultiColumnListView<T>,javafx.scene.control.ListView<T>>> Stores the callback that will be invoked to produce newListViewinstances.final javafx.beans.property.ObjectProperty<T>A model item that represents the "from" location during drag and drop operations.final javafx.beans.property.ObjectProperty<T>A model item that represents the "to" location during drag and drop operations.final javafx.beans.property.ObjectProperty<javafx.util.Callback<Integer,javafx.scene.Node>> An optional factory for creating separators that will be placed between columns.final javafx.beans.property.BooleanPropertyDetermines whether the headers will be shown or not.Properties inherited from class javafx.scene.control.Control
contextMenu, skin, tooltipProperties inherited from class javafx.scene.layout.Region
background, border, cacheShape, centerShape, height, insets, maxHeight, maxWidth, minHeight, minWidth, opaqueInsets, padding, prefHeight, prefWidth, scaleShape, shape, snapToPixel, widthProperties inherited from class javafx.scene.Parent
needsLayoutProperties 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 ClassesModifier and TypeClassDescriptionstatic classA special list cell to be used in combination with theMultiColumnListViewcontrol.static classThe model object representing a single column. -
Field Summary
Fields inherited from class javafx.scene.layout.Region
USE_COMPUTED_SIZE, USE_PREF_SIZEFields inherited from class javafx.scene.Node
BASELINE_OFFSET_SAME_AS_HEIGHT -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionfinal javafx.beans.property.ObjectProperty<javafx.util.Callback<MultiColumnListView<T>,MultiColumnListView.ColumnListCell<T>>> The cell factory that will be used for each one of theListViewinstances.final javafx.beans.property.ListProperty<MultiColumnListView.ListViewColumn<T>>A list of columns that define how many columns will be shown inside the view.protected javafx.scene.control.Skin<?>final javafx.beans.property.BooleanPropertyControls whether the user can rearrange items via drag and drop or not.final javafx.beans.property.ObjectProperty<T>final javafx.util.Callback<MultiColumnListView<T>,MultiColumnListView.ColumnListCell<T>> Gets the value of the property cellFactory.final javafx.collections.ObservableList<MultiColumnListView.ListViewColumn<T>>Gets the value of the property columns.final TGets the value of the property draggedItem.final javafx.collections.ObservableList<T>final javafx.util.Callback<MultiColumnListView<T>,javafx.scene.control.ListView<T>> Gets the value of the property listViewFactory.final TGets the value of the property placeholderFrom.final TGets the value of the property placeholderTo.final javafx.util.Callback<Integer,javafx.scene.Node> Gets the value of the property separatorFactory.final booleanGets the value of the property disableDragAndDrop.final booleanGets the value of the property showHeaders.final javafx.beans.property.ObjectProperty<javafx.util.Callback<MultiColumnListView<T>,javafx.scene.control.ListView<T>>> Stores the callback that will be invoked to produce newListViewinstances.final javafx.beans.property.ObjectProperty<T>A model item that represents the "from" location during drag and drop operations.final javafx.beans.property.ObjectProperty<T>A model item that represents the "to" location during drag and drop operations.final javafx.beans.property.ObjectProperty<javafx.util.Callback<Integer,javafx.scene.Node>> An optional factory for creating separators that will be placed between columns.final voidsetCellFactory(javafx.util.Callback<MultiColumnListView<T>, MultiColumnListView.ColumnListCell<T>> cellFactory) Sets the value of the property cellFactory.final voidsetColumns(javafx.collections.ObservableList<MultiColumnListView.ListViewColumn<T>> columns) Sets the value of the property columns.final voidsetDisableDragAndDrop(boolean disableDragAndDrop) Sets the value of the property disableDragAndDrop.final voidsetDraggedItem(T draggedItem) Sets the value of the property draggedItem.final voidsetListViewFactory(javafx.util.Callback<MultiColumnListView<T>, javafx.scene.control.ListView<T>> listViewFactory) Sets the value of the property listViewFactory.final voidsetPlaceholderFrom(T placeholderFrom) Sets the value of the property placeholderFrom.final voidsetPlaceholderTo(T placeholderTo) Sets the value of the property placeholderTo.final voidsetSeparatorFactory(javafx.util.Callback<Integer, javafx.scene.Node> separatorFactory) Sets the value of the property separatorFactory.final voidsetShowHeaders(boolean showHeaders) Sets the value of the property showHeaders.final javafx.beans.property.BooleanPropertyDetermines whether the headers will be shown or not.Methods inherited from class javafx.scene.control.Control
computeMaxHeight, computeMaxWidth, computeMinHeight, computeMinWidth, computePrefHeight, computePrefWidth, contextMenuProperty, executeAccessibleAction, getBaselineOffset, getClassCssMetaData, getContextMenu, getControlCssMetaData, getCssMetaData, getInitialFocusTraversable, getSkin, getTooltip, isResizable, layoutChildren, queryAccessibleAttribute, setContextMenu, setSkin, setTooltip, skinProperty, tooltipPropertyMethods inherited from class javafx.scene.layout.Region
backgroundProperty, borderProperty, cacheShapeProperty, centerShapeProperty, getBackground, getBorder, getHeight, getInsets, getMaxHeight, getMaxWidth, getMinHeight, getMinWidth, getOpaqueInsets, getPadding, getPrefHeight, getPrefWidth, getShape, 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, widthPropertyMethods inherited from class javafx.scene.Parent
getChildren, getChildrenUnmodifiable, getManagedChildren, getStylesheets, isNeedsLayout, layout, lookup, needsLayoutProperty, requestLayout, requestParentLayout, setNeedsLayout, updateBoundsMethods 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, 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, visiblePropertyMethods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, wait, wait, waitMethods inherited from interface javafx.css.Styleable
getStyleableNode
-
Property Details
-
showHeaders
public final javafx.beans.property.BooleanProperty showHeadersPropertyDetermines whether the headers will be shown or not. Toggling this property will trigger a rebuild of the view.- See Also:
-
listViewFactory
public final javafx.beans.property.ObjectProperty<javafx.util.Callback<MultiColumnListView<T>,javafx.scene.control.ListView<T>>> listViewFactoryPropertyStores the callback that will be invoked to produce newListViewinstances. -
columns
public final javafx.beans.property.ListProperty<MultiColumnListView.ListViewColumn<T>> columnsPropertyA list of columns that define how many columns will be shown inside the view. The model objects in this list also store the header and the data for each column.- See Also:
-
cellFactory
public final javafx.beans.property.ObjectProperty<javafx.util.Callback<MultiColumnListView<T>,MultiColumnListView.ColumnListCell<T>>> cellFactoryPropertyThe cell factory that will be used for each one of theListViewinstances.- See Also:
-
separatorFactory
public final javafx.beans.property.ObjectProperty<javafx.util.Callback<Integer,javafx.scene.Node>> separatorFactoryPropertyAn optional factory for creating separators that will be placed between columns. The default implementation creates a region and adds the style class "column-separator". No separators will be added to the view when the factory is being set to null. -
disableDragAndDrop
public final javafx.beans.property.BooleanProperty disableDragAndDropPropertyControls whether the user can rearrange items via drag and drop or not. -
draggedItem
- See Also:
-
placeholderFrom
A model item that represents the "from" location during drag and drop operations.- See Also:
-
placeholderTo
A model item that represents the "to" location during drag and drop operations.- See Also:
-
-
Constructor Details
-
MultiColumnListView
public MultiColumnListView()Constructs a new view.
-
-
Method Details
-
createDefaultSkin
protected javafx.scene.control.Skin<?> createDefaultSkin()- Overrides:
createDefaultSkinin classjavafx.scene.control.Control
-
getUserAgentStylesheet
- Overrides:
getUserAgentStylesheetin classjavafx.scene.layout.Region
-
isShowHeaders
public final boolean isShowHeaders()Gets the value of the property showHeaders.- Property description:
- Determines whether the headers will be shown or not. Toggling this property will trigger a rebuild of the view.
-
showHeadersProperty
public final javafx.beans.property.BooleanProperty showHeadersProperty()Determines whether the headers will be shown or not. Toggling this property will trigger a rebuild of the view.- See Also:
-
setShowHeaders
public final void setShowHeaders(boolean showHeaders) Sets the value of the property showHeaders.- Property description:
- Determines whether the headers will be shown or not. Toggling this property will trigger a rebuild of the view.
-
getListViewFactory
public final javafx.util.Callback<MultiColumnListView<T>,javafx.scene.control.ListView<T>> getListViewFactory()Gets the value of the property listViewFactory.- Property description:
- Stores the callback that will be invoked to produce new
ListViewinstances.
-
listViewFactoryProperty
public final javafx.beans.property.ObjectProperty<javafx.util.Callback<MultiColumnListView<T>,javafx.scene.control.ListView<T>>> listViewFactoryProperty()Stores the callback that will be invoked to produce newListViewinstances. -
setListViewFactory
public final void setListViewFactory(javafx.util.Callback<MultiColumnListView<T>, javafx.scene.control.ListView<T>> listViewFactory) Sets the value of the property listViewFactory.- Property description:
- Stores the callback that will be invoked to produce new
ListViewinstances.
-
getColumns
Gets the value of the property columns.- Property description:
- A list of columns that define how many columns will be shown inside the view. The model objects in this list also store the header and the data for each column.
-
columnsProperty
public final javafx.beans.property.ListProperty<MultiColumnListView.ListViewColumn<T>> columnsProperty()A list of columns that define how many columns will be shown inside the view. The model objects in this list also store the header and the data for each column.- See Also:
-
setColumns
public final void setColumns(javafx.collections.ObservableList<MultiColumnListView.ListViewColumn<T>> columns) Sets the value of the property columns.- Property description:
- A list of columns that define how many columns will be shown inside the view. The model objects in this list also store the header and the data for each column.
-
getCellFactory
public final javafx.util.Callback<MultiColumnListView<T>,MultiColumnListView.ColumnListCell<T>> getCellFactory()Gets the value of the property cellFactory.- Property description:
- The cell factory that will be used for each one of the
ListViewinstances.
-
cellFactoryProperty
public final javafx.beans.property.ObjectProperty<javafx.util.Callback<MultiColumnListView<T>,MultiColumnListView.ColumnListCell<T>>> cellFactoryProperty()The cell factory that will be used for each one of theListViewinstances.- See Also:
-
setCellFactory
public final void setCellFactory(javafx.util.Callback<MultiColumnListView<T>, MultiColumnListView.ColumnListCell<T>> cellFactory) Sets the value of the property cellFactory.- Property description:
- The cell factory that will be used for each one of the
ListViewinstances.
-
getSeparatorFactory
Gets the value of the property separatorFactory.- Property description:
- An optional factory for creating separators that will be placed between columns. The default implementation creates a region and adds the style class "column-separator". No separators will be added to the view when the factory is being set to null.
-
separatorFactoryProperty
public final javafx.beans.property.ObjectProperty<javafx.util.Callback<Integer,javafx.scene.Node>> separatorFactoryProperty()An optional factory for creating separators that will be placed between columns. The default implementation creates a region and adds the style class "column-separator". No separators will be added to the view when the factory is being set to null. -
setSeparatorFactory
public final void setSeparatorFactory(javafx.util.Callback<Integer, javafx.scene.Node> separatorFactory) Sets the value of the property separatorFactory.- Property description:
- An optional factory for creating separators that will be placed between columns. The default implementation creates a region and adds the style class "column-separator". No separators will be added to the view when the factory is being set to null.
-
isDisableDragAndDrop
public final boolean isDisableDragAndDrop()Gets the value of the property disableDragAndDrop.- Property description:
- Controls whether the user can rearrange items via drag and drop or not.
-
disableDragAndDropProperty
public final javafx.beans.property.BooleanProperty disableDragAndDropProperty()Controls whether the user can rearrange items via drag and drop or not. -
setDisableDragAndDrop
public final void setDisableDragAndDrop(boolean disableDragAndDrop) Sets the value of the property disableDragAndDrop.- Property description:
- Controls whether the user can rearrange items via drag and drop or not.
-
getDraggedItem
Gets the value of the property draggedItem.- Property description:
-
draggedItemProperty
- See Also:
-
setDraggedItem
Sets the value of the property draggedItem.- Property description:
-
getDraggedItems
-
getPlaceholderFrom
Gets the value of the property placeholderFrom.- Property description:
- A model item that represents the "from" location during drag and drop operations.
-
placeholderFromProperty
A model item that represents the "from" location during drag and drop operations.- See Also:
-
setPlaceholderFrom
Sets the value of the property placeholderFrom.- Property description:
- A model item that represents the "from" location during drag and drop operations.
-
getPlaceholderTo
Gets the value of the property placeholderTo.- Property description:
- A model item that represents the "to" location during drag and drop operations.
-
placeholderToProperty
A model item that represents the "to" location during drag and drop operations.- See Also:
-
setPlaceholderTo
Sets the value of the property placeholderTo.- Property description:
- A model item that represents the "to" location during drag and drop operations.
-