package fr.lteconsulting.hexa.client.form.fieldtypes;
import com.google.gwt.json.client.JSONValue;
import com.google.gwt.user.client.ui.Widget;
public interface FieldType
{
public interface FieldChangeHandler
{
void onFieldChange( Object cookie );
}
public interface FieldChangeHandlerManager
{
Object addChangeHandler( FieldChangeHandler handler, Object cookie );
void removeChangeHandler( Object registration );
}
// factory to create a type instance
Widget getWidget();
// methods to work with a type instance
void setValue( Widget widget, JSONValue value );
JSONValue getValue( Widget widget );
FieldChangeHandlerManager getHandlerManager( Widget widget );
}