X-Git-Url: http://secure.phpeclipse.com diff --git a/net.sourceforge.phpeclipse.ui/src/net/sourceforge/phpdt/internal/ui/viewsupport/StorageLabelProvider.java b/net.sourceforge.phpeclipse.ui/src/net/sourceforge/phpdt/internal/ui/viewsupport/StorageLabelProvider.java deleted file mode 100644 index a5d86bc..0000000 --- a/net.sourceforge.phpeclipse.ui/src/net/sourceforge/phpdt/internal/ui/viewsupport/StorageLabelProvider.java +++ /dev/null @@ -1,134 +0,0 @@ -/******************************************************************************* - * Copyright (c) 2000, 2003 IBM Corporation and others. - * All rights reserved. This program and the accompanying materials - * are made available under the terms of the Common Public License v1.0 - * which accompanies this distribution, and is available at - * http://www.eclipse.org/legal/cpl-v10.html - * - * Contributors: - * IBM Corporation - initial API and implementation - *******************************************************************************/ -package net.sourceforge.phpdt.internal.ui.viewsupport; - -import java.util.HashMap; -import java.util.Iterator; -import java.util.Map; - -import org.eclipse.core.resources.IStorage; -import org.eclipse.core.runtime.IPath; -import org.eclipse.jface.resource.ImageDescriptor; -import org.eclipse.jface.viewers.LabelProvider; -import org.eclipse.swt.graphics.Image; -import org.eclipse.ui.IEditorRegistry; -import org.eclipse.ui.IFileEditorMapping; -import org.eclipse.ui.PlatformUI; - -/** - * Standard label provider for IStorage objects. Use this class when you want to - * present IStorage objects in a viewer. - */ -public class StorageLabelProvider extends LabelProvider { - - private IEditorRegistry fEditorRegistry = PlatformUI.getWorkbench() - .getEditorRegistry(); - - private Map fJarImageMap = new HashMap(10); - - private Image fDefaultImage; - - /* - * (non-Javadoc) - * - * @see ILabelProvider#getImage - */ - public Image getImage(Object element) { - if (element instanceof IStorage) - return getImageForJarEntry((IStorage) element); - - return super.getImage(element); - } - - /* - * (non-Javadoc) - * - * @see ILabelProvider#getText - */ - public String getText(Object element) { - if (element instanceof IStorage) - return ((IStorage) element).getName(); - - return super.getText(element); - } - - /* - * (non-Javadoc) - * - * @see IBaseLabelProvider#dispose - */ - public void dispose() { - if (fJarImageMap != null) { - Iterator each = fJarImageMap.values().iterator(); - while (each.hasNext()) { - Image image = (Image) each.next(); - image.dispose(); - } - fJarImageMap = null; - } - if (fDefaultImage != null) - fDefaultImage.dispose(); - fDefaultImage = null; - } - - /* - * Gets and caches an image for a JarEntryFile. The image for a JarEntryFile - * is retrieved from the EditorRegistry. - */ - private Image getImageForJarEntry(IStorage element) { - if (fJarImageMap == null) - return getDefaultImage(); - - if (element == null || element.getName() == null) - return getDefaultImage(); - - // Try to find icon for full name - String name = element.getName(); - Image image = (Image) fJarImageMap.get(name); - if (image != null) - return image; - IFileEditorMapping[] mappings = fEditorRegistry.getFileEditorMappings(); - int i = 0; - while (i < mappings.length) { - if (mappings[i].getLabel().equals(name)) - break; - i++; - } - String key = name; - if (i == mappings.length) { - // Try to find icon for extension - IPath path = element.getFullPath(); - if (path == null) - return getDefaultImage(); - key = path.getFileExtension(); - if (key == null) - return getDefaultImage(); - image = (Image) fJarImageMap.get(key); - if (image != null) - return image; - } - - // Get the image from the editor registry - ImageDescriptor desc = fEditorRegistry.getImageDescriptor(name); - image = desc.createImage(); - - fJarImageMap.put(key, image); - - return image; - } - - private Image getDefaultImage() { - if (fDefaultImage == null) - fDefaultImage = fEditorRegistry.getImageDescriptor((String) null) - .createImage(); - return fDefaultImage; - } -}