bicliqueviz
Class CustomPickingPlugin<V,E>

java.lang.Object
  extended by edu.uci.ics.jung.visualization.control.AbstractGraphMousePlugin
      extended by bicliqueviz.CustomPickingPlugin<V,E>
All Implemented Interfaces:
edu.uci.ics.jung.visualization.control.GraphMousePlugin, java.awt.event.MouseListener, java.awt.event.MouseMotionListener, java.util.EventListener

public class CustomPickingPlugin<V,E>
extends edu.uci.ics.jung.visualization.control.AbstractGraphMousePlugin
implements java.awt.event.MouseListener, java.awt.event.MouseMotionListener

PickingGraphMousePlugin supports the picking of graph elements with the mouse. MouseButtonOne picks a single vertex or edge, and MouseButtonTwo adds to the set of selected Vertices or EdgeType. If a Vertex is selected and the mouse is dragged while on the selected Vertex, then that Vertex will be repositioned to follow the mouse until the button is released.

Author:
Tom Nelson

Constructor Summary
CustomPickingPlugin(BiCliqueWin w)
          create an instance with default settings
CustomPickingPlugin(int selectionModifiers, int addToSelectionModifiers, BiCliqueWin w)
          create an instance with overides
 
Method Summary
 java.awt.Color getLensColor()
           
 boolean isLocked()
           
 void mouseClicked(java.awt.event.MouseEvent e)
           
 void mouseDragged(java.awt.event.MouseEvent e)
          If the mouse is over a picked vertex, drag all picked vertices with the mouse.
 void mouseEntered(java.awt.event.MouseEvent e)
           
 void mouseExited(java.awt.event.MouseEvent e)
           
 void mouseMoved(java.awt.event.MouseEvent e)
           
 void mousePressed(java.awt.event.MouseEvent e)
          For primary modifiers (default, MouseButton1): pick a single Vertex or Edge that is under the mouse pointer.
 void mouseReleased(java.awt.event.MouseEvent e)
          If the mouse is dragging a rectangle, pick the Vertices contained in that rectangle clean up settings from mousePressed
 void setLensColor(java.awt.Color lensColor)
           
 void setLocked(boolean locked)
           
 
Methods inherited from class edu.uci.ics.jung.visualization.control.AbstractGraphMousePlugin
checkModifiers, getCursor, getModifiers, setCursor, setModifiers
 
Methods inherited from class java.lang.Object
equals, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

CustomPickingPlugin

public CustomPickingPlugin(BiCliqueWin w)
create an instance with default settings


CustomPickingPlugin

public CustomPickingPlugin(int selectionModifiers,
                           int addToSelectionModifiers,
                           BiCliqueWin w)
create an instance with overides

Parameters:
selectionModifiers - for primary selection
addToSelectionModifiers - for additional selection
Method Detail

getLensColor

public java.awt.Color getLensColor()
Returns:
Returns the lensColor.

setLensColor

public void setLensColor(java.awt.Color lensColor)
Parameters:
lensColor - The lensColor to set.

mousePressed

public void mousePressed(java.awt.event.MouseEvent e)
For primary modifiers (default, MouseButton1): pick a single Vertex or Edge that is under the mouse pointer. If no Vertex or edge is under the pointer, unselect all picked Vertices and edges, and set up to draw a rectangle for multiple selection of contained Vertices. For additional selection (default Shift+MouseButton1): Add to the selection, a single Vertex or Edge that is under the mouse pointer. If a previously picked Vertex or Edge is under the pointer, it is un-picked. If no vertex or Edge is under the pointer, set up to draw a multiple selection rectangle (as above) but do not unpick previously picked elements.

Specified by:
mousePressed in interface java.awt.event.MouseListener
Parameters:
e - the event

mouseReleased

public void mouseReleased(java.awt.event.MouseEvent e)
If the mouse is dragging a rectangle, pick the Vertices contained in that rectangle clean up settings from mousePressed

Specified by:
mouseReleased in interface java.awt.event.MouseListener

mouseDragged

public void mouseDragged(java.awt.event.MouseEvent e)
If the mouse is over a picked vertex, drag all picked vertices with the mouse. If the mouse is not over a Vertex, draw the rectangle to select multiple Vertices

Specified by:
mouseDragged in interface java.awt.event.MouseMotionListener

mouseClicked

public void mouseClicked(java.awt.event.MouseEvent e)
Specified by:
mouseClicked in interface java.awt.event.MouseListener

mouseEntered

public void mouseEntered(java.awt.event.MouseEvent e)
Specified by:
mouseEntered in interface java.awt.event.MouseListener

mouseExited

public void mouseExited(java.awt.event.MouseEvent e)
Specified by:
mouseExited in interface java.awt.event.MouseListener

mouseMoved

public void mouseMoved(java.awt.event.MouseEvent e)
Specified by:
mouseMoved in interface java.awt.event.MouseMotionListener

isLocked

public boolean isLocked()
Returns:
Returns the locked.

setLocked

public void setLocked(boolean locked)
Parameters:
locked - The locked to set.