Improved code generation. Organized imports are *finally* back -- decided to do these manually since HybridLabs is not EPL. Also took out some (hopefully) no longer necessary braces in search code.
diff --git a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.gen.ascape/src/metaabm/ascape/tmpl/AscapeAspect.xpt b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.gen.ascape/src/metaabm/ascape/tmpl/AscapeAspect.xpt
index f2f8c51..2618082 100644
--- a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.gen.ascape/src/metaabm/ascape/tmpl/AscapeAspect.xpt
+++ b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.gen.ascape/src/metaabm/ascape/tmpl/AscapeAspect.xpt
@@ -11,21 +11,52 @@
 «EXTENSION metaabm::ascape::tmpl::namesascape»

 «EXTENSION metaabm::ascape::tmpl::inferascape»

 

-«AROUND metaabm::tmpl::Java::ExtendType FOR SProjection-»«pkgm()-»Scape«ENDAROUND»

+«AROUND metaabm::tmpl::Java::ExtendType FOR SProjection-»Scape«ENDAROUND»

 «AROUND metaabm::tmpl::Java::ExtendType FOR SContext-»«typeName()-»«ENDAROUND»

 «AROUND metaabm::tmpl::Java::ExtendType FOR SAgent-»«pkgm()-»Scape«ENDAROUND»

 

-«AROUND metaabm::tmpl::Java::ClassInheiritance FOR SContext-» extends «pkgm()»Scape«ENDAROUND»

-«AROUND metaabm::tmpl::Java::ClassInheiritance FOR SAgent-» extends «pkgm()»«IF isHost()-»HostCell«ELSE-»CellOccupant«ENDIF-»«ENDAROUND»

-«AROUND metaabm::tmpl::Java::ClassInheiritance FOR SStyle-» extends org.ascape.util.vis.DrawFeature«ENDAROUND»

+«AROUND metaabm::tmpl::Java::ClassInheiritance FOR SContext-» extends Scape«ENDAROUND»

+«AROUND metaabm::tmpl::Java::ClassInheiritance FOR SAgent-» extends «IF isHost()-»HostCell«ELSE-»CellOccupant«ENDIF-»«ENDAROUND»

+«AROUND metaabm::tmpl::Java::ClassInheiritance FOR SStyle-» extends DrawFeature«ENDAROUND»

 

+«AROUND metaabm::tmpl::Java::Imports FOR SStyle-»

+import java.awt.Graphics;

+import java.awt.Graphics2D;

+import java.awt.Shape;

+import java.awt.geom.Ellipse2D;

+import java.awt.geom.Rectangle2D;

+import org.ascape.util.vis.DrawFeature;

+

+import org.ascape.model.CellOccupant;

+import org.ascape.model.HostCell;

+«ENDAROUND»

+

+«AROUND metaabm::tmpl::Java::Imports FOR SAgent-»

+import java.awt.Color;

+import java.awt.Graphics;

+import java.awt.image.BufferedImage;

+

+import java.util.List;

+

+import org.ascape.model.Agent;

+import org.ascape.model.CellOccupant;

+import org.ascape.model.HostCell;

+import org.ascape.model.Scape;

+import org.ascape.model.event.ScapeEvent;

+import org.ascape.model.rule.Rule;

+import org.ascape.model.space.CollectionSpace;

+import org.ascape.model.space.Coordinate2DDiscrete;

+import org.ascape.model.space.Graph;

+import org.ascape.model.space.Location;

+import org.ascape.util.Conditional;

+«ENDAROUND»

 

 «AROUND metaabm::tmpl::Java::Body FOR SAgent-»

 	«targetDef.proceed()»

 	«EXPAND metaabm::ascape::tmpl::ScapeAspect::AgentBody-»

 

-    public java.awt.Color getColor() {

-    	return java.awt.Color.LIGHT_GRAY;

+    public Color getColor() {

+    	return Color.LIGHT_GRAY;

     }

 «ENDAROUND»

 

@@ -39,14 +70,14 @@
 

 «AROUND metaabm::tmpl::Java::Body FOR SStyle-»

 	«targetDef.proceed()»

-    public void draw(java.awt.Graphics g, Object object, int width, int height) {

-    	java.awt.Shape shape = null;

+    public void draw(Graphics g, Object object, int width, int height) {

+    	Shape shape = null;

 		«IF agent.isHost()-»

 			«agent.typeName()» «rootActivity.id()» = («agent.typeName()») object;

 			«FOREACH ((AGroup) rootActivity).roots AS act»«agent.typeName()» «act.id()» = «rootActivity.id()»;«ENDFOREACH»

 			«EXPAND metaabm::tmpl::Java::ActionBody-»

 		«ELSE-»

-	        «pkgm()»HostCell «rootActivity.id()»Cell = («pkgm()»HostCell) object;

+	        HostCell «rootActivity.id()»Cell = (HostCell) object;

 	        if («rootActivity.id()»Cell.getOccupant() instanceof «agent.typeName()») {

 				«agent.typeName()» «rootActivity.id()» = («agent.typeName()») «rootActivity.id()»Cell.getOccupant();

 				«FOREACH ((AGroup) rootActivity).roots AS act»«agent.typeName()» «act.id()» = «rootActivity.id()»;«ENDFOREACH»

@@ -66,7 +97,7 @@
 	//if (getRunner().getEnvironment() instanceof org.ascape.runtime.applet.AppletEnvironment) {

     //    chart.getChart().getLegend().setAnchor(com.jrefinery.chart.Legend.SOUTH);

 	//}

-	java.awt.Graphics dummyGraphics = new java.awt.image.BufferedImage(10, 10, java.awt.image.BufferedImage.TYPE_INT_RGB).getGraphics();

+	Graphics dummyGraphics = new BufferedImage(10, 10, BufferedImage.TYPE_INT_RGB).getGraphics();

 

     «FOREACH ((SContext) reference).agents AS agent»

     «IF !agent.styles.isEmpty-»

@@ -98,7 +129,7 @@
     «style.id()».draw(dummyGraphics, «agent.id()»Host, 4, 4);

     «ENDIF»

     {

-    java.awt.Color agentColor = dummyGraphics.getColor();

+    Color agentColor = dummyGraphics.getColor();

 	chart.addSeries("Count «agent.typeName()» «((List) setter).first()»", agentColor);

 	}

     «ENDFOREACH-»

@@ -150,19 +181,19 @@
 		«targetDef.proceed()»

 		g.setColor(«id()»);

 	«ELSEIF function.id() == "shapeOval"-»

-		shape = new java.awt.geom.Ellipse2D.Double(0, 0, width - 2, height - 2);

+		shape = new Ellipse2D.Double(0, 0, width - 2, height - 2);

 	«ELSEIF function.id() == "shapeRectangle"-»

 		«IF !reference.isHost()-»

-		shape = new java.awt.geom.Rectangle2D.Double(0, 0, width - 1, height - 1);

+		shape = new Rectangle2D.Double(0, 0, width - 1, height - 1);

 		«ELSE-»

-		shape = new java.awt.geom.Rectangle2D.Double(0, 0, width, height);

+		shape = new Rectangle2D.Double(0, 0, width, height);

 		«ENDIF-»

 	«ELSEIF function.id() == "shapeMarker"-»

-        shape = new java.awt.geom.Ellipse2D.Double(width * .25 - 1, width * .25 - 1, width * .5 - 1, width * .5 - 1);

+        shape = new Ellipse2D.Double(width * .25 - 1, width * .25 - 1, width * .5 - 1, width * .5 - 1);

 	«ELSEIF function.id().startsWith("graphicFill")-»

-        ((java.awt.Graphics2D) g).fill(shape);

+        ((Graphics2D) g).fill(shape);

 	«ELSEIF function.id().startsWith("graphicOutline")-»

-        ((java.awt.Graphics2D) g).draw(shape);

+        ((Graphics2D) g).draw(shape);

     «ELSE-»

 	 	«IF selected == rootSelected || allTargets.typeSelect(ASet).collect(e | e.parameter).size > 0»

 			«targetDef.proceed()»

@@ -252,7 +283,7 @@
 

 «AROUND metaabm::tmpl::Java::ActionBody FOR FFunction-»

 	«IF id() == "withinBoundaries"-»

-        «pkgs()»Coordinate2DDiscrete coor = («pkgs()»Coordinate2DDiscrete) getCoordinate();

+        Coordinate2DDiscrete coor = (Coordinate2DDiscrete) getCoordinate();

         return (coor.getYValue() >= bounds[0]

                 && coor.getXValue() >= bounds[1]

                 && coor.getYValue() <= bounds[2]

diff --git a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.gen.ascape/src/metaabm/ascape/tmpl/ScapeAspect.xpt b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.gen.ascape/src/metaabm/ascape/tmpl/ScapeAspect.xpt
index 9420a7f..2908abe 100644
--- a/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.gen.ascape/src/metaabm/ascape/tmpl/ScapeAspect.xpt
+++ b/org.eclipse.amp.amf/plugins/org.eclipse.amp.amf.gen.ascape/src/metaabm/ascape/tmpl/ScapeAspect.xpt
@@ -12,7 +12,6 @@
 «EXTENSION metaabm::ascape::tmpl::namesascape»

 «EXTENSION metaabm::ascape::tmpl::inferascape»

 

-

 «DEFINE AgentBody FOR SAgent-»

 	«IF owner != null»

 	public «owner.typeName()» «owner.getterName()»() {

@@ -21,7 +20,7 @@
 	«ENDIF»

 	«IF parent != null && !((SContext) parent).projections.typeSelect(SNetwork).isEmpty-»

 	public java.util.List getNetwork() {

-		return ((«pkgs()»Graph) «((SContext) parent).getterName()»().«((SContext) parent).projections.typeSelect(SNetwork).get(0).getterName()»().getSpace()).getNeighborsFor(this);

+		return ((Graph) «((SContext) parent).getterName()»().«((SContext) parent).projections.typeSelect(SNetwork).get(0).getterName()»().getSpace()).getNeighborsFor(this);

 	}

 	«ENDIF-»

 «ENDDEFINE»

@@ -96,7 +95,7 @@
 		«ENDIF-»

 	}

 	

-    public void scapeSetup(«pkgm()»event.ScapeEvent scapeEvent) {

+    public void scapeSetup(ScapeEvent scapeEvent) {

         //Set the size of the scape populations, e.g. for mutable scapes that need to have their size reset

         «EXPAND metaabm::tmpl::Java::ProtectedRegion("ScapeSetup")»

 		«IF (rootActivity != null)-»

@@ -128,7 +127,7 @@
 

 «DEFINE Conditional (List[metaabm::act::AAct] path, Boolean inner) FOR AAct-»

     «IF conditionForAscape()-»

-        «pkgu()»Conditional «selector().id()»Condition = new «pkgu()»Conditional() {

+        Conditional «selector().id()»Condition = new Conditional() {

             private static final long serialVersionUID = 6846144446402098985L;

 

             public boolean meetsCondition(Object «selector().id()»Cell) {

@@ -155,7 +154,7 @@
     «selector().typeName()» «selector().id()» = («selector().typeName()») «findStatement(path)»;

     «ELSE-»

     «selector().typeName()» «selector().id()» = null;

-    «pkgs()»Location «selector().id()»Location = «findStatement(path)»;

+    Location «selector().id()»Location = «findStatement(path)»;

     if («selector().id()»Location != null) {

         «selector().id()» = («selector().typeName()») «converted(selector().id() + "Location")»;

     }

@@ -199,19 +198,19 @@
 «DEFINE CreateScape(int stage) FOR ABuildSpace-»«ENDDEFINE»

 «DEFINE CreateScape(int stage) FOR ABuildNetwork-»

 		«IF stage == 0-»

-        «projection.fieldName()» = new «pkgm()»Scape(new «projection.spaceClass()»());

+        «projection.fieldName()» = new Scape(new «projection.spaceClass()»());

         «projection.fieldName()».setName("«label»");

 		add(«projection.fieldName()»);

 		«ENDIF-»

 «ENDDEFINE»

 «DEFINE CreateScape(int stage) FOR ABuildGrid-»

 		«IF stage == 0-»

-	        «projection.fieldName()» = new «pkgm()»Scape(new «projection.spaceClass()»());

+	        «projection.fieldName()» = new Scape(new «projection.spaceClass()»());

 	        «projection.fieldName()».setPrototypeAgent(new «fillAgent.typeName()»());

 	        «projection.fieldName()».setExtent(new «projection.coordinateType()»(«projection.getterName()»Dimensions()));

 	        «projection.fieldName()».setName("«label»");

 	        «IF projection.periodic() != ""-»

-	        ((«pkgs()»CollectionSpace) «projection.fieldName()».getSpace()).setPeriodic(«projection.periodic()»);

+	        ((CollectionSpace) «projection.fieldName()».getSpace()).setPeriodic(«projection.periodic()»);

 	        «ENDIF-»

 			add(«projection.fieldName()»);

 			org.ascape.model.Scape «fillAgent.fieldName()» = «projection.id()»;

@@ -232,10 +231,10 @@
 	«IF !isHost()»

 		«IF stage == 0-»

 		«typeName()» «proto()» = create«typeName()»Prototype();

-		«scape()» = new «pkgm()»Scape();

+		«scape()» = new Scape();

 		«scape()».setName("«label»");

 		«scape()».setPrototypeAgent(«proto()»);

-        «scape()».setExecutionOrder(«pkgm()»Scape.RULE_ORDER);

+        «scape()».setExecutionOrder(Scape.RULE_ORDER);

 		«ELSEIF stage == 1»

 		add(«scape()»);

 		«ELSEIF stage == 2»

@@ -318,18 +317,18 @@
 «ENDDEFINE»

 

 «DEFINE ChildBuilder FOR ARule-»

-		«reference.scape()».addRule(new «pkgm()»rule.Rule("«label»") {

+		«reference.scape()».addRule(new Rule("«label»") {

 			private static final long serialVersionUID = 6846144446402098981L;

-			public void execute(«pkgm()»Agent a) {

+			public void execute(Agent a) {

 				((«reference.implementation.qualifiedName») a).«id()»();

 			}

 		});

 «ENDDEFINE»

 «DEFINE ChildBuilder FOR AInitialize-»

 		«REM»Initialize is automatically invoked by default from framework«ENDREM»

-		«reference.scape()».addInitialRule(new «pkgm()»rule.Rule("«label»") {

+		«reference.scape()».addInitialRule(new Rule("«label»") {

 			private static final long serialVersionUID = 6846144446402098982L;

-			public void execute(«pkgm()»Agent a) {

+			public void execute(Agent a) {

 				((«reference.implementation.qualifiedName») a).«id()»();

 			}

 		});