http://gwt-code-reviews.appspot.com/698802/diff/1/5
File
samples/dynatablerf/src/com/google/gwt/sample/dynatablerf/client/DayFilterWidget.ui.xml
(right):

http://gwt-code-reviews.appspot.com/698802/diff/1/5#newcode17
samples/dynatablerf/src/com/google/gwt/sample/dynatablerf/client/DayFilterWidget.ui.xml:17:
field="calendar"></ui:with>
This is crafty, but it's too magical. I assume you resorted to this so
that you could make calendar a constructor arg for DayCheckBox.

I don't think it needs to be, or at any rate it isn't worth paying this
price for. Wouldn't the code be a bit less mysterious if you called
DayCheckBox#init(Calendar) on these things from java?

I'm finding widgets a lot easier to deal with if they have few or no
constructor args, which is one of the wins of the MVP thing.

http://gwt-code-reviews.appspot.com/698802/diff/1/7
File
samples/dynatablerf/src/com/google/gwt/sample/dynatablerf/client/DynaTableRf.ui.xml
(right):

http://gwt-code-reviews.appspot.com/698802/diff/1/7#newcode18
samples/dynatablerf/src/com/google/gwt/sample/dynatablerf/client/DynaTableRf.ui.xml:18:
<g:DockLayoutPanel unit="EX">
Pretty sure you want EM, not EX. Here and elsewhere.

http://gwt-code-reviews.appspot.com/698802/diff/1/7#newcode24
samples/dynatablerf/src/com/google/gwt/sample/dynatablerf/client/DynaTableRf.ui.xml:24:
<dt:DayFilterWidget ui:field="filter" />
Here, on the other hand, adding a calender="{calendar}" would feel
pretty natural, rather than using provided=true like you're doing.

You might be running into the the "no forward references" bug, but I
think you can get around that by moving your g:east below your g:center.
I'd really like to fix that problem.

If you go for this, it will be less brittle if you may
DayFilterWidget#setCalendar rather than trying to make it a constructor
arg. We'll be able to fix the forward reference thing, but abuse of
@UiConstructor invites circular dependency problems if it gets out of
hand.

http://gwt-code-reviews.appspot.com/698802/diff/1/8
File
samples/dynatablerf/src/com/google/gwt/sample/dynatablerf/client/DynaTableWidget.java
(right):

http://gwt-code-reviews.appspot.com/698802/diff/1/8#newcode41
samples/dynatablerf/src/com/google/gwt/sample/dynatablerf/client/DynaTableWidget.java:41:
class NavBar extends Composite {
I was going to ding you on the nest here, but I see why you did it.
Really, it's pretty cool that this works. :-)

http://gwt-code-reviews.appspot.com/698802/diff/1/8#newcode57
samples/dynatablerf/src/com/google/gwt/sample/dynatablerf/client/DynaTableWidget.java:57:
this));
Easier to read if you put the NavBarBinder in a convenience variable.
Don't need the crazy param type arg that way.

NavBarBinder navBarBinder = GWT.create(NavBarBinder.class);

http://gwt-code-reviews.appspot.com/698802/show

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

Reply via email to