]> source.dussan.org Git - vaadin-framework.git/commitdiff
Fixed #588 (another partial fix for larger listener problems). AbstractSelect
authorJani Laakso <jani.laakso@itmill.com>
Thu, 31 Jan 2008 13:39:42 +0000 (13:39 +0000)
committerJani Laakso <jani.laakso@itmill.com>
Thu, 31 Jan 2008 13:39:42 +0000 (13:39 +0000)
 * itemSetEventListener and propertySetEventListener contains only unique listeners, hence duplicates are not allowed

svn changeset:3684/svn branch:trunk

src/com/itmill/toolkit/ui/AbstractSelect.java

index 9a7a5de4ea34972957107b3026e67020ccc349ea..ef23f7d37fed12f385aff9834a6dfa35e54787b8 100644 (file)
@@ -9,6 +9,7 @@ import java.util.Collections;
 import java.util.HashMap;
 import java.util.HashSet;
 import java.util.Iterator;
+import java.util.LinkedHashSet;
 import java.util.LinkedList;
 import java.util.Map;
 import java.util.Set;
@@ -159,12 +160,12 @@ public abstract class AbstractSelect extends AbstractField implements
     /**
      * List of property set change event listeners.
      */
-    private LinkedList propertySetEventListeners = null;
+    private Set propertySetEventListeners = null;
 
     /**
      * List of item set change event listeners.
      */
-    private LinkedList itemSetEventListeners = null;
+    private Set itemSetEventListeners = null;
 
     /**
      * Item id that represents null selection of this select.
@@ -1371,7 +1372,7 @@ public abstract class AbstractSelect extends AbstractField implements
      */
     public void addListener(Container.PropertySetChangeListener listener) {
         if (propertySetEventListeners == null) {
-            propertySetEventListeners = new LinkedList();
+            propertySetEventListeners = new LinkedHashSet();
         }
         propertySetEventListeners.add(listener);
     }
@@ -1397,7 +1398,7 @@ public abstract class AbstractSelect extends AbstractField implements
      */
     public void addListener(Container.ItemSetChangeListener listener) {
         if (itemSetEventListeners == null) {
-            itemSetEventListeners = new LinkedList();
+            itemSetEventListeners = new LinkedHashSet();
         }
         itemSetEventListeners.add(listener);
     }