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 Details

    • SINGLE_GRAPH_SELECTION

      static final int SINGLE_GRAPH_SELECTION
      Selection can only contain one cell at a time.
      See Also:
    • MULTIPLE_GRAPH_SELECTION

      static final int MULTIPLE_GRAPH_SELECTION
      Selection 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, either SINGLE_GRAPH_SELECTION or MULTIPLE_GRAPH_SELECTION.
    • setSelectionCell

      void setSelectionCell(Object cell)
      Sets the selection to cell. If this represents a change, then the GraphSelectionListeners are notified. If cell is null, this has the same effect as invoking clearSelection.
      Parameters:
      cell - new cell to select
    • setSelectionCells

      void setSelectionCells(Object[] cells)
      Sets the selection to cells. If this represents a change, then the GraphSelectionListeners are notified. If cells is null, this has the same effect as invoking clearSelection.
      Parameters:
      cells - new selection
    • addSelectionCell

      void addSelectionCell(Object cell)
      Adds cell to the current selection. If cell is not currently in the selection the GraphSelectionListeners are notified. This has no effect if cell is null.
      Parameters:
      cell - the new cell to add to the current selection
    • addSelectionCells

      void addSelectionCells(Object[] cells)
      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 if cells is null.
      Parameters:
      cells - the new cells to add to the current selection
    • removeSelectionCell

      void removeSelectionCell(Object cell)
      Removes cell from the selection. If cell is in the selection the GraphSelectionListeners are notified. This has no effect if cell is null.
      Parameters:
      cell - the cell to remove from the selection
    • removeSelectionCells

      void removeSelectionCells(Object[] cells)
      Removes cells from the selection. If any of the cells in cells are in the selection, the GraphSelectionListeners are notified. This method has no effect if cells 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

      boolean isCellSelected(Object cell)
      Returns true if the cell, cell, is in the current selection.
    • isChildrenSelected

      boolean isChildrenSelected(Object cell)
      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

      void addPropertyChangeListener(PropertyChangeListener listener)
      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

      void removePropertyChangeListener(PropertyChangeListener listener)
      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

      void addGraphSelectionListener(GraphSelectionListener x)
      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

      void removeGraphSelectionListener(GraphSelectionListener x)
      Removes x from the list of listeners that are notified each time the set of selected Objects changes.
      Parameters:
      x - the listener to remove