Commit 0fe931c9 authored by Riegel's avatar Riegel
Browse files

Add FeatureNode Interface

parent 8afe47c2
...@@ -19,10 +19,11 @@ ...@@ -19,10 +19,11 @@
package de.hft.stuttgart.citydoctor2.gui.tree; package de.hft.stuttgart.citydoctor2.gui.tree;
import de.hft.stuttgart.citydoctor2.datastructure.BridgeObject; import de.hft.stuttgart.citydoctor2.datastructure.BridgeObject;
import de.hft.stuttgart.citydoctor2.datastructure.CityObject;
import de.hft.stuttgart.citydoctor2.gui.CheckStatus; import de.hft.stuttgart.citydoctor2.gui.CheckStatus;
import de.hft.stuttgart.citydoctor2.gui.Renderer; import de.hft.stuttgart.citydoctor2.gui.Renderer;
public class BridgeNode extends Renderable { public class BridgeNode extends Renderable implements FeatureNode {
private final BridgeObject bridge; private final BridgeObject bridge;
...@@ -52,4 +53,8 @@ public class BridgeNode extends Renderable { ...@@ -52,4 +53,8 @@ public class BridgeNode extends Renderable {
} }
@Override
public CityObject getFeature() {
return bridge;
}
} }
package de.hft.stuttgart.citydoctor2.gui.tree; package de.hft.stuttgart.citydoctor2.gui.tree;
import de.hft.stuttgart.citydoctor2.datastructure.Building; import de.hft.stuttgart.citydoctor2.datastructure.Building;
import de.hft.stuttgart.citydoctor2.datastructure.CityObject;
import de.hft.stuttgart.citydoctor2.gui.CheckStatus; import de.hft.stuttgart.citydoctor2.gui.CheckStatus;
import de.hft.stuttgart.citydoctor2.gui.Renderer; import de.hft.stuttgart.citydoctor2.gui.Renderer;
public class BuildingNode extends Renderable { public class BuildingNode extends Renderable implements FeatureNode {
private final Building building; private final Building building;
...@@ -37,4 +38,8 @@ public class BuildingNode extends Renderable { ...@@ -37,4 +38,8 @@ public class BuildingNode extends Renderable {
} }
} }
@Override
public CityObject getFeature() {
return building;
}
} }
package de.hft.stuttgart.citydoctor2.gui.tree; package de.hft.stuttgart.citydoctor2.gui.tree;
import de.hft.stuttgart.citydoctor2.datastructure.AbstractRoom;
import de.hft.stuttgart.citydoctor2.datastructure.CityFurniture; import de.hft.stuttgart.citydoctor2.datastructure.CityFurniture;
import de.hft.stuttgart.citydoctor2.datastructure.CityObject;
import de.hft.stuttgart.citydoctor2.gui.CheckStatus; import de.hft.stuttgart.citydoctor2.gui.CheckStatus;
import de.hft.stuttgart.citydoctor2.gui.Renderer; import de.hft.stuttgart.citydoctor2.gui.Renderer;
public class CityFurnitureNode extends Renderable{ public class CityFurnitureNode extends Renderable implements FeatureNode {
private final CityFurniture cityFurniture; private final CityFurniture cityFurniture;
...@@ -34,4 +34,9 @@ public class CityFurnitureNode extends Renderable{ ...@@ -34,4 +34,9 @@ public class CityFurnitureNode extends Renderable{
setStatus(CheckStatus.OK); setStatus(CheckStatus.OK);
} }
} }
@Override
public CityObject getFeature() {
return cityFurniture;
}
} }
package de.hft.stuttgart.citydoctor2.gui.tree;
import de.hft.stuttgart.citydoctor2.datastructure.CityObject;
public interface FeatureNode {
public CityObject getFeature();
}
package de.hft.stuttgart.citydoctor2.gui.tree; package de.hft.stuttgart.citydoctor2.gui.tree;
import de.hft.stuttgart.citydoctor2.datastructure.CityObject;
import de.hft.stuttgart.citydoctor2.datastructure.GenericCityObject; import de.hft.stuttgart.citydoctor2.datastructure.GenericCityObject;
import de.hft.stuttgart.citydoctor2.gui.CheckStatus; import de.hft.stuttgart.citydoctor2.gui.CheckStatus;
import de.hft.stuttgart.citydoctor2.gui.Renderer; import de.hft.stuttgart.citydoctor2.gui.Renderer;
public class GenericCityObjectsNode extends Renderable{ public class GenericCityObjectsNode extends Renderable implements FeatureNode {
private final GenericCityObject gcobject; private final GenericCityObject gcobject;
...@@ -33,4 +34,9 @@ public class GenericCityObjectsNode extends Renderable{ ...@@ -33,4 +34,9 @@ public class GenericCityObjectsNode extends Renderable{
setStatus(CheckStatus.OK); setStatus(CheckStatus.OK);
} }
} }
@Override
public CityObject getFeature() {
return gcobject;
}
} }
package de.hft.stuttgart.citydoctor2.gui.tree; package de.hft.stuttgart.citydoctor2.gui.tree;
import de.hft.stuttgart.citydoctor2.datastructure.CityObject;
import de.hft.stuttgart.citydoctor2.datastructure.Tunnel; import de.hft.stuttgart.citydoctor2.datastructure.Tunnel;
import de.hft.stuttgart.citydoctor2.gui.CheckStatus; import de.hft.stuttgart.citydoctor2.gui.CheckStatus;
import de.hft.stuttgart.citydoctor2.gui.Renderer; import de.hft.stuttgart.citydoctor2.gui.Renderer;
public class TunnelNode extends Renderable{ public class TunnelNode extends Renderable implements FeatureNode {
private final Tunnel tunnel; private final Tunnel tunnel;
...@@ -36,4 +37,9 @@ public class TunnelNode extends Renderable{ ...@@ -36,4 +37,9 @@ public class TunnelNode extends Renderable{
setStatus(CheckStatus.OK); setStatus(CheckStatus.OK);
} }
} }
@Override
public CityObject getFeature() {
return tunnel;
}
} }
...@@ -18,11 +18,12 @@ ...@@ -18,11 +18,12 @@
*/ */
package de.hft.stuttgart.citydoctor2.gui.tree; package de.hft.stuttgart.citydoctor2.gui.tree;
import de.hft.stuttgart.citydoctor2.datastructure.CityObject;
import de.hft.stuttgart.citydoctor2.datastructure.Vegetation; import de.hft.stuttgart.citydoctor2.datastructure.Vegetation;
import de.hft.stuttgart.citydoctor2.gui.CheckStatus; import de.hft.stuttgart.citydoctor2.gui.CheckStatus;
import de.hft.stuttgart.citydoctor2.gui.Renderer; import de.hft.stuttgart.citydoctor2.gui.Renderer;
public class VegetationNode extends Renderable { public class VegetationNode extends Renderable implements FeatureNode {
private final Vegetation veg; private final Vegetation veg;
private final String text; private final String text;
...@@ -53,4 +54,8 @@ public class VegetationNode extends Renderable { ...@@ -53,4 +54,8 @@ public class VegetationNode extends Renderable {
renderer.render(veg); renderer.render(veg);
} }
@Override
public CityObject getFeature() {
return veg;
}
} }
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment