Index: IIconTheme.java
===================================================================
--- IIconTheme.java	(revision 38077)
+++ IIconTheme.java	(revision 38078)
@@ -1,6 +1,7 @@
 package org.gvsig.andami.iconthemes;
 
 import java.net.URL;
+import java.util.Iterator;
 
 import javax.swing.ImageIcon;
 
@@ -9,11 +10,11 @@
 	/**
 	 * Load all icons from the IconTheme
 	 */
-	public abstract void load();
+	public void load();
 
-	public abstract void setDefault(IIconTheme def);
+	public void setDefault(IIconTheme def);
 
-	public abstract IIconTheme getDefault();
+	public IIconTheme getDefault();
 
 	/**
 	 * Returns <code>true</code> if the icon theme contains a mapping for the
@@ -25,7 +26,7 @@
 	 * @return <code>true</code> if this IconTheme contains
 	 * <code>iconName</code>, <code>false</code> otherwise.
 	 */
-	public abstract boolean exists(String iconName);
+	public boolean exists(String iconName);
 
 	/**
 	 * Gets the ImageIcon associated with the provided key, if the key
@@ -38,7 +39,7 @@
 	 * 			The icon associated with the provided key, or
 	 * <code>null</code> otherwise.
 	 */
-	public abstract ImageIcon get(String iconName);
+	public ImageIcon get(String iconName);
 
 	/**
 	 * Gets the ImageIcon associated with the provided key, if the key
@@ -55,7 +56,7 @@
 	 * 			The icon associated with the provided key, or
 	 * <code>no-icon</code> otherwise.
 	 */
-	public abstract ImageIcon get(String iconName, ClassLoader loader);
+	public ImageIcon get(String iconName, ClassLoader loader);
 
 	/**
 	 * <p>Register in this theme the provided iconName and the associated
@@ -71,7 +72,7 @@
 	 * @param image The image that is going to be associated with the
 	 * provided icon name.
 	 */
-	public abstract void registerDefault(String iconName, ImageIcon image);
+	public void registerDefault(String iconName, ImageIcon image);
 
 	/**
 	 * <p>Register in this theme the provided iconName and the associated
@@ -85,7 +86,7 @@
 	 * @param resource The resource that is going to be asssocioated with the providad
 	 * 	icon name
 	 */
-	public abstract void registerDefault(String iconName, Object resource);
+	public void registerDefault(String iconName, Object resource);
 
 	/**
 	 * <p>Register in this theme the provided iconName and the associated
@@ -101,7 +102,7 @@
 	 * @param image The image that is going to be associated with the
 	 * provided icon name.
 	 */
-	public abstract void register(String iconName, ImageIcon image);
+	public void register(String iconName, ImageIcon image);
 
 	/**
 	 * <p>Register in this theme the provided iconName and the associated
@@ -115,27 +116,27 @@
 	 * @param resource The resource that is going to be asssocioated with the providad
 	 * 	icon name
 	 */
-	public abstract void register(String iconName, Object resource);
+	public void register(String iconName, Object resource);
 
 	/**
 	 * Gets the theme name.
 	 * @return theme name
 	 */
-	public abstract String getName();
+	public String getName();
 
 	/**
 	 * Sets the theme name.
 	 *
 	 * @param themeName
 	 */
-	public abstract void setName(String themeName);
+	public void setName(String themeName);
 
 	/**
 	 * Gets the theme description.
 	 *
 	 * @return The description of this theme.
 	 */
-	public abstract String getDescription();
+	public String getDescription();
 
 	/**
 	 * Sets the theme description. It should be a short description
@@ -145,21 +146,21 @@
 	 *
 	 * @param description
 	 */
-	public abstract void setDescription(String description);
+	public void setDescription(String description);
 
 	/**
 	 * Returns the theme version. It defaults to "1.0".
 	 *
 	 * @return The version of this theme.
 	 */
-	public abstract String getVersion();
+	public String getVersion();
 
 	/**
 	 * Set the theme version.
 	 *
 	 * @param version
 	 */
-	public abstract void setVersion(String version);
+	public void setVersion(String version);
 
 	/**
 	 * Gets the Object which contains physically contains this theme on disk.
@@ -167,7 +168,7 @@
 	 *
 	 * @return
 	 */
-	public abstract Object getResource();
+	public Object getResource();
 
 	/**
 	 * Sets the file which contains physically contains this theme on disk.
@@ -175,7 +176,7 @@
 	 *
 	 * @return
 	 */
-	public abstract void setResource(Object resource);
+	public void setResource(Object resource);
 
 	/**
 	 * Return the URL which is currently associated with the
@@ -191,8 +192,24 @@
 	 *
 	 * @deprecated
 	 */
-	public abstract URL getURL(String iconName);
+	public URL getURL(String iconName);
+	
+	/**
+	 * Return an id of the resource associated to the named icon
+	 * or null if  the icon has not id.
+	 * 
+	 * @param iconName
+	 * @return the id associated to the icon or null.
+	 */
+	public String getResourceID(String iconName);
 
 	public ImageIcon getNoIcon();
+	
+	/**
+	 * Return an iterator over the names of the icons in the theme.
+	 * 
+	 * @return iterator of names of icons
+	 */
+	public Iterator<String> iterator();
 
 }
\ No newline at end of file
