1 /*==================================================================== 2 3 Objectweb Explorer Framework 4 Copyright (C) 2000-2004 INRIA - USTL - LIFL - GOAL 5 Contact: openccm@objectweb.org 6 7 This library is free software; you can redistribute it and/or 8 modify it under the terms of the GNU Lesser General Public 9 License as published by the Free Software Foundation; either 10 version 2.1 of the License, or any later version. 11 12 This library is distributed in the hope that it will be useful, 13 but WITHOUT ANY WARRANTY; without even the implied warranty of 14 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU 15 Lesser General Public License for more details. 16 17 You should have received a copy of the GNU Lesser General Public 18 License along with this library; if not, write to the Free Software 19 Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 20 USA 21 22 Initial developer(s): Philippe Merle, Jerome Moroy. 23 Contributor(s): ______________________________________. 24 25 ====================================================================*/ 26 27 package org.objectweb.util.explorer.api; 28 29 /** 30 * This interface defines the way to customize icons.<br> 31 * In order to define an icon provider, you can have a look to the corresponding 32 * <a HREF="explorer-dtd.html#icon">DTD element</a> or to 33 * an <a HREF="package-summary.html#xml">XML example.</a> 34 * 35 * @author <a HREF="mailto:Jerome.Moroy@lifl.fr">Jérôme Moroy</a>, 36 * <a HREF="mailto:Philippe.Merle@lifl.fr">Philippe Merle</a> 37 * 38 * @version 0.3 39 */ 40 public interface IconProvider 41 { 42 43 /** 44 * Returns a icon computed according to the given object. 45 * The type of the returned object may be: 46 * <ul> 47 * <li>A <code>java.lang.String</code> defining the path to an icon file located on the local machine</li> 48 * <li>An <code>java.net.UTL</code> pointing out an icon file.</li> 49 * <li>An icon representation dependending on the used graphical framework (more formaly, an <code>org.eclipse.swt.graphics.Image</code> for SWT 50 * and a <code>javax.swing.Icon</code> for Swing application.</li> 51 * </ul> 52 * 53 * @param object The object on which the icon must be computed. 54 * 55 * @return A reference pointing out the icon to display or the icon itself. 56 */ 57 public Object 58 newIcon(Object object); 59 60 }