Example usage for org.eclipse.jdt.core IJavaElement IMPORT_DECLARATION

List of usage examples for org.eclipse.jdt.core IJavaElement IMPORT_DECLARATION

Introduction

In this page you can find the example usage for org.eclipse.jdt.core IJavaElement IMPORT_DECLARATION.

Prototype

int IMPORT_DECLARATION

To view the source code for org.eclipse.jdt.core IJavaElement IMPORT_DECLARATION.

Click Source Link

Document

Constant representing an import declaration within a compilation unit.

Usage

From source file:org.eclipse.e4.demo.simpleide.jdt.internal.editor.viewer.JavaElementLabelComposer.java

License:Open Source License

/**
 * Appends the label for a Java element with the flags as defined by this
 * class.//from  w w  w  .  j av  a2 s .c o  m
 * 
 * @param element
 *            the element to render
 * @param flags
 *            the rendering flags.
 */
public void appendElementLabel(IJavaElement element, long flags) {
    int type = element.getElementType();
    IPackageFragmentRoot root = null;

    if (type != IJavaElement.JAVA_MODEL && type != IJavaElement.JAVA_PROJECT
            && type != IJavaElement.PACKAGE_FRAGMENT_ROOT)
        root = JavaModelUtil.getPackageFragmentRoot(element);
    if (root != null && getFlag(flags, JavaElementLabels.PREPEND_ROOT_PATH)) {
        appendPackageFragmentRootLabel(root, JavaElementLabels.ROOT_QUALIFIED);
        fBuffer.append(JavaElementLabels.CONCAT_STRING);
    }

    switch (type) {
    case IJavaElement.METHOD:
        appendMethodLabel((IMethod) element, flags);
        break;
    case IJavaElement.FIELD:
        appendFieldLabel((IField) element, flags);
        break;
    case IJavaElement.LOCAL_VARIABLE:
        appendLocalVariableLabel((ILocalVariable) element, flags);
        break;
    case IJavaElement.TYPE_PARAMETER:
        appendTypeParameterLabel((ITypeParameter) element, flags);
        break;
    case IJavaElement.INITIALIZER:
        appendInitializerLabel((IInitializer) element, flags);
        break;
    case IJavaElement.TYPE:
        appendTypeLabel((IType) element, flags);
        break;
    case IJavaElement.CLASS_FILE:
        appendClassFileLabel((IClassFile) element, flags);
        break;
    case IJavaElement.COMPILATION_UNIT:
        appendCompilationUnitLabel((ICompilationUnit) element, flags);
        break;
    case IJavaElement.PACKAGE_FRAGMENT:
        appendPackageFragmentLabel((IPackageFragment) element, flags);
        break;
    case IJavaElement.PACKAGE_FRAGMENT_ROOT:
        appendPackageFragmentRootLabel((IPackageFragmentRoot) element, flags);
        break;
    case IJavaElement.IMPORT_CONTAINER:
    case IJavaElement.IMPORT_DECLARATION:
    case IJavaElement.PACKAGE_DECLARATION:
        appendDeclarationLabel(element, flags);
        break;
    case IJavaElement.JAVA_PROJECT:
    case IJavaElement.JAVA_MODEL:
        fBuffer.append(element.getElementName());
        break;
    default:
        fBuffer.append(element.getElementName());
    }

    if (root != null && getFlag(flags, JavaElementLabels.APPEND_ROOT_PATH)) {
        int offset = fBuffer.length();
        fBuffer.append(JavaElementLabels.CONCAT_STRING);
        appendPackageFragmentRootLabel(root, JavaElementLabels.ROOT_QUALIFIED);

        if (getFlag(flags, JavaElementLabels.COLORIZE)) {
            fBuffer.setStyle(offset, fBuffer.length() - offset, QUALIFIER_STYLE);
        }

    }
}

From source file:org.eclipse.mylyn.internal.java.ui.JavaStructureBridge.java

License:Open Source License

/**
 * Some copying from://  ww  w. j ava  2 s .c  o  m
 * 
 * @see org.eclipse.jdt.ui.ProblemsLabelDecorator
 */
public boolean containsProblem(IInteractionElement node) {
    try {
        IJavaElement element = (IJavaElement) getObjectForHandle(node.getHandleIdentifier());
        switch (element.getElementType()) {
        case IJavaElement.JAVA_PROJECT:
        case IJavaElement.PACKAGE_FRAGMENT_ROOT:
            return getErrorTicksFromMarkers(element.getResource(), IResource.DEPTH_INFINITE, null);
        case IJavaElement.PACKAGE_FRAGMENT:
        case IJavaElement.COMPILATION_UNIT:
        case IJavaElement.CLASS_FILE:
            return getErrorTicksFromMarkers(element.getResource(), IResource.DEPTH_ONE, null);
        case IJavaElement.PACKAGE_DECLARATION:
        case IJavaElement.IMPORT_DECLARATION:
        case IJavaElement.IMPORT_CONTAINER:
        case IJavaElement.TYPE:
        case IJavaElement.INITIALIZER:
        case IJavaElement.METHOD:
        case IJavaElement.FIELD:
        case IJavaElement.LOCAL_VARIABLE:
            ICompilationUnit cu = (ICompilationUnit) element.getAncestor(IJavaElement.COMPILATION_UNIT);
            if (cu != null) {
                return getErrorTicksFromMarkers(element.getResource(), IResource.DEPTH_ONE, null);
            }
        }
    } catch (CoreException e) {
        // ignore
    }
    return false;
}

From source file:org.eclipse.mylyn.java.ui.editor.MylarClassFileEditor.java

License:Open Source License

/**
 * Computes and returns the source reference that includes the caret and
 * serves as provider for the outline page selection and the editor range
 * indication.//from w ww.j a va 2 s  .co  m
 * 
 * @return the computed source reference
 * @since 3.0
 */
@Override
protected ISourceReference computeHighlightRangeSourceReference() {
    ISourceViewer sourceViewer = getSourceViewer();
    if (sourceViewer == null)
        return null;

    StyledText styledText = sourceViewer.getTextWidget();
    if (styledText == null)
        return null;

    int caret = 0;
    if (sourceViewer instanceof ITextViewerExtension5) {
        ITextViewerExtension5 extension = (ITextViewerExtension5) sourceViewer;
        caret = extension.widgetOffset2ModelOffset(styledText.getCaretOffset());
    } else {
        int offset = sourceViewer.getVisibleRegion().getOffset();
        caret = offset + styledText.getCaretOffset();
    }

    IJavaElement element = getElementAt(caret, false);

    if (!(element instanceof ISourceReference))
        return null;

    if (element.getElementType() == IJavaElement.IMPORT_DECLARATION) {

        IImportDeclaration declaration = (IImportDeclaration) element;
        IImportContainer container = (IImportContainer) declaration.getParent();
        ISourceRange srcRange = null;

        try {
            srcRange = container.getSourceRange();
        } catch (JavaModelException e) {
            ContextCorePlugin.log(this.getClass().toString(), e);
        }

        if (srcRange != null && srcRange.getOffset() == caret)
            return container;
    }

    return (ISourceReference) element;
}

From source file:org.eclipse.pde.api.tools.ui.internal.JavaElementActionFilter.java

License:Open Source License

/**
 * @see org.eclipse.ui.IActionFilter#testAttribute(Object, String, String)
 *///  w ww  .j  av  a 2s  . c om
@Override
public boolean testAttribute(Object target, String name, String value) {
    if (name.equals("JavaElementActionFilter")) { //$NON-NLS-1$
        if (target instanceof IJavaElement) {
            IJavaElement javaElement = (IJavaElement) target;
            if (value.equals("isEnabled")) { //$NON-NLS-1$
                while (javaElement != null) {
                    switch (javaElement.getElementType()) {
                    case IJavaElement.PACKAGE_FRAGMENT_ROOT:
                        IPackageFragmentRoot root = (IPackageFragmentRoot) javaElement;
                        return !root.isArchive();
                    case IJavaElement.PACKAGE_FRAGMENT:
                    case IJavaElement.COMPILATION_UNIT:
                    case IJavaElement.CLASS_FILE:
                    case IJavaElement.TYPE:
                        javaElement = javaElement.getParent();
                        break;
                    case IJavaElement.ANNOTATION:
                    case IJavaElement.FIELD:
                    case IJavaElement.IMPORT_CONTAINER:
                    case IJavaElement.IMPORT_DECLARATION:
                    case IJavaElement.INITIALIZER:
                    case IJavaElement.JAVA_MODEL:
                    case IJavaElement.LOCAL_VARIABLE:
                    case IJavaElement.METHOD:
                    case IJavaElement.PACKAGE_DECLARATION:
                    case IJavaElement.TYPE_PARAMETER:
                        return false;
                    case IJavaElement.JAVA_PROJECT:
                        return true;
                    default:
                        break;
                    }
                }
                return true;
            }
        }
    }
    return false;
}

From source file:org.eclipse.recommenders.internal.rcp.JavaElementSelections.java

License:Open Source License

public static JavaElementSelectionLocation resolveSelectionLocationFromJavaElement(final IJavaElement element) {
    ensureIsNotNull(element);// w  w  w .  j  av  a  2  s . c om

    switch (element.getElementType()) {
    case IJavaElement.CLASS_FILE:
    case IJavaElement.COMPILATION_UNIT:
    case IJavaElement.PACKAGE_DECLARATION:
    case IJavaElement.IMPORT_DECLARATION:
    case IJavaElement.IMPORT_CONTAINER:
    case IJavaElement.TYPE:
        return TYPE_DECLARATION;
    case IJavaElement.METHOD:
    case IJavaElement.INITIALIZER:
        return METHOD_DECLARATION;
    case IJavaElement.FIELD:
        return FIELD_DECLARATION;
    case IJavaElement.LOCAL_VARIABLE:
        // shouldn't happen in a viewer selection, right?
        return METHOD_BODY;
    case IJavaElement.JAVA_MODEL:
    case IJavaElement.PACKAGE_FRAGMENT:
    case IJavaElement.PACKAGE_FRAGMENT_ROOT:
    case IJavaElement.ANNOTATION:
    default:
        return JavaElementSelectionLocation.UNKNOWN;
    }
}

From source file:org.fastcode.popup.actions.easycreate.CopyMemberAction.java

License:Open Source License

/**
 * This method is used by both copying from existing member or creating new
 * member./*from   www.jav  a  2 s.c  om*/
 *
 * @param type
 * @param newField
 * @throws Exception
 *
 */
protected void copySelectedMember(final IType type, final IJavaElement element, String newField)
        throws Exception {
    final GlobalSettings globalSettings = GlobalSettings.getInstance();

    if (element == null) {
        openError(this.editorPart.getSite().getShell(), "Selection Error",
                "Please select some field and try again.");
        return;
    }

    switch (element.getElementType()) {
    case IJavaElement.TYPE:
        if (!isMemberNameSelected(type, (ITextSelection) this.selection)) {
            openError(this.editorPart.getSite().getShell(), "Selection Error",
                    "Please select part or whole name of a method/field/type and try again.");
            return;
        }
        if (!element.equals(type)) {
            openError(this.editorPart.getSite().getShell(), "Selection Error",
                    "Please select part or whole name of primary type and try again.");
            return;
        }
        final InputDialog typeInputDialog = new InputDialog(this.editorPart.getSite().getShell(), "New Name",
                "Enter a new name for class or names (space separated)", EMPTY_STR, null);
        if (typeInputDialog.open() == Window.CANCEL) {
            return;
        }
        final String newTypeName = typeInputDialog.getValue();

        final ICompilationUnit retCompUnit = copyType(type, newTypeName, (ITextSelection) this.selection);
        if (retCompUnit != null) {
            final IEditorPart javaEditor = JavaUI.openInEditor(retCompUnit);
            JavaUI.revealInEditor(javaEditor, (IJavaElement) retCompUnit.findPrimaryType());
        }
        break;
    case IJavaElement.IMPORT_DECLARATION:
        final IImportDeclaration importDeclaration = (IImportDeclaration) element;
        copyImport(type, importDeclaration, (ITextSelection) this.selection);
        break;
    case IJavaElement.FIELD:
        final IField field = (IField) element;
        if (!isMemberNameSelected(field, (ITextSelection) this.selection)) {
            openError(this.editorPart.getSite().getShell(), "Selection Error",
                    "Please select part or whole name of a method/field and try again.");
            return;
        }

        //final boolean createGetterSetter = globalSettings.isGetterSetterForPrivateFields();

        if (isEmpty(newField) && (isPrivate(field.getFlags()) || isProtected(field.getFlags()))
                || this.allowMultiple || doesGetterSetterExist(field) != GETTER_SETTER.NONE) {
            final InputDialog fieldInputDialog = new InputDialog(this.editorPart.getSite().getShell(),
                    "New Name", "Enter a new name for field or names (space separated)", EMPTY_STR, null);
            if (fieldInputDialog.open() == Window.CANCEL) {
                return;
            }
            newField = fieldInputDialog.getValue();
        } else if (isEmpty(newField)) {
            newField = "copyOf";
        }

        copyField(type, field, newField, (ITextSelection) this.selection);
        break;
    case IJavaElement.METHOD:
        if (!isMemberNameSelected((IMethod) element, (ITextSelection) this.selection)) {
            MessageDialog.openError(this.editorPart.getSite().getShell(), "Selection Error",
                    "Please select part or whole name of a method/field and try again.");
            return;
        }
        boolean copyBody = true;
        if (type.isClass()) {
            if (globalSettings.getCopyMethodBody() == CREATE_OPTIONS_CHOICE.NEVER_CREATE) {
                copyBody = false;
            } else if (globalSettings.getCopyMethodBody() == CREATE_OPTIONS_CHOICE.ASK_TO_CREATE) {
                final MessageDialogWithToggle dialogWithToggle = MessageDialogWithToggle.openYesNoQuestion(
                        this.editorPart.getSite().getShell(), "Copy Method Body",
                        "Would you like to copy method's body as well?", "Remember Decision", false,
                        Activator.getDefault().getPreferenceStore(), P_ASK_FOR_COPY_METHOD_BODY);
                if (dialogWithToggle.getReturnCode() != MESSAGE_DIALOG_RETURN_YES) {
                    copyBody = false;
                }
            }
        }
        copyMethod(type, (IMethod) element, (ITextSelection) this.selection, copyBody);
        break;
    default:
        break;
    }
}

From source file:org.jboss.tools.vscode.java.internal.handlers.DocumentSymbolHandler.java

License:Open Source License

public static int mapKind(IJavaElement element) {
    //      /**//from w  ww  .j a  va2 s .  c  o m
    //      * A symbol kind.
    //      */
    //      export enum SymbolKind {
    //        File = 1,
    //        Module = 2,
    //        Namespace = 3,
    //        Package = 4,
    //        Class = 5,
    //        Method = 6,
    //        Property = 7,
    //        Field = 8,
    //        Constructor = 9,
    //        Enum = 10,
    //        Interface = 11,
    //        Function = 12,
    //        Variable = 13,
    //        Constant = 14,
    //        String = 15,
    //        Number = 16,
    //        Boolean = 17,
    //        Array = 18,
    //      }
    switch (element.getElementType()) {
    case IJavaElement.ANNOTATION:
        return 7; // TODO: find a better mapping 
    case IJavaElement.CLASS_FILE:
    case IJavaElement.COMPILATION_UNIT:
        return 1;
    case IJavaElement.FIELD:
        return 8;
    case IJavaElement.IMPORT_CONTAINER:
    case IJavaElement.IMPORT_DECLARATION:
        return 2;
    case IJavaElement.INITIALIZER:
        return 9;
    case IJavaElement.LOCAL_VARIABLE:
    case IJavaElement.TYPE_PARAMETER:
        return 13;
    case IJavaElement.METHOD:
        return 12;
    case IJavaElement.PACKAGE_DECLARATION:
        return 3;
    case IJavaElement.TYPE:
        try {
            return (((IType) element).isInterface() ? 11 : 5);
        } catch (JavaModelException e) {
            return 5; //fallback 
        }
    }
    return 15;
}

From source file:org.limy.eclipse.common.jdt.LimyJavaUtils.java

License:Open Source License

/**
 * javaElement SJavat@C? results i[?B//from   w  w  w .j  a  va2  s .  co  m
 * @param results i[?
 * @param javaElement ?[gJavavf
 * @param visitor IJavaResourceVisitor
 * @throws CoreException RAO
 */
public static void appendAllJavas(Collection<IJavaElement> results, IJavaElement javaElement)
        throws CoreException {

    if (javaElement == null || javaElement.getResource() == null) {
        // JarG?g???Aresource = null 
        return;
    }

    // Javav?WFNg?A\?[XpX?AJavapbP?[W
    appendForIParent(results, javaElement/*, visitor*/);

    // JavapbP?[WTupbP?[W
    if (javaElement instanceof IPackageFragment) {
        appendForIPackageFragment(results, (IPackageFragment) javaElement/*, visitor*/);
    }

    // JavaNX?A?\bh`?AtB?[h`
    int type = javaElement.getElementType();
    if (type == IJavaElement.IMPORT_DECLARATION || type == IJavaElement.PACKAGE_DECLARATION
            || type == IJavaElement.COMPILATION_UNIT || type == IJavaElement.TYPE || type == IJavaElement.METHOD
            || type == IJavaElement.FIELD) {

        results.add(javaElement);
    }
}

From source file:org.springframework.ide.eclipse.ui.navigator.SpringNavigator.java

License:Open Source License

/**
 * Computes and returns the source reference. This is taken from the
 * computeHighlightRangeSourceReference() method in the JavaEditor class which is used to
 * populate the outline view/* w  w w . j ava 2s. co m*/
 * @return the computed source reference
 */
private ISourceReference computeHighlightRangeSourceReference(JavaEditor editor) {
    ISourceViewer sourceViewer = editor.getViewer();
    if (sourceViewer == null)
        return null;

    StyledText styledText = sourceViewer.getTextWidget();
    if (styledText == null)
        return null;

    int caret = 0;
    if (sourceViewer instanceof ITextViewerExtension5) {
        ITextViewerExtension5 extension = (ITextViewerExtension5) sourceViewer;
        caret = extension.widgetOffset2ModelOffset(styledText.getCaretOffset());
    } else {
        int offset = sourceViewer.getVisibleRegion().getOffset();
        caret = offset + styledText.getCaretOffset();
    }

    IJavaElement element = getElementAt(editor, caret, false);

    if (!(element instanceof ISourceReference))
        return null;

    if (element.getElementType() == IJavaElement.IMPORT_DECLARATION) {

        IImportDeclaration declaration = (IImportDeclaration) element;
        IImportContainer container = (IImportContainer) declaration.getParent();
        ISourceRange srcRange = null;
        try {
            srcRange = container.getSourceRange();
        } catch (JavaModelException e) {
        }

        if (srcRange != null && srcRange.getOffset() == caret)
            return container;
    }

    return (ISourceReference) element;
}

From source file:test0501.JavaEditor.java

License:Open Source License

/**
 * Computes and returns the source reference that includes the caret and
 * serves as provider for the outline page selection and the editor range
 * indication.// ww w .  j  av a 2s.c  om
 * 
 * @return the computed source reference
 * @since 3.0
 */
protected ISourceReference computeHighlightRangeSourceReference() {
    ISourceViewer sourceViewer = getSourceViewer();
    if (sourceViewer == null)
        return null;

    StyledText styledText = sourceViewer.getTextWidget();
    if (styledText == null)
        return null;

    int caret = 0;
    if (sourceViewer instanceof ITextViewerExtension3) {
        ITextViewerExtension3 extension = (ITextViewerExtension3) sourceViewer;
        caret = extension.widgetOffset2ModelOffset(styledText.getCaretOffset());
    } else {
        int offset = sourceViewer.getVisibleRegion().getOffset();
        caret = offset + styledText.getCaretOffset();
    }

    IJavaElement element = getElementAt(caret, false);

    if (!(element instanceof ISourceReference))
        return null;

    if (element.getElementType() == IJavaElement.IMPORT_DECLARATION) {

        IImportDeclaration declaration = (IImportDeclaration) element;
        IImportContainer container = (IImportContainer) declaration.getParent();
        ISourceRange srcRange = null;

        try {
            srcRange = container.getSourceRange();
        } catch (JavaModelException e) {
        }

        if (srcRange != null && srcRange.getOffset() == caret)
            return container;
    }

    return (ISourceReference) element;
}