T
- The type of the underlying data model for the UI control.public abstract class TableSelectionModel<T> extends MultipleSelectionModel<T>
TableView
and TreeTableView
.Type | Property and Description |
---|---|
BooleanProperty |
cellSelectionEnabled
A boolean property used to represent whether the table is in
row or cell selection modes.
|
selectionMode
selectedIndex, selectedItem
Constructor and Description |
---|
TableSelectionModel() |
Modifier and Type | Method and Description |
---|---|
BooleanProperty |
cellSelectionEnabledProperty()
A boolean property used to represent whether the table is in
row or cell selection modes.
|
void |
clearAndSelect(int row)
A method that clears any selection prior to setting the selection to the
given index.
|
abstract void |
clearAndSelect(int row,
TableColumnBase<T,?> column)
Clears all selection, and then selects the cell at the given row/column
intersection.
|
void |
clearSelection()
Clears the selection model of all selected indices.
|
void |
clearSelection(int index)
This method will clear the selection of the item in the given index.
|
abstract void |
clearSelection(int row,
TableColumnBase<T,?> column)
Removes selection from the specified row/column position (in view indexes).
|
protected abstract void |
focus(int index) |
protected abstract int |
getFocusedIndex() |
protected abstract int |
getItemCount()
Returns the number of items in the data model that underpins the control.
|
protected abstract T |
getModelItem(int index)
Returns the item at the given index.
|
ObservableList<Integer> |
getSelectedIndices()
Returns a read-only ObservableList of all selected indices.
|
ObservableList<T> |
getSelectedItems()
Returns a read-only ObservableList of all selected items.
|
boolean |
isCellSelectionEnabled()
Gets the value of the property cellSelectionEnabled.
|
boolean |
isEmpty()
This method is available to test whether there are any selected
indices/items.
|
boolean |
isSelected(int index)
Convenience method to inform if the given index is currently selected
in this SelectionModel.
|
abstract boolean |
isSelected(int row,
TableColumnBase<T,?> column)
Convenience function which tests whether the given row and column index
is currently selected in this table instance.
|
void |
select(int row)
This will select the given index in the selection model, assuming the
index is within the valid range (i.e.
|
abstract void |
select(int row,
TableColumnBase<T,?> column)
Selects the cell at the given row/column intersection.
|
void |
select(T obj)
This method will attempt to select the index that contains the given
object.
|
abstract void |
selectAboveCell()
Selects the cell directly above the currently selected cell.
|
void |
selectAll()
Convenience method to select all available indices.
|
abstract void |
selectBelowCell()
Selects the cell directly below the currently selected cell.
|
void |
selectFirst()
This method will attempt to select the first index in the control.
|
void |
selectIndices(int row,
int... rows)
This method allows for one or more selections to be set at the same time.
|
void |
selectLast()
This method will attempt to select the last index in the control.
|
abstract void |
selectLeftCell()
Selects the cell to the left of the currently selected cell.
|
void |
selectNext()
This method will attempt to select the index directly after the current
focused index.
|
void |
selectPrevious()
This method will attempt to select the index directly before the current
focused index.
|
abstract void |
selectRange(int minRow,
TableColumnBase<T,?> minColumn,
int maxRow,
TableColumnBase<T,?> maxColumn)
Selects the cells in the range (minRow, minColumn) to (maxRow, maxColumn),
inclusive.
|
abstract void |
selectRightCell()
Selects the cell to the right of the currently selected cell.
|
void |
setCellSelectionEnabled(boolean value)
Sets the value of the property cellSelectionEnabled.
|
getSelectionMode, selectionModeProperty, selectRange, setSelectionMode
getSelectedIndex, getSelectedItem, selectedIndexProperty, selectedItemProperty, setSelectedIndex, setSelectedItem
public final BooleanProperty cellSelectionEnabledProperty
cellSelectionEnabled
to be true results in cells being
able to be selected (but not rows).public abstract boolean isSelected(int row, TableColumnBase<T,?> column)
public abstract void select(int row, TableColumnBase<T,?> column)
public abstract void clearAndSelect(int row, TableColumnBase<T,?> column)
public abstract void clearSelection(int row, TableColumnBase<T,?> column)
public abstract void selectLeftCell()
public abstract void selectRightCell()
public abstract void selectAboveCell()
public abstract void selectBelowCell()
public abstract void selectRange(int minRow, TableColumnBase<T,?> minColumn, int maxRow, TableColumnBase<T,?> maxColumn)
public final BooleanProperty cellSelectionEnabledProperty()
cellSelectionEnabled
to be true results in cells being
able to be selected (but not rows).public final void setCellSelectionEnabled(boolean value)
cellSelectionEnabled
to be true results in cells being
able to be selected (but not rows).public final boolean isCellSelectionEnabled()
cellSelectionEnabled
to be true results in cells being
able to be selected (but not rows).public ObservableList<Integer> getSelectedIndices()
MultipleSelectionModel
Returns a read-only ObservableList of all selected indices. The
ObservableList will be updated by the selection model to always reflect
changes in selection. This can be observed by adding a
ListChangeListener
to the returned ObservableList.
getSelectedIndices
in class MultipleSelectionModel<T>
public ObservableList<T> getSelectedItems()
MultipleSelectionModel
Returns a read-only ObservableList of all selected items. The
ObservableList will be updated further by the selection model to always reflect
changes in selection. This can be observed by adding a
ListChangeListener
to the returned ObservableList.
getSelectedItems
in class MultipleSelectionModel<T>
protected abstract int getItemCount()
listView.getItems().size()
. The valid range of selectable
indices is between 0 and whatever is returned by this method.protected abstract T getModelItem(int index)
listView.getItems().get(index)
.index
- The index of the item that is requested from the underlying
data model.protected abstract void focus(int index)
protected abstract int getFocusedIndex()
public void clearAndSelect(int row)
SelectionModel
SelectionModel.clearSelection()
first, meaning that observers that are listening to
the selected index
property will not
see the selected index being temporarily set to -1.clearAndSelect
in class SelectionModel<T>
row
- The index that should be the only selected index in this
selection model.public void select(int row)
SelectionModel
This will select the given index in the selection model, assuming the index is within the valid range (i.e. greater than or equal to zero, and less than the total number of items in the underlying data model).
If there is already one or more indices selected in this model, calling
this method will not clear these selections - to do so it is
necessary to first call SelectionModel.clearSelection()
.
If the index is already selected, it will not be selected again, or
unselected. However, if multiple selection is implemented, then calling
select on an already selected index will have the effect of making the index
the new selected index (as returned by SelectionModel.getSelectedIndex()
.
select
in class SelectionModel<T>
row
- The position of the item to select in the selection model.public void select(T obj)
SelectionModel
This method will attempt to select the index that contains the given object. It will iterate through the underlying data model until it finds an item whose value is equal to the given object. At this point it will stop iterating - this means that this method will not select multiple indices.
select
in class SelectionModel<T>
obj
- The object to attempt to select in the underlying data model.public void selectIndices(int row, int... rows)
MultipleSelectionModel
This method allows for one or more selections to be set at the same time. It will ignore any value that is not within the valid range (i.e. greater than or equal to zero, and less than the total number of items in the underlying data model). Any duplication of indices will be ignored.
If there is already one or more indices selected in this model, calling this method will not clear these selections - to do so it is necessary to first call clearSelection.
The last valid value given will become the selected index / selected item.
selectIndices
in class MultipleSelectionModel<T>
public void selectAll()
MultipleSelectionModel
Convenience method to select all available indices.
selectAll
in class MultipleSelectionModel<T>
public void selectFirst()
MultipleSelectionModel
This method will attempt to select the first index in the control. If clearSelection is not called first, this method will have the result of selecting the first index, whilst retaining the selection of any other currently selected indices.
If the first index is already selected, calling this method will have no result, and no selection event will take place.
selectFirst
in class MultipleSelectionModel<T>
public void selectLast()
MultipleSelectionModel
This method will attempt to select the last index in the control. If clearSelection is not called first, this method will have the result of selecting the last index, whilst retaining the selection of any other currently selected indices.
If the last index is already selected, calling this method will have no result, and no selection event will take place.
selectLast
in class MultipleSelectionModel<T>
public void clearSelection(int index)
SelectionModel
This method will clear the selection of the item in the given index. If the given index is not selected, nothing will happen.
clearSelection
in class SelectionModel<T>
index
- The selected item to deselect.public void clearSelection()
SelectionModel
Clears the selection model of all selected indices.
clearSelection
in class SelectionModel<T>
public boolean isSelected(int index)
SelectionModel
Convenience method to inform if the given index is currently selected
in this SelectionModel. Is functionally equivalent to calling
getSelectedIndices().contains(index)
.
isSelected
in class SelectionModel<T>
index
- The index to check as to whether it is currently selected
or not.public boolean isEmpty()
SelectionModel
isEmpty
in class SelectionModel<T>
public void selectPrevious()
SelectionModel
This method will attempt to select the index directly before the current focused index. If clearSelection is not called first, this method will have the result of selecting the previous index, whilst retaining the selection of any other currently selected indices.
Calling this method will only succeed if:
If any of these conditions is false, no selection event will take place.
selectPrevious
in class SelectionModel<T>
public void selectNext()
SelectionModel
This method will attempt to select the index directly after the current focused index. If clearSelection is not called first, this method will have the result of selecting the next index, whilst retaining the selection of any other currently selected indices.
Calling this method will only succeed if:
If any of these conditions is false, no selection event will take place.
selectNext
in class SelectionModel<T>
Submit a bug or feature
For further API reference and developer documentation, see Java SE Documentation. That documentation contains more detailed, developer-targeted descriptions, with conceptual overviews, definitions of terms, workarounds, and working code examples.
Copyright © 2008, 2020, Oracle and/or its affiliates. All rights reserved. Use is subject to license terms. Also see the documentation redistribution policy.