Example usage for org.eclipse.jface.databinding.viewers ViewersObservables observeMultiSelection

List of usage examples for org.eclipse.jface.databinding.viewers ViewersObservables observeMultiSelection

Introduction

In this page you can find the example usage for org.eclipse.jface.databinding.viewers ViewersObservables observeMultiSelection.

Prototype

@Deprecated
public static IViewerObservableList observeMultiSelection(Viewer viewer) 

Source Link

Document

Returns an observable list that tracks the current selection of the given viewer.

Usage

From source file:ch.acanda.eclipse.pmd.properties.RuleSetConfigurationTable.java

License:Open Source License

private void initDataBindings() {
    final DataBindingContext bindingContext = new DataBindingContext();
    ////from   ww  w.ja  v a  2  s.  c  om
    final ObservableListContentProvider listContentProvider = new ObservableListContentProvider();
    tableViewer.setContentProvider(listContentProvider);
    //
    final IObservableList ruleSetsObserveList = BeansObservables.observeList(Realm.getDefault(), model,
            "ruleSets");
    tableViewer.setInput(ruleSetsObserveList);
    //
    final IObservableValue tableObserveEnabledObserveWidget = SWTObservables.observeEnabled(table);
    final IObservableValue modelPMDEnabledObserveValue = BeansObservables.observeValue(model, "PMDEnabled");
    bindingContext.bindValue(tableObserveEnabledObserveWidget, modelPMDEnabledObserveValue, null, null);
    //
    final IObservableList tableViewerObserveMultiSelection = ViewersObservables
            .observeMultiSelection(tableViewer);
    final IObservableList selectedRuleSetsObserveList = BeansObservables.observeList(Realm.getDefault(), model,
            "selectedRuleSets");
    bindingContext.bindList(tableViewerObserveMultiSelection, selectedRuleSetsObserveList, null, null);
    //
    final IObservableSet tableViewerObserveCheckedElements = ViewersObservables
            .observeCheckedElements(tableViewer, RuleSetViewModel.class);
    final IObservableSet activeConfigurationsObserveSet = BeansObservables.observeSet(Realm.getDefault(), model,
            "activeRuleSets");
    bindingContext.bindSet(tableViewerObserveCheckedElements, activeConfigurationsObserveSet, null, null);
}

From source file:com.rcpcompany.uibindings.internal.ViewerBindingImpl.java

License:Open Source License

/**
 * <!-- begin-user-doc --> <!-- end-user-doc -->
 * /*from w w w  . j  a va 2s.c  om*/
 * @generated NOT
 */
@Override
public IObservableList getMultipleSelection() {
    // TODO SWTB
    if (multipleSelection == null) {
        multipleSelection = ViewersObservables.observeMultiSelection(getViewer());
    }
    return multipleSelection;
}

From source file:eu.numberfour.n4js.n4mf.ui.wizard.N4MFWizardNewProjectCreationPage.java

License:Open Source License

private void initApiViewerBinding(DataBindingContext dbc, ListViewer apiViewer) {
    dbc.bindList(ViewersObservables.observeMultiSelection(apiViewer),
            PojoProperties.list(N4MFProjectInfo.class, IMPLEMENTED_PROJECTS_PROP_NAME).observe(projectInfo));
}

From source file:eu.numberfour.n4js.n4mf.ui.wizard.N4MFWizardTestedProjectPage.java

License:Open Source License

@Override
public void createControl(Composite parent) {
    Composite listComposite = new Composite(parent, NONE);
    listComposite.setLayout(new FillLayout());

    ListViewer projectListViewer = new ListViewer(listComposite, SWT.BORDER | SWT.MULTI);
    projectListViewer.setContentProvider(ArrayContentProvider.getInstance());
    projectListViewer.setInput(getNonTestProjects());

    // Data binding
    DataBindingContext databindingContext = new DataBindingContext();
    parent.addDisposeListener(e -> databindingContext.dispose());

    databindingContext.bindList(ViewersObservables.observeMultiSelection(projectListViewer), PojoProperties
            .list(N4MFProjectInfo.class, N4MFProjectInfo.TESTED_PROJECT_PROP_NAME).observe(projectInfo));

    setControl(listComposite);/*  ww  w.jav a2 s  . com*/
}

From source file:org.bonitasoft.studio.dependencies.ui.dialog.SelectJarsDialog.java

License:Open Source License

@Override
protected Control createDialogArea(Composite parent) {
    Control control = super.createDialogArea(parent);

    UpdateValueStrategy selectionStartegy = new UpdateValueStrategy();
    selectionStartegy.setAfterGetValidator(new IValidator() {

        @Override//from w  w w .  j a  v a 2s.  c om
        public IStatus validate(Object value) {
            if (value == null) {
                return ValidationStatus.error("Selection is empty");
            }
            return Status.OK_STATUS;
        }
    });

    context.bindList(ViewersObservables.observeMultiSelection(tableViewer),
            PojoProperties.list(SelectJarsDialog.class, "selectedJars").observe(this));
    context.bindValue(ViewersObservables.observeSingleSelection(tableViewer),
            PojoProperties.value(SelectJarsDialog.class, "selectedJar").observe(this), selectionStartegy, null);

    return control;
}

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(//from   ww w .ja  va 2 s.  co m
            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.eclipse.rcptt.ctx.parameters.ui.ParametersContextEditor.java

License:Open Source License

private void createPanel(Composite parent, FormToolkit toolkit) {
    Composite panel = toolkit.createComposite(parent);
    GridLayoutFactory.fillDefaults().applyTo(panel);
    GridDataFactory.fillDefaults().grab(false, true).applyTo(panel);

    Button addButton = toolkit.createButton(panel, "Add", SWT.PUSH);
    GridDataFactory.fillDefaults().grab(true, false).applyTo(addButton);
    addButton.setImage(Images.getImageDescriptor(ISharedImages.IMG_OBJ_ADD).createImage());
    addButton.addSelectionListener(new SelectionAdapter() {

        public void widgetSelected(SelectionEvent e) {
            addNew();//from   w  w  w .j  a v a 2s.  c  om
        }
    });

    Button removeButton = toolkit.createButton(panel, "Remove", SWT.PUSH);
    GridDataFactory.fillDefaults().grab(true, false).applyTo(removeButton);
    removeButton.setImage(Images.getImageDescriptor(ISharedImages.IMG_ETOOL_DELETE).createImage());
    dbc.bindValue(SWTObservables.observeEnabled(removeButton), new ComputedValue() {

        protected Object calculate() {
            IViewerObservableList selection = ViewersObservables.observeMultiSelection(viewer);
            if (selection.size() == 1 && selection.get(0) == newParameterItem)
                return false;
            else
                return !selection.isEmpty();
        }
    });
    removeButton.addSelectionListener(new SelectionAdapter() {

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

From source file:org.eclipse.rcptt.ctx.preferences.ui.PreferencesContextEditor.java

License:Open Source License

private Composite createPanel(Composite parent, FormToolkit toolkit) {
    Composite panel = toolkit.createComposite(parent);
    GridLayoutFactory.fillDefaults().applyTo(panel);

    Button importButton = toolkit.createButton(panel, "Import Preferences...", SWT.PUSH);
    GridDataFactory.fillDefaults().grab(true, false).applyTo(importButton);
    importButton.setImage(Images.getImageDescriptor(Images.PREFERENCES_IMPORT).createImage());

    importButton.addSelectionListener(new SelectionAdapter() {

        public void widgetSelected(SelectionEvent e) {
            PreferencesImportWizard wizard = new PreferencesImportWizard(PreferencesContextEditor.this);
            WizardDialog dialog = new WizardDialog(WorkbenchUtils.getShell(), wizard);
            dialog.open();/*from w w  w . j  av  a 2  s. c om*/
        }
    });

    Button addButton = toolkit.createButton(panel, "Add...", SWT.PUSH);
    GridDataFactory.fillDefaults().grab(true, false).applyTo(addButton);
    addButton.setImage(Images.getImageDescriptor(Images.PREFERENCES_IMPORT).createImage());

    addButton.addSelectionListener(new SelectionAdapter() {

        public void widgetSelected(SelectionEvent e) {
            PreferencesAddWizard wizard = new PreferencesAddWizard(PreferencesContextEditor.this);
            WizardDialog dialog = new WizardDialog(WorkbenchUtils.getShell(), wizard);
            dialog.open();
        }
    });

    Button removeButton = toolkit.createButton(panel, "Remove", SWT.PUSH);
    GridDataFactory.fillDefaults().grab(true, false).applyTo(removeButton);
    removeButton.setImage(PlatformUI.getWorkbench().getSharedImages()
            .getImageDescriptor(ISharedImages.IMG_ETOOL_DELETE).createImage());
    dbc.bindValue(SWTObservables.observeEnabled(removeButton), new ComputedValue() {

        protected Object calculate() {
            IViewerObservableList selection = ViewersObservables.observeMultiSelection(viewer);
            return !selection.isEmpty();
        }
    });
    removeButton.addSelectionListener(new SelectionAdapter() {

        public void widgetSelected(SelectionEvent e) {
            removeSelected();
        }
    });
    return panel;
}

From source file:org.eclipse.rcptt.ui.commons.EObjectTable.java

License:Open Source License

@Override
protected void fillActions(IToolBarManager toolBarManager) {
    viewerSelection = ViewersObservables.observeMultiSelection(viewer);

    addTool = new Action() {
        @Override/*from   w w w.  j  a v  a  2 s  .  c  om*/
        public void run() {
            Object[] newItems = handleAdd();
            doAdd(newItems);
        }
    };
    addTool.setText(Messages.EObjectTable_Add);
    addTool.setImageDescriptor(
            PlatformUI.getWorkbench().getSharedImages().getImageDescriptor(ISharedImages.IMG_OBJ_ADD));
    toolBarManager.add(addTool);

    // Remove action
    removeTool = new Action() {
        @Override
        public void run() {
            handleRemove();
        }
    };
    removeTool.setText(Messages.EObjectTable_Remove);
    removeTool.setImageDescriptor(
            PlatformUI.getWorkbench().getSharedImages().getImageDescriptor(ISharedImages.IMG_ETOOL_DELETE));
    removeTool.setDisabledImageDescriptor(PlatformUI.getWorkbench().getSharedImages()
            .getImageDescriptor(ISharedImages.IMG_ETOOL_DELETE_DISABLED));

    removeToolComputedValue = new ComputedValue() {
        @Override
        protected Object calculate() {
            return canRemove();
        }
    };

    toolBarManager.add(removeTool);

    upToolComputedValue = new ComputedValue() {
        @Override
        protected Object calculate() {
            return calculateUpToolEnablement();
        }
    };
    upTool = new Action() {
        @Override
        public void run() {
            handleUp();
        }
    };
    upTool.setText(Messages.EObjectTable_Up);
    upTool.setImageDescriptor(Images.getImageDescriptor(Images.UP));

    toolBarManager.add(upTool);

    downToolComputedValue = new ComputedValue() {
        @Override
        protected Object calculate() {
            return calculateDownToolEnablement();
        }
    };
    downTool = new Action() {
        @Override
        public void run() {
            handleDown();
        }
    };
    downTool.setText(Messages.EObjectTable_Down);
    downTool.setImageDescriptor(Images.getImageDescriptor(Images.DOWN));
    toolBarManager.add(downTool);

    update(content);
}

From source file:org.eclipse.recommenders.internal.snipmatch.rcp.SnippetsView.java

License:Open Source License

@Override
public void createPartControl(final Composite parent) {
    Composite composite = new Composite(parent, SWT.NONE);
    GridLayoutFactory.swtDefaults().applyTo(composite);

    txtSearch = new Text(composite, SWT.BORDER | SWT.ICON_SEARCH | SWT.SEARCH | SWT.CANCEL);
    txtSearch.setMessage(Messages.SEARCH_PLACEHOLDER_SEARCH_TEXT);
    GridDataFactory.fillDefaults().align(SWT.FILL, SWT.CENTER).grab(true, false).span(1, 1).applyTo(txtSearch);
    txtSearch.addModifyListener(new ModifyListener() {

        @Override/*from w  ww.j a va2s .  c o m*/
        public void modifyText(ModifyEvent e) {
            refreshUI();
        }
    });
    txtSearch.setData(SWT_ID, SEARCH_FIELD);
    txtSearch.addKeyListener(new KeyAdapter() {
        @Override
        public void keyPressed(KeyEvent e) {
            if (e.keyCode == SWT.ARROW_DOWN && tree.getItemCount() != 0) {
                tree.setFocus();
                tree.setSelection(tree.getTopItem());
            }
        }
    });

    Composite treeComposite = new Composite(composite, SWT.NONE);

    TreeColumnLayout treeLayout = new TreeColumnLayout();
    treeComposite.setLayout(treeLayout);
    treeComposite.setLayoutData(new GridData(SWT.FILL, SWT.FILL, true, true, 1, 1));

    treeViewer = new TreeViewer(treeComposite, SWT.BORDER | SWT.FULL_SELECTION | SWT.MULTI | SWT.VIRTUAL);
    ColumnViewerToolTipSupport.enableFor(treeViewer);
    tree = treeViewer.getTree();
    tree.setData(SWT_ID, TREE);
    tree.setHeaderVisible(true);
    tree.setLinesVisible(true);

    TreeViewerColumn snippetViewerColumn = new TreeViewerColumn(treeViewer, SWT.NONE);
    TreeColumn snippetColumn = snippetViewerColumn.getColumn();
    treeLayout.setColumnData(snippetColumn, new ColumnWeightData(1, ColumnWeightData.MINIMUM_WIDTH, true));
    snippetColumn.setText(Messages.TABLE_COLUMN_TITLE_SNIPPETS);
    snippetViewerColumn.setLabelProvider(new StyledCellLabelProvider() {

        @Override
        public void update(ViewerCell cell) {
            Object element = cell.getElement();
            StyledString text = new StyledString();
            if (element instanceof SnippetRepositoryConfiguration) {
                SnippetRepositoryConfiguration config = (SnippetRepositoryConfiguration) element;

                text.append(config.getName());
                text.append(" "); //$NON-NLS-1$

                if (prefs.isRepositoryEnabled(config)) {
                    text.append(format(Messages.TABLE_CELL_SUFFIX_SNIPPETS, fetchNumberOfSnippets(config)),
                            StyledString.COUNTER_STYLER);
                } else {
                    text.append(Messages.TABLE_REPOSITORY_DISABLED, StyledString.COUNTER_STYLER);
                }

                cell.setImage(images.getImage(Images.OBJ_REPOSITORY));
            } else if (element instanceof KnownSnippet) {
                KnownSnippet knownSnippet = (KnownSnippet) element;
                text.append(toStringRepresentation.apply(knownSnippet));
            }
            cell.setText(text.toString());
            cell.setStyleRanges(text.getStyleRanges());
            super.update(cell);
        }
    });

    treeViewer.addOpenListener(new IOpenListener() {

        @Override
        public void open(OpenEvent event) {
            if (selectionConsistsOnlyElementsOf(KnownSnippet.class)) {
                editSnippets();
            }
        }
    });
    treeViewer.setUseHashlookup(true);
    treeViewer.setContentProvider(new ILazyTreeContentProvider() {

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

        @Override
        public void dispose() {
        }

        @Override
        public void updateElement(Object parent, int index) {
            if (parent instanceof IViewSite) {
                SnippetRepositoryConfiguration config = availableRepositories.get(index);
                treeViewer.replace(parent, index, config);
                treeViewer.setChildCount(config, getChildren(config).length);
            } else if (parent instanceof SnippetRepositoryConfiguration) {
                treeViewer.replace(parent, index, getChildren(parent)[index]);
            }
        }

        private Object[] getChildren(Object element) {
            if (element instanceof SnippetRepositoryConfiguration) {
                return filteredSnippetsGroupedByRepoName.get((SnippetRepositoryConfiguration) element)
                        .toArray();
            }
            return new Object[0];
        }

        @Override
        public void updateChildCount(Object element, int currentChildCount) {
            int count = 0;

            if (element instanceof IViewSite) {
                count = availableRepositories.size();
            }

            if (availableRepositories.contains(element)) {
                count = getChildren(element).length;
            }

            if (count != currentChildCount) {
                treeViewer.setChildCount(element, count);
            }
        }

        @Override
        public Object getParent(Object element) {
            if (element instanceof KnownSnippet) {
                KnownSnippet knownSnippet = (KnownSnippet) element;
                return knownSnippet.config;
            }
            return null;
        }
    });

    selection = ViewersObservables.observeMultiSelection(treeViewer);

    createActions(parent);
    addToolBar(parent);
    addContextMenu();

    refreshUI();
}