michael wrote:if I need to extend something other than composite, GWTDesigner can't handle it.
Not so. GWT Designer currently supports editing EntryPoints, Composites, PopupPanels and DialogBoxes.
michael wrote:Does GWTDesigner currently support editing widgets that are not composites? If not, is this planned functionality for an upcoming release?
No and no.
As explicitly stated in the
Google GWT docs on
Creating Custom Widgets, the
correct approach to creating a custom widget is to subclass Composite,
not SimplePanel. If you must subclass SimplePanel, the subclass should be simple and contain no children (those should be added when the new panel is placed to a Composite).
We don't want to encourage bad design practice and support direct editing of panel subclasses. Widgets and panels are meant to be treated as atomic objects in the GUI builder. You may place them within the design view (as you can with your TestPanel example), but Designer is not a tool for creating them. If you want to create a custom widget composed of multiple atomic widgets, you should create a subclass of Composite as recommended by the GWT docs.
Designer already provided excellent support for doing this in the form of
custom Composites. Not only can you place and edit widgets within a Composite using any panel type, you can also expose any widget or any widget property as a public property of the Composite. Designer also includes excellent support for
visual inheritance so that you can create a hierarchy of custom components that inherit various visual elements from one another.