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

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

Introduction

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

Prototype

@Override
public Iterator iterator();

Source Link

Document

Returns an iterator over the elements of this selection.

Usage

From source file:de.uniluebeck.itm.spyglass.gui.configuration.PluginManagerPreferencePage.java

License:Open Source License

@SuppressWarnings("unchecked")
private Plugin getLastSelectedPlugin(final IStructuredSelection selection) {
    Object o = null;//from   w w  w. ja v  a2 s  .c  o  m
    final Iterator it = selection.iterator();
    while (it.hasNext()) {
        o = it.next();
    }
    return (Plugin) o;
}

From source file:de.vonloesch.pdf4eclipse.outline.PDFFileOutline.java

License:Open Source License

public void createControl(Composite parent) {
    super.createControl(parent);
    TreeViewer viewer = getTreeViewer();
    viewer.setContentProvider(new PDFFileContentProvider());
    viewer.setLabelProvider(new PDFFileLabelProvider());
    //viewer.addSelectionChangedListener(this);
    if (input != null)
        viewer.setInput(input);/*from w w w. j a  v  a  2s  . com*/

    viewer.addSelectionChangedListener(new ISelectionChangedListener() {

        @Override
        public void selectionChanged(SelectionChangedEvent event) {
            // if the selection is empty do nothing
            if (event.getSelection().isEmpty()) {
                return;
            }
            IStructuredSelection selection = (IStructuredSelection) event.getSelection();
            for (Iterator iterator = selection.iterator(); iterator.hasNext();) {
                OutlineNode domain = (OutlineNode) iterator.next();

                PDFAction action = domain.getAction();
                if (action instanceof GoToAction) {
                    PDFDestination dest = ((GoToAction) action).getDestination();
                    if (dest == null)
                        return;
                    editor.gotoAction(dest);
                }
            }
        }
    });
}

From source file:de.walware.docmlet.tex.internal.ui.ConvertToTexProjectHandler.java

License:Open Source License

@Override
public Object execute(final ExecutionEvent event) throws ExecutionException {
    final ISelection selection = WorkbenchUIUtil.getCurrentSelection(event.getApplicationContext());
    final List<IProject> projects;
    if (selection instanceof IStructuredSelection) {
        final IStructuredSelection structuredSelection = (IStructuredSelection) selection;
        projects = new ArrayList<>(structuredSelection.size());
        for (final Iterator<?> iter = structuredSelection.iterator(); iter.hasNext();) {
            final Object obj = iter.next();
            if (obj instanceof IAdaptable) {
                final IProject project = (IProject) ((IAdaptable) obj).getAdapter(IProject.class);
                if (project != null) {
                    projects.add(project);
                }//from  www .j  a  va 2 s .  c  o m
            }
        }
    } else {
        return null;
    }

    final WorkspaceModifyOperation op = new WorkspaceModifyOperation() {

        @Override
        protected void execute(final IProgressMonitor monitor)
                throws CoreException, InvocationTargetException, InterruptedException {
            final SubMonitor progress = SubMonitor.convert(monitor, TexUIMessages.TexProject_ConvertTask_label,
                    100);
            try {
                final SubMonitor loop = progress.newChild(100).setWorkRemaining(projects.size());
                for (final IProject project : projects) {
                    if (progress.isCanceled()) {
                        throw new InterruptedException();
                    }
                    TexProjects.setupTexProject(project, loop.newChild(1));
                }
            } finally {
                progress.done();
            }
        }

    };
    try {
        UIAccess.getActiveWorkbenchWindow(true).run(true, true, op);
    } catch (final InvocationTargetException e) {
        StatusManager.getManager().handle(new Status(IStatus.ERROR, TexUIPlugin.PLUGIN_ID,
                TexUIMessages.TexProject_ConvertTask_error_message, e.getTargetException()));
    } catch (final InterruptedException e) {
        // cancelled
    }

    return null;
}

From source file:de.walware.ecommons.ui.workbench.ResourceVariablesUtil.java

License:Open Source License

private static IResource getSelectedResource0() {
    IResource resource = null;/*from  w ww  .  j a  v a2 s .  c  om*/
    final IWorkbenchPage page = UIAccess.getActiveWorkbenchPage(true);
    if (page != null) {
        final IWorkbenchPart part = page.getActivePart();
        if (part instanceof IEditorPart) {
            final IEditorPart epart = (IEditorPart) part;
            resource = (IResource) epart.getEditorInput().getAdapter(IResource.class);
        }
        if (resource == null) {
            final IWorkbenchPartSite site = part.getSite();
            if (site != null) {
                final ISelectionProvider provider = site.getSelectionProvider();
                if (provider != null) {
                    final ISelection selection = provider.getSelection();
                    if (selection instanceof IStructuredSelection) {
                        final IStructuredSelection structuredSelection = (IStructuredSelection) selection;
                        if (!structuredSelection.isEmpty()) {
                            final Iterator<?> iterator = structuredSelection.iterator();
                            final IAdapterManager adapterManager = Platform.getAdapterManager();
                            while (resource == null && iterator.hasNext()) {
                                final Object element = iterator.next();
                                resource = (IResource) adapterManager.getAdapter(element, IResource.class);
                            }
                        }
                    }
                }
            }
        }
    }
    return resource;
}

From source file:de.walware.ecommons.ui.workbench.ResourceVariableUtil.java

License:Open Source License

private static IResource getSelectedResource0(IWorkbenchPart part) {
    IResource resource = null;/* w ww.j a  v a  2 s.  co  m*/
    if (part == null) {
        final IWorkbenchPage page = UIAccess.getActiveWorkbenchPage(true);
        if (page != null) {
            part = page.getActivePart();
        }
    }
    if (part != null) {
        if (part instanceof IEditorPart) {
            final IEditorPart epart = (IEditorPart) part;
            resource = (IResource) epart.getEditorInput().getAdapter(IResource.class);
        }
        if (resource == null) {
            final IWorkbenchPartSite site = part.getSite();
            if (site != null) {
                final ISelectionProvider provider = site.getSelectionProvider();
                if (provider != null) {
                    final ISelection selection = provider.getSelection();
                    if (selection instanceof IStructuredSelection) {
                        final IStructuredSelection structuredSelection = (IStructuredSelection) selection;
                        if (!structuredSelection.isEmpty()) {
                            final Iterator<?> iterator = structuredSelection.iterator();
                            final IAdapterManager adapterManager = Platform.getAdapterManager();
                            while (resource == null && iterator.hasNext()) {
                                final Object element = iterator.next();
                                resource = (IResource) adapterManager.getAdapter(element, IResource.class);
                            }
                        }
                    }
                }
            }
        }
    }
    return resource;
}

From source file:de.walware.statet.r.internal.ui.dataeditor.RDataEditorOutlinePage.java

License:Open Source License

@Override
protected void contextMenuAboutToShow(final IMenuManager m) {
    final IStructuredSelection selection = (IStructuredSelection) getViewer().getSelection();
    for (final Iterator<?> iterator = selection.iterator(); iterator.hasNext();) {
        final Object element = iterator.next();
        if (!(element instanceof RDataTableColumn)) {
            return;
        }/* ww w  .ja  v a  2  s. c o m*/
    }

    m.add(new SimpleContributionItem("Select Column", "S") {
        @Override
        protected void execute() throws ExecutionException {
            final IStructuredSelection selection = (IStructuredSelection) getViewer().getSelection();
            final RangeList columnIndexes = new RangeList();
            for (final Iterator<?> iterator = selection.iterator(); iterator.hasNext();) {
                final Object element = iterator.next();
                if (element instanceof RDataTableColumn) {
                    columnIndexes.values().add(((RDataTableColumn) element).getIndex());
                } else {
                    return;
                }
            }
            fEditor.getRDataTable().selectColumns(columnIndexes);
        }
    });

    m.add(new Separator());
    if (selection.size() == 1) {
        m.add(new SimpleContributionItem(
                SharedUIResources.getImages().getDescriptor(SharedUIResources.LOCTOOL_SORT_ALPHA_IMAGE_ID),
                null, "Sort Increasing by Column", "I") {
            @Override
            protected void execute() throws ExecutionException {
                final IStructuredSelection selection = (IStructuredSelection) getViewer().getSelection();
                final Object element = selection.getFirstElement();
                if (selection.size() == 1 && element instanceof RDataTableColumn) {
                    final RDataTableColumn column = (RDataTableColumn) element;
                    fEditor.getRDataTable().sortByColumn(column.getIndex(), true);
                }
            }
        });
        m.add(new SimpleContributionItem("Sort Decreasing by Column", "I") {
            @Override
            protected void execute() throws ExecutionException {
                final IStructuredSelection selection = (IStructuredSelection) getViewer().getSelection();
                final Object element = selection.getFirstElement();
                if (selection.size() == 1 && element instanceof RDataTableColumn) {
                    final RDataTableColumn column = (RDataTableColumn) element;
                    fEditor.getRDataTable().sortByColumn(column.getIndex(), false);
                }
            }
        });
    }
    m.add(new SimpleContributionItem("Clear All Sorting", "O") {
        @Override
        protected void execute() throws ExecutionException {
            fEditor.getRDataTable().clearSorting();
        }
    });
}

From source file:de.walware.statet.r.internal.ui.pkgmanager.PkgTab.java

License:Open Source License

private void updateButtons() {
    boolean available;
    boolean allInstalled;
    boolean allRemovable;
    if (fSelectedPkgName != null) {
        final String name = fSelectedPkgName;
        available = fPkgSet.getAvailable().containsByName(name);
        final IRPkgInfoAndData pkg = fPkgSet.getInstalled().getFirstByName(name);
        if (pkg != null) {
            allInstalled = true;//from   w w  w  .j a v  a 2s . co m
            allRemovable = isModifiable(pkg.getLibraryLocation());
        } else {
            allInstalled = false;
            allRemovable = false;
        }
    } else {
        final IStructuredSelection selection = (IStructuredSelection) fPkgTable.viewer.getSelection();
        if (selection.isEmpty()) {
            available = false;
            allInstalled = false;
            allRemovable = false;
        } else {
            available = false;
            allInstalled = true;
            allRemovable = true;
            final List<String> checkedLocations = new ArrayList<String>(8);
            for (final Iterator<?> iterator = selection.iterator(); iterator.hasNext();) {
                final String name = (String) iterator.next();
                if (!available && fPkgSet.getAvailable().containsByName(name)) {
                    available = true;
                }
                if (allInstalled) {
                    final IRPkgInfoAndData pkg = fPkgSet.getInstalled().getFirstByName(name);
                    if (pkg != null) {
                        if (allRemovable) {
                            final IRLibraryLocation libLoc = pkg.getLibraryLocation();
                            if (!checkedLocations.contains(libLoc.getDirectoryPath())) {
                                allRemovable = isModifiable(libLoc);
                                checkedLocations.add(libLoc.getDirectoryPath());
                            }
                        }
                    } else {
                        allInstalled = false;
                        allRemovable = false;
                    }
                }
            }
        }
    }
    fInstallButton.setEnabled(available);
    fUpdateButton.setEnabled(available);
    fUninstallButton.setEnabled(allRemovable);
    fLoadButton.setEnabled(allInstalled);
}

From source file:de.walware.statet.r.launching.ui.EnvironmentTabForR.java

License:Open Source License

@Override
protected void handleTableSelectionChanged(final SelectionChangedEvent event) {
    super.handleTableSelectionChanged(event);
    final IStructuredSelection selection = (IStructuredSelection) environmentTable.getSelection();
    if (selection.size() > 0) {
        for (final Iterator<?> iter = selection.iterator(); iter.hasNext();) {
            final Object variable = iter.next();
            if (variable != null && VAR_R_KEEP_PKG_SOURCE.equals(variable.toString())) {
                envRemoveButton.setEnabled(false);
            }/* w w w  . j  a  v a2s  .  co  m*/
        }
    }
}

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

License:Open Source License

public static boolean isExternalizeStringsAvailable(final IStructuredSelection selection)
        throws JavaModelException {
    for (Iterator iter = selection.iterator(); iter.hasNext();) {
        Object element = iter.next();
        if (element instanceof IJavaElement) {
            IJavaElement javaElement = (IJavaElement) element;
            if (javaElement.exists() && !javaElement.isReadOnly()) {
                int elementType = javaElement.getElementType();
                if (elementType == IJavaElement.PACKAGE_FRAGMENT) {
                    return true;
                } else if (elementType == IJavaElement.PACKAGE_FRAGMENT_ROOT) {
                    IPackageFragmentRoot root = (IPackageFragmentRoot) javaElement;
                    if (!root.isExternal() && !ReorgUtils.isClassFolder(root))
                        return true;
                } else if (elementType == IJavaElement.JAVA_PROJECT) {
                    return true;
                } else if (elementType == IJavaElement.COMPILATION_UNIT) {
                    ICompilationUnit cu = (ICompilationUnit) javaElement;
                    if (cu.exists())
                        return true;
                } else if (elementType == IJavaElement.TYPE) {
                    IType type = (IType) element;
                    ICompilationUnit cu = type.getCompilationUnit();
                    if (cu != null && cu.exists())
                        return true;
                }//from www.  j ava  2  s.c o m
            }
        }
    }
    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  w 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 isExtractSupertypeAvailable((IMember[]) members.toArray(new IMember[members.size()]));
    }
    return false;
}