Example usage for org.eclipse.jface.databinding.viewers.typed ViewerProperties multipleSelection

List of usage examples for org.eclipse.jface.databinding.viewers.typed ViewerProperties multipleSelection

Introduction

In this page you can find the example usage for org.eclipse.jface.databinding.viewers.typed ViewerProperties multipleSelection.

Prototype

public static <S extends ISelectionProvider, T> IViewerListProperty<S, T> multipleSelection(
        Class<T> elementType) 

Source Link

Document

An alternative version of #multipleSelection() which casts the property to the argument element type.

Usage

From source file:org.eclipse.jface.examples.databinding.snippets.Snippet028DuplexingObservableValue.java

License:Open Source License

private void bindUI() {
    IObservableList<MovieInfo> movies = new WritableList<>();
    movies.add(new MovieInfo("007: Quantum of Solace", "October 31, 2008", "Marc Forster", "Robert Wade"));
    movies.add(new MovieInfo("Batman Begins", "June 15, 2005", "Christopher Nolan", "David S. Goyer"));
    movies.add(new MovieInfo("Cloverfield", "January 18, 2008", "Matt Reeves", "Drew Goddard"));
    movies.add(new MovieInfo("The Dark Knight", "July 18, 2008", "Christopher Nolan", "David S. Goyer"));
    movies.add(new MovieInfo("Finding Nemo", "May 30, 2003", "Andrew Stanton", "Andrew Stanton"));
    movies.add(new MovieInfo("Get Smart", "June 20, 2008", "Peter Segal", "Tom J. Astle"));
    movies.add(new MovieInfo("Indiana Jones and the Kingdom of the Crystal Skull", "May 22, 2008",
            "Steven Spielberg", "Drunken Lemurs"));
    movies.add(new MovieInfo("Iron Man", "May 2, 2008", "Jon Favreau", "Mark Fergus"));
    movies.add(new MovieInfo("Raiders of the Lost Ark", "June 12, 1981", "Steven Spielberg", "George Lucas"));
    movies.add(new MovieInfo("Valkyrie", "December 25, 2008", "Bryan Singer", "Christopher McQuarrie"));
    movies.add(new MovieInfo("Wall-E", "June 27, 2008", "Andrew Stanton", "Andrew Stanton"));
    movies.add(new MovieInfo("Wanted", "June 27, 2008", "Timur Bekmambetov", "Michael Brandt"));

    ViewerSupport.bind(viewer, movies, BeanProperties.values(MovieInfo.class,
            new String[] { "title", "releaseDate", "director", "writer" }));

    // Select Batman Begins and The Dark Knight, which have the same
    // director and writer
    viewer.setSelection(new StructuredSelection(new Object[] { movies.get(1), movies.get(3) }));

    DataBindingContext dbc = new DataBindingContext();

    IObservableList<MovieInfo> selections = ViewerProperties.multipleSelection(MovieInfo.class).observe(viewer);
    dbc.bindValue(WidgetProperties.text(SWT.Modify).observe(title), DuplexingObservableValue
            .withDefaults(BeanProperties.value("title").observeDetail(selections), "", "<Multiple titles>"));
    dbc.bindValue(WidgetProperties.text(SWT.Modify).observe(releaseDate), DuplexingObservableValue.withDefaults(
            BeanProperties.value("releaseDate").observeDetail(selections), "", "<Multiple dates>"));
    dbc.bindValue(WidgetProperties.text(SWT.Modify).observe(director), DuplexingObservableValue.withDefaults(
            BeanProperties.value("director").observeDetail(selections), "", "<Multiple directors>"));
    dbc.bindValue(WidgetProperties.text(SWT.Modify).observe(writer), DuplexingObservableValue
            .withDefaults(BeanProperties.value("writer").observeDetail(selections), "", "<Multiple writers>"));
}