aboutsummaryrefslogtreecommitdiffstats
path: root/eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/internal/preferences/AttributeSortOrder.java
diff options
context:
space:
mode:
Diffstat (limited to 'eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/internal/preferences/AttributeSortOrder.java')
-rw-r--r--eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/internal/preferences/AttributeSortOrder.java112
1 files changed, 0 insertions, 112 deletions
diff --git a/eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/internal/preferences/AttributeSortOrder.java b/eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/internal/preferences/AttributeSortOrder.java
deleted file mode 100644
index b743014..0000000
--- a/eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/internal/preferences/AttributeSortOrder.java
+++ /dev/null
@@ -1,112 +0,0 @@
-/*
- * Copyright (C) 2011 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.preferences;
-
-import static com.android.SdkConstants.XMLNS;
-
-import com.android.ide.eclipse.adt.internal.editors.uimodel.UiAttributeNode;
-
-import org.eclipse.wst.sse.core.internal.provisional.IndexedRegion;
-import org.w3c.dom.Attr;
-
-import java.util.Comparator;
-
-/** Order to use when sorting attributes */
-@SuppressWarnings("restriction") // IndexedRegion
-public enum AttributeSortOrder {
- NO_SORTING("none"), //$NON-NLS-1$
- ALPHABETICAL("alpha"), //$NON-NLS-1$
- LOGICAL("logical"); //$NON-NLS-1$
-
- AttributeSortOrder(String key) {
- this.key = key;
- }
-
- public final String key;
-
- /**
- * @return a comparator for use by this attribute sort order
- */
- public Comparator<Attr> getAttributeComparator() {
- switch (this) {
- case ALPHABETICAL:
- return ALPHABETICAL_COMPARATOR;
- case NO_SORTING:
- return EXISTING_ORDER_COMPARATOR;
- case LOGICAL:
- default:
- return SORTED_ORDER_COMPARATOR;
- }
- }
-
- /** Comparator which can be used to sort attributes in the coding style priority order */
- private static final Comparator<Attr> SORTED_ORDER_COMPARATOR = new Comparator<Attr>() {
- @Override
- public int compare(Attr attr1, Attr attr2) {
- // Namespace declarations should always go first
- if (XMLNS.equals(attr1.getPrefix())) {
- if (XMLNS.equals(attr2.getPrefix())) {
- return 0;
- }
- return -1;
- } else if (XMLNS.equals(attr2.getPrefix())) {
- return 1;
- }
-
- // Sort by preferred attribute order
- return UiAttributeNode.compareAttributes(
- attr1.getPrefix(), attr1.getLocalName(),
- attr2.getPrefix(), attr2.getLocalName());
- }
- };
-
- /**
- * Comparator which can be used to "sort" attributes into their existing source order
- * (which is not the same as the node map iteration order in the DOM model)
- */
- private static final Comparator<Attr> EXISTING_ORDER_COMPARATOR = new Comparator<Attr>() {
- @Override
- public int compare(Attr attr1, Attr attr2) {
- IndexedRegion region1 = (IndexedRegion) attr1;
- IndexedRegion region2 = (IndexedRegion) attr2;
-
- return region1.getStartOffset() - region2.getStartOffset();
- }
- };
-
- /**
- * Comparator which can be used to sort attributes into alphabetical order (but xmlns
- * is always first)
- */
- private static final Comparator<Attr> ALPHABETICAL_COMPARATOR = new Comparator<Attr>() {
- @Override
- public int compare(Attr attr1, Attr attr2) {
- // Namespace declarations should always go first
- if (XMLNS.equals(attr1.getPrefix())) {
- if (XMLNS.equals(attr2.getPrefix())) {
- return 0;
- }
- return -1;
- } else if (XMLNS.equals(attr2.getPrefix())) {
- return 1;
- }
-
- // Sort by name rather than localname to ensure we sort by namespaces first,
- // then by names.
- return attr1.getName().compareTo(attr2.getName());
- }
- };
-} \ No newline at end of file