de.uni_paderborn.fujaba.layout.classdiag
Class ClassdiagramEdge

java.lang.Object
  extended byde.uni_paderborn.fujaba.layout.classdiag.ClassdiagramEdge
All Implemented Interfaces:
LayoutedEdge, LayoutedObject
Direct Known Subclasses:
ClassdiagramAssociationEdge, ClassdiagramInheritanceEdge

public abstract class ClassdiagramEdge
extends java.lang.Object
implements LayoutedEdge

This class is an abstract implementation of all edges which are layoutable in the classdiagram. The class has been taken from Argo UML source code.

Version:
$Revision: 1.3 $ $Date: 2005/01/28 11:36:28 $
Author:
$Author: lowende $

Field Summary
private  FSABendLine currentEdge
          No comment provided by developer, please add a comment to improve documentation.
private  FSAObject destFigNode
          each fig has a source and a destination port
private static int hGap
          No comment provided by developer, please add a comment to improve documentation.
private  FSAObject sourceFigNode
          No comment provided by developer, please add a comment to improve documentation.
private  FSAPolyLine underlyingFig
          the underlying fig of the edge we want to layout
private static int vGap
          the layout is oriented on a grid.
 
Constructor Summary
ClassdiagramEdge(FSABendLine edge)
          Constructor.
 
Method Summary
protected  void addPoint(int x, int y)
          Adds a bend to the line.
protected  FSABendLine getCurrentEdge()
           
(package private)  FSAObject getDestFigNode()
           
static int getHGap()
           
(package private)  FSAObject getSourceFigNode()
           
protected  FSAPolyLine getUnderlyingFig()
           
static int getVGap()
           
abstract  void layout()
          Abstract method to layout the edge.
static void setHGap(int h)
           
static void setVGap(int v)
           
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Field Detail

vGap

private static int vGap
the layout is oriented on a grid. These are our grid spaces.


hGap

private static int hGap
No comment provided by developer, please add a comment to improve documentation.


currentEdge

private FSABendLine currentEdge
No comment provided by developer, please add a comment to improve documentation.


underlyingFig

private FSAPolyLine underlyingFig
the underlying fig of the edge we want to layout


destFigNode

private FSAObject destFigNode
each fig has a source and a destination port


sourceFigNode

private FSAObject sourceFigNode
No comment provided by developer, please add a comment to improve documentation.

Constructor Detail

ClassdiagramEdge

public ClassdiagramEdge(FSABendLine edge)
Constructor.

Parameters:
edge - the Edge to layout
Method Detail

layout

public abstract void layout()
Abstract method to layout the edge.

Specified by:
layout in interface LayoutedEdge

setHGap

public static void setHGap(int h)
Parameters:
h - the horizontal gap

setVGap

public static void setVGap(int v)
Parameters:
v - the vertical gap

getHGap

public static int getHGap()
Returns:
the horizontal gap

getVGap

public static int getVGap()
Returns:
the vertical gap

getDestFigNode

FSAObject getDestFigNode()
Returns:
Returns the destFigNode.

getSourceFigNode

FSAObject getSourceFigNode()
Returns:
Returns the sourceFigNode.

getCurrentEdge

protected FSABendLine getCurrentEdge()
Returns:
Returns the currentEdge.

getUnderlyingFig

protected FSAPolyLine getUnderlyingFig()
Returns:
Returns the underlyingFig.

addPoint

protected void addPoint(int x,
                        int y)
Adds a bend to the line.

Parameters:
x - location
y -