Package org.jgraph.graph
Interface GraphSelectionModel
- All Known Implementing Classes:
DefaultGraphSelectionModel
,JGraph.EmptySelectionModel
public interface GraphSelectionModel
This interface represents the current state of the selection for
the graph component.
A GraphSelectionModel can be configured to allow only one
cell (SINGLE_GRAPH_SELECTION
) or a number of
cells (MULTIPLE_GRAPH_SELECTION
).
-
Field Summary
FieldsModifier and TypeFieldDescriptionstatic final int
Selection can contain any number of items.static final int
Selection can only contain one cell at a time. -
Method Summary
Modifier and TypeMethodDescriptionvoid
Adds x to the list of listeners that are notified each time the set of selected Objects changes.void
Adds a PropertyChangeListener to the listener list.void
addSelectionCell
(Object cell) Adds cell to the current selection.void
addSelectionCells
(Object[] cells) Adds cells to the current selection.void
Empties the current selection.Object[]
Returns the cells that are currently selectable.Returns the first cell in the selection.Object[]
Returns the cells in the selection.int
Returns the number of cells that are selected.int
Returns the current selection mode, eitherSINGLE_GRAPH_SELECTION
orMULTIPLE_GRAPH_SELECTION
.boolean
isCellSelected
(Object cell) Returns true if the cell,cell
, is in the current selection.boolean
Returns true if the selection model allows the selection of children.boolean
isChildrenSelected
(Object cell) Returns true if the cell,cell
, has selected children.boolean
Returns true if the selection is currently empty.void
Removes x from the list of listeners that are notified each time the set of selected Objects changes.void
Removes a PropertyChangeListener from the listener list.void
removeSelectionCell
(Object cell) Removes cell from the selection.void
removeSelectionCells
(Object[] cells) Removes cells from the selection.void
setChildrenSelectable
(boolean flag) Sets if the selection model allows the selection of children.void
setSelectionCell
(Object cell) Sets the selection to cell.void
setSelectionCells
(Object[] cells) Sets the selection to cells.void
setSelectionMode
(int mode) Sets the selection model, which must be either SINGLE_GRAPH_SELECTION or MULTIPLE_GRAPH_SELECTION.
-
Field Details
-
SINGLE_GRAPH_SELECTION
static final int SINGLE_GRAPH_SELECTIONSelection can only contain one cell at a time.- See Also:
-
MULTIPLE_GRAPH_SELECTION
static final int MULTIPLE_GRAPH_SELECTIONSelection can contain any number of items.- See Also:
-
-
Method Details
-
setSelectionMode
void setSelectionMode(int mode) Sets the selection model, which must be either SINGLE_GRAPH_SELECTION or MULTIPLE_GRAPH_SELECTION.This may change the selection if the current selection is not valid for the new mode.
-
setChildrenSelectable
void setChildrenSelectable(boolean flag) Sets if the selection model allows the selection of children. -
isChildrenSelectable
boolean isChildrenSelectable()Returns true if the selection model allows the selection of children. -
getSelectionMode
int getSelectionMode()Returns the current selection mode, eitherSINGLE_GRAPH_SELECTION
orMULTIPLE_GRAPH_SELECTION
. -
setSelectionCell
Sets the selection to cell. If this represents a change, then the GraphSelectionListeners are notified. Ifcell
is null, this has the same effect as invokingclearSelection
.- Parameters:
cell
- new cell to select
-
setSelectionCells
Sets the selection to cells. If this represents a change, then the GraphSelectionListeners are notified. Ifcells
is null, this has the same effect as invokingclearSelection
.- Parameters:
cells
- new selection
-
addSelectionCell
Adds cell to the current selection. If cell is not currently in the selection the GraphSelectionListeners are notified. This has no effect ifcell
is null.- Parameters:
cell
- the new cell to add to the current selection
-
addSelectionCells
Adds cells to the current selection. If any of the cells are not currently in the selection the GraphSelectionListeners are notified. This has no effect ifcells
is null.- Parameters:
cells
- the new cells to add to the current selection
-
removeSelectionCell
Removes cell from the selection. If cell is in the selection the GraphSelectionListeners are notified. This has no effect ifcell
is null.- Parameters:
cell
- the cell to remove from the selection
-
removeSelectionCells
Removes cells from the selection. If any of the cells incells
are in the selection, the GraphSelectionListeners are notified. This method has no effect ifcells
is null.- Parameters:
cells
- the cells to remove from the selection
-
getSelectables
Object[] getSelectables()Returns the cells that are currently selectable. -
getSelectionCell
Object getSelectionCell()Returns the first cell in the selection. How first is defined is up to implementors. -
getSelectionCells
Object[] getSelectionCells()Returns the cells in the selection. This will return null (or an empty array) if nothing is currently selected. -
getSelectionCount
int getSelectionCount()Returns the number of cells that are selected. -
isCellSelected
Returns true if the cell,cell
, is in the current selection. -
isChildrenSelected
Returns true if the cell,cell
, has selected children. -
isSelectionEmpty
boolean isSelectionEmpty()Returns true if the selection is currently empty. -
clearSelection
void clearSelection()Empties the current selection. If this represents a change in the current selection, the selection listeners are notified. -
addPropertyChangeListener
Adds a PropertyChangeListener to the listener list. The listener is registered for all properties.A PropertyChangeEvent will get fired when the selection mode changes.
- Parameters:
listener
- the PropertyChangeListener to be added
-
removePropertyChangeListener
Removes a PropertyChangeListener from the listener list. This removes a PropertyChangeListener that was registered for all properties.- Parameters:
listener
- the PropertyChangeListener to be removed
-
addGraphSelectionListener
Adds x to the list of listeners that are notified each time the set of selected Objects changes.- Parameters:
x
- the new listener to be added
-
removeGraphSelectionListener
Removes x from the list of listeners that are notified each time the set of selected Objects changes.- Parameters:
x
- the listener to remove
-