Many thanks Stephan for these great improvements and the new
functionality. I have been away for a bit since I am taking a bit of a
break for a month. Could not help checking out the new group demo though
- its just excellent! The package and demos are truly the kind of help
that was needed for form development. Your work has brought significant
clarity and a pattern for something we all have to tackle.
Roger, also wanted to add my congratulations and best wishes on your new
family member. Children are a wonderful gift.
Stephan Richter wrote:
again thanks to the great feedback we received -- especially from David Pratt,
Roy Mathew, and Joachim Werner -- we were able to fine-tune our new form
framework even more to make it as robust of a foundation as possible for your
projects! New features include group support, fully internationalized widgets
for number and calendar fields, a richer select widget, refined form
templates, and of course a new demo!
BTW, congratulations to Roger who became father for the third time last
Again for the curious and impatient ...
There is also a new demo, of course! The "Questionnaire" demo provides a form
for filling out a simple questionaire about someones Zope community
involvement and then provides a very simple results page. Technically this
demo (available for the DIV- and Table-based layouts) demonstrates the usage
of groups, a new feature of this release, as well as writing attribute value
To run the demos do the following::
$ svn co svn://svn.zope.org/repos/main/z3c.formdemo/trunk formdemo
$ cd formdemo
$ python bootstrap.py
$ ./bin/buildout -N
$ ./bin/demo fg
Now you can access the demo under:
Paul has made some great progress recently and we have now two demos working,
decide whether he wants to make an announcement, but he will be definitely
promoting his work at EuroPython!
<secret>To see the demos: Replace "formdemo" with "formjsdemo" and follow the
- Feature: The select widget grew a new ``prompt`` flag, which allows you to
explicitely request a selection prompt as the first option in the selection
(even for required fields). When set, the prompt message is shown. Such a
prompt as option is common in Web-UIs.
- Feature: Allow "no value message" of select widgets to be dynamically
changed using an attribute value adapter.
- Feature: Internationalized data conversion for date, time, date/time,
integer, float and decimal. Now the locale data is used to format and parse
those data types to provide the bridge to text-based widgets. While those
features require the latest zope.i18n package, backward compatibility is
- Feature: All forms now have an optional label that can be used by the UI.
- Feature: Implemented groups within forms. Groups allow you to combine a set
of fields/widgets into a logical unit. They were designed with ease of use
- Feature: Button Actions -- in other words, the widget for the button field
-- can now be specified either as the "actionFactory" on the button field or
as an adapter.
- Bug: Recorded all public select-widget attributes in the interface.
- Feature: Registered all defined macros for each form template. Also, added
more slots to the templates providing more hooks for customization.
- Feature: Added a macro/slot for the "required info", which explains how
required fields are marked.
- Feature: Added support for form labels.
- Feature: Added support for groups to templates.
- Feature: Added new field "promptChoiceField" to the "All Widgets" demo
demonstrating the prompt message of the select widget.
- Feature: Increased the integer default value of "All Widgets" demo to show
off our new internationalized converter.
- Feature: Made ``bytesField`` and ``passwordField`` non-required, since they
do not show their default values prohibiting the form to successfully
submit, which can be annoying when playing around.
- Feature: New "Questionnaire" demo shows how to use groups effectively. It
also demonstrates how the label of buttons and widgets can be changed using
attribute value adapters.
Zope maillist - Zope@zope.org
** No cross posts or HTML encoding! **
(Related lists -