List of usage examples for com.google.gwt.user.cellview.client Column setSortable
public void setSortable(boolean sortable)
From source file:org.jboss.as.console.client.shared.subsys.elytron.ui.GenericListComplexAttribute.java
License:Open Source License
private void setupTable() { table = new DefaultCellTable<>(10); table.setSelectionModel(selectionModel); // columns//from ww w . j a v a 2 s .c o m for (Property propDescription : resourceDescription.get(ATTRIBUTES).asPropertyList()) { Column<ModelNode, String> column = createColumn(propDescription.getName()); column.setSortable(true); column.setHorizontalAlignment(HasHorizontalAlignment.ALIGN_CENTER); table.addColumn(column, label(propDescription.getName())); } ; }
From source file:org.jboss.as.console.client.shared.subsys.elytron.ui.IdentityAttributeMappingView.java
License:Open Source License
@SuppressWarnings("unchecked") public Widget asWidget() { VerticalPanel panel = new VerticalPanel(); panel.addStyleName("fill-layout-width"); // table/* w w w . j a va2 s . co m*/ table = new DefaultCellTable<>(5, nameProvider); dataProvider = new ListDataProvider<>(nameProvider); dataProvider.addDataDisplay(table); table.setSelectionModel(selectionModel); // columns Column<ModelNode, String> fromColumn = new TextColumn<ModelNode>() { @Override public String getValue(ModelNode node) { return node.get("from").asString(); } }; fromColumn.setSortable(true); Column<ModelNode, String> toColumn = new TextColumn<ModelNode>() { @Override public String getValue(ModelNode node) { return node.get("to").asString(); } }; Column<ModelNode, String> filterColumn = new TextColumn<ModelNode>() { @Override public String getValue(ModelNode node) { return node.get("filter").asString(); } }; filterColumn.setHorizontalAlignment(HasHorizontalAlignment.ALIGN_CENTER); toColumn.setHorizontalAlignment(HasHorizontalAlignment.ALIGN_CENTER); ColumnSortEvent.ListHandler<ModelNode> sortHandler = new ColumnSortEvent.ListHandler<>( dataProvider.getList()); sortHandler.setComparator(fromColumn, (o1, o2) -> o1.get("from").asString().toLowerCase() .compareTo(o2.get("from").asString().toLowerCase())); table.addColumn(fromColumn, "From"); table.addColumn(toColumn, "To"); table.addColumn(filterColumn, "Filter"); table.setColumnWidth(fromColumn, 30, Style.Unit.PCT); table.setColumnWidth(toColumn, 40, Style.Unit.PCT); table.setColumnWidth(filterColumn, 20, Style.Unit.PCT); table.addColumnSortHandler(sortHandler); table.getColumnSortList().push(fromColumn); panel.add(table); DefaultPager pager = new DefaultPager(); pager.setDisplay(table); panel.add(pager); return panel; }
From source file:org.jboss.as.console.client.shared.subsys.elytron.ui.JdbcRealmPrincipalsQueryView.java
License:Open Source License
@SuppressWarnings("unchecked") public Widget asWidget() { VerticalPanel panel = new VerticalPanel(); panel.addStyleName("fill-layout-width"); // table/*from ww w .j a v a 2s.co m*/ table = new DefaultCellTable<>(5, nameProvider); dataProvider = new ListDataProvider<>(nameProvider); dataProvider.addDataDisplay(table); table.setSelectionModel(selectionModel); // columns Column<ModelNode, String> nameColumn = new TextColumn<ModelNode>() { @Override public String getValue(ModelNode node) { return node.get("sql").asString(); } }; nameColumn.setSortable(true); Column<ModelNode, String> datasourceColumn = new TextColumn<ModelNode>() { @Override public String getValue(ModelNode node) { return node.get("data-source").asString(); } }; table.addColumn(nameColumn, Console.CONSTANTS.common_label_name()); table.addColumn(datasourceColumn, "Datasource"); table.setColumnWidth(nameColumn, 85, Style.Unit.PCT); table.setColumnWidth(datasourceColumn, 15, Style.Unit.PCT); datasourceColumn.setHorizontalAlignment(HasHorizontalAlignment.ALIGN_CENTER); panel.add(setupTableButtons()); panel.add(table); DefaultPager pager = new DefaultPager(); pager.setDisplay(table); panel.add(pager); return panel; }
From source file:org.jboss.as.console.client.shared.subsys.elytron.ui.NewIdentityAttributesView.java
License:Open Source License
@SuppressWarnings("unchecked") public Widget asWidget() { VerticalPanel panel = new VerticalPanel(); panel.addStyleName("fill-layout-width"); // table//from w w w. j a va 2 s. co m table = new DefaultCellTable<>(5, nameProvider); dataProvider = new ListDataProvider<>(nameProvider); dataProvider.addDataDisplay(table); table.setSelectionModel(selectionModel); // columns Column<ModelNode, String> nameColumn = new TextColumn<ModelNode>() { @Override public String getValue(ModelNode node) { return node.get("name").asString(); } }; nameColumn.setSortable(true); Column<ModelNode, String> valueColumn = new TextColumn<ModelNode>() { @Override public String getValue(ModelNode node) { return node.get("value").asString(); } }; valueColumn.setHorizontalAlignment(HasHorizontalAlignment.ALIGN_CENTER); ColumnSortEvent.ListHandler<ModelNode> sortHandler = new ColumnSortEvent.ListHandler<>( dataProvider.getList()); sortHandler.setComparator(nameColumn, (o1, o2) -> o1.get("name").asString().toLowerCase() .compareTo(o2.get("name").asString().toLowerCase())); table.addColumn(nameColumn, "From"); table.addColumn(valueColumn, "To"); table.setColumnWidth(nameColumn, 30, Style.Unit.PCT); table.setColumnWidth(valueColumn, 70, Style.Unit.PCT); table.addColumnSortHandler(sortHandler); table.getColumnSortList().push(nameColumn); panel.add(table); DefaultPager pager = new DefaultPager(); pager.setDisplay(table); panel.add(pager); return panel; }
From source file:org.jboss.as.console.client.shared.subsys.elytron.ui.SecurityDomainRealmEditor.java
License:Open Source License
private void setupTable() { table = new DefaultCellTable<>(5); table.setSelectionModel(selectionModel); // columns//from ww w . j av a 2 s . c o m Column<ModelNode, String> realmColumn = createColumn("realm"); Column<ModelNode, String> principalTransformColumn = createColumn("principal-transformer"); Column<ModelNode, String> roleDecoderColumn = createColumn("role-decoder"); Column<ModelNode, String> roleMapperColumn = createColumn("role-mapper"); realmColumn.setSortable(true); realmColumn.setHorizontalAlignment(HasHorizontalAlignment.ALIGN_CENTER); principalTransformColumn.setHorizontalAlignment(HasHorizontalAlignment.ALIGN_CENTER); roleDecoderColumn.setHorizontalAlignment(HasHorizontalAlignment.ALIGN_CENTER); roleMapperColumn.setHorizontalAlignment(HasHorizontalAlignment.ALIGN_CENTER); table.addColumn(realmColumn, "Realm"); table.addColumn(principalTransformColumn, "Principal Transform"); table.addColumn(roleDecoderColumn, "Role Decoder"); table.addColumn(roleMapperColumn, "Role Mapper"); table.setColumnWidth(realmColumn, 30, Style.Unit.PCT); table.setColumnWidth(principalTransformColumn, 30, Style.Unit.PCT); table.setColumnWidth(roleDecoderColumn, 20, Style.Unit.PCT); table.setColumnWidth(roleMapperColumn, 20, Style.Unit.PCT); }
From source file:org.jboss.as.console.client.shared.subsys.osgi.runtime.BundleRuntimeView.java
License:Open Source License
@Override protected DefaultCellTable<OSGiBundle> makeEntityTable() { bundleTable = new DefaultCellTable<OSGiBundle>(8); sortHandler = new MyListHandler<OSGiBundle>(); TextColumn<OSGiBundle> idColumn = new TextColumn<OSGiBundle>() { @Override/*w ww .ja va 2s .c o m*/ public String getValue(OSGiBundle record) { return record.getName(); } }; idColumn.setSortable(true); sortHandler.setComparator(idColumn, new Comparator<OSGiBundle>() { @Override public int compare(OSGiBundle o1, OSGiBundle o2) { return new Long(o1.getName()).compareTo(new Long(o2.getName())); } }); bundleTable.addColumn(idColumn, Console.CONSTANTS.subsys_osgi_bundleID()); TextColumn<OSGiBundle> symbolicNameColumn = new TextColumn<OSGiBundle>() { @Override public String getValue(OSGiBundle record) { return record.getSymbolicName(); } }; symbolicNameColumn.setSortable(true); sortHandler.setComparator(symbolicNameColumn, new Comparator<OSGiBundle>() { @Override public int compare(OSGiBundle o1, OSGiBundle o2) { return o1.getSymbolicName().compareTo(o2.getSymbolicName()); } }); bundleTable.addColumn(symbolicNameColumn, Console.CONSTANTS.subsys_osgi_bundleSymbolicName()); TextColumn<OSGiBundle> versionColumn = new TextColumn<OSGiBundle>() { @Override public String getValue(OSGiBundle record) { return record.getVersion(); } }; bundleTable.addColumn(versionColumn, Console.CONSTANTS.subsys_osgi_bundleVersion()); Column<OSGiBundle, ImageResource> stateColumn = new Column<OSGiBundle, ImageResource>( new ImageResourceCell()) { @Override public ImageResource getValue(OSGiBundle bundle) { if ("ACTIVE".equals(bundle.getState())) return Icons.INSTANCE.status_good(); if ("STARTING".equals(bundle.getState())) return Icons.INSTANCE.status_warn(); if ("RESOLVED".equals(bundle.getState())) return Icons.INSTANCE.status_none(); // default return Icons.INSTANCE.status_none(); } }; stateColumn.setSortable(true); sortHandler.setComparator(stateColumn, new Comparator<OSGiBundle>() { @Override public int compare(OSGiBundle o1, OSGiBundle o2) { List<String> order = Arrays.asList("RESOLVED", "STARTING", "ACTIVE"); Integer i1 = order.indexOf(o1.getState()); Integer i2 = order.indexOf(o2.getState()); return i1.compareTo(i2); } }); bundleTable.addColumn(stateColumn, Console.CONSTANTS.subsys_osgi_bundleState()); class BundleColumn extends Column<OSGiBundle, OSGiBundle> { public BundleColumn(Cell<OSGiBundle> cell) { super(cell); } @Override public OSGiBundle getValue(OSGiBundle record) { return record; } } ; TextLinkCell<OSGiBundle> startCell = new TextLinkCell<OSGiBundle>( Console.CONSTANTS.common_label_start() + " ", new ActionCell.Delegate<OSGiBundle>() { @Override public void execute(OSGiBundle bundle) { if ("fragment".equals(bundle.getType())) { Feedback.alert(Console.CONSTANTS.subsys_osgi(), Console.MESSAGES.subsys_osgi_cant_start_fragment(bundle.getSymbolicName())); } else { presenter.startBundle(bundle); } } }); final TextLinkCell<OSGiBundle> stopCell = new TextLinkCell<OSGiBundle>( Console.CONSTANTS.common_label_stop(), new ActionCell.Delegate<OSGiBundle>() { @Override public void execute(OSGiBundle bundle) { if ("fragment".equals(bundle.getType())) { Feedback.alert(Console.CONSTANTS.subsys_osgi(), Console.MESSAGES.subsys_osgi_cant_stop_fragment(bundle.getSymbolicName())); } else { presenter.stopBundle(bundle); } } }); List<HasCell<OSGiBundle, OSGiBundle>> buttonCells = new ArrayList<HasCell<OSGiBundle, OSGiBundle>>(); buttonCells.add(new BundleColumn(startCell)); buttonCells.add(new BundleColumn(stopCell)); BundleColumn myColumn = new BundleColumn(new CompositeCell(buttonCells)); bundleTable.addColumn(myColumn, Console.CONSTANTS.common_label_action()); bundleTable.addColumnSortHandler(sortHandler); bundleTable.getColumnSortList().push(idColumn); // initial sort is on bundle ID return bundleTable; }
From source file:org.jboss.as.console.client.shared.subsys.undertow.FilterRefEditor.java
License:Open Source License
@SuppressWarnings("unchecked") public Widget asWidget() { VerticalPanel panel = new VerticalPanel(); panel.addStyleName("fill-layout-width"); // table/* w w w . j a v a 2s . c o m*/ table = new DefaultCellTable<>(5, nameProvider); dataProvider = new ListDataProvider<>(nameProvider); dataProvider.addDataDisplay(table); table.setSelectionModel(selectionModel); // columns Column<Property, String> nameColumn = new TextColumn<Property>() { @Override public String getValue(Property property) { return property.getName(); } }; nameColumn.setSortable(true); Column<Property, String> predicateColumn = new TextColumn<Property>() { @Override public String getValue(Property property) { return getClassValue(property, "predicate"); } }; Column<Property, String> priorityColumn = new TextColumn<Property>() { @Override public String getValue(Property property) { return getClassValue(property, "priority"); } }; priorityColumn.setHorizontalAlignment(HasHorizontalAlignment.ALIGN_CENTER); predicateColumn.setHorizontalAlignment(HasHorizontalAlignment.ALIGN_CENTER); ColumnSortEvent.ListHandler<Property> sortHandler = new ColumnSortEvent.ListHandler<>( dataProvider.getList()); sortHandler.setComparator(nameColumn, (o1, o2) -> o1.getName().toLowerCase().compareTo(o2.getName().toLowerCase())); table.addColumn(nameColumn, Console.CONSTANTS.common_label_name()); table.addColumn(predicateColumn, "Predicate"); table.addColumn(priorityColumn, "Priority"); table.setColumnWidth(nameColumn, 30, Style.Unit.PCT); table.setColumnWidth(predicateColumn, 40, Style.Unit.PCT); table.setColumnWidth(priorityColumn, 20, Style.Unit.PCT); table.addColumnSortHandler(sortHandler); table.getColumnSortList().push(nameColumn); // tools ToolStrip tools = new ToolStrip(); ToolButton addButton = new ToolButton(Console.CONSTANTS.common_label_add(), event -> { presenter.setSelectedHost(hostname); presenter.onLaunchAddFilterReferenceDialog(operationAddress, hostname); }); ToolButton removeButton = new ToolButton(Console.CONSTANTS.common_label_delete(), event -> { final Property selection = selectionModel.getSelectedObject(); if (selection != null) { Feedback.confirm("Filter reference", Console.MESSAGES.deleteConfirm("Filter reference " + selection.getName()), isConfirmed -> { if (isConfirmed) { presenter.setSelectedHost(hostname); presenter.onRemoveResource(resolvedOperationAddress, selection.getName()); } }); } }); 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.shared.subsys.ws.HandlerClassEditor.java
License:Open Source License
@SuppressWarnings("unchecked") public Widget asWidget() { VerticalPanel panel = new VerticalPanel(); panel.addStyleName("fill-layout-width"); // table/*ww w.j a v a 2 s.c o m*/ table = new DefaultCellTable<>(numRows, nameProvider); dataProvider = new ListDataProvider<>(nameProvider); dataProvider.addDataDisplay(table); final SingleSelectionModel<Property> selectionModel = new SingleSelectionModel<>(nameProvider); table.setSelectionModel(selectionModel); // columns Column<Property, String> nameColumn = new TextColumn<Property>() { @Override public String getValue(Property property) { return property.getName(); } }; nameColumn.setSortable(true); Column<Property, String> classColumn = new TextColumn<Property>() { @Override public String getValue(Property property) { return getClassValue(property).asString(); } }; ColumnSortEvent.ListHandler<Property> sortHandler = new ColumnSortEvent.ListHandler<>( dataProvider.getList()); sortHandler.setComparator(nameColumn, (o1, o2) -> o1.getName().toLowerCase().compareTo(o2.getName().toLowerCase())); table.addColumn(nameColumn, Console.CONSTANTS.common_label_name()); table.addColumn(classColumn, "Handler class"); table.setColumnWidth(nameColumn, 40, Style.Unit.PCT); table.setColumnWidth(classColumn, 60, Style.Unit.PCT); table.addColumnSortHandler(sortHandler); table.getColumnSortList().push(nameColumn); // tools ToolStrip tools = new ToolStrip(); ToolButton addButton = new ToolButton(Console.CONSTANTS.common_label_add(), event -> onAdd()); ToolButton removeButton = new ToolButton(Console.CONSTANTS.common_label_delete(), event -> { final Property selection = selectionModel.getSelectedObject(); if (selection != null) { Feedback.confirm(Console.CONSTANTS.subsys_ws_remove_handler(), Console.MESSAGES.deleteConfirm("handler class " + selection.getName()), new Feedback.ConfirmationHandler() { @Override public void onConfirmation(boolean isConfirmed) { if (isConfirmed) { circuit.dispatch( new DeleteHandler(resolvedOperationAddress, selection.getName())); } } }); } }); addButton.setOperationAddress(operationAddress.getTemplate(), ModelDescriptionConstants.ADD); removeButton.setOperationAddress(operationAddress.getTemplate(), ModelDescriptionConstants.REMOVE); 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.teiid.runtime.VDBModelsTab.java
License:Open Source License
private DefaultCellTable getModelTable(ListHandler<Model> sortHandler) { ProvidesKey keyProvider = new ProvidesKey<Model>() { @Override/*from w w w . j a v a2 s.c o m*/ public Object getKey(Model item) { String key = ""; if (!item.getSourceMappings().isEmpty()) { SourceMapping sm = item.getSourceMappings().get(0); key = sm.getSourceName(); } return getVdbName() + "." + getVdbVersion() + "." + item.getName() + "." + key; } }; final DefaultCellTable modelsTable = new DefaultCellTable<Model>(5, keyProvider); modelsTable.addColumnSortHandler(sortHandler); TextColumn<Model> nameColumn = new TextColumn<Model>() { @Override public String getValue(Model record) { return record.getName(); } }; nameColumn.setSortable(true); sortHandler.setComparator(nameColumn, new Comparator<Model>() { @Override public int compare(Model o1, Model o2) { return o1.getName().compareTo(o2.getName()); } }); TextColumn<Model> modelTypeColumn = new TextColumn<Model>() { @Override public String getValue(Model record) { return record.getModelType(); } }; modelTypeColumn.setSortable(true); sortHandler.setComparator(modelTypeColumn, new Comparator<Model>() { @Override public int compare(Model o1, Model o2) { return o1.getModelType().compareTo(o2.getModelType()); } }); TextColumn<Model> visibleColumn = new TextColumn<Model>() { @Override public String getValue(Model record) { return String.valueOf(record.isVisible()); } }; visibleColumn.setSortable(true); sortHandler.setComparator(visibleColumn, new Comparator<Model>() { @Override public int compare(Model o1, Model o2) { return o1.isVisible().compareTo(o2.isVisible()); } }); TextColumn<Model> multiSourceColumn = new TextColumn<Model>() { @Override public String getValue(Model record) { return String.valueOf(isMultiSource(record)); } }; final TextColumn<Model> sourceNameColumn = new TextColumn<Model>() { @Override public String getValue(Model record) { if (isSource(record)) { return record.getSourceMappings().get(0).getSourceName(); } return ""; } }; sourceNameColumn.setSortable(true); sortHandler.setComparator(sourceNameColumn, new Comparator<Model>() { @Override public int compare(Model o1, Model o2) { SourceMapping sm1 = o1.getSourceMappings().get(0); SourceMapping sm2 = o2.getSourceMappings().get(0); return sm1.getSourceName().compareTo(sm2.getSourceName()); } }); Column<Model, String> jndiNameColumn = new Column<Model, String>(new EditTextCell()) { @Override public String getValue(Model record) { if (isSource(record)) { return record.getSourceMappings().get(0).getJndiName(); } return ""; } }; jndiNameColumn.setFieldUpdater(new FieldUpdater<Model, String>() { public void update(int index, Model model, String value) { changeDataSourceName(model, value); } }); jndiNameColumn.setSortable(true); sortHandler.setComparator(jndiNameColumn, new Comparator<Model>() { @Override public int compare(Model o1, Model o2) { SourceMapping sm1 = o1.getSourceMappings().get(0); SourceMapping sm2 = o2.getSourceMappings().get(0); return sm1.getJndiName().compareTo(sm2.getJndiName()); } }); TextColumn<Model> translatorNameColumn = new TextColumn<Model>() { @Override public String getValue(Model record) { if (isSource(record)) { return record.getSourceMappings().get(0).getTranslatorName(); } return ""; } }; translatorNameColumn.setFieldUpdater(new FieldUpdater<Model, String>() { public void update(int index, Model model, String value) { changeTranslatorName(model, value); } }); translatorNameColumn.setSortable(true); sortHandler.setComparator(translatorNameColumn, new Comparator<Model>() { @Override public int compare(Model o1, Model o2) { SourceMapping sm1 = o1.getSourceMappings().get(0); SourceMapping sm2 = o2.getSourceMappings().get(0); return sm1.getTranslatorName().compareTo(sm2.getTranslatorName()); } }); Column<Model, String> schemaBtn = new Column<Model, String>(new ButtonCell()) { @Override public String getValue(Model record) { return "DDL"; } }; schemaBtn.setFieldUpdater(new FieldUpdater<Model, String>() { @Override public void update(int index, Model model, String value) { showSchema(model); } }); modelsTable.setTitle("Models"); modelsTable.addColumn(nameColumn, "Name"); modelsTable.addColumn(modelTypeColumn, "Type"); modelsTable.addColumn(visibleColumn, "Visible?"); modelsTable.addColumn(multiSourceColumn, "Multi-Source?"); modelsTable.addColumn(sourceNameColumn, "Source Name"); modelsTable.addColumn(translatorNameColumn, "Translator Name"); modelsTable.addColumn(jndiNameColumn, "Datasource JNDI Name"); modelsTable.addColumn(schemaBtn, "Schema"); modelsTable.setSelectionModel(new SingleSelectionModel<Model>(keyProvider)); modelsTable.getColumnSortList().push(nameColumn); return modelsTable; }
From source file:org.jboss.as.console.client.teiid.runtime.VDBRequestsTab.java
License:Open Source License
private DefaultCellTable getRequestsTable(ListHandler<Request> sortHandler, final boolean sourceTable) { ProvidesKey<Request> keyProvider = new ProvidesKey<Request>() { @Override/* w ww.ja v a 2 s. c o m*/ public Object getKey(Request item) { if (sourceTable) { return item.getNodeId(); } return item.getExecutionId(); } }; final DefaultCellTable table = new DefaultCellTable<Request>(20, keyProvider); table.addColumnSortHandler(sortHandler); TextColumn<Request> executionIdColumn = new TextColumn<Request>() { @Override public String getValue(Request record) { if (sourceTable) { return String.valueOf(record.getNodeId()); } return String.valueOf(record.getExecutionId()); } }; executionIdColumn.setSortable(true); sortHandler.setComparator(executionIdColumn, new Comparator<Request>() { @Override public int compare(Request o1, Request o2) { return o1.getExecutionId().compareTo(o2.getExecutionId()); } }); TextColumn<Request> sessionIdColumn = new TextColumn<Request>() { @Override public String getValue(Request record) { return String.valueOf(record.getSessionId()); } }; sessionIdColumn.setSortable(true); sortHandler.setComparator(sessionIdColumn, new Comparator<Request>() { @Override public int compare(Request o1, Request o2) { return o1.getSessionId().compareTo(o2.getSessionId()); } }); Column<Request, Date> timeColumn = new Column<Request, Date>(new DateCell()) { @Override public Date getValue(Request record) { return new Date(record.getStartTime()); } }; timeColumn.setSortable(true); sortHandler.setComparator(timeColumn, new Comparator<Request>() { @Override public int compare(Request o1, Request o2) { return o1.getStartTime().compareTo(o2.getStartTime()); } }); Column<Request, String> cmdColumn = new Column<Request, String>(new ClickableTextCell()) { @Override public String getValue(Request record) { return record.getCommand(); } }; sortHandler.setComparator(cmdColumn, new Comparator<Request>() { @Override public int compare(Request o1, Request o2) { return o1.getCommand().compareTo(o2.getCommand()); } }); Column<Request, String> planBtn = new Column<Request, String>(new ButtonCell()) { @Override public String getValue(Request record) { return "Plan"; } }; planBtn.setFieldUpdater(new FieldUpdater<Request, String>() { @Override public void update(int index, Request request, String value) { showPlanDialog(request); } }); Column<Request, String> cancelBtn = new Column<Request, String>(new ButtonCell()) { @Override public String getValue(Request record) { return "Cancel"; } }; cancelBtn.setFieldUpdater(new FieldUpdater<Request, String>() { @Override public void update(int index, Request request, String value) { cancelQuery(request); } }); table.setSelectionModel(new SingleSelectionModel<Request>(keyProvider)); table.setTitle("Requests"); if (sourceTable) { table.addColumn(executionIdColumn, "Node Id"); } else { table.addColumn(executionIdColumn, "Execution Id"); } table.addColumn(sessionIdColumn, "Session Id"); table.addColumn(timeColumn, "Start Time"); table.addColumn(cmdColumn, "Command"); if (!sourceTable) { table.addColumn(planBtn, "Query Plan"); table.addColumn(cancelBtn, "Cancel Query"); } // sets initial sorting table.getColumnSortList().push(executionIdColumn); return table; }