Teh-Hai Julian Zheng před 7 roky
rodič
revize
164d64ccd8

+ 1 - 1
src/classes/CpsNode.java

@@ -10,7 +10,7 @@ public class CpsNode extends CpsObject {
 		super(objName);
 		this.setConnections(new ArrayList<CpsEdge>());
 		this.setImage("/Images/node.png");
-		this.setSav("Canvas");
+		this.setSav("CVS");
 	}
 	
 

+ 1 - 1
src/classes/HolonElement.java

@@ -47,7 +47,7 @@ public class HolonElement {
 		setActive(element.getActive());
 		setSign(element.getEnergy());
 		setEnergyAt(element.getEnergy());
-		setSav("Canvas");
+		setSav("CVS");
 		setObj(element.getObj());
 	}
 

+ 12 - 1
src/classes/HolonObject.java

@@ -40,8 +40,9 @@ public class HolonObject extends CpsObject {
 
 	public HolonObject(CpsObject obj) {
 		super(obj);
-		setElements(MultiPurposeController.copyArrayList(((HolonObject)obj).getElements()));
 		setEleIdx(MultiPurposeController.copyHashMap(((HolonObject) obj).getEleIdx()));
+		setElements(copyElements(((HolonObject)obj).getElements()));
+
 
 	}
 
@@ -115,6 +116,8 @@ public class HolonObject extends CpsObject {
 		}
 		return objString;
 	}
+	
+	
 
 	/**
 	 * @return the eleIdx
@@ -129,4 +132,12 @@ public class HolonObject extends CpsObject {
 	public void setEleIdx(HashMap<String, Integer> eleIdx) {
 		EleIdx = eleIdx;
 	}
+	
+	public ArrayList<HolonElement> copyElements(ArrayList<HolonElement> arr) {
+		ArrayList<HolonElement> newArr = new ArrayList<>();
+		for (HolonElement t : arr) {
+			newArr.add(new HolonElement(t));
+		}
+		return newArr;
+	}
 }

+ 3 - 11
src/ui/controller/MultiPurposeController.java

@@ -119,17 +119,9 @@ public class MultiPurposeController {
 
 	}
 
-	/**
-	 * Copies all Object inside of an Arraylist
-	 * 
-	 * @param arr
-	 * @return
-	 */
-	public static <T> ArrayList<T> copyArrayList(ArrayList<T> arr) {
-		ArrayList<T> newArr = new ArrayList<>();
-		Collections.copy(newArr, arr);
-		return newArr;
-	}
+
+	
+
 
 	/**
 	 * Copies a HashMap into a new One

+ 3 - 2
src/ui/model/Model.java

@@ -64,13 +64,14 @@ public class Model {
 	 * default values.
 	 */
 	public Model() {
-		setCgIdx(new HashMap<>());
-		setCvsObjIdx(new HashMap<>());
+		
 		setCategories(new ArrayList<Category>());
 		setObjectsOnCanvas(new ArrayList<CpsObject>());
 		setEdgesOnCanvas(new ArrayList<CpsEdge>());
 		setCategoryListeners(new LinkedList<CategoryListener>());
 		setObjectListeners(new LinkedList<ObjectListener>());
+		setCgIdx(new HashMap<>());
+		setCvsObjIdx(new HashMap<>());
 
 
 	}