[Zope-Checkins] CVS: Zope3/lib/python/Zope/App/Formulator/Fields - fields.zcml:1.1.2.1
Stephan Richter
srichter@cbu.edu
Fri, 1 Mar 2002 02:04:36 -0500
Update of /cvs-repository/Zope3/lib/python/Zope/App/Formulator/Fields
In directory cvs.zope.org:/tmp/cvs-serv22190/Fields
Added Files:
Tag: srichter-OFS_Formulator-branch
fields.zcml
Log Message:
Checkin for new Formualtor layout. Much has changed since the initial
checkin:
- Both classes and instances of fields can be used as factory when creating
views.
- Field: This object is simply a meta-data container for a piece of
information; for content objects these are usually its properties.
Note: It is planned to have a CompositeField for more complex inputs,
such as dates.
- FieldViews are virtual objects; they are basically realized Widgets (or
Widgets in context)
- Validator: An object that validates data. Note that this object is
totally input/protocol-agnostic. Therefore the old concept of some of the
Zope 2 Formulator validators is not applicable anymore.
- Widget: This is a generic component that is concerned about the
presentation of a field in a particular protocol. A difference to the
Zope 2 Formulator version is that the widget is also responsible of
converting possible input-specific representation to a standard one. This
is not yet fully implemented though.
- Form: A protocol-specific object that is concerned with the overall
representation of a form and its action.
- There is a Validator and Field Registry, since Fields and Validators can
also be used independent of Formulator's goals. Fields should really
become the standard way to provide meta-data for properties.
Todo: (too much)
- I need to write a proper metaConfigure.py.
- Make a CompositeField.
- Create XUL Widgets.
- Clean up files.
- Finishing the conversion to the Zope 3 Formulator model.
=== Added File Zope3/lib/python/Zope/App/Formulator/Fields/fields.zcml ===
<zopeConfigure
xmlns='http://namespaces.zope.org/zope'
xmlns:formulator='http://namespaces.zope.org/formulator'
xmlns:security='http://namespaces.zope.org/security'
>
<!-- formulator:registerField name="DateTimeField"
field="Zope.App.Formulator.Fields.Generic.DateTimeField." / -->
<formulator:registerField name="EmailField"
field="Zope.App.Formulator.Fields.Generic.EmailField." />
<formulator:registerField name="FileField"
field="Zope.App.Formulator.Fields.Generic.FileField." />
<formulator:registerField name="FloatField"
field="Zope.App.Formulator.Fields.Generic.FloatField." />
<formulator:registerField name="IntegerField"
field="Zope.App.Formulator.Fields.Generic.IntegerField." />
<security:protectClass
name="Zope.App.Formulator.Fields.Generic.IntegerField."
permission_id="Zope.ManageContent"
methods="getValue" />
<formulator:registerField name="ListField"
field="Zope.App.Formulator.Fields.Generic.ListField." />
<formulator:registerField name="PasswordField"
field="Zope.App.Formulator.Fields.Generic.PasswordField." />
<formulator:registerField name="PatternField"
field="Zope.App.Formulator.Fields.Generic.PatternField." />
<formulator:registerField name="StringField"
field="Zope.App.Formulator.Fields.Generic.StringField." />
</zopeConfigure>