List of usage examples for com.google.gwt.view.client SingleSelectionModel SingleSelectionModel
public SingleSelectionModel()
From source file:org.kie.workbench.common.screens.datamodeller.client.widgets.editor.DataObjectBrowserViewImpl.java
License:Apache License
@PostConstruct protected void init() { newPropertyButton.setIcon(IconType.PLUS); newPropertyButton.addClickHandler(new ClickHandler() { @Override// w ww . j a v a2s. c om public void onClick(ClickEvent event) { presenter.onNewProperty(); } }); objectButton.addClickHandler(new ClickHandler() { @Override public void onClick(ClickEvent event) { presenter.onSelectCurrentDataObject(); } }); //Init properties table propertiesTable.setEmptyTableCaption(Constants.INSTANCE.objectBrowser_emptyTable()); propertiesTable.setColumnPickerButtonVisible(false); propertiesTable.setToolBarVisible(false); setTableHeight(tableHeight); addPropertyNameColumn(); addPropertyLabelColumn(); addPropertyTypeBrowseColumn(); addPropertyTypeColumn(); addRemoveRowColumn(); addSortHandler(); //Init the selection model SingleSelectionModel<ObjectProperty> selectionModel = new SingleSelectionModel<ObjectProperty>(); propertiesTable.setSelectionModel(selectionModel); selectionModel.addSelectionChangeHandler(new SelectionChangeEvent.Handler() { @Override public void onSelectionChange(SelectionChangeEvent event) { ObjectProperty selectedProperty = ((SingleSelectionModel<ObjectProperty>) propertiesTable .getSelectionModel()).getSelectedObject(); presenter.onSelectProperty(selectedProperty); } }); setReadonly(true); }
From source file:org.kie.workbench.common.screens.datamodeller.client.widgets.old.DataModelBrowser.java
License:Apache License
public DataModelBrowser() { initWidget(uiBinder.createAndBindUi(this)); //modelName.setText( Constants.INSTANCE.modelBrowser_modelUnknown() ); dataObjectsProvider.setList(dataObjects); dataObjectsTable.setEmptyTableWidget( new com.github.gwtbootstrap.client.ui.Label(Constants.INSTANCE.modelBrowser_emptyTable())); // Init data object column final TextColumn<DataObject> dataObjectColumn = new TextColumn<DataObject>() { @Override/*from w ww.j a v a2 s . c o m*/ public void render(Cell.Context context, DataObject object, SafeHtmlBuilder sb) { SafeHtml startDiv = new SafeHtml() { @Override public String asString() { return "<div style=\"cursor: pointer;\">"; } }; SafeHtml endDiv = new SafeHtml() { @Override public String asString() { return "</div>"; } }; sb.append(startDiv); super.render(context, object, sb); sb.append(endDiv); } @Override public String getValue(final DataObject dataObject) { // TODO return clipped AND tooltipped object UI label when relevant return DataModelerUtils.getDataObjectUILabel(dataObject); } }; dataObjectColumn.setSortable(true); dataObjectsTable.addColumn(dataObjectColumn, Constants.INSTANCE.modelBrowser_columnName()); // Init delete column ClickableImageResourceCell clickableImageResourceCell = new ClickableImageResourceCell(true, 16); final TooltipCellDecorator<ImageResource> decorator = new TooltipCellDecorator<ImageResource>( clickableImageResourceCell); decorator.setPlacement(Placement.LEFT); decorator.setText(Constants.INSTANCE.modelBrowser_action_deleteDataObject()); final Column<DataObject, ImageResource> deleteDataObjectColumnImg = new Column<DataObject, ImageResource>( decorator) { @Override public ImageResource getValue(final DataObject dataObject) { return ImagesResources.INSTANCE.Delete(); } }; deleteDataObjectColumnImg.setFieldUpdater(new FieldUpdater<DataObject, ImageResource>() { public void update(final int index, final DataObject object, final ImageResource value) { checkAndDeleteDataObject(object, index); } }); dataObjectsTable.addColumn(deleteDataObjectColumnImg); dataObjectsTable.setColumnWidth(deleteDataObjectColumnImg, 32, Style.Unit.PX); ColumnSortEvent.ListHandler<DataObject> dataObjectNameColHandler = new ColumnSortEvent.ListHandler<DataObject>( dataObjectsProvider.getList()); dataObjectNameColHandler.setComparator(dataObjectColumn, new DataObjectComparator()); dataObjectsTable.addColumnSortHandler(dataObjectNameColHandler); dataObjectsTable.getColumnSortList().push(dataObjectColumn); //Init the selection model SingleSelectionModel<DataObject> selectionModel = new SingleSelectionModel<DataObject>(); selectionModel.addSelectionChangeHandler(new SelectionChangeEvent.Handler() { @Override public void onSelectionChange(SelectionChangeEvent event) { if (!skipNextOnChange) { DataObject selectedObject = ((SingleSelectionModel<DataObject>) dataObjectsTable .getSelectionModel()).getSelectedObject(); notifyObjectSelected(selectedObject); } skipNextOnChange = false; } }); dataObjectsTable .setKeyboardSelectionPolicy(HasKeyboardSelectionPolicy.KeyboardSelectionPolicy.BOUND_TO_SELECTION); dataObjectsTable.setSelectionModel(selectionModel); dataObjectsProvider.addDataDisplay(dataObjectsTable); dataObjectsProvider.refresh(); newEntityButton.setIcon(IconType.PLUS_SIGN); }
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 ww 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.komodo.web.client.panels.repo.VdbList.java
License:Apache License
private VerticalPanel createListPanel() { placeManager = IOC.getBeanManager().lookupBean(PlaceManager.class).getInstance(); uiEventService = UiEventService.get(); uiEventService.addListener(this); VerticalPanel outerPanel = new VerticalPanel(); CellList.Resources resources = GWT.create(CellListResources.class); // Create a CellList. CompositeCell compositeCell = createCompositeCell(new VdbCell()); // 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./*from ww w. j a va2 s .c o m*/ cellList = new CellList<KomodoObjectBean>(compositeCell, resources); cellList.setPageSize(30); cellList.setKeyboardPagingPolicy(KeyboardPagingPolicy.INCREASE_RANGE); cellList.setKeyboardSelectionPolicy(KeyboardSelectionPolicy.BOUND_TO_SELECTION); // Add a selection model so we can select cells. listSelectionModel = new SingleSelectionModel<KomodoObjectBean>(); cellList.setSelectionModel(listSelectionModel); listSelectionModel.addSelectionChangeHandler(new SelectionChangeEvent.Handler() { @Override public void onSelectionChange(SelectionChangeEvent event) { KomodoObjectBean vdb = listSelectionModel.getSelectedObject(); fireUiEvent(vdb, UiEventType.KOBJECT_SELECTED); } }); outerPanel.add(cellList); return outerPanel; }
From source file:org.mklab.taskit.client.ui.admin.UserEditorViewImpl.java
License:Apache License
/** * {@inheritDoc}//from w w w . java 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; }
From source file:org.mklab.taskit.client.ui.HelpCallListViewImpl.java
License:Apache License
private void listenSelectionEvent() { // ??//from w w w. j a v a 2s . c o m final SingleSelectionModel<HelpCallListItem> selectionModel = new SingleSelectionModel<HelpCallListItem>(); selectionModel.addSelectionChangeHandler(new SelectionChangeEvent.Handler() { @SuppressWarnings("synthetic-access") @Override public void onSelectionChange(@SuppressWarnings("unused") SelectionChangeEvent event) { final HelpCallListItem selectedCall = selectionModel.getSelectedObject(); HelpCallListViewImpl.this.presenter.helpCallSelected(selectedCall.getHelpCall()); } }); // ???????????????? CellPreviewEvent.Handler<HelpCallListViewImpl.HelpCallListItem> cellPreviewHandler = new DefaultSelectionEventManager<HelpCallListViewImpl.HelpCallListItem>( null) { @Override public void onCellPreview(CellPreviewEvent<HelpCallListItem> event) { @SuppressWarnings("unqualified-field-access") Column<?, ?> column = table.getColumn(event.getColumn()); if (column.getCell() instanceof ButtonCell) { return; } super.onCellPreview(event); } }; this.table.setSelectionModel(selectionModel, cellPreviewHandler); this.table.addCellPreviewHandler(cellPreviewHandler); }
From source file:org.obiba.opal.web.gwt.app.client.magma.variable.view.CategoriesEditorModalView.java
License:Open Source License
@Inject public CategoriesEditorModalView(EventBus eventBus, Binder uiBinder, Translations translations, TranslationMessages translationMessages) { super(eventBus); this.translations = translations; this.translationMessages = translationMessages; initWidget(uiBinder.createAndBindUi(this)); dialog.setTitle(translations.editCategories()); dialog.setResizable(true);//w ww . j a v a 2 s . c o m dialog.setMinHeight(MIN_HEIGHT); dialog.setMinWidth(MIN_WIDTH); table.setKeyboardSelectionPolicy(HasKeyboardSelectionPolicy.KeyboardSelectionPolicy.DISABLED); table.setSelectionModel(new SingleSelectionModel<CategoryDto>()); table.setEmptyTableWidget(new Label(translations.noCategoriesLabel())); table.setPageSize(DEFAULT_PAGE_SIZE); pager.setDisplay(table); dataProvider.addDataDisplay(table); }
From source file:org.obiba.opal.web.gwt.app.client.magma.view.DatasourceView.java
License:Open Source License
private void addTableColumns() { initializeColumns();//from w ww . jav a 2s . c om dataProvider.addDataDisplay(table); initializeSortableColumns(); table.setSelectionModel(new SingleSelectionModel<TableDto>()); table.setPageSize(Table.DEFAULT_PAGESIZE); table.setEmptyTableWidget(new InlineLabel(translationMessages.tableCount(0))); pager.setDisplay(table); }
From source file:org.obiba.opal.web.gwt.app.client.magma.view.TableView.java
License:Open Source License
private void addTableColumns() { addCheckColumn();/*from ww w . j a v a 2 s . c o m*/ table.addColumn(new VariableColumn(new VariableLinkCell(placeManager)), translations.nameLabel()); table.addColumn(new VariableAttributeColumn("label"), translations.labelLabel()); table.addColumn(new TextColumn<VariableDto>() { @Override public String getValue(VariableDto object) { return object.getValueType(); } }, translations.valueTypeLabel()); table.addColumn(new TextColumn<VariableDto>() { @Override public String getValue(VariableDto object) { StringBuilder categories = new StringBuilder(); int count = 1; for (CategoryDto category : JsArrays .toIterable(JsArrays.toSafeArray(object.getCategoriesArray()))) { if (count > 10) { categories.append(" ..."); break; } if (categories.length() == 0) { categories.append(category.getName()); } else { categories.append(", ").append(category.getName()); } count++; } return categories.toString(); } }, translations.categoriesLabel()); table.setSelectionModel(new SingleSelectionModel<VariableDto>()); table.setPageSize(Table.DEFAULT_PAGESIZE); table.setEmptyTableWidget(new InlineLabel(translationMessages.variableCount(0))); pager.setDisplay(table); dataProvider.addDataDisplay(table); filter.setText(""); filter.getTextBox().setPlaceholder(translations.filterVariables()); }
From source file:org.opennms.features.gwt.combobox.client.view.SuggestionComboboxViewImpl.java
License:Open Source License
public SuggestionComboboxViewImpl() { initWidget(uiBinder.createAndBindUi(this)); m_textBox.addKeyDownHandler(new KeyDownHandler() { @Override//from w w w. j a v a2s . c om public void onKeyDown(KeyDownEvent event) { if (event.getNativeKeyCode() == KeyCodes.KEY_ENTER) { if (m_presenter != null) { m_presenter.onEnterKeyEvent(); } } } }); m_selectionModel = new SingleSelectionModel<NodeDetail>(); m_selectionModel.addSelectionChangeHandler(new SelectionChangeEvent.Handler() { @Override public void onSelectionChange(SelectionChangeEvent event) { m_presenter.onNodeSelected(); } }); m_nodeList = new CellList<NodeDetail>(new NodeDetailCell()); m_nodeList.setPageSize(10); m_nodeList.getElement().getStyle().setFontSize(12, Unit.PX); m_nodeList.setSelectionModel(m_selectionModel); m_dataList = new ListDataProvider<NodeDetail>(); m_dataList.addDataDisplay(m_nodeList); m_pager = new SimplePager(); m_pager.setStyleName("onms-table-no-borders-margin"); m_pager.getElement().getStyle().setWidth(100, Unit.PCT); m_pager.setDisplay(m_nodeList); FlowPanel flowPanel = new FlowPanel(); flowPanel.add(m_nodeList); flowPanel.add(m_pager); m_popupPanel = new PopupPanel(); m_popupPanel.add(flowPanel); m_popupPanel.setAutoHideEnabled(true); m_popupPanel.setAnimationEnabled(true); m_popupPanel.setModal(false); m_popupPanel.getElement().getStyle().setBorderWidth(1, Unit.PX); m_popupPanel.getElement().getStyle().setBorderColor("#B5B8C8"); m_popupPanel.getElement().getStyle().setPadding(1, Unit.PX); }