Class TableView.TableViewSelectionModel<S>
- Type Parameters:
-
S- the type of the item contained within the TableView
public abstract static class TableView.TableViewSelectionModel<S> extends TableSelectionModel<S>
SelectionModel abstract class to allow for special support for TableView controls.- Since:
- JavaFX 2.0
Property Summary
Properties declared in class javafx.scene.control.TableSelectionModel
cellSelectionEnabled
Properties declared in class javafx.scene.control.MultipleSelectionModel
selectionMode
Properties declared in class javafx.scene.control.SelectionModel
selectedIndex, selectedItem
Constructor Summary
| Constructor | Description |
|---|---|
TableViewSelectionModel |
Builds a default TableViewSelectionModel instance with the provided TableView. |
Method Summary
| Modifier and Type | Method | Description |
|---|---|---|
void |
clearAndSelect |
A method that clears any selection prior to setting the selection to the given index. |
abstract void |
clearAndSelect |
Clears all selection, and then selects the cell at the given row/column intersection. |
void |
clearAndSelect |
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 |
This method will clear the selection of the item in the given index. |
abstract void |
clearSelection |
Removes selection from the specified row/column position (in view indexes). |
void |
clearSelection |
Removes selection from the specified row/column position (in view indexes). |
void |
focus |
Focuses the item at the given index. |
int |
getFocusedIndex() |
Gets the index of the focused item. |
protected int |
getItemCount() |
Returns the number of items in the data model that underpins the control. |
protected S |
getModelItem |
Returns the item at the given index. |
abstract ObservableList |
getSelectedCells() |
A read-only ObservableList representing the currently selected cells in this TableView. |
ObservableList |
getSelectedIndices() |
Returns a read-only ObservableList of all selected indices. |
ObservableList |
getSelectedItems() |
Returns a read-only ObservableList of all selected items. |
protected List |
getTableModel() |
Convenience method that returns getTableView().getItems(). |
TableView |
getTableView() |
Returns the TableView instance that this selection model is installed in. |
boolean |
isEmpty() |
This method is available to test whether there are any selected indices/items. |
boolean |
isSelected |
This method tests whether the given index is currently selected in this SelectionModel. |
abstract boolean |
isSelected |
Convenience function which tests whether the given row and column index is currently selected in this table instance. |
boolean |
isSelected |
Convenience function which tests whether the given row and column index is currently selected in this table instance. |
void |
select |
This will select the given index in the selection model, assuming the index is within the valid range (i.e. |
abstract void |
select |
Selects the cell at the given row/column intersection. |
void |
select |
Selects the cell at the given row/column intersection. |
void |
select |
This method will attempt to select the index that contains the given object. |
void |
selectAll() |
Convenience method to select all available indices. |
void |
selectFirst() |
This method will attempt to select the first index in the control. |
void |
selectIndices |
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. |
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. |
void |
selectRange |
Selects the cells in the range (minRow, minColumn) to (maxRow, maxColumn), inclusive. |
Methods declared in class javafx.scene.control.TableSelectionModel
cellSelectionEnabledProperty, isCellSelectionEnabled, selectAboveCell, selectBelowCell, selectLeftCell, selectRightCell, setCellSelectionEnabled
Methods declared in class javafx.scene.control.MultipleSelectionModel
getSelectionMode, selectionModeProperty, selectRange, setSelectionMode
Methods declared in class javafx.scene.control.SelectionModel
getSelectedIndex, getSelectedItem, selectedIndexProperty, selectedItemProperty, setSelectedIndex, setSelectedItem
Constructor Details
TableViewSelectionModel
public TableViewSelectionModel(TableView<S> tableView)
- Parameters:
-
tableView- The TableView upon which this selection model should operate. - Throws:
-
NullPointerException- TableView can not be null.
Method Details
getSelectedCells
public abstract ObservableList<TablePosition> getSelectedCells()
- Returns:
- a read-only ObservableList representing the currently selected cells in this TableView
isSelected
public boolean isSelected(int row, TableColumnBase<S,?> column)
- Specified by:
-
isSelectedin classTableSelectionModel<S> - Parameters:
-
row- the row -
column- the column - Returns:
- true if the given row and column index is currently selected in this table instance
isSelected
public abstract boolean isSelected(int row, TableColumn<S,?> column)
- Parameters:
-
row- the row -
column- the column - Returns:
- true if row and column index is currently selected
select
public void select(int row, TableColumnBase<S,?> column)
- Specified by:
-
selectin classTableSelectionModel<S> - Parameters:
-
row- the row -
column- the column
select
public abstract void select(int row, TableColumn<S,?> column)
- Parameters:
-
row- the row -
column- the column
clearAndSelect
public void clearAndSelect(int row, TableColumnBase<S,?> column)
- Specified by:
-
clearAndSelectin classTableSelectionModel<S> - Parameters:
-
row- the row -
column- the column
clearAndSelect
public abstract void clearAndSelect(int row, TableColumn<S,?> column)
- Parameters:
-
row- the row -
column- the column
clearSelection
public void clearSelection(int row, TableColumnBase<S,?> column)
- Specified by:
-
clearSelectionin classTableSelectionModel<S> - Parameters:
-
row- the row -
column- the column
clearSelection
public abstract void clearSelection(int row, TableColumn<S,?> column)
- Parameters:
-
row- the row -
column- the column
selectRange
public void selectRange(int minRow, TableColumnBase<S,?> minColumn, int maxRow, TableColumnBase<S,?> maxColumn)
- Specified by:
-
selectRangein classTableSelectionModel<S> - Parameters:
-
minRow- the minRow -
minColumn- the minColumn -
maxRow- the maxRow -
maxColumn- the maxColumn
getTableView
public TableView<S> getTableView()
- Returns:
- the TableView
getTableModel
protected List<S> getTableModel()
- Returns:
- The items list of the current TableView.
getModelItem
protected S getModelItem(int index)
listView.getItems().get(index).- Parameters:
-
index- The index of the item that is requested from the underlying data model. - Returns:
- Returns null if the index is out of bounds, or an element of type T that is related to the given index.
getItemCount
protected int getItemCount()
listView.getItems().size(). The valid range of selectable indices is between 0 and whatever is returned by this method.- Returns:
- the number of items in the data model that underpins the control
focus
public void focus(int row)
- Parameters:
-
row- the index of the item to be focused
getFocusedIndex
public int getFocusedIndex()
- Returns:
- the index of the focused item
getSelectedIndices
public ObservableList<Integer> getSelectedIndices()
MultipleSelectionModelReturns 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.
- Specified by:
-
getSelectedIndicesin classMultipleSelectionModel<T> - Returns:
- the list of selected indices
getSelectedItems
public ObservableList<S> getSelectedItems()
MultipleSelectionModelReturns 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.
- Specified by:
-
getSelectedItemsin classMultipleSelectionModel<T> - Returns:
- the list of selected items
clearAndSelect
public void clearAndSelect(int row)
SelectionModelSelectionModel.clearSelection() first, meaning that observers that are listening to the selected index property will not see the selected index being temporarily set to -1.- Specified by:
-
clearAndSelectin classSelectionModel<T> - Parameters:
-
row- The index that should be the only selected index in this selection model.
select
public void select(int row)
SelectionModelThis 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().
- Specified by:
-
selectin classSelectionModel<T> - Parameters:
-
row- The position of the item to select in the selection model.
select
public void select(S obj)
SelectionModelThis 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.
- Specified by:
-
selectin classSelectionModel<T> - Parameters:
-
obj- The object to attempt to select in the underlying data model.
selectIndices
public void selectIndices(int row, int... rows)
MultipleSelectionModelThis 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.
- Specified by:
-
selectIndicesin classMultipleSelectionModel<T> - Parameters:
-
row- the first index to select -
rows- zero or more additional indices to select
selectAll
public void selectAll()
MultipleSelectionModelConvenience method to select all available indices.
- Specified by:
-
selectAllin classMultipleSelectionModel<T>
selectFirst
public void selectFirst()
MultipleSelectionModelThis 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.
- Specified by:
-
selectFirstin classMultipleSelectionModel<T>
selectLast
public void selectLast()
MultipleSelectionModelThis 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.
- Specified by:
-
selectLastin classMultipleSelectionModel<T>
clearSelection
public void clearSelection(int index)
SelectionModelThis method will clear the selection of the item in the given index. If the given index is not selected, nothing will happen.
- Specified by:
-
clearSelectionin classSelectionModel<T> - Parameters:
-
index- The selected item to deselect.
clearSelection
public void clearSelection()
SelectionModelClears the selection model of all selected indices.
- Specified by:
-
clearSelectionin classSelectionModel<T>
isSelected
public boolean isSelected(int index)
SelectionModel- Specified by:
-
isSelectedin classSelectionModel<T> - Parameters:
-
index- The index to check as to whether it is currently selected or not. - Returns:
- True if the given index is selected, false otherwise.
isEmpty
public boolean isEmpty()
SelectionModel- Specified by:
-
isEmptyin classSelectionModel<T> - Returns:
- Will return true if there are no selected items, and false if there are.
selectPrevious
public void selectPrevious()
SelectionModelThis 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:
- There is currently a lead/focused index.
- The lead/focus index is not the first index in the control.
- The previous index is not already selected.
If any of these conditions is false, no selection event will take place.
- Specified by:
-
selectPreviousin classSelectionModel<T>
selectNext
public void selectNext()
SelectionModelThis 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:
- There is currently a lead/focused index.
- The lead/focus index is not the last index in the control.
- The next index is not already selected.
If any of these conditions is false, no selection event will take place.
- Specified by:
-
selectNextin classSelectionModel<T>
© 2008, 2025, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from JavaFX API Documentation.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Java, JavaFX and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.