List of usage examples for com.google.gwt.gen2.table.client DefaultRowRenderer DefaultRowRenderer
public DefaultRowRenderer()
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 {//w ww .j av a2 s . c o m 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; }