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

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

Introduction

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

Prototype

public List toList();

Source Link

Document

Returns the elements in this selection as a List.

Usage

From source file:com.motorola.studio.android.adt.DDMSUtils.java

License:Apache License

public static InstallPackageBean installPackageWizard() {

    final InstallPackageBean bean = new InstallPackageBean();

    final Display display = PlatformUI.getWorkbench().getDisplay();
    display.syncExec(new Runnable() {
        public void run() {
            try {
                String defaultPath = null;
                DeployWizard wizard;/*from  ww  w  .  j a  v a2s  . com*/
                IWorkbenchWindow window = PlatformUI.getWorkbench().getActiveWorkbenchWindow();
                if (window != null) {
                    ISelection selection = window.getSelectionService().getSelection();
                    if (selection instanceof IStructuredSelection) {
                        IStructuredSelection workbenchSSelection = (IStructuredSelection) selection;
                        for (Object o : workbenchSSelection.toList()) {
                            if (o instanceof IFile) {
                                IFile file = (IFile) o;
                                if (file.getFileExtension().equalsIgnoreCase(APK_FILE_EXTENSION)) {
                                    defaultPath = file.getLocation().toOSString();
                                }
                            }
                        }
                    }
                }
                wizard = new DeployWizard(defaultPath);
                wizard.init(PlatformUI.getWorkbench(), new StructuredSelection());
                WizardDialog dialog = new WizardDialog(
                        PlatformUI.getWorkbench().getActiveWorkbenchWindow().getShell(), wizard);
                dialog.setPageSize(500, 200);
                if (dialog.open() == IDialogConstants.OK_ID) {
                    bean.setPackagePath(wizard.getPackagePath());
                    bean.setCanOverwrite(wizard.canOverwrite());
                }
            } catch (Throwable e) {
                StudioLogger.error(DDMSFacade.class, "Error executing deploy wizard", e);
            }
        }
    });

    return bean;
}

From source file:com.motorolamobility.studio.android.certmanager.command.AbstractHandler2.java

License:Apache License

/**
 * Retrieves the list of selected nodes.
 * *//*from  w  w w  .  ja v  a  2 s . c  om*/
@SuppressWarnings("unchecked")
protected List<ITreeNode> getSelection() {
    List<ITreeNode> selectedNodes = new ArrayList<ITreeNode>(1);
    ISelection selection = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getSelectionService()
            .getSelection();
    if (selection instanceof IStructuredSelection) {
        IStructuredSelection treeSelection = (IStructuredSelection) selection;
        List<Object> selectedElements = treeSelection.toList();

        for (Object selectedObject : selectedElements) {
            if (selectedObject instanceof ITreeNode) {
                selectedNodes.add((ITreeNode) selectedObject);
            }
        }
    }

    return selectedNodes;
}

From source file:com.motorolamobility.studio.android.db.core.ui.wizards.CreateTableWizardPage.java

License:Apache License

public void createControl(Composite parent) {
    Composite composite = new Composite(parent, SWT.FILL);
    composite.setLayout(new GridLayout(2, false));

    GridData layoutData = new GridData(SWT.FILL, SWT.NONE, true, false);

    Composite nameComposite = new Composite(composite, SWT.FILL);
    nameComposite.setLayout(new GridLayout(2, false));
    nameComposite.setLayoutData(layoutData);

    layoutData = new GridData(SWT.LEFT, SWT.NONE, false, false);

    Label tableNameLabel = new Label(nameComposite, SWT.NONE);
    tableNameLabel.setLayoutData(layoutData);
    tableNameLabel.setText(DbCoreNLS.CreateTableWizardPage_UI_TableName);

    layoutData = new GridData(SWT.FILL, SWT.NONE, true, false);
    tableName = new Text(nameComposite, SWT.BORDER | SWT.SINGLE);
    tableName.setLayoutData(layoutData);
    tableName.addModifyListener(new ModifyListener() {

        public void modifyText(ModifyEvent e) {
            if (viewer != null) {
                viewer.refresh();/*from   w w  w. j a  v  a 2  s  . c om*/

                validatePage();

                ((TableModel) viewer.getInput()).setName(tableName.getText());
            }

        }
    });

    if ((table != null) && (table.getName() != null)) {
        tableName.setText(table.getName());
    }

    Composite emptyComposite = new Composite(composite, SWT.RIGHT);
    emptyComposite.setLayout(new GridLayout(1, false));
    emptyComposite.layout();

    viewer = new TableViewer(composite, SWT.BORDER | SWT.MULTI | SWT.READ_ONLY | SWT.FULL_SELECTION);
    layoutData = new GridData(SWT.FILL, SWT.FILL, true, true);

    TableViewerColumn column = new TableViewerColumn(viewer, SWT.NONE);
    column.getColumn().setText(DbCoreNLS.CreateTableWizardPage_UI_Name);
    column.getColumn().setResizable(true);
    column.getColumn().setWidth(100);

    column = new TableViewerColumn(viewer, SWT.NONE);
    column.getColumn().setText(DbCoreNLS.CreateTableWizardPage_UI_Type);
    column.getColumn().setResizable(true);
    column.getColumn().setWidth(100);

    column = new TableViewerColumn(viewer, SWT.NONE);
    column.getColumn().setText(DbCoreNLS.CreateTableWizardPage_UI_Default);
    column.getColumn().setResizable(true);
    column.getColumn().setWidth(100);

    column = new TableViewerColumn(viewer, SWT.NONE);
    column.getColumn().setText(DbCoreNLS.CreateTableWizardPage_UI_Primary);
    column.getColumn().setResizable(true);
    column.getColumn().setWidth(100);

    viewer.getTable().setHeaderVisible(true);
    viewer.getTable().setLinesVisible(true);
    viewer.getTable().setLayoutData(layoutData);

    viewer.setContentProvider(new TableWizardContentProvider());
    viewer.setLabelProvider(new TableWizardLabelProvider());

    Composite buttonBar = new Composite(composite, SWT.NONE);
    layoutData = new GridData(SWT.RIGHT, SWT.TOP, false, true);
    buttonBar.setLayoutData(layoutData);

    buttonBar.setLayout(new FillLayout(SWT.VERTICAL));
    Button add = new Button(buttonBar, SWT.PUSH);
    add.setText(DbCoreNLS.CreateTableWizardPage_UI_Add);
    add.addSelectionListener(new SelectionListener() {

        public void widgetSelected(SelectionEvent e) {
            AddTableFieldDialog diag = new AddTableFieldDialog(getShell());

            if (diag.open() == Dialog.OK) {
                ((TableModel) viewer.getInput()).addField(diag.getField());
                viewer.refresh();
                validatePage();
            }

        }

        public void widgetDefaultSelected(SelectionEvent e) {

        }
    });

    final Button edit = new Button(buttonBar, SWT.PUSH);
    edit.setText(DbCoreNLS.CreateTableWizardPage_UI_Edit);
    edit.setEnabled(false);
    edit.addSelectionListener(new SelectionAdapter() {
        @Override
        public void widgetSelected(SelectionEvent e) {
            if (viewer.getTable().getSelectionCount() == 1) {
                AddTableFieldDialog diag = new AddTableFieldDialog(getShell(), ((TableModel) viewer.getInput())
                        .getFields().get(viewer.getTable().getSelectionIndex()));
                if (diag.open() == Dialog.OK) {
                    viewer.update(diag.getField(), null);
                    validatePage();
                }

            }

        }
    });

    final Button remove = new Button(buttonBar, SWT.PUSH);
    remove.setText(DbCoreNLS.CreateTableWizardPage_UI_Remove);
    remove.setEnabled(false);
    remove.addSelectionListener(new SelectionAdapter() {
        @Override
        public void widgetSelected(SelectionEvent e) {
            ISelection selection = viewer.getSelection();
            if (selection instanceof IStructuredSelection) {
                IStructuredSelection structuredSelection = (IStructuredSelection) selection;

                for (Object obj : structuredSelection.toList()) {
                    if (obj instanceof Field) {
                        ((TableModel) viewer.getInput()).removeField(((Field) obj));
                    }
                }
                viewer.refresh();
                validatePage();

            }
        }
    });

    if (table == null) {
        table = new TableModel();
    }
    viewer.setInput(table);
    viewer.addSelectionChangedListener(new ISelectionChangedListener() {

        public void selectionChanged(SelectionChangedEvent event) {
            int selectionCount = viewer.getTable().getSelectionCount();
            remove.setEnabled(selectionCount > 0);
            edit.setEnabled(selectionCount == 1);

        }
    });

    viewer.addDoubleClickListener(new IDoubleClickListener() {

        public void doubleClick(DoubleClickEvent event) {
            if (viewer.getTable().getSelectionCount() == 1) {
                AddTableFieldDialog diag = new AddTableFieldDialog(getShell(), ((TableModel) viewer.getInput())
                        .getFields().get(viewer.getTable().getSelectionIndex()));
                if (diag.open() == Dialog.OK) {

                    viewer.update(diag.getField(), null);
                    validatePage();
                }

            }

        }
    });
    viewer.refresh();

    composite.pack();
    composite.layout();
    setPageComplete(false);
    setErrorMessage(null);

    setControl(composite);

    //table fields will be not empty at this point when user is editing a table, so page must be validated to enable finish button
    if (!table.getFields().isEmpty()) {
        validatePage();
    }

    PlatformUI.getWorkbench().getHelpSystem().setHelp(parent, TABLE_CONTEXT_HELP_ID);
    PlatformUI.getWorkbench().getHelpSystem().setHelp(composite, TABLE_CONTEXT_HELP_ID);
}

From source file:com.mountainminds.eclemma.internal.ui.coverageview.CopyHandler.java

License:Open Source License

public Object execute(ExecutionEvent event) throws ExecutionException {
    final StringBuilder sb = new StringBuilder();

    // Header//from   ww w .jav  a 2s. c  o m
    final String[] headers = settings.getColumnHeaders();
    sb.append(headers[CoverageView.COLUMN_ELEMENT]).append(SWT.TAB);
    sb.append(headers[CoverageView.COLUMN_RATIO]).append(SWT.TAB);
    sb.append(headers[CoverageView.COLUMN_COVERED]).append(SWT.TAB);
    sb.append(headers[CoverageView.COLUMN_MISSED]).append(SWT.TAB);
    sb.append(headers[CoverageView.COLUMN_TOTAL]).append(Text.DELIMITER);

    // Rows:
    final IStructuredSelection selection = (IStructuredSelection) selectionSource.getSelection();
    for (final Object element : selection.toList()) {
        sb.append(converter.getElementName(element)).append(SWT.TAB);
        sb.append(converter.getRatio(element)).append(SWT.TAB);
        sb.append(converter.getCovered(element)).append(SWT.TAB);
        sb.append(converter.getMissed(element)).append(SWT.TAB);
        sb.append(converter.getTotal(element)).append(Text.DELIMITER);
    }

    copy(sb.toString());
    return null;
}

From source file:com.mousefeed.eclipse.preferences.ActionInvocationModeControl.java

License:Open Source License

/**
 * Removes the selected settings from {@link #actionModes}.
 *//*from  w  ww .jav  a  2s.  com*/
private void removeSelected() {
    final IStructuredSelection selection = (IStructuredSelection) tableViewer.getSelection();
    final List<?> selectedModes = selection.toList();
    if (selectedModes.isEmpty()) {
        getDisplay().beep();
    } else {
        actionModes.removeAll(selectedModes);
        tableViewer.refresh(false);
    }
}

From source file:com.netxforge.screens.editing.base.actions.handlers.CommandActionHandler.java

License:Open Source License

/**
 * When the selection changes, this will call {@link #createCommand} with
 * the appropriate collection of selected objects.
 *//*from   w w w . ja  va  2 s. c o m*/
@Override
public boolean updateSelection(IStructuredSelection selection) {
    List<?> list = selection.toList();
    Collection<Object> collection = new ArrayList<Object>(list);
    command = createCommand(collection);

    return command.canExecute();
}

From source file:com.nextep.designer.beng.ui.handlers.RemoveDeliveryItemHandler.java

License:Open Source License

/**
 * @see org.eclipse.core.commands.AbstractHandler#execute(org.eclipse.core.commands.ExecutionEvent)
 *///from  w w  w  . j a  v a2  s.c o m
@Override
public Object execute(ExecutionEvent event) throws ExecutionException {
    // Retrieving delivery type
    ISelection sel = HandlerUtil.getCurrentSelection(event);
    if (sel instanceof IStructuredSelection) {
        final IStructuredSelection s = (IStructuredSelection) sel;
        if (s.size() > 1) {
            final boolean confirmed = MessageDialog.openConfirm(HandlerUtil.getActiveShell(event),
                    MessageFormat.format(BengUIMessages.getString("confirmRemoveDeliveryItemTitle"), s.size()), //$NON-NLS-1$
                    MessageFormat.format(BengUIMessages.getString("confirmRemoveDeliveryItem"), s.size()) //$NON-NLS-1$
            );
            if (!confirmed) {
                throw new CancelException("Operation cancelled by user.");
            }
        }
        // Removing all selected items
        for (Object o : s.toList()) {
            if (o instanceof IDeliveryItem<?>) {
                IDeliveryItem<?> i = (IDeliveryItem<?>) o;
                IDeliveryModule m = i.getParentModule();
                m.removeDeliveryItem(i);
            }
        }
    }
    return null;
}

From source file:com.nextep.designer.dbgm.gef.DiagramSelectionDropTargetListener.java

License:Open Source License

/**
 * Dropping a navigator element to the graph canvas. The data of the drop event is the class
 * name of the object which is pushed in the application "drag object".
 * /*  ww  w  .  ja va  2 s.c o  m*/
 * @see org.eclipse.swt.dnd.DropTargetListener#drop(org.eclipse.swt.dnd.DropTargetEvent)
 */
public void drop(final DropTargetEvent e) {

    log.debug("Drop"); //$NON-NLS-1$
    final Point widgetAbsPosition = viewer.getControl().toDisplay(new org.eclipse.swt.graphics.Point(0, 0));
    if (e.data instanceof IStructuredSelection) {
        final IStructuredSelection s = (IStructuredSelection) e.data;
        final Point targetPoint = new Point(e.x - widgetAbsPosition.x, e.y - widgetAbsPosition.y);
        Job j = new Job(DBGMUIMessages.getString("editor.diagram.addingTablesJob")) { //$NON-NLS-1$

            protected IStatus run(IProgressMonitor m) {
                SubMonitor monitor = SubMonitor.convert(m, 100);
                doDrop(s.toList(), targetPoint, monitor);
                return Status.OK_STATUS;
            };
        };
        j.setUser(true);
        j.schedule();
    }
}

From source file:com.nextep.designer.dbgm.ui.editors.DomainEditorComponent.java

License:Open Source License

@Override
public Control create(Composite parent) {
    final Composite editor = new Composite(parent, SWT.NONE);
    GridLayout l = new GridLayout(2, false);
    l.marginBottom = l.marginHeight = l.marginLeft = l.marginRight = l.marginTop = l.marginWidth = 0;
    editor.setLayout(l);/*from   www  .  j ava2s  .c o  m*/

    Table t = DomainTable.create(editor);
    GridData gd = new GridData(SWT.FILL, SWT.FILL, true, false, 1, 2);
    gd.heightHint = 250;
    t.setLayoutData(gd);

    domainViewer = new TableViewer(t);
    final DomainContentProvider provider = new DomainContentProvider();
    domainViewer.setContentProvider(provider);
    domainViewer.setLabelProvider(new DomainLabelProvider());

    CellEditor[] editors = new CellEditor[5];
    editors[1] = new TextCellEditor(t);
    editors[2] = new TextCellEditor(t);
    editors[3] = new TextCellEditor(t);
    editors[4] = new TextCellEditor(t);
    domainViewer.setCellEditors(editors);
    domainViewer.setColumnProperties(new String[] { COL_SEL, COL_NAME, COL_DESC, COL_LENGTH, COL_PRECISION });
    domainViewer.setSorter(new ViewerSorter());
    domainViewer.setCellModifier(new ICellModifier() {

        @Override
        public boolean canModify(Object element, String property) {
            return !COL_SEL.equals(property);
        }

        @Override
        public Object getValue(Object element, String property) {
            final IDomain d = (IDomain) element;
            if (COL_NAME.equals(property)) {
                return notNull(d.getName());
            }
            if (COL_DESC.equals(property)) {
                return notNull(d.getDescription());
            }
            if (COL_LENGTH.equals(property)) {
                return notNull(d.getLengthExpr());
            }
            if (COL_PRECISION.equals(property)) {
                return notNull(d.getPrecisionExpr());
            }
            return null;
        }

        @Override
        public void modify(Object element, String property, Object value) {
            final IDomain d = (IDomain) ((TableItem) element).getData();
            if (COL_NAME.equals(property)) {
                d.setName((String) value);
            } else if (COL_DESC.equals(property)) {
                d.setDescription((String) value);
            } else if (COL_LENGTH.equals(property)) {
                d.setLengthExpr((String) value);
            } else if (COL_PRECISION.equals(property)) {
                d.setPrecisionExpr((String) value);
            }
        }
    });

    Button addButton = new Button(editor, SWT.PUSH);
    addButton.setText(UIMessages.getString("component.typedListBlock.add")); //$NON-NLS-1$
    addButton.setLayoutData(new GridData(SWT.FILL, SWT.FILL, false, false));
    addButton.addSelectionListener(new SelectionAdapter() {

        @Override
        public void widgetSelected(SelectionEvent e) {
            IDomain d = (IDomain) UIControllerFactory.getController(IElementType.getInstance(IDomain.TYPE_ID))
                    .newInstance(null);
            provider.add(d);
            domainViewer.editElement(d, 1);
        }
    });
    Button removeButton = new Button(editor, SWT.PUSH);
    removeButton.setText(UIMessages.getString("component.typedListBlock.remove")); //$NON-NLS-1$
    removeButton.setLayoutData(new GridData(SWT.FILL, SWT.UP, false, false));
    removeButton.addSelectionListener(new SelectionAdapter() {

        @Override
        public void widgetSelected(SelectionEvent e) {
            ISelection s = domainViewer.getSelection();
            if (s instanceof IStructuredSelection) {
                for (Object o : ((IStructuredSelection) s).toList()) {
                    final IDomain d = (IDomain) o;
                    // Removing vendor types
                    for (IDomainVendorType t : new ArrayList<IDomainVendorType>(d.getVendorTypes())) {
                        d.removeVendorType(t);
                    }
                    CorePlugin.getIdentifiableDao().delete(d);
                    // Removing domain
                    domainViewer.remove(d);
                }
            }
        }
    });

    final IDatatypeService datatypeService = CorePlugin.getService(IDatatypeService.class);
    datatypeService.reset();
    final Collection<IDomain> domains = datatypeService.getDomains();
    domainViewer.setInput(domains);

    // Domain vendor type section
    final Table typeTab = DomainTable.createDomainType(editor);
    final TableViewer typeViewer = new TableViewer(typeTab);
    GridData typeData = new GridData(SWT.FILL, SWT.FILL, true, true, 1, 2);
    typeData.heightHint = 200;
    typeTab.setLayoutData(typeData);
    Button addTypeButton = new Button(editor, SWT.PUSH);
    addTypeButton.setText(UIMessages.getString("component.typedListBlock.add")); //$NON-NLS-1$
    addTypeButton.setLayoutData(new GridData(SWT.FILL, SWT.FILL, false, false));
    addTypeButton.addSelectionListener(new SelectionAdapter() {

        @Override
        public void widgetSelected(SelectionEvent e) {
            final IDomain domain = getSelectedDomain();
            if (domain == null) {
                MessageDialog.openWarning(editor.getShell(),
                        DBGMUIMessages.getString("domainPrefNoSelectionTitle"), //$NON-NLS-1$
                        DBGMUIMessages.getString("domainPrefNoSelection")); //$NON-NLS-1$
                return;
            }
            final Object o = UIControllerFactory
                    .getController(IElementType.getInstance(IDomainVendorType.TYPE_ID))
                    .emptyInstance(null, domain);
            typeViewer.editElement(o, 0);
        }
    });
    Button removeTypeButton = new Button(editor, SWT.PUSH);
    removeTypeButton.setText(UIMessages.getString("component.typedListBlock.remove")); //$NON-NLS-1$
    removeTypeButton.setLayoutData(new GridData(SWT.FILL, SWT.UP, false, false));

    typeViewer.setContentProvider(new DomainTypeContentProvider());
    typeViewer.setLabelProvider(new DomainTypeLabelProvider());
    typeViewer.setColumnProperties(new String[] { COL_VENDOR, COL_TYPE, COL_LENGTH, COL_PRECISION });
    CellEditor[] typeEditors = new CellEditor[4];

    typeEditors[0] = new ComboBoxCellEditor(typeTab, sortedVendors.toArray(new String[sortedVendors.size()]),
            SWT.READ_ONLY);
    typeEditors[1] = new TextCellEditor(typeTab);
    typeEditors[2] = new TextCellEditor(typeTab);
    typeEditors[3] = new TextCellEditor(typeTab);
    typeViewer.setCellEditors(typeEditors);
    typeViewer.setCellModifier(new ICellModifier() {

        @Override
        public boolean canModify(Object element, String property) {
            return true;
        }

        @Override
        public Object getValue(Object element, String property) {
            IDomainVendorType t = (IDomainVendorType) element;
            if (COL_VENDOR.equals(property)) {
                if (t.getDBVendor() != null) {
                    return sortedVendors.indexOf(t.getDBVendor().toString());
                } else {
                    return 0;
                }
            } else if (COL_TYPE.equals(property)) {
                if (t.getDatatype() != null) {
                    return notNull(t.getDatatype().getName());
                } else {
                    return ""; //$NON-NLS-1$
                }
            } else if (COL_LENGTH.equals(property)) {
                if (t.getDatatype() != null && t.getDatatype().getLength() != null) {
                    return String.valueOf(t.getDatatype().getLength());
                } else {
                    return ""; //$NON-NLS-1$
                }
            } else if (COL_PRECISION.equals(property)) {
                if (t.getDatatype() != null && t.getDatatype().getPrecision() != null) {
                    return String.valueOf(t.getDatatype().getPrecision());
                } else {
                    return ""; //$NON-NLS-1$
                }
            }
            return null;
        }

        @Override
        public void modify(Object element, String property, Object value) {
            IDomainVendorType t = (IDomainVendorType) ((TableItem) element).getData();
            if (COL_VENDOR.equals(property)) {
                String val = sortedVendors.get((Integer) value);
                for (DBVendor v : DBVendor.values()) {
                    if (v.toString().equals(val)) {
                        t.setDBVendor(v);
                    }
                }
            } else if (COL_TYPE.equals(property)) {
                if (t.getDatatype() == null) {
                    t.setDatatype(Datatype.getDefaultDatatype());
                }
                t.getDatatype().setName((String) value);
                t.notifyListeners(ChangeEvent.MODEL_CHANGED, null);
            } else if (COL_LENGTH.equals(property)) {
                try {
                    if (value != null && !"".equals(((String) value).trim())) { //$NON-NLS-1$
                        t.getDatatype().setLength(Integer.valueOf((String) value));
                    } else {
                        t.getDatatype().setLength(null);
                    }
                } catch (NumberFormatException e) {
                    t.getDatatype().setLength(null);
                }
                t.notifyListeners(ChangeEvent.MODEL_CHANGED, null);
            } else if (COL_PRECISION.equals(property)) {
                try {
                    if (value != null && !"".equals(((String) value).trim())) { //$NON-NLS-1$
                        t.getDatatype().setPrecision(Integer.valueOf((String) value));
                    } else {
                        t.getDatatype().setPrecision(null);
                    }
                } catch (NumberFormatException e) {
                    t.getDatatype().setPrecision(null);
                }
                t.notifyListeners(ChangeEvent.MODEL_CHANGED, null);
            }
        }
    });

    domainViewer.addSelectionChangedListener(new ISelectionChangedListener() {

        @Override
        public void selectionChanged(SelectionChangedEvent event) {
            if (event.getSelection() instanceof IStructuredSelection) {
                final IStructuredSelection sel = (IStructuredSelection) event.getSelection();
                if (!sel.isEmpty()) {
                    typeViewer.setInput(sel.getFirstElement());
                } else {
                    typeViewer.setInput(null);
                }
            }
        }
    });
    removeTypeButton.addSelectionListener(new SelectionAdapter() {

        @Override
        public void widgetSelected(SelectionEvent e) {
            ISelection s = typeViewer.getSelection();
            if (s instanceof IStructuredSelection) {
                final IStructuredSelection sel = (IStructuredSelection) s;
                if (!sel.isEmpty()) {
                    for (Object o : sel.toList()) {
                        if (o instanceof IDomainVendorType) {
                            final IDomainVendorType vt = (IDomainVendorType) o;
                            vt.getDomain().removeVendorType(vt);
                        }
                    }
                }
            }
        }
    });
    return editor;
}

From source file:com.nextep.designer.vcs.ui.handlers.AbstractVersionHandler.java

License:Open Source License

/**
 * @see org.eclipse.core.commands.AbstractHandler#isEnabled()
 *///www  .j  av  a 2 s . co m
@Override
public boolean isEnabled() {
    // log.debug(this.getClass().getSimpleName() + ": isEnabled() called.");
    final ISelectionProvider provider = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage()
            .getActivePart().getSite().getSelectionProvider();
    final ISelection s = provider.getSelection();
    if (s instanceof IStructuredSelection) {
        final IStructuredSelection sel = (IStructuredSelection) s;
        if (sel.isEmpty()) {
            return false;
        } else {
            for (Object o : sel.toList()) {
                if (o instanceof IVersionable<?>) {
                    // Our selection might not point to the current workspace object if the
                    // UI is not yet synched with latest model object so we refetch it from
                    // reference
                    final IVersionable<?> selectedVersion = (IVersionable<?>) o;
                    try {
                        final IVersionable<?> workspaceVersion = (IVersionable<?>) VersionHelper
                                .getReferencedItem(selectedVersion.getReference());
                        if (log.isDebugEnabled()) {
                            log.debug("HANDLER ENABLEMENT (" + this.getClass().getName() //$NON-NLS-1$
                                    + ") : Checking state of " + workspaceVersion + " version " //$NON-NLS-1$//$NON-NLS-2$
                                    + workspaceVersion.getVersion());
                        }
                        if (!isEnabled(workspaceVersion)) {
                            return false;
                        }
                    } catch (ErrorException e) {
                        // this will happen when we switch workspace and the current selection
                        // cannot be found, we disable everything in this case
                        return false;
                    }
                } else {
                    return false;
                }
            }
            return true;
        }
    }
    return false;

}