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 intSelection can contain any number of items.static final intSelection can only contain one cell at a time. -
Method Summary
Modifier and TypeMethodDescriptionvoidAdds x to the list of listeners that are notified each time the set of selected Objects changes.voidAdds a PropertyChangeListener to the listener list.voidaddSelectionCell(Object cell) Adds cell to the current selection.voidaddSelectionCells(Object[] cells) Adds cells to the current selection.voidEmpties 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.intReturns the number of cells that are selected.intReturns the current selection mode, eitherSINGLE_GRAPH_SELECTIONorMULTIPLE_GRAPH_SELECTION.booleanisCellSelected(Object cell) Returns true if the cell,cell, is in the current selection.booleanReturns true if the selection model allows the selection of children.booleanisChildrenSelected(Object cell) Returns true if the cell,cell, has selected children.booleanReturns true if the selection is currently empty.voidRemoves x from the list of listeners that are notified each time the set of selected Objects changes.voidRemoves a PropertyChangeListener from the listener list.voidremoveSelectionCell(Object cell) Removes cell from the selection.voidremoveSelectionCells(Object[] cells) Removes cells from the selection.voidsetChildrenSelectable(boolean flag) Sets if the selection model allows the selection of children.voidsetSelectionCell(Object cell) Sets the selection to cell.voidsetSelectionCells(Object[] cells) Sets the selection to cells.voidsetSelectionMode(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_SELECTIONorMULTIPLE_GRAPH_SELECTION. -
setSelectionCell
Sets the selection to cell. If this represents a change, then the GraphSelectionListeners are notified. Ifcellis 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. Ifcellsis 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 ifcellis 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 ifcellsis 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 ifcellis null.- Parameters:
cell- the cell to remove from the selection
-
removeSelectionCells
Removes cells from the selection. If any of the cells incellsare in the selection, the GraphSelectionListeners are notified. This method has no effect ifcellsis 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
-