Prechádzať zdrojové kódy

remove entity added

Gilian Joosen 10 rokov pred
rodič
commit
9d90e01f40

+ 1 - 0
src/agenda/Agenda.java

@@ -53,6 +53,7 @@ public class Agenda implements Serializable {
     
     public void addAct(Act act){
         this.acts.add(act);
+        System.err.println(this.acts);
     }
     
     public List<Artist> getArtists() {

+ 0 - 2
src/gui/panels/edit/dialogs/ActDialogPanel.java

@@ -52,7 +52,6 @@ public class ActDialogPanel extends JDialog{
         main.setBorder(BorderFactory.createEmptyBorder(10, 20, 10, 20));
         main.add(this.stageChooser());
         main.add(this.genreChooser());
-        //todo dates
         main.add(this.dates());
         main.add(this.popularity());
         main.add(this.artistsChooser());
@@ -81,7 +80,6 @@ public class ActDialogPanel extends JDialog{
         main.add(this.stageChooser(act));
         main.add(this.genreChooser());
         this.genre.setText(this.act.getGenre());
-        //todo dates
         main.add(this.dates());
 
         for(Artist artist: this.act.getArtists()){

+ 4 - 4
src/gui/simulator/AccessPoint.java

@@ -9,17 +9,17 @@ public class AccessPoint extends DrawEngine implements Serializable {
 		private Terrain terrain;
 
     public AccessPoint(Terrain terrain, int x, int y) {
-        super(images, x, y, 1, 0, SimulatorPane.Objects.ENTRANCE);
+        super(images, x, y, 1, 0, SimulatorPane.Objects.ENTRANCE, terrain);
         this.terrain = terrain;
     }
 
     public AccessPoint(Terrain terrain, int x, int y, double scale, double distance) {
-        super(images, x, y, scale, distance, SimulatorPane.Objects.ENTRANCE);
+        super(images, x, y, scale, distance, SimulatorPane.Objects.ENTRANCE, terrain);
         this.terrain = terrain;
     }
     
-    public AccessPoint(int x, int y, double scale, double distance) {
-        super(images, x, y, scale, distance, SimulatorPane.Objects.ENTRANCE);
+    public AccessPoint(int x, int y, double scale, double distance, Terrain terrain) {
+        super(images, x, y, scale, distance, SimulatorPane.Objects.ENTRANCE, terrain);
         this.terrain = terrain;
     }
     

+ 2 - 2
src/gui/simulator/Border.java

@@ -15,8 +15,8 @@ public class Border extends DrawEngine implements Serializable {
 	private int width;
 	private int height;
 
-    public  Border(int x, int y, int width, int heigth) {
-        super(images, x, y, 1, 0, SimulatorPane.Objects.BORDER);
+    public  Border(int x, int y, int width, int heigth, Terrain terrain) {
+        super(images, x, y, 1, 0, SimulatorPane.Objects.BORDER, terrain);
     }
     
     public String getFacilityName(){

+ 7 - 1
src/gui/simulator/DrawEngine.java

@@ -18,14 +18,16 @@ public abstract class DrawEngine {
     private double x, y, rotation, scale;
     private double distanceToOtherObjects;
     public SimulatorPane.Objects type;
+    private Terrain terrain;
 
-    public DrawEngine(Images.ImageType image, int x, int y, double scale, double distanceToOtherObjects, SimulatorPane.Objects objecttype){
+    public DrawEngine(Images.ImageType image, int x, int y, double scale, double distanceToOtherObjects, SimulatorPane.Objects objecttype, Terrain terrain){
         this.image = image;
         this.type = objecttype;
         this.x = x;
         this.y = y;
         this.scale = scale;
         this.distanceToOtherObjects = distanceToOtherObjects;
+        this.terrain = terrain;
     }
 
     public AffineTransform getAffineTransform(){
@@ -102,4 +104,8 @@ public abstract class DrawEngine {
     public Rectangle2D.Double getRect(){
         return new Rectangle2D.Double(-distanceToOtherObjects, - distanceToOtherObjects, Images.getImage(image).getWidth(null)  + 2* distanceToOtherObjects, Images.getImage(image).getHeight(null) + 2*distanceToOtherObjects);
     }
+
+    public void remove(){
+        this.terrain.getEntities().remove(this);
+    }
 }

+ 3 - 3
src/gui/simulator/ExitPoint.java

@@ -10,12 +10,12 @@ public class ExitPoint extends DrawEngine implements Serializable {
 
 
     public ExitPoint(Terrain terrain, int x, int y, double scale, double distance) {
-        super(images, x, y, scale, distance, SimulatorPane.Objects.EXIT);
+        super(images, x, y, scale, distance, SimulatorPane.Objects.EXIT, terrain);
         this.terrain = terrain;
     }
     
-    public ExitPoint(int x, int y, double scale, double distance) {
-        super(images, x, y, scale, distance, SimulatorPane.Objects.EXIT);
+    public ExitPoint(int x, int y, double scale, double distance, Terrain terrain) {
+        super(images, x, y, scale, distance, SimulatorPane.Objects.EXIT, terrain);
         this.terrain = terrain;
     }
     

+ 15 - 15
src/gui/simulator/Sidebar.java

@@ -65,23 +65,23 @@ public class Sidebar implements Serializable  {
 	 */
 	public void loadDrawableObjects(){
 		//stages
-		drawableStages.put("Stage1",new SimulatorStage(0, 0, 0.26, 1));
-		drawableStages.put("Stage2",new SimulatorStage(0, 0, 0.26, 1));
-		drawableStages.put("Stage3",new SimulatorStage(0, 0, 0.26, 1));
-		drawableStages.put("Stage4",new SimulatorStage(0, 0, 0.26, 1));
-		drawableStages.put("Stage5",new SimulatorStage(0, 0, 0.26, 1));
-		drawableStages.put("Stage6",new SimulatorStage(0, 0, 0.26, 1));
-		drawableStages.put("Stage7",new SimulatorStage(0, 0, 0.26, 1));
-		drawableStages.put("Stage8",new SimulatorStage(0, 0, 0.26, 1));
-		drawableStages.put("Stage9",new SimulatorStage(0, 0, 0.26, 1));
-		drawableStages.put("Stage10",new SimulatorStage(0, 0, 0.26, 1));
-		drawableStages.put("Stage11",new SimulatorStage(0, 0, 0.26, 1));
+		drawableStages.put("Stage1",new SimulatorStage(0, 0, 0.26, 1, terrain));
+		drawableStages.put("Stage2",new SimulatorStage(0, 0, 0.26, 1, terrain));
+		drawableStages.put("Stage3",new SimulatorStage(0, 0, 0.26, 1, terrain));
+		drawableStages.put("Stage4",new SimulatorStage(0, 0, 0.26, 1, terrain));
+		drawableStages.put("Stage5",new SimulatorStage(0, 0, 0.26, 1, terrain));
+		drawableStages.put("Stage6",new SimulatorStage(0, 0, 0.26, 1, terrain));
+		drawableStages.put("Stage7",new SimulatorStage(0, 0, 0.26, 1, terrain));
+		drawableStages.put("Stage8",new SimulatorStage(0, 0, 0.26, 1, terrain));
+		drawableStages.put("Stage9",new SimulatorStage(0, 0, 0.26, 1, terrain));
+		drawableStages.put("Stage10",new SimulatorStage(0, 0, 0.26, 1, terrain));
+		drawableStages.put("Stage11",new SimulatorStage(0, 0, 0.26, 1, terrain));
 		
 		//facilities
-		drawableFacilities.put("Toilet",new RestRoom(0, 0, 0.8, 1));
+		drawableFacilities.put("Toilet",new RestRoom(0, 0, 0.8, 1, this.terrain));
 		drawableFacilities.put("Ingang",new AccessPoint(terrain, 0, 0, 0.26, 1));
 		drawableFacilities.put("Uitgang",new ExitPoint(terrain, 0, 0, 0.26, 1));
-		drawableFacilities.put("Snackbar",new SnackBar(0, 0, 0.2, 1));
+		drawableFacilities.put("Snackbar",new SnackBar(0, 0, 0.2, 1, this.terrain));
 		
 		//paths
 		//drawablePaths.add("My awesome path name", new AwesomePath());
@@ -176,8 +176,8 @@ public class Sidebar implements Serializable  {
     			if(object.getValue().contains(e.getPoint())){
     				if(object.getValue() instanceof DrawEngine){
 	    				try {
-							Constructor<?> constructor = object.getValue().getClass().getConstructor(int.class, int.class, double.class, double.class);
-							dragObject = (DrawEngine) constructor.newInstance(new Object[] { (int)clickPoint.getX(),(int)clickPoint.getY(), 0.5, 10 });
+							Constructor<?> constructor = object.getValue().getClass().getConstructor(int.class, int.class, double.class, double.class, Terrain.class);
+							dragObject = (DrawEngine) constructor.newInstance(new Object[] { (int)clickPoint.getX(),(int)clickPoint.getY(), 0.5, 10, terrain });
 							terrain.setDragObject(dragObject);					
 	    				} catch (NoSuchMethodException | SecurityException |  IllegalArgumentException | InstantiationException | IllegalAccessException | InvocationTargetException e1) {
 							e1.printStackTrace();

+ 16 - 0
src/gui/simulator/StageDialog.java

@@ -34,7 +34,23 @@ public class StageDialog extends JDialog {
             this.comboBox = this.comboBox();
             panel.add(this.comboBox);
             panel.add(this.buttons());
+
+
+        }else{
+            //algemeen object
+            panel.add(new JLabel("edit"));
         }
+
+        JButton removeButton = new JButton("remove");
+        removeButton.addActionListener(new ActionListener() {
+            @Override
+            public void actionPerformed(ActionEvent e) {
+                drawEngine.remove();
+                StageDialog.this.dispose();
+            }
+        });
+
+        panel.add(removeButton);
         return panel;
     }
 

+ 4 - 1
src/gui/simulator/Terrain.java

@@ -134,7 +134,6 @@ public class Terrain extends JPanel {
 
 								//double click
 								if(e.getClickCount() == 2){
-									//TODO open dialog
 									JDialog dialog = new StageDialog(drawObject, agenda);
 
 									//position
@@ -452,4 +451,8 @@ public class Terrain extends JPanel {
     public void toggleGrid(){
     	grid = !grid;
     }
+
+	public List<DrawEngine> getEntities() {
+		return entities;
+	}
 }

+ 5 - 4
src/gui/simulator/facilities/RestRoom.java

@@ -5,18 +5,19 @@ import java.io.Serializable;
 import gui.simulator.DrawEngine;
 import gui.simulator.Images;
 import gui.simulator.SimulatorPane;
+import gui.simulator.Terrain;
 
 public class RestRoom extends DrawEngine implements Serializable {
 
 	private static Images.ImageType images = Images.ImageType.Toilet;
 	private static String facilityName = "Plee";
 
-    public RestRoom(int x, int y) {
-        super(images, x, y, 1, 0, SimulatorPane.Objects.RESTROOM);
+    public RestRoom(int x, int y, Terrain terrain) {
+        super(images, x, y, 1, 0, SimulatorPane.Objects.RESTROOM, terrain);
     }
 
-    public RestRoom(int x, int y, double scale, double distance) {
-        super(images, x, y, scale, distance, SimulatorPane.Objects.RESTROOM);
+    public RestRoom(int x, int y, double scale, double distance, Terrain terrain) {
+        super(images, x, y, scale, distance, SimulatorPane.Objects.RESTROOM, terrain);
     }
     
     public String getFacilityName(){

+ 5 - 4
src/gui/simulator/facilities/SimulatorStage.java

@@ -6,6 +6,7 @@ import agenda.Stage;
 import gui.simulator.DrawEngine;
 import gui.simulator.Images;
 import gui.simulator.SimulatorPane;
+import gui.simulator.Terrain;
 
 public class SimulatorStage extends DrawEngine implements Serializable {
 
@@ -13,12 +14,12 @@ public class SimulatorStage extends DrawEngine implements Serializable {
 	private static String facilityName = "Stage";
     private Stage stage;
 
-    public SimulatorStage(int x, int y) {
-        super(images, x, y, 1, 0,SimulatorPane.Objects.STAGE);
+    public SimulatorStage(int x, int y, Terrain terrain) {
+        super(images, x, y, 1, 0,SimulatorPane.Objects.STAGE, terrain);
     }
 
-    public SimulatorStage(int x, int y, double scale, double distance) {
-        super(images, x, y, scale, distance,SimulatorPane.Objects.STAGE);
+    public SimulatorStage(int x, int y, double scale, double distance, Terrain terrain) {
+        super(images, x, y, scale, distance,SimulatorPane.Objects.STAGE, terrain);
     }
     
     public String getFacilityName(){

+ 5 - 4
src/gui/simulator/facilities/SnackBar.java

@@ -5,18 +5,19 @@ import java.io.Serializable;
 import gui.simulator.DrawEngine;
 import gui.simulator.Images;
 import gui.simulator.SimulatorPane;
+import gui.simulator.Terrain;
 
 public class SnackBar extends DrawEngine implements Serializable{
 
 	private static Images.ImageType images = Images.ImageType.Snackbar;
 	private static String facilityName = "Snackbar";
 
-    public SnackBar(int x, int y) {
-        super(images, x, y, 1, 0, SimulatorPane.Objects.SNACKBAR);
+    public SnackBar(int x, int y, Terrain terrain) {
+        super(images, x, y, 1, 0, SimulatorPane.Objects.SNACKBAR, terrain);
     }
 
-    public SnackBar(int x, int y, double scale, double distance) {
-        super(images, x, y, scale, distance, SimulatorPane.Objects.SNACKBAR);
+    public SnackBar(int x, int y, double scale, double distance, Terrain terrain) {
+        super(images, x, y, scale, distance, SimulatorPane.Objects.SNACKBAR, terrain);
     }
     
     public String getFacilityName(){

+ 5 - 4
src/gui/simulator/facilities/Stage.java

@@ -5,18 +5,19 @@ import java.io.Serializable;
 import gui.simulator.DrawEngine;
 import gui.simulator.Images;
 import gui.simulator.SimulatorPane;
+import gui.simulator.Terrain;
 
 public class Stage extends DrawEngine implements Serializable{
 
 	private static Images.ImageType images = Images.ImageType.Tent;
 	private static String facilityName = "Stage";
 
-    public Stage(int x, int y) {
-        super(images, x, y, 1, 0,SimulatorPane.Objects.STAGE);
+    public Stage(int x, int y, Terrain terrain) {
+        super(images, x, y, 1, 0,SimulatorPane.Objects.STAGE, terrain);
     }
 
-    public Stage(int x, int y, double scale, double distance) {
-        super(images, x, y, scale, distance,SimulatorPane.Objects.STAGE);
+    public Stage(int x, int y, double scale, double distance, Terrain terrain) {
+        super(images, x, y, scale, distance,SimulatorPane.Objects.STAGE, terrain);
     }
     
     public String getFacilityName(){