Added sub-classes to diagrams
diff --git a/examples/org.eclipse.epsilon.examples.picto.xtext.domainmodel.picto/entity2graphviz.egl b/examples/org.eclipse.epsilon.examples.picto.xtext.domainmodel.picto/entity2graphviz.egl
index 59d9d7a..e846413 100644
--- a/examples/org.eclipse.epsilon.examples.picto.xtext.domainmodel.picto/entity2graphviz.egl
+++ b/examples/org.eclipse.epsilon.examples.picto.xtext.domainmodel.picto/entity2graphviz.egl
@@ -9,7 +9,7 @@
[%=e.getNodeName()%][shape=none, margin=0, label=<[%=e.getLabel()%]>]
[%}%]
-[%for (f in e.features.flatten().select(f|f.type.isTypeOf(Entity))){%]
+[%for (f in e.features.flatten().select(f|f.type.isTypeOf(Entity) and f.type <> e)){%]
[%=f.eContainer.getNodeName()%]->[%=f.type.getNodeName()%][arrowhead=[%=f.getArrow()%],arrowtail=none,tooltip="[%=f.name%]"];
[%}%]
@@ -17,6 +17,10 @@
[%=e.superType.getNodeName()%]->[%=e.getNodeName()%][arrowhead=none,arrowtail=empty,dir=back];
[%}%]
+[%for (s in Entity.all.select(en|en.superType = e)){%]
+ [%=e.getNodeName()%]->[%=s.getNodeName()%][arrowhead=none,arrowtail=empty,dir=back];
+[%}%]
+
}
[%
@@ -76,6 +80,7 @@
visibleEntities.add(e);
visibleEntities.addAll(e.features.select(f|f.type.isTypeOf(Entity)).collect(f|f.type));
if (e.superType.isDefined()) visibleEntities.add(e.superType);
+ visibleEntities.addAll(Entity.all.select(en|en.superType = e));
return visibleEntities;
}