Mercurial > dive4elements > river
view flys-client/src/main/java/de/intevation/flys/client/client/ui/wq/QDTable.java @ 4476:099d136b215b
Try to fix resize problems with MapWidget in DigitizePanel (#802).
author | Christian Lins <christian.lins@intevation.de> |
---|---|
date | Mon, 12 Nov 2012 21:12:08 +0100 |
parents | 14774fb42054 |
children | 3b9f6765d9dc |
line wrap: on
line source
package de.intevation.flys.client.client.ui.wq; import com.google.gwt.core.client.GWT; import com.google.gwt.i18n.client.NumberFormat; import com.smartgwt.client.types.ListGridFieldType; import com.smartgwt.client.types.SelectionStyle; import com.smartgwt.client.widgets.grid.CellFormatter; import com.smartgwt.client.widgets.grid.ListGrid; import com.smartgwt.client.widgets.grid.ListGridField; import com.smartgwt.client.widgets.grid.ListGridRecord; import de.intevation.flys.client.client.FLYSConstants; /** * @author <a href="mailto:ingo.weinzierl@intevation.de">Ingo Weinzierl</a> */ public class QDTable extends ListGrid { /** The message class that provides i18n strings.*/ protected FLYSConstants MESSAGE = GWT.create(FLYSConstants.class); protected boolean lockClick; public QDTable() { String baseUrl = GWT.getHostPageBaseURL(); setWidth100(); setHeight100(); setSelectionType(SelectionStyle.SINGLE); setSelectionType(SelectionStyle.SINGLE); setShowHeaderContextMenu(false); setShowRecordComponents(true); setShowRecordComponentsByCell(true); setEmptyMessage(MESSAGE.empty_table()); ListGridField addMax = new ListGridField("max", MESSAGE.from()); addMax.setType(ListGridFieldType.ICON); addMax.setWidth(30); addMax.setCellIcon(baseUrl + MESSAGE.markerRed()); ListGridField addMin = new ListGridField("min", MESSAGE.to()); addMin.setType(ListGridFieldType.ICON); addMin.setWidth(30); addMin.setCellIcon(baseUrl + MESSAGE.markerGreen()); ListGridField select = new ListGridField("select", MESSAGE.selection()); select.setType(ListGridFieldType.ICON); select.setWidth(70); select.setCellIcon(baseUrl + MESSAGE.markerGreen()); ListGridField name = new ListGridField("name", MESSAGE.discharge()); name.setType(ListGridFieldType.TEXT); name.setWidth("*"); ListGridField type = new ListGridField("type", MESSAGE.type()); type.setType(ListGridFieldType.TEXT); type.setWidth("20%"); final NumberFormat nf = NumberFormat.getDecimalFormat(); ListGridField value = new ListGridField("value", MESSAGE.wq_value_q()); value.setType(ListGridFieldType.FLOAT); value.setCellFormatter(new CellFormatter() { @Override public String format(Object v, ListGridRecord r, int row, int col) { if (v == null) { return null; } try { double value = Double.valueOf(v.toString()); return nf.format(value); } catch (NumberFormatException nfe) { return v.toString(); } } }); value.setWidth("20%"); setFields(addMax, addMin, select, name, type, value); } public void hideIconFields () { hideField("max"); hideField("min"); hideField("select"); lockClick = true; } public void showIconFields() { showField("max"); showField("min"); hideField("select"); lockClick = false; } public void showSelect() { showField("select"); hideField("max"); hideField("min"); } public boolean isLocked() { return lockClick; } } // vim:set ts=4 sw=4 si et sta sts=4 fenc=utf8 :