Retrofit the table's image support for trees
diff --git a/bundles/org.eclipse.jface.databinding/src/org/eclipse/jface/databinding/internal/viewers/TableViewerUpdatableCollectionExtended.java b/bundles/org.eclipse.jface.databinding/src/org/eclipse/jface/databinding/internal/viewers/TableViewerUpdatableCollectionExtended.java
index 2a05a14..2d6a2d1 100644
--- a/bundles/org.eclipse.jface.databinding/src/org/eclipse/jface/databinding/internal/viewers/TableViewerUpdatableCollectionExtended.java
+++ b/bundles/org.eclipse.jface.databinding/src/org/eclipse/jface/databinding/internal/viewers/TableViewerUpdatableCollectionExtended.java
@@ -44,13 +44,13 @@
 public class TableViewerUpdatableCollectionExtended extends
 		TableViewerUpdatableCollection {
 	
-	class TreeLableProvider extends LabelProvider implements
+	class TableLabelProvider extends LabelProvider implements
 			ITableLabelProvider {
 		private Object getValue(Object element, Column column) {
 			String propertyName = column.getPropertyName();
-			if (propertyName == null) {
+			if (propertyName == null) 
 				return element;
-			}
+			
 			Object value = tableViewerDescription.getCellModifier().getValue(
 					element, propertyName);
 			return value;
@@ -105,7 +105,7 @@
 
 	private final TableViewerDescription tableViewerDescription;
 			
-	private ITableLabelProvider tableLabelProvider = new TreeLableProvider(); 
+	private ITableLabelProvider tableLabelProvider = new TableLabelProvider(); 
 
 	private IDataBindingContext dataBindingContext;
 
diff --git a/bundles/org.eclipse.jface.databinding/src/org/eclipse/jface/databinding/internal/viewers/TreeViewerUpdatableTreeExtended.java b/bundles/org.eclipse.jface.databinding/src/org/eclipse/jface/databinding/internal/viewers/TreeViewerUpdatableTreeExtended.java
index c506885..fa98b5c 100644
--- a/bundles/org.eclipse.jface.databinding/src/org/eclipse/jface/databinding/internal/viewers/TreeViewerUpdatableTreeExtended.java
+++ b/bundles/org.eclipse.jface.databinding/src/org/eclipse/jface/databinding/internal/viewers/TreeViewerUpdatableTreeExtended.java
@@ -52,7 +52,13 @@
 		}
 
 		private Object getConvertedValue(Object element, Column column) {
-			Object value = getValue(element, column);
+			String propertyName = column.getPropertyName();
+			Object value;
+			if (propertyName == null) 
+				value = element;
+			else 
+				value = getValue(element, column);
+			
 			Object convertedValue = column.getConverter().convertModelToTarget(
 					value);
 			return convertedValue;
@@ -188,7 +194,7 @@
 					element = ((Item) element).getData();
 				}
 				Column column = findColumn(element.getClass(), property);
-				if (column!=null) {
+				if (column!=null && column.getPropertyName()!=null) {
 					return new PropertyHelper(column.getPropertyName(), element.getClass()).canSet(element); 
 				}
 				return false;
@@ -314,7 +320,7 @@
 			for (int i = 0; i < treeViewerDescription.getColumnCount(value.getClass()); i++) {
 				Column column = treeViewerDescription.getColumn(value.getClass(), i);
 				ColumnInfo columnInfo = (ColumnInfo) columnInfos.remove(column);
-				if (columnInfo!=null) {
+				if (columnInfo!=null && column.getPropertyName()!=null) {
 					if(column.getPropertyType() == null && (columnInfo.cellEditorDefaulted || columnInfo.converterDefaulted || columnInfo.validatorDefaulted)){
 						// Work out the type of the column from the property name from the element type itself
 						PropertyHelper helper = new PropertyHelper(column.getPropertyName(), value.getClass());