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.

Reply via email to