Index: /trunk/src/org/openstreetmap/josm/gui/dialogs/properties/PresetListPanel.java
===================================================================
--- /trunk/src/org/openstreetmap/josm/gui/dialogs/properties/PresetListPanel.java	(revision 9265)
+++ /trunk/src/org/openstreetmap/josm/gui/dialogs/properties/PresetListPanel.java	(revision 9266)
@@ -17,4 +17,5 @@
 import org.openstreetmap.josm.gui.tagging.presets.TaggingPresetLabel;
 import org.openstreetmap.josm.gui.tagging.presets.TaggingPresetType;
+import org.openstreetmap.josm.gui.tagging.presets.TaggingPresets;
 import org.openstreetmap.josm.tools.GBC;
 
@@ -47,5 +48,5 @@
         }
 
-        for (final TaggingPreset t : TaggingPreset.getMatchingPresets(types, tags, true)) {
+        for (final TaggingPreset t : TaggingPresets.getMatchingPresets(types, tags, true)) {
             final JLabel lbl = new TaggingPresetLabel(t);
             lbl.addMouseListener(new MouseAdapter() {
Index: /trunk/src/org/openstreetmap/josm/gui/dialogs/properties/TagEditHelper.java
===================================================================
--- /trunk/src/org/openstreetmap/josm/gui/dialogs/properties/TagEditHelper.java	(revision 9265)
+++ /trunk/src/org/openstreetmap/josm/gui/dialogs/properties/TagEditHelper.java	(revision 9266)
@@ -74,4 +74,5 @@
 import org.openstreetmap.josm.gui.tagging.ac.AutoCompletionManager;
 import org.openstreetmap.josm.gui.tagging.presets.TaggingPreset;
+import org.openstreetmap.josm.gui.tagging.presets.TaggingPresets;
 import org.openstreetmap.josm.gui.util.GuiHelper;
 import org.openstreetmap.josm.gui.widgets.PopupMenuLauncher;
@@ -739,5 +740,5 @@
                     Map<String, String> map = new HashMap<>();
                     map.put(t.getKey(), t.getValue());
-                    for (TaggingPreset tp : TaggingPreset.getMatchingPresets(null, map, false)) {
+                    for (TaggingPreset tp : TaggingPresets.getMatchingPresets(null, map, false)) {
                         icon = tp.getIcon();
                         if (icon != null) {
Index: /trunk/src/org/openstreetmap/josm/gui/dialogs/relation/GenericRelationEditor.java
===================================================================
--- /trunk/src/org/openstreetmap/josm/gui/dialogs/relation/GenericRelationEditor.java	(revision 9265)
+++ /trunk/src/org/openstreetmap/josm/gui/dialogs/relation/GenericRelationEditor.java	(revision 9266)
@@ -86,4 +86,5 @@
 import org.openstreetmap.josm.gui.tagging.presets.TaggingPresetHandler;
 import org.openstreetmap.josm.gui.tagging.presets.TaggingPresetType;
+import org.openstreetmap.josm.gui.tagging.presets.TaggingPresets;
 import org.openstreetmap.josm.io.OnlineResource;
 import org.openstreetmap.josm.tools.CheckParameterUtil;
@@ -763,5 +764,5 @@
         CheckParameterUtil.ensureParameterNotNull(orig, "orig");
         try {
-            final Collection<TaggingPreset> presets = TaggingPreset.getMatchingPresets(
+            final Collection<TaggingPreset> presets = TaggingPresets.getMatchingPresets(
                     EnumSet.of(TaggingPresetType.RELATION), orig.getKeys(), false);
             Relation relation = new Relation(orig);
Index: /trunk/src/org/openstreetmap/josm/gui/dialogs/relation/MemberTableModel.java
===================================================================
--- /trunk/src/org/openstreetmap/josm/gui/dialogs/relation/MemberTableModel.java	(revision 9265)
+++ /trunk/src/org/openstreetmap/josm/gui/dialogs/relation/MemberTableModel.java	(revision 9266)
@@ -42,4 +42,5 @@
 import org.openstreetmap.josm.gui.tagging.presets.TaggingPresetHandler;
 import org.openstreetmap.josm.gui.tagging.presets.TaggingPresetType;
+import org.openstreetmap.josm.gui.tagging.presets.TaggingPresets;
 import org.openstreetmap.josm.gui.util.GuiHelper;
 import org.openstreetmap.josm.gui.widgets.OsmPrimitivesTableModel;
@@ -422,5 +423,5 @@
 
     private void addMembersAtIndex(List<? extends OsmPrimitive> primitives, int index) {
-        final Collection<TaggingPreset> presets = TaggingPreset.getMatchingPresets(EnumSet.of(TaggingPresetType.RELATION),
+        final Collection<TaggingPreset> presets = TaggingPresets.getMatchingPresets(EnumSet.of(TaggingPresetType.RELATION),
                 presetHandler.getSelection().iterator().next().getKeys(), false);
         if (primitives == null)
Index: /trunk/src/org/openstreetmap/josm/gui/tagging/ac/AutoCompletionManager.java
===================================================================
--- /trunk/src/org/openstreetmap/josm/gui/tagging/ac/AutoCompletionManager.java	(revision 9265)
+++ /trunk/src/org/openstreetmap/josm/gui/tagging/ac/AutoCompletionManager.java	(revision 9266)
@@ -30,4 +30,5 @@
 import org.openstreetmap.josm.gui.tagging.presets.TaggingPreset;
 import org.openstreetmap.josm.gui.tagging.presets.TaggingPresetItem;
+import org.openstreetmap.josm.gui.tagging.presets.TaggingPresets;
 import org.openstreetmap.josm.gui.tagging.presets.items.CheckGroup;
 import org.openstreetmap.josm.gui.tagging.presets.items.KeyedItem;
@@ -335,5 +336,5 @@
     public void populateWithMemberRoles(AutoCompletionList list, Relation r) {
         CheckParameterUtil.ensureParameterNotNull(list, "list");
-        Collection<TaggingPreset> presets = r != null ? TaggingPreset.getMatchingPresets(null, r.getKeys(), false) : null;
+        Collection<TaggingPreset> presets = r != null ? TaggingPresets.getMatchingPresets(null, r.getKeys(), false) : null;
         if (r != null && presets != null && !presets.isEmpty()) {
             for (TaggingPreset tp : presets) {
Index: /trunk/src/org/openstreetmap/josm/gui/tagging/presets/TaggingPreset.java
===================================================================
--- /trunk/src/org/openstreetmap/josm/gui/tagging/presets/TaggingPreset.java	(revision 9265)
+++ /trunk/src/org/openstreetmap/josm/gui/tagging/presets/TaggingPreset.java	(revision 9266)
@@ -296,4 +296,9 @@
     }
 
+    /**
+     * Determines whether a dialog can be shown for this preset, i.e., at least one tag can/must be set by the user.
+     *
+     * @return {@code true} if a dialog can be shown for this preset
+     */
     public boolean isShowable() {
         for (TaggingPresetItem i : data) {
@@ -503,9 +508,24 @@
     }
 
-    @Override
+    /**
+     * Determines whether this preset matches the given primitive, i.e.,
+     * whether the {@link #typeMatches(Collection) type matches} and the {@link TaggingPresetItem#matches(Map) tags match}.
+     *
+     * @param p the primitive
+     * @return {@code true} if this preset matches the primitive
+     */
+     @Override
     public boolean evaluate(OsmPrimitive p) {
         return matches(EnumSet.of(TaggingPresetType.forPrimitive(p)), p.getKeys(), false);
     }
 
+    /**
+     * Determines whether this preset matches the parameters.
+     *
+     * @param t the preset types to include, see {@link #typeMatches(Collection)}
+     * @param tags the tags to perform matching on, see {@link TaggingPresetItem#matches(Map)}
+     * @param onlyShowable whether the preset must be {@link #isShowable() showable}
+     * @return {@code true} if this preset matches the parameters.
+     */
     public boolean matches(Collection<TaggingPresetType> t, Map<String, String> tags, boolean onlyShowable) {
         if (onlyShowable && !isShowable())
@@ -525,14 +545,4 @@
     }
 
-    public static Collection<TaggingPreset> getMatchingPresets(final Collection<TaggingPresetType> t,
-            final Map<String, String> tags, final boolean onlyShowable) {
-        return Utils.filter(TaggingPresets.getTaggingPresets(), new Predicate<TaggingPreset>() {
-            @Override
-            public boolean evaluate(TaggingPreset object) {
-                return object.matches(t, tags, onlyShowable);
-            }
-        });
-    }
-
     /**
      * Action that adds or removes the button on main toolbar
Index: /trunk/src/org/openstreetmap/josm/gui/tagging/presets/TaggingPresets.java
===================================================================
--- /trunk/src/org/openstreetmap/josm/gui/tagging/presets/TaggingPresets.java	(revision 9265)
+++ /trunk/src/org/openstreetmap/josm/gui/tagging/presets/TaggingPresets.java	(revision 9266)
@@ -96,4 +96,32 @@
     }
 
+    /**
+     * Replies a new collection of all presets matching the parameters.
+     *
+     * @param t the preset types to include
+     * @param tags the tags to perform matching on, see {@link TaggingPresetItem#matches(Map)}
+     * @param onlyShowable whether only {@link TaggingPreset#isShowable() showable} presets should be returned
+     * @return a new collection of all presets matching the parameters.
+     * @see TaggingPreset#matches(Collection, Map, boolean)
+     * @since 9266
+     */
+    public static Collection<TaggingPreset> getMatchingPresets(final Collection<TaggingPresetType> t,
+                                                               final Map<String, String> tags, final boolean onlyShowable) {
+        return Utils.filter(getTaggingPresets(), new Predicate<TaggingPreset>() {
+            @Override
+            public boolean evaluate(TaggingPreset object) {
+                return object.matches(t, tags, onlyShowable);
+            }
+        });
+    }
+
+    /**
+     * Replies a new collection of all presets matching the given preset.
+     *
+     * @param primitive the primitive
+     * @return a new collection of all presets matching the given preset.
+     * @see TaggingPreset#evaluate(OsmPrimitive)
+     * @since 9265
+     */
     public static Collection<TaggingPreset> getMatchingPresets(final OsmPrimitive primitive) {
         return Utils.filter(getTaggingPresets(), new Predicate<TaggingPreset>() {
