Example usage for com.google.gwt.view.client SingleSelectionModel setSelected

List of usage examples for com.google.gwt.view.client SingleSelectionModel setSelected

Introduction

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

Prototype

public void setSelected(T object, boolean selected) 

Source Link

Usage

From source file:org.jboss.as.console.client.administration.accesscontrol.ui.MemberDialog.java

License:Open Source License

@Override
@SuppressWarnings("unchecked")
public Widget asWidget() {
    ProvidesKey<Principal> keyProvider = Principal::getId;

    AbstractCell<Principal> roleCell = new AbstractCell<Principal>() {
        @Override//from  w ww.  j  a v a2s  . c  om
        public void render(final Context context, final Principal value, final SafeHtmlBuilder sb) {
            sb.append(Templates.memberItem("navigation-column-item", value));
        }
    };
    DefaultCellList<Principal> list = new DefaultCellList<>(roleCell, keyProvider);
    list.setPageSize(30);
    list.setKeyboardPagingPolicy(INCREASE_RANGE);
    list.setKeyboardSelectionPolicy(BOUND_TO_SELECTION);

    ListDataProvider<Principal> dataProvider = new ListDataProvider<>(keyProvider);
    dataProvider.setList(Principals.orderedByType().compound(Principals.orderedByName())
            .immutableSortedCopy(unassignedPrincipals));
    dataProvider.addDataDisplay(list);

    SingleSelectionModel<Principal> selectionModel = new SingleSelectionModel<>(keyProvider);
    list.setSelectionModel(selectionModel);
    selectionModel.setSelected(dataProvider.getList().get(0), true);
    Scheduler.get().scheduleDeferred(() -> list.setFocus(true));

    Label errorMessage = new Label();
    errorMessage.setVisible(false);
    errorMessage.getElement().getStyle().setColor("#c82e2e");
    errorMessage.getElement().getStyle().setPadding(7, PX);

    VerticalPanel layout = new VerticalPanel();
    layout.setStyleName("window-content");
    layout.add(errorMessage);
    layout.add(list);

    DialogueOptions options = new DialogueOptions(event -> {
        if (selectionModel.getSelectedObject() == null) {
            errorMessage.setText(Console.CONSTANTS.pleaseSelectPrincipal());
            errorMessage.setVisible(true);
        } else {
            Assignment assignment = new Assignment(selectionModel.getSelectedObject(), role, include);
            circuit.dispatch(new AddAssignment(assignment, ROLE_TO_PRINCIPAL));
            presenter.closeWindow();
        }
    }, event -> presenter.closeWindow());

    return new WindowContentBuilder(layout, options).build();
}

From source file:org.jboss.ballroom.client.widgets.tables.MenuList.java

License:Open Source License

MenuList() {

    super(new MenuCell(), (Resources) GWT.create(Resources.class));

    final SingleSelectionModel<String> selectionModel = new SingleSelectionModel<String>();
    selectionModel.addSelectionChangeHandler(new SelectionChangeEvent.Handler() {
        @Override//  w ww.  ja  v a2 s  . co m
        public void onSelectionChange(SelectionChangeEvent event) {
            for (final NamedCommand cmd : commands) {

                String cmdName = selectionModel.getSelectedObject();
                if (cmd.name.equals(cmdName)) {
                    if (popup != null)
                        popup.hide();

                    selectionModel.setSelected(cmdName, false);

                    Scheduler.get().scheduleDeferred(new Scheduler.ScheduledCommand() {
                        @Override
                        public void execute() {
                            cmd.execute(selectedRow);
                        }
                    });

                    break;
                }
            }
        }
    });

    setSelectionModel(selectionModel);
}

From source file:org.jbpm.datamodeler.editor.client.editors.DataModelBrowser.java

License:Apache License

public void setDataModel(DataModelTO dataModel) {
    this.dataModel = dataModel;
    this.dataObjects = dataModel.getDataObjects();
    modelName.setText(dataModel.getName());

    // We create a new selection model due to a bug found in GWT when we change e.g. from one data object with 9 rows
    // to one with 3 rows and the table was sorted.
    // Several tests has been done and the final workaround (not too bad) we found is to
    //  1) sort the table again
    //  2) create a new selection model
    //  3) populate the table with new items
    //  3) select the first row

    SingleSelectionModel selectionModel2 = new SingleSelectionModel<DataObjectTO>();
    dataObjectsTable.setSelectionModel(selectionModel2);

    selectionModel2.addSelectionChangeHandler(new SelectionChangeEvent.Handler() {

        @Override//from w w w . j  ava2 s . c  o m
        public void onSelectionChange(SelectionChangeEvent event) {
            if (!skipNextOnChange) {
                DataObjectTO selectedObjectTO = ((SingleSelectionModel<DataObjectTO>) dataObjectsTable
                        .getSelectionModel()).getSelectedObject();
                notifyObjectSelected(selectedObjectTO);
            }
            skipNextOnChange = false;
        }
    });

    ArrayList<DataObjectTO> sortBuffer = new ArrayList<DataObjectTO>();
    sortBuffer.addAll(dataObjects);
    Collections.sort(sortBuffer, new DataObjectComparator());

    dataObjectsProvider.getList().clear();
    dataObjectsProvider.getList().addAll(sortBuffer);
    dataObjectsProvider.flush();
    dataObjectsProvider.refresh();

    dataObjectsTable.getColumnSortList()
            .push(new ColumnSortList.ColumnSortInfo(dataObjectsTable.getColumn(1), true));

    if (dataObjects.size() > 0) {
        dataObjectsTable.setKeyboardSelectedRow(0);
        selectionModel2.setSelected(sortBuffer.get(0), true);
    }

    // Set the first row selected again. Sounds crazy, but it's part of the workaround, don't remove this line.
    if (dataObjects.size() > 0) {
        dataObjectsTable.setKeyboardSelectedRow(0);
    }
}

From source file:org.jbpm.datamodeler.editor.client.editors.DataObjectBrowser.java

License:Apache License

private void setDataObject(DataObjectTO dataObject) {
    this.dataObject = dataObject;
    objectName.setText(dataObject.getName() + "::" + dataObject.getPackageName());

    //We create a new selection model due to a bug found in GWT when we change e.g. from one data object with 9 rows
    // to one with 3 rows and the table was sorted.
    //Several tests has been done and the final workaround (not too bad) we found is to
    // 1) sort the table again
    // 2) create a new selection model
    // 3) populate the table with new items
    // 3) select the first row
    SingleSelectionModel selectionModel2 = new SingleSelectionModel<ObjectPropertyTO>();
    dataObjectPropertiesTable.setSelectionModel(selectionModel2);

    selectionModel2.addSelectionChangeHandler(new SelectionChangeEvent.Handler() {

        @Override/*from   ww w  . ja  v  a  2s . c o  m*/
        public void onSelectionChange(SelectionChangeEvent event) {
            ObjectPropertyTO selectedPropertyTO = ((SingleSelectionModel<ObjectPropertyTO>) dataObjectPropertiesTable
                    .getSelectionModel()).getSelectedObject();
            notifyFieldSelected(selectedPropertyTO);
        }
    });

    ArrayList<ObjectPropertyTO> sortBuffer = new ArrayList<ObjectPropertyTO>();
    sortBuffer.addAll(dataObject.getProperties());
    Collections.sort(sortBuffer, new ObjectPropertyComparator("name"));

    dataObjectProperties = dataObject.getProperties();
    dataObjectPropertiesProvider.getList().clear();
    dataObjectPropertiesProvider.getList().addAll(sortBuffer);
    dataObjectPropertiesProvider.flush();
    dataObjectPropertiesProvider.refresh();

    dataObjectPropertiesTable.getColumnSortList()
            .push(new ColumnSortList.ColumnSortInfo(dataObjectPropertiesTable.getColumn(1), true));

    if (dataObjectProperties.size() > 0) {
        dataObjectPropertiesTable.setKeyboardSelectedRow(0);
        selectionModel2.setSelected(sortBuffer.get(0), true);
    }

    //set the first row selected again. Sounds crazy, but's part of the workaround, don't remove this line.
    if (dataObjectProperties.size() > 0) {
        dataObjectPropertiesTable.setKeyboardSelectedRow(0);
    }

    if (dataObjectProperties.size() == 0) {
        //there are no properties.
        //fire an empty property seleccion event in order to notify the
        notifyFieldSelected(null);
    }
}

From source file:org.kie.workbench.common.screens.datamodeller.client.widgets.DataModelBrowser.java

License:Apache License

private void loadDataModel(DataModelTO dataModel) {
    this.dataObjects = dataModel.getDataObjects();
    modelName.setText(dataModel.getName());

    // We create a new selection model due to a bug found in GWT when we change e.g. from one data object with 9 rows
    // to one with 3 rows and the table was sorted.
    // Several tests has been done and the final workaround (not too bad) we found is to
    //  1) sort the table again
    //  2) create a new selection model
    //  3) populate the table with new items
    //  3) select the first row

    SingleSelectionModel selectionModel2 = new SingleSelectionModel<DataObjectTO>();
    dataObjectsTable.setSelectionModel(selectionModel2);

    selectionModel2.addSelectionChangeHandler(new SelectionChangeEvent.Handler() {

        @Override//from ww w.  ja  v  a  2s.co  m
        public void onSelectionChange(SelectionChangeEvent event) {
            if (!skipNextOnChange) {
                DataObjectTO selectedObjectTO = ((SingleSelectionModel<DataObjectTO>) dataObjectsTable
                        .getSelectionModel()).getSelectedObject();
                notifyObjectSelected(selectedObjectTO);
            }
            skipNextOnChange = false;
        }
    });

    ArrayList<DataObjectTO> sortBuffer = new ArrayList<DataObjectTO>();
    sortBuffer.addAll(dataObjects);
    Collections.sort(sortBuffer, new DataObjectComparator());

    dataObjectsProvider.getList().clear();
    dataObjectsProvider.getList().addAll(sortBuffer);
    dataObjectsProvider.flush();
    dataObjectsProvider.refresh();

    dataObjectsTable.getColumnSortList()
            .push(new ColumnSortList.ColumnSortInfo(dataObjectsTable.getColumn(1), true));

    if (dataObjects.size() > 0) {
        dataObjectsTable.setKeyboardSelectedRow(0);
        selectionModel2.setSelected(sortBuffer.get(0), true);
    }

    // Set the first row selected again. Sounds crazy, but it's part of the workaround, don't remove this line.
    if (dataObjects.size() > 0) {
        dataObjectsTable.setKeyboardSelectedRow(0);
    }
}

From source file:org.kie.workbench.common.screens.datamodeller.client.widgets.DataObjectBrowser.java

License:Apache License

private void setDataObject(DataObject dataObject) {
    this.dataObject = dataObject;
    refreshObjectSelector(dataObject);//from ww  w.j a  va  2 s .  c  om

    //We create a new selection model due to a bug found in GWT when we change e.g. from one data object with 9 rows
    // to one with 3 rows and the table was sorted.
    //Several tests has been done and the final workaround (not too bad) we found is to
    // 1) sort the table again
    // 2) create a new selection model
    // 3) populate the table with new items
    // 3) select the first row
    SingleSelectionModel selectionModel2 = new SingleSelectionModel<ObjectProperty>();
    dataObjectPropertiesTable.setSelectionModel(selectionModel2);

    selectionModel2.addSelectionChangeHandler(new SelectionChangeEvent.Handler() {

        @Override
        public void onSelectionChange(SelectionChangeEvent event) {
            ObjectProperty selectedProperty = ((SingleSelectionModel<ObjectProperty>) dataObjectPropertiesTable
                    .getSelectionModel()).getSelectedObject();
            notifyFieldSelected(selectedProperty);
        }
    });

    List<ObjectProperty> dataObjectProperties = (dataObject != null)
            ? DataModelerUtils.getManagedProperties(dataObject)
            : Collections.<ObjectProperty>emptyList();

    ArrayList<ObjectProperty> sortBuffer = new ArrayList<ObjectProperty>();
    if (dataObject != null) {
        sortBuffer.addAll(dataObjectProperties);
    }
    Collections.sort(sortBuffer, new ObjectPropertyComparator("name"));

    dataObjectPropertiesProvider.getList().clear();
    dataObjectPropertiesProvider.getList().addAll(sortBuffer);
    dataObjectPropertiesProvider.flush();
    dataObjectPropertiesProvider.refresh();

    dataObjectPropertiesTable.getColumnSortList()
            .push(new ColumnSortList.ColumnSortInfo(dataObjectPropertiesTable.getColumn(2), true));

    if (dataObjectProperties.size() > 0) {
        dataObjectPropertiesTable.setKeyboardSelectedRow(0);
        selectionModel2.setSelected(sortBuffer.get(0), true);
    }

    //set the first row selected again. Sounds crazy, but's part of the workaround, don't remove this line.
    if (dataObjectProperties.size() > 0) {
        dataObjectPropertiesTable.setKeyboardSelectedRow(0);
    }
}

From source file:org.kie.workbench.common.screens.datamodeller.client.widgets.old.DataModelBrowser.java

License:Apache License

private void loadDataModel(DataModel dataModel) {
    this.dataObjects = new ArrayList<DataObject>();
    this.dataObjects.addAll(dataModel.getDataObjects());

    // We create a new selection model due to a bug found in GWT when we change e.g. from one data object with 9 rows
    // to one with 3 rows and the table was sorted.
    // Several tests has been done and the final workaround (not too bad) we found is to
    //  1) sort the table again
    //  2) create a new selection model
    //  3) populate the table with new items
    //  3) select the first row

    SingleSelectionModel selectionModel2 = new SingleSelectionModel<DataObject>();
    dataObjectsTable.setSelectionModel(selectionModel2);

    selectionModel2.addSelectionChangeHandler(new SelectionChangeEvent.Handler() {

        @Override//from w  w  w.  ja va 2  s .  c o m
        public void onSelectionChange(SelectionChangeEvent event) {
            if (!skipNextOnChange) {
                DataObject selectedObject = ((SingleSelectionModel<DataObject>) dataObjectsTable
                        .getSelectionModel()).getSelectedObject();
                notifyObjectSelected(selectedObject);
            }
            skipNextOnChange = false;
        }
    });

    ArrayList<DataObject> sortBuffer = new ArrayList<DataObject>();
    sortBuffer.addAll(dataObjects);
    Collections.sort(sortBuffer, new DataObjectComparator());

    dataObjectsProvider.getList().clear();
    dataObjectsProvider.getList().addAll(sortBuffer);
    dataObjectsProvider.flush();
    dataObjectsProvider.refresh();

    dataObjectsTable.getColumnSortList()
            .push(new ColumnSortList.ColumnSortInfo(dataObjectsTable.getColumn(1), true));

    if (dataObjects.size() > 0) {
        dataObjectsTable.setKeyboardSelectedRow(0);
        selectionModel2.setSelected(sortBuffer.get(0), true);
    }

    // Set the first row selected again. Sounds crazy, but it's part of the workaround, don't remove this line.
    if (dataObjects.size() > 0) {
        dataObjectsTable.setKeyboardSelectedRow(0);
    }
}

From source file:org.mklab.taskit.client.ui.admin.UserEditorViewImpl.java

License:Apache License

private void clearUserSelection() {
    @SuppressWarnings("unchecked")
    SingleSelectionModel<UserProxy> selectionModel = (SingleSelectionModel<UserProxy>) this.userList
            .getSelectionModel();/*from  ww w.j av a2s.  c  o  m*/
    for (int i = 0; i < this.userList.getVisibleItemCount(); i++) {
        UserProxy user = this.userList.getVisibleItem(i);
        selectionModel.setSelected(user, false);
    }
}

From source file:thothbot.parallax.demo.client.Demo.java

License:Open Source License

public void onModuleLoad() {
    GWT.setUncaughtExceptionHandler(new GWT.UncaughtExceptionHandler() {
        public void onUncaughtException(Throwable throwable) {
            Log.error("Uncaught exception", throwable);
            if (!GWT.isScript()) {
                String text = "Uncaught exception: ";
                while (throwable != null) {
                    StackTraceElement[] stackTraceElements = throwable.getStackTrace();
                    text += throwable.toString() + "\n";

                    for (int i = 0; i < stackTraceElements.length; i++)
                        text += "    at " + stackTraceElements[i] + "\n";

                    throwable = throwable.getCause();
                    if (throwable != null)
                        text += "Caused by: ";
                }//  www. ja v a 2 s.  c om

                DialogBox dialogBox = new DialogBox(true);
                DOM.setStyleAttribute(dialogBox.getElement(), "backgroundColor", "#ABCDEF");
                text = text.replaceAll(" ", "&nbsp;");
                dialogBox.setHTML("<pre>" + text + "</pre>");
                dialogBox.center();
            }
        }
    });

    // Generate the source code for examples
    GWT.create(GenerateSourceSignal.class);

    // Generate the demo file
    GWT.create(GenerateFacebookSignal.class);

    resources.css().ensureInjected();

    // Create the application shell.
    final SingleSelectionModel<ContentWidget> selectionModel = new SingleSelectionModel<ContentWidget>();
    final DataModel treeModel = new DataModel(selectionModel);
    Set<ContentWidget> contentWidgets = treeModel.getAllContentWidgets();

    index = new Index();
    // Hide loading panel
    RootPanel.get("loading").getElement().getStyle().setVisibility(Visibility.HIDDEN);
    // Attach index panel
    RootLayoutPanel.get().add(index);

    index.getTabIndex().addClickHandler(new ClickHandler() {
        public void onClick(ClickEvent event) {
            displayIndex();
        }
    });

    indexWidget = new IndexWidget(treeModel);
    shell = new DemoShell(treeModel, index);

    // Prefetch examples when opening the Category tree nodes.
    final List<Category> prefetched = new ArrayList<Category>();
    final CellTree mainMenu = shell.getMainMenu();

    mainMenu.addOpenHandler(new OpenHandler<TreeNode>() {
        public void onOpen(OpenEvent<TreeNode> event) {
            Object value = event.getTarget().getValue();
            if (!(value instanceof Category))
                return;

            Category category = (Category) value;
            if (!prefetched.contains(category)) {
                prefetched.add(category);
                Prefetcher.prefetch(category.getSplitPoints());
            }
        }
    });

    // Always prefetch.
    Prefetcher.start();

    // Change the history token when a main menu item is selected.
    selectionModel.addSelectionChangeHandler(new SelectionChangeEvent.Handler() {
        public void onSelectionChange(SelectionChangeEvent event) {
            ContentWidget selected = selectionModel.getSelectedObject();
            if (selected != null) {
                index.setContentWidget(shell);
                History.newItem("!" + selected.getContentWidgetToken(), true);
            }
        }
    });

    // Setup a history handler to reselect the associate menu item.
    final ValueChangeHandler<String> historyHandler = new ValueChangeHandler<String>() {
        public void onValueChange(ValueChangeEvent<String> event) {
            // Get the content widget associated with the history token.
            ContentWidget contentWidget = treeModel
                    .getContentWidgetForToken(event.getValue().replaceFirst("!", ""));

            if (contentWidget == null)
                return;

            // Expand the tree node associated with the content.
            Category category = treeModel.getCategoryForContentWidget(contentWidget);
            TreeNode node = mainMenu.getRootTreeNode();
            int childCount = node.getChildCount();
            for (int i = 0; i < childCount; i++) {
                if (node.getChildValue(i) == category) {
                    node.setChildOpen(i, true, true);
                    break;
                }
            }

            // Display the content widget.
            displayContentWidget(contentWidget);

            //Add GA statistics
            trackPageview(Window.Location.getHref());

            // Select the node in the tree.
            selectionModel.setSelected(contentWidget, true);
        }
    };

    History.addValueChangeHandler(historyHandler);

    // Show the initial example.
    if (History.getToken().length() > 0)
        History.fireCurrentHistoryState();

    // Use the first token available.
    else
        displayIndex();

    // Generate a site map.
    createSiteMap(contentWidgets);
}