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

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

Introduction

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

Prototype

@Override
    public Iterator iterator() 

Source Link

Usage

From source file:com.amazonaws.eclipse.elasticbeanstalk.explorer.ElasticBeanstalkActionProvider.java

License:Apache License

@Override
public void fillContextMenu(IMenuManager menu) {
    boolean onlyEnvironmentsSelected = true;
    StructuredSelection selection = (StructuredSelection) getActionSite().getStructuredViewer().getSelection();
    Iterator iterator = selection.iterator();
    List<EnvironmentDescription> environments = new ArrayList<EnvironmentDescription>();
    while (iterator.hasNext()) {
        Object obj = iterator.next();
        if (obj instanceof EnvironmentDescription) {
            environments.add((EnvironmentDescription) obj);
        } else {/*w  ww .j  a  v  a 2  s  .  c  o m*/
            onlyEnvironmentsSelected = false;
        }
    }

    if (onlyEnvironmentsSelected) {
        if (environments.size() == 1) {
            menu.add(new OpenEnvironmentEditorAction(environments.get(0)));
            menu.add(new Separator());
        }

        menu.add(new TerminateEnvironmentsAction(environments));
    }
}

From source file:com.amazonaws.eclipse.explorer.sns.SNSActionProvider.java

License:Apache License

@Override
public void fillContextMenu(IMenuManager menu) {
    StructuredSelection selection = (StructuredSelection) getActionSite().getStructuredViewer().getSelection();

    menu.add(new CreateTopicAction());

    boolean showDeleteMenuItem = true;
    List<Topic> selectedTopics = new ArrayList<Topic>();
    Iterator iterator = selection.iterator();
    while (iterator.hasNext()) {
        Object next = iterator.next();
        if (next instanceof TopicNode) {
            selectedTopics.add(((TopicNode) next).getTopic());
        } else {//w w  w .ja v a 2 s  .  co m
            showDeleteMenuItem = false;
        }
    }

    if (selectedTopics.size() > 0 && showDeleteMenuItem) {
        menu.add(new DeleteTopicAction(selectedTopics));
        menu.add(new Separator());
    }

    if (selectedTopics.size() == 1) {
        AmazonSNS sns = AwsToolkitCore.getClientFactory().getSNSClient();
        menu.add(new PublishMessageAction(sns, selectedTopics.get(0)));
        menu.add(new NewSubscriptionAction(sns, selectedTopics.get(0), null));
    }
}

From source file:com.amazonaws.eclipse.explorer.sqs.SQSActionProvider.java

License:Apache License

@Override
public void fillContextMenu(IMenuManager menu) {
    StructuredSelection selection = (StructuredSelection) getActionSite().getStructuredViewer().getSelection();

    menu.add(new CreateQueueAction());

    boolean onlyQueuesSelected = true;
    List<String> selectedQueues = new ArrayList<String>();
    Iterator<?> iterator = selection.iterator();
    while (iterator.hasNext()) {
        Object next = iterator.next();
        if (next instanceof QueueNode) {
            selectedQueues.add(((QueueNode) next).getQueueUrl());
        } else {/*  ww w .  j  ava2s .c  o  m*/
            onlyQueuesSelected = false;
        }
    }

    if (selectedQueues.size() > 0 && onlyQueuesSelected) {
        menu.add(new DeleteQueueAction(selectedQueues));
    }

    if (selectedQueues.size() == 1 && onlyQueuesSelected) {
        menu.add(new Separator());
        menu.add(new AddMessageAction(AwsToolkitCore.getClientFactory().getSQSClient(), selectedQueues.get(0),
                null));
    }
}

From source file:com.android.ide.eclipse.adt.internal.editors.layout.gle1.UiContentOutlinePage.java

License:Apache License

/**
 * Returns the currently selected element, if any, in the viewer.
 * This returns the viewer's elements (i.e. an {@link UiElementTreeEditPart})
 * and not the underlying model node./* w  w  w .  jav a  2  s  . co  m*/
 * <p/>
 * When there is no actual selection, this might still return the root node,
 * which is of type {@link UiDocumentTreeEditPart}.
 */
@SuppressWarnings("unchecked")
private List<UiElementTreeEditPart> getViewerSelections() {
    ISelection selection = getSelection();
    if (selection instanceof StructuredSelection) {
        StructuredSelection structuredSelection = (StructuredSelection) selection;

        if (structuredSelection.size() > 0) {
            ArrayList<UiElementTreeEditPart> selected = new ArrayList<UiElementTreeEditPart>();

            for (Iterator it = structuredSelection.iterator(); it.hasNext();) {
                Object selectedObj = it.next();

                if (selectedObj instanceof UiElementTreeEditPart) {
                    selected.add((UiElementTreeEditPart) selectedObj);
                }
            }

            return selected.size() > 0 ? selected : null;
        }
    }

    return null;
}

From source file:com.aptana.editor.php.internal.ui.dialog.CustomFilteredItemsSelectionDialog.java

License:Open Source License

/**
 * Returns the current selection.//from   ww  w .  j a  v  a2 s  . c om
 * 
 * @return the current selection
 */
protected StructuredSelection getSelectedItems() {

    StructuredSelection selection = (StructuredSelection) list.getSelection();

    List<?> selectedItems = selection.toList();
    Object itemToRemove = null;

    for (Iterator<?> it = selection.iterator(); it.hasNext();) {
        Object item = it.next();
        if (item instanceof ItemsListSeparator) {
            itemToRemove = item;
            break;
        }
    }

    if (itemToRemove == null) {
        return new StructuredSelection(selectedItems);
    }
    // Create a new selection without the collision
    @SuppressWarnings("rawtypes")
    List<?> newItems = new ArrayList(selectedItems);
    newItems.remove(itemToRemove);
    return new StructuredSelection(newItems);

}

From source file:com.aptana.ide.editors.views.profiles.ProfilesView.java

License:Open Source License

/**
 * Converts a selection into a lists of paths
 * /*w w  w  . j  a va  2 s  . co m*/
 * @param selection
 *            The paths of the selection
 * @return String[]
 */
@SuppressWarnings("unchecked")
public ProfileURI[] convertSelectionToProfileURIs(StructuredSelection selection) {
    ArrayList<ProfileURI> paths = new ArrayList<ProfileURI>();

    for (Iterator iter = selection.iterator(); iter.hasNext();) {
        Object o = iter.next();

        if (o instanceof ProfileURI) {
            ProfileURI uri = (ProfileURI) o;
            paths.add(uri);
        } else {
            IdeLog.logError(UnifiedEditorsPlugin.getDefault(),
                    StringUtils.format(Messages.ProfilesView_PathNotProfileURI, o.getClass().toString()));
        }
    }
    return paths.toArray(new ProfileURI[0]);
}

From source file:com.centurylink.mdw.plugin.designer.properties.ProcessVersionsSection.java

License:Apache License

private Menu createContextMenu(Shell shell) {
    Menu menu = new Menu(shell, SWT.POP_UP);

    final StructuredSelection selection = (StructuredSelection) tableEditor.getTableViewer().getSelection();
    if (selection.size() == 1 && selection.getFirstElement() instanceof WorkflowProcess) {
        final WorkflowProcess processVer = (WorkflowProcess) selection.getFirstElement();

        MenuItem openItem = new MenuItem(menu, SWT.PUSH);
        openItem.setText("Open");
        ImageDescriptor openImageDesc = MdwPlugin.getImageDescriptor("icons/process.gif");
        openItem.setImage(openImageDesc.createImage());
        openItem.addSelectionListener(new SelectionAdapter() {
            public void widgetSelected(SelectionEvent e) {
                openProcess(processVer);
            }/*from w  w w.java  2s  .  co  m*/
        });
    }
    // delete
    if (!selection.isEmpty() && !process.getProject().isProduction()
            && process.isUserAuthorized(UserRoleVO.PROCESS_EXECUTION)
            && (selection.size() == 1 && ((WorkflowProcess) selection.getFirstElement()).isLatest())
            || MdwPlugin.getSettings().isAllowDeleteArchivedProcesses()) {
        MenuItem deleteItem = new MenuItem(menu, SWT.PUSH);
        deleteItem.setText("Delete...");
        ImageDescriptor deleteImageDesc = MdwPlugin.getImageDescriptor("icons/delete.gif");
        deleteItem.setImage(deleteImageDesc.createImage());
        deleteItem.addSelectionListener(new SelectionAdapter() {
            public void widgetSelected(SelectionEvent e) {
                if (selection.size() >= 1 && selection.getFirstElement() instanceof WorkflowProcess) {
                    WorkflowProcess[] processVers = new WorkflowProcess[selection.size()];
                    int idx = 0;
                    for (Iterator<?> iter = selection.iterator(); iter.hasNext();) {
                        processVers[idx] = (WorkflowProcess) iter.next();
                        idx++;
                    }
                    WorkflowElementActionHandler actionHandler = new WorkflowElementActionHandler();
                    actionHandler.delete(processVers);
                    boolean removedSelected = false;
                    for (WorkflowProcess pv : processVers) {
                        if (pv.equals(process))
                            removedSelected = true;
                        else
                            process.remove(pv);
                    }
                    if (removedSelected) {
                        WorkflowProcess sel = null;
                        for (WorkflowProcess toSel : process.getAllProcessVersions()) {
                            if (!toSel.equals(process)) {
                                sel = toSel;
                                break;
                            }
                        }
                        setSelection(sel);
                    } else {
                        setSelection(process); // just force refresh
                    }
                }
            }
        });
    }

    return menu;
}

From source file:com.centurylink.mdw.plugin.designer.properties.WorkflowAssetVersionsSection.java

License:Apache License

private Menu createContextMenu(Shell shell) {
    Menu menu = new Menu(shell, SWT.POP_UP);

    final StructuredSelection selection = (StructuredSelection) tableEditor.getTableViewer().getSelection();
    // open/*from  w  ww  . jav a  2 s.c  o m*/
    if (selection.size() == 1 && selection.getFirstElement() instanceof WorkflowAsset) {
        final WorkflowAsset asset = (WorkflowAsset) selection.getFirstElement();

        MenuItem openItem = new MenuItem(menu, SWT.PUSH);
        openItem.setText("Open");
        openItem.setImage(workflowAsset.getIconImage());
        openItem.addSelectionListener(new SelectionAdapter() {
            public void widgetSelected(SelectionEvent e) {
                openAsset(asset);
            }
        });
    }
    // view comments
    if (selection.size() == 1 && selection.getFirstElement() instanceof WorkflowAsset) {
        final WorkflowAsset asset = (WorkflowAsset) selection.getFirstElement();

        MenuItem viewCommentsItem = new MenuItem(menu, SWT.PUSH);
        viewCommentsItem.setText("View Comments");
        ImageDescriptor viewCommentsImageDesc = MdwPlugin.getImageDescriptor("icons/view.gif");
        viewCommentsItem.setImage(viewCommentsImageDesc.createImage());
        viewCommentsItem.addSelectionListener(new SelectionAdapter() {
            public void widgetSelected(SelectionEvent e) {
                openViewCommentsDialog(asset);
            }
        });
    }
    // delete
    if (!selection.isEmpty() && !workflowAsset.getProject().isProduction()
            && workflowAsset.isUserAuthorized(UserRoleVO.ASSET_DESIGN)
            && (selection.size() == 1 && ((WorkflowAsset) selection.getFirstElement()).isLatestVersion()
                    || MdwPlugin.getSettings().isAllowDeleteArchivedProcesses())) {
        MenuItem deleteItem = new MenuItem(menu, SWT.PUSH);
        deleteItem.setText("Delete...");
        ImageDescriptor deleteImageDesc = MdwPlugin.getImageDescriptor("icons/delete.gif");
        deleteItem.setImage(deleteImageDesc.createImage());
        deleteItem.addSelectionListener(new SelectionAdapter() {
            public void widgetSelected(SelectionEvent e) {
                if (selection.size() >= 1 && selection.getFirstElement() instanceof WorkflowAsset) {
                    WorkflowAsset[] assets = new WorkflowAsset[selection.size()];
                    int idx = 0;
                    for (Iterator<?> iter = selection.iterator(); iter.hasNext();) {
                        assets[idx] = (WorkflowAsset) iter.next();
                        idx++;
                    }
                    WorkflowElementActionHandler actionHandler = new WorkflowElementActionHandler();
                    actionHandler.delete(assets);
                    boolean removedSelected = false;
                    for (WorkflowAsset a : assets) {
                        if (a.equals(workflowAsset))
                            removedSelected = true;
                    }
                    if (removedSelected) {
                        WorkflowAsset sel = null;
                        for (WorkflowAsset toSel : workflowAsset.getAllVersions()) {
                            if (!toSel.equals(workflowAsset)) {
                                sel = toSel;
                                break;
                            }
                        }
                        workflowAsset.fireElementChangeEvent(ChangeType.ELEMENT_DELETE, null);
                        setSelection(sel);
                    } else {
                        // just remove and refresh
                        for (WorkflowAsset a : assets)
                            workflowAsset.getProject().removeWorkflowAsset(a);
                        setSelection(workflowAsset);
                    }
                }
            }
        });
    }

    return menu;
}

From source file:com.delegreg.rpgm.ui.editors.StatBlocksBlock.java

License:Open Source License

protected void createMasterPart(final IManagedForm managedForm, Composite parent) {
    //read the active statblocks description
    HashMap<Class, Class> statBlocks = Application.getStatBlocks();
    //final ScrolledForm form = managedForm.getForm();
    FormToolkit toolkit = managedForm.getToolkit();
    Section section = toolkit.createSection(parent, Section.DESCRIPTION | Section.TITLE_BAR);
    section.setText("Statblocks for this actor"); //$NON-NLS-1$
    section.setDescription(/*from   ww  w. j ava2s .  co  m*/
            "Manage the statblocks for your actor, statblocks can be system specific depending on the RPG system plugins you have installed."); //$NON-NLS-1$
    section.marginWidth = 10;
    section.marginHeight = 5;
    Composite client = toolkit.createComposite(section, SWT.WRAP);
    GridLayout layout = new GridLayout();
    layout.numColumns = 2;
    layout.marginWidth = 2;
    layout.marginHeight = 2;
    client.setLayout(layout);
    Table t = toolkit.createTable(client, SWT.NULL);
    GridData gd = new GridData(GridData.FILL_BOTH);
    gd.heightHint = 20;
    gd.widthHint = 100;
    gd.verticalSpan = statBlocks.size() + 1;
    t.setLayoutData(gd);
    toolkit.paintBordersFor(client);
    for (Iterator it = statBlocks.keySet().iterator(); it.hasNext();) {
        Class sb = (Class) it.next();
        IStatBlock isb;
        try {
            isb = (IStatBlock) sb.newInstance();
        } catch (InstantiationException e1) {
            // TODO Auto-generated catch block
            e1.printStackTrace();
            return;
        } catch (IllegalAccessException e1) {
            // TODO Auto-generated catch block
            e1.printStackTrace();
            return;
        }
        Button b = toolkit.createButton(client, "Add " + isb.ClassName(), SWT.PUSH); //$NON-NLS-1$
        b.setToolTipText("Create a new " + isb.ClassName());
        b.setImage(isb.ClassIcon());
        b.setData(sb);
        b.addSelectionListener(new SelectionListener() {
            @Override
            public void widgetSelected(SelectionEvent e) {
                // TODO Replace Auto-generated method stub with statblock type selection
                IEditorInput input = (IEditorInput) page.getEditor().getEditorInput();
                Class sb = (Class) e.widget.getData();
                StatBlocks blocks = ((Actor) input.getAdapter(Actor.class)).getStatBlocks();
                IStatBlock isb;
                try {
                    isb = (IStatBlock) sb.newInstance();
                } catch (InstantiationException e1) {
                    // TODO Auto-generated catch block
                    e1.printStackTrace();
                    return;
                } catch (IllegalAccessException e1) {
                    // TODO Auto-generated catch block
                    e1.printStackTrace();
                    return;
                }
                isb.setName(isb.ClassName() + " n" + (blocks.size() + 1));
                blocks.add(isb);
                viewer.refresh();
            }

            @Override
            public void widgetDefaultSelected(SelectionEvent e) {
            }
        });
        gd = new GridData(GridData.VERTICAL_ALIGN_BEGINNING);
        b.setLayoutData(gd);
    }

    Button b2 = toolkit.createButton(client, "Remove", SWT.PUSH); //$NON-NLS-1$
    b2.setImage(AbstractUIPlugin.imageDescriptorFromPlugin(Application.PLUGIN_ID, IImageKeys.DELETEITEM)
            .createImage());
    b2.addSelectionListener(new SelectionListener() {
        @Override
        public void widgetSelected(SelectionEvent e) {
            // TODO Replace Auto-generated method stub with statblock type selection
            IEditorInput input = (IEditorInput) page.getEditor().getEditorInput();
            StatBlocks blocks = ((Actor) input.getAdapter(Actor.class)).getStatBlocks();
            StructuredSelection sel = (StructuredSelection) viewer.getSelection();
            for (Iterator iterator = sel.iterator(); iterator.hasNext();) {
                IStatBlock sb = (IStatBlock) iterator.next();
                if (blocks.contains(sb)) {
                    blocks.remove(sb);
                }
            }
            viewer.refresh();
        }

        @Override
        public void widgetDefaultSelected(SelectionEvent e) {
        }
    });
    gd = new GridData(GridData.VERTICAL_ALIGN_BEGINNING);
    b2.setLayoutData(gd);

    section.setClient(client);
    final SectionPart spart = new SectionPart(section);
    managedForm.addPart(spart);
    viewer = new TableViewer(t);
    viewer.addSelectionChangedListener(new ISelectionChangedListener() {
        public void selectionChanged(SelectionChangedEvent event) {
            managedForm.fireSelectionChanged(spart, event.getSelection());
            viewer.refresh();
        }
    });
    viewer.setContentProvider(new MasterContentProvider());
    viewer.setLabelProvider(new MasterLabelProvider());
    viewer.setInput(page.getEditor().getEditorInput());
}

From source file:com.nokia.s60tools.imaker.internal.viewers.DebugTab.java

License:Open Source License

private Control createControl(CTabFolder parent) {
    Composite top = new Composite(parent, SWT.NONE);
    top.setLayout(new GridLayout(2, false));
    top.setLayoutData(new GridData(GridData.FILL_BOTH));
    setHelpForControl(top, ImageFlasherHelpContextIDs.IMAKERDIALOG_CONTENTTAB);

    // create table
    Composite tableComp = getNewComposite(top);
    Table table = new Table(tableComp, SWT.FULL_SELECTION | SWT.H_SCROLL | SWT.V_SCROLL | SWT.MULTI);
    GridData gridData = new GridData(GridData.FILL, GridData.FILL, true, true);
    gridData.heightHint = 180;/* w  w w  .  j  a v  a2s . c  o  m*/
    table.setLayoutData(gridData);
    table.addKeyListener(new KeyListener() {

        public void keyReleased(KeyEvent e) {
            if ((e.character == ' ')) {
                StructuredSelection ss = (StructuredSelection) tableViewer.getSelection();
                Iterator it = ss.iterator();
                while (it.hasNext()) {
                    IbyEntry entry = (IbyEntry) it.next();
                    entry.setEnabled(!entry.isEnabled());
                    tableViewer.refresh(entry);
                }
            }
        }

        public void keyPressed(KeyEvent e) {
        }
    });

    // create controls
    Composite controls = getNewComposite(top);
    Button button = new Button(controls, SWT.PUSH | SWT.LEFT);
    button.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
    button.setText(Messages.getString("DebugTab.2"));
    button.setToolTipText(Messages.getString("DebugTab.3"));
    button.addSelectionListener(new SelectionListener() {

        public void widgetSelected(SelectionEvent e) {
            IbyEntry entry = factory.createIbyEntry();
            ImageContent input = getInput();
            FileToImage file = new FileToImage();
            AddEditFileToTransferDialog dialog = new AddEditFileToTransferDialog(getControl().getShell(), file);
            dialog.setTitle(Messages.getString("FileTransferTab.8"));
            if (dialog.open() != Window.OK) {
                return;
            }
            entry.setEnabled(file.getEnabled());
            entry.setFile(file.getHostPath().substring(2));
            entry.setTarget(file.getTargetPath());
            input.getEntries().add(entry);
            tableViewer.refresh();
        }

        public void widgetDefaultSelected(SelectionEvent e) {
            widgetSelected(e);
        }
    });

    button = new Button(controls, SWT.PUSH | SWT.LEFT);
    button.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
    button.setText(Messages.getString("DebugTab.4"));
    button.setToolTipText(Messages.getString("DebugTab.5"));
    button.addSelectionListener(new SelectionListener() {

        public void widgetSelected(SelectionEvent e) {
            deleteSelection();
        }

        public void widgetDefaultSelected(SelectionEvent e) {
            widgetSelected(e);
        }
    });

    button = new Button(controls, SWT.PUSH | SWT.LEFT);
    button.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
    button.setText(Messages.getString("DebugTab.24"));
    button.setToolTipText(Messages.getString("DebugTab.25"));
    button.addSelectionListener(new SelectionListener() {

        public void widgetSelected(SelectionEvent e) {
            duplicateSelection();
        }

        public void widgetDefaultSelected(SelectionEvent e) {
            widgetSelected(e);
        }
    });

    button = new Button(controls, SWT.PUSH | SWT.LEFT);
    button.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
    button.setText(Messages.getString("DebugTab.6"));
    button.setToolTipText(Messages.getString("DebugTab.7"));
    button.addSelectionListener(new SelectionListener() {

        public void widgetSelected(SelectionEvent e) {
            ImageContent input = getInput();
            if (input != null) {

                if (!input.getEntries().isEmpty()) {
                    boolean confirm = MessageDialog.openQuestion(getControl().getShell(), "Remove Entries",
                            "Clear the list before adding new entries, if any?");
                    if (confirm) {
                        input.getEntries().clear();
                    }
                }
                projectManager.populate(input);
                tableViewer.refresh();
            }
        }

        public void widgetDefaultSelected(SelectionEvent e) {
            widgetSelected(e);
        }
    });

    Composite enableButtons = new Composite(top, SWT.NONE);
    GridLayout layout = new GridLayout(2, false);
    layout.marginWidth = 0;
    layout.marginHeight = 0;
    enableButtons.setLayout(layout);
    enableButtons.setLayoutData(new GridData());

    button = new Button(enableButtons, SWT.PUSH | SWT.LEFT);
    button.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
    button.setText(Messages.getString("DebugTab.8"));
    button.setToolTipText(Messages.getString("DebugTab.9"));
    button.addSelectionListener(new SelectionListener() {

        public void widgetSelected(SelectionEvent e) {
            ImageContent ic = getInput();
            if (ic != null) {
                for (IbyEntry entry : ic.getEntries()) {
                    entry.setEnabled(true);
                }
                tableViewer.refresh();
            }
        }

        public void widgetDefaultSelected(SelectionEvent e) {
            widgetSelected(e);
        }
    });

    button = new Button(enableButtons, SWT.PUSH | SWT.LEFT);
    button.setLayoutData(new GridData(GridData.FILL_HORIZONTAL));
    button.setText(Messages.getString("DebugTab.10"));
    button.setToolTipText(Messages.getString("DebugTab.11"));
    button.addSelectionListener(new SelectionListener() {

        public void widgetSelected(SelectionEvent e) {
            ImageContent ic = getInput();
            if (ic != null) {
                for (IbyEntry entry : ic.getEntries()) {
                    entry.setEnabled(false);
                }
                tableViewer.refresh();
            }
        }

        public void widgetDefaultSelected(SelectionEvent e) {
            widgetSelected(e);
        }
    });

    tableViewer = new TableViewer(table);

    tableViewer.getTable().setHeaderVisible(true);
    tableViewer.getTable().setLinesVisible(true);

    tableViewer.setContentProvider(new DebugContentProvider());

    createColumns(tableViewer);

    tableViewer.getTable().addKeyListener(new KeyListener() {

        public void keyReleased(KeyEvent e) {
            if (e.character == SWT.DEL) {
                deleteSelection();
            }
        }

        public void keyPressed(KeyEvent e) {
        }
    });
    tableViewer.setInput(getDefaultInput());
    return top;
}