Example usage for com.google.gwt.gen2.table.client DefaultTableDefinition DefaultTableDefinition

List of usage examples for com.google.gwt.gen2.table.client DefaultTableDefinition DefaultTableDefinition

Introduction

In this page you can find the example usage for com.google.gwt.gen2.table.client DefaultTableDefinition DefaultTableDefinition.

Prototype

public DefaultTableDefinition() 

Source Link

Document

Create a new TableDefinition .

Usage

From source file:com.google.gwt.gen2.demo.scrolltable.client.PagingScrollTableDemo.java

License:Apache License

/**
 * @return the {@link TableDefinition} with all ColumnDefinitions defined.
 */// w  w w.j  a va  2  s.com
private TableDefinition<Student> createTableDefinition() {
    // Define some cell renderers
    CellRenderer<Student, Integer> intCellRenderer = new CellRenderer<Student, Integer>() {
        public void renderRowValue(Student rowValue, ColumnDefinition<Student, Integer> columnDef,
                AbstractCellView<Student> view) {
            view.setHorizontalAlignment(HasHorizontalAlignment.ALIGN_RIGHT);
            view.setHTML(columnDef.getCellValue(rowValue).toString());
        }
    };

    // Create the table definition
    tableDefinition = new DefaultTableDefinition<Student>();

    // Set the row renderer
    String[] rowColors = new String[] { "#FFFFDD", "#EEEEEE" };
    tableDefinition.setRowRenderer(new DefaultRowRenderer<Student>(rowColors));

    // First name
    {
        StudentColumnDefinition<String> columnDef = new StudentColumnDefinition<String>("First Name",
                Group.GENERAL) {
            @Override
            public String getCellValue(Student rowValue) {
                return rowValue.getFirstName();
            }

            @Override
            public void setCellValue(Student rowValue, String cellValue) {
                rowValue.setFirstName(cellValue);
            }
        };
        columnDef.setMinimumColumnWidth(50);
        columnDef.setPreferredColumnWidth(100);
        columnDef.setColumnSortable(true);
        columnDef.setColumnTruncatable(false);
        tableDefinition.addColumnDefinition(columnDef);
    }

    // Last name
    {
        StudentColumnDefinition<String> columnDef = new StudentColumnDefinition<String>("Last Name",
                Group.GENERAL) {
            @Override
            public String getCellValue(Student rowValue) {
                return rowValue.getLastName();
            }

            @Override
            public void setCellValue(Student rowValue, String cellValue) {
                rowValue.setLastName(cellValue);
            }
        };
        columnDef.setMinimumColumnWidth(50);
        columnDef.setPreferredColumnWidth(100);
        columnDef.setColumnSortable(true);
        columnDef.setColumnTruncatable(false);
        tableDefinition.addColumnDefinition(columnDef);
    }

    // Age
    {
        StudentColumnDefinition<Integer> columnDef = new StudentColumnDefinition<Integer>("Age",
                Group.GENERAL) {
            @Override
            public Integer getCellValue(Student rowValue) {
                return rowValue.getAge();
            }

            @Override
            public void setCellValue(Student rowValue, Integer cellValue) {
                rowValue.setAge(cellValue);
            }
        };

        // Dynamic footer provides range of ages
        StudentFooterProperty prop = new StudentFooterProperty() {
            @Override
            public Object getFooter(int row, int column) {
                if (row == 1) {
                    int min = -1;
                    int max = -1;
                    int rowCount = pagingScrollTable.getDataTable().getRowCount();
                    for (int i = 0; i < rowCount; i++) {
                        int age = pagingScrollTable.getRowValue(i).getAge();
                        if (min == -1) {
                            min = age;
                            max = age;
                        } else {
                            min = Math.min(min, age);
                            max = Math.max(max, age);
                        }
                    }
                    return min + "-" + max;
                }
                return super.getFooter(row, column);
            }
        };
        prop.setFooterCount(2);
        prop.setDynamic(true);
        columnDef.setColumnProperty(FooterProperty.TYPE, prop);

        columnDef.setCellRenderer(intCellRenderer);
        columnDef.setMinimumColumnWidth(35);
        columnDef.setPreferredColumnWidth(35);
        columnDef.setMaximumColumnWidth(35);
        columnDef.setColumnSortable(true);
        tableDefinition.addColumnDefinition(columnDef);
    }

    // Gender
    {
        StudentColumnDefinition<Boolean> columnDef = new StudentColumnDefinition<Boolean>("Gender",
                Group.GENERAL) {
            @Override
            public Boolean getCellValue(Student rowValue) {
                return rowValue.isMale();
            }

            @Override
            public void setCellValue(Student rowValue, Boolean cellValue) {
                rowValue.setMale(cellValue);
            }
        };
        columnDef.setCellRenderer(new CellRenderer<Student, Boolean>() {
            public void renderRowValue(Student rowValue, ColumnDefinition<Student, Boolean> columnDef,
                    AbstractCellView<Student> view) {
                if (rowValue.isMale()) {
                    view.setHTML("male");
                } else {
                    view.setHTML("female");
                }
            }
        });
        columnDef.setMinimumColumnWidth(45);
        columnDef.setPreferredColumnWidth(45);
        columnDef.setMaximumColumnWidth(45);
        columnDef.setColumnSortable(true);
        tableDefinition.addColumnDefinition(columnDef);

        // Setup the cellEditor
        RadioCellEditor<Boolean> cellEditor = new RadioCellEditor<Boolean>();
        cellEditor.setLabel("Select a gender:");
        cellEditor.addRadioButton(new RadioButton("editorGender", "male"), true);
        cellEditor.addRadioButton(new RadioButton("editorGender", "female"), false);
        columnDef.setCellEditor(cellEditor);
    }

    // Race
    {
        StudentColumnDefinition<String> columnDef = new StudentColumnDefinition<String>("Race", Group.GENERAL) {
            @Override
            public String getCellValue(Student rowValue) {
                return rowValue.getRace();
            }

            @Override
            public void setCellValue(Student rowValue, String cellValue) {
                rowValue.setRace(cellValue);
            }
        };
        columnDef.setMinimumColumnWidth(45);
        columnDef.setPreferredColumnWidth(55);
        columnDef.setMaximumColumnWidth(70);
        columnDef.setColumnSortable(true);
        tableDefinition.addColumnDefinition(columnDef);

        // Setup the cell editor
        ListCellEditor<String> cellEditor = new ListCellEditor<String>();
        for (int i = 0; i < StudentGenerator.races.length; i++) {
            String race = StudentGenerator.races[i];
            cellEditor.addItem(race, race);
        }
        columnDef.setCellEditor(cellEditor);
    }

    // Favorite color
    {
        StudentColumnDefinition<String> columnDef = new StudentColumnDefinition<String>("Favorite Color",
                null) {
            @Override
            public String getCellValue(Student rowValue) {
                return rowValue.getFavoriteColor();
            }

            @Override
            public void setCellValue(Student rowValue, String cellValue) {
                rowValue.setFavoriteColor(cellValue);
            }
        };
        columnDef.setCellRenderer(new CellRenderer<Student, String>() {
            public void renderRowValue(Student rowValue, ColumnDefinition<Student, String> columnDef,
                    AbstractCellView<Student> view) {
                String color = rowValue.getFavoriteColor();
                view.setStyleAttribute("color", color);
                view.setHTML(color);
            }
        });
        columnDef.setPreferredColumnWidth(80);
        columnDef.setColumnSortable(true);
        columnDef.setHeaderTruncatable(false);
        tableDefinition.addColumnDefinition(columnDef);

        // Setup the cell editor
        RadioCellEditor<String> cellEditor = new RadioCellEditor<String>();
        cellEditor.setLabel("Select a color:");
        for (int i = 0; i < StudentGenerator.colors.length; i++) {
            String color = StudentGenerator.colors[i];
            String text = "<FONT color=\"" + color + "\">" + color + "</FONT>";
            cellEditor.addRadioButton(new RadioButton("editorColor", text, true), color);
        }
        columnDef.setCellEditor(cellEditor);
    }

    // Favorite Sport
    {
        StudentColumnDefinition<String> columnDef = new StudentColumnDefinition<String>("Preferred Sport",
                null) {
            @Override
            public String getCellValue(Student rowValue) {
                return rowValue.getFavoriteSport();
            }

            @Override
            public void setCellValue(Student rowValue, String cellValue) {
                rowValue.setFavoriteSport(cellValue);
            }
        };
        columnDef.setPreferredColumnWidth(110);
        columnDef.setColumnSortable(true);
        tableDefinition.addColumnDefinition(columnDef);

        // Setup the cell editor
        ListCellEditor<String> cellEditor = new ListCellEditor<String>();
        cellEditor.setLabel("Select a sport:");
        for (int i = 0; i < StudentGenerator.sports.length; i++) {
            String sport = StudentGenerator.sports[i];
            cellEditor.addItem(sport, sport);
        }
        columnDef.setCellEditor(cellEditor);
    }

    // College
    {
        StudentColumnDefinition<String> columnDef = new StudentColumnDefinition<String>("College",
                Group.SCHOOL) {
            @Override
            public String getCellValue(Student rowValue) {
                return rowValue.getCollege();
            }

            @Override
            public void setCellValue(Student rowValue, String cellValue) {
                rowValue.setCollege(cellValue);
            }
        };
        columnDef.setMinimumColumnWidth(50);
        columnDef.setPreferredColumnWidth(180);
        columnDef.setMaximumColumnWidth(250);
        columnDef.setColumnSortable(true);
        columnDef.setColumnTruncatable(false);
        tableDefinition.addColumnDefinition(columnDef);

        // Setup the cell editor
        TextCellEditor cellEditor = new TextCellEditor() {
            @Override
            public boolean onAccept() {
                if (getValue().equals("")) {
                    Window.alert("You must enter a school");
                    return false;
                }
                return true;
            }

            @Override
            protected int getOffsetLeft() {
                return -8;
            }

            @Override
            protected int getOffsetTop() {
                return -10;
            }
        };
        columnDef.setCellEditor(cellEditor);
    }

    // Graduation year
    {
        StudentColumnDefinition<Integer> columnDef = new StudentColumnDefinition<Integer>("Year",
                Group.SCHOOL) {
            @Override
            public Integer getCellValue(Student rowValue) {
                return rowValue.getGraduationYear();
            }

            @Override
            public void setCellValue(Student rowValue, Integer cellValue) {
                rowValue.setGraduationYear(cellValue);
            }
        };

        // Dynamic footer provides range of ages
        StudentFooterProperty prop = new StudentFooterProperty() {
            @Override
            public Object getFooter(int row, int column) {
                if (row == 1) {
                    int min = -1;
                    int max = -1;
                    int rowCount = pagingScrollTable.getDataTable().getRowCount();
                    for (int i = 0; i < rowCount; i++) {
                        int year = pagingScrollTable.getRowValue(i).getGraduationYear();
                        if (min == -1) {
                            min = year;
                            max = year;
                        } else {
                            min = Math.min(min, year);
                            max = Math.max(max, year);
                        }
                    }
                    return min + "-" + max;
                }
                return super.getFooter(row, column);
            }
        };
        prop.setFooterCount(2);
        prop.setDynamic(true);
        columnDef.setColumnProperty(FooterProperty.TYPE, prop);

        columnDef.setCellRenderer(intCellRenderer);
        columnDef.setPreferredColumnWidth(35);
        columnDef.setMinimumColumnWidth(35);
        columnDef.setMaximumColumnWidth(35);
        columnDef.setColumnSortable(true);
        columnDef.setColumnTruncatable(false);
        tableDefinition.addColumnDefinition(columnDef);
    }

    // GPA
    {
        StudentColumnDefinition<Double> columnDef = new StudentColumnDefinition<Double>("GPA", Group.SCHOOL) {
            @Override
            public Double getCellValue(Student rowValue) {
                return rowValue.getGpa();
            }

            @Override
            public void setCellValue(Student rowValue, Double cellValue) {
                rowValue.setGpa(cellValue);
            }
        };

        // Dynamic footer provides average GPA
        StudentFooterProperty prop = new StudentFooterProperty() {
            @Override
            public Object getFooter(int row, int column) {
                if (row == 1) {
                    double avg = 0;
                    int rowCount = pagingScrollTable.getDataTable().getRowCount();
                    for (int i = 0; i < rowCount; i++) {
                        avg += pagingScrollTable.getRowValue(i).getGpa();
                    }
                    avg /= rowCount;
                    return gpaToString(avg);
                }
                return super.getFooter(row, column);
            }
        };
        prop.setFooterCount(2);
        prop.setDynamic(true);
        columnDef.setColumnProperty(FooterProperty.TYPE, prop);

        // Custom renderer uses background colors based on GPA
        columnDef.setCellRenderer(new CellRenderer<Student, Double>() {
            public void renderRowValue(Student rowValue, ColumnDefinition<Student, Double> columnDef,
                    AbstractCellView<Student> view) {
                view.setHorizontalAlignment(HasHorizontalAlignment.ALIGN_RIGHT);
                double gpa = rowValue.getGpa();
                if (gpa < 2) {
                    view.setStyleName("badGPA");
                } else if (gpa < 3) {
                    view.setStyleName("goodGPA");
                } else {
                    view.setStyleName("greatGPA");
                }
                view.setHTML(gpaToString(gpa));
            }
        });
        columnDef.setPreferredColumnWidth(35);
        columnDef.setMinimumColumnWidth(35);
        columnDef.setMaximumColumnWidth(35);
        columnDef.setColumnSortable(true);
        columnDef.setColumnTruncatable(false);
        tableDefinition.addColumnDefinition(columnDef);
    }

    // ID
    {
        StudentColumnDefinition<Integer> columnDef = new StudentColumnDefinition<Integer>("ID", Group.LOGIN) {
            @Override
            public Integer getCellValue(Student rowValue) {
                return rowValue.getId();
            }

            @Override
            public void setCellValue(Student rowValue, Integer cellValue) {
                rowValue.setId(cellValue);
            }
        };
        columnDef.setCellRenderer(intCellRenderer);
        columnDef.setPreferredColumnWidth(55);
        columnDef.setColumnTruncatable(false);
        tableDefinition.addColumnDefinition(columnDef);
    }

    // Pin
    {
        StudentColumnDefinition<Integer> columnDef = new StudentColumnDefinition<Integer>("Pin", Group.LOGIN) {
            @Override
            public Integer getCellValue(Student rowValue) {
                return rowValue.getPin();
            }

            @Override
            public void setCellValue(Student rowValue, Integer cellValue) {
                rowValue.setPin(cellValue);
            }
        };
        columnDef.setCellRenderer(intCellRenderer);
        columnDef.setPreferredColumnWidth(45);
        columnDef.setColumnTruncatable(false);
        tableDefinition.addColumnDefinition(columnDef);
    }

    return tableDefinition;
}

From source file:com.qualogy.qafe.gwt.client.ui.renderer.DataGridFactory.java

License:Apache License

public static UIObject createPagingDataGrid(final DataGridGVO gvo, final String uuid, final String parent) {
    final QTableModel tableModel = new QTableModel();

    if (gvo.getPageSize() != null) {
        tableModel.setRowCount(gvo.getPageSize());
    }//ww w  . j a va  2s .  c o m

    // Create a TableCellRenderer
    final TableDefinition<DataContainerGVO> tableDef = new DefaultTableDefinition<DataContainerGVO>();
    final FixedWidthFlexTable headerTable = new FixedWidthFlexTable();
    final FixedWidthGrid dataTable = new FixedWidthGrid();

    if (gvo.getMultipleSelect() != null && gvo.getMultipleSelect().booleanValue()) {
        dataTable.setSelectionPolicy(SelectionPolicy.MULTI_ROW);
    } else {
        dataTable.setSelectionPolicy(SelectionPolicy.ONE_ROW);
    }

    final QPagingScrollTable pagingScrollTable = new QPagingScrollTable(tableModel, dataTable, headerTable,
            tableDef, gvo, uuid, parent);
    tableModel.setSource(pagingScrollTable);
    // setup the bulk renderer
    final FixedWidthGridBulkRenderer<DataContainerGVO> bulkRenderer = new FixedWidthGridBulkRenderer<DataContainerGVO>(
            pagingScrollTable.getDataTable(), pagingScrollTable);

    pagingScrollTable.setBulkRenderer(bulkRenderer);

    if (gvo.getStyleClass() != null) {
        pagingScrollTable.setStylePrimaryName(gvo.getStyleClass());
    }

    pagingScrollTable.setPageSize(gvo.getPageSize(), true);
    pagingScrollTable.setEmptyTableWidget(new AbstractComponentRenderer.MessageBox());
    pagingScrollTable.setup();
    pagingScrollTable.fillWidth();
    pagingScrollTable.setResizePolicy(ResizePolicy.FILL_WIDTH);

    // Setup the formatting
    pagingScrollTable.setCellPadding(3);
    pagingScrollTable.setCellSpacing(0);

    FlexTable layout = null;
    if (gvo.getMenu() != null) {
        final ComponentGVO finalComponentGVO = gvo;
        final String finalUuid = uuid;
        final String finalParent = parent;
        layout = new FlexTable() {
            @Override
            public void onBrowserEvent(final Event event) {
                if (event.getTypeInt() == Event.ONCONTEXTMENU) {
                    DOM.eventPreventDefault(event);
                    AbstractComponentRenderer.applyContextMenu(event, finalComponentGVO, finalUuid,
                            finalParent);
                }
                super.onBrowserEvent(event);
            }

            @Override
            protected void setElement(final Element elem) {
                super.setElement(elem);
                sinkEvents(Event.ONCONTEXTMENU);
            }
        };
    } else {
        layout = new FlexTable();
    }
    layout.setWidth("100%");
    final FlexCellFormatter formatter = layout.getFlexCellFormatter();
    // Add the scroll table to the layout
    layout.setWidget(0, 0, pagingScrollTable);
    formatter.setWidth(0, 0, "100%");
    formatter.setVerticalAlignment(0, 0, HasVerticalAlignment.ALIGN_TOP);

    final QPagingScrollTableOperation operations = new QPagingScrollTableOperation(pagingScrollTable);
    operations.initForCallback(gvo.getId(), uuid, parent, gvo.getContext());
    operations.setVisible(true);
    final HorizontalPanel hp = new HorizontalPanel();
    QPagingOptions pagingOptions = null;
    final Integer pageSize = gvo.getPageSize();
    if ((pageSize != null) && (pageSize > -1)) {
        pagingOptions = new QPagingOptions(pagingScrollTable);
        pagingOptions.initForCallback(gvo.getId(), uuid, parent, gvo.getContext());
        pagingOptions.setVisible(true);
        hp.add(pagingOptions);
        if (gvo.getPageScroll()) {
            pagingScrollTable.addScrollHandler(pagingScrollTable);
            pagingOptions.setVisible(false);
        }
    }

    hp.add(operations);
    layout.insertRow(1);
    layout.setWidget(1, 0, hp);
    RendererHelper.fillIn(gvo, pagingScrollTable, uuid, parent, gvo.getContext());

    if (gvo.hasOverFlow()) {
        final UIObject overflow = AnyComponentRenderer.getInstance().render(gvo.getOverflow(), uuid, parent,
                gvo.getContext());
        if (overflow != null && overflow instanceof Widget) {
            ((HasDataGridMethods) pagingScrollTable).setOverflow((Widget) overflow);
            layout.insertRow(2);
            layout.setWidget(2, 0, (Widget) overflow);
            RendererHelper.addVisibleInfo(gvo, overflow);
        }
    }
    return layout;
}

From source file:com.qualogy.qafe.gwt.client.ui.renderer.DataGridFactory.java

License:Apache License

public static TableDefinition<DataContainerGVO> createTableDefinition(final DataGridGVO source,
        final DataGridColumnGVO[] dataGridColumnGVOs, final String uuid, final String parent,
        final HasDataGridMethods parentWidget) {
    // Create the table definition
    final DefaultTableDefinition<DataContainerGVO> tableDefinition = new DefaultTableDefinition<DataContainerGVO>();

    // Set the row renderer
    if (source.getRowColors() != null && source.getRowColors().length > 0) {
        tableDefinition.setRowRenderer(new QDefaultRowRenderer<DataContainerGVO>(source.getRowColors()));

    } else {//from  www  . ja v  a2 s.  com
        tableDefinition.setRowRenderer(new DefaultRowRenderer<DataContainerGVO>());
    }

    final ArrayList<DataGridColumnGVO> copyDataGridColumnGVOs = new ArrayList<DataGridColumnGVO>();

    // Column to show the status of the row visibly
    if ((source.getAdd() || source.getDelete() || source.getEditable()) && dataGridColumnGVOs != null
            && !DataMap.ROW_NUMBER.equals(dataGridColumnGVOs[0].getFieldName())) {
        final DataGridColumnGVO rowNumberDataGridColumnGVO = new DataGridColumnGVO();
        final LabelGVO rowNumberLabel = new LabelGVO();
        rowNumberDataGridColumnGVO.setComponent(rowNumberLabel);
        rowNumberDataGridColumnGVO.setFieldName(DataMap.ROW_NUMBER);
        rowNumberDataGridColumnGVO.setWidth("25");
        rowNumberDataGridColumnGVO.setContainerName(source.getId());
        rowNumberDataGridColumnGVO.setContext(source.getContext());
        resolveEvents4RowNumber(rowNumberDataGridColumnGVO, source);
        copyDataGridColumnGVOs.add(rowNumberDataGridColumnGVO);
    }

    if (dataGridColumnGVOs != null) {
        for (final DataGridColumnGVO dgColumnGVO : dataGridColumnGVOs) {
            copyDataGridColumnGVOs.add(dgColumnGVO);
        }
    }

    DataGridColumnGVO[] dataGridColumnGVOsArray = new DataGridColumnGVO[copyDataGridColumnGVOs.size()];
    dataGridColumnGVOsArray = copyDataGridColumnGVOs.toArray(dataGridColumnGVOsArray);
    if (dataGridColumnGVOs != null) { // If there are columns defined
        source.setColumns(dataGridColumnGVOsArray);
    }

    if (copyDataGridColumnGVOs != null) {
        for (int i = 0; i < dataGridColumnGVOsArray.length; i++) {
            final DataGridColumnGVO dataGridColumnGVO = dataGridColumnGVOsArray[i];
            if (dataGridColumnGVO.isQafeChecksum()) {
                continue;
            }
            final String columnName = dataGridColumnGVO.getFieldName();
            final String columnWidth = dataGridColumnGVO.getWidth();
            final Boolean columnVisible = dataGridColumnGVO.getVisible();

            final QColumnDefinition columnDef = new QColumnDefinition();
            columnDef.setField(columnName);
            columnDef.setIdentifyingField(dataGridColumnGVO.getIdentifyingField());
            columnDef.setColumnSortable(dataGridColumnGVO.getSortable());
            if (columnWidth != null && columnWidth.length() > 0) {
                try {
                    columnDef.setPreferredColumnWidth(Integer.parseInt(columnWidth));
                } catch (final Exception e) {
                    ClientApplicationContext.getInstance()
                            .log("Could not parse column width for datagrid (id" + source.getId()
                                    + ") or name (" + source.getFieldName() + ") for column (id="
                                    + dataGridColumnGVO.getId() + ",name=" + columnName + ")");
                }
            }

            tableDefinition.addColumnDefinition(columnDef);
            if ((columnVisible != null) && !columnVisible) {
                tableDefinition.setColumnVisible(columnDef, columnVisible);
            }

            final CellRenderer<DataContainerGVO, String> cellRenderer = CellRendererHelper
                    .getCellRenderer(source, dataGridColumnGVO, uuid, parent, parentWidget);
            if (cellRenderer != null) {
                columnDef.setCellRenderer(cellRenderer);
            }
            final CellCleaner cellCleaner = CellRendererHelper.getCellCleaner(source, dataGridColumnGVO, uuid,
                    parent, parentWidget);
            columnDef.setCellCleaner(cellCleaner);
        }
    }
    return tableDefinition;
}

From source file:org.gss_project.gss.admin.client.ui.FilesTable.java

License:Open Source License

private DefaultTableDefinition<FileHeaderDTO> createTableDefinition() {
    tableDefinition = new DefaultTableDefinition<FileHeaderDTO>();

    final String[] rowColors = new String[] { "#FFFFDD", "EEEEEE" };
    tableDefinition.setRowRenderer(new DefaultRowRenderer<FileHeaderDTO>(rowColors));

    // id// ww  w . j  a  va2  s  .com
    {
        IdColumnDefinition columnDef = new IdColumnDefinition();
        columnDef.setColumnSortable(true);
        columnDef.setColumnTruncatable(false);
        columnDef.setPreferredColumnWidth(35);
        columnDef.setHeader(0, new HTML("Id"));
        columnDef.setHeaderCount(1);
        columnDef.setHeaderTruncatable(false);
        tableDefinition.addColumnDefinition(columnDef);
    }
    {
        NameColumnDefinition columnDef = new NameColumnDefinition();
        columnDef.setColumnSortable(true);
        columnDef.setColumnTruncatable(true);
        columnDef.setHeader(0, new HTML("File Name"));
        columnDef.setHeaderCount(1);
        columnDef.setHeaderTruncatable(false);
        tableDefinition.addColumnDefinition(columnDef);
    }
    {
        UriColumnDefinition columnDef = new UriColumnDefinition();
        columnDef.setColumnSortable(true);
        columnDef.setColumnTruncatable(true);
        columnDef.setHeader(0, new HTML("URI"));
        columnDef.setHeaderCount(1);
        columnDef.setHeaderTruncatable(false);
        tableDefinition.addColumnDefinition(columnDef);
    }
    // username
    {
        UserColumnDefinition columnDef = new UserColumnDefinition();
        columnDef.setColumnSortable(true);
        columnDef.setColumnTruncatable(true);
        columnDef.setHeader(0, new HTML("Username"));
        columnDef.setHeaderCount(1);
        columnDef.setHeaderTruncatable(false);
        tableDefinition.addColumnDefinition(columnDef);
    }
    {
        FilesizeDefinition columnDef = new FilesizeDefinition();
        columnDef.setColumnSortable(true);
        columnDef.setColumnTruncatable(true);
        columnDef.setHeader(0, new HTML("File Size"));
        columnDef.setHeaderCount(1);
        columnDef.setHeaderTruncatable(false);
        tableDefinition.addColumnDefinition(columnDef);
    }
    {
        DeletedColumnDefinition columnDef = new DeletedColumnDefinition();
        columnDef.setColumnSortable(true);
        columnDef.setColumnTruncatable(true);
        columnDef.setHeader(0, new HTML("Deleted"));
        columnDef.setHeaderCount(1);
        columnDef.setHeaderTruncatable(false);
        columnDef.setCellRenderer(new CellRenderer<FileHeaderDTO, Boolean>() {

            @Override
            public void renderRowValue(FileHeaderDTO rowValue,
                    ColumnDefinition<FileHeaderDTO, Boolean> aColumnDef, AbstractCellView<FileHeaderDTO> view) {
                CheckBox check = new CheckBox();
                check.setValue(aColumnDef.getCellValue(rowValue));
                check.setEnabled(false);
                view.setWidget(check);

            }
        });
        tableDefinition.addColumnDefinition(columnDef);
    }

    {
        CreationColumnDefinition columnDef = new CreationColumnDefinition();
        columnDef.setColumnSortable(true);
        columnDef.setColumnTruncatable(true);
        columnDef.setHeader(0, new HTML("Creation Date"));
        columnDef.setHeaderCount(1);
        columnDef.setHeaderTruncatable(false);
        tableDefinition.addColumnDefinition(columnDef);
    }

    {
        LastModifiedColumnDefinition columnDef = new LastModifiedColumnDefinition();
        columnDef.setColumnSortable(true);
        columnDef.setColumnTruncatable(true);
        columnDef.setHeader(0, new HTML("Modification Date"));
        columnDef.setHeaderCount(1);
        columnDef.setHeaderTruncatable(false);
        tableDefinition.addColumnDefinition(columnDef);
    }

    return tableDefinition;
}

From source file:org.gss_project.gss.admin.client.ui.UsersTable.java

License:Open Source License

private DefaultTableDefinition<UserDTO> createTableDefinition() {
    tableDefinition = new DefaultTableDefinition<UserDTO>();

    final String[] rowColors = new String[] { "#FFFFDD", "EEEEEE" };
    tableDefinition.setRowRenderer(new DefaultRowRenderer<UserDTO>(rowColors));

    // id// w  ww. j  av a2  s.  c o m
    {
        IdColumnDefinition columnDef = new IdColumnDefinition();
        columnDef.setColumnSortable(true);
        columnDef.setColumnTruncatable(false);
        columnDef.setPreferredColumnWidth(35);
        columnDef.setHeader(0, new HTML("Id"));
        columnDef.setHeaderCount(1);
        columnDef.setHeaderTruncatable(false);
        tableDefinition.addColumnDefinition(columnDef);
    }
    {
        UserClassColumnDefinition columnDef = new UserClassColumnDefinition();
        columnDef.setColumnSortable(true);
        columnDef.setColumnTruncatable(true);
        columnDef.setHeader(0, new HTML("User Class"));
        columnDef.setHeaderCount(1);
        columnDef.setHeaderTruncatable(false);
        tableDefinition.addColumnDefinition(columnDef);
    }
    {
        ActiveColumnDefinition columnDef = new ActiveColumnDefinition();
        columnDef.setColumnSortable(true);
        columnDef.setColumnTruncatable(true);
        columnDef.setHeader(0, new HTML("Active"));
        columnDef.setHeaderCount(1);
        columnDef.setHeaderTruncatable(false);
        columnDef.setCellRenderer(new CellRenderer<UserDTO, Boolean>() {

            @Override
            public void renderRowValue(UserDTO rowValue, ColumnDefinition<UserDTO, Boolean> aColumnDef,
                    AbstractCellView<UserDTO> view) {
                CheckBox check = new CheckBox();
                check.setValue(aColumnDef.getCellValue(rowValue));
                check.setEnabled(false);
                view.setWidget(check);

            }
        });
        tableDefinition.addColumnDefinition(columnDef);
    }
    // username
    {
        UsernameColumnDefinition columnDef = new UsernameColumnDefinition();
        columnDef.setColumnSortable(true);
        columnDef.setColumnTruncatable(true);
        columnDef.setHeader(0, new HTML("Username"));
        columnDef.setHeaderCount(1);
        columnDef.setHeaderTruncatable(false);
        tableDefinition.addColumnDefinition(columnDef);
    }
    {
        EmailColumnDefinition columnDef = new EmailColumnDefinition();
        columnDef.setColumnSortable(true);
        columnDef.setColumnTruncatable(true);
        columnDef.setHeader(0, new HTML("Email"));
        columnDef.setHeaderCount(1);
        columnDef.setHeaderTruncatable(false);
        tableDefinition.addColumnDefinition(columnDef);
    }
    {
        FullNameColumnDefinition columnDef = new FullNameColumnDefinition();
        columnDef.setColumnSortable(true);
        columnDef.setColumnTruncatable(true);
        columnDef.setHeader(0, new HTML("Name"));
        columnDef.setHeaderCount(1);
        columnDef.setHeaderTruncatable(false);
        tableDefinition.addColumnDefinition(columnDef);
    }

    {
        LastLoginColumnDefinition columnDef = new LastLoginColumnDefinition();
        columnDef.setColumnSortable(true);
        columnDef.setColumnTruncatable(true);
        columnDef.setHeader(0, new HTML("Last Login"));
        columnDef.setHeaderCount(1);
        columnDef.setHeaderTruncatable(false);
        tableDefinition.addColumnDefinition(columnDef);
    }

    return tableDefinition;
}

From source file:org.kuali.student.common.ui.client.widgets.pagetable.PagingScrollTableBuilder.java

License:Educational Community License

/**
 * This method builds the table model. Call at the end of the builder method chain.
 * Required/*from w w  w .j  ava2  s.  c  om*/
 *
 *
 * @return the built pagingScrollTable
 */
@SuppressWarnings("unchecked") //columnDef cast
public PagingScrollTable<RowType> build(GenericTableModel tableModel) {
    DefaultTableDefinition<RowType> tableDefinition = new DefaultTableDefinition<RowType>();
    if (columnDefs != null) {
        for (AbstractColumnDefinition columnDef : columnDefs) {
            columnPixelWidths.add(columnDef.getPreferredColumnWidth());
            CellRenderer renderer = new CellRenderer() {

                @Override
                public void renderRowValue(Object rowValue, ColumnDefinition columnDef, AbstractCellView view) {
                    if (rowValue != null && rowValue instanceof ResultRow) {
                        view.setHTML((String) columnDef.getCellValue(rowValue));
                    }
                }

            };
            columnDef.setCellRenderer(renderer);
            tableDefinition.addColumnDefinition(columnDef);
        }
    }

    if (isPagable) {
        pagingScrollTable = new PagingScrollTable<RowType>(
                tableModel.createCachedTableModel(numPageRows, numPages), tableDefinition);
        pagingScrollTable.setPageSize(numPageRows);

    } else {
        pagingScrollTable = new PagingScrollTable<RowType>(tableModel, tableDefinition);
        pagingScrollTable.setPageSize(tableModel.getRowCount());
    }
    pagingScrollTable.setPixelSize(tablePixelWidth, tablePixelHeight);//FIXME workaround for incubator bug   [KSCOR-225] This table to be replaced in M6
    pagingScrollTable.setEmptyTableWidget(new HTML("There is no data to display"));

    pagingScrollTable.getDataTable().setSelectionPolicy(selectionPolicy);

    pagingScrollTable.getHeaderTable().setWidth("100%");
    pagingScrollTable.getDataTable().setWidth("100%");

    return this.pagingScrollTable;
}

From source file:org.pentaho.pat.client.ui.widgets.OlapTable.java

License:Open Source License

/**
 * Create the Live Table Column Definitions.
 * /*from  ww  w  .ja  va2s .  com*/
 * @return tableDef
 */
private TableDefinition<AbstractBaseCell[]> createTableDefinition() {
    AbstractBaseCell[] group = null;
    final DefaultTableDefinition<AbstractBaseCell[]> tableDef = new DefaultTableDefinition<AbstractBaseCell[]>();
    final List<AbstractBaseCell[]> colData = Arrays.asList(patTableModel.getColumnHeaders());
    for (int i = 0; i < olapData.getWidth(); i++) {
        final AbstractBaseCell[] headers = colData.get(offset - 1);

        final int cell = i;

        final PatColDef<AbstractBaseCell[], Widget> colDef0 = new PatColDef<AbstractBaseCell[], Widget>(
                headers[i].getLabel()) {

            @Override
            public Widget getCellValue(final AbstractBaseCell[] rowValue) {
                if (rowValue[cell] == null) {
                    return new Label(""); //$NON-NLS-1$
                } else {

                    return rowValue[cell].getLabel();
                }
            }
        };

        if (offset > 1) {
            for (int j = 1; j < offset; j++) {
                group = colData.get(offset - j - 1);

                if (group != null) {
                    Widget groupPanel = null;
                    if (group[i].getFormattedValue() == null || group[i].sameAsPrev) {
                        colDef0.setHeader(j, groupPanel);
                    } else {
                        groupPanel = group[i].getLabel();
                        colDef0.setHeader(j, groupPanel);
                    }
                }
            }
        }

        //  CellEditor cellEditor = new DataCellEditor();

        //      colDef0.setCellEditor(cellEditor);
        colDef0.setHeaderTruncatable(false);
        colDef0.setColumnSortable(false);
        colDef0.setColumnTruncatable(false);

        tableDef.addColumnDefinition(colDef0);

    }
    return tableDef;
}

From source file:org.pentaho.pat.client.ui.widgets.ResultSetTable.java

License:Open Source License

/**
 * Create the Live Table Column Definitions.
 * //  ww w . j  a  v  a 2 s.  c  o  m
 * @return tableDef
 */
private TableDefinition<String[]> createTableDefinition() {
    final DefaultTableDefinition<String[]> tableDef = new DefaultTableDefinition<String[]>();
    final List<String> colData = Arrays.asList(patTableModel.getColumnHeader());
    for (int i = 0; i < tableData.getWidth(); i++) {
        final String headers = colData.get(i);
        final Integer cell = i;
        final DefaultColumnDefinition<String[], String> colDef0 = new DefaultColumnDefinition<String[], String>(
                headers) {
            @Override
            public String getCellValue(String[] rowValue) {
                return (rowValue == null || rowValue[cell] == null || rowValue[cell].equals("null") ? ""
                        : rowValue[cell]);

            }
        };

        colDef0.setHeaderTruncatable(false);
        colDef0.setColumnSortable(false);
        colDef0.setColumnTruncatable(false);

        tableDef.addColumnDefinition(colDef0);
    }
    return tableDef;
}