On Wednesday, April 19, 2017 at 8:19:52 PM UTC+2, harshyadav wrote:
>
> Hi,
>
> I am trying to use the GWT editor framework to support data binding in my
> application. While implementing it I ran into a few issues and have a
> couple of questions regarding the same:
>
> 1) Some of these components don't use
> com.google.gwt.user.*
>
> rather they use
> com.google.gwt.dom.client.*
>
> For e.g. InputElement as opposed to TextBox. Is it possible to use editor
> framework with dom elements?
>
Yes.
There are several ways.
Either your "composite editor" implements ValueAwareEditor; in setValue
extracts values from object properties and put them into the elements, on
flush() do the reverse.
@Override public void setValue(MyObj value) {
this.value = value;
myInputElement.setValue(value.getProp());
}
@Override public void flush() {
this.value.setProp(myInputElement.getValue());
}
Or use "child" editors for each element, implement a LeafValueEditor that
delegates to the element in setValue/getValue.
final LeafValueEditor<String> myInputElementEditor = new
LeafValueEditor<String>() {
@Override public String getValue() { return myInputElement.getValue(); }
@Override public void setValue(String value) {
myInputElement.setValue(value); }
};
2) Is it possible to bind POJO's with different field types (int, float,
> String, etc.) to a single Composite implementing IsEditor?
> For e.g. if there is an Input composite (wrapping TextBox), is it possible
> to use the same composite for POJO fields of different types int, float,
> etc. ?
>
> public class Test
> implements Serializable {
>
> private Integer id;
>
> private String name;
>
> private float area;
> }
>
>
> Here name and area are of different type. Is it possible to bind these to
> the same widget implementing Editor (without editor I would just parse the
> values to and from String to their respective types before saving the data)?
>
The editor would have to have a generic type parameter (class MyEditor<T>
implements LeafValueEditor<T>) and a way to convert the value it receives
to/from String (e.g. passing converters to the constructor?)
Have a look at how ValueBox works.
--
You received this message because you are subscribed to the Google Groups "GWT
Users" group.
To unsubscribe from this group and stop receiving emails from it, send an email
to [email protected].
To post to this group, send email to [email protected].
Visit this group at https://groups.google.com/group/google-web-toolkit.
For more options, visit https://groups.google.com/d/optout.