Example usage for org.eclipse.jface.viewers IStructuredSelection toArray

List of usage examples for org.eclipse.jface.viewers IStructuredSelection toArray

Introduction

In this page you can find the example usage for org.eclipse.jface.viewers IStructuredSelection toArray.

Prototype

public Object[] toArray();

Source Link

Document

Returns the elements in this selection as an array.

Usage

From source file:descent.internal.corext.refactoring.RefactoringAvailabilityTester.java

License:Open Source License

public static boolean isDeleteAvailable(final IStructuredSelection selection) throws JavaModelException {
    if (!selection.isEmpty())
        return isDeleteAvailable(selection.toArray());
    return false;
}

From source file:descent.internal.corext.refactoring.RefactoringAvailabilityTester.java

License:Open Source License

public static boolean isExtractSupertypeAvailable(final IStructuredSelection selection)
        throws JavaModelException {
    if (!selection.isEmpty()) {
        if (selection.size() == 1) {
            if (selection.getFirstElement() instanceof ICompilationUnit)
                return true; // Do not force opening
            final IType type = getSingleSelectedType(selection);
            if (type != null)
                return Checks.isAvailable(type) && isExtractSupertypeAvailable(new IType[] { type });
        }/*  w ww  .  j  a v  a 2s .c o m*/
        for (final Iterator iterator = selection.iterator(); iterator.hasNext();) {
            if (!(iterator.next() instanceof IMember))
                return false;
        }
        final Set members = new HashSet();
        members.addAll(Arrays.asList(selection.toArray()));
        return isExtractSupertypeAvailable((IMember[]) members.toArray(new IMember[members.size()]));
    }
    return false;
}

From source file:descent.internal.corext.refactoring.RefactoringAvailabilityTester.java

License:Open Source License

public static boolean isPullUpAvailable(final IStructuredSelection selection) throws JavaModelException {
    if (!selection.isEmpty()) {
        if (selection.size() == 1) {
            if (selection.getFirstElement() instanceof ICompilationUnit)
                return true; // Do not force opening
            final IType type = getSingleSelectedType(selection);
            if (type != null)
                return Checks.isAvailable(type) && isPullUpAvailable(new IType[] { type });
        }//from  ww w. j av  a  2s .c  om
        for (final Iterator iterator = selection.iterator(); iterator.hasNext();) {
            if (!(iterator.next() instanceof IMember))
                return false;
        }
        final Set members = new HashSet();
        members.addAll(Arrays.asList(selection.toArray()));
        return isPullUpAvailable((IMember[]) members.toArray(new IMember[members.size()]));
    }
    return false;
}

From source file:descent.internal.corext.refactoring.RefactoringAvailabilityTester.java

License:Open Source License

public static boolean isPushDownAvailable(final IStructuredSelection selection) throws JavaModelException {
    if (!selection.isEmpty()) {
        if (selection.size() == 1) {
            if (selection.getFirstElement() instanceof ICompilationUnit)
                return true; // Do not force opening
            final IType type = getSingleSelectedType(selection);
            if (type != null)
                return isPushDownAvailable(new IType[] { type });
        }//from  w  w  w.ja  va2 s  . c  om
        for (final Iterator iterator = selection.iterator(); iterator.hasNext();) {
            if (!(iterator.next() instanceof IMember))
                return false;
        }
        final Set members = new HashSet();
        members.addAll(Arrays.asList(selection.toArray()));
        return isPushDownAvailable((IMember[]) members.toArray(new IMember[members.size()]));
    }
    return false;
}

From source file:descent.internal.ui.actions.CopyQualifiedNameAction.java

License:Open Source License

/**
 * {@inheritDoc}
 */
public void selectionChanged(IStructuredSelection selection) {
    setEnabled(canEnable(selection.toArray()));
}

From source file:descent.internal.ui.refactoring.reorg.DeleteAction.java

License:Open Source License

public void selectionChanged(IStructuredSelection selection) {
    if (ReorgUtils.containsOnlyProjects(selection.toList())) {
        setEnabled(createWorkbenchAction(selection).isEnabled());
        return;//ww w  .  j av  a 2  s  .  c o  m
    }
    try {
        setEnabled(RefactoringAvailabilityTester.isDeleteAvailable(selection.toArray()));
    } catch (CoreException e) {
        //no ui here - this happens on selection changes
        // http://bugs.eclipse.org/bugs/show_bug.cgi?id=19253
        if (JavaModelUtil.isExceptionToBeLogged(e))
            JavaPlugin.log(e);
        setEnabled(false);
    }
}

From source file:descent.internal.ui.refactoring.reorg.DeleteAction.java

License:Open Source License

public void run(IStructuredSelection selection) {
    if (ReorgUtils.containsOnlyProjects(selection.toList())) {
        createWorkbenchAction(selection).run();
        return;/* www .  jav  a 2 s  . c om*/
    }
    try {
        RefactoringExecutionStarter.startDeleteRefactoring(selection.toArray(), getShell());
    } catch (CoreException e) {
        ExceptionHandler.handle(e, RefactoringMessages.OpenRefactoringWizardAction_refactoring,
                RefactoringMessages.OpenRefactoringWizardAction_exception);
    }
}

From source file:descent.internal.ui.util.JavaUIHelp.java

License:Open Source License

/**
 * Creates and returns a help context provider for the given part.
 * //from  www . j av  a2  s .  com
 * @param part the part for which to create the help context provider
 * @param contextId   the optional context ID used to retrieve static help
 * @return the help context provider 
 */
public static IContextProvider getHelpContextProvider(IWorkbenchPart part, String contextId) {
    IStructuredSelection selection;
    try {
        selection = SelectionConverter.getStructuredSelection(part);
    } catch (JavaModelException ex) {
        JavaPlugin.log(ex);
        selection = StructuredSelection.EMPTY;
    }
    Object[] elements = selection.toArray();
    return new JavaUIHelpContextProvider(contextId, elements);
}

From source file:descent.ui.actions.FormatAllAction.java

License:Open Source License

private ICompilationUnit[] getCompilationUnits(IStructuredSelection selection) {
    HashSet result = new HashSet();
    Object[] selected = selection.toArray();
    for (int i = 0; i < selected.length; i++) {
        try {//from w  w w.  j  a  v a  2  s  .c o  m
            if (selected[i] instanceof IJavaElement) {
                IJavaElement elem = (IJavaElement) selected[i];
                if (elem.exists()) {

                    switch (elem.getElementType()) {
                    case IJavaElement.TYPE:
                        if (elem.getParent().getElementType() == IJavaElement.COMPILATION_UNIT) {
                            result.add(elem.getParent());
                        }
                        break;
                    case IJavaElement.COMPILATION_UNIT:
                        result.add(elem);
                        break;
                    case IJavaElement.PACKAGE_FRAGMENT:
                        collectCompilationUnits((IPackageFragment) elem, result);
                        break;
                    case IJavaElement.PACKAGE_FRAGMENT_ROOT:
                        collectCompilationUnits((IPackageFragmentRoot) elem, result);
                        break;
                    case IJavaElement.JAVA_PROJECT:
                        IPackageFragmentRoot[] roots = ((IJavaProject) elem).getPackageFragmentRoots();
                        for (int k = 0; k < roots.length; k++) {
                            collectCompilationUnits(roots[k], result);
                        }
                        break;
                    }
                }
            } else if (selected[i] instanceof LogicalPackage) {
                IPackageFragment[] packageFragments = ((LogicalPackage) selected[i]).getFragments();
                for (int k = 0; k < packageFragments.length; k++) {
                    IPackageFragment pack = packageFragments[k];
                    if (pack.exists()) {
                        collectCompilationUnits(pack, result);
                    }
                }
            }
        } catch (JavaModelException e) {
            JavaPlugin.log(e);
        }
    }
    return (ICompilationUnit[]) result.toArray(new ICompilationUnit[result.size()]);
}

From source file:descent.ui.actions.FormatAllAction.java

License:Open Source License

private boolean isEnabled(IStructuredSelection selection) {
    Object[] selected = selection.toArray();
    for (int i = 0; i < selected.length; i++) {
        try {//from w w w .  j a va  2  s.c o  m
            if (selected[i] instanceof IJavaElement) {
                IJavaElement elem = (IJavaElement) selected[i];
                if (elem.exists()) {
                    switch (elem.getElementType()) {
                    case IJavaElement.TYPE:
                        return elem.getParent().getElementType() == IJavaElement.COMPILATION_UNIT; // for browsing perspective
                    case IJavaElement.COMPILATION_UNIT:
                        return true;
                    case IJavaElement.PACKAGE_FRAGMENT:
                    case IJavaElement.PACKAGE_FRAGMENT_ROOT:
                        IPackageFragmentRoot root = (IPackageFragmentRoot) elem
                                .getAncestor(IJavaElement.PACKAGE_FRAGMENT_ROOT);
                        return (root.getKind() == IPackageFragmentRoot.K_SOURCE);
                    case IJavaElement.JAVA_PROJECT:
                        // https://bugs.eclipse.org/bugs/show_bug.cgi?id=65638
                        return true;
                    }
                }
            } else if (selected[i] instanceof LogicalPackage) {
                return true;
            }
        } catch (JavaModelException e) {
            if (JavaModelUtil.isExceptionToBeLogged(e))
                JavaPlugin.log(e);
        }
    }
    return false;
}