javax.swing
public interface ListSelectionModel
SINGLE_SELECTION
- only one item in the list may be
selected;SINGLE_INTERVAL_SELECTION
- only one interval in the list
may be selected;MULTIPLE_INTERVAL_SELECTION
- any combination of items in
the list may be selected.This model is used to track row selections in the {@link JList} component, and row and column selections in the {@link JTable} component.
Field Summary | |
---|---|
int | MULTIPLE_INTERVAL_SELECTION
A selection mode in which any combination of items can be selected.
|
int | SINGLE_INTERVAL_SELECTION
A selection mode in which a single interval can be selected (an interval
is a range containing one or more contiguous items).
|
int | SINGLE_SELECTION
A selection mode in which only one item can be selected.
|
Method Summary | |
---|---|
void | addListSelectionListener(ListSelectionListener listener)
Registers a listener with the model so that it receives notification
of changes to the model.
|
void | addSelectionInterval(int anchor, int lead)
Marks the items in the specified interval as selected. |
void | clearSelection()
Clears the current selection from the model. |
int | getAnchorSelectionIndex()
Returns the index of the anchor item.
|
int | getLeadSelectionIndex()
Returns the index of the lead item.
|
int | getMaxSelectionIndex()
Returns the highest selected index, or -1 if there is no
selection.
|
int | getMinSelectionIndex()
Returns the lowest selected index, or -1 if there is no
selection.
|
int | getSelectionMode()
Returns the selection mode, which is one of {@link #SINGLE_SELECTION},
{@link #SINGLE_INTERVAL_SELECTION} and
{@link #MULTIPLE_INTERVAL_SELECTION}.
|
boolean | getValueIsAdjusting()
Returns a flag that is passed to registered listeners when changes are
made to the model. |
void | insertIndexInterval(int index, int length, boolean before)
Inserts a new interval containing length items at the
specified index (the before flag indicates
whether the range is inserted before or after the existing item at
index ).
|
boolean | isSelectedIndex(int index)
Returns true if the specified item is selected, and
false otherwise. |
boolean | isSelectionEmpty()
Returns true if there is no selection, and false
otherwise.
|
void | removeIndexInterval(int index0, int index1)
Removes the items in the specified range (inclusive) from the selection
model. |
void | removeListSelectionListener(ListSelectionListener listener)
Deregisters a listener so that it no longer receives notification of
changes to the model. |
void | removeSelectionInterval(int anchor, int lead)
Marks the items in the specified interval as not selected. |
void | setAnchorSelectionIndex(int index)
Sets the index of the anchor item.
|
void | setLeadSelectionIndex(int index)
Sets the index of the lead item.
|
void | setSelectionInterval(int anchor, int lead)
Sets the selection interval to the specified range (note that
anchor can be less than, equal to, or greater than
lead ). |
void | setSelectionMode(int mode)
Sets the selection mode.
|
void | setValueIsAdjusting(boolean valueIsAdjusting)
Sets the flag that is passed to listeners for each change notification.
|
See Also: ListSelectionModel
See Also: ListSelectionModel
See Also: ListSelectionModel
Parameters: listener the listener (null
ignored).
See Also: removeListSelectionListener
SINGLE_SELECTION
- only the lead
item is
selected;SINGLE_INTERVAL_SELECTION
- the existing selection
interval is replaced by the specified interval;MULTIPLE_INTERVAL_SELECTION
- the specified interval is
merged into the currently selected intervals.anchor
can be less than, equal to, or greater than
lead
.
Parameters: anchor the index of the anchor item lead the index of the lead item.
FIXME: what happens to the anchor and lead selection indices (the spec is silent about this)? See:
http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=4334792
Returns: The index of the anchor item.
See Also: ListSelectionModel
Returns: The index of the lead item.
See Also: ListSelectionModel
-1
if there is no
selection.
Returns: The highest selected index.
See Also: getMinSelectionIndex
-1
if there is no
selection.
Returns: The lowest selected index.
See Also: getMaxSelectionIndex
Returns: The selection mode.
See Also: ListSelectionModel
Returns: The flag.
length
items at the
specified index
(the before
flag indicates
whether the range is inserted before or after the existing item at
index
).
FIXME: What is the selection status of the new items? Bug 4870694.
FIXME: What event is generated?
Parameters: index the index of the item. length the number of items in the interval to be inserted. before if true
, the interval should be inserted
before index
, otherwise it is inserted after.
See Also: ListSelectionModel
true
if the specified item is selected, and
false
otherwise. Special note: if index
is
negative, this method should return false
(no exception
should be thrown).
Parameters: index the item index (zero-based).
Returns: true
if the specified item is selected, and
false
otherwise.
true
if there is no selection, and false
otherwise.
Returns: true
if there is no selection, and
false
otherwise.
Parameters: index0 XXX index1 XXX
See Also: ListSelectionModel
null
, this method does nothing.
Parameters: listener the listener (null
ignored).
See Also: addListSelectionListener
SINGLE_SELECTION
- XXX;SINGLE_INTERVAL_SELECTION
- XXX;MULTIPLE_INTERVAL_SELECTION
- XXX.anchor
can be less than, equal to, or greater than
lead
.
Parameters: anchor the index of the anchor item lead the index of the lead item.
Parameters: index the item index.
See Also: getAnchorSelectionIndex
Parameters: index the item index.
See Also: getLeadSelectionIndex
anchor
can be less than, equal to, or greater than
lead
). If this results in the selection being changed,
a {@link ListSelectionEvent} is sent to all registered listeners.
If the selection mode is {@link #SINGLE_SELECTION}, only the
lead
item is selected.
Parameters: anchor the anchor index. lead the lead index.
FIXME: The spec is silent about what happens to existing selections, for example when changing from an interval selection to single selection.
Parameters: mode one of {@link #SINGLE_SELECTION}, {@link #SINGLE_INTERVAL_SELECTION} and {@link #MULTIPLE_INTERVAL_SELECTION}.
Throws: IllegalArgumentException if mode
is not one of the
specified values.
true
at the start of the sequence, and
false
for the last change - this gives listeners the option
to ignore interim changes if that is more efficient.
Parameters: valueIsAdjusting the flag value.
See Also: getValueIsAdjusting