List of usage examples for org.eclipse.jface.viewers StructuredSelection iterator
@Override
public Iterator iterator()
From source file:ext.org.eclipse.jdt.internal.ui.wizards.SuperInterfaceSelectionDialog.java
License:Open Source License
private void addSelectedInterfaces() { StructuredSelection selection = getSelectedItems(); if (selection == null) return;/*from w ww . j a va 2 s . c om*/ for (Iterator<?> iter = selection.iterator(); iter.hasNext();) { Object obj = iter.next(); if (obj instanceof TypeNameMatch) { accessedHistoryItem(obj); TypeNameMatch type = (TypeNameMatch) obj; String qualifiedName = getNameWithTypeParameters(type.getType()); String message; if (fTypeWizardPage.addSuperInterface(qualifiedName)) { message = Messages.format(NewWizardMessages.SuperInterfaceSelectionDialog_interfaceadded_info, BasicElementLabels.getJavaElementName(qualifiedName)); } else { message = Messages.format( NewWizardMessages.SuperInterfaceSelectionDialog_interfacealreadyadded_info, BasicElementLabels.getJavaElementName(qualifiedName)); } updateStatus(new StatusInfo(IStatus.INFO, message)); } } }
From source file:fr.gouv.mindef.safran.database.ui.actions.AbstractScaffoldHandler.java
License:Open Source License
private ScaffoldInfo getExistingScaffoldModel(StructuredSelection selection) { Iterator<?> iterator = selection.iterator(); Object first = iterator.next(); Object second = iterator.next(); EObject firstEObject = null;//w ww . ja v a 2 s . c om EObject secondEObject = null; if (first instanceof EObject && second instanceof EObject) { firstEObject = (EObject) first; secondEObject = (EObject) second; Session session = SessionManager.INSTANCE.getSession(firstEObject); for (Resource semanticResource : session.getSemanticResources()) { for (EObject object : semanticResource.getContents()) { if (object instanceof ScaffoldInfo) { ScaffoldInfo info = (ScaffoldInfo) object; if ((info.getLeftObject() == firstEObject && info.getRightObject() == secondEObject) || (info.getLeftObject() == secondEObject && info.getRightObject() == firstEObject)) { return info; } } } } } return null; }
From source file:gov.nasa.ensemble.core.plan.resources.ui.profile.editor.ProfileDataPointsEditor.java
License:Open Source License
@SuppressWarnings("unchecked") private TreeTableViewer createTreeTableViewer(final Composite parent, FormToolkit toolkit, final Profile profile) { boolean isProfileEditable = isProfileEditable(profile); //create tree viewer List<AbstractTreeTableColumn> columns = new ProfileDataPointColumnProvider(profile, isProfileEditable) .getColumns();//from w ww. jav a2 s. c om TreeTableColumnConfiguration config = new TreeTableColumnConfiguration(columns.get(0), columns, columns.get(0)); TreeTableComposite ttc = new TreeTableComposite(parent, config, false); ttc.setLayout(new TreeTableColumnLayout(false)); final TreeTableViewer viewer = new TreeTableViewer(ttc, config, null); //set providers viewer.setContentProvider(new ProfileEditorContentProvider()); viewer.setLabelProvider(new TreeTableLabelProvider() { @Override public boolean needsUpdate(Object feature) { return false; } @Override public Font getFont(Object element) { return null; } @Override public Color getBackground(Object element) { return null; } }); //if there's any changes in the profile data points... refresh viewer! final TransactionalEditingDomain domain = gov.nasa.ensemble.emf.transaction.TransactionUtils .getDomain(profile); final ResourceSetListenerImpl viewerRefreshListener = new ResourceSetListenerImpl() { @Override public void resourceSetChanged(ResourceSetChangeEvent event) { for (Notification notification : event.getNotifications()) { if (notification.getNotifier() == profile && notification.getFeature() == JSciencePackage.Literals.PROFILE__DATA_POINTS) { WidgetUtils.runInDisplayThread(viewer.getTree(), new Runnable() { @Override public void run() { viewer.refresh(); parent.getParent().getParent().layout(); } }); } } } }; if (domain != null) { domain.addResourceSetListener(viewerRefreshListener); } if (isProfileEditable) { Composite buttonsComposite = toolkit.createComposite(parent); buttonsComposite.setLayout(new GridLayout(2, false)); buttonsComposite.setLayoutData(new GridData(SWT.FILL, SWT.FILL, false, true, 2, 1)); //insert new DataPoint final Button insertButton = toolkit.createButton(buttonsComposite, INSERT_BUTTON_TEXT, SWT.PUSH); insertButton.setToolTipText(INSERT_TOOLTIP_MESSAGE); final SelectionAdapter insertButtonSelectionListener = new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent event) { EList<DataPoint> dataPoints = profile.getDataPoints(); DataPoint newDataPoint; if (dataPoints.isEmpty()) { EPlan ePlan = EPlanUtils.getPlanFromResourceSet(profile); Date date = (ePlan != null ? ePlan.getMember(TemporalMember.class).getStartTime() : new Date()); newDataPoint = JScienceFactory.eINSTANCE.createEDataPoint(date, null); } else { Date date; ISelection selection = viewer.getSelection(); if (selection == null || selection.isEmpty()) { date = dataPoints.get(dataPoints.size() - 1).getDate(); } else if (selection instanceof StructuredSelection) { Object[] array = ((StructuredSelection) selection).toArray(); date = ((DataPoint) array[array.length - 1]).getDate(); } else { date = new Date(); //if everything fails... just set to now } newDataPoint = JScienceFactory.eINSTANCE.createEDataPoint(DateUtils.addSeconds(date, 1), null); } if (!dataPoints.contains(newDataPoint)) { try { AddProfileDataPointOperation op = new AddProfileDataPointOperation(profile, newDataPoint); op.addContext(viewer.getModel().getUndoContext()); IOperationHistory history = OperationHistoryFactory.getOperationHistory(); history.execute(op, null, null); viewer.setSelection(new StructuredSelection(newDataPoint)); } catch (Exception e) { LogUtil.error(e); } } else { showOperationError(); viewer.setSelection(new StructuredSelection(newDataPoint)); } } }; insertButton.addSelectionListener(insertButtonSelectionListener); //remove Data Point final Button removeButton = toolkit.createButton(buttonsComposite, REMOVE_BUTTON_TEXT, SWT.PUSH); removeButton.setToolTipText(REMOVE_TOOLTIP_MESSAGE); removeButton.setEnabled(!viewer.getSelection().isEmpty()); final SelectionAdapter removeButtonSelectionListener = new SelectionAdapter() { @Override public void widgetSelected(SelectionEvent event) { ISelection selection = viewer.getSelection(); if (!selection.isEmpty()) { if (selection instanceof StructuredSelection) { StructuredSelection ss = (StructuredSelection) selection; int selectionSize = ss.size(); DataPoint[] dps = new DataPoint[selectionSize]; Iterator<DataPoint> iterator = ss.iterator(); int i = 0; while (iterator.hasNext()) { dps[i++] = iterator.next(); } RemoveProfileDataPointsOperation op = new RemoveProfileDataPointsOperation(profile, dps); op.addContext(EMFUtils.getUndoContext(profile)); IOperationHistory history = OperationHistoryFactory.getOperationHistory(); try { history.execute(op, null, null); viewer.setSelection(StructuredSelection.EMPTY); } catch (Exception e) { LogUtil.error(e); } } } } }; removeButton.addSelectionListener(removeButtonSelectionListener); final ISelectionChangedListener removeButtonEnablementListener = new ISelectionChangedListener() { @Override public void selectionChanged(SelectionChangedEvent event) { removeButton.setEnabled(!viewer.getSelection().isEmpty()); } }; viewer.addSelectionChangedListener(removeButtonEnablementListener); //set dispose listener for editable profiles viewer.getControl().addDisposeListener(new DisposeListener() { @Override public void widgetDisposed(DisposeEvent e) { if (domain != null) { domain.removeResourceSetListener(viewerRefreshListener); } insertButton.removeSelectionListener(insertButtonSelectionListener); removeButton.removeSelectionListener(removeButtonSelectionListener); viewer.removeSelectionChangedListener(removeButtonEnablementListener); dispose(viewer); } }); } else { //set dispose listener for non-editable profiles viewer.getControl().addDisposeListener(new DisposeListener() { @Override public void widgetDisposed(DisposeEvent e) { if (domain != null) { domain.removeResourceSetListener(viewerRefreshListener); } dispose(viewer); } }); } return viewer; }
From source file:info.limpet.ui.core_view.CoreAnalysisView.java
License:Open Source License
protected void newSelection(ISelection selection) { List<IStoreItem> res = new ArrayList<IStoreItem>(); if (selection instanceof StructuredSelection) { StructuredSelection str = (StructuredSelection) selection; // check if it/they are suitable Iterator<?> iter = str.iterator(); while (iter.hasNext()) { Object object = (Object) iter.next(); if (object instanceof IAdaptable) { IAdaptable ad = (IAdaptable) object; IStoreItem coll = (IStoreItem) ad.getAdapter(IStoreItem.class); if (coll != null) { res.add(coll);/*from w ww . jav a2 s. c o m*/ } } else { // can we adapt it? ArrayList<IAdapterFactory> adapters = Activator.getDefault().getAdapters(); if (adapters != null) { Iterator<IAdapterFactory> aIter = adapters.iterator(); while (aIter.hasNext()) { IAdapterFactory iAdapterFactory = (IAdapterFactory) aIter.next(); Object match = iAdapterFactory.getAdapter(object, IStoreItem.class); if (match != null) { res.add((IStoreItem) match); break; } } } } } } // ok, stop listening to the old list clearChangeListeners(); // have we found any, and are they suitable for us? if ((res.size()) > 0 && appliesToMe(res, getATests())) { // store the new list curList.addAll(res); // now listen to the new list Iterator<IStoreItem> iter = curList.iterator(); while (iter.hasNext()) { IStoreItem iC = iter.next(); iC.addChangeListener(changeListener); } // ok, display them display(res); } else { // ok, nothing to display - clear the graph display(new ArrayList<IStoreItem>()); } }
From source file:io.sarl.eclipse.wizards.elements.AbstractSuperTypeSelectionDialog.java
License:Apache License
/** Adds selected interfaces to the list. *///from w ww. j a v a 2 s . c o m private void fillWizardPageWithSelectedTypes() { final StructuredSelection selection = getSelectedItems(); if (selection == null) { return; } for (final Iterator<?> iter = selection.iterator(); iter.hasNext();) { final Object obj = iter.next(); if (obj instanceof TypeNameMatch) { accessedHistoryItem(obj); final TypeNameMatch type = (TypeNameMatch) obj; final String qualifiedName = Utilities.getNameWithTypeParameters(type.getType()); final String message; if (addTypeToWizardPage(this.typeWizardPage, qualifiedName)) { message = MessageFormat.format(Messages.AbstractSuperTypeSelectionDialog_2, BasicElementLabels.getJavaElementName(qualifiedName)); } else { message = MessageFormat.format(Messages.AbstractSuperTypeSelectionDialog_3, BasicElementLabels.getJavaElementName(qualifiedName)); } updateStatus(new StatusInfo(IStatus.INFO, message)); } } }
From source file:net.refractions.udig.project.ui.internal.ProjectExplorer.java
License:Open Source License
/** * returns the list of all the selected objects of the given class. * /*from w w w. j a v a 2s . c o m*/ * @param clazz The object types to add to the list. * @return the list of all the selected objects of the given class */ @SuppressWarnings("unchecked") public <T> List<T> getSelected(Class<T> clazz) { StructuredSelection selection = (StructuredSelection) treeViewer.getSelection(); List<T> selected = new ArrayList<T>(); for (Iterator<T> iter = selection.iterator(); iter.hasNext();) { T obj = iter.next(); if (clazz != null && clazz.isAssignableFrom(obj.getClass())) selected.add(obj); } return selected; }
From source file:net.refractions.udig.project.ui.internal.ProjectExplorer.java
License:Open Source License
private LayerApplicabilityMenuCreator getApplicabilityMenu() { if (applicabilityCreator == null) { applicabilityCreator = new LayerApplicabilityMenuCreator(); }/*from ww w . j a v a2s.c o m*/ StructuredSelection selection = (StructuredSelection) treeViewer.getSelection(); for (Iterator iter = selection.iterator(); iter.hasNext();) { Object element = iter.next(); if (!(element instanceof Layer)) return null; } return applicabilityCreator; }
From source file:net.rim.ejde.internal.propertytester.ProjectPropertyTester.java
License:Open Source License
@Override public boolean test(Object receiver, String property, Object[] args, Object expectedValue) { IWorkbenchPage page = PlatformUI.getWorkbench().getActiveWorkbenchWindow().getActivePage(); if (page != null) { IViewPart viewPart = page.findView("org.eclipse.jdt.ui.PackageExplorer"); if (viewPart != null) { IPackagesViewPart packageView = (IPackagesViewPart) viewPart; ISelection selection = packageView.getSite().getSelectionProvider().getSelection(); if (selection instanceof StructuredSelection) { StructuredSelection ssel = (StructuredSelection) selection; if (ssel.isEmpty()) { return false; } else { Iterator<Object> iter = ssel.iterator(); while (iter.hasNext()) { Object item = iter.next(); if (!(item instanceof IJavaProject)) { return false; }// w w w .j av a2s . co m if (!NatureUtils.hasBBNature(((IJavaProject) item).getProject())) { return false; } } return true; } } } } return false; }
From source file:net.rim.ejde.internal.ui.editors.model.BlackBerryProjectPropertiesPage.java
License:Open Source License
/** * Removes the currently selected table item from the viewer and updates controls accordingly * * @param viewer//w w w . ja v a2 s.co m * @param actionButtons * @param updateUIOnly * <code>true</code> only update UI but not remove items from the table; <code>false</code> update UI and remove * items from the table; */ public void removeSelectedTableItem(TableViewer viewer, Map<Action, Button> actionButtons, boolean updateUIOnly) { StructuredSelection selection = (StructuredSelection) viewer.getSelection(); Table table = viewer.getTable(); int selectionIndex = table.getSelectionIndex(); Boolean entryRemoved = false; if (!updateUIOnly) { for (Iterator<?> iter = selection.iterator(); iter.hasNext();) { Object selectedElement = iter.next(); if (selectedElement != null) { viewer.remove(selectedElement); if (!entryRemoved) { entryRemoved = true; } } } } if (updateUIOnly || entryRemoved) { int itemCount = table.getItemCount(); if (itemCount != 0) { table.select(itemCount - 1 > selectionIndex ? selectionIndex : itemCount - 1); if (actionButtons.containsKey(Action.MOVE_DOWN)) { if (selectionIndex == itemCount - 1) { actionButtons.get(Action.MOVE_DOWN).setEnabled(false); } actionButtons.get(Action.MOVE_UP).setEnabled(itemCount > 1 ? true : false); } // Used to fire any selection events viewer.setSelection(viewer.getSelection()); } else { if (actionButtons.containsKey(Action.EDIT)) { actionButtons.get(Action.EDIT).setEnabled(false); } if (actionButtons.containsKey(Action.REMOVE)) { actionButtons.get(Action.REMOVE).setEnabled(false); } if (actionButtons.containsKey(Action.MOVE_UP)) { actionButtons.get(Action.MOVE_UP).setEnabled(false); } if (actionButtons.containsKey(Action.MOVE_DOWN)) { actionButtons.get(Action.MOVE_DOWN).setEnabled(false); } if (actionButtons.containsKey(Action.SELECT_ALL)) { actionButtons.get(Action.SELECT_ALL).setEnabled(false); } if (actionButtons.containsKey(Action.SELECT_NONE)) { actionButtons.get(Action.SELECT_NONE).setEnabled(false); } } // Enable any disabled add buttons - icon scenarios where only 2 icons can be added. if (actionButtons.containsKey(Action.ADD)) { actionButtons.get(Action.ADD).setEnabled(true); } if (actionButtons.containsKey(Action.ADD_FROM_PROJECT)) { actionButtons.get(Action.ADD_FROM_PROJECT).setEnabled(true); } if (actionButtons.containsKey(Action.ADD_FROM_EXTERNAL)) { actionButtons.get(Action.ADD_FROM_EXTERNAL).setEnabled(true); } if (table.getColumnCount() > 1) { table.getColumn(1).pack(); } } }
From source file:net.rim.ejde.internal.util.ProjectUtils.java
License:Open Source License
/** * Gets selected IJavaProjects from the selection. * * @param selection//from ww w .j a va2s .c o m * The <code>StructuredSelection</code> * @return <code>IJavaProject</code> */ public static IJavaProject[] getSelectProjects(StructuredSelection selection) { StructuredSelection ss = selection; List<IJavaProject> projects = new ArrayList<IJavaProject>(); Object p = null; Iterator<Object> i = ss.iterator(); while (i.hasNext()) { p = i.next(); if (p instanceof IJavaProject) { try { // we only package BB projects if (((IJavaProject) p).getProject().hasNature(BlackBerryProjectCoreNature.NATURE_ID)) { projects.add((IJavaProject) p); } } catch (CoreException e) { logger.error(e.getMessage()); } } else if (p instanceof IProject) { try { // we only package BB projects if (((IProject) p).hasNature(BlackBerryProjectCoreNature.NATURE_ID)) { projects.add(JavaCore.create((IProject) p)); } } catch (CoreException e) { logger.error(e.getMessage()); } } } return projects.toArray(new IJavaProject[projects.size()]); }