edu.uci.ics.jung.visualization.swt
Class VisualizationComposite<V,E>

java.lang.Object
  extended by edu.uci.ics.jung.visualization.swt.VisualizationComposite<V,E>
All Implemented Interfaces:
ChangeEventSupport, EventListener, ChangeListener

public class VisualizationComposite<V,E>
extends Object
implements ChangeListener, ChangeEventSupport

Adds mouse behaviors and tooltips to the graph visualization base class

Author:
Joshua O'Madadhain, Tom Nelson, Danyel Fisher

Nested Class Summary
protected  class VisualizationComposite.VisualizationListener
          VisualizationListener reacts to changes in the size of the VisualizationViewer.
 
Field Summary
protected  ChangeEventSupport changeSupport
           
protected  org.apache.commons.collections15.Transformer<E,String> edgeToolTipTransformer
           
protected  GraphMouse graphMouse
          provides MouseListener, MouseMotionListener, and MouseWheelListener events to the graph
protected  org.apache.commons.collections15.Transformer<MouseEvent,String> mouseEventToolTipTransformer
           
protected  Map renderingHints
          rendering hints used in drawing.
protected  org.eclipse.swt.events.MouseListener requestFocusListener
           
protected  ScreenDevice<org.eclipse.swt.widgets.Composite> screenDevice
           
protected  org.apache.commons.collections15.Transformer<V,String> vertexToolTipTransformer
           
protected  BasicVisualizationServer<V,E> visualizationServer
           
 
Constructor Summary
VisualizationComposite(org.eclipse.swt.widgets.Composite parent, int style, Layout<V,E> layout)
          Create an instance with passed parameters.
VisualizationComposite(org.eclipse.swt.widgets.Composite parent, int style, Layout<V,E> layout, Dimension preferredSize)
          Create an instance with passed parameters.
VisualizationComposite(org.eclipse.swt.widgets.Composite parent, int style, VisualizationModel<V,E> model)
          Create an instance with passed parameters.
VisualizationComposite(org.eclipse.swt.widgets.Composite parent, int style, VisualizationModel<V,E> model, Dimension preferredSize)
          Create an instance with passed parameters.
 
Method Summary
 void addChangeListener(ChangeListener l)
           
 void addGraphMouseListener(GraphMouseListener<V> gel)
          This is the interface for adding a mouse listener.
 void addKeyListener(KeyListener l)
          A convienence method to add the key listener to the screen device.
 void fireStateChanged()
           
 Color getBackground()
           
 Rectangle getBounds()
           
 Point2D getCenter()
           
 ChangeListener[] getChangeListeners()
          Returns an array of all the ChangeListeners added with addChangeListener().
 org.eclipse.swt.widgets.Composite getComposite()
           
 Color getForeground()
           
 Layout<V,E> getGraphLayout()
           
 GraphMouse getGraphMouse()
           
 VisualizationModel<V,E> getModel()
           
 Dimension getPreferredSize()
           
 RenderContext<V,E> getRenderContext()
           
 Renderer<V,E> getRenderer()
           
 Map getRenderingHints()
           
 ScreenDevice getScreenDevice()
           
 VisualizationServer<V,E> getServer()
           
 Dimension getSize()
          Always sanity-check getSize so that we don't use a value that is improbable
 String getToolTipText()
           
 void removeChangeListener(ChangeListener l)
          Removes a ChangeListener.
 void repaint()
           
 void scaleToLayout(ScalingControl scaler)
           
 void setBackground(Color c)
           
 void setCursor(Cursor cursor)
           
 void setEdgeToolTipTransformer(org.apache.commons.collections15.Transformer<E,String> edgeToolTipTransformer)
           
 void setForeground(Color c)
           
 void setGraphLayout(Layout<V,E> layout)
           
 void setGraphMouse(GraphMouse graphMouse)
          a setter for the GraphMouse.
 void setMouseEventToolTipTransformer(org.apache.commons.collections15.Transformer<MouseEvent,String> mouseEventToolTipTransformer)
           
 void setPreferredSize(Dimension preferredSize)
           
 void setRenderingHints(Map renderingHints)
           
 void setToolTipText(String text)
           
 void setVertexToolTipTransformer(org.apache.commons.collections15.Transformer<V,String> vertexToolTipTransformer)
           
 void setVisible(boolean aFlag)
           
 void stateChanged(ChangeEvent e)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

changeSupport

protected ChangeEventSupport changeSupport

renderingHints

protected Map renderingHints
rendering hints used in drawing. Anti-aliasing is on by default


screenDevice

protected ScreenDevice<org.eclipse.swt.widgets.Composite> screenDevice

visualizationServer

protected BasicVisualizationServer<V,E> visualizationServer

vertexToolTipTransformer

protected org.apache.commons.collections15.Transformer<V,String> vertexToolTipTransformer

edgeToolTipTransformer

protected org.apache.commons.collections15.Transformer<E,String> edgeToolTipTransformer

mouseEventToolTipTransformer

protected org.apache.commons.collections15.Transformer<MouseEvent,String> mouseEventToolTipTransformer

graphMouse

protected GraphMouse graphMouse
provides MouseListener, MouseMotionListener, and MouseWheelListener events to the graph


requestFocusListener

protected org.eclipse.swt.events.MouseListener requestFocusListener
Constructor Detail

VisualizationComposite

public VisualizationComposite(org.eclipse.swt.widgets.Composite parent,
                              int style,
                              Layout<V,E> layout)
Create an instance with passed parameters.

Parameters:
layout - The Layout to apply, with its associated Graph
renderer - The Renderer to draw it with

VisualizationComposite

public VisualizationComposite(org.eclipse.swt.widgets.Composite parent,
                              int style,
                              Layout<V,E> layout,
                              Dimension preferredSize)
Create an instance with passed parameters.

Parameters:
layout - The Layout to apply, with its associated Graph
renderer - The Renderer to draw it with
preferredSize - the preferred size of this View

VisualizationComposite

public VisualizationComposite(org.eclipse.swt.widgets.Composite parent,
                              int style,
                              VisualizationModel<V,E> model)
Create an instance with passed parameters.

Parameters:
model -
renderer -

VisualizationComposite

public VisualizationComposite(org.eclipse.swt.widgets.Composite parent,
                              int style,
                              VisualizationModel<V,E> model,
                              Dimension preferredSize)
Create an instance with passed parameters.

Parameters:
model -
renderer -
preferredSize - initial preferred size of the view
Method Detail

getComposite

public org.eclipse.swt.widgets.Composite getComposite()

getPreferredSize

public Dimension getPreferredSize()
Returns:
the preferredSize

setPreferredSize

public void setPreferredSize(Dimension preferredSize)
Parameters:
preferredSize - the preferredSize to set

getSize

public Dimension getSize()
Always sanity-check getSize so that we don't use a value that is improbable

See Also:
Component.getSize()

getGraphLayout

public Layout<V,E> getGraphLayout()

setGraphLayout

public void setGraphLayout(Layout<V,E> layout)

getScreenDevice

public ScreenDevice getScreenDevice()

getRenderContext

public RenderContext<V,E> getRenderContext()

scaleToLayout

public void scaleToLayout(ScalingControl scaler)

setVisible

public void setVisible(boolean aFlag)

getRenderingHints

public Map getRenderingHints()

setRenderingHints

public void setRenderingHints(Map renderingHints)

getCenter

public Point2D getCenter()

setGraphMouse

public void setGraphMouse(GraphMouse graphMouse)
a setter for the GraphMouse. This will remove any previous GraphMouse (including the one that is added in the initMouseClicker method.

Parameters:
graphMouse - new value

getGraphMouse

public GraphMouse getGraphMouse()
Returns:
the current GraphMouse

addGraphMouseListener

public void addGraphMouseListener(GraphMouseListener<V> gel)
This is the interface for adding a mouse listener. The GEL will be called back with mouse clicks on vertices.

Parameters:
gel -

addKeyListener

public void addKeyListener(KeyListener l)
A convienence method to add the key listener to the screen device.


setEdgeToolTipTransformer

public void setEdgeToolTipTransformer(org.apache.commons.collections15.Transformer<E,String> edgeToolTipTransformer)
Parameters:
edgeToolTipTransformer - the edgeToolTipTransformer to set

setMouseEventToolTipTransformer

public void setMouseEventToolTipTransformer(org.apache.commons.collections15.Transformer<MouseEvent,String> mouseEventToolTipTransformer)
Parameters:
mouseEventToolTipTransformer - the mouseEventToolTipTransformer to set

setVertexToolTipTransformer

public void setVertexToolTipTransformer(org.apache.commons.collections15.Transformer<V,String> vertexToolTipTransformer)
Parameters:
vertexToolTipTransformer - the vertexToolTipTransformer to set

getServer

public VisualizationServer<V,E> getServer()

fireStateChanged

public void fireStateChanged()
Specified by:
fireStateChanged in interface ChangeEventSupport

stateChanged

public void stateChanged(ChangeEvent e)
Specified by:
stateChanged in interface ChangeListener

addChangeListener

public void addChangeListener(ChangeListener l)
Specified by:
addChangeListener in interface ChangeEventSupport

removeChangeListener

public void removeChangeListener(ChangeListener l)
Description copied from interface: ChangeEventSupport
Removes a ChangeListener.

Specified by:
removeChangeListener in interface ChangeEventSupport
Parameters:
l - the listener to be removed

getChangeListeners

public ChangeListener[] getChangeListeners()
Description copied from interface: ChangeEventSupport
Returns an array of all the ChangeListeners added with addChangeListener().

Specified by:
getChangeListeners in interface ChangeEventSupport
Returns:
all of the ChangeListeners added or an empty array if no listeners have been added

getModel

public VisualizationModel<V,E> getModel()

getRenderer

public Renderer<V,E> getRenderer()

setCursor

public void setCursor(Cursor cursor)

repaint

public void repaint()

setBackground

public void setBackground(Color c)

setForeground

public void setForeground(Color c)

getBackground

public Color getBackground()

getBounds

public Rectangle getBounds()

getForeground

public Color getForeground()

getToolTipText

public String getToolTipText()

setToolTipText

public void setToolTipText(String text)


Copyright © 2007. All Rights Reserved.