Example usage for com.google.gwt.user.cellview.client Column setSortable

List of usage examples for com.google.gwt.user.cellview.client Column setSortable

Introduction

In this page you can find the example usage for com.google.gwt.user.cellview.client Column setSortable.

Prototype

public void setSortable(boolean sortable) 

Source Link

Document

Set whether or not the column can be sorted.

Usage

From source file:org.jbpm.workbench.pr.client.editors.variables.history.VariableHistoryPopup.java

License:Apache License

public void init() {
    pager = new SimplePager(SimplePager.TextLocation.CENTER, false, true);
    pagination.rebuild(pager);/*from ww  w.j a  v a  2  s.  c  om*/

    // Set the message to display when the table is empty.
    processVarListGrid.setEmptyTableWidget(new HTMLPanel(instance.No_History_For_This_Variable()));

    sortHandler = new ColumnSortEvent.ListHandler<ProcessVariableSummary>(dataProvider.getList());
    processVarListGrid.addColumnSortHandler(sortHandler);

    // Create a Pager to control the table.

    pager.setDisplay(processVarListGrid);
    pager.setPageSize(5);

    // Setting the RangeChangeHandler
    processVarListGrid.addRangeChangeHandler(new RangeChangeEvent.Handler() {
        @Override
        public void onRangeChange(RangeChangeEvent event) {
            pagination.rebuild(pager);
        }
    });

    // Value.
    com.google.gwt.user.cellview.client.Column<ProcessVariableSummary, String> valueColumn = new com.google.gwt.user.cellview.client.Column<ProcessVariableSummary, String>(
            new PopoverTextCell()) {

        @Override
        public String getValue(ProcessVariableSummary object) {
            return object.getNewValue() != null ? object.getNewValue() : "";
        }
    };

    processVarListGrid.addColumn(valueColumn, instance.Value());
    valueColumn.setSortable(true);
    sortHandler.setComparator(valueColumn, new Comparator<ProcessVariableSummary>() {
        @Override
        public int compare(ProcessVariableSummary o1, ProcessVariableSummary o2) {
            String o1NewValue = o1.getNewValue() != null ? o1.getNewValue() : "";
            String o2NewValue = o2.getNewValue() != null ? o2.getNewValue() : "";
            return o1NewValue.compareTo(o2NewValue);
        }
    });

    // Old Value.
    com.google.gwt.user.cellview.client.Column<ProcessVariableSummary, String> oldValueColumn = new com.google.gwt.user.cellview.client.Column<ProcessVariableSummary, String>(
            new PopoverTextCell()) {

        @Override
        public String getValue(ProcessVariableSummary object) {
            return object.getOldValue() != null ? object.getOldValue() : "";
        }
    };
    oldValueColumn.setSortable(true);

    processVarListGrid.addColumn(oldValueColumn, instance.Previous_Value());
    sortHandler.setComparator(oldValueColumn, new Comparator<ProcessVariableSummary>() {
        @Override
        public int compare(ProcessVariableSummary o1, ProcessVariableSummary o2) {
            String o1OldValue = o1.getOldValue() != null ? o1.getOldValue() : "";
            String o2OldValue = o2.getOldValue() != null ? o2.getOldValue() : "";
            return o1OldValue.compareTo(o2OldValue);
        }
    });

    // Last Time Changed Date.
    com.google.gwt.user.cellview.client.Column<ProcessVariableSummary, String> lastTimeChangedColumn = new com.google.gwt.user.cellview.client.Column<ProcessVariableSummary, String>(
            new TextCell()) {

        @Override
        public void render(Cell.Context context, ProcessVariableSummary variableSummary, SafeHtmlBuilder sb) {

            String title = DateUtils.getDateTimeStr(new Date(variableSummary.getTimestamp()));
            sb.append(DataGridUtils.createDivStart(title));
            super.render(context, variableSummary, sb);
            sb.append(DataGridUtils.createDivEnd());
        }

        @Override
        public String getValue(ProcessVariableSummary variable) {
            return DataGridUtils.trimToColumnWidth(processVarListGrid, this,
                    DateUtils.getDateTimeStr(new Date(variable.getTimestamp())));
        }
    };
    lastTimeChangedColumn.setSortable(true);
    sortHandler.setComparator(lastTimeChangedColumn, new Comparator<ProcessVariableSummary>() {
        @Override
        public int compare(ProcessVariableSummary o1, ProcessVariableSummary o2) {
            return new Long(o1.getTimestamp()).compareTo(new Long(o2.getTimestamp()));
        }
    });

    processVarListGrid.addColumn(lastTimeChangedColumn, instance.Last_Modification());

    dataProvider.addDataDisplay(processVarListGrid);
}

From source file:org.jbpm.workbench.pr.client.editors.variables.list.ProcessVariableListViewImpl.java

License:Apache License

private Column<ProcessVariableSummary, ?> initProcessVariableValueColumn() {
    // Value.//from w  w  w  .j a v a2 s.c o m
    Column<ProcessVariableSummary, String> valueColumn = new Column<ProcessVariableSummary, String>(
            new PopoverTextCell()) {

        @Override
        public String getValue(ProcessVariableSummary object) {
            return (object.getNewValue() != null ? object.getNewValue() : "");
        }
    };
    valueColumn.setSortable(true);
    valueColumn.setDataStoreName(COL_ID_VARVALUE);
    return valueColumn;
}

From source file:org.jbpm.workbench.pr.client.editors.variables.list.ProcessVariableListViewImpl.java

License:Apache License

private Column<ProcessVariableSummary, ?> initProcessVariableLastModifiedColumn() {
    // Last Time Changed Date.
    Column<ProcessVariableSummary, String> lastModificationColumn = new Column<ProcessVariableSummary, String>(
            new TextCell()) {

        @Override/* w  w w .j a v  a  2s . c o  m*/
        public String getValue(ProcessVariableSummary object) {
            return DateUtils.getDateTimeStr(new Date(object.getTimestamp()));
        }
    };
    lastModificationColumn.setSortable(true);
    lastModificationColumn.setDataStoreName(COL_ID_LASTMOD);
    return lastModificationColumn;
}

From source file:org.kaaproject.avro.ui.gwt.client.widget.grid.AbstractGrid.java

License:Apache License

private void processColumnSort(DataGrid<T> table, Column<?, ?> column, Comparator<T> comparator,
        Boolean isSortAscending) {
    if (comparator != null) {
        comparators.put(column, comparator);
        column.setSortable(true);
        if (isSortAscending != null) {
            ColumnSortList.ColumnSortInfo sortInfo = new ColumnSortList.ColumnSortInfo(column,
                    isSortAscending.booleanValue());
            ColumnSortList sortList = table.getColumnSortList();
            sortList.insert(sortList.size(), sortInfo);
        }/*from  w  ww .j a  v a 2s. co m*/
    }
}

From source file:org.kie.dockerui.client.widgets.container.explorer.KieContainersExplorer.java

License:Apache License

/**
 * Add the columns to the table.//  ww  w.  j  a v  a2 s  . co m
 */
private void initTableColumns(final SelectionModel<KieContainer> selectionModel,
        ColumnSortEvent.ListHandler<KieContainer> sortHandler) {

    // Container status.
    final ClickableImageResourceCell statusCell = new ClickableImageResourceCell();
    final Column<KieContainer, ImageResource> statusColumn = new Column<KieContainer, ImageResource>(
            statusCell) {

        @Override
        public ImageResource getValue(final KieContainer container) {
            final boolean isUp = SharedUtils.getContainerStatus(container);
            ImageResource imageResource = null;
            String tooltipText = null;
            if (!isUp) {
                imageResource = Images.INSTANCE.circleGreyCloseIcon();
                String statusText = Constants.INSTANCE.containerIsDown();
                tooltipText = new SafeHtmlBuilder().appendEscaped(statusText).toSafeHtml().asString();
            } else {
                final KieAppStatus status = container.getAppStatus();
                imageResource = ClientUtils.getStatusImage(status);
                String statusText = ClientUtils.getStatusText(status);
                tooltipText = new SafeHtmlBuilder()
                        .appendEscaped(statusText + " (" + Constants.INSTANCE.clickForUpdate() + ")")
                        .toSafeHtml().asString();
            }
            statusCell.setTooltip(tooltipText);
            return imageResource;
        }
    };

    statusColumn.setFieldUpdater(new FieldUpdater<KieContainer, ImageResource>() {
        @Override
        public void update(int index, KieContainer object, ImageResource value) {
            updateStatus(object);
        }
    });
    containerList.addColumn(statusColumn, Constants.INSTANCE.containerStatus());
    containerList.setColumnWidth(statusColumn, 2, Style.Unit.PCT);

    // Container type cells.
    final Column<KieContainer, KieContainer> typeColumn = new Column<KieContainer, KieContainer>(
            new ContainerTypesCell()) {

        @Override
        public KieContainer getValue(KieContainer container) {
            return container;
        }
    };
    containerList.addColumn(typeColumn, Constants.INSTANCE.categories());
    containerList.setColumnWidth(typeColumn, 5, Style.Unit.PCT);

    // Container id.
    final Column<KieContainer, String> idColumn = new Column<KieContainer, String>(new EditTextCell()) {
        @Override
        public String getValue(KieContainer object) {
            return object.getTruncId();
        }
    };
    idColumn.setSortable(true);
    sortHandler.setComparator(idColumn, new Comparator<KieContainer>() {
        @Override
        public int compare(KieContainer o1, KieContainer o2) {
            return o1.getId().compareTo(o2.getId());
        }
    });
    containerList.addColumn(idColumn, Constants.INSTANCE.containerId());
    containerList.setColumnWidth(idColumn, 5, Style.Unit.PCT);

    // Container repository name.
    final Column<KieContainer, String> imageColumn = new Column<KieContainer, String>(new TextCell()) {
        @Override
        public String getValue(final KieContainer object) {
            return object.getRepository();
        }
    };
    imageColumn.setSortable(true);
    sortHandler.setComparator(imageColumn, new Comparator<KieContainer>() {
        @Override
        public int compare(KieContainer o1, KieContainer o2) {
            return o1.getRepository().compareTo(o2.getRepository());
        }
    });
    containerList.addColumn(imageColumn, Constants.INSTANCE.containerImage());
    containerList.setColumnWidth(imageColumn, 5, Style.Unit.PCT);

    // Container tag.
    final Column<KieContainer, String> tagColumn = new Column<KieContainer, String>(new TextCell()) {
        @Override
        public String getValue(final KieContainer object) {
            return object.getTag();
        }
    };
    tagColumn.setSortable(true);
    sortHandler.setComparator(tagColumn, new Comparator<KieContainer>() {
        @Override
        public int compare(KieContainer o1, KieContainer o2) {
            return o1.getTag().compareTo(o2.getTag());
        }
    });
    containerList.addColumn(tagColumn, Constants.INSTANCE.tag());
    containerList.setColumnWidth(tagColumn, 10, Style.Unit.PCT);

    // Container name.
    final Column<KieContainer, String> nameColumn = new Column<KieContainer, String>(new TextCell()) {
        @Override
        public String getValue(final KieContainer object) {
            return object.getName();
        }
    };
    nameColumn.setSortable(true);
    sortHandler.setComparator(nameColumn, new Comparator<KieContainer>() {
        @Override
        public int compare(KieContainer o1, KieContainer o2) {
            return o1.getName().compareTo(o2.getName());
        }
    });
    containerList.addColumn(nameColumn, Constants.INSTANCE.containerName());
    containerList.setColumnWidth(nameColumn, 10, Style.Unit.PCT);

    // Container creation date.
    final Column<KieContainer, String> creationDateColumn = new Column<KieContainer, String>(new TextCell()) {
        @Override
        public String getValue(final KieContainer object) {
            return ClientUtils.formatImageDateTag(object.getCreated());
        }
    };
    creationDateColumn.setSortable(false);
    containerList.addColumn(creationDateColumn, Constants.INSTANCE.containerCreationDate());
    containerList.setColumnWidth(creationDateColumn, 5, Style.Unit.PCT);

    // Container user actions - Button cells.
    final Column<KieContainer, String> actionsColumn = new Column<KieContainer, String>(actionsCell) {
        @Override
        public String getValue(KieContainer container) {
            return container.getId();
        }
    };
    containerList.addColumn(actionsColumn, Constants.INSTANCE.actions());
    containerList.setColumnWidth(actionsColumn, 10, Style.Unit.PCT);

}

From source file:org.kie.dockerui.client.widgets.container.KieContainerDetails.java

License:Apache License

private void configurePortsGrid(final KieContainer container,
        final org.kie.dockerui.shared.model.KieContainerDetails details, final Settings settings) {

    // NOTE: If not removing and re-adding columns, grid tow data refresh is not well done. 
    if (portsGrid.getColumnCount() > 0) {
        portsGrid.removeColumn(0);//from ww  w.ja va2 s .  com
        portsGrid.removeColumn(0);
    }

    // Set emtpy message.
    portsGrid.setEmptyTableWidget(new Label(Constants.INSTANCE.noPorts()));

    // Create Private port column.
    final com.google.gwt.user.cellview.client.Column<Map.Entry<String, String>, String> privatePortColumn = new com.google.gwt.user.cellview.client.Column<Map.Entry<String, String>, String>(
            new EditTextCell()) {
        @Override
        public String getValue(Map.Entry<String, String> object) {
            return object.getKey().toString();
        }
    };
    privatePortColumn.setSortable(false);
    privatePortColumn.setHorizontalAlignment(HasHorizontalAlignment.ALIGN_LEFT);
    portsGrid.addColumn(privatePortColumn, Constants.INSTANCE.privatePort());
    portsGrid.setColumnWidth(privatePortColumn, 40, Style.Unit.PCT);

    // Create Public port column.
    final com.google.gwt.user.cellview.client.Column<Map.Entry<String, String>, String> publicPortColumn = new com.google.gwt.user.cellview.client.Column<Map.Entry<String, String>, String>(
            new EditTextCell()) {
        @Override
        public String getValue(Map.Entry<String, String> object) {
            return object.getValue().toString();
        }
    };
    publicPortColumn.setSortable(false);
    publicPortColumn.setHorizontalAlignment(HasHorizontalAlignment.ALIGN_LEFT);
    portsGrid.addColumn(publicPortColumn, Constants.INSTANCE.publicPort());
    portsGrid.setColumnWidth(publicPortColumn, 40, Style.Unit.PCT);

    final List<Map.Entry<String, String>> list = ClientUtils.toMapEntries(container.getPorts());
    if (list != null) {
        portsGrid.setRowCount(list.size());
        portsGrid.setRowData(0, list);
    }

}

From source file:org.kie.dockerui.client.widgets.container.KieContainerDetails.java

License:Apache License

private void configureEnvVarsGrid(final KieContainer container,
        final org.kie.dockerui.shared.model.KieContainerDetails details, final Settings settings) {

    // NOTE: If not removing and re-adding columns, grid tow data refresh is not well done. 
    if (envVarsGrid.getColumnCount() > 0) {
        envVarsGrid.removeColumn(0);//from  w w  w .  j  a  v a2s  .c  om
        envVarsGrid.removeColumn(0);
    }

    // Set emtpy message.
    envVarsGrid.setEmptyTableWidget(new Label(Constants.INSTANCE.noEnvVars()));

    // Create name column.
    final com.google.gwt.user.cellview.client.Column<Map.Entry<String, String>, String> nameColumn = new com.google.gwt.user.cellview.client.Column<Map.Entry<String, String>, String>(
            new EditTextCell()) {
        @Override
        public String getValue(Map.Entry<String, String> object) {
            return object.getKey().toString();
        }
    };
    nameColumn.setSortable(false);
    nameColumn.setHorizontalAlignment(HasHorizontalAlignment.ALIGN_LEFT);
    envVarsGrid.addColumn(nameColumn, Constants.INSTANCE.name());
    envVarsGrid.setColumnWidth(nameColumn, 20, Style.Unit.PCT);

    // Create value column.
    final com.google.gwt.user.cellview.client.Column<Map.Entry<String, String>, String> valueColumn = new com.google.gwt.user.cellview.client.Column<Map.Entry<String, String>, String>(
            new EditTextCell()) {
        @Override
        public String getValue(Map.Entry<String, String> object) {
            return object.getValue().toString();
        }
    };
    valueColumn.setSortable(false);
    valueColumn.setHorizontalAlignment(HasHorizontalAlignment.ALIGN_LEFT);
    envVarsGrid.addColumn(valueColumn, Constants.INSTANCE.value());
    envVarsGrid.setColumnWidth(valueColumn, 20, Style.Unit.PCT);

    final List<Map.Entry<String, String>> list = ClientUtils.toMapEntries(details.getEnvVars(), "=");
    if (list != null) {
        envVarsGrid.setRowCount(list.size());
        envVarsGrid.setRowData(0, list);
    }

}

From source file:org.kie.dockerui.client.widgets.KieContainersExplorer.java

License:Apache License

/**
 * Add the columns to the table./*from   ww w . ja v a  2  s .c o  m*/
 */
private void initTableColumns(final SelectionModel<KieContainer> selectionModel,
        ColumnSortEvent.ListHandler<KieContainer> sortHandler) {

    // Container status.
    final ButtonWithTitleCell statusCell = new ButtonWithTitleCell(IconType.OK_CIRCLE);
    statusCell.setSize(ButtonSize.SMALL);
    final Column<KieContainer, String> statusColumn = new Column<KieContainer, String>(statusCell) {

        @Override
        public String getValue(final KieContainer container) {
            final KieAppStatus status = container.getAppStatus();
            final IconType iconType = ClientUtils.getStatusIcon(status);
            final StringBuilder iconTooltip = new StringBuilder(ClientUtils.getStatusText(status));
            iconTooltip.append(" (").append(Constants.INSTANCE.clickForUpdate()).append(")");
            statusCell.setIcon(iconType);
            statusCell.setTitle(iconTooltip.toString());
            return "";
        }
    };
    // TODO: Not firing
    statusColumn.setFieldUpdater(new FieldUpdater<KieContainer, String>() {
        @Override
        public void update(int index, KieContainer object, String value) {
            updateStatus(object);
        }
    });
    containerList.addColumn(statusColumn, Constants.INSTANCE.containerStatus());
    containerList.setColumnWidth(statusColumn, 2, Style.Unit.PCT);

    // Container type cells.
    final Column<KieContainer, KieContainer> typeColumn = new Column<KieContainer, KieContainer>(
            new ContainerTypesCell()) {

        @Override
        public KieContainer getValue(KieContainer container) {
            return container;
        }
    };
    containerList.addColumn(typeColumn, Constants.INSTANCE.categories());
    containerList.setColumnWidth(typeColumn, 5, Style.Unit.PCT);

    // Container id.
    final Column<KieContainer, String> idColumn = new Column<KieContainer, String>(new EditTextCell()) {
        @Override
        public String getValue(KieContainer object) {
            return object.getTruncId();
        }
    };
    idColumn.setSortable(true);
    sortHandler.setComparator(idColumn, new Comparator<KieContainer>() {
        @Override
        public int compare(KieContainer o1, KieContainer o2) {
            return o1.getId().compareTo(o2.getId());
        }
    });
    containerList.addColumn(idColumn, Constants.INSTANCE.containerId());
    containerList.setColumnWidth(idColumn, 5, Style.Unit.PCT);

    // Container repository name.
    final Column<KieContainer, String> imageColumn = new Column<KieContainer, String>(new TextCell()) {
        @Override
        public String getValue(final KieContainer object) {
            return object.getRepository();
        }
    };
    imageColumn.setSortable(true);
    sortHandler.setComparator(imageColumn, new Comparator<KieContainer>() {
        @Override
        public int compare(KieContainer o1, KieContainer o2) {
            return o1.getRepository().compareTo(o2.getRepository());
        }
    });
    containerList.addColumn(imageColumn, Constants.INSTANCE.containerImage());
    containerList.setColumnWidth(imageColumn, 5, Style.Unit.PCT);

    // Container tag.
    final Column<KieContainer, String> tagColumn = new Column<KieContainer, String>(new TextCell()) {
        @Override
        public String getValue(final KieContainer object) {
            return object.getTag();
        }
    };
    tagColumn.setSortable(true);
    sortHandler.setComparator(tagColumn, new Comparator<KieContainer>() {
        @Override
        public int compare(KieContainer o1, KieContainer o2) {
            return o1.getTag().compareTo(o2.getTag());
        }
    });
    containerList.addColumn(tagColumn, Constants.INSTANCE.tag());
    containerList.setColumnWidth(tagColumn, 10, Style.Unit.PCT);

    // Container name.
    final Column<KieContainer, String> nameColumn = new Column<KieContainer, String>(new TextCell()) {
        @Override
        public String getValue(final KieContainer object) {
            return object.getName();
        }
    };
    nameColumn.setSortable(true);
    sortHandler.setComparator(nameColumn, new Comparator<KieContainer>() {
        @Override
        public int compare(KieContainer o1, KieContainer o2) {
            return o1.getName().compareTo(o2.getName());
        }
    });
    containerList.addColumn(nameColumn, Constants.INSTANCE.containerName());
    containerList.setColumnWidth(nameColumn, 10, Style.Unit.PCT);

    // Container creation date.
    final Column<KieContainer, String> creationDateColumn = new Column<KieContainer, String>(new TextCell()) {
        @Override
        public String getValue(final KieContainer object) {
            return DateTimeFormat.getMediumDateTimeFormat().format(object.getCreated());
        }
    };
    creationDateColumn.setSortable(false);
    containerList.addColumn(creationDateColumn, Constants.INSTANCE.containerCreationDate());
    containerList.setColumnWidth(creationDateColumn, 5, Style.Unit.PCT);

    // Container user actions - Button cells.
    final Column<KieContainer, String> actionsColumn = new Column<KieContainer, String>(actionsCell) {
        @Override
        public String getValue(KieContainer container) {
            return container.getId();
        }
    };
    containerList.addColumn(actionsColumn, Constants.INSTANCE.actions());
    containerList.setColumnWidth(actionsColumn, 10, Style.Unit.PCT);

}

From source file:org.kie.workbench.common.dmn.showcase.client.screens.notifications.Notifications.java

License:Apache License

private Column<Notification, String> createTypeColumn(
        final ColumnSortEvent.ListHandler<Notification> sortHandler) {
    final Cell<String> typeCell = new TextCell();
    final Column<Notification, String> typeColumn = new Column<Notification, String>(typeCell) {
        @Override/*from   w ww  . ja v a  2 s.  c  o  m*/
        public String getValue(final Notification object) {
            return getNotificationTypeMessage(object);
        }
    };
    typeColumn.setSortable(true);
    sortHandler.setComparator(typeColumn, (o1, o2) -> o1.getType().compareTo(o2.getType()));
    return typeColumn;
}

From source file:org.kie.workbench.common.dmn.showcase.client.screens.notifications.Notifications.java

License:Apache License

private Column<Notification, String> createContextColumn() {
    final Cell<String> contextCell = new TextCell();
    final Column<Notification, String> contextColumn = new Column<Notification, String>(contextCell) {
        @Override/*from  w ww .ja  v  a2  s.  c o  m*/
        public String getValue(final Notification object) {
            return getNotificationContextMessage(object);
        }
    };
    contextColumn.setSortable(false);
    return contextColumn;
}