Index: src/org/openstreetmap/josm/gui/dialogs/AnnotationPreset.java
===================================================================
--- src/org/openstreetmap/josm/gui/dialogs/AnnotationPreset.java	(revision 125)
+++ src/org/openstreetmap/josm/gui/dialogs/AnnotationPreset.java	(revision 126)
@@ -202,6 +202,6 @@
 
 	private List<Item> data;
-	public final String name;
-	private Collection<Class<?>> types;
+	public String name;
+	Collection<Class<?>> types;
 
 	public AnnotationPreset(List<Item> data, String name, Collection<Class<?>> currentTypes) {
@@ -216,7 +216,5 @@
 	 * Use this as default item for "do not select anything".
 	 */
-	public AnnotationPreset() {
-		name = "";
-	}
+	public AnnotationPreset() {}
 
 	public static List<AnnotationPreset> readAll(InputStream inStream) throws IOException, SAXException {
Index: src/org/openstreetmap/josm/gui/dialogs/PropertiesDialog.java
===================================================================
--- src/org/openstreetmap/josm/gui/dialogs/PropertiesDialog.java	(revision 125)
+++ src/org/openstreetmap/josm/gui/dialogs/PropertiesDialog.java	(revision 126)
@@ -28,8 +28,11 @@
 
 import javax.swing.DefaultComboBoxModel;
+import javax.swing.DefaultListCellRenderer;
 import javax.swing.JButton;
 import javax.swing.JComboBox;
+import javax.swing.JComponent;
 import javax.swing.JDialog;
 import javax.swing.JLabel;
+import javax.swing.JList;
 import javax.swing.JOptionPane;
 import javax.swing.JPanel;
@@ -261,4 +264,25 @@
 			}
 		});
+		annotationPresets.setRenderer(new DefaultListCellRenderer(){
+			@Override public Component getListCellRendererComponent(JList list, Object value, int index, boolean isSelected, boolean cellHasFocus) {
+	            AnnotationPreset a = (AnnotationPreset)value;
+				if (a.name == null)
+	            	return super.getListCellRendererComponent(list, "", index, false, false);
+				JComponent c = (JComponent)super.getListCellRendererComponent(list, value, index, isSelected, cellHasFocus);
+	            JLabel l = new JLabel((a).name);
+	            l.setForeground(c.getForeground());
+	            l.setBackground(c.getBackground());
+	            l.setFont(c.getFont());
+	            l.setBorder(c.getBorder());
+	            if (a.types == null)
+	            	l.setIcon(ImageProvider.get("data", "empty"));
+	            else if (a.types.size() != 1)
+	            	l.setIcon(ImageProvider.get("data", "object"));
+	            else
+	            	l.setIcon(ImageProvider.get("data", a.types.iterator().next().getSimpleName().toLowerCase()));
+	            l.setOpaque(true);
+	            return l;
+            }
+		});
 
 		data.setColumnIdentifiers(new String[]{tr("Key"),tr("Value")});
