Making SmartGWT UIBinder-friendly.

458 views
Skip to first unread message

Blessed Geek

unread,
Feb 23, 2010, 8:03:25 AM2/23/10
to Google Web Toolkit
I have been extending SmartGWT to be UIBinder-friendly, widget by
widget, on a as-needed basis.

They can be found at
http://code.google.com/p/synthfuljava/source/browse/#svn/trunk/gwt/smartgwt/org/synthful/smartgwt.

I would like to find partners in this effort and perhaps create a new
google code project for it.

For those classes that are Canvas derivatives, and therefore, GWT
Widget derivatives, all I have to do is implement HasWidgets.

Many classes are non-GWT widgets and I would need to extend Widgets
and then instantiate the class and then expose the class' members. It
would be great if there was a mix-in tool of some kind.

Similarly, there are GWT widgets that do not implement HasWidgets and
therefore not usable with UIBinder and I am also extending them.

I have been able to use my extensions of SmartGWT with UIBinder rather
successfully in more complex page designs. For example,

<ui:UiBinder
xmlns:ui="urn:ui:com.google.gwt.uibinder"
xmlns:g="urn:import:com.google.gwt.user.client.ui"
xmlns:z="urn:import:org.synthful.smartgwt.client.widgets"
>
<z:UICanvas ui:field="canvas">
<g:VerticalPanel>
<z:UIMenuBar>
<z:UIMenu title='Log in'>
<z:UIMenuItem title='Log in with Google/gmail id'
ui:field="googin" />
<z:UIMenuItem title='Log in with OpenID'
ui:field="opin" />
</z:UIMenu>
</z:UIMenuBar>
<z:UIVLayout membersMargin='15' ui:field="getLaid"
width='96%' height='95%'>
<z:UITabset>
<z:UITab title='Browse'>
<smw:Label contents='asdf' />
</z:UITab>
<z:UITab title='List'>
<smw:Label contents='opqpee' />
</z:UITab>
</z:UITabset>
</z:UIVLayout>
</g:VerticalPanel>
<z:UIWindow ui:field="popup"
width='500' height='200' membersMargin='15'
canDragResize='true' showResizer='true'
autoSize='true' showBody='true'/>
</z:UICanvas>

Reply all
Reply to author
Forward
0 new messages