Index: applications/editors/josm/plugins/FixAddresses/src/org/openstreetmap/josm/plugins/fixAddresses/OSMAddress.java
===================================================================
--- applications/editors/josm/plugins/FixAddresses/src/org/openstreetmap/josm/plugins/fixAddresses/OSMAddress.java	(revision 24174)
+++ applications/editors/josm/plugins/FixAddresses/src/org/openstreetmap/josm/plugins/fixAddresses/OSMAddress.java	(revision 24175)
@@ -245,4 +245,16 @@
 	public boolean hasHouseNumber() {
 		return TagUtils.hasAddrHousenumberTag(osmObject) || isPartOfInterpolation;
+	}
+	
+	/* (non-Javadoc)
+	 * @see org.openstreetmap.josm.plugins.fixAddresses.OSMEntityBase#getName()
+	 */
+	public String getName() {
+		String name = TagUtils.getNameValue(osmObject);
+		if (!StringUtils.isNullOrEmpty(name)) {
+			return TagUtils.getAddrHousenameValue(osmObject);
+		}
+		
+		return "";
 	}
 		
Index: applications/editors/josm/plugins/FixAddresses/src/org/openstreetmap/josm/plugins/fixAddresses/gui/AddressEditDialog.java
===================================================================
--- applications/editors/josm/plugins/FixAddresses/src/org/openstreetmap/josm/plugins/fixAddresses/gui/AddressEditDialog.java	(revision 24174)
+++ applications/editors/josm/plugins/FixAddresses/src/org/openstreetmap/josm/plugins/fixAddresses/gui/AddressEditDialog.java	(revision 24175)
@@ -41,4 +41,5 @@
 import javax.swing.event.ListSelectionEvent;
 import javax.swing.event.ListSelectionListener;
+import javax.swing.table.JTableHeader;
 import javax.swing.table.TableModel;
 
@@ -50,7 +51,7 @@
 import org.openstreetmap.josm.gui.SideButton;
 import org.openstreetmap.josm.plugins.fixAddresses.AddressEditContainer;
-import org.openstreetmap.josm.plugins.fixAddresses.OSMAddress;
 import org.openstreetmap.josm.plugins.fixAddresses.IAddressEditContainerListener;
 import org.openstreetmap.josm.plugins.fixAddresses.IOSMEntity;
+import org.openstreetmap.josm.plugins.fixAddresses.OSMAddress;
 import org.openstreetmap.josm.plugins.fixAddresses.OSMStreet;
 import org.openstreetmap.josm.plugins.fixAddresses.StringUtils;
@@ -147,10 +148,14 @@
 			
 			/* Panel for unresolved addresses table */
-			JPanel unresolvedPanel = new JPanel(new BorderLayout());		
-			unresolvedTable = new JTable(new UnresolvedAddressesTableModel(editContainer));
+			JPanel unresolvedPanel = new JPanel(new BorderLayout());
+			UnresolvedAddressesTableModel uaModel = new UnresolvedAddressesTableModel(editContainer);
+			unresolvedTable = new JTable(uaModel);
 			unresolvedTable.getSelectionModel().setSelectionMode(ListSelectionModel.MULTIPLE_INTERVAL_SELECTION);
 			unresolvedTable.getSelectionModel().addListSelectionListener(this);
 			unresolvedTable.getSelectionModel().addListSelectionListener(new IncompleteAddressListener());
-			unresolvedTable.addMouseListener(applyAllGuessesAction);			
+			unresolvedTable.addMouseListener(applyAllGuessesAction);
+			
+			JTableHeader header = unresolvedTable.getTableHeader();
+			header.addMouseListener(uaModel.new ColumnListener(unresolvedTable));
 			
 			JScrollPane scroll2 = new JScrollPane(unresolvedTable);
Index: applications/editors/josm/plugins/FixAddresses/src/org/openstreetmap/josm/plugins/fixAddresses/gui/UnresolvedAddressesTableModel.java
===================================================================
--- applications/editors/josm/plugins/FixAddresses/src/org/openstreetmap/josm/plugins/fixAddresses/gui/UnresolvedAddressesTableModel.java	(revision 24174)
+++ applications/editors/josm/plugins/FixAddresses/src/org/openstreetmap/josm/plugins/fixAddresses/gui/UnresolvedAddressesTableModel.java	(revision 24175)
@@ -34,10 +34,6 @@
 
 import org.openstreetmap.josm.plugins.fixAddresses.AddressEditContainer;
+import org.openstreetmap.josm.plugins.fixAddresses.IOSMEntity;
 import org.openstreetmap.josm.plugins.fixAddresses.OSMAddress;
-import org.openstreetmap.josm.plugins.fixAddresses.IOSMEntity;
-import org.openstreetmap.josm.plugins.fixAddresses.StringUtils;
-import org.openstreetmap.josm.plugins.fixAddresses.TagUtils;
-import org.openstreetmap.josm.plugins.fixAddresses.gui.AddressEditTableModel.ColumnSorter;
-import org.openstreetmap.josm.plugins.fixAddresses.gui.IncompleteAddressesTableModel.IncompleteAddressModelSorter;
 
 /**
@@ -127,10 +123,5 @@
 			return aNode.getPostCode();
 		case 4:
-			String name = aNode.getName();
-			if (!StringUtils.isNullOrEmpty(name)) {
-				// TODO: Provide a getter/setter for this?
-				return TagUtils.getAddrHousenameValue(aNode.getOsmObject());
-			}
-			return "";
+			return aNode.getName();
 		default:
 			throw new RuntimeException("Invalid column index: " + column);
@@ -236,4 +227,7 @@
 				cc = arg0.getPostCode().compareTo(arg1.getPostCode());
 				break;
+			case 4:
+				cc = arg0.getName().compareTo(arg1.getName());
+				break;
 			default:
 				throw new RuntimeException("Invalid column index: "
