Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to 'org.eclipse.ui.externaltools/External Tools/org/eclipse/ui/externaltools/internal/ui/AntPageLabelProvider.java')
-rw-r--r--org.eclipse.ui.externaltools/External Tools/org/eclipse/ui/externaltools/internal/ui/AntPageLabelProvider.java115
1 files changed, 115 insertions, 0 deletions
diff --git a/org.eclipse.ui.externaltools/External Tools/org/eclipse/ui/externaltools/internal/ui/AntPageLabelProvider.java b/org.eclipse.ui.externaltools/External Tools/org/eclipse/ui/externaltools/internal/ui/AntPageLabelProvider.java
new file mode 100644
index 000000000..b10e6205c
--- /dev/null
+++ b/org.eclipse.ui.externaltools/External Tools/org/eclipse/ui/externaltools/internal/ui/AntPageLabelProvider.java
@@ -0,0 +1,115 @@
+package org.eclipse.ui.externaltools.internal.ui;
+
+/**********************************************************************
+Copyright (c) 2002 IBM Corp. and others.
+All rights reserved.   This program and the accompanying materials
+are made available under the terms of the Common Public License v0.5
+which accompanies this distribution, and is available at
+http://www.eclipse.org/legal/cpl-v05.html
+Contributors:
+**********************************************************************/
+import java.net.URL;
+
+import org.eclipse.ant.core.*;
+import org.eclipse.jface.viewers.*;
+import org.eclipse.swt.graphics.Image;
+import org.eclipse.ui.*;
+import org.eclipse.ui.externaltools.internal.core.ExternalToolsPlugin;
+
+/**
+ * Label provider for the items in the custmomize ant preference page:
+ * URLs, Tasks, and Types.
+ */
+public class AntPageLabelProvider
+ extends LabelProvider
+ implements ITableLabelProvider {
+
+ private Image folderImage;
+ private Image jarImage;
+ private Image taskImage;
+ private Image typeImage;
+
+ public AntPageLabelProvider() {
+ }
+ public void dispose() {
+ //note: folder and task are shared images
+ folderImage = null;
+ taskImage = null;
+ if (jarImage != null) {
+ jarImage.dispose();
+ jarImage = null;
+ }
+ if (typeImage != null) {
+ typeImage.dispose();
+ typeImage = null;
+ }
+ }
+ public Image getColumnImage(Object element, int columnIndex) {
+ if (element instanceof URL) {
+ URL url = (URL) element;
+ if (url.getFile().endsWith("/")) { //$NON-NLS-1$
+ return folderImage();
+ } else {
+ return jarImage();
+ }
+ }
+ if (element instanceof Task) {
+ return taskImage();
+ }
+ if (element instanceof Type) {
+ return typeImage();
+ }
+ return null;
+ }
+ public String getColumnText(Object element, int columnIndex) {
+ if (element instanceof URL) {
+ return ((URL) element).getFile();
+ }
+ if (element instanceof Task) {
+ Task task = (Task) element;
+ return task.getTaskName() + " (" + task.getLibrary().getFile() + ": " + task.getClassName() + ")"; //$NON-NLS-3$//$NON-NLS-2$//$NON-NLS-1$
+ }
+ if (element instanceof Type) {
+ Type type = (Type) element;
+ return type.getTypeName() + " (" + type.getLibrary().getFile() + ": " + type.getClassName() + ")"; //$NON-NLS-3$//$NON-NLS-2$//$NON-NLS-1$
+ }
+ return element.toString();
+ }
+ private Image folderImage() {
+ if (folderImage != null)
+ return folderImage;
+ folderImage =
+ PlatformUI.getWorkbench().getSharedImages().getImage(
+ ISharedImages.IMG_OBJ_FOLDER);
+ return folderImage;
+ }
+ private Image jarImage() {
+ if (jarImage != null)
+ return jarImage;
+ jarImage =
+ ExternalToolsPlugin
+ .getDefault()
+ .getImageDescriptor(ExternalToolsPlugin.IMG_JAR_FILE)
+ .createImage();
+ return jarImage;
+ }
+ private Image taskImage() {
+ if (taskImage != null)
+ return taskImage;
+ taskImage =
+ PlatformUI.getWorkbench().getSharedImages().getImage(
+ ISharedImages.IMG_OBJS_TASK_TSK);
+ return taskImage;
+ }
+ private Image typeImage() {
+ if (typeImage != null)
+ return typeImage;
+ typeImage =
+ ExternalToolsPlugin
+ .getDefault()
+ .getImageDescriptor(ExternalToolsPlugin.IMG_TYPE)
+ .createImage();
+ return typeImage;
+ }
+} \ No newline at end of file

Back to the top