teichmann@5835: package org.dive4elements.river.client.client.ui.wq; ingo@580: ingo@580: import com.google.gwt.core.client.GWT; ingo@1498: import com.google.gwt.i18n.client.NumberFormat; ingo@580: ingo@580: import com.smartgwt.client.types.ListGridFieldType; ingo@580: import com.smartgwt.client.types.SelectionStyle; ingo@1498: import com.smartgwt.client.widgets.grid.CellFormatter; ingo@580: import com.smartgwt.client.widgets.grid.ListGrid; ingo@580: import com.smartgwt.client.widgets.grid.ListGridField; ingo@1498: import com.smartgwt.client.widgets.grid.ListGridRecord; ingo@580: teichmann@5835: import org.dive4elements.river.client.client.FLYSConstants; ingo@580: ingo@580: /** ingo@580: * @author Ingo Weinzierl ingo@580: */ ingo@580: public class WTable extends ListGrid { ingo@580: ingo@580: /** The message class that provides i18n strings.*/ ingo@580: protected FLYSConstants MESSAGE = GWT.create(FLYSConstants.class); ingo@580: ingo@580: ingo@580: public WTable() { ingo@580: setWidth100(); ingo@580: setHeight100(); ingo@580: setSelectionType(SelectionStyle.NONE); ingo@580: setSelectionType(SelectionStyle.NONE); ingo@580: setShowHeaderContextMenu(false); ingo@580: setShowRecordComponents(true); ingo@580: setShowRecordComponentsByCell(true); ingo@580: setEmptyMessage(MESSAGE.empty_table()); ingo@580: ingo@580: ListGridField name = new ListGridField("name", MESSAGE.name()); ingo@580: name.setType(ListGridFieldType.TEXT); ingo@580: name.setWidth("*"); ingo@580: ingo@580: ListGridField type = new ListGridField("type", MESSAGE.type()); ingo@580: type.setType(ListGridFieldType.TEXT); ingo@580: type.setWidth("50"); ingo@580: ingo@1498: final NumberFormat nf = NumberFormat.getDecimalFormat(); ingo@1498: ingo@2460: ListGridField value = new ListGridField("value", MESSAGE.wq_value_w()); raimund@903: value.setType(ListGridFieldType.FLOAT); ingo@1498: value.setCellFormatter(new CellFormatter() { ingo@1498: @Override ingo@1498: public String format(Object v, ListGridRecord r, int row, int col) { ingo@1498: if (v == null) { ingo@1498: return null; ingo@1498: } ingo@1498: ingo@1498: try { ingo@1498: double value = Double.valueOf(v.toString()); ingo@1498: return nf.format(value); ingo@1498: } ingo@1498: catch (NumberFormatException nfe) { ingo@1498: return v.toString(); ingo@1498: } ingo@1498: } ingo@1498: }); ingo@580: ingo@580: setFields(name, type, value); ingo@580: } ingo@580: } ingo@580: // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 :