Package com.mxgraph.view
Class mxGraphSelectionModel
- java.lang.Object
-
- com.mxgraph.util.mxEventSource
-
- com.mxgraph.view.mxGraphSelectionModel
-
public class mxGraphSelectionModel extends mxEventSource
Implements the selection model for a graph. This class fires the following events: mxEvent.UNDO fires after the selection was changed in changeSelection. Theeditproperty contains the mxUndoableEdit which contains the mxSelectionChange. mxEvent.CHANGE fires after the selection changes by executing an mxSelectionChange. Theaddedandremovedproperties contain Collections of cells that have been added to or removed from the selection, respectively. NOTE: Due to a historic bug that cannot be changed at this point the names of the properties are "reversed". To add a change listener to the graph selection model:addListener( mxEvent.CHANGE, new mxIEventListener() { public void invoke(Object sender, mxEventObject evt) { mxGraphSelectionModel model = (mxSelectionModel) sender; Collection added = (Collection) evt.getProperty("added"); Collection removed = (Collection) evt.getProperty("removed"); selectionChanged(model, added, removed); } });
-
-
Nested Class Summary
Nested Classes Modifier and Type Class Description static classmxGraphSelectionModel.mxSelectionChange-
Nested classes/interfaces inherited from class com.mxgraph.util.mxEventSource
mxEventSource.mxIEventListener
-
-
Field Summary
Fields Modifier and Type Field Description protected java.util.Set<java.lang.Object>cellsHolds the selection cells.protected mxGraphgraphReference to the enclosing graph.protected booleansingleSelectionSpecifies if only one selected item at a time is allowed.-
Fields inherited from class com.mxgraph.util.mxEventSource
eventListeners, eventsEnabled, eventSource
-
-
Constructor Summary
Constructors Constructor Description mxGraphSelectionModel(mxGraph graph)Constructs a new selection model for the specified graph.
-
Method Summary
All Methods Instance Methods Concrete Methods Modifier and Type Method Description voidaddCell(java.lang.Object cell)Adds the given cell to the selection.voidaddCells(java.lang.Object[] cells)protected voidcellAdded(java.lang.Object cell)protected voidcellRemoved(java.lang.Object cell)protected voidchangeSelection(java.util.Collection<java.lang.Object> added, java.util.Collection<java.lang.Object> removed)voidclear()Clears the selection.java.lang.ObjectgetCell()Returns the first selected cell.java.lang.Object[]getCells()Returns the selection cells.protected java.lang.ObjectgetFirstSelectableCell(java.lang.Object[] cells)Returns the first selectable cell in the given array of cells.booleanisEmpty()Returns true if no cells are selected.booleanisSelected(java.lang.Object cell)Returns true if the given cell is selected.booleanisSingleSelection()voidremoveCell(java.lang.Object cell)Removes the given cell from the selection.voidremoveCells(java.lang.Object[] cells)voidsetCell(java.lang.Object cell)Clears the selection and adds the given cell to the selection.voidsetCells(java.lang.Object[] cells)Clears the selection and adds the given cells.voidsetSingleSelection(boolean singleSelection)intsize()Returns the number of selected cells.-
Methods inherited from class com.mxgraph.util.mxEventSource
addListener, fireEvent, fireEvent, getEventSource, isEventsEnabled, removeListener, removeListener, setEventsEnabled, setEventSource
-
-
-
-
Field Detail
-
graph
protected mxGraph graph
Reference to the enclosing graph.
-
singleSelection
protected boolean singleSelection
Specifies if only one selected item at a time is allowed. Default is false.
-
cells
protected java.util.Set<java.lang.Object> cells
Holds the selection cells.
-
-
Constructor Detail
-
mxGraphSelectionModel
public mxGraphSelectionModel(mxGraph graph)
Constructs a new selection model for the specified graph.- Parameters:
graph-
-
-
Method Detail
-
isSingleSelection
public boolean isSingleSelection()
- Returns:
- the singleSelection
-
setSingleSelection
public void setSingleSelection(boolean singleSelection)
- Parameters:
singleSelection- the singleSelection to set
-
isSelected
public boolean isSelected(java.lang.Object cell)
Returns true if the given cell is selected.- Parameters:
cell-- Returns:
- Returns true if the given cell is selected.
-
isEmpty
public boolean isEmpty()
Returns true if no cells are selected.
-
size
public int size()
Returns the number of selected cells.
-
clear
public void clear()
Clears the selection.
-
getCell
public java.lang.Object getCell()
Returns the first selected cell.
-
getCells
public java.lang.Object[] getCells()
Returns the selection cells.
-
setCell
public void setCell(java.lang.Object cell)
Clears the selection and adds the given cell to the selection.
-
setCells
public void setCells(java.lang.Object[] cells)
Clears the selection and adds the given cells.
-
getFirstSelectableCell
protected java.lang.Object getFirstSelectableCell(java.lang.Object[] cells)
Returns the first selectable cell in the given array of cells.- Parameters:
cells- Array of cells to return the first selectable cell for.- Returns:
- Returns the first cell that may be selected.
-
addCell
public void addCell(java.lang.Object cell)
Adds the given cell to the selection.
-
addCells
public void addCells(java.lang.Object[] cells)
-
removeCell
public void removeCell(java.lang.Object cell)
Removes the given cell from the selection.
-
removeCells
public void removeCells(java.lang.Object[] cells)
-
changeSelection
protected void changeSelection(java.util.Collection<java.lang.Object> added, java.util.Collection<java.lang.Object> removed)
-
cellAdded
protected void cellAdded(java.lang.Object cell)
-
cellRemoved
protected void cellRemoved(java.lang.Object cell)
-
-