Version 0.75 of Metawidget, the dynamic user interface generator, is now available. This release includes:
- Pluggable widget libraries
- SwingX support
- DisplayTag support
- Improved documentation
'Pluggable widget libraries' represents a significant refactoring of the widget generation code, intended to:
- simplify support of third party libraries, including mixing multiple third party libraries in the same application
- pave the way for supporting Collections
- pave the way for supporting some more UI toolkits (ie. SWT)
It is also, unfortunately, a breaking change. Sorry!
To migrate from v0.7 to v0.75:
Change #1: inspector-config.xml is now metawidget.xml
The role of inspector-config.xml has been expanded from configuring pluggable inspectors to configuring pluggable inspectors and widget builders. It is also now a general configuration mechanism for all aspects of your Metawidget, such as default CSS settings etc.
You will need to refactor inspector-config.xml files of the form...
- it is now concerned with the top-level Metawidget, not just the inspectors inside it. This means you can also configure other Metawidget properties (see below)
- method values must now be wrapped with their type (ie. <list>) - this allows us to support configuring multi-value methods such as setParameter
- Full documentation can be found here
Change #2: Metawidget.buildWidget is now WidgetBuilder.buildWidget
If you had previously extended Metawidget to add support for a third party widget, you'll need to refactor your code into a WidgetBuilder. WidgetBuilders can be configured programmatically, or with the new metawidget.xml:
Change #3: RichFacesMetawidget has been removed
To use JBoss RichFaces, you now use a regular UIMetawidget with a RichFacesWidgetBuilder. Full documentation can be found here.
We apologise for the disruption these changes will cause, but strongly believe they will make Metawidget a better product for our v1.0 release. All documentation and examples have already been migrated.