aboutsummaryrefslogtreecommitdiff
path: root/eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/internal/editors/formatting/XmlQuickAssistManager.java
diff options
context:
space:
mode:
Diffstat (limited to 'eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/internal/editors/formatting/XmlQuickAssistManager.java')
-rw-r--r--eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/internal/editors/formatting/XmlQuickAssistManager.java106
1 files changed, 0 insertions, 106 deletions
diff --git a/eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/internal/editors/formatting/XmlQuickAssistManager.java b/eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/internal/editors/formatting/XmlQuickAssistManager.java
deleted file mode 100644
index a979a8086..000000000
--- a/eclipse/plugins/com.android.ide.eclipse.adt/src/com/android/ide/eclipse/adt/internal/editors/formatting/XmlQuickAssistManager.java
+++ /dev/null
@@ -1,106 +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.editors.formatting;
-
-import com.android.ide.eclipse.adt.internal.build.AaptQuickFix;
-import com.android.ide.eclipse.adt.internal.editors.layout.refactoring.RefactoringAssistant;
-import com.android.ide.eclipse.adt.internal.lint.LintFixGenerator;
-
-import org.eclipse.jface.text.contentassist.ICompletionProposal;
-import org.eclipse.jface.text.quickassist.IQuickAssistInvocationContext;
-import org.eclipse.jface.text.quickassist.IQuickAssistProcessor;
-import org.eclipse.jface.text.source.Annotation;
-
-import java.util.ArrayList;
-import java.util.List;
-
-/**
- * This class implements Quick Assists for XML files. It does not perform any
- * quick assistance on its own, but it coordinates the various separate quick
- * assists available for XML such that the order is logical. This is necessary
- * because without it, the order of suggestions (when more than one assistant
- * provides suggestions) is not always optimal. There doesn't seem to be a way
- * from non-Java languages to set the sorting order (see
- * https://bugs.eclipse.org/bugs/show_bug.cgi?id=229983 ). So instead of
- * registering our multiple XML quick assistants via the plugin.xml file, we
- * register <b>just</b> this manager, which delegates to the various XML quick
- * assistants as appropriate.
- */
-public class XmlQuickAssistManager implements IQuickAssistProcessor {
- private final IQuickAssistProcessor[] mProcessors;
-
- /** Constructs a new {@link XmlQuickAssistManager} which orders the quick fixes */
- public XmlQuickAssistManager() {
- mProcessors = new IQuickAssistProcessor[] {
- new AaptQuickFix(),
- new LintFixGenerator(),
- new RefactoringAssistant()
- };
- }
-
- @Override
- public String getErrorMessage() {
- return null;
- }
-
- @Override
- public boolean canFix(Annotation annotation) {
- for (IQuickAssistProcessor processor : mProcessors) {
- if (processor.canFix(annotation)) {
- return true;
- }
- }
-
- return false;
- }
-
- @Override
- public boolean canAssist(IQuickAssistInvocationContext invocationContext) {
- for (IQuickAssistProcessor processor : mProcessors) {
- if (processor.canAssist(invocationContext)) {
- return true;
- }
- }
-
- return false;
- }
-
- @Override
- public ICompletionProposal[] computeQuickAssistProposals(
- IQuickAssistInvocationContext invocationContext) {
- List<ICompletionProposal> allProposals = null;
- for (IQuickAssistProcessor processor : mProcessors) {
- if (processor.canAssist(invocationContext)) {
- ICompletionProposal[] proposals =
- processor.computeQuickAssistProposals(invocationContext);
- if (proposals != null && proposals.length > 0) {
- if (allProposals == null) {
- allProposals = new ArrayList<ICompletionProposal>();
- }
- for (ICompletionProposal proposal : proposals) {
- allProposals.add(proposal);
- }
- }
- }
- }
-
- if (allProposals != null) {
- return allProposals.toArray(new ICompletionProposal[allProposals.size()]);
- }
-
- return null;
- }
-}