PROP : bug fixed runtime java script function in the action tab 46/20346/1
authorjaeyeol lee <jaeyeol148.lee@samsung.com>
Sun, 4 May 2014 04:32:03 +0000 (13:32 +0900)
committerjaeyeol lee <jaeyeol148.lee@samsung.com>
Sun, 4 May 2014 04:32:03 +0000 (13:32 +0900)
not used the wrong index

Change-Id: I7af439bf02ff512592070c7f5d241d8831475880
Signed-off-by: jaeyeol lee <jaeyeol148.lee@samsung.com>
org.tizen.webuibuilder/src/org/tizen/webuibuilder/gef/commands/SetPartEventCommand.java
org.tizen.webuibuilder/src/org/tizen/webuibuilder/model/Part.java

index e84c69e..88cd847 100644 (file)
@@ -48,11 +48,6 @@ public class SetPartEventCommand extends Command {
     private String eventValue;
 
     /**
-     * An old event value.
-     */
-    private String oldEventValue;
-
-    /**
      * JavaScript function index.
      */
     private int index;
@@ -111,9 +106,6 @@ public class SetPartEventCommand extends Command {
     @Override
     public void execute() {
         if (canExecute()) {
-            if (oldEventValue == null) {
-                oldEventValue = part.getEventValue(eventName, index);
-            }
             part.setEventValue(eventName, eventValue, index);
         }
     }
@@ -123,7 +115,7 @@ public class SetPartEventCommand extends Command {
      */
     @Override
     public void undo() {
-        part.setEventValue(eventName, oldEventValue, index);
+        part.setEventValue(eventName, eventValue, index);
     }
 
 }
index d3c9a6f..fc5519c 100644 (file)
@@ -1114,6 +1114,21 @@ public class Part implements ISerializer {
         return null;
 
     }
+    
+    public Boolean hasEventValue(String eventName, String value) {
+        List<String> list = events.get(eventName);
+        if (list != null) {
+            if (!list.isEmpty()) {
+                for (String str : list) {
+                    if (str.equals(value)) {
+                        return true;
+                    }
+                }
+            }
+        }
+        return false;
+
+    }
 
     // public String getEventValue(String eventName) {
     // return events.get(eventName);
@@ -1144,9 +1159,9 @@ public class Part implements ISerializer {
             oldValues = new ArrayList<String>();
         }
 
-        if ((value != null) && (value.isEmpty())) {
-            oldValues.remove(index);
-            // oldValues.add(index, null);
+        if ((value != null) && (hasEventValue(eventName, value))) {
+            oldValues.remove(value);
+            //TODO change order
         } else if ((value != null) && (oldValueText != null)) {
             oldValues.remove(index);
             oldValues.add(index, value);