/*
* To change this license header, choose License Headers in Project Properties.
* To change this template file, choose Tools | Templates
* and open the template in the editor.
*/
package com.eas.grid.cells;
import java.text.ParseException;
import com.eas.widgets.boxes.MaskFormat;
import com.google.gwt.safehtml.shared.SafeHtmlBuilder;
import com.google.gwt.user.client.ui.TextBox;
import com.google.gwt.user.client.ui.Widget;
/**
*
* @author mg
*/
public class StringEditorCell extends RenderedEditorCell<Object> {
protected MaskFormat format;
public StringEditorCell() {
super(new TextBox());
}
public StringEditorCell(Widget aEditor) {
super(aEditor);
}
public StringEditorCell(Widget aEditor, MaskFormat aFormat) {
super(aEditor);
format = aFormat;
}
public MaskFormat getFormat() {
return format;
}
public void setFormat(MaskFormat aValue) {
format = aValue;
}
@Override
protected void renderCell(Context context, Object value, SafeHtmlBuilder sb) {
if (format != null) {
try {
sb.appendEscaped(format.format(value));
} catch (ParseException e) {
sb.appendEscaped(e.getMessage());
}
} else {
sb.appendEscaped(value != null ? value.toString() : "");
}
}
}