[gwt-contrib] Re: Structural changes to UiBinder to make fields accessible via getters (issue1420804)

2011-04-21 Thread rjrjr


http://gwt-code-reviews.appspot.com/1420804/diff/7001/user/src/com/google/gwt/uibinder/rebind/FieldManager.java
File user/src/com/google/gwt/uibinder/rebind/FieldManager.java (right):

http://gwt-code-reviews.appspot.com/1420804/diff/7001/user/src/com/google/gwt/uibinder/rebind/FieldManager.java#newcode251
user/src/com/google/gwt/uibinder/rebind/FieldManager.java:251: if
(fieldWriter == null) {
Are you sure this isn't a user error? It sure looks like one to me, in
which case this must be a call to logger.die and you have to deal with
all the throws UncaughtException ripples.

http://gwt-code-reviews.appspot.com/1420804/diff/7001/user/src/com/google/gwt/uibinder/rebind/UiBinderWriter.java
File user/src/com/google/gwt/uibinder/rebind/UiBinderWriter.java
(right):

http://gwt-code-reviews.appspot.com/1420804/diff/7001/user/src/com/google/gwt/uibinder/rebind/UiBinderWriter.java#newcode316
user/src/com/google/gwt/uibinder/rebind/UiBinderWriter.java:316: if
(useLazyWidgetBuilders) {
fix indentation

http://gwt-code-reviews.appspot.com/1420804/

--
http://groups.google.com/group/Google-Web-Toolkit-Contributors


[gwt-contrib] Re: Structural changes to UiBinder to make fields accessible via getters (issue1420804)

2011-04-21 Thread hermes

http://gwt-code-reviews.appspot.com/1420804/

--
http://groups.google.com/group/Google-Web-Toolkit-Contributors


[gwt-contrib] Re: Structural changes to UiBinder to make fields accessible via getters (issue1420804)

2011-04-21 Thread hermes


http://gwt-code-reviews.appspot.com/1420804/diff/7001/user/src/com/google/gwt/uibinder/rebind/FieldManager.java
File user/src/com/google/gwt/uibinder/rebind/FieldManager.java (right):

http://gwt-code-reviews.appspot.com/1420804/diff/7001/user/src/com/google/gwt/uibinder/rebind/FieldManager.java#newcode251
user/src/com/google/gwt/uibinder/rebind/FieldManager.java:251: if
(fieldWriter == null) {
On 2011/04/21 18:10:36, rjrjr wrote:

Are you sure this isn't a user error? It sure looks like one to me, in

which

case this must be a call to logger.die and you have to deal with all

the throws

UncaughtException ripples.


I don't think this is user related but even if I'm wrong I wouldn't be
able to specify the right message to help developers.

But I can for sure call:
  writer.die(The required field %s doesn't exist.);
if you think I should.

Or maybe let a NPE spread indicating that there's a bug somewhere in the
parsers.

http://gwt-code-reviews.appspot.com/1420804/diff/7001/user/src/com/google/gwt/uibinder/rebind/UiBinderWriter.java
File user/src/com/google/gwt/uibinder/rebind/UiBinderWriter.java
(right):

http://gwt-code-reviews.appspot.com/1420804/diff/7001/user/src/com/google/gwt/uibinder/rebind/UiBinderWriter.java#newcode316
user/src/com/google/gwt/uibinder/rebind/UiBinderWriter.java:316: if
(useLazyWidgetBuilders) {
On 2011/04/21 18:10:36, rjrjr wrote:

fix indentation


Done.

http://gwt-code-reviews.appspot.com/1420804/

--
http://groups.google.com/group/Google-Web-Toolkit-Contributors


[gwt-contrib] Re: Structural changes to UiBinder to make fields accessible via getters (issue1420804)

2011-04-21 Thread rjrjr

LGTM


http://gwt-code-reviews.appspot.com/1420804/diff/7001/user/src/com/google/gwt/uibinder/rebind/FieldManager.java
File user/src/com/google/gwt/uibinder/rebind/FieldManager.java (right):

http://gwt-code-reviews.appspot.com/1420804/diff/7001/user/src/com/google/gwt/uibinder/rebind/FieldManager.java#newcode245
user/src/com/google/gwt/uibinder/rebind/FieldManager.java:245: * Gets a
FieldWrite given its name or throws a RuntimeException if not found.
FieldWriteR

http://gwt-code-reviews.appspot.com/1420804/diff/7001/user/src/com/google/gwt/uibinder/rebind/FieldManager.java#newcode251
user/src/com/google/gwt/uibinder/rebind/FieldManager.java:251: if
(fieldWriter == null) {
If you're sure, the RTE is fine. Thanks.

http://gwt-code-reviews.appspot.com/1420804/diff/4003/user/src/com/google/gwt/uibinder/rebind/UiBinderWriter.java
File user/src/com/google/gwt/uibinder/rebind/UiBinderWriter.java
(right):

http://gwt-code-reviews.appspot.com/1420804/diff/4003/user/src/com/google/gwt/uibinder/rebind/UiBinderWriter.java#newcode318
user/src/com/google/gwt/uibinder/rebind/UiBinderWriter.java:318: * I'm
expliciting over-simplifying this and assuming that the input
intentionally

http://gwt-code-reviews.appspot.com/1420804/

--
http://groups.google.com/group/Google-Web-Toolkit-Contributors


[gwt-contrib] Re: Structural changes to UiBinder to make fields accessible via getters (issue1420804)

2011-04-20 Thread hermes

http://gwt-code-reviews.appspot.com/1420804/

--
http://groups.google.com/group/Google-Web-Toolkit-Contributors


[gwt-contrib] Re: Structural changes to UiBinder to make fields accessible via getters (issue1420804)

2011-04-20 Thread hermes


http://gwt-code-reviews.appspot.com/1420804/diff/1/user/src/com/google/gwt/uibinder/client/UiBinderUtil.java
File user/src/com/google/gwt/uibinder/client/UiBinderUtil.java (right):

http://gwt-code-reviews.appspot.com/1420804/diff/1/user/src/com/google/gwt/uibinder/client/UiBinderUtil.java#newcode44
user/src/com/google/gwt/uibinder/client/UiBinderUtil.java:44: element =
com.google.gwt.dom.client.Document.get()
On 2011/04/19 21:07:20, rjrjr wrote:

no need for the long name, this is imported


Done.

http://gwt-code-reviews.appspot.com/1420804/diff/1/user/src/com/google/gwt/uibinder/elementparsers/LazyPanelParser.java
File
user/src/com/google/gwt/uibinder/elementparsers/LazyPanelParser.java
(right):

http://gwt-code-reviews.appspot.com/1420804/diff/1/user/src/com/google/gwt/uibinder/elementparsers/LazyPanelParser.java#newcode38
user/src/com/google/gwt/uibinder/elementparsers/LazyPanelParser.java:38:

On 2011/04/19 21:07:20, rjrjr wrote:

assert writer.useAttachableStrategyMabobThing();


Well, the parser is not registered if the flag is disabled so this point
is never reached. But did the change anyway since this way I can spit
out a better warning message.

http://gwt-code-reviews.appspot.com/1420804/diff/1/user/src/com/google/gwt/uibinder/elementparsers/LazyPanelParser.java#newcode40
user/src/com/google/gwt/uibinder/elementparsers/LazyPanelParser.java:40:
String widgetClassPath = writer.getClassPath(Widget.class);
On 2011/04/19 21:07:20, rjrjr wrote:

just use Widget.class.getName(), getClassPath adds no value I can see.


Done.

http://gwt-code-reviews.appspot.com/1420804/diff/1/user/src/com/google/gwt/uibinder/elementparsers/LazyPanelParser.java#newcode42
user/src/com/google/gwt/uibinder/elementparsers/LazyPanelParser.java:42:
String code = null;
On 2011/04/19 21:07:20, rjrjr wrote:

Use XMLElement#consumeSingleChildElement and you don't need your own
one-and-only-one checks.


Done.

http://gwt-code-reviews.appspot.com/1420804/diff/1/user/src/com/google/gwt/uibinder/elementparsers/WidgetInterpreter.java
File
user/src/com/google/gwt/uibinder/elementparsers/WidgetInterpreter.java
(right):

http://gwt-code-reviews.appspot.com/1420804/diff/1/user/src/com/google/gwt/uibinder/elementparsers/WidgetInterpreter.java#newcode95
user/src/com/google/gwt/uibinder/elementparsers/WidgetInterpreter.java:95:
com.google.gwt.uibinder.client.UiBinderUtil.LazyDomElement,
elementPointer);
On 2011/04/19 21:07:20, rjrjr wrote:

Please use LazyDomElement.class.getName()


Done.

http://gwt-code-reviews.appspot.com/1420804/diff/1/user/src/com/google/gwt/uibinder/elementparsers/WidgetInterpreter.java#newcode98
user/src/com/google/gwt/uibinder/elementparsers/WidgetInterpreter.java:98:
new com.google.gwt.uibinder.client.UiBinderUtil.LazyDomElement(%s),
On 2011/04/19 21:07:20, rjrjr wrote:

ditto


Done.

http://gwt-code-reviews.appspot.com/1420804/diff/1/user/src/com/google/gwt/uibinder/rebind/FieldManager.java
File user/src/com/google/gwt/uibinder/rebind/FieldManager.java (right):

http://gwt-code-reviews.appspot.com/1420804/diff/1/user/src/com/google/gwt/uibinder/rebind/FieldManager.java#newcode98
user/src/com/google/gwt/uibinder/rebind/FieldManager.java:98: public
void addAttachStatement(String fieldName, String format, Object... args)
On 2011/04/19 21:07:20, rjrjr wrote:

Don't duplicate the FieldWriter api. To get them add a new

require(fieldName)

method that wraps lookup() and does the die thing.


Done.

http://gwt-code-reviews.appspot.com/1420804/diff/1/user/src/com/google/gwt/uibinder/rebind/FieldManager.java#newcode102
user/src/com/google/gwt/uibinder/rebind/FieldManager.java:102:
logger.die(Failing adding attach statement. FieldName %s has no
FieldWriter associated.,
On 2011/04/19 21:07:20, rjrjr wrote:

die is for user error. If this is really developer error, make it a
RuntimeException.


Done.

http://gwt-code-reviews.appspot.com/1420804/diff/1/user/src/com/google/gwt/uibinder/rebind/FieldManager.java#newcode112
user/src/com/google/gwt/uibinder/rebind/FieldManager.java:112: public
void addDetachStatement(String fieldName, String format, Object... args)
On 2011/04/19 21:07:20, rjrjr wrote:

ditto


Done.

http://gwt-code-reviews.appspot.com/1420804/diff/1/user/src/com/google/gwt/uibinder/rebind/FieldManager.java#newcode126
user/src/com/google/gwt/uibinder/rebind/FieldManager.java:126: public
FieldWriter addFieldStatement(String fieldName, String format, Object...
args)
On 2011/04/19 21:07:20, rjrjr wrote:

ditto


Done.

http://gwt-code-reviews.appspot.com/1420804/diff/1/user/src/com/google/gwt/uibinder/rebind/FieldManager.java#newcode143
user/src/com/google/gwt/uibinder/rebind/FieldManager.java:143: public
String convertFieldToGetter(String fieldName) {
On 2011/04/19 21:07:20, rjrjr wrote:

Can this be a FieldWriter instance method?


No because convertFieldToGetter() might be called before FieldWriter is
actually created, so for now this is the easier way.


[gwt-contrib] Re: Structural changes to UiBinder to make fields accessible via getters (issue1420804)

2011-04-20 Thread Ray Ryan
Thanks for the quick update, looking now.

One thought (doesn't gate this patch): I wonder if your code bloat problem
would go away if your Widgets classes were JSOs.

On Wed, Apr 20, 2011 at 9:03 AM, her...@google.com wrote:



 http://gwt-code-reviews.appspot.com/1420804/diff/1/user/src/com/google/gwt/uibinder/client/UiBinderUtil.java
 File user/src/com/google/gwt/uibinder/client/UiBinderUtil.java (right):


 http://gwt-code-reviews.appspot.com/1420804/diff/1/user/src/com/google/gwt/uibinder/client/UiBinderUtil.java#newcode44
 user/src/com/google/gwt/uibinder/client/UiBinderUtil.java:44: element =
 com.google.gwt.dom.client.Document.get()
 On 2011/04/19 21:07:20, rjrjr wrote:

 no need for the long name, this is imported


 Done.



 http://gwt-code-reviews.appspot.com/1420804/diff/1/user/src/com/google/gwt/uibinder/elementparsers/LazyPanelParser.java
 File
 user/src/com/google/gwt/uibinder/elementparsers/LazyPanelParser.java
 (right):


 http://gwt-code-reviews.appspot.com/1420804/diff/1/user/src/com/google/gwt/uibinder/elementparsers/LazyPanelParser.java#newcode38
 user/src/com/google/gwt/uibinder/elementparsers/LazyPanelParser.java:38:

 On 2011/04/19 21:07:20, rjrjr wrote:

 assert writer.useAttachableStrategyMabobThing();


 Well, the parser is not registered if the flag is disabled so this point
 is never reached. But did the change anyway since this way I can spit
 out a better warning message.



 http://gwt-code-reviews.appspot.com/1420804/diff/1/user/src/com/google/gwt/uibinder/elementparsers/LazyPanelParser.java#newcode40
 user/src/com/google/gwt/uibinder/elementparsers/LazyPanelParser.java:40:
 String widgetClassPath = writer.getClassPath(Widget.class);
 On 2011/04/19 21:07:20, rjrjr wrote:

 just use Widget.class.getName(), getClassPath adds no value I can see.


 Done.



 http://gwt-code-reviews.appspot.com/1420804/diff/1/user/src/com/google/gwt/uibinder/elementparsers/LazyPanelParser.java#newcode42
 user/src/com/google/gwt/uibinder/elementparsers/LazyPanelParser.java:42:
 String code = null;
 On 2011/04/19 21:07:20, rjrjr wrote:

 Use XMLElement#consumeSingleChildElement and you don't need your own
 one-and-only-one checks.


 Done.



 http://gwt-code-reviews.appspot.com/1420804/diff/1/user/src/com/google/gwt/uibinder/elementparsers/WidgetInterpreter.java
 File
 user/src/com/google/gwt/uibinder/elementparsers/WidgetInterpreter.java
 (right):


 http://gwt-code-reviews.appspot.com/1420804/diff/1/user/src/com/google/gwt/uibinder/elementparsers/WidgetInterpreter.java#newcode95
 user/src/com/google/gwt/uibinder/elementparsers/WidgetInterpreter.java:95:
 com.google.gwt.uibinder.client.UiBinderUtil.LazyDomElement,
 elementPointer);
 On 2011/04/19 21:07:20, rjrjr wrote:

 Please use LazyDomElement.class.getName()


 Done.



 http://gwt-code-reviews.appspot.com/1420804/diff/1/user/src/com/google/gwt/uibinder/elementparsers/WidgetInterpreter.java#newcode98
 user/src/com/google/gwt/uibinder/elementparsers/WidgetInterpreter.java:98:
 new com.google.gwt.uibinder.client.UiBinderUtil.LazyDomElement(%s),
 On 2011/04/19 21:07:20, rjrjr wrote:

 ditto


 Done.



 http://gwt-code-reviews.appspot.com/1420804/diff/1/user/src/com/google/gwt/uibinder/rebind/FieldManager.java
 File user/src/com/google/gwt/uibinder/rebind/FieldManager.java (right):


 http://gwt-code-reviews.appspot.com/1420804/diff/1/user/src/com/google/gwt/uibinder/rebind/FieldManager.java#newcode98
 user/src/com/google/gwt/uibinder/rebind/FieldManager.java:98: public
 void addAttachStatement(String fieldName, String format, Object... args)
 On 2011/04/19 21:07:20, rjrjr wrote:

 Don't duplicate the FieldWriter api. To get them add a new

 require(fieldName)

 method that wraps lookup() and does the die thing.


 Done.



 http://gwt-code-reviews.appspot.com/1420804/diff/1/user/src/com/google/gwt/uibinder/rebind/FieldManager.java#newcode102
 user/src/com/google/gwt/uibinder/rebind/FieldManager.java:102:
 logger.die(Failing adding attach statement. FieldName %s has no
 FieldWriter associated.,
 On 2011/04/19 21:07:20, rjrjr wrote:

 die is for user error. If this is really developer error, make it a
 RuntimeException.


 Done.



 http://gwt-code-reviews.appspot.com/1420804/diff/1/user/src/com/google/gwt/uibinder/rebind/FieldManager.java#newcode112
 user/src/com/google/gwt/uibinder/rebind/FieldManager.java:112: public
 void addDetachStatement(String fieldName, String format, Object... args)
 On 2011/04/19 21:07:20, rjrjr wrote:

 ditto


 Done.



 http://gwt-code-reviews.appspot.com/1420804/diff/1/user/src/com/google/gwt/uibinder/rebind/FieldManager.java#newcode126
 user/src/com/google/gwt/uibinder/rebind/FieldManager.java:126: public
 FieldWriter addFieldStatement(String fieldName, String format, Object...
 args)
 On 2011/04/19 21:07:20, rjrjr wrote:

 ditto


 Done.



 http://gwt-code-reviews.appspot.com/1420804/diff/1/user/src/com/google/gwt/uibinder/rebind/FieldManager.java#newcode143
 

[gwt-contrib] Re: Structural changes to UiBinder to make fields accessible via getters (issue1420804)

2011-04-20 Thread rjrjr

Nearly there!


http://gwt-code-reviews.appspot.com/1420804/diff/6001/user/src/com/google/gwt/uibinder/rebind/FieldManager.java
File user/src/com/google/gwt/uibinder/rebind/FieldManager.java (right):

http://gwt-code-reviews.appspot.com/1420804/diff/6001/user/src/com/google/gwt/uibinder/rebind/FieldManager.java#newcode97
user/src/com/google/gwt/uibinder/rebind/FieldManager.java:97: public
void addAttachStatement(String fieldName, String format, Object... args)
Better, but, my point is that all of these methods are redundant with
the FieldWriter api. required should be public and these methods should
be inlined.

http://gwt-code-reviews.appspot.com/1420804/diff/6001/user/src/com/google/gwt/uibinder/rebind/UiBinderWriter.java
File user/src/com/google/gwt/uibinder/rebind/UiBinderWriter.java
(right):

http://gwt-code-reviews.appspot.com/1420804/diff/6001/user/src/com/google/gwt/uibinder/rebind/UiBinderWriter.java#newcode332
user/src/com/google/gwt/uibinder/rebind/UiBinderWriter.java:332: //
change in several files.
Sorry, not okay, this is a really common fail path and you're destroying
our error reporting. Yes, I know it's behind the switch, but still.

Just throw the exception and let your IDE show you where to add the
throws lines. It really won't take that long.

http://gwt-code-reviews.appspot.com/1420804/

--
http://groups.google.com/group/Google-Web-Toolkit-Contributors


[gwt-contrib] Re: Structural changes to UiBinder to make fields accessible via getters (issue1420804)

2011-04-20 Thread hermes

Both comments are somewhat related and reflect my phobia of big CLs.
I'll address them still today. Thanks.


http://gwt-code-reviews.appspot.com/1420804/diff/6001/user/src/com/google/gwt/uibinder/rebind/FieldManager.java
File user/src/com/google/gwt/uibinder/rebind/FieldManager.java (right):

http://gwt-code-reviews.appspot.com/1420804/diff/6001/user/src/com/google/gwt/uibinder/rebind/FieldManager.java#newcode97
user/src/com/google/gwt/uibinder/rebind/FieldManager.java:97: public
void addAttachStatement(String fieldName, String format, Object... args)
On 2011/04/20 17:12:21, rjrjr wrote:

Better, but, my point is that all of these methods are redundant with

the

FieldWriter api. required should be public and these methods should be

inlined.

Make sense, I was afraid that these methods were being called by other
files which is totally stupid since they are new. I'll fix this.

http://gwt-code-reviews.appspot.com/1420804/diff/6001/user/src/com/google/gwt/uibinder/rebind/UiBinderWriter.java
File user/src/com/google/gwt/uibinder/rebind/UiBinderWriter.java
(right):

http://gwt-code-reviews.appspot.com/1420804/diff/6001/user/src/com/google/gwt/uibinder/rebind/UiBinderWriter.java#newcode332
user/src/com/google/gwt/uibinder/rebind/UiBinderWriter.java:332: //
change in several files.
On 2011/04/20 17:12:21, rjrjr wrote:

Sorry, not okay, this is a really common fail path and you're

destroying our

error reporting. Yes, I know it's behind the switch, but still.



Just throw the exception and let your IDE show you where to add the

throws

lines. It really won't take that long.


No problem at all, I'll have to add new files that must protect their
methods with throws, so the CL should grow a little bit. Mechanical
work, not a real issue.

http://gwt-code-reviews.appspot.com/1420804/

--
http://groups.google.com/group/Google-Web-Toolkit-Contributors


[gwt-contrib] Re: Structural changes to UiBinder to make fields accessible via getters (issue1420804)

2011-04-20 Thread hermes

http://gwt-code-reviews.appspot.com/1420804/

--
http://groups.google.com/group/Google-Web-Toolkit-Contributors


[gwt-contrib] Re: Structural changes to UiBinder to make fields accessible via getters (issue1420804)

2011-04-20 Thread Hermes Freitas
Once again SQ passed with success and orkut seems ok. I'll take a deeper
look at your doc today morning, looks promising...

On Wed, Apr 20, 2011 at 8:14 PM, her...@google.com wrote:

 http://gwt-code-reviews.appspot.com/1420804/



-- 
--Hermes Freitas

-- 
http://groups.google.com/group/Google-Web-Toolkit-Contributors

[gwt-contrib] Re: Structural changes to UiBinder to make fields accessible via getters (issue1420804)

2011-04-19 Thread rjrjr

I don't see any show stoppers. Going to try patching it in now and look
at the generated code.



http://gwt-code-reviews.appspot.com/1420804/diff/1/user/src/com/google/gwt/uibinder/client/UiBinderUtil.java
File user/src/com/google/gwt/uibinder/client/UiBinderUtil.java (right):

http://gwt-code-reviews.appspot.com/1420804/diff/1/user/src/com/google/gwt/uibinder/client/UiBinderUtil.java#newcode44
user/src/com/google/gwt/uibinder/client/UiBinderUtil.java:44: element =
com.google.gwt.dom.client.Document.get()
no need for the long name, this is imported

http://gwt-code-reviews.appspot.com/1420804/diff/1/user/src/com/google/gwt/uibinder/elementparsers/LazyPanelParser.java
File
user/src/com/google/gwt/uibinder/elementparsers/LazyPanelParser.java
(right):

http://gwt-code-reviews.appspot.com/1420804/diff/1/user/src/com/google/gwt/uibinder/elementparsers/LazyPanelParser.java#newcode38
user/src/com/google/gwt/uibinder/elementparsers/LazyPanelParser.java:38:

assert writer.useAttachableStrategyMabobThing();

http://gwt-code-reviews.appspot.com/1420804/diff/1/user/src/com/google/gwt/uibinder/elementparsers/LazyPanelParser.java#newcode40
user/src/com/google/gwt/uibinder/elementparsers/LazyPanelParser.java:40:
String widgetClassPath = writer.getClassPath(Widget.class);
just use Widget.class.getName(), getClassPath adds no value I can see.

http://gwt-code-reviews.appspot.com/1420804/diff/1/user/src/com/google/gwt/uibinder/elementparsers/LazyPanelParser.java#newcode42
user/src/com/google/gwt/uibinder/elementparsers/LazyPanelParser.java:42:
String code = null;
Use XMLElement#consumeSingleChildElement and you don't need your own
one-and-only-one checks.

http://gwt-code-reviews.appspot.com/1420804/diff/1/user/src/com/google/gwt/uibinder/elementparsers/WidgetInterpreter.java
File
user/src/com/google/gwt/uibinder/elementparsers/WidgetInterpreter.java
(right):

http://gwt-code-reviews.appspot.com/1420804/diff/1/user/src/com/google/gwt/uibinder/elementparsers/WidgetInterpreter.java#newcode95
user/src/com/google/gwt/uibinder/elementparsers/WidgetInterpreter.java:95:
com.google.gwt.uibinder.client.UiBinderUtil.LazyDomElement,
elementPointer);
Please use LazyDomElement.class.getName()

http://gwt-code-reviews.appspot.com/1420804/diff/1/user/src/com/google/gwt/uibinder/elementparsers/WidgetInterpreter.java#newcode98
user/src/com/google/gwt/uibinder/elementparsers/WidgetInterpreter.java:98:
new com.google.gwt.uibinder.client.UiBinderUtil.LazyDomElement(%s),
ditto

http://gwt-code-reviews.appspot.com/1420804/diff/1/user/src/com/google/gwt/uibinder/elementparsers/WidgetPlaceholderInterpreter.java
File
user/src/com/google/gwt/uibinder/elementparsers/WidgetPlaceholderInterpreter.java
(right):

http://gwt-code-reviews.appspot.com/1420804/diff/1/user/src/com/google/gwt/uibinder/elementparsers/WidgetPlaceholderInterpreter.java#newcode161
user/src/com/google/gwt/uibinder/elementparsers/WidgetPlaceholderInterpreter.java:161:
if (uiWriter.useAttachableStrategy()) {
Seems like you would have a lot less of these useAttachableStrategy
blocks floating around if addAttachStatement checked it like
convertFieldToGetter does. When it's false, addAttachStatement can do
what UiBinderWriter#addInitStatement does.

You'd have to move the initStatements array to FieldManager, and make
the UiBinderWriter#addInitStatement a passthrough to it.

I don't mean to slow you down, but I'm concerned that
useAttachableStrategy will live for a while, and it will be hard for
parser writers to know what to do.

http://gwt-code-reviews.appspot.com/1420804/diff/1/user/src/com/google/gwt/uibinder/rebind/FieldManager.java
File user/src/com/google/gwt/uibinder/rebind/FieldManager.java (right):

http://gwt-code-reviews.appspot.com/1420804/diff/1/user/src/com/google/gwt/uibinder/rebind/FieldManager.java#newcode98
user/src/com/google/gwt/uibinder/rebind/FieldManager.java:98: public
void addAttachStatement(String fieldName, String format, Object... args)
Don't duplicate the FieldWriter api. To get them add a new
require(fieldName) method that wraps lookup() and does the die thing.

http://gwt-code-reviews.appspot.com/1420804/diff/1/user/src/com/google/gwt/uibinder/rebind/FieldManager.java#newcode102
user/src/com/google/gwt/uibinder/rebind/FieldManager.java:102:
logger.die(Failing adding attach statement. FieldName %s has no
FieldWriter associated.,
die is for user error. If this is really developer error, make it a
RuntimeException.

http://gwt-code-reviews.appspot.com/1420804/diff/1/user/src/com/google/gwt/uibinder/rebind/FieldManager.java#newcode112
user/src/com/google/gwt/uibinder/rebind/FieldManager.java:112: public
void addDetachStatement(String fieldName, String format, Object... args)
ditto

http://gwt-code-reviews.appspot.com/1420804/diff/1/user/src/com/google/gwt/uibinder/rebind/FieldManager.java#newcode126
user/src/com/google/gwt/uibinder/rebind/FieldManager.java:126: public
FieldWriter addFieldStatement(String fieldName, String format, Object...
args)
ditto


[gwt-contrib] Re: Structural changes to UiBinder to make fields accessible via getters (issue1420804)

2011-04-19 Thread rjrjr

You're missing a definition of that new property in UiBinder.gwt.xml

http://gwt-code-reviews.appspot.com/1420804/

--
http://groups.google.com/group/Google-Web-Toolkit-Contributors


[gwt-contrib] Re: Structural changes to UiBinder to make fields accessible via getters (issue1420804)

2011-04-19 Thread rjrjr

I'm having trouble applying the patch. I'll keep looking for an
appropriately stale patch point, but if you get a chance to sync that
will be helpful.

http://gwt-code-reviews.appspot.com/1420804/

--
http://groups.google.com/group/Google-Web-Toolkit-Contributors