Example usage for org.eclipse.jface.viewers TreeViewer setContentProvider

List of usage examples for org.eclipse.jface.viewers TreeViewer setContentProvider

Introduction

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

Prototype

@Override
public void setContentProvider(IContentProvider provider) 

Source Link

Document

Sets the content provider used by this TreeViewer.

Usage

From source file:org.bbaw.pdr.ae.export.logic.PdrObjectsPreviewStructure.java

License:Open Source License

public PdrObjectsPreviewStructure(TreeViewer viewer) {
    this();
    viewer.setContentProvider(this);
}

From source file:org.bbaw.pdr.ae.view.main.views.Treeview.java

License:Open Source License

/**
 * Open in tree viewer./*from  w ww  .j a  va  2 s  .  c o m*/
 * @param tn the tn
 */
public final void openInTreeViewer(final TreeNode tn) {
    if (tn != null) {
        TreeViewer treeViewer;
        CTabItem tabItem;
        String key;
        if (tn.getId() != null) {
            key = tn.getId();
        } else {
            key = "clipboard";
        }
        if (_treeViewerMap.containsKey(key)) {
            treeViewer = _treeViewerMap.get(key);
            tabItem = (CTabItem) treeViewer.getData("tab");
        } else {
            tabItem = new CTabItem(_tabFolderLeft, SWT.CLOSE);
            Tree tree = new Tree(_tabFolderLeft, SWT.BORDER | SWT.MULTI);
            tabItem.setControl(tree);
            tabItem.setData("type", "clipboard"); //$NON-NLS-1$

            PlatformUI.getWorkbench().getHelpSystem().setHelp(tree, "org.bbaw.pdr.ae.help.objectsTree"); //$NON-NLS-1$
            treeViewer = new TreeViewer(tree);
            treeViewer.setUseHashlookup(true);

        }
        tabItem.setText(key);
        tabItem.setData("key", key); //$NON-NLS-1$
        // setBulb();
        tabItem.setImage(_imageReg.get(IconsInternal.PERSONS));

        treeViewer.setData("key", 1); //$NON-NLS-1$
        treeViewer.setData("tab", tabItem); //$NON-NLS-1$
        tabItem.setData("viewer", treeViewer); //$NON-NLS-1$

        treeViewer.setContentProvider(new TreeContentProvider());
        treeViewer.setLabelProvider(new TreeLabelProvider());
        _treeViewerMap.put(key, treeViewer);
        // Create menu, toolbars, filters, sorters.
        createActions();
        buildTree(treeViewer);
        setStatusLine("Ready");
        treeViewer.setInput(tn);
    }

}

From source file:org.bonitasoft.studio.configuration.ui.wizard.page.SelectProcessWizardPage.java

License:Open Source License

@Override
public void createControl(Composite parent) {
    Composite mainComposite = new Composite(parent, SWT.NONE);
    mainComposite.setLayoutData(GridDataFactory.fillDefaults().grab(true, true).create());
    mainComposite.setLayout(GridLayoutFactory.fillDefaults().numColumns(1).create());

    databindingContext = new DataBindingContext();

    final FilteredTree tree = new FilteredTree(mainComposite, SWT.FULL_SELECTION | SWT.BORDER | SWT.SINGLE,
            new PatternFilter(), false);
    tree.setLayoutData(GridDataFactory.fillDefaults().grab(true, true).create());
    TreeViewer viewer = tree.getViewer();
    viewer.setContentProvider(new ProcessContentProvider());
    viewer.setLabelProvider(new ProcessTreeLabelProvider());

    UpdateValueStrategy startegy = new UpdateValueStrategy();
    startegy.setBeforeSetValidator(new IValidator() {

        @Override/*from  w w w.j a  v  a  2  s  .  c o m*/
        public IStatus validate(Object value) {
            if (value instanceof AbstractProcess && !(value instanceof MainProcess)) {
                return Status.OK_STATUS;
            }
            return ValidationStatus.error(Messages.mustSelectProcessError);
        }
    });

    if (diagram == null) {
        viewer.setInput(new Object[] { ProcessContentProvider.OTHER_PROCESSES });
    } else {
        viewer.setInput(new Object[] { diagram, ProcessContentProvider.OTHER_PROCESSES });
    }

    if (diagram != null) {
        if (((ITreeContentProvider) viewer.getContentProvider()).hasChildren(diagram)) {
            viewer.expandToLevel(diagram, 1);
        }
    } else {
        if (((ITreeContentProvider) viewer.getContentProvider())
                .hasChildren(ProcessContentProvider.OTHER_PROCESSES)) {
            viewer.expandToLevel(ProcessContentProvider.OTHER_PROCESSES, 1);
        }
    }

    WizardPageSupport.create(this, databindingContext);
    databindingContext.bindValue(ViewersObservables.observeSingleSelection(viewer),
            PojoObservables.observeValue(this, "selection"), startegy, null);

    setControl(mainComposite);
}

From source file:org.bonitasoft.studio.connector.model.definition.wizard.DefinitionInformationWizardPage.java

License:Open Source License

protected void createCategoryViewer(Composite mainComposite) {
    Label categoryLabel = new Label(mainComposite, SWT.NONE);
    categoryLabel.setText(Messages.categoryLabel);
    categoryLabel.setLayoutData(GridDataFactory.fillDefaults().align(SWT.END, SWT.TOP).create());

    final TreeViewer categoryViewer = new TreeViewer(mainComposite,
            SWT.BORDER | SWT.FULL_SELECTION | SWT.SINGLE);
    categoryViewer.getTree()//w ww  .ja v  a  2s.  c  o m
            .setLayoutData(GridDataFactory.fillDefaults().grab(true, false).hint(SWT.DEFAULT, 50).create());
    categoryViewer.addSelectionChangedListener(this);
    categoryViewer.addFilter(new ViewerFilter() {

        @Override
        public boolean select(Viewer viewer, Object parentElement, Object element) {
            return element instanceof Category && !Messages.uncategorized.equals(((Category) element).getId());
        }
    });
    categoryViewer.setContentProvider(new DefinitionCategoryContentProvider());
    categoryViewer.setLabelProvider(new ConnectorDefinitionTreeLabelProvider(messageProvider) {
        @Override
        public String getText(Object element) {
            String label = super.getText(element);
            if (label.equals(((Category) element).getId())) {
                label = messageProvider.getCategoryLabel(messages, (Category) element);
            }
            return label;
        }
    });
    final List<Category> allCategories = messageProvider.getAllCategories();
    categoryViewer.setInput(allCategories);
    final Category selectedCategory = getSelectedCategory(allCategories);
    if (selectedCategory != null) {
        categoryViewer.setSelection(new StructuredSelection(selectedCategory));
    }
    categoryViewer.addSelectionChangedListener(new ISelectionChangedListener() {

        @Override
        public void selectionChanged(SelectionChangedEvent event) {
            if (!((IStructuredSelection) event.getSelection()).isEmpty()) {
                Category selection = (Category) ((IStructuredSelection) event.getSelection()).getFirstElement();
                definition.getCategory().clear();
                definition.getCategory().add(selection);
                List<Category> categories = (List<Category>) categoryViewer.getInput();
                List<Category> parentCategories = new ArrayList<Category>();
                getParentCategories(parentCategories, categories, selection);
                definition.getCategory().addAll(parentCategories);
            }
        }
    });

    final Composite buttonComposite = new Composite(mainComposite, SWT.NONE);
    buttonComposite.setLayoutData(GridDataFactory.fillDefaults().grab(false, true).create());
    buttonComposite
            .setLayout(GridLayoutFactory.fillDefaults().numColumns(1).margins(0, 0).spacing(0, 3).create());

    final Button createButton = new Button(buttonComposite, SWT.FLAT);
    createButton.setText(Messages.newCategory);
    createButton.setLayoutData(GridDataFactory.fillDefaults().grab(true, false)
            .hint(DEFAULT_BUTTON_WIDTH_HINT, SWT.DEFAULT).create());
    createButton.addSelectionListener(new SelectionAdapter() {
        @Override
        public void widgetSelected(SelectionEvent e) {
            HashSet<String> existingCatIds = new HashSet<String>();
            existingCatIds.addAll(messageProvider.getProvidedCategoriesIds());
            existingCatIds.addAll(messageProvider.getUserCategoriesIds());
            List<Category> input = (List<Category>) categoryViewer.getInput();
            for (Category category : input) {
                existingCatIds.add(category.getId());
            }
            NewCategoryDialog dialog = new NewCategoryDialog(Display.getDefault().getActiveShell(),
                    existingCatIds);
            if (dialog.open() == Dialog.OK) {
                File imageFile = dialog.getIconImageFile();
                Category newCategory = dialog.getCategory();
                String displayName = dialog.getDisplayName();
                messageProvider.setCategoryLabel(messages, newCategory.getId(), displayName);
                if (imageFile != null) {
                    messageProvider.createIcon(imageFile, newCategory.getIcon());
                }
                input = (List<Category>) categoryViewer.getInput();
                input.add(newCategory);
                categoryViewer.setInput(input);
            }
        }
    });
}

From source file:org.bonitasoft.studio.connector.model.definition.wizard.PageWidgetsWizardPage.java

License:Open Source License

protected void createWidgetViewer(Composite parent) {
    final Composite viewerComposite = new Composite(parent, SWT.NONE);
    viewerComposite.setLayoutData(GridDataFactory.fillDefaults().grab(true, true).create());
    viewerComposite.setLayout(GridLayoutFactory.fillDefaults().numColumns(2).create());

    final TreeViewer inputsViewer = new TreeViewer(viewerComposite, SWT.BORDER | SWT.FULL_SELECTION);
    inputsViewer.getTree().setLayoutData(GridDataFactory.fillDefaults().grab(true, true).create());
    inputsViewer.getTree().setHeaderVisible(true);
    inputsViewer.addSelectionChangedListener(this);
    inputsViewer.setContentProvider(new AdapterFactoryContentProvider(adapterFactory));
    inputsViewer.setLabelProvider(new AdapterFactoryLabelProvider(adapterFactory));
    inputsViewer.getColumnViewerEditor()
            .addEditorActivationListener(new ColumnViewerEditorActivationListener() {

                @Override/*from  ww  w. j a v  a2s.  c o m*/
                public void beforeEditorDeactivated(ColumnViewerEditorDeactivationEvent event) {
                }

                @Override
                public void beforeEditorActivated(ColumnViewerEditorActivationEvent event) {
                }

                @Override
                public void afterEditorDeactivated(ColumnViewerEditorDeactivationEvent event) {
                    inputsViewer.setSelection(new StructuredSelection());
                }

                @Override
                public void afterEditorActivated(ColumnViewerEditorActivationEvent event) {
                }

            });

    final TableLayout layout = new TableLayout();
    layout.addColumnData(new ColumnWeightData(70));
    layout.addColumnData(new ColumnWeightData(30));
    inputsViewer.getTree().setLayout(layout);

    TreeViewerColumn widgetColumn = new TreeViewerColumn(inputsViewer, SWT.FILL);
    widgetColumn.getColumn().setText(Messages.widget);
    widgetColumn.setLabelProvider(new ColumnLabelProvider() {
        WidgetLabelProvider labelProvider = new WidgetLabelProvider();

        @Override
        public String getText(Object element) {
            Component comp = (Component) element;
            String label = messageProvider.getFieldLabel(messages, comp.getId());
            if (label == null || label.isEmpty()) {
                label = comp.getId();
            }
            return labelProvider.getText(comp.eClass()) + " " + label;
        }
    });

    TreeViewerColumn inputNameColumn = new TreeViewerColumn(inputsViewer, SWT.FILL);
    inputNameColumn.getColumn().setText(Messages.input);
    inputNameColumn
            .setEditingSupport(new WidgetInputNameEditingSupport(inputsViewer, definition, page, context));
    inputNameColumn.setLabelProvider(new ColumnLabelProvider() {
        @Override
        public String getText(Object element) {
            if (element instanceof WidgetComponent) {
                return ((WidgetComponent) element).getInputName();
            } else {
                return "";
            }
        }
    });

    context.bindValue(ViewersObservables.observeInput(inputsViewer),
            PojoProperties.value(PageWidgetsWizardPage.class, "page").observe(this));

    inputsViewer.expandAll();

    final Composite buttonComposite = new Composite(viewerComposite, SWT.NONE);
    buttonComposite.setLayoutData(GridDataFactory.fillDefaults().grab(false, true).create());
    buttonComposite
            .setLayout(GridLayoutFactory.fillDefaults().numColumns(1).margins(0, 0).spacing(0, 3).create());

    final Button addButton = new Button(buttonComposite, SWT.FLAT);
    addButton.setText(Messages.Add);
    addButton.setLayoutData(GridDataFactory.fillDefaults().grab(true, false)
            .hint(DEFAULT_BUTTON_WIDTH_HINT, SWT.DEFAULT).create());
    addButton.addSelectionListener(new SelectionAdapter() {
        @Override
        public void widgetSelected(SelectionEvent e) {
            SelectPageWidgetDialog dialog = new SelectPageWidgetDialog(Display.getDefault().getActiveShell(),
                    definition, page, null, null);
            if (dialog.open() == Dialog.OK) {
                Component widget = dialog.getWidget();
                messageProvider.setFieldLabel(messages, widget.getId(), dialog.getDisplayName());
                messageProvider.setFieldDescription(messages, widget.getId(), dialog.getDescription());
                Component component = (Component) ((IStructuredSelection) inputsViewer.getSelection())
                        .getFirstElement();
                if (component instanceof Group) {
                    ((Group) component).getWidget().add(widget);
                } else {
                    page.getWidget().add(widget);
                }
                inputsViewer.refresh();
                getContainer().updateMessage();
                getContainer().updateButtons();
            }

        }
    });

    editButton = new Button(buttonComposite, SWT.FLAT);
    editButton.setText(Messages.update);
    editButton.setLayoutData(GridDataFactory.fillDefaults().grab(true, false)
            .hint(DEFAULT_BUTTON_WIDTH_HINT, SWT.DEFAULT).create());
    editButton.addSelectionListener(new SelectionAdapter() {
        @Override
        public void widgetSelected(SelectionEvent e) {
            Component component = (Component) ((IStructuredSelection) inputsViewer.getSelection())
                    .getFirstElement();
            SelectPageWidgetDialog dialog = new SelectPageWidgetDialog(Display.getDefault().getActiveShell(),
                    definition, page, component, EcoreUtil.copy(component));
            dialog.setDisplayName(messageProvider.getFieldLabel(messages, component.getId()));
            dialog.setDescription(messageProvider.getFieldDescription(messages, component.getId()));
            if (dialog.open() == Dialog.OK) {
                Component widget = dialog.getWidget();
                messageProvider.setFieldLabel(messages, widget.getId(), dialog.getDisplayName());
                messageProvider.setFieldDescription(messages, widget.getId(), dialog.getDescription());
                if (component != null && component.eContainer() instanceof Group) {
                    Group group = (Group) component.eContainer();
                    int i = group.getWidget().indexOf(component);
                    group.getWidget().remove(i);
                    group.getWidget().add(i, widget);
                } else {
                    int i = page.getWidget().indexOf(component);
                    page.getWidget().remove(i);
                    page.getWidget().add(i, widget);
                }

                inputsViewer.refresh();
                getContainer().updateMessage();
                getContainer().updateButtons();
            }

        }
    });

    upButton = new Button(buttonComposite, SWT.FLAT);
    upButton.setText(Messages.up);
    upButton.setLayoutData(GridDataFactory.fillDefaults().grab(true, false)
            .hint(DEFAULT_BUTTON_WIDTH_HINT, SWT.DEFAULT).create());
    upButton.addSelectionListener(new SelectionAdapter() {
        @Override
        public void widgetSelected(SelectionEvent e) {
            Component selectedWidget = (Component) ((IStructuredSelection) inputsViewer.getSelection())
                    .getFirstElement();
            int index = page.getWidget().indexOf(selectedWidget);
            if (index > 0) {
                page.getWidget().move(index - 1, selectedWidget);
            }
            inputsViewer.refresh();
        }
    });

    downButton = new Button(buttonComposite, SWT.FLAT);
    downButton.setText(Messages.down);
    downButton.setLayoutData(GridDataFactory.fillDefaults().grab(true, false)
            .hint(DEFAULT_BUTTON_WIDTH_HINT, SWT.DEFAULT).create());
    downButton.addSelectionListener(new SelectionAdapter() {
        @Override
        public void widgetSelected(SelectionEvent e) {
            Component selectedWidget = (Component) ((IStructuredSelection) inputsViewer.getSelection())
                    .getFirstElement();
            int index = page.getWidget().indexOf(selectedWidget);
            if (index < page.getWidget().size() - 1) {
                page.getWidget().move(index + 1, selectedWidget);
            }
            inputsViewer.refresh();
        }
    });

    removeButton = new Button(buttonComposite, SWT.FLAT);
    removeButton.setText(Messages.remove);
    removeButton.setLayoutData(GridDataFactory.fillDefaults().grab(true, false)
            .hint(DEFAULT_BUTTON_WIDTH_HINT, SWT.DEFAULT).create());
    removeButton.addSelectionListener(new SelectionAdapter() {
        @Override
        public void widgetSelected(SelectionEvent e) {
            page.getWidget().removeAll(((IStructuredSelection) inputsViewer.getSelection()).toList());
            inputsViewer.refresh();
        }
    });
}

From source file:org.bonitasoft.studio.connectors.ui.TestConnectorResultDialog.java

License:Open Source License

@Override
protected Control createDialogArea(Composite parent) {
    mainComposite = new Composite(parent, SWT.NONE);
    mainComposite.setLayoutData(GridDataFactory.fillDefaults().grab(true, true).create());
    mainComposite.setLayout(new GridLayout(2, false));
    Composite descriptionComposite = new Composite(mainComposite, SWT.NONE);
    descriptionComposite.setLayout(GridLayoutFactory.fillDefaults().margins(10, SWT.DEFAULT).create());
    descriptionComposite.setLayoutData(GridDataFactory.fillDefaults().grab(true, false).span(2, 1).create());
    CLabel description = new CLabel(descriptionComposite, SWT.WRAP);
    description.setLayoutData(GridDataFactory.fillDefaults().grab(true, false).create());
    description.setText(Messages.unserializableOutputWarning);
    description.setImage(PlatformUI.getWorkbench().getSharedImages()
            .getImage(org.eclipse.ui.ISharedImages.IMG_OBJS_WARN_TSK));
    if (testResultAsMap != null && !testResultAsMap.isEmpty()) {
        Iterator<Entry<String, Object>> it = testResultAsMap.entrySet().iterator();
        int cpt = 0;
        while (it.hasNext()) {
            cpt++;//from w w  w.j  ava2  s  .c o  m
            Entry<String, Object> entry = it.next();
            final Label outputLabel = new Label(mainComposite, SWT.NONE);
            outputLabel.setText(toConnectorOutputLabel(cpt));
            outputLabel.setLayoutData(
                    GridDataFactory.fillDefaults().grab(false, false).align(SWT.FILL, SWT.TOP).create());
            Object value = entry.getValue();
            if (value == null || value instanceof String || value instanceof Long || value instanceof Integer) {//TODO check other types
                Text text = new Text(mainComposite, SWT.BORDER | SWT.MULTI);
                text.setLayoutData(GridDataFactory.fillDefaults().grab(true, true).create());
                if (entry.getValue() != null) {
                    text.setText(entry.getValue().toString());
                } else {
                    text.setText("NULL"); //$NON-NLS-1$
                }
                text.setEditable(false);
                text.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_WHITE));
            } else if (value instanceof Document) {
                TreeViewer viewer = new TreeViewer(mainComposite, SWT.BORDER);
                viewer.getTree().setLayoutData(GridDataFactory.fillDefaults().grab(true, true).create());

                viewer.setContentProvider(new XmlDocumentContentProvider());
                viewer.getControl().setLayoutData(
                        GridDataFactory.fillDefaults().grab(true, true).hint(SWT.DEFAULT, 300).create());
                viewer.setLabelProvider(new XmlLabelProvider());
                viewer.setInput(value);
                viewer.getTree().setFont(BonitaStudioFontRegistry.getCommentsFont());
                viewer.expandAll();
            } else {
                TreeViewer viewer = new TreeViewer(mainComposite, SWT.BORDER);
                viewer.getTree().setLayoutData(GridDataFactory.fillDefaults().grab(true, true).create());

                viewer.setContentProvider(new PojoBrowserContentProvider());
                viewer.getControl().setLayoutData(
                        GridDataFactory.fillDefaults().grab(true, true).hint(SWT.DEFAULT, 300).create());
                viewer.setLabelProvider(new JavaUILabelProvider() {

                    @Override
                    public Image getImage(Object element) {
                        if (element instanceof Pair<?, ?>) {
                            return getImage(((Pair<?, ?>) element).getFirst());
                        } else if (element == null) {
                            return null;
                        }
                        return super.getImage(element);
                    }

                    @Override
                    public String getText(Object item) {
                        if (item instanceof String) {
                            return (String) item;
                        }
                        if (item instanceof Pair<?, ?>) {

                            Object first = ((Pair<?, ?>) item).getFirst();
                            if (first instanceof IType) {
                                return getText(first) + " : " + ((Pair<?, ?>) item).getSecond().toString();
                            } else {
                                return getText(first);
                            }
                        } else if (item instanceof IMember) {
                            return super.getText(item);
                        } else if (item != null) {
                            return item.toString();
                        } else {
                            return null;
                        }
                    }
                });
                new Label(mainComposite, SWT.NONE);
                Label warningLabel = new Label(mainComposite, SWT.NONE);
                GridDataFactory.fillDefaults().align(SWT.LEFT, SWT.CENTER).grab(true, false)
                        .applyTo(warningLabel);
                warningLabel.setText(Messages.testConnectorPOJOWarning);
                viewer.setInput(value);

            }

        }
    } else if (testResultAsSet != null) {
        listViewer = new ListViewer(mainComposite, SWT.BORDER | SWT.V_SCROLL | SWT.H_SCROLL);
        GridData gd = GridDataFactory.fillDefaults().grab(true, true).create();
        gd.horizontalSpan = 2;
        listViewer.getList().setLayoutData(GridDataFactory.fillDefaults().grab(true, true).create());
        listViewer.setContentProvider(new IStructuredContentProvider() {

            @Override
            public void inputChanged(Viewer viewer, Object oldInput, Object newInput) {
            }

            @Override
            public void dispose() {
            }

            @Override
            public Object[] getElements(Object inputElement) {
                return ((Set) inputElement).toArray();
            }
        });
        listViewer.setLabelProvider(new LabelProvider());
        listViewer.setInput(testResultAsSet);

    } else if (resultExecption != null) {
        Label foundExceptionLabel = new Label(mainComposite, SWT.NONE);
        foundExceptionLabel.setText(Messages.exceptionFound);
        GridData gd = new GridData();
        gd.horizontalSpan = 2;
        foundExceptionLabel.setLayoutData(gd);
        Text text = new Text(mainComposite, SWT.BORDER | SWT.MULTI | SWT.V_SCROLL | SWT.H_SCROLL);
        text.setLayoutData(new GridData(GridData.FILL_BOTH));

        String exception = ""; //$NON-NLS-1$
        Throwable e = resultExecption;
        while (e != null) {
            exception = exception.concat(e.toString() + "\n"); //$NON-NLS-1$
            e = e.getCause();
        }

        if (exception.contains("engine.exception.ClassLoaderException")
                && exception.contains("unserializable output")) {
            exception = "The connector contains an unserializable output. You can't use the wizard currently.\n"
                    + "The workaround is to use a dedicated test processes with the connector and modify the connector outputs and store them in data in order to display them in a form.\n"
                    + "Then, you will have just to Run the process.\n\n" + exception;
        }

        text.setText(exception);
        text.setEditable(false);
        text.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_WHITE));
    } else {
        Label successMessage = new Label(mainComposite, SWT.NONE);
        successMessage.setText(Messages.successMessage);
        GridData gd = new GridData();
        gd.horizontalSpan = 2;
        successMessage.setLayoutData(gd);
    }

    return parent;
}

From source file:org.bonitasoft.studio.connectors.ui.wizard.page.MoveConnectorWizardPage.java

License:Open Source License

private void createProcessTreeControl(final EMFDataBindingContext dbc, final Composite parent) {
    final Label label = new Label(parent, SWT.NONE);
    label.setLayoutData(GridDataFactory.swtDefaults().span(2, 1).create());
    label.setText(Messages.chooseTargetStepOrProcess);

    final TreeViewer processTreeViewer = new FilteredTree(parent, SWT.BORDER | SWT.SINGLE, new PatternFilter(),
            true).getViewer();/*  w w w .java  2s  .  c  om*/
    processTreeViewer.getControl().getParent().setLayoutData(
            GridDataFactory.fillDefaults().grab(true, true).span(2, 1).hint(SWT.DEFAULT, 300).create());
    processTreeViewer.setLabelProvider(new ElementLabelProvider(adapterFactory));
    processTreeViewer.setContentProvider(new AdapterFactoryContentProvider(adapterFactory));
    processTreeViewer.addFilter(new ConnectableElementViewerFilter(sourceProcess));
    processTreeViewer.setInput(ModelHelper.getMainProcess(sourceProcess));
    processTreeViewer.expandAll();
    dbc.bindValue(ViewersObservables.observeSingleSelection(processTreeViewer), targetLocationObservable,
            updateValueStrategy().withValidator(selectionValidator()).create(), null);
}

From source file:org.bonitasoft.studio.diagram.custom.wizard.AbstractManageDiagramWizardPage.java

License:Open Source License

protected Composite doCreateControl(final Composite parent, final DataBindingContext context) {
    final Composite mainComposite = new Composite(parent, SWT.NONE);
    mainComposite.setLayout(fillDefaults().numColumns(2).equalWidth(true).create());

    diagramTree = new FilteredTree(mainComposite, SWT.MULTI | SWT.BORDER, new PatternFilter(), false);
    final TreeViewer treeViewer = diagramTree.getViewer();
    treeViewer.getTree().setData(SWTBOT_WIDGET_ID_KEY, SWTBOT_ID_OPEN_DIAGRAM_TREE_ID);
    diagramTree.setLayoutData(/*www.j av  a 2  s.c om*/
            GridDataFactory.fillDefaults().grab(true, true).span(2, 1).hint(SWT.DEFAULT, 250).create());

    treeViewer.setContentProvider(
            new ObservableListTreeContentProvider(diagramListObservableFactory(), diagramTreeStructure()));
    treeViewer.setLabelProvider(new DiagramLabelProvider(new FileStoreLabelProvider()));

    final IObservableList selectionObservable = PojoObservables.observeList(this, "selectedDiagrams");
    context.bindList(ViewersObservables.observeMultiSelection(diagramTree.getViewer()), selectionObservable);
    context.addValidationStatusProvider(new MultiValidator() {

        @Override
        protected IStatus validate() {
            return selectionObservable.isEmpty() ? ValidationStatus.error(Messages.noDiagramSelected)
                    : ValidationStatus.ok();
        }
    });
    treeViewer.addDoubleClickListener(new IDoubleClickListener() {

        @Override
        public void doubleClick(final DoubleClickEvent arg0) {
            if (getWizard().canFinish()) {
                if (getWizard().performFinish()) {
                    ((WizardDialog) getContainer()).close();
                }
            }

        }
    });
    treeViewer.setInput(diagramRepositoryStore);
    treeViewer.getTree().setFocus();
    defaultSelection(selectionObservable);
    return mainComposite;
}

From source file:org.bonitasoft.studio.groovy.ui.dialog.ScriptResultDialog.java

License:Open Source License

@Override
protected Control createDialogArea(Composite parent) {
    mainComposite = new Composite(parent, SWT.NONE);
    mainComposite.setLayoutData(GridDataFactory.fillDefaults().hint(400, 200).grab(true, true).create());
    mainComposite.setLayout(new GridLayout(2, false));
    new Label(mainComposite, SWT.NONE).setText("Result");
    Object value = result;/*from  w w w . j  a va 2s  . co  m*/
    if (value == null || value instanceof String || value instanceof Long || value instanceof Integer) {//TODO check other types
        Text text = new Text(mainComposite, SWT.BORDER | SWT.MULTI | SWT.V_SCROLL | SWT.H_SCROLL);
        text.setLayoutData(GridDataFactory.fillDefaults().grab(true, true).create());
        if (value != null) {
            text.setText(value.toString());
        } else {
            text.setText("NULL"); //$NON-NLS-1$
        }
        text.setEditable(false);
        text.setBackground(Display.getCurrent().getSystemColor(SWT.COLOR_WHITE));
    } else if (value instanceof Document) {
        TreeViewer viewer = new TreeViewer(mainComposite, SWT.BORDER);
        viewer.getTree().setLayoutData(GridDataFactory.fillDefaults().grab(true, true).create());

        viewer.setContentProvider(new XmlDocumentContentProvider());
        viewer.getControl()
                .setLayoutData(GridDataFactory.fillDefaults().grab(true, true).hint(SWT.DEFAULT, 300).create());
        viewer.setLabelProvider(new XmlLabelProvider());
        viewer.setInput(value);
        viewer.getTree().setFont(BonitaStudioFontRegistry.getCommentsFont());
        viewer.expandAll();
    } else {
        TreeViewer viewer = new TreeViewer(mainComposite, SWT.BORDER);
        viewer.getTree().setLayoutData(GridDataFactory.fillDefaults().grab(true, true).create());

        viewer.setContentProvider(new PojoBrowserContentProvider());
        viewer.getControl()
                .setLayoutData(GridDataFactory.fillDefaults().grab(true, true).hint(SWT.DEFAULT, 300).create());
        viewer.setLabelProvider(new JavaUILabelProvider() {

            @Override
            public Image getImage(Object element) {
                if (element instanceof Pair<?, ?>) {
                    return getImage(((Pair<?, ?>) element).getFirst());
                } else if (element == null) {
                    return null;
                }
                return super.getImage(element);
            }

            @Override
            public String getText(Object item) {
                if (item instanceof String) {
                    return (String) item;
                }
                if (item instanceof Pair<?, ?>) {

                    Object first = ((Pair<?, ?>) item).getFirst();
                    if (first instanceof IType) {
                        return getText(first) + " : " + ((Pair<?, ?>) item).getSecond().toString();
                    } else {
                        return getText(first);
                    }
                } else if (item instanceof IMember) {
                    return super.getText(item);
                } else if (item != null) {
                    return item.toString();
                } else {
                    return null;
                }
            }
        });
        viewer.setInput(value);
    }

    return parent;
}

From source file:org.brainwy.liclipsetext.shared_ui.outline.BaseOutlinePage.java

License:Open Source License

/**
 * Parsed partition creates an outline that shows imports/classes/methods
 *///from  w w  w  .j a v  a 2 s .  co m
protected void createParsedOutline() {
    final TreeViewer tree = getTreeViewer();
    IDocumentProvider provider = editorView.getDocumentProvider();
    document = provider.getDocument(editorView.getEditorInput());
    tree.setAutoExpandLevel(2);
    tree.setContentProvider(new ParsedContentProvider());
    tree.setLabelProvider(new ParsedLabelProvider(imageCache));
    tree.setInput(getOutlineModel().getRoot());
}