Skip to content
Snippets Groups Projects
Commit 31e8cdb1 authored by Simon Barner's avatar Simon Barner
Browse files

- Tweak some parameters (port height, ...)

refs 2898
parent 1fcd0880
No related branches found
No related tags found
No related merge requests found
...@@ -76,7 +76,7 @@ import de.cau.cs.kieler.klay.layered.LayeredLayoutProvider; ...@@ -76,7 +76,7 @@ import de.cau.cs.kieler.klay.layered.LayeredLayoutProvider;
* @author offtermatt, barner * @author offtermatt, barner
* @author $Author$ * @author $Author$
* @version $Rev$ * @version $Rev$
* @ConQAT.Rating YELLOW Hash: 16F143B594364B7086DDC34B46E25EA6 * @ConQAT.Rating YELLOW Hash: 1A25EB9AE5984C3C687BEF6B4566F949
*/ */
public class KielerAutoLayouter implements IAutoLayouter { public class KielerAutoLayouter implements IAutoLayouter {
...@@ -84,7 +84,7 @@ public class KielerAutoLayouter implements IAutoLayouter { ...@@ -84,7 +84,7 @@ public class KielerAutoLayouter implements IAutoLayouter {
private static final int NODE_MIN_WIDTH = 150; private static final int NODE_MIN_WIDTH = 150;
/** Height per port (used to derive minimum height of layouted element. */ /** Height per port (used to derive minimum height of layouted element. */
private static final int PORT_HEIGHT = 15; private static final int PORT_HEIGHT = 20;
/** Mapping from {@link IHierarchicElement}s to {@link KNode}s. */ /** Mapping from {@link IHierarchicElement}s to {@link KNode}s. */
private EMap<IHierarchicElement, KNode> modelElementsToKNodes; private EMap<IHierarchicElement, KNode> modelElementsToKNodes;
...@@ -215,7 +215,7 @@ public class KielerAutoLayouter implements IAutoLayouter { ...@@ -215,7 +215,7 @@ public class KielerAutoLayouter implements IAutoLayouter {
break; break;
} }
LayoutDataUtils.setStickyConnectorLayoutData((ILayoutedModelElement)port, orientation, LayoutDataUtils.setStickyConnectorLayoutData((ILayoutedModelElement)port, orientation,
(int)portLayout.getYpos()); (int)(portLayout.getYpos()));
} }
} }
...@@ -286,23 +286,19 @@ public class KielerAutoLayouter implements IAutoLayouter { ...@@ -286,23 +286,19 @@ public class KielerAutoLayouter implements IAutoLayouter {
Dimension dimension = getNodeSize((ILayoutedModelElement)curElement); Dimension dimension = getNodeSize((ILayoutedModelElement)curElement);
int portNmbr = Math.max(inputPorts.size(), outputPorts.size()); int portNmbr = Math.max(inputPorts.size(), outputPorts.size());
curLayout.setHeight(Math.max(portNmbr * PORT_HEIGHT, dimension.getHeight())); curLayout.setHeight(Math.max((1 + 2 * portNmbr) * PORT_HEIGHT, dimension.getHeight()));
curLayout.setWidth(Math.max(NODE_MIN_WIDTH, dimension.getWidth())); curLayout.setWidth(Math.max(NODE_MIN_WIDTH, dimension.getWidth()));
curKNode.setParent(parentNode); curKNode.setParent(parentNode);
modelElementsToKNodes.put(curElement, curKNode); modelElementsToKNodes.put(curElement, curKNode);
for(IConnector curPort : outputPorts) { for(IConnector curPort : outputPorts) {
KPort k = KimlUtil.createInitializedPort(); KPort k = createKPortFromIConnector(curPort, curKNode, outboundConnectorsToKPorts);
k.setNode(curKNode);
outboundConnectorsToKPorts.put(curPort, k);
if(genericPorts.contains(curPort)) { if(genericPorts.contains(curPort)) {
undirectedConnectorsToKPorts.put(curPort, k); undirectedConnectorsToKPorts.put(curPort, k);
} }
} }
for(IConnector curPort : inputPorts) { for(IConnector curPort : inputPorts) {
KPort k = KimlUtil.createInitializedPort(); createKPortFromIConnector(curPort, curKNode, inboundConnectorsToKPorts);
k.setNode(curKNode);
inboundConnectorsToKPorts.put(curPort, k);
} }
} }
...@@ -313,8 +309,8 @@ public class KielerAutoLayouter implements IAutoLayouter { ...@@ -313,8 +309,8 @@ public class KielerAutoLayouter implements IAutoLayouter {
for(IConnector curPort : hierarchicElement.getConnectors()) { for(IConnector curPort : hierarchicElement.getConnectors()) {
KNode virtual = KimlUtil.createInitializedNode(); KNode virtual = KimlUtil.createInitializedNode();
KShapeLayout virtualLayout = virtual.getData(KShapeLayout.class); KShapeLayout virtualLayout = virtual.getData(KShapeLayout.class);
virtualLayout.setHeight(50); virtualLayout.setHeight(PORT_HEIGHT);
virtualLayout.setWidth(50); virtualLayout.setWidth(2 * PORT_HEIGHT);
virtual.setParent(parentNode); virtual.setParent(parentNode);
KPort k = KimlUtil.createInitializedPort(); KPort k = KimlUtil.createInitializedPort();
...@@ -351,4 +347,29 @@ public class KielerAutoLayouter implements IAutoLayouter { ...@@ -351,4 +347,29 @@ public class KielerAutoLayouter implements IAutoLayouter {
} }
return parentNode; return parentNode;
} }
/**
* Converts a given {@link IConnection} into a {@link KPort}, and registers it with the given
* {@link KNode} (representing the {@link IHierarchicElement} containing the {@link IConnector}
* ) and a {@link IConnector}-to- {@link KPort} map.
*
* @param connector
* {@link IConnector} to be converted to {@link KPort}
* @param knode
* {@link KNode} that will contain the newly created {@link KPort}
* @param connectorsToKPorts
* Map between {@link IConnector}s and {@link KPort}s.
*
* @return {@link KNode} represeting the given {@link IConnector}.
*/
private KPort createKPortFromIConnector(IConnector connector, KNode knode,
EMap<IConnector, KPort> connectorsToKPorts) {
KPort k = KimlUtil.createInitializedPort();
k.setNode(knode);
KShapeLayout portLayout = k.getData(KShapeLayout.class);
portLayout.setHeight(PORT_HEIGHT);
connectorsToKPorts.put(connector, k);
return k;
}
} }
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment