Example usage for com.google.gwt.view.client MultiSelectionModel MultiSelectionModel

List of usage examples for com.google.gwt.view.client MultiSelectionModel MultiSelectionModel

Introduction

In this page you can find the example usage for com.google.gwt.view.client MultiSelectionModel MultiSelectionModel.

Prototype

public MultiSelectionModel(ProvidesKey<T> keyProvider) 

Source Link

Document

Constructs a MultiSelectionModel with the given key provider.

Usage

From source file:com.agnie.useradmin.contextmgr.client.presenter.shared.ui.CTXUsersCellTable.java

License:Open Source License

public CTXUsersCellTable() {
    initWidget(uiBinder.createAndBindUi(this));
    multiSelectionModel = new MultiSelectionModel<UserApplicationCtxRegistrationPx>(keyProvider);
    table.setPageSize(ApplicationConfig.getInstance().getPageSize());

    Column<UserApplicationCtxRegistrationPx, Boolean> select = new Column<UserApplicationCtxRegistrationPx, Boolean>(
            new CheckboxCell(true, false)) {
        @Override/*from ww  w.j  av  a2s.c  o m*/
        public Boolean getValue(UserApplicationCtxRegistrationPx object) {
            return multiSelectionModel.isSelected(object);
        }
    };
    table.addColumn(select, messages.select());

    Column<UserApplicationCtxRegistrationPx, String> fname = new TextColumn<UserApplicationCtxRegistrationPx>() {
        @Override
        public String getValue(UserApplicationCtxRegistrationPx object) {
            return object.getUser().getFirstName();
        }
    };
    fname.setSortable(true);
    fname.setDataStoreName("user.firstName");
    table.addColumn(fname, messages.fName());

    Column<UserApplicationCtxRegistrationPx, String> lName = new TextColumn<UserApplicationCtxRegistrationPx>() {
        @Override
        public String getValue(UserApplicationCtxRegistrationPx object) {
            return object.getUser().getLastName();
        }
    };
    lName.setSortable(true);
    lName.setDataStoreName("user.lastName");
    table.addColumn(lName, messages.lName());

    Column<UserApplicationCtxRegistrationPx, String> userName = new TextColumn<UserApplicationCtxRegistrationPx>() {
        @Override
        public String getValue(UserApplicationCtxRegistrationPx object) {
            return object.getUser().getUserName();
        }
    };
    userName.setSortable(true);
    userName.setDataStoreName("user.userName");
    table.addColumn(userName, messages.uName());

    Column<UserApplicationCtxRegistrationPx, String> status = new TextColumn<UserApplicationCtxRegistrationPx>() {
        @Override
        public String getValue(UserApplicationCtxRegistrationPx object) {
            return (object.getStatus() != null ? object.getStatus().getLocalized()
                    : RequestStatus.DISABLED.getLocalized());
        }
    };
    status.setSortable(true);
    status.setDataStoreName("status");
    table.addColumn(status, messages.status());

    Column<UserApplicationCtxRegistrationPx, String> roles = new Column<UserApplicationCtxRegistrationPx, String>(
            new ButtonCell()) {
        @Override
        public String getValue(UserApplicationCtxRegistrationPx object) {
            return messages.view_edit();
        }
    };
    roles.setFieldUpdater(new FieldUpdater<UserApplicationCtxRegistrationPx, String>() {

        @Override
        public void update(int index, UserApplicationCtxRegistrationPx object, String value) {
            if (presenter.checkPermission(Permissions.CONTEXT_USER_ROLE_MANAGER)) {
                getViewFactory().getCTXUsersView().getUserCTXRoles(object);
            }
        }
    });
    table.addColumn(roles, messages.roles());

    Column<UserApplicationCtxRegistrationPx, String> adminRoles = new Column<UserApplicationCtxRegistrationPx, String>(
            new ButtonCell()) {
        @Override
        public String getValue(UserApplicationCtxRegistrationPx object) {
            return messages.view_edit();
        }
    };
    adminRoles.setFieldUpdater(new FieldUpdater<UserApplicationCtxRegistrationPx, String>() {

        @Override
        public void update(int index, UserApplicationCtxRegistrationPx object, String value) {
            if (presenter.checkPermission(Permissions.CONTEXT_USER_ADMIN_ROLE_MANAGER)) {
                getViewFactory().getCTXUsersView().getUserCTXAdminRoles(object);
            }
        }
    });
    table.addColumn(adminRoles, messages.adminRoles());

    VerticalPanel panel = new VerticalPanel();
    Label label = new Label(messages.no_data());
    panel.add(label);
    panel.setCellHorizontalAlignment(label, HasHorizontalAlignment.ALIGN_CENTER);
    table.setEmptyTableWidget(label);
    table.setSelectionModel(multiSelectionModel,
            DefaultSelectionEventManager.<UserApplicationCtxRegistrationPx>createCustomManager(
                    new MultiSelectEventTranslator<UserApplicationCtxRegistrationPx>()));
    pager.setRangeLimited(true);
    pager.setDisplay(table);
    AsyncHandler columnSortHandler = new AsyncHandler(table);
    table.addColumnSortHandler(columnSortHandler);
}

From source file:com.agnie.useradmin.main.client.presenter.sahered.ui.AppUsersCellTable.java

License:Open Source License

public AppUsersCellTable() {
    initWidget(uiBinder.createAndBindUi(this));
    multiSelectionModel = new MultiSelectionModel<UserApplicationRegistrationPx>(keyProvider);
    table.setPageSize(ApplicationConfig.getInstance().getPageSize());

    Column<UserApplicationRegistrationPx, Boolean> select = new Column<UserApplicationRegistrationPx, Boolean>(
            new CheckboxCell(true, false)) {
        @Override// ww  w.j  a  v  a 2 s.c  om
        public Boolean getValue(UserApplicationRegistrationPx object) {
            return multiSelectionModel.isSelected(object);
        }
    };
    table.addColumn(select, messages.select());

    Column<UserApplicationRegistrationPx, String> fName = new TextColumn<UserApplicationRegistrationPx>() {
        @Override
        public String getValue(UserApplicationRegistrationPx object) {
            return object.getUser().getFirstName();
        }
    };
    fName.setSortable(true);
    fName.setDataStoreName("user.firstName");
    table.addColumn(fName, messages.fName());

    Column<UserApplicationRegistrationPx, String> lName = new TextColumn<UserApplicationRegistrationPx>() {
        @Override
        public String getValue(UserApplicationRegistrationPx object) {
            return object.getUser().getLastName();
        }
    };
    lName.setSortable(true);
    lName.setDataStoreName("user.lastName");
    table.addColumn(lName, messages.lName());

    Column<UserApplicationRegistrationPx, String> userName = new TextColumn<UserApplicationRegistrationPx>() {
        @Override
        public String getValue(UserApplicationRegistrationPx object) {
            return object.getUser().getUserName();
        }
    };
    userName.setSortable(true);
    userName.setDataStoreName("user.userName");
    table.addColumn(userName, messages.uName());

    Column<UserApplicationRegistrationPx, String> status = new TextColumn<UserApplicationRegistrationPx>() {
        @Override
        public String getValue(UserApplicationRegistrationPx object) {
            return (object.getStatus() != null ? object.getStatus().getLocalized()
                    : RequestStatus.DISABLED.getLocalized());
        }
    };
    status.setSortable(true);
    status.setDataStoreName("status");
    table.addColumn(status, messages.status());

    Column<UserApplicationRegistrationPx, String> roles = new Column<UserApplicationRegistrationPx, String>(
            new ButtonCell()) {
        @Override
        public String getValue(UserApplicationRegistrationPx object) {
            return messages.view_edit();
        }
    };
    roles.setFieldUpdater(new FieldUpdater<UserApplicationRegistrationPx, String>() {

        @Override
        public void update(int index, UserApplicationRegistrationPx object, String value) {
            if (presenter.checkPermission(Permissions.APPLICATION_USER_ROLE_MANAGER)) {
                getViewFactory().getAppUsersView().getUserAppRoles(object);
            }
        }
    });
    table.addColumn(roles, messages.roles());

    Column<UserApplicationRegistrationPx, String> adminRoles = new Column<UserApplicationRegistrationPx, String>(
            new ButtonCell()) {
        @Override
        public String getValue(UserApplicationRegistrationPx object) {
            return messages.view_edit();
        }
    };
    adminRoles.setFieldUpdater(new FieldUpdater<UserApplicationRegistrationPx, String>() {

        @Override
        public void update(int index, UserApplicationRegistrationPx object, String value) {
            if (presenter.checkPermission(Permissions.APPLICATION_USER_ADMIN_ROLE_MANAGER)) {
                getViewFactory().getAppUsersView().getUserAppAdminRoles(object);
            }
        }
    });
    table.addColumn(adminRoles, messages.adminRoles());

    VerticalPanel panel = new VerticalPanel();
    Label label = new Label(messages.no_data());
    panel.add(label);
    panel.setCellHorizontalAlignment(label, HasHorizontalAlignment.ALIGN_CENTER);
    table.setEmptyTableWidget(label);
    table.setSelectionModel(multiSelectionModel,
            DefaultSelectionEventManager.<UserApplicationRegistrationPx>createCustomManager(
                    new MultiSelectEventTranslator<UserApplicationRegistrationPx>()));
    pager.setRangeLimited(true);
    pager.setDisplay(table);
    AsyncHandler columnSortHandler = new AsyncHandler(table);
    table.addColumnSortHandler(columnSortHandler);
}

From source file:com.agnie.useradmin.main.client.presenter.sahered.ui.ManageContextsCellTable.java

License:Open Source License

public ManageContextsCellTable() {
    initWidget(uiBinder.createAndBindUi(this));
    multiSelectionModel = new MultiSelectionModel<ContextPx>(keyProvider);
    table.setPageSize(ApplicationConfig.getInstance().getPageSize());

    Column<ContextPx, String> name = new Column<ContextPx, String>(new TextCell()) {
        @Override//  w  ww . j  a va2  s. com
        public String getValue(ContextPx object) {
            return object.getName();
        }
    };
    table.addColumn(name, I18.messages.name());

    Column<ContextPx, String> description = new Column<ContextPx, String>(new TextCell()) {
        @Override
        public String getValue(ContextPx object) {
            return object.getDescription();
        }
    };
    table.addColumn(description, I18.messages.description());

    VerticalPanel panel = new VerticalPanel();
    Label label = new Label(I18.messages.no_data());
    panel.add(label);
    panel.setCellHorizontalAlignment(label, HasHorizontalAlignment.ALIGN_CENTER);
    table.setEmptyTableWidget(label);
    table.setSelectionModel(multiSelectionModel,
            DefaultSelectionEventManager
                    .<ContextPx>createCustomManager(new MultiSelectEventTranslator<ContextPx>(
                            new MultiSelectEventTranslator.RowSelectCommand<ContextPx>() {
                                ContextPx selected;

                                @Override
                                public void execute() {
                                    getViewFactory().getManageContextsView().setManContextViewData(selected);
                                    getViewFactory().getManageContextsView().enableSaveButton(false);
                                    getViewFactory().getManageContextsView().deleteBtnVisible(true);
                                    getViewFactory().getManageContextsView().setContextToDelete(selected);
                                }

                                @Override
                                public void setSelected(ContextPx selected) {
                                    this.selected = selected;
                                }
                            })));

    pager.setRangeLimited(true);
    pager.setDisplay(table);
    AsyncHandler columnSortHandler = new AsyncHandler(table);
    table.addColumnSortHandler(columnSortHandler);
}

From source file:com.agnie.useradmin.main.client.presenter.sahered.ui.PermissionsCellTable.java

License:Open Source License

public PermissionsCellTable() {
    initWidget(uiBinder.createAndBindUi(this));
    multiSelectionModel = new MultiSelectionModel<PermissionPx>(keyProvider);
    table.setPageSize(ApplicationConfig.getInstance().getPageSize());

    Column<PermissionPx, Boolean> select = new Column<PermissionPx, Boolean>(new CheckboxCell(true, false)) {
        @Override/*from   w w  w.ja  v a  2 s .  c  o  m*/
        public Boolean getValue(PermissionPx object) {
            return multiSelectionModel.isSelected(object);
        }
    };
    table.addColumn(select, "");
    table.setColumnWidth(select, 10, Unit.PX);

    Column<PermissionPx, PermissionPx> permissions = new Column<PermissionPx, PermissionPx>(
            new PermissionsCell()) {
        @Override
        public PermissionPx getValue(PermissionPx object) {
            return object;
        }
    };
    table.addColumn(permissions, I18.messages.permissions());

    VerticalPanel panel = new VerticalPanel();
    Label label = new Label(I18.messages.no_data());
    panel.add(label);
    panel.setCellHorizontalAlignment(label, HasHorizontalAlignment.ALIGN_CENTER);
    table.setEmptyTableWidget(label);
    table.setSelectionModel(multiSelectionModel,
            DefaultSelectionEventManager
                    .<PermissionPx>createCustomManager(new MultiSelectEventTranslator<PermissionPx>(
                            new MultiSelectEventTranslator.RowSelectCommand<PermissionPx>() {
                                PermissionPx selected;

                                @Override
                                public void execute() {
                                    getViewFactory().getListPermissionsView().setPermissionsViewData(selected);
                                    getViewFactory().getListPermissionsView().setPermSelToEdit(true);
                                    getViewFactory().getListPermissionsView().setPerPxToEdit(selected);
                                }

                                @Override
                                public void setSelected(PermissionPx selected) {
                                    this.selected = selected;
                                }
                            })));
    pager.setRangeLimited(true);
    pager.setDisplay(table);
    AsyncHandler columnSortHandler = new AsyncHandler(table);
    table.addColumnSortHandler(columnSortHandler);
}

From source file:com.agnie.useradmin.main.client.presenter.sahered.ui.RolesCellTable.java

License:Open Source License

public RolesCellTable() {
    initWidget(uiBinder.createAndBindUi(this));

    multiSelectionModel = new MultiSelectionModel<RolePx>(keyProvider);
    table.setPageSize(ApplicationConfig.getInstance().getPageSize());

    Column<RolePx, Boolean> select = new Column<RolePx, Boolean>(new CheckboxCell(true, false)) {
        @Override/*from ww w  .  j a v  a2  s .  c om*/
        public Boolean getValue(RolePx object) {
            return multiSelectionModel.isSelected(object);
        }
    };
    table.addColumn(select, "");
    table.setColumnWidth(select, 10, Unit.PX);

    Column<RolePx, RolePx> roles = new Column<RolePx, RolePx>(new RolesCell()) {
        @Override
        public RolePx getValue(RolePx object) {
            return object;
        }
    };
    table.addColumn(roles, I18.messages.role());

    VerticalPanel panel = new VerticalPanel();
    Label label = new Label(I18.messages.no_data());
    panel.add(label);
    panel.setCellHorizontalAlignment(label, HasHorizontalAlignment.ALIGN_CENTER);
    table.setEmptyTableWidget(label);
    table.setSelectionModel(multiSelectionModel, DefaultSelectionEventManager.<RolePx>createCustomManager(
            new MultiSelectEventTranslator<RolePx>(new MultiSelectEventTranslator.RowSelectCommand<RolePx>() {
                RolePx selected;

                @Override
                public void execute() {
                    getViewFactory().getListRolesView().setRoleSelToEdit(true);
                    getViewFactory().getListRolesView().setRolePxToEdit(selected);
                    presenter.getPermById(selected);
                }

                @Override
                public void setSelected(RolePx selected) {
                    this.selected = selected;
                }
            })));
    pager.setRangeLimited(true);
    pager.setDisplay(table);
    AsyncHandler columnSortHandler = new AsyncHandler(table);
    table.addColumnSortHandler(columnSortHandler);
}

From source file:com.akanoo.client.views.SharingPopupView.java

License:Apache License

private void setupCellList(CellList.Resources cellListResources) {
    selectionModel = new MultiSelectionModel<UserInfo>(UserInfo.keyprovider);

    // Construct a composite cell for contacts that includes a checkbox.
    List<HasCell<UserInfo, ?>> hasCells = new ArrayList<HasCell<UserInfo, ?>>();
    hasCells.add(new HasCell<UserInfo, Boolean>() {

        private CheckboxCell cell = new CheckboxCell(true, false);

        public Cell<Boolean> getCell() {
            return cell;
        }/*from  w  w  w  .  j  a  v a2s .c  o m*/

        public FieldUpdater<UserInfo, Boolean> getFieldUpdater() {
            return null;
        }

        public Boolean getValue(UserInfo object) {
            return selectionModel.isSelected(object);
        }
    });
    hasCells.add(new HasCell<UserInfo, UserInfo>() {

        private UserCell cell = new UserCell();

        public Cell<UserInfo> getCell() {
            return cell;
        }

        public FieldUpdater<UserInfo, UserInfo> getFieldUpdater() {
            return null;
        }

        public UserInfo getValue(UserInfo object) {
            return object;
        }
    });
    CompositeCell<UserInfo> friendCell = new CompositeCell<UserInfo>(hasCells) {
        @Override
        public void render(Context context, UserInfo value, SafeHtmlBuilder sb) {
            sb.appendHtmlConstant("<table><tbody><tr>");
            super.render(context, value, sb);
            sb.appendHtmlConstant("</tr></tbody></table>");
        }

        @Override
        protected Element getContainerElement(Element parent) {
            // Return the first TR element in the table.
            return parent.getFirstChildElement().getFirstChildElement().getFirstChildElement();
        }

        @Override
        protected <X> void render(Context context, UserInfo value, SafeHtmlBuilder sb,
                HasCell<UserInfo, X> hasCell) {
            Cell<X> cell = hasCell.getCell();
            sb.appendHtmlConstant("<td>");
            cell.render(context, hasCell.getValue(value), sb);
            sb.appendHtmlConstant("</td>");
        }
    };

    shares = new CellList<UserInfo>(friendCell, cellListResources, UserInfo.keyprovider);
    shares.setSelectionModel(selectionModel, DefaultSelectionEventManager.<UserInfo>createCheckboxManager());

    dataProvider = new ListDataProvider<UserInfo>(UserInfo.keyprovider);
    dataProvider.addDataDisplay(shares);

    selectionModel.addSelectionChangeHandler(this);
}

From source file:com.appspot.socialinquirer.client.view.PagesViewImpl.java

License:Apache License

/**
 * Instantiates a new pages view impl.//from   w  ww  . ja  va 2 s .c  o m
 *
 * @param constants the constants
 * @param master the master
 */
public PagesViewImpl(final EverScribeConstants constants, final boolean master) {
    this.constants = constants;
    templatesTable = new CellTable<Page>();
    SimplePager.Resources linkedHubPagerResources = GWT.create(SimplePager.Resources.class);
    templatesPaginator = new SimplePager(TextLocation.CENTER, linkedHubPagerResources, false, 0, true);
    templatesPaginator.setPageSize(5);
    templatesTable.setPageSize(5);
    templatesPaginator.setDisplay(templatesTable);
    final SelectionModel<Page> linkedHubConnectionsSelectionModel = new MultiSelectionModel<Page>(
            new KeyProvider<Page>());
    templatesTable.setSelectionModel(linkedHubConnectionsSelectionModel,
            DefaultSelectionEventManager.<Page>createCheckboxManager());
    initTableColumns(templatesTable, linkedHubConnectionsSelectionModel);

    initWidget(uiBinder.createAndBindUi(PagesViewImpl.this));
}

From source file:com.eucalyptus.webui.client.view.AccountViewImpl.java

License:Open Source License

public void initializeTable(int pageSize, ArrayList<SearchResultFieldDesc> fieldDescs) {
    tablePanel.clear();//from   ww w.ja v  a2  s. c  o m
    selectionModel = new MultiSelectionModel<SearchResultRow>(SearchResultRow.KEY_PROVIDER);
    selectionModel.addSelectionChangeHandler(new Handler() {
        @Override
        public void onSelectionChange(SelectionChangeEvent event) {
            Set<SearchResultRow> rows = selectionModel.getSelectedSet();
            LOG.log(Level.INFO, "Selection changed: " + rows);
            presenter.onSelectionChange(rows);
        }
    });
    table = new SearchResultTable(pageSize, fieldDescs, this.presenter, selectionModel);
    tablePanel.add(table);
    table.load();
}

From source file:com.google.gwt.sample.showcase.client.content.cell.CwCellBrowser.java

License:Apache License

/**
 * Initialize this example./*from   w  w  w .jav  a2s .  c om*/
 */
@ShowcaseSource
@Override
public Widget onInitialize() {
    final MultiSelectionModel<ContactInfo> selectionModel = new MultiSelectionModel<ContactInfo>(
            ContactDatabase.ContactInfo.KEY_PROVIDER);
    selectionModel.addSelectionChangeHandler(new SelectionChangeEvent.Handler() {
        public void onSelectionChange(SelectionChangeEvent event) {
            StringBuilder sb = new StringBuilder();
            boolean first = true;
            List<ContactInfo> selected = new ArrayList<ContactInfo>(selectionModel.getSelectedSet());
            Collections.sort(selected);
            for (ContactInfo value : selected) {
                if (first) {
                    first = false;
                } else {
                    sb.append(", ");
                }
                sb.append(value.getFullName());
            }
            selectedLabel.setText(sb.toString());
        }
    });

    cellBrowser = new CellBrowser(new ContactTreeViewModel(selectionModel), null);
    cellBrowser.setAnimationEnabled(true);

    // Create the UiBinder.
    Binder uiBinder = GWT.create(Binder.class);
    Widget widget = uiBinder.createAndBindUi(this);
    return widget;
}

From source file:com.google.gwt.sample.showcase.client.content.cell.CwCellTable.java

License:Apache License

/**
 * Initialize this example./*from   w w w  .j  a  v a2 s  . c  o m*/
 */
@ShowcaseSource
@Override
public Widget onInitialize() {
    // Create a CellTable.

    // Set a key provider that provides a unique key for each contact. If key is
    // used to identify contacts when fields (such as the name and address)
    // change.
    cellTable = new CellTable<ContactInfo>(ContactDatabase.ContactInfo.KEY_PROVIDER);
    cellTable.setWidth("100%", true);

    // Attach a column sort handler to the ListDataProvider to sort the list.
    ListHandler<ContactInfo> sortHandler = new ListHandler<ContactInfo>(
            ContactDatabase.get().getDataProvider().getList());
    cellTable.addColumnSortHandler(sortHandler);

    // Create a Pager to control the table.
    SimplePager.Resources pagerResources = GWT.create(SimplePager.Resources.class);
    pager = new SimplePager(TextLocation.CENTER, pagerResources, false, 0, true);
    pager.setDisplay(cellTable);

    // Add a selection model so we can select cells.
    final SelectionModel<ContactInfo> selectionModel = new MultiSelectionModel<ContactInfo>(
            ContactDatabase.ContactInfo.KEY_PROVIDER);
    cellTable.setSelectionModel(selectionModel,
            DefaultSelectionEventManager.<ContactInfo>createCheckboxManager());

    // Initialize the columns.
    initTableColumns(selectionModel, sortHandler);

    // Add the CellList to the adapter in the database.
    ContactDatabase.get().addDataDisplay(cellTable);

    // Create the UiBinder.
    Binder uiBinder = GWT.create(Binder.class);
    Widget widget = uiBinder.createAndBindUi(this);

    return widget;
}