Edgardo Palza 7 anni fa
parent
commit
b59269308a
2 ha cambiato i file con 31 aggiunte e 9 eliminazioni
  1. 11 3
      src/classes/HolonSwitch.java
  2. 20 6
      src/ui/view/GUI.java

+ 11 - 3
src/classes/HolonSwitch.java

@@ -9,7 +9,6 @@ public class HolonSwitch extends CpsObject {
 	 * false
 	 */
 	boolean active;
-
 	/*
 	 * true if switch has to be used manually
 	 */
@@ -90,13 +89,22 @@ public class HolonSwitch extends CpsObject {
 		return activeAt;
 	}
 
+	public boolean getActiveManual() {
+		return active;
+	}
+
 	/**
 	 * @param active,
 	 *            the default value
 	 */
 	public void setActiveAt(boolean active) {
-		for (int i = 0; i < activeAt.length; i++) {
-			this.activeAt[i] = active;
+		if (getManualMode()) {
+			System.out.println("Activating...");
+			this.active = active;
+		} else {
+			for (int i = 0; i < activeAt.length; i++) {
+				this.activeAt[i] = active;
+			}
 		}
 	}
 

+ 20 - 6
src/ui/view/GUI.java

@@ -820,8 +820,13 @@ public class GUI<E> implements CategoryListener {
 								Boolean bTemp = Boolean.parseBoolean(temp.toString());
 								((HolonSwitch) getActualCps()).setManualMode(bTemp);
 							} else if (mousePos.y / tableProperties.getRowHeight() == 3) {
-								Boolean bTemp = Boolean.parseBoolean(temp.toString());
-								((HolonSwitch) getActualCps()).setActiveAt(bTemp);
+								if (((HolonSwitch) getActualCps()).getManualMode()) {
+									tableModelProperties.setCellEditable(3, 1, true);
+									Boolean bTemp = Boolean.parseBoolean(temp.toString());
+									((HolonSwitch) getActualCps()).setActiveAt(bTemp);
+								} else {
+									tableModelProperties.setCellEditable(3, 1, false);
+								}
 							}
 						}
 					} else {
@@ -1127,15 +1132,24 @@ public class GUI<E> implements CategoryListener {
 					else if (temp instanceof HolonSwitch) {
 						deleteRows(tableModelHolonElementSingle);
 						deleteRows(tableModelHolonElementMulti);
-						Object[] tempMode = { "Mode", ((HolonSwitch) temp).getManualMode() };
+						Object[] tempMode = { "Manual", ((HolonSwitch) temp).getManualMode() };
 						tableModelProperties.addRow(tempMode);
-						Object[] tempActive = { "Active", ((HolonSwitch) temp).getActiveAt()[model.getCurIteration()] };
-						tableModelProperties.addRow(tempActive);
+						if (((HolonSwitch) temp).getManualMode()) {
+							System.out.println("Manual Mode");
+							Object[] tempActive = { "Active", ((HolonSwitch) temp).getActiveManual() };
+							tableModelProperties.addRow(tempActive);
+							tableModelProperties.setCellEditable(3, 1, true);
+						} else {
+							System.out.println("Auto Mode");
+							Object[] tempActive = { "Active",
+									((HolonSwitch) temp).getActiveAt()[model.getCurIteration()] };
+							tableModelProperties.addRow(tempActive);
+							tableModelProperties.setCellEditable(3, 1, false);
+						}
 						unitGraph.repaintWithNewSwitch((HolonSwitch) temp);
 						elementGraph.setText(temp.getName());
 						tableModelProperties.setCellEditable(0, 1, true);
 						tableModelProperties.setCellEditable(2, 1, true);
-						tableModelProperties.setCellEditable(3, 1, true);
 					} else {
 						deleteRows(tableModelHolonElementSingle);
 						deleteRows(tableModelHolonElementMulti);