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

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

Introduction

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

Prototype

IStructuredSelection

Source Link

Usage

From source file:org.eclipse.libra.framework.ui.internal.editor.ConfigurationOSGiModuleEditorPart.java

License:Open Source License

public ISelection getSelection() {
    final TableItem[] sel = osgiBundlesTable.getSelection();
    if (sel == null || sel.length == 0)
        return StructuredSelection.EMPTY;

    return new IStructuredSelection() {

        public boolean isEmpty() {
            return false;
        }//  w w  w  . j av  a2s  .  c o m

        public List toList() {
            List<IPluginModelBase> all = new ArrayList<IPluginModelBase>();
            for (TableItem s : sel)
                all.add((IPluginModelBase) s.getData());
            return all;
        }

        public Object[] toArray() {

            return toList().toArray();
        }

        public int size() {

            return sel.length;
        }

        public Iterator iterator() {
            return toList().iterator();
        }

        public Object getFirstElement() {
            return sel[0].getData();
        }
    };

}

From source file:org.eclipse.m2m.internal.qvt.oml.runtime.ui.ant.ChooseDataSourcePage.java

License:Open Source License

@Override
public void setVisible(boolean visible) {
    if (visible && getSelectedLaunchConfiguration() == null) {
        myViewer.setSelection(new IStructuredSelection() {

            public Object getFirstElement() {
                Object[] array = toArray();
                if (array.length == 0) {
                    return null;
                }/*  w  ww  .  j  a va 2 s  . c  o  m*/
                return array[0];
            }

            public Iterator<Object> iterator() {
                return toList().iterator();
            }

            public int size() {
                return toArray().length;
            }

            public Object[] toArray() {
                return ((ITreeContentProvider) myViewer.getContentProvider()).getElements(null);
            }

            public List<Object> toList() {
                Object[] array = toArray();
                List<Object> list = new ArrayList<Object>(array.length);
                for (Object o : array) {
                    list.add(o);
                }
                return list;
            }

            public boolean isEmpty() {
                return toArray().length > 0;
            }

        });
    }
    super.setVisible(visible);
}

From source file:org.eclipse.osee.framework.ui.skynet.dialogs.ArtifactSelectionDialog.java

License:Open Source License

@Override
public void create() {
    BusyIndicator.showWhile(null, new Runnable() {
        @Override//from w ww .j av a 2 s .c o  m
        public void run() {
            access$superCreate();
            treeViewer.setSelection(new IStructuredSelection() {
                @Override
                public boolean isEmpty() {
                    return getInitialElementSelections().isEmpty();
                }

                @Override
                public Object getFirstElement() {
                    return getInitialElementSelections().get(0);
                }

                @Override
                public Iterator<?> iterator() {
                    return getInitialElementSelections().iterator();
                }

                @Override
                public int size() {
                    return getInitialElementSelections().size();
                }

                @Override
                public Object[] toArray() {
                    return getInitialElementSelections().toArray();
                }

                @Override
                public List<?> toList() {
                    return getInitialElementSelections();
                }

            }, true);

            /*
             * treeViewer.setCheckedElements(getInitialElementSelections().toArray()); if (fExpandedElements != null) {
             * fViewer.setExpandedElements(fExpandedElements); }
             */
            updateOKStatus();
        }
    });
}

From source file:org.eclipse.stem.ui.views.IdentifiablePluginView.java

License:Open Source License

/**
 * @see org.eclipse.ui.part.WorkbenchPart#createPartControl(org.eclipse.swt.widgets.Composite)
 *//*from w  ww  .  j a  v a 2s  . com*/
@Override
public void createPartControl(final Composite parent) {
    dcTTipHandler = new DublinCoreToolTipHandler(parent.getShell());

    treeViewer = new TreeViewer(parent);
    treeViewer.setContentProvider(new IdentifiablePluginViewTreeContentProvider());
    treeViewer.setLabelProvider(getIdentifiablePluginViewLabelContentProvider());
    treeViewer.setUseHashlookup(true);
    treeViewer.setInput(getInput());

    // Hook up the dublin core tool tip handler
    dcTTipHandler.addDCToolTipHelp(treeViewer.getTree());

    // We become a selection provider too
    getSite().setSelectionProvider(treeViewer);

    // Context Menu
    final MenuManager contextMenuManager = new MenuManager();
    // Place Holder for Menu Additions
    contextMenuManager.add(new Separator("execution"));

    // Set the context menu for the viewer
    treeViewer.getControl().setMenu(contextMenuManager.createContextMenu(treeViewer.getControl()));
    getSite().registerContextMenu(contextMenuManager, treeViewer);

    // Listen for double-clicks on Executables
    treeViewer.addDoubleClickListener(new IDoubleClickListener() {
        public void doubleClick(final DoubleClickEvent event) {
            final IExecutable executable = (IExecutable) Platform.getAdapterManager().getAdapter(
                    ((StructuredSelection) event.getSelection()).toList().get(0), IExecutable.class);

            // Were we successful in adapting?
            if (executable != null) {
                // Yes
                executable.run();

                // Only switch to the Simulation Persepctive when the executable is a standard
                // run (scenario). For other executables we may want to stay in other special
                // perspectives
                if (executable instanceof Adapter) {
                    Adapter a = (Adapter) executable;
                    Object obj = a.getTarget();
                    if (obj instanceof org.eclipse.stem.core.scenario.impl.ScenarioImpl) {
                        Activator.switchToPerspective(Simulation.ID_STEM_SIMULATION_PERSPECTIVE);
                    }
                } // if adapter (usually true)

            } // if
        } // doubleClick
    });

    // Set up drag support
    final int ops = DND.DROP_LINK | DND.DROP_COPY | DND.DROP_MOVE;
    final Transfer[] transfers = new Transfer[] { LocalSelectionTransfer.getTransfer(),
            LocalTransfer.getInstance() };
    treeViewer.addDragSupport(ops, transfers, new DragSourceListener() {

        /**
         * @see org.eclipse.swt.dnd.DragSourceListener#dragStart(org.eclipse.swt.dnd.DragSourceEvent)
         */
        public void dragStart(final DragSourceEvent event) {
            // We need to figure out when the drag can start here
            // Just say "yes" right now
            event.doit = true;
            selection = treeViewer.getSelection();
            // LocalSelectionTransfer.getTransfer().setSelection(selection);
        } // dragStart

        /**
         * @see org.eclipse.swt.dnd.DragSourceListener#dragSetData(org.eclipse.swt.dnd.DragSourceEvent)
         */
        public void dragSetData(final DragSourceEvent event) {

            if (LocalSelectionTransfer.getTransfer().isSupportedType(event.dataType)) {
                // Yes
                event.data = extractURIStringsFromIdentifiableDelegates((IStructuredSelection) selection);
                LocalSelectionTransfer.getTransfer().setSelection((IStructuredSelection) event.data);
            } // if
            else if (LocalTransfer.getInstance().isSupportedType(event.dataType)) {
                // Yes
                event.data = extractURIStringsFromIdentifiableDelegates((IStructuredSelection) selection);
            } // if

        } // dragSetData

        private IStructuredSelection extractURIStringsFromIdentifiableDelegates(
                final IStructuredSelection selectedDelegates) {
            final List<String> collection = new ArrayList<String>();
            for (final Iterator selectionIter = selectedDelegates.iterator(); selectionIter.hasNext();) {
                final Object element = selectionIter.next();
                // Was an Identifiable Delegate selected?
                if (element instanceof IdentifiableDelegate) {
                    // Yes
                    // It has a URI that specifies the serialized
                    // representation of the Identifiable
                    final String uriString = ((IdentifiableDelegate) element).getDublinCore().getIdentifier();
                    // Were we successful in getting the uri string?
                    if (uriString != null) {
                        // Yes
                        collection.add(uriString);
                    }
                } // if
            } // for each selection

            return new IStructuredSelection() {

                final List<String> list;
                {
                    list = collection;
                }

                public Object getFirstElement() {
                    return list.get(0);
                }

                public Iterator<String> iterator() {
                    return list.iterator();
                }

                public int size() {
                    return list.size();
                }

                public Object[] toArray() {
                    return list.toArray();
                }

                public List<String> toList() {
                    return list;
                }

                public boolean isEmpty() {
                    return list.isEmpty();
                }
            };
        } // extractURIStrings

        /**
         * @see org.eclipse.swt.dnd.DragSourceListener#dragFinished(org.eclipse.swt.dnd.DragSourceEvent)
         */
        public void dragFinished(@SuppressWarnings("unused") final DragSourceEvent event) {
            selection = null;
            LocalTransfer.getInstance().javaToNative(null, null);
        } // dragFinished

    });
}

From source file:org.org.eclipse.dws.ui.internal.views.LibraryPacksView.java

License:Open Source License

public static void showViewAndFocusOnElement(IModelItem<?, ?> item) {
    try {/*from  w w  w .  ja va 2s .c o m*/
        IWorkbenchPage activePage = DWSUIPlugin.getDefault().getWorkbench().getActiveWorkbenchWindow()
                .getActivePage();
        activePage.showView(LibraryPacksView.VIEW_ID);
    } catch (PartInitException pie) {
        ErrorDialog errorDialog = new ErrorDialog("Impossible to open DWS Library Packs view",
                "Impossible to open DWS Library Packs view", pie);
        errorDialog.open();
    }
    if (item != null && view != null) {
        final List<Object> list = new ArrayList<Object>();
        list.add(item);
        view.getViewer().setSelection(new IStructuredSelection() {

            public boolean isEmpty() {
                return false;
            }

            public List<?> toList() {
                return list;
            }

            public Object[] toArray() {
                return list.toArray();
            }

            public int size() {
                return list.size();
            }

            public Iterator<?> iterator() {
                return list.iterator();
            }

            public Object getFirstElement() {
                return list.get(0);
            }

        }, true);

    }
}

From source file:org.org.eclipse.dws.ui.internal.views.MavenRepositoriesView.java

License:Open Source License

@SuppressWarnings({ "rawtypes", "unchecked" })
public static void showViewAndFocusOnElement(IModelItem item) {
    try {//from   www .ja va2 s. co m
        IWorkbenchPage activePage = DWSUIPlugin.getDefault().getWorkbench().getActiveWorkbenchWindow()
                .getActivePage();
        activePage.showView(MavenRepositoriesView.VIEW_ID);
    } catch (PartInitException pie) {
        ErrorDialog errorDialog = new ErrorDialog("Impossible to open DWS Repositories view",
                "Impossible to open DWS Repositories view", pie);
        errorDialog.open();
    }
    if (item != null && view != null) {
        final List list = new ArrayList();
        list.add(item);
        view.getViewer().setSelection(new IStructuredSelection() {

            public boolean isEmpty() {
                return false;
            }

            public List toList() {
                return list;
            }

            public Object[] toArray() {
                return list.toArray();
            }

            public int size() {
                return list.size();
            }

            public Iterator iterator() {
                return list.iterator();
            }

            public Object getFirstElement() {
                return list.get(0);
            }

        }, true);

    }
}

From source file:org.talend.core.ui.properties.tab.TabInputChangedEvent.java

License:Open Source License

/**
 * yzhang TabInputChangedEvent constructor comment.
 *//*from   w w w.  ja v  a 2 s.c  o m*/
public TabInputChangedEvent(ITabItem selectedTab, Object[] newInput) {
    this.tabItem = selectedTab;

    this.newInput = newInput;

    selection = new IStructuredSelection() {

        public Object getFirstElement() {
            return null;
        }

        public Iterator iterator() {
            return null;
        }

        public int size() {
            return 0;
        }

        public Object[] toArray() {
            return null;
        }

        public List toList() {
            List<ITabItem> d = new ArrayList<ITabItem>();
            if (tabItem != null) {
                d.add(tabItem);
            }
            return d;
        }

        public boolean isEmpty() {
            return false;
        }

    };

}

From source file:org.talend.designer.core.ui.views.jobsettings.JobSettingsView.java

License:Open Source License

/**
 * /*w  w w.  j a  va2  s.  com*/
 * DOC ggu Comment method "setElement".
 * 
 * @param obj
 */

private void setElement(Object obj, final String title, Image image) {
    EComponentCategory[] categories = null;

    if (obj != null && obj instanceof Process) {
        process = (Process) obj;
        if (currentSelectedTab != null && currentSelectedTab.getData().equals(process) && !cleaned) {
            return;
        }

        categories = getCategories(process);
    } else if (obj != null && obj instanceof IRepositoryViewObject) {
        categories = getCategories(obj);
        IRepositoryViewObject viewObject = (IRepositoryViewObject) obj;
        IProcess process = getProcess(viewObject);
        if (process != null && process instanceof Element && process.getId().equals(viewObject.getId())
                && process.getVersion().equals(viewObject.getVersion())) {
            categories = getCategories(process);
        }
    } else if (obj instanceof IEditorPart) {
        if (CorePlugin.getDefault().getDiagramModelService().isBusinessDiagramEditor((IEditorPart) obj)) {
            categories = getCategories(obj);
        }

    } else {
        BusinessType type = CorePlugin.getDefault().getDiagramModelService().getBusinessModelType(obj);
        if (BusinessType.NOTE.equals(type) || BusinessType.SHAP.equals(type)
                || BusinessType.CONNECTION.equals(type)) {
            categories = getCategories(obj);
        } else {
            cleanDisplay();
            return;
        }
    }

    final List<TalendPropertyTabDescriptor> descriptors = new ArrayList<TalendPropertyTabDescriptor>();
    for (EComponentCategory category : categories) {
        TalendPropertyTabDescriptor d = new TalendPropertyTabDescriptor(category);
        d.setData(obj);
        descriptors.add(d);
    }

    tabFactory.setInput(descriptors);
    setPartName(title, image);
    cleaned = false;
    tabFactory.setSelection(new IStructuredSelection() {

        @Override
        public Object getFirstElement() {
            return null;
        }

        @Override
        public Iterator iterator() {
            return null;
        }

        @Override
        public int size() {
            return 0;
        }

        @Override
        public Object[] toArray() {
            return null;
        }

        @Override
        public List toList() {
            List<TalendPropertyTabDescriptor> d = new ArrayList<TalendPropertyTabDescriptor>();

            if (descriptors.size() > 0) {
                if (currentSelectedTab != null) {
                    for (TalendPropertyTabDescriptor ds : descriptors) {
                        if (ds.getCategory() == currentSelectedTab.getCategory()) {
                            d.add(ds);
                            return d;
                        }
                    }
                }
                d.add(descriptors.get(0));
            }
            return d;
        }

        @Override
        public boolean isEmpty() {
            return false;
        }

    });

}

From source file:org.talend.designer.core.ui.views.properties.ComponentSettingsView.java

License:Open Source License

@Override
public void setElement(Element elem) {
    if (currentSelectedTab != null && currentSelectedTab.getData().equals(elem) && !cleaned) {
        updatePropertiesViewerTitle();//from  www.  ja v a2 s .c  o m

        return;
    }

    EComponentCategory[] categories = getCategories(elem);
    final List<TalendPropertyTabDescriptor> descriptors = new ArrayList<TalendPropertyTabDescriptor>();
    for (EComponentCategory category : categories) {
        TalendPropertyTabDescriptor d = new TalendPropertyTabDescriptor(category);
        d.setData(elem);
        descriptors.add(d);
        // if (category.hadSubCategories()) {
        // for (EComponentCategory subCategory : category.getSubCategories()) {
        // TalendPropertyTabDescriptor subc = new TalendPropertyTabDescriptor(subCategory);
        // subc.setElement(elem);
        // d.addSubItem(subc);
        // }
        // }
    }

    tabFactory.setInput(descriptors);
    setPropertiesViewerTitle(elem);
    cleaned = false;
    tabFactory.setSelection(new IStructuredSelection() {

        @Override
        public Object getFirstElement() {
            return null;
        }

        @Override
        public Iterator iterator() {
            return null;
        }

        @Override
        public int size() {
            return 0;
        }

        @Override
        public Object[] toArray() {
            return null;
        }

        @Override
        public List toList() {
            List<TalendPropertyTabDescriptor> d = new ArrayList<TalendPropertyTabDescriptor>();

            if (descriptors.size() > 0) {
                if (currentSelectedTab != null) {
                    for (TalendPropertyTabDescriptor ds : descriptors) {
                        if (ds.getCategory() == currentSelectedTab.getCategory()) {
                            d.add(ds);
                            return d;
                        }
                    }
                }
                d.add(descriptors.get(0));
            }
            return d;
        }

        @Override
        public boolean isEmpty() {
            return false;
        }

    });
}

From source file:org.talend.designer.runprocess.ui.views.ProcessView.java

License:Open Source License

public void setElement() {
    EComponentCategory[] categories = getCategories();
    final List<TalendPropertyTabDescriptor> descriptors = new ArrayList<TalendPropertyTabDescriptor>();
    for (EComponentCategory category : categories) {
        TalendPropertyTabDescriptor d = new TalendPropertyTabDescriptor(category);
        // d.setData(data);
        descriptors.add(d);//from w  w w  .  j  a v a 2 s . c o  m
    }
    tabFactory.setInput(descriptors);
    tabFactory.setSelection(new IStructuredSelection() {

        @Override
        public Object getFirstElement() {
            return null;
        }

        @Override
        public Iterator iterator() {
            return null;
        }

        @Override
        public int size() {
            return 0;
        }

        @Override
        public Object[] toArray() {
            return null;
        }

        @Override
        public List toList() {
            List<TalendPropertyTabDescriptor> d = new ArrayList<TalendPropertyTabDescriptor>();

            if (descriptors.size() > 0) {
                if (currentSelectedTab != null) {
                    for (TalendPropertyTabDescriptor ds : descriptors) {
                        if (ds.getCategory() == currentSelectedTab.getCategory()) {
                            d.add(ds);
                            return d;
                        }
                    }
                }
                d.add(descriptors.get(0));
            }
            return d;
        }

        @Override
        public boolean isEmpty() {
            return false;
        }

    });
}