Index: /applications/editors/josm/plugins/ElevationProfile/src/org/openstreetmap/josm/plugins/elevation/gui/ElevationProfileDialog.java
===================================================================
--- /applications/editors/josm/plugins/ElevationProfile/src/org/openstreetmap/josm/plugins/elevation/gui/ElevationProfileDialog.java	(revision 23761)
+++ /applications/editors/josm/plugins/ElevationProfile/src/org/openstreetmap/josm/plugins/elevation/gui/ElevationProfileDialog.java	(revision 23762)
@@ -19,7 +19,5 @@
 import java.awt.BorderLayout;
 import java.awt.Font;
-import java.awt.GridBagConstraints;
 import java.awt.GridLayout;
-import java.awt.Insets;
 import java.awt.event.ActionEvent;
 import java.awt.event.ActionListener;
@@ -36,5 +34,4 @@
 import javax.swing.JPanel;
 import javax.swing.JRadioButton;
-import javax.swing.JSeparator;
 import javax.swing.JTextField;
 
@@ -57,5 +54,6 @@
 /**
  * @author Oliver
- * 
+ * Implements a JOSM ToggleDialog to show the elevation profile. It monitors the 
+ * connection between layer and elevation profile. 
  */
 public class ElevationProfileDialog extends ToggleDialog implements
@@ -68,23 +66,29 @@
 	 */
 	private static final long serialVersionUID = -868463893732535577L;
+	/* Elevation profile instance */
+	private IElevationProfile profile;
+	/* GPX data */
+	private GpxLayer activeLayer = null;
+	private HashMap<GpxLayer, ElevationModel> layerMap = new HashMap<GpxLayer, ElevationModel>();
+	
+	/* UI elements */
+	private ElevationProfilePanel profPanel;
 	private JLabel minHeightLabel;
 	private JLabel maxHeightLabel;
-
-	private IElevationProfile profile;
-	private ElevationProfilePanel profPanel;
-	private GpxLayer activeLayer = null;
-	private HashMap<GpxLayer, ElevationModel> layerMap = new HashMap<GpxLayer, ElevationModel>();
-	private List<IElevationModelListener> listeners = new ArrayList<IElevationModelListener>();
 	private JLabel avrgHeightLabel;
 	private JLabel elevationGainLabel;
 	private JLabel totalTimeLabel;
-
+	private JLabel distLabel;
 	private JRadioButton geoidNone;
 	private JRadioButton geoidAuto;
 	private JRadioButton geoidFixed;
 	private JTextField geoidFixedValue;
+	/* Listener to the elevation model */
+	private List<IElevationModelListener> listeners = new ArrayList<IElevationModelListener>();
 	
-	private ElevationProfileLayer profileLayer;
-	private JLabel distLabel;
+	/**
+	 * Corresponding layer instance within map view.
+	 */
+	private ElevationProfileLayer profileLayer;	
 
 	/**
@@ -384,4 +388,7 @@
 	}
 
+	/* (non-Javadoc)
+	 * @see org.openstreetmap.josm.gui.MapView.LayerChangeListener#activeLayerChange(org.openstreetmap.josm.gui.layer.Layer, org.openstreetmap.josm.gui.layer.Layer)
+	 */
 	public void activeLayerChange(Layer oldLayer, Layer newLayer) {
 		if (newLayer instanceof GpxLayer) {
@@ -390,4 +397,8 @@
 	}
 
+	/**
+	 * Internal helper to create elevation data for a new layer.
+	 * @param newLayer The layer added by the user.
+	 */
 	private void createLayer(Layer newLayer) {
 		if (newLayer != null) {
@@ -400,4 +411,8 @@
 	}
 
+	/**
+	 * Internal helper to update internal cache and synchronize elevation model.
+	 * @param newLayer The layer added by the user.
+	 */
 	private void setActiveLayer(GpxLayer newLayer) {
 		if (activeLayer != newLayer) {
@@ -416,16 +431,20 @@
 			ElevationModel em = layerMap.get(newLayer);
 			em.setSliceSize(slices);
-			setModel(em);
-			
-		}
-	}
-
+			setModel(em);			
+		}
+	}
+
+	/* (non-Javadoc)
+	 * @see org.openstreetmap.josm.gui.MapView.LayerChangeListener#layerAdded(org.openstreetmap.josm.gui.layer.Layer)
+	 */
 	public void layerAdded(Layer newLayer) {
 		createLayer(newLayer);
 	}
 
+	/* (non-Javadoc)
+	 * @see org.openstreetmap.josm.gui.MapView.LayerChangeListener#layerRemoved(org.openstreetmap.josm.gui.layer.Layer)
+	 */
 	public void layerRemoved(Layer oldLayer) {
 		if (layerMap.containsKey(oldLayer)) {
-			// TODO: Handle UI stuff properly
 			layerMap.remove(oldLayer);
 		}
@@ -436,4 +455,7 @@
 	}
 
+	/* (non-Javadoc)
+	 * @see org.openstreetmap.josm.gui.MapView.EditLayerChangeListener#editLayerChanged(org.openstreetmap.josm.gui.layer.OsmDataLayer, org.openstreetmap.josm.gui.layer.OsmDataLayer)
+	 */
 	public void editLayerChanged(OsmDataLayer oldLayer, OsmDataLayer newLayer) {
 		// Nothing to do...
