diff options
Diffstat (limited to 'eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/internal/editors/OutlineLabelProvider.java')
-rw-r--r-- | eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/internal/editors/OutlineLabelProvider.java | 117 |
1 files changed, 0 insertions, 117 deletions
diff --git a/eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/internal/editors/OutlineLabelProvider.java b/eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/internal/editors/OutlineLabelProvider.java deleted file mode 100644 index bb5d1ba01..000000000 --- a/eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/internal/editors/OutlineLabelProvider.java +++ /dev/null @@ -1,117 +0,0 @@ -/* - * Copyright (C) 2012 The Android Open Source Project - * - * Licensed under the Eclipse Public License, Version 1.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.eclipse.org/org/documents/epl-v10.php - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package com.android.ide.eclipse.adt.internal.editors; - -import static com.android.SdkConstants.ANDROID_URI; -import static com.android.SdkConstants.ATTR_ID; -import static com.android.SdkConstants.ATTR_LAYOUT; -import static com.android.SdkConstants.ATTR_NAME; -import static com.android.SdkConstants.ATTR_SRC; -import static com.android.SdkConstants.ATTR_TEXT; -import static com.android.SdkConstants.DRAWABLE_PREFIX; -import static com.android.SdkConstants.LAYOUT_RESOURCE_PREFIX; -import static com.android.SdkConstants.VIEW; -import static com.android.SdkConstants.VIEW_TAG; - -import org.eclipse.swt.graphics.Image; -import org.eclipse.wst.xml.ui.internal.contentoutline.JFaceNodeLabelProvider; -import org.w3c.dom.DOMException; -import org.w3c.dom.Element; - -/** - * Label provider for the XML outlines and quick outlines: Use our own icons, - * when available, and and include the most important attribute (id, name, or - * text) - */ -@SuppressWarnings("restriction") -// XML UI API -class OutlineLabelProvider extends JFaceNodeLabelProvider { - @Override - public Image getImage(Object element) { - if (element instanceof Element) { - Element e = (Element) element; - String tagName = e.getTagName(); - if (VIEW_TAG.equals(tagName)) { - // Can't have both view.png and View.png; issues on case sensitive vs - // case insensitive file systems - tagName = VIEW; - } - IconFactory factory = IconFactory.getInstance(); - Image img = factory.getIcon(tagName, null); - if (img != null) { - return img; - } - } - return super.getImage(element); - } - - @Override - public String getText(Object element) { - String text = super.getText(element); - if (element instanceof Element) { - Element e = (Element) element; - String id = getAttributeNS(e, ANDROID_URI, ATTR_ID); - if (id == null || id.length() == 0) { - id = getAttributeNS(e, ANDROID_URI, ATTR_NAME); - if (id == null || id.length() == 0) { - id = e.getAttribute(ATTR_NAME); - if (id == null || id.length() == 0) { - id = getAttributeNS(e, ANDROID_URI, ATTR_TEXT); - if (id != null && id.length() > 15) { - id = id.substring(0, 12) + "..."; - } - if (id == null || id.length() == 0) { - id = getAttributeNS(e, ANDROID_URI, ATTR_SRC); - if (id != null && id.length() > 0) { - if (id.startsWith(DRAWABLE_PREFIX)) { - id = id.substring(DRAWABLE_PREFIX.length()); - } - } else { - id = e.getAttribute(ATTR_LAYOUT); - if (id != null && id.length() > 0) { - if (id.startsWith(LAYOUT_RESOURCE_PREFIX)) { - id = id.substring(LAYOUT_RESOURCE_PREFIX.length()); - } - } - } - } - } - } - } - if (id != null && id.length() > 0) { - return text + ": " + id; //$NON-NLS-1$ - } - } - return text; - } - - /** - * Wrapper around {@link Element#getAttributeNS(String, String)}. - * <p/> - * The implementation used in Eclipse's XML editor sometimes internally - * throws an NPE instead of politely returning null. - * - * @see Element#getAttributeNS(String, String) - */ - private String getAttributeNS(Element e, String uri, String name) throws DOMException { - try { - return e.getAttributeNS(uri, name); - } catch (NullPointerException ignore) { - return null; - } - } -} |