Index: /trunk/src/org/openstreetmap/josm/data/APIDataSet.java
===================================================================
--- /trunk/src/org/openstreetmap/josm/data/APIDataSet.java	(revision 12373)
+++ /trunk/src/org/openstreetmap/josm/data/APIDataSet.java	(revision 12374)
@@ -182,4 +182,8 @@
     }
 
+    /**
+     * Removes the given primitives from this {@link APIDataSet}
+     * @param processed The primitives to remove
+     */
     public void removeProcessed(Collection<IPrimitive> processed) {
         if (processed == null) return;
Index: /trunk/src/org/openstreetmap/josm/data/AutosaveTask.java
===================================================================
--- /trunk/src/org/openstreetmap/josm/data/AutosaveTask.java	(revision 12373)
+++ /trunk/src/org/openstreetmap/josm/data/AutosaveTask.java	(revision 12374)
@@ -73,10 +73,27 @@
     private static final String DELETED_LAYERS_DIR = "autosave/deleted_layers";
 
+    /**
+     * If autosave is enabled
+     */
     public static final BooleanProperty PROP_AUTOSAVE_ENABLED = new BooleanProperty("autosave.enabled", true);
+    /**
+     * The number of files to store per layer
+     */
     public static final IntegerProperty PROP_FILES_PER_LAYER = new IntegerProperty("autosave.filesPerLayer", 1);
+    /**
+     * How many deleted layers should be stored
+     */
     public static final IntegerProperty PROP_DELETED_LAYERS = new IntegerProperty("autosave.deletedLayersBackupCount", 5);
+    /**
+     * The autosave interval, in seconds
+     */
     public static final IntegerProperty PROP_INTERVAL = new IntegerProperty("autosave.interval", (int) TimeUnit.MINUTES.toSeconds(5));
+    /**
+     * The maximum number of autosave files to store
+     */
     public static final IntegerProperty PROP_INDEX_LIMIT = new IntegerProperty("autosave.index-limit", 1000);
-    /** Defines if a notification should be displayed after each autosave */
+    /**
+     * Defines if a notification should be displayed after each autosave
+     */
     public static final BooleanProperty PROP_NOTIFICATION = new BooleanProperty("autosave.notification", false);
 
Index: /trunk/src/org/openstreetmap/josm/data/Bounds.java
===================================================================
--- /trunk/src/org/openstreetmap/josm/data/Bounds.java	(revision 12373)
+++ /trunk/src/org/openstreetmap/josm/data/Bounds.java	(revision 12374)
@@ -86,6 +86,15 @@
     }
 
+    /**
+     * The method used by the {@link Bounds#Bounds(String, String, ParseMethod)} constructor
+     */
     public enum ParseMethod {
+        /**
+         * Order: minlat, minlon, maxlat, maxlon
+         */
         MINLAT_MINLON_MAXLAT_MAXLON,
+        /**
+         * Order: left, bottom, right, top
+         */
         LEFT_BOTTOM_RIGHT_TOP
     }
@@ -216,12 +225,30 @@
     }
 
+    /**
+     * Parse the bounds in order {@link ParseMethod#MINLAT_MINLON_MAXLAT_MAXLON}
+     * @param asString The string
+     * @param separator The separation regex
+     */
     public Bounds(String asString, String separator) {
         this(asString, separator, ParseMethod.MINLAT_MINLON_MAXLAT_MAXLON);
     }
 
+    /**
+     * Parse the bounds from a given string and round to OSM precision
+     * @param asString The string
+     * @param separator The separation regex
+     * @param parseMethod The order of the numbers
+     */
     public Bounds(String asString, String separator, ParseMethod parseMethod) {
         this(asString, separator, parseMethod, true);
     }
 
+    /**
+     * Parse the bounds from a given string
+     * @param asString The string
+     * @param separator The separation regex
+     * @param parseMethod The order of the numbers
+     * @param roundToOsmPrecision Whether to round to OSM precision
+     */
     public Bounds(String asString, String separator, ParseMethod parseMethod, boolean roundToOsmPrecision) {
         CheckParameterUtil.ensureParameterNotNull(asString, "asString");
@@ -323,4 +350,9 @@
     }
 
+    /**
+     * Converts this bounds to a human readable short string
+     * @param format The number format to use
+     * @return The string
+     */
     public String toShortString(DecimalFormat format) {
         return format.format(minLat) + ' '
@@ -386,4 +418,8 @@
     }
 
+    /**
+     * Extends this bounds to enclose an other bounding box
+     * @param b The other bounds to enclose
+     */
     public void extend(Bounds b) {
         extend(b.minLat, b.minLon);
@@ -474,4 +510,8 @@
     }
 
+    /**
+     * Gets the area of this bounds (in lat/lon space)
+     * @return The area
+     */
     public double getArea() {
         double w = getWidth();
@@ -479,4 +519,9 @@
     }
 
+    /**
+     * Encodes this as a string so that it may be parsed using the {@link ParseMethod#MINLAT_MINLON_MAXLAT_MAXLON} order
+     * @param separator The separator
+     * @return The string encoded bounds
+     */
     public String encodeAsString(String separator) {
         StringBuilder sb = new StringBuilder();
Index: /trunk/src/org/openstreetmap/josm/data/Preferences.java
===================================================================
--- /trunk/src/org/openstreetmap/josm/data/Preferences.java	(revision 12373)
+++ /trunk/src/org/openstreetmap/josm/data/Preferences.java	(revision 12374)
@@ -481,4 +481,9 @@
     }
 
+    /**
+     * Gets all normal (string) settings that have a key starting with the prefix
+     * @param prefix The start of the key
+     * @return The key names of the settings
+     */
     public synchronized Map<String, String> getAllPrefix(final String prefix) {
         final Map<String, String> all = new TreeMap<>();
@@ -491,4 +496,9 @@
     }
 
+    /**
+     * Gets all list settings that have a key starting with the prefix
+     * @param prefix The start of the key
+     * @return The key names of the list settings
+     */
     public synchronized List<String> getAllPrefixCollectionKeys(final String prefix) {
         final List<String> all = new LinkedList<>();
@@ -501,4 +511,8 @@
     }
 
+    /**
+     * Gets all known colors (preferences starting with the color prefix)
+     * @return All colors
+     */
     public synchronized Map<String, String> getAllColors() {
         final Map<String, String> all = new TreeMap<>();
@@ -519,4 +533,10 @@
     }
 
+    /**
+     * Gets a boolean preference
+     * @param key The preference key
+     * @return The boolean or <code>false</code> if it could not be parsed
+     * @see IntegerProperty#get()
+     */
     public synchronized boolean getBoolean(final String key) {
         String s = get(key, null);
@@ -524,8 +544,22 @@
     }
 
+    /**
+     * Gets a boolean preference
+     * @param key The preference key
+     * @param def The default value to use
+     * @return The boolean, <code>false</code> if it could not be parsed, the default value if it is unset
+     * @see IntegerProperty#get()
+     */
     public synchronized boolean getBoolean(final String key, final boolean def) {
         return Boolean.parseBoolean(get(key, Boolean.toString(def)));
     }
 
+    /**
+     * Gets an boolean that may be specialized
+     * @param key The basic key
+     * @param specName The sub-key to append to the key
+     * @param def The default value
+     * @return The boolean value or the default value if it could not be parsed
+     */
     public synchronized boolean getBoolean(final String key, final String specName, final boolean def) {
         boolean generic = getBoolean(key, def);
@@ -564,5 +598,5 @@
      * @param value The new value
      * @return {@code true}, if something has changed (i.e. value is different than before)
-     * @see IntegerProperty
+     * @see IntegerProperty#put(Integer)
      */
     public boolean putInteger(final String key, final Integer value) {
@@ -575,5 +609,5 @@
      * @param value The new value
      * @return {@code true}, if something has changed (i.e. value is different than before)
-     * @see DoubleProperty
+     * @see DoubleProperty#put(Double)
      */
     public boolean putDouble(final String key, final Double value) {
@@ -586,5 +620,5 @@
      * @param value The new value
      * @return {@code true}, if something has changed (i.e. value is different than before)
-     * @see LongProperty
+     * @see LongProperty#put(Long)
      */
     public boolean putLong(final String key, final Long value) {
@@ -600,4 +634,8 @@
     }
 
+    /**
+     * Stores the defaults to the defaults file
+     * @throws IOException If the file could not be saved
+     */
     public synchronized void saveDefaults() throws IOException {
         save(getDefaultsCacheFile(), defaultsMap.entrySet().stream(), true);
@@ -890,4 +928,9 @@
     }
 
+    /**
+     * Gets the default color that was registered with the preference
+     * @param colKey The color name
+     * @return The color
+     */
     public synchronized Color getDefaultColor(String colKey) {
         StringSetting col = Utils.cast(defaultsMap.get(COLOR_PREFIX+colKey), StringSetting.class);
@@ -896,8 +939,22 @@
     }
 
+    /**
+     * Stores a color
+     * @param colKey The color name
+     * @param val The color
+     * @return true if the setting was modified
+     * @see ColorProperty#put(Color)
+     */
     public synchronized boolean putColor(String colKey, Color val) {
         return put(COLOR_PREFIX+colKey, val != null ? ColorHelper.color2html(val, true) : null);
     }
 
+    /**
+     * Gets an integer preference
+     * @param key The preference key
+     * @param def The default value to use
+     * @return The integer
+     * @see IntegerProperty#get()
+     */
     public synchronized int getInteger(String key, int def) {
         String v = get(key, Integer.toString(def));
@@ -914,4 +971,11 @@
     }
 
+    /**
+     * Gets an integer that may be specialized
+     * @param key The basic key
+     * @param specName The sub-key to append to the key
+     * @param def The default value
+     * @return The integer value or the default value if it could not be parsed
+     */
     public synchronized int getInteger(String key, String specName, int def) {
         String v = get(key+'.'+specName);
@@ -930,4 +994,11 @@
     }
 
+    /**
+     * Gets a long preference
+     * @param key The preference key
+     * @param def The default value to use
+     * @return The long value or the default value if it could not be parsed
+     * @see LongProperty#get()
+     */
     public synchronized long getLong(String key, long def) {
         String v = get(key, Long.toString(def));
@@ -944,4 +1015,11 @@
     }
 
+    /**
+     * Gets a double preference
+     * @param key The preference key
+     * @param def The default value to use
+     * @return The double value or the default value if it could not be parsed
+     * @see LongProperty#get()
+     */
     public synchronized double getDouble(String key, double def) {
         String v = get(key, Double.toString(def));
@@ -978,4 +1056,10 @@
     }
 
+    /**
+     * Removes a value from a given String collection
+     * @param key The preference key the collection is stored with
+     * @param value The value that should be removed in the collection
+     * @see #getCollection(String)
+     */
     public synchronized void removeFromCollection(String key, String value) {
         List<String> a = new ArrayList<>(getCollection(key, Collections.<String>emptyList()));
@@ -1024,4 +1108,10 @@
     }
 
+    /**
+     * Get a setting of any type
+     * @param key The key for the setting
+     * @param def The default value to use if it was not found
+     * @return The setting
+     */
     public synchronized Setting<?> getSetting(String key, Setting<?> def) {
         return getSetting(key, def, Setting.class);
@@ -1100,4 +1190,9 @@
     }
 
+    /**
+     * Gets a collection of string collections for the given key
+     * @param key The key
+     * @return The collection of string collections or an empty collection as default
+     */
     public Collection<Collection<String>> getArray(String key) {
         Collection<Collection<String>> res = getArray(key, null);
@@ -1115,8 +1210,21 @@
     }
 
+    /**
+     * Gets a collection of key->value maps.
+     * @param key The key to search at
+     * @param def The default value to use
+     * @return The stored value or the default one if it could not be parsed
+     */
     public Collection<Map<String, String>> getListOfStructs(String key, Collection<Map<String, String>> def) {
         return getSetting(key, new MapListSetting(def == null ? null : new ArrayList<>(def)), MapListSetting.class).getValue();
     }
 
+    /**
+     * Stores a list of structs
+     * @param key The key to store the list in
+     * @param value A list of key->value maps
+     * @return <code>true</code> if the value was changed
+     * @see #getListOfStructs(String, Collection)
+     */
     public boolean putListOfStructs(String key, Collection<Map<String, String>> value) {
         return putSetting(key, value == null ? null : new MapListSetting(new ArrayList<>(value)));
@@ -1396,8 +1504,16 @@
     }
 
+    /**
+     * Gets a map of all settings that are currently stored
+     * @return The settings
+     */
     public Map<String, Setting<?>> getAllSettings() {
         return new TreeMap<>(settingsMap);
     }
 
+    /**
+     * Gets a map of all currently known defaults
+     * @return The map (key->setting)
+     */
     public Map<String, Setting<?>> getAllDefaults() {
         return new TreeMap<>(defaultsMap);
Index: /trunk/src/org/openstreetmap/josm/data/ViewportData.java
===================================================================
--- /trunk/src/org/openstreetmap/josm/data/ViewportData.java	(revision 12373)
+++ /trunk/src/org/openstreetmap/josm/data/ViewportData.java	(revision 12374)
@@ -36,4 +36,8 @@
     }
 
+    /**
+     * Create a new {@link ViewportData}
+     * @param bounds The bounds to zoom to
+     */
     public ViewportData(ProjectionBounds bounds) {
         CheckParameterUtil.ensureParameterNotNull(bounds);
