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

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

Introduction

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

Prototype

public T getSelectedObject() 

Source Link

Document

Gets the currently-selected object.

Usage

From source file:org.jboss.as.console.client.v3.widgets.PropertyEditor.java

License:Open Source License

@SuppressWarnings("unchecked")
public Widget asWidget() {
    VerticalPanel panel = new VerticalPanel();
    panel.addStyleName("fill-layout-width");

    // table/*from ww  w.j av a  2  s. c  o m*/
    table = new DefaultCellTable<>(numRows, keyProvider);
    dataProvider = new ListDataProvider<>(keyProvider);
    dataProvider.addDataDisplay(table);
    final SingleSelectionModel<Property> selectionModel = new SingleSelectionModel<>(keyProvider);
    table.setSelectionModel(selectionModel);
    selectionModel.addSelectionChangeHandler(event -> {
        Property selection = selectionModel.getSelectedObject();
        if (selection == null) {
            propertyManager.onDeselect();
        } else {
            propertyManager.onSelect(selection);
        }
    });

    // columns
    Column<Property, String> keyColumn = new TextColumn<Property>() {
        @Override
        public String getValue(Property property) {
            return property.getName();
        }
    };
    keyColumn.setSortable(true);
    Column<Property, String> valueColumn;
    if (inlineEditing) {
        valueColumn = new Column<Property, String>(new DefaultEditTextCell()) {
            {
                setFieldUpdater((index, property, value) -> getPropertyValue(property).set(value));
            }

            @Override
            public String getValue(Property property) {
                return property.getValue().get(VALUE).asString();
            }
        };
    } else {
        valueColumn = new TextColumn<Property>() {
            @Override
            public String getValue(Property property) {
                return getPropertyValue(property).asString();
            }
        };
    }
    ColumnSortEvent.ListHandler<Property> sortHandler = new ColumnSortEvent.ListHandler<>(
            dataProvider.getList());
    sortHandler.setComparator(keyColumn, new Comparator<Property>() {
        @Override
        public int compare(Property o1, Property o2) {
            return o1.getName().toLowerCase().compareTo(o2.getName().toLowerCase());
        }
    });
    table.addColumn(keyColumn, Console.CONSTANTS.common_label_key());
    table.addColumn(valueColumn, Console.CONSTANTS.common_label_value());
    table.setColumnWidth(keyColumn, 40, Style.Unit.PCT);
    table.setColumnWidth(valueColumn, 60, Style.Unit.PCT);
    table.addColumnSortHandler(sortHandler);
    table.getColumnSortList().push(keyColumn);

    // tools
    if (!hideTools) {
        ToolStrip tools = new ToolStrip();
        addButton = new ToolButton(addLabel, event -> {
            addDialog.clearValues();
            propertyManager.openAddDialog(addDialog);
        });
        removeButton = new ToolButton(removeLabel, event -> {
            final Property selection = selectionModel.getSelectedObject();
            if (selection != null) {
                Feedback.confirm(Console.MESSAGES.removeProperty(),
                        Console.MESSAGES.removePropertyConfirm(selection.getName()),
                        new Feedback.ConfirmationHandler() {
                            @Override
                            public void onConfirmation(boolean isConfirmed) {
                                if (isConfirmed) {
                                    propertyManager.onRemove(selection);
                                }
                            }
                        });
            }
        });
        AddressTemplate effectiveAddress = operationAddress != null ? operationAddress
                : propertyManager.getAddress();
        if (effectiveAddress != null) {
            addButton.setOperationAddress(effectiveAddress.getTemplate(),
                    propertyManager.getAddOperationName());
            removeButton.setOperationAddress(effectiveAddress.getTemplate(),
                    propertyManager.getRemoveOperationName());
        }
        tools.addToolButtonRight(addButton);
        tools.addToolButtonRight(removeButton);
        panel.add(tools);
    }

    panel.add(table);
    DefaultPager pager = new DefaultPager();
    pager.setDisplay(table);
    panel.add(pager);
    return panel;
}

From source file:org.jboss.as.console.client.widgets.popups.ComboPicker.java

License:Open Source License

public ComboPicker(String cssSuffix) {

    cellList = new CellList<String>(new TextCell() {
        @Override//  w w  w  . j  a  v  a2 s  . co m
        public void render(Context context, String data, SafeHtmlBuilder sb) {
            String cssName = (context.getIndex() % 2 > 0) ? "combobox-item combobox-item-odd" : "combobox-item";

            if (data.equals(displayed.getActual()))
                cssName += " combobox-item-selected";

            sb.append(TEMPLATE.item(cssName, data));
        }

    });

    final SingleSelectionModel<String> selectionModel = new SingleSelectionModel<String>();
    cellList.setSelectionModel(selectionModel);

    selectionModel.addSelectionChangeHandler(new SelectionChangeEvent.Handler() {
        public void onSelectionChange(SelectionChangeEvent event) {
            String selectedValue = selectionModel.getSelectedObject();

            setDisplayedValue(selectedValue);
            popup.hide();

            onSelection(selectedValue);
        }
    });

    final String panelId = "popup_" + HTMLPanel.createUniqueId();
    popup = new PopupPanel(true, true) {

        @Override
        protected void onPreviewNativeEvent(Event.NativePreviewEvent event) {
            if (Event.ONKEYUP == event.getTypeInt()) {
                if (event.getNativeEvent().getKeyCode() == ESCAPE) {
                    // Dismiss when escape is pressed
                    popup.hide();
                }
            }
        }

        public void onBrowserEvent(Event event) {
            super.onBrowserEvent(event);
        }
    };

    popup.getElement().setId(panelId);

    popup.setStyleName("default-popup");

    popup.addStyleName("triangle-border");
    popup.addStyleName("top-left");

    popup.setWidget(cellList);

    displayed = new Display("");

    header = new HorizontalPanel();
    header.setStyleName("combobox" + cssSuffix);
    header.add(displayed);

    HTML icon = new HTML("<span style='font-size:18px;cursor:pointer'><i class='icon-caret-down'></i></span>");
    header.add(icon);

    displayed.getElement().getParentElement().setAttribute("width", "100%");

    icon.getParent().getElement().setAttribute("width", "18");

    //header.getElement().setAttribute("width", "95%");
    header.getElement().setAttribute("cellspacing", "0");
    header.getElement().setAttribute("cellpadding", "0");
    header.getElement().setAttribute("border", "0");

    ClickHandler clickHandler = new ClickHandler() {
        @Override
        public void onClick(ClickEvent clickEvent) {
            openPanel();
        }
    };

    displayed.addClickHandler(clickHandler);
    icon.addClickHandler(clickHandler);

}

From source file:org.jboss.ballroom.client.widgets.forms.ComboBox.java

License:Open Source License

public ComboBox(String cssSuffix) {

    cellList = new CellList<String>(new TextCell() {
        @Override//from ww  w  . jav  a 2s  .  c o  m
        public void render(Context context, String data, SafeHtmlBuilder sb) {
            String cssName = (context.getIndex() % 2 > 0) ? "combobox-item combobox-item-odd" : "combobox-item";

            if (data.equals(displayed.getActual()))
                cssName += " combobox-item-selected";

            sb.append(TEMPLATE.item(cssName, data));
        }

    });

    final SingleSelectionModel<String> selectionModel = new SingleSelectionModel<String>();
    cellList.setSelectionModel(selectionModel);

    selectionModel.addSelectionChangeHandler(new SelectionChangeEvent.Handler() {
        public void onSelectionChange(SelectionChangeEvent event) {
            String selectedValue = selectionModel.getSelectedObject();

            setDisplayedValue(selectedValue);
            popup.hide();

            onSelection(selectedValue);
        }
    });

    final String panelId = "popup_" + HTMLPanel.createUniqueId();
    popup = new PopupPanel(true, true) {

        @Override
        protected void onPreviewNativeEvent(Event.NativePreviewEvent event) {
            if (Event.ONKEYUP == event.getTypeInt()) {
                if (event.getNativeEvent().getKeyCode() == ESCAPE) {
                    // Dismiss when escape is pressed
                    popup.hide();
                }
            }
        }

        public void onBrowserEvent(Event event) {
            super.onBrowserEvent(event);
        }
    };

    popup.getElement().setId(panelId);

    popup.setStyleName("default-popup");

    popup.setWidget(cellList);

    displayed = new Display("");
    displayed.setStyleName("combobox-value" + cssSuffix);

    header = new HorizontalPanel();
    header.setStyleName("combobox" + cssSuffix);
    header.add(displayed);

    Image img = new Image(Icons.INSTANCE.comboPicker());
    header.add(img);

    displayed.getElement().getParentElement().setAttribute("width", "100%");

    img.getParent().getElement().setAttribute("width", "18");

    //header.getElement().setAttribute("width", "95%");
    header.getElement().setAttribute("cellspacing", "0");
    header.getElement().setAttribute("cellpadding", "0");
    header.getElement().setAttribute("border", "0");

    ClickHandler clickHandler = new ClickHandler() {
        @Override
        public void onClick(ClickEvent clickEvent) {
            openPanel();
        }
    };

    displayed.addClickHandler(clickHandler);
    img.addClickHandler(clickHandler);

}

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

License:Open Source License

@Override
public void setSelectionModel(SelectionModel selectionModel) {
    super.setSelectionModel(selectionModel);
    if (selectionModel instanceof SingleSelectionModel) {
        final SingleSelectionModel<T> model = ((SingleSelectionModel<T>) selectionModel);
        model.addSelectionChangeHandler(new SelectionChangeEvent.Handler() {
            @Override//from   w  w  w  . j a v a  2s.co  m
            public void onSelectionChange(SelectionChangeEvent event) {

                lastSelection = model.getSelectedObject();
            }
        });
    }
}

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//from  w w w  .j ava  2  s.c o 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.jboss.gwt.circuit.sample.todo.client.views.TodoView.java

License:Open Source License

public TodoView() {

    VerticalPanel layout = new VerticalPanel();
    layout.getElement().setAttribute("style", "padding:20px;width:100%");

    users = new ListBox();
    users.addChangeHandler(new ChangeHandler() {
        @Override//from   w  w  w. j ava2s  .  c  o  m
        public void onChange(com.google.gwt.event.dom.client.ChangeEvent changeEvent) {
            dispatcher.dispatch(new SelectUser(users.getValue(users.getSelectedIndex())));
        }
    });

    layout.add(users);

    table = new CellTable<Todo>();
    table.getElement().setAttribute("style", "width:90%");
    table.setEmptyTableWidget(new HTML("No Todo items found!"));

    final SingleSelectionModel<Todo> selectionModel = new SingleSelectionModel<Todo>();
    selectionModel.addSelectionChangeHandler(new SelectionChangeEvent.Handler() {
        @Override
        public void onSelectionChange(SelectionChangeEvent selectionChangeEvent) {
            dispatcher.dispatch(new SelectTodo(selectionModel.getSelectedObject()));
        }
    });

    table.setSelectionModel(selectionModel);

    dataProvider = new ListDataProvider<Todo>();
    dataProvider.addDataDisplay(table);

    Column<Todo, SafeHtml> nameColumn = new Column<Todo, SafeHtml>(new SafeHtmlCell()) {
        @Override
        public SafeHtml getValue(Todo object) {
            String css = object.isDone() ? "todo-done" : "none";
            SafeHtmlBuilder html = new SafeHtmlBuilder();
            html.appendHtmlConstant("<div class=" + css + ">");
            html.appendEscaped(object.getName());
            html.appendHtmlConstant("</div>");
            return html.toSafeHtml();
        }
    };
    table.addColumn(nameColumn, "Todo");

    TextColumn<Todo> userColumn = new TextColumn<Todo>() {
        @Override
        public String getValue(Todo object) {
            return object.getUser();
        }
    };
    table.addColumn(userColumn, "Assignment");

    layout.add(table);

    Button addButton = new Button("Add", new ClickHandler() {
        @Override
        public void onClick(ClickEvent clickEvent) {

            Dialog.askFor("Please provide a description:", new AsyncCallback<String>() {
                @Override
                public void onFailure(Throwable throwable) {
                }

                @Override
                public void onSuccess(String s) {
                    dispatcher.dispatch(new SaveTodo(new Todo(s)));
                }
            });
        }
    });

    removeButton = new Button("Remove", new ClickHandler() {
        @Override
        public void onClick(ClickEvent clickEvent) {
            dispatcher.dispatch(new RemoveTodo(selectionModel.getSelectedObject()));
        }
    });
    removeButton.setEnabled(false); // enabled by selection

    doneButton = new Button("Done", new ClickHandler() {
        @Override
        public void onClick(ClickEvent clickEvent) {
            Todo todo = selectionModel.getSelectedObject();
            todo.setDone(true);
            dispatcher.dispatch(new ResolveTodo(todo));
        }
    });
    doneButton.setEnabled(false); // enabled by selection

    HorizontalPanel tools = new HorizontalPanel();
    tools.add(addButton);
    tools.add(removeButton);
    tools.add(doneButton);

    layout.add(tools);

    initWidget(layout);
}

From source file:org.kie.guvnor.guided.dtable.client.wizard.pages.ActionSetFieldsPageViewImpl.java

License:Apache License

private void initialiseAvailablePatterns() {
    availablePatternsContainer.add(availablePatternsWidget);
    availablePatternsWidget.setKeyboardSelectionPolicy(KeyboardSelectionPolicy.ENABLED);
    availablePatternsWidget.setMinimumWidth(180);

    final Label lstEmpty = new Label(Constants.INSTANCE.DecisionTableWizardNoAvailablePatterns());
    lstEmpty.setStyleName(WizardCellListResources.INSTANCE.cellListStyle().cellListEmptyItem());
    availablePatternsWidget.setEmptyListWidget(lstEmpty);

    final SingleSelectionModel<Pattern52> selectionModel = new SingleSelectionModel<Pattern52>();
    availablePatternsWidget.setSelectionModel(selectionModel);

    selectionModel.addSelectionChangeHandler(new SelectionChangeEvent.Handler() {

        @Override/*from   ww  w . j a  v a 2s .c o  m*/
        public void onSelectionChange(final SelectionChangeEvent event) {
            availablePatternsSelection = selectionModel.getSelectedObject();
            presenter.selectPattern(availablePatternsSelection);
        }

    });
}

From source file:org.kie.guvnor.guided.dtable.client.wizard.pages.FactPatternConstraintsPageViewImpl.java

License:Apache License

private void initialiseAvailablePatterns() {
    availablePatternsContainer.add(availablePatternsWidget);
    availablePatternsWidget.setKeyboardSelectionPolicy(KeyboardSelectionPolicy.ENABLED);
    availablePatternsWidget.setMinimumWidth(175);

    final Label lstEmpty = new Label(Constants.INSTANCE.DecisionTableWizardNoAvailablePatterns());
    lstEmpty.setStyleName(WizardCellListResources.INSTANCE.cellListStyle().cellListEmptyItem());
    availablePatternsWidget.setEmptyListWidget(lstEmpty);

    final SingleSelectionModel<Pattern52> selectionModel = new SingleSelectionModel<Pattern52>();
    availablePatternsWidget.setSelectionModel(selectionModel);

    selectionModel.addSelectionChangeHandler(new SelectionChangeEvent.Handler() {

        @Override/* w w w  .j  a v  a 2  s  .co m*/
        public void onSelectionChange(final SelectionChangeEvent event) {
            availablePatternsSelection = selectionModel.getSelectedObject();
            presenter.selectPattern(availablePatternsSelection);
        }

    });
}

From source file:org.kie.uberfire.plugin.client.editor.DynamicMenuEditor.java

License:Apache License

private void initTable(final AbstractCellTable<DynamicMenuItem> exampleTable) {
    exampleTable.setEmptyTableWidget(new Label("No menu items."));

    final TextColumn<DynamicMenuItem> activityCol = new TextColumn<DynamicMenuItem>() {

        @Override//from  www .  jav  a  2 s .  c  om
        public String getValue(DynamicMenuItem object) {
            return String.valueOf(object.getActivityId());
        }
    };

    exampleTable.addColumn(activityCol, "Activity");

    final TextColumn<DynamicMenuItem> labelCol = new TextColumn<DynamicMenuItem>() {

        @Override
        public String getValue(DynamicMenuItem object) {
            return object.getMenuLabel();
        }
    };

    exampleTable.addColumn(labelCol, "Label");

    final ButtonCell buttonCell = new ButtonCell(IconType.REMOVE, ButtonType.DANGER, ButtonSize.MINI);

    final TooltipCellDecorator<String> decorator = new TooltipCellDecorator<String>(buttonCell);
    decorator.setText("delete row, if click");

    Column<DynamicMenuItem, String> buttonCol = new Column<DynamicMenuItem, String>(decorator) {

        @Override
        public String getValue(DynamicMenuItem object) {
            return "delete";
        }
    };

    buttonCol.setFieldUpdater(new FieldUpdater<DynamicMenuItem, String>() {
        @Override
        public void update(final int index, final DynamicMenuItem object, final String value) {
            dataProvider.getList().remove(object);
            dataProvider.flush();
            dataProvider.refresh();
        }
    });

    exampleTable.addColumn(buttonCol);

    final SingleSelectionModel<DynamicMenuItem> selectionModel = new SingleSelectionModel<DynamicMenuItem>();

    selectionModel.addSelectionChangeHandler(new Handler() {

        @Override
        public void onSelectionChange(SelectionChangeEvent event) {
            DynamicMenuItem person = selectionModel.getSelectedObject();
            DynamicMenuEditor.this.driver.edit(person);
        }
    });

    exampleTable
            .setKeyboardSelectionPolicy(HasKeyboardSelectionPolicy.KeyboardSelectionPolicy.BOUND_TO_SELECTION);

    exampleTable.setSelectionModel(selectionModel);

    dataProvider.addDataDisplay(exampleTable);
}

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

License:Apache License

/**
 * {@inheritDoc}//from w ww .  ja v a 2  s  .c om
 */
@Override
protected Widget initContent() {
    this.userList = new CellList<UserProxy>(new AbstractCell<UserProxy>() {

        @Override
        public void render(@SuppressWarnings("unused") com.google.gwt.cell.client.Cell.Context context,
                UserProxy value, SafeHtmlBuilder sb) {
            sb.appendEscaped(value.getAccount().getId());
        }
    });

    final SingleSelectionModel<UserProxy> selectionModel = new SingleSelectionModel<UserProxy>();
    selectionModel.addSelectionChangeHandler(new Handler() {

        @Override
        public void onSelectionChange(@SuppressWarnings("unused") SelectionChangeEvent event) {
            final UserProxy selectedUser = selectionModel.getSelectedObject();
            setEdittingUser(selectedUser);
        }
    });
    this.userList.setSelectionModel(selectionModel);
    this.userType = new ValueListBox<UserType>(new Renderer<UserType>() {

        @Override
        public String render(UserType object) {
            if (object == null)
                return null;
            return object.name();
        }

        @Override
        public void render(UserType object, Appendable appendable) throws IOException {
            appendable.append(render(object));
        }
    });
    this.userType.setAcceptableValues(Arrays.asList(UserType.values()));

    final Binder binder = GWT.create(Binder.class);
    final Widget content = binder.createAndBindUi(this);

    final Messages messages = getClientFactory().getMessages();
    this.userIdLabel.setText(messages.userIdLabel());
    this.passwordLabel.setText(messages.passwordLabel());
    this.nameLabel.setText(messages.userNameLabel());
    this.userInfoCaption.setCaptionText(messages.userInfoLabel());
    this.applyButton.setText(messages.applyLabel());
    this.userTypeLabel.setText(messages.userTypeLabel());
    this.newCheck.setText(messages.newLabel());

    updateEditMode();
    return content;
}