Skip to main content
summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
Diffstat (limited to 'bundles/org.eclipse.wst.xml.ui/src-catalog/org/eclipse/wst/xml/ui/internal/catalog/XMLCatalogTreeViewer.java')
-rw-r--r--bundles/org.eclipse.wst.xml.ui/src-catalog/org/eclipse/wst/xml/ui/internal/catalog/XMLCatalogTreeViewer.java260
1 files changed, 0 insertions, 260 deletions
diff --git a/bundles/org.eclipse.wst.xml.ui/src-catalog/org/eclipse/wst/xml/ui/internal/catalog/XMLCatalogTreeViewer.java b/bundles/org.eclipse.wst.xml.ui/src-catalog/org/eclipse/wst/xml/ui/internal/catalog/XMLCatalogTreeViewer.java
deleted file mode 100644
index 30d49598e6..0000000000
--- a/bundles/org.eclipse.wst.xml.ui/src-catalog/org/eclipse/wst/xml/ui/internal/catalog/XMLCatalogTreeViewer.java
+++ /dev/null
@@ -1,260 +0,0 @@
-/*******************************************************************************
- * Copyright (c) 2002, 2008 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
- * Jens Lukowski/Innoopract - initial renaming/restructuring
- *
- *******************************************************************************/
-package org.eclipse.wst.xml.ui.internal.catalog;
-
-import com.ibm.icu.text.Collator;
-import java.util.Arrays;
-import java.util.Comparator;
-import java.util.HashMap;
-import java.util.Iterator;
-import java.util.List;
-import java.util.Vector;
-
-import org.eclipse.jface.action.Action;
-import org.eclipse.jface.action.IMenuManager;
-import org.eclipse.jface.resource.ImageDescriptor;
-import org.eclipse.jface.viewers.ITreeContentProvider;
-import org.eclipse.jface.viewers.LabelProvider;
-import org.eclipse.jface.viewers.TreeViewer;
-import org.eclipse.jface.viewers.Viewer;
-import org.eclipse.jface.viewers.ViewerFilter;
-import org.eclipse.swt.SWT;
-import org.eclipse.swt.graphics.Image;
-import org.eclipse.swt.widgets.Composite;
-import org.eclipse.ui.IEditorRegistry;
-import org.eclipse.ui.PlatformUI;
-import org.eclipse.wst.common.uriresolver.internal.util.URIHelper;
-import org.eclipse.wst.xml.core.internal.catalog.provisional.ICatalog;
-import org.eclipse.wst.xml.core.internal.catalog.provisional.ICatalogElement;
-import org.eclipse.wst.xml.core.internal.catalog.provisional.ICatalogEntry;
-import org.eclipse.wst.xml.core.internal.catalog.provisional.INextCatalog;
-
-
-public class XMLCatalogTreeViewer extends TreeViewer {
- protected static Image xmlCatalogImage = ImageFactory.INSTANCE.getImage("icons/obj16/xmlcatalog_obj.gif"); //$NON-NLS-1$
- protected static Image errorImage = ImageFactory.INSTANCE.getImage("icons/ovr16/error-overlay.gif"); //$NON-NLS-1$
- protected static Image entryImage = ImageFactory.INSTANCE.getImage("icons/obj16/entry_obj.png"); //$NON-NLS-1$
- protected static Image nextCatalogImage = ImageFactory.INSTANCE.getImage("icons/obj16/nextCatalog_obj.gif"); //$NON-NLS-1$
-
- protected static String ERROR_STATE_KEY = "errorstatekey"; //$NON-NLS-1$
-
- protected ICatalog fWorkingUserCatalog;
- protected ICatalog fSystemCatalog;
-
- public static String USER_SPECIFIED_ENTRIES_OBJECT = XMLCatalogMessages.UI_LABEL_USER_SPECIFIED_ENTRIES;
- public static String PLUGIN_SPECIFIED_ENTRIES_OBJECT = XMLCatalogMessages.UI_LABEL_PLUGIN_SPECIFIED_ENTRIES;
-
- public XMLCatalogTreeViewer(Composite parent, ICatalog workingUserCatalog, ICatalog systemCatalog) {
- super(parent, SWT.MULTI | SWT.BORDER);
- this.fWorkingUserCatalog = workingUserCatalog;
- this.fSystemCatalog = systemCatalog;
-
- setContentProvider(new CatalogEntryContentProvider());
- setLabelProvider(new CatalogEntryLabelProvider());
- }
-
- public void setFilterExtensions(String[] extensions) {
- resetFilters();
- addFilter(new XMLCatalogTableViewerFilter(extensions));
- }
-
- public class CatalogEntryLabelProvider extends LabelProvider {
- protected HashMap imageTable = new HashMap();
-
- public String getText(Object object) {
- String result = null;
- if (object instanceof ICatalogEntry) {
- ICatalogEntry catalogEntry = (ICatalogEntry) object;
- result = catalogEntry.getKey();
- // result = URIHelper.removePlatformResourceProtocol(result);
- }
- else if (object instanceof INextCatalog) {
- INextCatalog nextCatalog = (INextCatalog) object;
- // result = nextCatalog.getCatalogLocation();
- result = URIUtils.convertURIToLocation(nextCatalog.getCatalogLocation());
- if (nextCatalog.getCatalogLocation().startsWith("file:")) {
- result += " (" + XMLCatalogMessages.UI_LABEL_FILE_SYSTEM_RESOURCE + ")";
- }
- else if (nextCatalog.getCatalogLocation().startsWith("platform:")) {
- result += " (" + XMLCatalogMessages.UI_LABEL_PLATFORM_RESOURCE + ")";
- }
- }
- return result != null ? result : object.toString();
- }
-
- public Image getImage(Object object) {
- Image result = null;
- Image base = null;
- if (object instanceof String) {
- result = xmlCatalogImage;
- }
- else if (object instanceof ICatalogEntry) {
- ICatalogEntry catalogEntry = (ICatalogEntry) object;
- String uri = catalogEntry.getURI();
- IEditorRegistry er = PlatformUI.getWorkbench().getEditorRegistry();
- ImageDescriptor imageDescriptor = er.getImageDescriptor(uri);
- Image image = (Image) imageTable.get(imageDescriptor);
- if (image == null) {
- image = imageDescriptor.createImage();
- imageTable.put(imageDescriptor, image);
- }
- base = image;
-
- if (base != null) {
- if (URIHelper.isReadableURI(uri, true)) {
- result = base;
- }
- else {
- result = ImageFactory.INSTANCE.createCompositeImage(base, errorImage, ImageFactory.BOTTOM_LEFT);
- }
- }
- }
- else if (object instanceof INextCatalog) {
- // TODO: add image to the imageTable and add error overlay if
- // next catalog URI is not readable
- result = nextCatalogImage;
- }
- return result;
- }
-
- public void dispose() {
- super.dispose();
- for (Iterator it = imageTable.values().iterator(); it.hasNext();) {
- ((Image) it.next()).dispose();
- }
- }
- }
-
-
- public class CatalogEntryContentProvider implements ITreeContentProvider {
- protected Object[] roots;
-
- public CatalogEntryContentProvider() {
- roots = new Object[2];
- roots[0] = USER_SPECIFIED_ENTRIES_OBJECT;
- roots[1] = PLUGIN_SPECIFIED_ENTRIES_OBJECT;
- }
-
- public boolean isRoot(Object object) {
- return (object instanceof String) || (object instanceof INextCatalog);
- }
-
- public Object[] getElements(Object element) {
- return roots;
- }
-
- public Object[] getChildren(Object parentElement) {
- Object[] result = new Object[0];
- if (parentElement == roots[0]) {
- result = getChildrenHelper(fWorkingUserCatalog);
- }
- else if (parentElement == roots[1]) {
- result = getChildrenHelper(fSystemCatalog);
- }
- else if (parentElement instanceof INextCatalog) {
- ICatalog nextCatalog = ((INextCatalog) parentElement).getReferencedCatalog();
- result = getChildrenHelper(nextCatalog);
- }
- return result;
- }
-
- protected Object[] getChildrenHelper(ICatalog catalog) {
- // TODO add entries from the nested catalogs
-
- ICatalogEntry[] entries = catalog.getCatalogEntries();
- if (entries.length > 0) {
- Comparator comparator = new Comparator() {
- public int compare(Object o1, Object o2) {
- int result = 0;
- if ((o1 instanceof ICatalogEntry) && (o2 instanceof ICatalogEntry)) {
- ICatalogEntry entry1 = (ICatalogEntry) o1;
- ICatalogEntry entry2 = (ICatalogEntry) o2;
- result = Collator.getInstance().compare(entry1.getKey(), entry2.getKey());
- }
- return result;
- }
- };
- Arrays.sort(entries, comparator);
- }
- Vector result = new Vector();
- result.addAll(Arrays.asList(entries));
- INextCatalog[] nextCatalogs = catalog.getNextCatalogs();
- List nextCatalogsList = Arrays.asList(nextCatalogs);
- result.addAll(nextCatalogsList);
-
- return result.toArray(new ICatalogElement[result.size()]);
- }
-
- public Object getParent(Object element) {
- return (element instanceof String) ? null : USER_SPECIFIED_ENTRIES_OBJECT;
- }
-
- public boolean hasChildren(Object element) {
- return isRoot(element) ? getChildren(element).length > 0 : false;
- }
-
- public void dispose() {
- // nothing to dispose
- }
-
- public void inputChanged(Viewer viewer, Object old, Object newobj) {
- // ISSUE: seems we should do something here
- }
-
- public boolean isDeleted(Object object) {
- return false;
- }
- }
-
-
- public void menuAboutToShow(IMenuManager menuManager) {
- Action action = new Action("hello") { //$NON-NLS-1$
- public void run() {
- System.out.println("run!"); //$NON-NLS-1$
- }
- };
- menuManager.add(action);
- }
-
-
- class XMLCatalogTableViewerFilter extends ViewerFilter {
- protected String[] extensions;
-
- public XMLCatalogTableViewerFilter(String[] extensions1) {
- this.extensions = extensions1;
- }
-
- public boolean isFilterProperty(Object element, Object property) {
- return false;
- }
-
- public boolean select(Viewer viewer, Object parent, Object element) {
- boolean result = false;
- if (element instanceof ICatalogEntry) {
- ICatalogEntry catalogEntry = (ICatalogEntry) element;
- for (int i = 0; i < extensions.length; i++) {
- if (catalogEntry.getURI().endsWith(extensions[i])) {
- result = true;
- break;
- }
- }
- }
- else if (element.equals(XMLCatalogTreeViewer.PLUGIN_SPECIFIED_ENTRIES_OBJECT) || element.equals(XMLCatalogTreeViewer.USER_SPECIFIED_ENTRIES_OBJECT)) {
- return true;
- }
- return result;
- }
- }
-
-
-}

Back to the top