org.argouml.uml.diagram.use_case.ui
Class UseCaseDiagramRenderer

java.lang.Object
  extended byorg.argouml.uml.diagram.UmlDiagramRenderer
      extended byorg.argouml.uml.diagram.use_case.ui.UseCaseDiagramRenderer
All Implemented Interfaces:
org.tigris.gef.graph.GraphEdgeRenderer, org.tigris.gef.graph.GraphNodeRenderer, Serializable

public class UseCaseDiagramRenderer
extends UmlDiagramRenderer

This class defines a renderer object for UML Use Case Diagrams. In a Class Diagram the following UML objects are displayed with the following Figs:

   UML Object       ---  Fig
   ---------------------------------------
   MActor           ---  FigActor
   MUseCase         ---  FigUseCase
 
Provides getFigNodeFor(org.tigris.gef.graph.GraphModel, org.tigris.gef.base.Layer, java.lang.Object, java.util.Map) to implement the GraphNodeRenderer interface and getFigEdgeFor(org.tigris.gef.graph.GraphModel, org.tigris.gef.base.Layer, java.lang.Object, java.util.Map) to implement the GraphEdgeRenderer interface.

Note. Should be implemented as a singleton - we don't really need a separate instance for each use case diagram.

See Also:
Serialized Form

Field Summary
private static Logger LOG
           
(package private) static long serialVersionUID
           
 
Constructor Summary
UseCaseDiagramRenderer()
           
 
Method Summary
 org.tigris.gef.presentation.FigEdge getFigEdgeFor(org.tigris.gef.graph.GraphModel gm, org.tigris.gef.base.Layer lay, Object edge, Map styleAttributes)
          Return a Fig that can be used to represent the given edge.
 org.tigris.gef.presentation.FigNode getFigNodeFor(org.tigris.gef.graph.GraphModel gm, org.tigris.gef.base.Layer lay, Object node, Map styleAttributes)
          Return a Fig that can be used to represent the given node.
private  void setDestPort(org.tigris.gef.presentation.FigEdge edge, org.tigris.gef.presentation.FigNode dest)
           
private  void setSourcePort(org.tigris.gef.presentation.FigEdge edge, org.tigris.gef.presentation.FigNode source)
           
 
Methods inherited from class org.argouml.uml.diagram.UmlDiagramRenderer
getFigEdgeFor, getFigNodeFor
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

LOG

private static final Logger LOG

serialVersionUID

static final long serialVersionUID
See Also:
Constant Field Values
Constructor Detail

UseCaseDiagramRenderer

public UseCaseDiagramRenderer()
Method Detail

getFigNodeFor

public org.tigris.gef.presentation.FigNode getFigNodeFor(org.tigris.gef.graph.GraphModel gm,
                                                         org.tigris.gef.base.Layer lay,
                                                         Object node,
                                                         Map styleAttributes)
Return a Fig that can be used to represent the given node.

Parameters:
gm - The graph model for which we are rendering.
lay - The layer in the graph on which we want this figure.
node - The node to be rendered (an NSUML object)
styleAttributes - an optional map of attributes to style the fig
Returns:
The fig to be used, or null if we can't create one.

getFigEdgeFor

public org.tigris.gef.presentation.FigEdge getFigEdgeFor(org.tigris.gef.graph.GraphModel gm,
                                                         org.tigris.gef.base.Layer lay,
                                                         Object edge,
                                                         Map styleAttributes)

Return a Fig that can be used to represent the given edge.

Generally the same code as for the ClassDiagram, since it's very related to it. Deal with each of the edge types in turn.

Parameters:
gm - The graph model for which we are rendering.
lay - The layer in the graph on which we want this figure.
edge - The edge to be rendered (an NSUML object)
styleAttributes - an optional map of attributes to style the fig
Returns:
The fig to be used, or null if we can't create one.
See Also:
org.tigris.gef.graph.GraphEdgeRenderer#getFigEdgeFor( org.tigris.gef.graph.GraphModel, org.tigris.gef.base.Layer, java.lang.Object)

setSourcePort

private void setSourcePort(org.tigris.gef.presentation.FigEdge edge,
                           org.tigris.gef.presentation.FigNode source)

setDestPort

private void setDestPort(org.tigris.gef.presentation.FigEdge edge,
                         org.tigris.gef.presentation.FigNode dest)


ArgoUML © 1996-2004 (20050222)ArgoUML HomepageArgoUML Developers' pageArgoUML Cookbook