Skip to main content
aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDarin Swanson2002-12-04 21:49:53 +0000
committerDarin Swanson2002-12-04 21:49:53 +0000
commit0abd9cb7f4c9a37d54e6d0c67aa7acce2e86a98f (patch)
treec5ab0749f6d1129c7ab876fe04ce10178a950031 /org.eclipse.ui.externaltools/Ant Tools Support/org/eclipse/ui/externaltools/internal/ant/preferences/AntClasspathLabelProvider.java
parent7649d48a6c48c5b9b342c8a29740a9c9064747cf (diff)
downloadeclipse.platform.debug-0abd9cb7f4c9a37d54e6d0c67aa7acce2e86a98f.tar.gz
eclipse.platform.debug-0abd9cb7f4c9a37d54e6d0c67aa7acce2e86a98f.tar.xz
eclipse.platform.debug-0abd9cb7f4c9a37d54e6d0c67aa7acce2e86a98f.zip
Bug 27440 - Cached classloader misses changes to tasks/types
Bug 27703 - Add classpath tab for Ant Bug 27615 - Incorrect button enablement on AntClasspathPage
Diffstat (limited to 'org.eclipse.ui.externaltools/Ant Tools Support/org/eclipse/ui/externaltools/internal/ant/preferences/AntClasspathLabelProvider.java')
-rw-r--r--org.eclipse.ui.externaltools/Ant Tools Support/org/eclipse/ui/externaltools/internal/ant/preferences/AntClasspathLabelProvider.java85
1 files changed, 85 insertions, 0 deletions
diff --git a/org.eclipse.ui.externaltools/Ant Tools Support/org/eclipse/ui/externaltools/internal/ant/preferences/AntClasspathLabelProvider.java b/org.eclipse.ui.externaltools/Ant Tools Support/org/eclipse/ui/externaltools/internal/ant/preferences/AntClasspathLabelProvider.java
new file mode 100644
index 000000000..13da8eb5f
--- /dev/null
+++ b/org.eclipse.ui.externaltools/Ant Tools Support/org/eclipse/ui/externaltools/internal/ant/preferences/AntClasspathLabelProvider.java
@@ -0,0 +1,85 @@
+package org.eclipse.ui.externaltools.internal.ant.preferences;
+
+import java.net.URL;
+
+import org.eclipse.jface.resource.ImageDescriptor;
+import org.eclipse.jface.viewers.ITableLabelProvider;
+import org.eclipse.jface.viewers.LabelProvider;
+import org.eclipse.swt.graphics.Image;
+import org.eclipse.ui.ISharedImages;
+import org.eclipse.ui.PlatformUI;
+import org.eclipse.ui.externaltools.internal.model.ExternalToolsPlugin;
+
+/**
+ * Label provider for classpath elements
+ */
+public class AntClasspathLabelProvider extends LabelProvider implements ITableLabelProvider {
+ private static final String IMG_JAR_FILE = "icons/full/obj16/jar_l_obj.gif"; //$NON-NLS-1$;
+ private static final String IMG_CLASSPATH = "icons/full/obj16/classpath.gif"; //$NON-NLS-1$;
+
+ private Image classpathImage;
+ private Image folderImage;
+ private Image jarImage;
+
+ /**
+ * Creates an instance.
+ */
+ public AntClasspathLabelProvider() {
+ }
+
+ /* (non-Javadoc)
+ * Method declared on IBaseLabelProvider.
+ */
+ public void dispose() {
+ // Folder image is shared, do not dispose.
+ folderImage = null;
+ if (jarImage != null) {
+ jarImage.dispose();
+ jarImage = null;
+ }
+ if (classpathImage != null) {
+ classpathImage.dispose();
+ classpathImage = null;
+ }
+ }
+
+ /* (non-Javadoc)
+ * Method declared on ITableLabelProvider.
+ */
+ public Image getColumnImage(Object element, int columnIndex) {
+ URL url = (URL) element;
+ if (url.getFile().endsWith("/")) //$NON-NLS-1$
+ return getFolderImage();
+ else
+ return getJarImage();
+ }
+
+ /* (non-Javadoc)
+ * Method declared on ITableLabelProvider.
+ */
+ public String getColumnText(Object element, int columnIndex) {
+ return ((URL) element).getFile();
+ }
+
+ private Image getFolderImage() {
+ if (folderImage == null)
+ folderImage = PlatformUI.getWorkbench().getSharedImages().getImage(ISharedImages.IMG_OBJ_FOLDER);
+ return folderImage;
+ }
+
+ private Image getJarImage() {
+ if (jarImage == null) {
+ ImageDescriptor desc = ExternalToolsPlugin.getDefault().getImageDescriptor(AntClasspathLabelProvider.IMG_JAR_FILE);
+ jarImage = desc.createImage();
+ }
+ return jarImage;
+ }
+
+ public Image getClasspathImage() {
+ if (classpathImage == null) {
+ ImageDescriptor desc = ExternalToolsPlugin.getDefault().getImageDescriptor(AntClasspathLabelProvider.IMG_CLASSPATH);
+ classpathImage = desc.createImage();
+ }
+ return classpathImage;
+ }
+} \ No newline at end of file

Back to the top