de.uni_paderborn.fujaba.layout.classdiag
Class ClassdiagramInheritanceEdge

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

public abstract class ClassdiagramInheritanceEdge
extends ClassdiagramEdge

The class has been taken from Argo UML source code.

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

Constructor Summary
ClassdiagramInheritanceEdge(FSABendLine edge)
          Constructor.
 
Method Summary
 int getCenterHigh()
           
 int getCenterLow()
           
 int getDownGap()
           
abstract  int getVerticalOffset()
           
 void layout()
          Layout the edges in a way that they form a nice inheritance tree.
 
Methods inherited from class de.uni_paderborn.fujaba.layout.classdiag.ClassdiagramEdge
addPoint, getCurrentEdge, getHGap, getUnderlyingFig, getVGap, setHGap, setVGap
 
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
 

Constructor Detail

ClassdiagramInheritanceEdge

public ClassdiagramInheritanceEdge(FSABendLine edge)
Constructor.

Parameters:
edge - the fig edge
Method Detail

getVerticalOffset

public abstract int getVerticalOffset()
Returns:
the vertical offset

getCenterHigh

public int getCenterHigh()
Returns:
the center of the high node

getCenterLow

public int getCenterLow()
Returns:
the center of the low node

getDownGap

public int getDownGap()
Returns:
the gap with the node one level down

layout

public void layout()
Layout the edges in a way that they form a nice inheritance tree. Try to implement these nice zigzag lines between classes and works well when the row difference is one.

Specified by:
layout in interface LayoutedEdge
Specified by:
layout in class ClassdiagramEdge