summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorHenri Sara <henri.sara@itmill.com>2009-03-24 14:11:18 +0000
committerHenri Sara <henri.sara@itmill.com>2009-03-24 14:11:18 +0000
commit0183cb5036e1bf0ff69321c32c18fe7190e13800 (patch)
tree19913a471cc1badfa0727b8bb81e6fb3f6d13b2b
parentc19b82098d7ff9ed985201a9bce7d9c9a0df25ac (diff)
downloadvaadin-framework-0183cb5036e1bf0ff69321c32c18fe7190e13800.tar.gz
vaadin-framework-0183cb5036e1bf0ff69321c32c18fe7190e13800.zip
Merge #2687 to 6.0
svn changeset:7162/svn branch:6.0
-rw-r--r--src/com/itmill/toolkit/data/util/IndexedContainer.java19
-rw-r--r--src/com/itmill/toolkit/ui/Table.java7
-rw-r--r--src/com/itmill/toolkit/ui/Tree.java6
3 files changed, 20 insertions, 12 deletions
diff --git a/src/com/itmill/toolkit/data/util/IndexedContainer.java b/src/com/itmill/toolkit/data/util/IndexedContainer.java
index f8ba1f13b8..27af4f5178 100644
--- a/src/com/itmill/toolkit/data/util/IndexedContainer.java
+++ b/src/com/itmill/toolkit/data/util/IndexedContainer.java
@@ -144,12 +144,8 @@ public class IndexedContainer implements Container.Indexed,
*/
public Item getItem(Object itemId) {
- // Null ids are not accepted
- if (itemId == null) {
- throw new NullPointerException("Container item id can not be null");
- }
-
- if (items.containsKey(itemId)
+ if (itemId != null
+ && items.containsKey(itemId)
&& (filteredItemIds == null || filteredItemIds.contains(itemId))) {
return new IndexedContainerItem(itemId);
}
@@ -196,7 +192,9 @@ public class IndexedContainer implements Container.Indexed,
* java.lang.Object)
*/
public Property getContainerProperty(Object itemId, Object propertyId) {
- if (filteredItemIds == null) {
+ if (itemId == null) {
+ return null;
+ } else if (filteredItemIds == null) {
if (!items.containsKey(itemId)) {
return null;
}
@@ -225,6 +223,9 @@ public class IndexedContainer implements Container.Indexed,
* @see com.itmill.toolkit.data.Container#containsId(java.lang.Object)
*/
public boolean containsId(Object itemId) {
+ if (itemId == null) {
+ return false;
+ }
if (filteredItemIds != null) {
return filteredItemIds.contains(itemId);
}
@@ -766,8 +767,8 @@ public class IndexedContainer implements Container.Indexed,
}
/**
- * An <code>event</code> object specifying the Propery in a list whose value
- * has changed.
+ * An <code>event</code> object specifying the Property in a list whose
+ * value has changed.
*
* @author IT Mill Ltd.
* @version
diff --git a/src/com/itmill/toolkit/ui/Table.java b/src/com/itmill/toolkit/ui/Table.java
index 2b528780ca..fe3b6080aa 100644
--- a/src/com/itmill/toolkit/ui/Table.java
+++ b/src/com/itmill/toolkit/ui/Table.java
@@ -1767,8 +1767,11 @@ public class Table extends AbstractSelect implements Action.Container,
}
MouseEventDetails evt = MouseEventDetails
.deSerialize((String) variables.get("clickEvent"));
- fireEvent(new ItemClickEvent(this, getItem(itemId), itemId,
- propertyId, evt));
+ Item item = getItem(itemId);
+ if (item != null) {
+ fireEvent(new ItemClickEvent(this, item, itemId,
+ propertyId, evt));
+ }
}
}
}
diff --git a/src/com/itmill/toolkit/ui/Tree.java b/src/com/itmill/toolkit/ui/Tree.java
index 010e481896..36b34ac50a 100644
--- a/src/com/itmill/toolkit/ui/Tree.java
+++ b/src/com/itmill/toolkit/ui/Tree.java
@@ -18,6 +18,7 @@ import java.util.Stack;
import java.util.StringTokenizer;
import com.itmill.toolkit.data.Container;
+import com.itmill.toolkit.data.Item;
import com.itmill.toolkit.data.util.ContainerHierarchicalWrapper;
import com.itmill.toolkit.data.util.IndexedContainer;
import com.itmill.toolkit.event.Action;
@@ -342,7 +343,10 @@ public class Tree extends AbstractSelect implements Container.Hierarchical,
Object id = itemIdMapper.get(key);
MouseEventDetails details = MouseEventDetails
.deSerialize((String) variables.get("clickEvent"));
- fireEvent(new ItemClickEvent(this, getItem(id), id, null, details));
+ Item item = getItem(id);
+ if (item != null) {
+ fireEvent(new ItemClickEvent(this, item, id, null, details));
+ }
}
if (!isSelectable() && variables.containsKey("selected")) {