List of usage examples for com.google.gwt.user.cellview.client ColumnSortEvent.ListHandler ColumnSortEvent.ListHandler
public ListHandler(List<T> list)
From source file:com.jitlogic.zico.client.views.traces.TraceSearchPanel.java
License:Open Source License
private void createTraceGrid() { grid = new DataGrid<TraceInfo>(1024 * 1024, ZicoDataGridResources.INSTANCE, KEY_PROVIDER); selection = new SingleSelectionModel<TraceInfo>(KEY_PROVIDER); grid.setSelectionModel(selection);/*from ww w .j a va2s .c om*/ data = new ListDataProvider<TraceInfo>(); data.addDataDisplay(grid); sortHandler = new ColumnSortEvent.ListHandler<TraceInfo>(data.getList()); grid.addColumnSortHandler(sortHandler); Column<TraceInfo, TraceInfo> colExpander = new IdentityColumn<TraceInfo>(DETAIL_EXPANDER_CELL); grid.addColumn(colExpander, "#"); grid.setColumnWidth(colExpander, 32, Style.Unit.PX); Column<TraceInfo, TraceInfo> colTraceClock = new IdentityColumn<TraceInfo>(TRACE_CLOCK_CELL); grid.addColumn(colTraceClock, new ResizableHeader<TraceInfo>("Clock", grid, colTraceClock)); grid.setColumnWidth(colTraceClock, 140, Style.Unit.PX); colTraceClock.setSortable(true); sortHandler.setComparator(colTraceClock, new Comparator<TraceInfo>() { @Override public int compare(TraceInfo o1, TraceInfo o2) { return (int) (o1.getClock() - o2.getClock()); } }); Column<TraceInfo, TraceInfo> colTraceType = new IdentityColumn<TraceInfo>(TRACE_TYPE_CELL); grid.addColumn(colTraceType, new ResizableHeader<TraceInfo>("Type", grid, colTraceType)); grid.setColumnWidth(colTraceType, 60, Style.Unit.PX); Column<TraceInfo, TraceInfo> colTraceDuration = new IdentityColumn<TraceInfo>(TRACE_DURATION_CELL); grid.addColumn(colTraceDuration, new ResizableHeader<TraceInfo>("Time", grid, colTraceDuration)); grid.setColumnWidth(colTraceDuration, 64, Style.Unit.PX); colTraceDuration.setHorizontalAlignment(HasHorizontalAlignment.ALIGN_RIGHT); colTraceDuration.setSortable(true); sortHandler.setComparator(colTraceDuration, new Comparator<TraceInfo>() { @Override public int compare(TraceInfo o1, TraceInfo o2) { return (int) ((o1.getExecutionTime() - o2.getExecutionTime()) / 1000000L); } }); Column<TraceInfo, TraceInfo> colTraceCalls = new IdentityColumn<TraceInfo>(TRACE_CALLS_CELL); grid.addColumn(colTraceCalls, new ResizableHeader<TraceInfo>("Calls", grid, colTraceCalls)); grid.setColumnWidth(colTraceCalls, 50, Style.Unit.PX); colTraceCalls.setSortable(true); sortHandler.setComparator(colTraceCalls, new Comparator<TraceInfo>() { @Override public int compare(TraceInfo o1, TraceInfo o2) { return (int) (o1.getCalls() - o2.getCalls()); } }); Column<TraceInfo, TraceInfo> colTraceErrors = new IdentityColumn<TraceInfo>(TRACE_ERRORS_CELL); grid.addColumn(colTraceErrors, new ResizableHeader<TraceInfo>("Errs", grid, colTraceErrors)); grid.setColumnWidth(colTraceErrors, 50, Style.Unit.PX); colTraceErrors.setSortable(true); sortHandler.setComparator(colTraceErrors, new Comparator<TraceInfo>() { @Override public int compare(TraceInfo o1, TraceInfo o2) { return (int) (o1.getErrors() - o2.getErrors()); } }); Column<TraceInfo, TraceInfo> colTraceRecords = new IdentityColumn<TraceInfo>(TRACE_RECORDS_CELL); grid.addColumn(colTraceRecords, new ResizableHeader<TraceInfo>("Recs", grid, colTraceRecords)); grid.setColumnWidth(colTraceRecords, 50, Style.Unit.PX); colTraceRecords.setSortable(true); sortHandler.setComparator(colTraceRecords, new Comparator<TraceInfo>() { @Override public int compare(TraceInfo o1, TraceInfo o2) { return (int) (o1.getRecords() - o2.getRecords()); } }); Column<TraceInfo, TraceInfo> colTraceDesc = new IdentityColumn<TraceInfo>(TRACE_NAME_CELL); grid.addColumn(colTraceDesc, "Description"); grid.setColumnWidth(colTraceDesc, 100, Style.Unit.PCT); rowBuilder = new TraceSearchTableBuilder(grid, expandedDetails); grid.setTableBuilder(rowBuilder); grid.setSkipRowHoverStyleUpdate(true); grid.setSkipRowHoverFloatElementCheck(true); grid.setSkipRowHoverCheck(true); grid.setKeyboardSelectionPolicy(HasKeyboardSelectionPolicy.KeyboardSelectionPolicy.DISABLED); grid.addCellPreviewHandler(new CellPreviewEvent.Handler<TraceInfo>() { @Override public void onCellPreview(CellPreviewEvent<TraceInfo> event) { NativeEvent nev = event.getNativeEvent(); String eventType = nev.getType(); if ((BrowserEvents.KEYDOWN.equals(eventType) && nev.getKeyCode() == KeyCodes.KEY_ENTER) || BrowserEvents.DBLCLICK.equals(nev.getType())) { selection.setSelected(event.getValue(), true); openDetailView(); } if (BrowserEvents.CONTEXTMENU.equals(eventType)) { selection.setSelected(event.getValue(), true); if (selection.getSelectedObject() != null) { contextMenu.setPopupPosition(event.getNativeEvent().getClientX(), event.getNativeEvent().getClientY()); contextMenu.show(); } } } }); grid.addDomHandler(new DoubleClickHandler() { @Override public void onDoubleClick(DoubleClickEvent event) { event.preventDefault(); } }, DoubleClickEvent.getType()); grid.addDomHandler(new ContextMenuHandler() { @Override public void onContextMenu(ContextMenuEvent event) { event.preventDefault(); } }, ContextMenuEvent.getType()); }
From source file:org.jbpm.datamodeler.editor.client.editors.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 delete column ClickableImageResourceCell clickableImageResourceCell = new ClickableImageResourceCell(true); final TooltipCellDecorator<ImageResource> decorator = new TooltipCellDecorator<ImageResource>( clickableImageResourceCell); decorator.setText(Constants.INSTANCE.modelBrowser_action_deleteDataObject()); final Column<DataObjectTO, ImageResource> deleteDataObjectColumnImg = new Column<DataObjectTO, ImageResource>( decorator) {/*from www .j av a 2s .co m*/ @Override public ImageResource getValue(final DataObjectTO global) { return ImagesResources.INSTANCE.Delete(); } }; deleteDataObjectColumnImg.setFieldUpdater(new FieldUpdater<DataObjectTO, ImageResource>() { public void update(final int index, final DataObjectTO object, final ImageResource value) { deleteDataObject(object, index); } }); dataObjectsTable.addColumn(deleteDataObjectColumnImg); dataObjectsTable.setColumnWidth(deleteDataObjectColumnImg, 20, Style.Unit.PX); // Init data object column final TextColumn<DataObjectTO> dataObjectColumn = new TextColumn<DataObjectTO>() { @Override public void render(Cell.Context context, DataObjectTO 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 DataObjectTO dataObject) { return dataObject.getName(); } }; dataObjectColumn.setSortable(true); dataObjectsTable.addColumn(dataObjectColumn, Constants.INSTANCE.modelBrowser_columnName()); ColumnSortEvent.ListHandler<DataObjectTO> dataObjectNameColHandler = new ColumnSortEvent.ListHandler<DataObjectTO>( dataObjectsProvider.getList()); dataObjectNameColHandler.setComparator(dataObjectColumn, new DataObjectComparator()); dataObjectsTable.addColumnSortHandler(dataObjectNameColHandler); dataObjectsTable.getColumnSortList().push(dataObjectColumn); //Init the selection model SingleSelectionModel<DataObjectTO> selectionModel = new SingleSelectionModel<DataObjectTO>(); selectionModel.addSelectionChangeHandler(new SelectionChangeEvent.Handler() { @Override public void onSelectionChange(SelectionChangeEvent event) { if (!skipNextOnChange) { DataObjectTO selectedObjectTO = ((SingleSelectionModel<DataObjectTO>) dataObjectsTable .getSelectionModel()).getSelectedObject(); notifyObjectSelected(selectedObjectTO); } 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.jbpm.datamodeler.editor.client.editors.DataObjectBrowser.java
License:Apache License
public DataObjectBrowser() { initWidget(uiBinder.createAndBindUi(this)); objectName.setText(Constants.INSTANCE.objectEditor_objectUnknown()); dataObjectPropertiesProvider.setList(dataObjectProperties); //Init data objects table dataObjectPropertiesTable.setEmptyTableWidget( new com.github.gwtbootstrap.client.ui.Label(Constants.INSTANCE.objectEditor_emptyTable())); //Init delete column ClickableImageResourceCell clickableImageResourceCell = new ClickableImageResourceCell(true); final TooltipCellDecorator<ImageResource> decorator = new TooltipCellDecorator<ImageResource>( clickableImageResourceCell); decorator.setText(Constants.INSTANCE.objectEditor_action_deleteProperty()); final Column<ObjectPropertyTO, ImageResource> deletePropertyColumnImg = new Column<ObjectPropertyTO, ImageResource>( decorator) {//from w w w .j a v a 2s. c o m @Override public ImageResource getValue(final ObjectPropertyTO global) { return ImagesResources.INSTANCE.Delete(); } }; deletePropertyColumnImg.setFieldUpdater(new FieldUpdater<ObjectPropertyTO, ImageResource>() { public void update(final int index, final ObjectPropertyTO property, final ImageResource value) { deleteDataObjectProperty(property, index); } }); dataObjectPropertiesTable.addColumn(deletePropertyColumnImg); dataObjectPropertiesTable.setColumnWidth(deletePropertyColumnImg, 20, Style.Unit.PX); //Init property name column final TextColumn<ObjectPropertyTO> propertyNameColumn = new TextColumn<ObjectPropertyTO>() { @Override public void render(Cell.Context context, ObjectPropertyTO 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 ObjectPropertyTO objectProperty) { return objectProperty.getName(); } }; propertyNameColumn.setSortable(true); dataObjectPropertiesTable.addColumn(propertyNameColumn, Constants.INSTANCE.objectEditor_columnName()); //dataObjectPropertiesTable.setColumnWidth(propertyNameColumn, 100, Style.Unit.PX); ColumnSortEvent.ListHandler<ObjectPropertyTO> propertyNameColHandler = new ColumnSortEvent.ListHandler<ObjectPropertyTO>( dataObjectPropertiesProvider.getList()); propertyNameColHandler.setComparator(propertyNameColumn, new ObjectPropertyComparator("name")); dataObjectPropertiesTable.addColumnSortHandler(propertyNameColHandler); //Init property type column final Column<ObjectPropertyTO, String> propertyTypeColumn = new Column<ObjectPropertyTO, String>(typeCell) { @Override public String getValue(final ObjectPropertyTO objectProperty) { return propertyTypeDisplay(objectProperty); } }; propertyTypeColumn.setSortable(true); dataObjectPropertiesTable.addColumn(propertyTypeColumn, Constants.INSTANCE.objectEditor_columnType()); //dataObjectPropertiesTable.setColumnWidth(propertyTypeColumn, 100, Style.Unit.PX); ColumnSortEvent.ListHandler<ObjectPropertyTO> propertyTypeColHandler = new ColumnSortEvent.ListHandler<ObjectPropertyTO>( dataObjectPropertiesProvider.getList()); propertyTypeColHandler.setComparator(propertyTypeColumn, new ObjectPropertyComparator("className")); dataObjectPropertiesTable.addColumnSortHandler(propertyTypeColHandler); dataObjectPropertiesTable.getColumnSortList().push(propertyTypeColumn); dataObjectPropertiesTable.getColumnSortList().push(propertyNameColumn); //Init the selection model SingleSelectionModel<ObjectPropertyTO> selectionModel = new SingleSelectionModel<ObjectPropertyTO>(); dataObjectPropertiesTable.setSelectionModel(selectionModel); selectionModel.addSelectionChangeHandler(new SelectionChangeEvent.Handler() { @Override public void onSelectionChange(SelectionChangeEvent event) { ObjectPropertyTO selectedPropertyTO = ((SingleSelectionModel<ObjectPropertyTO>) dataObjectPropertiesTable .getSelectionModel()).getSelectedObject(); notifyFieldSelected(selectedPropertyTO); } }); dataObjectPropertiesTable .setKeyboardSelectionPolicy(HasKeyboardSelectionPolicy.KeyboardSelectionPolicy.BOUND_TO_SELECTION); dataObjectPropertiesProvider.addDataDisplay(dataObjectPropertiesTable); dataObjectPropertiesProvider.refresh(); newPropertyIsMultiple.setVisible(false); newPropertyIsMultiple.setValue(false); newPropertyBasicType.setValue(true); newPropertyButton.setIcon(IconType.PLUS_SIGN); }
From source file:org.kie.workbench.common.screens.datamodeller.client.widgets.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 delete column ClickableImageResourceCell clickableImageResourceCell = new ClickableImageResourceCell(true); final TooltipCellDecorator<ImageResource> decorator = new TooltipCellDecorator<ImageResource>( clickableImageResourceCell); decorator.setText(Constants.INSTANCE.modelBrowser_action_deleteDataObject()); final Column<DataObjectTO, ImageResource> deleteDataObjectColumnImg = new Column<DataObjectTO, ImageResource>( decorator) {//w w w .j a va2 s . c o m @Override public ImageResource getValue(final DataObjectTO global) { return ImagesResources.INSTANCE.Delete(); } }; deleteDataObjectColumnImg.setFieldUpdater(new FieldUpdater<DataObjectTO, ImageResource>() { public void update(final int index, final DataObjectTO object, final ImageResource value) { deleteDataObject(object, index); } }); dataObjectsTable.addColumn(deleteDataObjectColumnImg); dataObjectsTable.setColumnWidth(deleteDataObjectColumnImg, 20, Style.Unit.PX); // Init data object column final TextColumn<DataObjectTO> dataObjectColumn = new TextColumn<DataObjectTO>() { @Override public void render(Cell.Context context, DataObjectTO 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 DataObjectTO dataObject) { return DataModelerUtils.getDataObjectUILabel(dataObject); } }; dataObjectColumn.setSortable(true); dataObjectsTable.addColumn(dataObjectColumn, Constants.INSTANCE.modelBrowser_columnName()); ColumnSortEvent.ListHandler<DataObjectTO> dataObjectNameColHandler = new ColumnSortEvent.ListHandler<DataObjectTO>( dataObjectsProvider.getList()); dataObjectNameColHandler.setComparator(dataObjectColumn, new DataObjectComparator()); dataObjectsTable.addColumnSortHandler(dataObjectNameColHandler); dataObjectsTable.getColumnSortList().push(dataObjectColumn); //Init the selection model SingleSelectionModel<DataObjectTO> selectionModel = new SingleSelectionModel<DataObjectTO>(); selectionModel.addSelectionChangeHandler(new SelectionChangeEvent.Handler() { @Override public void onSelectionChange(SelectionChangeEvent event) { if (!skipNextOnChange) { DataObjectTO selectedObjectTO = ((SingleSelectionModel<DataObjectTO>) dataObjectsTable .getSelectionModel()).getSelectedObject(); notifyObjectSelected(selectedObjectTO); } 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:uk.ac.ebi.fg.annotare2.web.gwt.editor.client.view.experiment.design.GridView.java
License:Apache License
public void setRows(List<R> rows) { if (null != dataProvider) { dataProvider.setList(rows);/*w w w.j a v a2s .c o m*/ return; } dataGrid = new CustomDataGrid<>(PAGE_SIZE); dataGrid.addStyleName("gwt-DataGrid"); dataGrid.setWidth("100%"); dataGrid.setEmptyTableWidget(new Label("No data")); if (isRowSelectionEnabled) { selectionModel = new MultiSelectionModel<>(new ProvidesKey<R>() { @Override public Object getKey(R item) { return item.getIdentity(); } }); dataGrid.setSelectionModel(selectionModel, DefaultSelectionEventManager.<R>createCheckboxManager()); } dataProvider = new ListDataProvider<>(); dataProvider.addDataDisplay(dataGrid); dataProvider.getList().addAll(rows); sortHandler = new ColumnSortEvent.ListHandler<>(dataProvider.getList()); dataGrid.addColumnSortHandler(sortHandler); permanentColumnCount = 0; if (isRowSelectionEnabled) { addCheckBoxColumn(); } SimplePager.Resources pagerResources = GWT.create(SimplePager.Resources.class); pager = new SimplePager(SimplePager.TextLocation.CENTER, pagerResources, false, 0, true); pager.setDisplay(dataGrid); toolBar.add(pager); toolBar.setCellHorizontalAlignment(pager, HasHorizontalAlignment.ALIGN_RIGHT); gridPanel.add(dataGrid); }
From source file:uk.ac.ebi.fg.annotare2.web.gwt.editor.client.view.SheetModeViewImpl.java
License:Apache License
@Override public void setTable(Table table, boolean hasHeaders) { panel.remove(loadingIndicator);/*from w ww . ja v a2 s .c om*/ CustomDataGrid<IndexedRow> dataGrid = new CustomDataGrid<IndexedRow>(PAGE_SIZE, CustomDataGrid.createResources()); dataGrid.setEmptyTableWidget(new Label(noDataText)); dataGrid.setSelectionModel(new NoSelectionModel<IndexedRow>()); SimplePager.Resources pagerResources = GWT.create(SimplePager.Resources.class); SimplePager pager = new SimplePager(SimplePager.TextLocation.CENTER, pagerResources, false, 0, true); pager.setDisplay(dataGrid); ListDataProvider<IndexedRow> dataProvider = new ListDataProvider<IndexedRow>(); dataProvider.addDataDisplay(dataGrid); dataProvider.getList().addAll(getRows(table, hasHeaders)); ColumnSortEvent.ListHandler<IndexedRow> sortHandler = new ColumnSortEvent.ListHandler<IndexedRow>( dataProvider.getList()); dataGrid.addColumnSortHandler(sortHandler); initColumns(table, dataGrid, sortHandler, hasHeaders); panel.addNorth(pager, 40); panel.add(dataGrid); }