width = lnode.getWidth();
find = true;
}
}
int level = checkLevel(node, 0);
Bounds bounds = (Bounds)node.getLayoutConstraint();
if (levelspace[level-1] == 0) {
if (level == 1) {
bounds.setX(0);
levelspace[level-1] = bounds.getX() + width;
}
else {
int sequence = getSequence(node);
if (sequence == 0) {
Node parentNode = (Node)((Edge)node.getTargetEdges().get(0)).getSource();
int parentWidth = 100;
boolean findParent = false;
while ((find != true) & (li.hasNext())) {
ILayoutNode lnode = (ILayoutNode)li.next();
Node helpNode = lnode.getNode();
if (helpNode.equals(parentNode)) {
parentWidth = lnode.getWidth();
findParent = true;
}
}
Bounds parentBounds = (Bounds)parentNode.getLayoutConstraint();
int distance = checkChildrensDistance(parentNode, lnodes);
if (levelspace[level-1] < (parentBounds.getX() + parentWidth - distance)) {
bounds.setX(parentBounds.getX() + parentWidth - distance);
}
else {
bounds.setX(parentBounds.getX());
}
}
levelspace[level-1] = bounds.getX() + width;
}
}
else {
int sequence = getSequence(node);
if (sequence == 0) {
Node parentNode = (Node)((Edge)node.getTargetEdges().get(0)).getSource();
int parentWidth = 100;
boolean findParent = false;
while ((find != true) & (li.hasNext())) {
ILayoutNode lnode = (ILayoutNode)li.next();
Node helpNode = lnode.getNode();
if (helpNode.equals(parentNode)) {
parentWidth = lnode.getWidth();
findParent = true;
}
}
Bounds parentBounds = (Bounds)parentNode.getLayoutConstraint();
int distance = checkChildrensDistance(parentNode, lnodes);
if (levelspace[level-1] < (parentBounds.getX() + parentWidth - distance - DISTANCE_X)) {
bounds.setX(parentBounds.getX() + parentWidth - distance);
}
else {
bounds.setX(levelspace[level-1] + DISTANCE_X);
setXofMyParent(node, sequence, levelspace, lnodes);
}