--- /dev/null
+/*******************************************************************************
+ * Copyright (c) 2000, 2012 IBM Corporation and others.
+ * All rights reserved. This program and the accompanying materials
+ * are made available under the terms of the Eclipse Public License v1.0
+ * which accompanies this distribution, and is available at
+ * http://www.eclipse.org/legal/epl-v10.html
+ *
+ * Contributors:
+ * IBM Corporation - initial API and implementation
+ *******************************************************************************/
+package org.eclipse.jdt.internal.ui.wizards.buildpaths;
+
+import org.eclipse.swt.graphics.Image;
+
+import org.eclipse.core.runtime.IPath;
+
+import org.eclipse.jface.resource.ImageDescriptor;
+import org.eclipse.jface.viewers.LabelProvider;
+
+import org.eclipse.ui.IWorkbench;
+import org.eclipse.ui.ide.IDE;
+
+import org.eclipse.jdt.core.IAccessRule;
+import org.eclipse.jdt.core.JavaCore;
+
+import org.eclipse.jdt.internal.corext.util.Messages;
+
+import org.eclipse.jdt.ui.ISharedImages;
+import org.eclipse.jdt.ui.JavaUI;
+
+import org.eclipse.jdt.internal.ui.JavaPlugin;
+import org.eclipse.jdt.internal.ui.viewsupport.BasicElementLabels;
+import org.eclipse.jdt.internal.ui.viewsupport.ImageDescriptorRegistry;
+import org.eclipse.jdt.internal.ui.wizards.NewWizardMessages;
+
+public class CPListLabelProvider extends LabelProvider {
+
+ String fNewLabel;
+
+ String fClassLabel;
+
+ private String fMissing;
+
+ public ImageDescriptorRegistry fRegistry;
+ public ISharedImages fSharedImages;
+
+ ImageDescriptor fProjectImage;
+
+ public ClasspathAttributeConfigurationDescriptors fAttributeDescriptors;
+
+
+ public CPListLabelProvider() {
+ fNewLabel= NewWizardMessages.CPListLabelProvider_new;
+ fClassLabel= NewWizardMessages.CPListLabelProvider_classcontainer;
+ fMissing= NewWizardMessages.CPListLabelProvider_missing;
+ fRegistry= JavaPlugin.getImageDescriptorRegistry();
+
+ fSharedImages= JavaUI.getSharedImages();
+
+ IWorkbench workbench= JavaPlugin.getDefault().getWorkbench();
+
+ fProjectImage= workbench.getSharedImages().getImageDescriptor(IDE.SharedImages.IMG_OBJ_PROJECT);
+ fAttributeDescriptors= JavaPlugin.getDefault().getClasspathAttributeConfigurationDescriptors();
+ }
+
+ @Override
+ public String getText(Object element) {
+ if (element instanceof CPListElement) {
+ return getCPListElementText((CPListElement) element);
+ } else if (element instanceof CPListElementAttribute) {
+ CPListElementAttribute attribute= (CPListElementAttribute) element;
+ return attribute.generated_2297199394940351098(this);
+ } else if (element instanceof CPUserLibraryElement) {
+ return getCPUserLibraryText((CPUserLibraryElement) element);
+ } else if (element instanceof IAccessRule) {
+ IAccessRule rule= (IAccessRule) element;
+ return Messages.format(NewWizardMessages.CPListLabelProvider_access_rules_label, new String[] { AccessRulesLabelProvider.getResolutionLabel(rule.getKind()), BasicElementLabels.getPathLabel(rule.getPattern(), false)});
+ }
+ return super.getText(element);
+ }
+
+ public String getCPUserLibraryText(CPUserLibraryElement element) {
+ return element.generated_6170624604143659829();
+ }
+
+ public String getCPListElementAttributeText(CPListElementAttribute attrib) {
+ String notAvailable= NewWizardMessages.CPListLabelProvider_none;
+ return attrib.generated_2233670715107051429(this, notAvailable);
+ }
+
+ public String getCPListElementText(CPListElement cpentry) {
+ return cpentry.generated_8488069069699244284(this);
+ }
+
+ String getPathString(IPath path, boolean isExternal) {
+ if (ArchiveFileFilter.isArchivePath(path, true)) {
+ String appended= BasicElementLabels.getPathLabel(path.removeLastSegments(1), isExternal);
+ String lastSegment= BasicElementLabels.getResourceName(path.lastSegment());
+ return Messages.format(NewWizardMessages.CPListLabelProvider_twopart, new String[] { lastSegment, appended });
+ } else {
+ return BasicElementLabels.getPathLabel(path, isExternal);
+ }
+ }
+
+ String getVariableString(IPath path) {
+ String name= BasicElementLabels.getPathLabel(path, false);
+ IPath entryPath= JavaCore.getClasspathVariable(path.segment(0));
+ if (entryPath != null) {
+ String appended= BasicElementLabels.getPathLabel(entryPath.append(path.removeFirstSegments(1)), true);
+ return Messages.format(NewWizardMessages.CPListLabelProvider_twopart, new String[] { name, appended });
+ } else {
+ return name;
+ }
+ }
+
+ public ImageDescriptor getCPListElementBaseImage(CPListElement cpentry) {
+ return cpentry.generated_2372546680956635795(this);
+ }
+
+ @Override
+ public Image getImage(Object element) {
+ return fRegistry.generated_5429915211795607587(this, element);
+ }
+}