Example usage for org.eclipse.jdt.core CompletionProposal PACKAGE_REF

List of usage examples for org.eclipse.jdt.core CompletionProposal PACKAGE_REF

Introduction

In this page you can find the example usage for org.eclipse.jdt.core CompletionProposal PACKAGE_REF.

Prototype

int PACKAGE_REF

To view the source code for org.eclipse.jdt.core CompletionProposal PACKAGE_REF.

Click Source Link

Document

Completion is a reference to a package.

Usage

From source file:com.amashchenko.eclipse.strutsclipse.java.SimpleJavaProposalCollector.java

License:Apache License

@Override
protected IJavaCompletionProposal createJavaCompletionProposal(CompletionProposal proposal) {
    if (collectMethods) {
        if (CompletionProposal.METHOD_REF == proposal.getKind() && Flags.isPublic(proposal.getFlags())) {
            char[] sig = proposal.getSignature();
            char[] declSig = proposal.getDeclarationSignature();
            // collect methods suitable for action methods ignoring Object
            // methods
            if (sig != null && declSig != null && ACTION_METHOD_SIGNATURE.equals(String.valueOf(sig))
                    && !OBJECT_SIGNATURE.equals(String.valueOf(declSig))) {
                return new SimpleJavaCompletionProposal(proposal, getInvocationContext(),
                        getImage(getLabelProvider().createImageDescriptor(proposal)));
            }//from ww w.j  a  va 2s.  c om
        }
    } else {
        // collect packages and classes suitable for actions
        if ((CompletionProposal.PACKAGE_REF == proposal.getKind()
                || CompletionProposal.TYPE_REF == proposal.getKind()) && !Flags.isAbstract(proposal.getFlags())
                && !Flags.isInterface(proposal.getFlags()) && !Flags.isEnum(proposal.getFlags())) {
            return new SimpleJavaCompletionProposal(proposal, getInvocationContext(),
                    getImage(getLabelProvider().createImageDescriptor(proposal)));
        }
    }
    return null;
}

From source file:com.google.gwt.eclipse.core.editors.java.contentassist.JsniCompletionProposal.java

License:Open Source License

/**
 * Return proposals only for references to a package, type, field, method or
 * constructor (and nothing else).//from w  w  w.ja v a 2 s  .c  o  m
 */
public static IJavaCompletionProposal create(IJavaCompletionProposal jdtProposal,
        CompletionProposal wrappedProposal, IJavaProject javaProject, int replaceOffset, int replaceLength) {
    switch (wrappedProposal.getKind()) {
    case CompletionProposal.PACKAGE_REF:
    case CompletionProposal.TYPE_REF:
    case CompletionProposal.FIELD_REF:
    case CompletionProposal.METHOD_REF:
        return new JsniCompletionProposal(jdtProposal, wrappedProposal, javaProject, replaceOffset,
                replaceLength);
    default:
        return null;
    }
}

From source file:com.google.gwt.eclipse.core.editors.java.contentassist.JsniCompletionProposal.java

License:Open Source License

private String createReplaceString() {
    switch (wrappedProposal.getKind()) {
    case CompletionProposal.PACKAGE_REF:
        return computePackageCompletion();
    case CompletionProposal.TYPE_REF:
        return computeTypeCompletion();
    case CompletionProposal.FIELD_REF:
        return computeFieldCompletion();
    case CompletionProposal.METHOD_REF:
        if (wrappedProposal.isConstructor()) {
            return computeCtorCompletion();
        } else {/*from  ww  w  .j av  a  2  s . co  m*/
            return computeMethodCompletion();
        }
    default:
        return "";
    }
}

From source file:com.google.gwt.eclipse.core.editors.java.contentassist.JsniCompletionProposalCollector.java

License:Open Source License

public static CompletionProposalCollector createMemberProposalCollector(ICompilationUnit cu, int refOffset,
        int refLength, String refQualifiedTypeName) {
    JsniCompletionProposalCollector collector = new JsniCompletionProposalCollector(cu, refOffset, refLength);
    collector.setIgnored(CompletionProposal.PACKAGE_REF, true);
    collector.setIgnored(CompletionProposal.TYPE_REF, true);
    collector.setQualifiedTypeName(refQualifiedTypeName);

    return collector;
}

From source file:com.google.gwt.eclipse.core.uibinder.contentassist.computers.ProposalComputerFactory.java

License:Open Source License

/**
 * Creates a proposal computer for autocompleting the java classes for the
 * <ui:import field="___" />//from w w w  . ja va2 s  .c  o  m
 */
public static IProposalComputer newUiImportFieldProposalComputer(ContentAssistRequest contentAssistRequest,
        IJavaProject javaProject, String packageName) {

    IDOMAttr attribute = XmlContentAssistUtilities.getAttribute(contentAssistRequest);
    if (attribute == null || attribute.getOwnerElement() == null) {
        return null;
    }

    // Ensure we are autocompleting an 'ui:import' element attribute
    if (!UiBinderConstants.UI_BINDER_IMPORT_ELEMENT_NAME.equals(attribute.getOwnerElement().getLocalName())) {
        return null;
    }

    // Ensure we are autocompleting the 'field' attribute
    if (!attribute.equals(UiBinderXmlModelUtilities.getFieldAttribute(attribute.getOwnerElement()))) {
        return null;
    }

    String attrValue = XmlContentAssistUtilities.getAttributeValueUsingMatchString(contentAssistRequest);

    CodeCompleteProposalComputer ccpc = new CodeCompleteProposalComputer(
            new int[] { CompletionProposal.TYPE_REF, CompletionProposal.PACKAGE_REF,
                    CompletionProposal.FIELD_IMPORT, CompletionProposal.FIELD_REF },
            javaProject, attrValue, XmlContentAssistUtilities.getAttributeValueOffset(contentAssistRequest),
            attrValue.length(), packageName, true);

    return ccpc;
}

From source file:com.google.gwt.eclipse.core.uibinder.contentassist.computers.ProposalComputerFactory.java

License:Open Source License

/**
 * Creates a proposal computer for autocompleting the UiBinder root element
 * URN import scheme. For example, <ui:UiBinder
 * xmlns:g="urn:import:com.google.gwt._" />
 *//*from  w w  w. j a  v a  2 s.c o  m*/
public static IProposalComputer newUrnImportProposalComputer(ContentAssistRequest contentAssistRequest,
        IJavaProject javaProject) {
    IDOMAttr attribute = XmlContentAssistUtilities.getAttribute(contentAssistRequest);
    if (attribute == null) {
        return null;
    }

    String attrValue = XmlContentAssistUtilities.getAttributeValueUsingMatchString(contentAssistRequest);
    if (!UiBinderXmlModelUtilities.isUrnImportAttribute(attribute)) {
        return null;
    }

    int urnImportLength = UiBinderConstants.URN_IMPORT_NAMESPACE_BEGINNING.length();
    if (attrValue.length() < urnImportLength) {
        return null;
    }

    String replaceText = attrValue.substring(urnImportLength);
    int replaceOffset = XmlContentAssistUtilities.getAttributeValueOffset(contentAssistRequest)
            + urnImportLength;

    return new CodeCompleteProposalComputer(new int[] { CompletionProposal.PACKAGE_REF }, javaProject,
            replaceText, replaceOffset, replaceText.length(), null, false);
}

From source file:com.google.gwt.eclipse.core.uibinder.contentassist.computers.ProposalComputerFactory.java

License:Open Source License

/**
 * Creates a proposal computer for autocompleting the java classes for the
 * <ui:with ui:type="___" />/*w  ww.j  ava2s  .  c om*/
 */
public static IProposalComputer newWithTypeProposalComputer(ContentAssistRequest contentAssistRequest,
        IJavaProject javaProject) {

    IDOMAttr attribute = XmlContentAssistUtilities.getAttribute(contentAssistRequest);
    if (attribute == null || attribute.getOwnerElement() == null) {
        return null;
    }

    // Ensure we are autocompleting the 'type' attribute
    if (!attribute.equals(UiBinderXmlModelUtilities.getTypeAttribute(attribute.getOwnerElement()))) {
        return null;
    }

    String attrValue = XmlContentAssistUtilities.getAttributeValueUsingMatchString(contentAssistRequest);

    /*
     * Even though only types are valid, we must also propose packages to get to
     * fully qualified types if the user has typed e.g. "com.".
     */
    return new CodeCompleteProposalComputer(
            new int[] { CompletionProposal.TYPE_REF, CompletionProposal.PACKAGE_REF }, javaProject, attrValue,
            XmlContentAssistUtilities.getAttributeValueOffset(contentAssistRequest), attrValue.length(), null,
            false);
}

From source file:com.google.gwt.eclipse.core.uibinder.contentassist.computers.ProposalGeneratingCompletionRequestor.java

License:Open Source License

private void ignoreAll() {
    int[] ignoredKinds = new int[] { CompletionProposal.ANONYMOUS_CLASS_DECLARATION,
            CompletionProposal.FIELD_REF, CompletionProposal.KEYWORD, CompletionProposal.LABEL_REF,
            CompletionProposal.LOCAL_VARIABLE_REF, CompletionProposal.METHOD_REF,
            CompletionProposal.METHOD_DECLARATION, CompletionProposal.PACKAGE_REF, CompletionProposal.TYPE_REF,
            CompletionProposal.VARIABLE_DECLARATION, CompletionProposal.POTENTIAL_METHOD_DECLARATION,
            CompletionProposal.METHOD_NAME_REFERENCE, CompletionProposal.ANNOTATION_ATTRIBUTE_REF,
            CompletionProposal.JAVADOC_FIELD_REF, CompletionProposal.JAVADOC_METHOD_REF,
            CompletionProposal.JAVADOC_TYPE_REF, CompletionProposal.JAVADOC_VALUE_REF,
            CompletionProposal.JAVADOC_PARAM_REF, CompletionProposal.JAVADOC_BLOCK_TAG,
            CompletionProposal.JAVADOC_INLINE_TAG, CompletionProposal.FIELD_IMPORT,
            CompletionProposal.METHOD_IMPORT, CompletionProposal.TYPE_IMPORT };

    for (int kind : ignoredKinds) {
        setIgnored(kind, true);/*  w ww.  j  a  v  a 2 s.co m*/
    }
}

From source file:com.siteview.mde.internal.ui.editor.contentassist.TypePackageCompletionProcessor.java

License:Open Source License

private void generateProposals(String currentContent, IProject project, final Collection c,
        final int startOffset, final int length, final int typeScope) {

    class TypePackageCompletionRequestor extends CompletionRequestor {

        public TypePackageCompletionRequestor() {
            super(true);
            setIgnored(CompletionProposal.PACKAGE_REF, false);
            setIgnored(CompletionProposal.TYPE_REF, false);
        }/*w ww .j av a2s .c  om*/

        public void accept(CompletionProposal proposal) {
            if (proposal.getKind() == CompletionProposal.PACKAGE_REF) {
                String pkgName = new String(proposal.getCompletion());
                addProposalToCollection(c, startOffset, length, pkgName, pkgName,
                        MDEPluginImages.get(MDEPluginImages.OBJ_DESC_PACKAGE));
            } else {
                boolean isInterface = Flags.isInterface(proposal.getFlags());
                String completion = new String(proposal.getCompletion());
                if (isInterface && typeScope == IJavaSearchConstants.CLASS
                        || (!isInterface && typeScope == IJavaSearchConstants.INTERFACE)
                        || completion.equals("Dummy2")) //$NON-NLS-1$
                    // don't want Dummy class showing up as option.
                    return;
                int period = completion.lastIndexOf('.');
                String cName = null, pName = null;
                if (period == -1) {
                    cName = completion;
                } else {
                    cName = completion.substring(period + 1);
                    pName = completion.substring(0, period);
                }
                Image image = isInterface ? MDEPluginImages.get(MDEPluginImages.OBJ_DESC_GENERATE_INTERFACE)
                        : MDEPluginImages.get(MDEPluginImages.OBJ_DESC_GENERATE_CLASS);
                addProposalToCollection(c, startOffset, length, cName + " - " + pName, //$NON-NLS-1$
                        completion, image);
            }
        }

    }

    try {
        ICompilationUnit unit = getWorkingCopy(project);
        if (unit == null) {
            generateTypeProposals(currentContent, project, c, startOffset, length, 1);
            return;
        }
        IBuffer buff = unit.getBuffer();
        buff.setContents("class Dummy2 { " + currentContent); //$NON-NLS-1$

        CompletionRequestor req = new TypePackageCompletionRequestor();
        unit.codeComplete(15 + currentContent.length(), req);
        unit.discardWorkingCopy();
    } catch (JavaModelException e) {
    }
}

From source file:edu.brown.cs.bubbles.bedrock.BedrockUtil.java

License:Open Source License

/********************************************************************************/

static void outputCompletion(CompletionProposal cp, IvyXmlWriter xw) {
    xw.begin("COMPLETION");
    fieldValue(xw, "ACCESSIBILITY", cp.getAccessibility(), accessibility_types);
    if (cp.isConstructor())
        xw.field("CONSTRUCTOR", true);
    xw.field("TEXT", cp.getCompletion());
    xw.field("INDEX", cp.getCompletionLocation());
    xw.field("DECLKEY", cp.getDeclarationKey());
    switch (cp.getKind()) {
    case CompletionProposal.ANNOTATION_ATTRIBUTE_REF:
    case CompletionProposal.ANONYMOUS_CLASS_DECLARATION:
    case CompletionProposal.FIELD_IMPORT:
    case CompletionProposal.FIELD_REF:
    case CompletionProposal.FIELD_REF_WITH_CASTED_RECEIVER:
    case CompletionProposal.METHOD_IMPORT:
    case CompletionProposal.METHOD_REF:
    case CompletionProposal.METHOD_REF_WITH_CASTED_RECEIVER:
    case CompletionProposal.METHOD_DECLARATION:
    case CompletionProposal.POTENTIAL_METHOD_DECLARATION:
        xw.field("DECLSIGN", cp.getDeclarationSignature());
        break;/*www  . j  a  va 2s.  c  o m*/
    case CompletionProposal.PACKAGE_REF:
    case CompletionProposal.TYPE_IMPORT:
    case CompletionProposal.TYPE_REF:
        xw.field("DOTNAME", cp.getDeclarationSignature());
        break;
    }
    fieldFlags(xw, "ACCESS", cp.getFlags(), access_flags);
    xw.field("FLAGS", cp.getFlags());
    xw.field("KEY", cp.getKey());
    xw.field("NAME", cp.getName());
    xw.field("RELEVANCE", cp.getRelevance());
    xw.field("REPLACE_START", cp.getReplaceStart());
    xw.field("REPLACE_END", cp.getReplaceEnd());
    xw.field("SIGNATURE", cp.getSignature());
    xw.field("TOKEN_START", cp.getTokenStart());
    xw.field("TOKEN_END", cp.getTokenEnd());
    fieldValue(xw, "KIND", cp.getKind(), completion_types);
    if (cp instanceof ICompletionProposalExtension4) {
        ICompletionProposalExtension4 icp4 = (ICompletionProposalExtension4) cp;
        xw.field("AUTO", icp4.isAutoInsertable());
    }

    if (CompletionFlags.isStaticImport(cp.getAdditionalFlags()))
        xw.field("STATICIMPORT", true);

    if (cp.getKind() == CompletionProposal.FIELD_REF_WITH_CASTED_RECEIVER
            || cp.getKind() == CompletionProposal.METHOD_REF_WITH_CASTED_RECEIVER) {
        xw.field("RECEIVER_SIGN", cp.getReceiverSignature());
        xw.field("RECEIVER_START", cp.getReceiverStart());
        xw.field("RECEIVER_END", cp.getReceiverEnd());
    }
    xw.field("RCVR", cp.getReceiverSignature());

    xw.cdataElement("DESCRIPTION", cp.toString());

    CompletionProposal[] rq = cp.getRequiredProposals();
    if (rq != null) {
        xw.begin("REQUIRED");
        for (CompletionProposal xcp : rq)
            outputCompletion(xcp, xw);
        xw.end("REQUIRED");
    }

    xw.end("COMPLETION");
}