[Checkins] SVN: megrok.z3cform/branches/megrok.z3cfrom-layout/s - Added the default_form_layer.zcml
Christian Klinger
cklinger at novareto.de
Mon Sep 7 09:48:48 EDT 2009
Log message for revision 103610:
- Added the default_form_layer.zcml
- Getting rid of the dependency of z3c.formui
Changed:
U megrok.z3cform/branches/megrok.z3cfrom-layout/setup.py
U megrok.z3cform/branches/megrok.z3cfrom-layout/src/megrok/z3cform/__init__.py
A megrok.z3cform/branches/megrok.z3cfrom-layout/src/megrok/z3cform/default_form_layer.zcml
U megrok.z3cform/branches/megrok.z3cfrom-layout/src/megrok/z3cform/ftesting.zcml
A megrok.z3cform/branches/megrok.z3cfrom-layout/src/megrok/z3cform/layout/
A megrok.z3cform/branches/megrok.z3cfrom-layout/src/megrok/z3cform/layout/__init__.py
A megrok.z3cform/branches/megrok.z3cfrom-layout/src/megrok/z3cform/layout/basic.py
A megrok.z3cform/branches/megrok.z3cfrom-layout/src/megrok/z3cform/layout/basic_templates/
A megrok.z3cform/branches/megrok.z3cfrom-layout/src/megrok/z3cform/layout/basic_templates/basicdisplay.pt
A megrok.z3cform/branches/megrok.z3cfrom-layout/src/megrok/z3cform/layout/basic_templates/basicform.pt
U megrok.z3cform/branches/megrok.z3cfrom-layout/src/megrok/z3cform/meta.zcml
D megrok.z3cform/branches/megrok.z3cfrom-layout/src/megrok/z3cform/skin.py
U megrok.z3cform/branches/megrok.z3cfrom-layout/src/megrok/z3cform/tests/test_field.py
U megrok.z3cform/branches/megrok.z3cfrom-layout/src/megrok/z3cform/tests/test_layout.py
U megrok.z3cform/branches/megrok.z3cfrom-layout/src/megrok/z3cform/tests/test_render.py
U megrok.z3cform/branches/megrok.z3cfrom-layout/src/megrok/z3cform/tests/test_widgettemplate.py
-=-
Modified: megrok.z3cform/branches/megrok.z3cfrom-layout/setup.py
===================================================================
--- megrok.z3cform/branches/megrok.z3cfrom-layout/setup.py 2009-09-07 09:08:51 UTC (rev 103609)
+++ megrok.z3cform/branches/megrok.z3cfrom-layout/setup.py 2009-09-07 13:48:47 UTC (rev 103610)
@@ -9,8 +9,8 @@
'grokcore.view >= 1.1',
'grokcore.formlib',
'z3c.form',
- 'z3c.formui',
'megrok.layout',
+ 'megrok.pagetemplate',
]
# The grok dependency is not added explicitly, so we can factor out a
Modified: megrok.z3cform/branches/megrok.z3cfrom-layout/src/megrok/z3cform/__init__.py
===================================================================
--- megrok.z3cform/branches/megrok.z3cfrom-layout/src/megrok/z3cform/__init__.py 2009-09-07 09:08:51 UTC (rev 103609)
+++ megrok.z3cform/branches/megrok.z3cfrom-layout/src/megrok/z3cform/__init__.py 2009-09-07 13:48:47 UTC (rev 103610)
@@ -3,7 +3,12 @@
from components import PageForm, PageAddForm, PageEditForm, PageDisplayForm
from components import WidgetTemplate
from directives import field
-from skin import FormLayer, TableLayer
from utils import apply_data_event
from z3c.form import widget, field, button, action
from z3c.form.form import extends
+from z3c.form.interfaces import IFormLayer
+from zope.publisher.interfaces.browser import IDefaultBrowserLayer
+
+class FormLayer(IFormLayer):
+ """ A div -based layer for a z3c.forms"""
+
Added: megrok.z3cform/branches/megrok.z3cfrom-layout/src/megrok/z3cform/default_form_layer.zcml
===================================================================
--- megrok.z3cform/branches/megrok.z3cfrom-layout/src/megrok/z3cform/default_form_layer.zcml (rev 0)
+++ megrok.z3cform/branches/megrok.z3cfrom-layout/src/megrok/z3cform/default_form_layer.zcml 2009-09-07 13:48:47 UTC (rev 103610)
@@ -0,0 +1,12 @@
+<configure
+ xmlns="http://namespaces.zope.org/zope"
+ xmlns:grok="http://namespaces.zope.org/grok">
+
+ <class class="zope.publisher.http.HTTPRequest">
+ <implements interface="z3c.form.interfaces.IFormLayer" />
+ </class>
+
+ <grok:grok package=".layout" />
+
+</configure>
+
Modified: megrok.z3cform/branches/megrok.z3cfrom-layout/src/megrok/z3cform/ftesting.zcml
===================================================================
--- megrok.z3cform/branches/megrok.z3cfrom-layout/src/megrok/z3cform/ftesting.zcml 2009-09-07 09:08:51 UTC (rev 103609)
+++ megrok.z3cform/branches/megrok.z3cfrom-layout/src/megrok/z3cform/ftesting.zcml 2009-09-07 13:48:47 UTC (rev 103610)
@@ -1,12 +1,16 @@
<configure
xmlns="http://namespaces.zope.org/zope"
- xmlns:grok="http://namespaces.zope.org/grok">
+ xmlns:grok="http://namespaces.zope.org/grok"
+ >
<include package="grok" />
<include package="grok" file="meta.zcml" />
+ <include package="megrok.pagetemplate" file="meta.zcml" />
+
<include package="megrok.z3cform" file="meta.zcml" />
<include package="megrok.z3cform" />
+ <include package="megrok.z3cform" file="default_form_layer.zcml" />
<grok:grok package="megrok.z3cform.tests" />
@@ -16,7 +20,7 @@
<unauthenticatedPrincipal
id="zope.anybody"
- title="Unauthenticated User"
+ title="Unauthenticated Principal"
/>
<grant
permission="zope.View"
Added: megrok.z3cform/branches/megrok.z3cfrom-layout/src/megrok/z3cform/layout/__init__.py
===================================================================
--- megrok.z3cform/branches/megrok.z3cfrom-layout/src/megrok/z3cform/layout/__init__.py (rev 0)
+++ megrok.z3cform/branches/megrok.z3cfrom-layout/src/megrok/z3cform/layout/__init__.py 2009-09-07 13:48:47 UTC (rev 103610)
@@ -0,0 +1 @@
+#make me a package
Added: megrok.z3cform/branches/megrok.z3cfrom-layout/src/megrok/z3cform/layout/basic.py
===================================================================
--- megrok.z3cform/branches/megrok.z3cfrom-layout/src/megrok/z3cform/layout/basic.py (rev 0)
+++ megrok.z3cform/branches/megrok.z3cfrom-layout/src/megrok/z3cform/layout/basic.py 2009-09-07 13:48:47 UTC (rev 103610)
@@ -0,0 +1,9 @@
+from grokcore.viewlet import view
+from z3c.form.interfaces import IForm, IDisplayForm
+from megrok.pagetemplate import PageTemplate
+
+class BasicForm(PageTemplate):
+ view(IForm)
+
+class BasicDisplay(PageTemplate):
+ view(IDisplayForm)
Added: megrok.z3cform/branches/megrok.z3cfrom-layout/src/megrok/z3cform/layout/basic_templates/basicdisplay.pt
===================================================================
--- megrok.z3cform/branches/megrok.z3cfrom-layout/src/megrok/z3cform/layout/basic_templates/basicdisplay.pt (rev 0)
+++ megrok.z3cform/branches/megrok.z3cfrom-layout/src/megrok/z3cform/layout/basic_templates/basicdisplay.pt 2009-09-07 13:48:47 UTC (rev 103610)
@@ -0,0 +1,25 @@
+<html>
+ <body>
+ <div class="main">
+ <tal:block repeat="widget view/widgets/values">
+ <div id="" class="row"
+ tal:attributes="id string:${widget/id}-row"
+ tal:condition="python:widget.mode != 'hidden'">
+ <div class="label">
+ <label tal:attributes="for widget/id">
+ <span i18n:translate=""
+ tal:content="widget/label">label</span>
+ </label>
+ </div>
+ <div class="widget" tal:content="structure widget/render">
+ <input type="text" size="24" value="" />
+ </div>
+ </div>
+ <input type="hidden" value=""
+ tal:condition="python:widget.mode == 'hidden'"
+ tal:replace="structure widget/render" />
+ </tal:block>
+ </div>
+ </body>
+</html>
+
Added: megrok.z3cform/branches/megrok.z3cfrom-layout/src/megrok/z3cform/layout/basic_templates/basicform.pt
===================================================================
--- megrok.z3cform/branches/megrok.z3cfrom-layout/src/megrok/z3cform/layout/basic_templates/basicform.pt (rev 0)
+++ megrok.z3cform/branches/megrok.z3cfrom-layout/src/megrok/z3cform/layout/basic_templates/basicform.pt 2009-09-07 13:48:47 UTC (rev 103610)
@@ -0,0 +1,85 @@
+<form action="."
+ i18n:domain="dolmen"
+ tal:attributes="action request/URL;
+ class string:form-${view/__name__}"
+ method="post"
+ enctype="multipart/form-data">
+
+ <div class="form-status"
+ tal:define="status view/status"
+ tal:condition="status">
+
+ <dl class="info-message"
+ tal:condition="view/status">
+ <dt i18n:translate="">Status</dt>
+ <dd tal:content="view/status" />
+ </dl>
+ </div>
+
+ <div class="errors">
+ <ul class="errors"
+ tal:condition="view/widgets/errors">
+ <li tal:repeat="error view/widgets/errors">
+ <strong tal:condition="error/widget"
+ tal:replace="error/widget/label" />
+ <span tal:replace="structure error/render">Error Type</span>
+ </li>
+ </ul>
+ </div>
+
+ <h1 tal:condition="view/label" tal:content="view/label" />
+
+ <p class="documentDescription"
+ tal:content="view/description|nothing" />
+
+ <input type="hidden" name="camefrom"
+ tal:attributes="value request/camefrom | nothing" />
+
+ <fieldset tal:define="form_name view/form_name|nothing"
+ tal:omit-tag="not:form_name">
+ <legend tal:condition="form_name"
+ tal:content="form_name">Form name</legend>
+
+ <div id="edition-fields">
+ <tal:block tal:repeat="widget view/widgets/values">
+ <div tal:define="description widget/description|nothing;
+ error widget/error;
+ error_class python:error and 'errored-field' or ''"
+ tal:attributes="class string:field ${error_class}">
+ <label tal:attributes="for widget/id">
+ <span i18n:translate=""
+ tal:content="widget/label">label</span>
+ <span class="fieldRequired" title="Required"
+ tal:condition="widget/required"
+ i18n:translate="label_required"
+ i18n:attributes="title title_required;">
+ <span class="textual-info">(Required)</span>
+ </span>
+ </label>
+ <div class="formHelp"
+ i18n:translate=""
+ tal:content="description"
+ tal:condition="description"
+ >field description</div>
+ <div class="field-error"
+ tal:condition="widget/error">
+ <span tal:replace="structure widget/error/render">error</span>
+ </div>
+ <div class="widget"
+ tal:content="structure widget/render">
+ <input type="text" />
+ </div>
+ </div>
+ </tal:block>
+ </div>
+
+ <div id="actionsView" tal:condition="view/actions">
+ <span class="actionButtons">
+ <input tal:repeat="action view/actions/values"
+ tal:replace="structure action/render"
+ />
+ </span>
+ </div>
+ </fieldset>
+</form>
+
Modified: megrok.z3cform/branches/megrok.z3cfrom-layout/src/megrok/z3cform/meta.zcml
===================================================================
--- megrok.z3cform/branches/megrok.z3cfrom-layout/src/megrok/z3cform/meta.zcml 2009-09-07 09:08:51 UTC (rev 103609)
+++ megrok.z3cform/branches/megrok.z3cfrom-layout/src/megrok/z3cform/meta.zcml 2009-09-07 13:48:47 UTC (rev 103610)
@@ -4,12 +4,6 @@
<include package="z3c.form" file="meta.zcml" />
<include package="grokcore.view" file="meta-minimal.zcml" />
- <include package="grokcore.viewlet" file="meta.zcml" />
- <include package="zope.viewlet" file="meta.zcml" />
- <include package="z3c.template" file="meta.zcml" />
- <include package="z3c.macro"/>
- <include package="z3c.macro" file="meta.zcml" />
- <include package="z3c.formui"/>
<include package="megrok.layout" file="meta.zcml" />
<grok:grok package=".meta" />
Deleted: megrok.z3cform/branches/megrok.z3cfrom-layout/src/megrok/z3cform/skin.py
===================================================================
--- megrok.z3cform/branches/megrok.z3cfrom-layout/src/megrok/z3cform/skin.py 2009-09-07 09:08:51 UTC (rev 103609)
+++ megrok.z3cform/branches/megrok.z3cfrom-layout/src/megrok/z3cform/skin.py 2009-09-07 13:48:47 UTC (rev 103610)
@@ -1,17 +0,0 @@
-import grok
-import z3c.formui.interfaces
-
-
-from z3c.form.interfaces import IFormLayer
-
-
-class FormLayer(grok.IDefaultBrowserLayer,
- IFormLayer,
- z3c.formui.interfaces.IDivFormLayer):
- """ A div -based layer for a z3c.forms"""
-
-
-class TableLayer(grok.IDefaultBrowserLayer,
- IFormLayer,
- z3c.formui.interfaces.ITableFormLayer):
- """ A table -based layer for a z3c.forms"""
Modified: megrok.z3cform/branches/megrok.z3cfrom-layout/src/megrok/z3cform/tests/test_field.py
===================================================================
--- megrok.z3cform/branches/megrok.z3cfrom-layout/src/megrok/z3cform/tests/test_field.py 2009-09-07 09:08:51 UTC (rev 103609)
+++ megrok.z3cform/branches/megrok.z3cfrom-layout/src/megrok/z3cform/tests/test_field.py 2009-09-07 13:48:47 UTC (rev 103610)
@@ -5,7 +5,6 @@
>>> from zope.interface import alsoProvides
>>> from zope.publisher.browser import TestRequest
>>> request = TestRequest()
- >>> alsoProvides(request, FormFieldSkin)
Check that fields have been created on the edition page:
@@ -33,31 +32,27 @@
from megrok import z3cform
from z3c.form import field
-class FormFieldSkin(z3cform.FormLayer):
- grok.skin('formfieldskin')
-grok.layer(FormFieldSkin)
-
-
-
class IMammoth(interface.Interface):
-
name = schema.TextLine(title=u"Name")
age = schema.Int(title=u"Age")
+
class Mammoth(grok.Model):
-
interface.implements(IMammoth)
name = FieldProperty(IMammoth['name'])
age = FieldProperty(IMammoth['age'])
+
class Edit(z3cform.EditForm):
pass
+
class Index(z3cform.DisplayForm):
fields = field.Fields(IMammoth).omit('age')
+
def test_suite():
from zope.testing import doctest
from megrok.z3cform.tests import FunctionalLayer
Modified: megrok.z3cform/branches/megrok.z3cfrom-layout/src/megrok/z3cform/tests/test_layout.py
===================================================================
--- megrok.z3cform/branches/megrok.z3cfrom-layout/src/megrok/z3cform/tests/test_layout.py 2009-09-07 09:08:51 UTC (rev 103609)
+++ megrok.z3cform/branches/megrok.z3cfrom-layout/src/megrok/z3cform/tests/test_layout.py 2009-09-07 13:48:47 UTC (rev 103610)
@@ -7,7 +7,6 @@
>>> from zope.interface import alsoProvides
>>> from zope.publisher.browser import TestRequest
>>> request = TestRequest()
- >>> alsoProvides(request, FormSkin)
Add Form
@@ -16,49 +15,46 @@
<html>
<body>
<div class="layout"><form action="http://127.0.0.1" method="post"
- enctype="multipart/form-data" class="edit-form"
- name="form" id="form">
- <div class="viewspace">
- <div class="required-info">
- <span class="required">*</span>
- – required
- </div>
- <div>
- <div id="form-widgets-name-row" class="row">
- <div class="label">
- <label for="form-widgets-name">
- <span>Name</span>
- <span class="required">*</span>
- </label>
- </div>
- <div class="widget">
+ enctype="multipart/form-data" class="form-add">
+ <div class="errors">
+ </div>
+ <p class="documentDescription"></p>
+ <input type="hidden" name="camefrom" />
+ <div id="edition-fields">
+ <div class="field ">
+ <label for="form-widgets-name">
+ <span>Name</span>
+ <span class="fieldRequired" title="Required">
+ <span class="textual-info">(Required)</span>
+ </span>
+ </label>
+ <div class="widget">
<input id="form-widgets-name" name="form.widgets.name"
class="text-widget required textline-field"
value="" type="text" />
</div>
- </div>
- <div id="form-widgets-age-row" class="row">
- <div class="label">
- <label for="form-widgets-age">
- <span>Age</span>
- <span class="required">*</span>
- </label>
- </div>
- <div class="widget">
+ </div>
+ <div class="field ">
+ <label for="form-widgets-age">
+ <span>Age</span>
+ <span class="fieldRequired" title="Required">
+ <span class="textual-info">(Required)</span>
+ </span>
+ </label>
+ <div class="widget">
<input id="form-widgets-age" name="form.widgets.age"
class="text-widget required int-field" value=""
type="text" />
</div>
- </div>
</div>
- </div>
- <div>
- <div class="buttons">
+ </div>
+ <div id="actionsView">
+ <span class="actionButtons">
<input id="form-buttons-add" name="form.buttons.add"
class="submit-widget button-field" value="Add"
type="submit" />
+ </span>
</div>
- </div>
</form>
</div>
</body>
@@ -96,54 +92,51 @@
>>> print view()
<html>
- <body>
- <div class="layout"><form action="http://127.0.0.1" method="post"
- enctype="multipart/form-data" class="edit-form"
- name="form" id="form">
- <div class="viewspace">
- <div class="required-info">
- <span class="required">*</span>
- – required
- </div>
- <div>
- <div id="form-widgets-name-row" class="row">
- <div class="label">
- <label for="form-widgets-name">
- <span>Name</span>
- <span class="required">*</span>
- </label>
- </div>
- <div class="widget">
- <input id="form-widgets-name" name="form.widgets.name"
- class="text-widget required textline-field"
- value="" type="text" />
+ <body>
+ <div class="layout"><form action="http://127.0.0.1" method="post"
+ enctype="multipart/form-data" class="form-edit">
+ <div class="errors">
+ </div>
+ <p class="documentDescription"></p>
+ <input type="hidden" name="camefrom" />
+ <div id="edition-fields">
+ <div class="field ">
+ <label for="form-widgets-name">
+ <span>Name</span>
+ <span class="fieldRequired" title="Required">
+ <span class="textual-info">(Required)</span>
+ </span>
+ </label>
+ <div class="widget">
+ <input id="form-widgets-name" name="form.widgets.name"
+ class="text-widget required textline-field"
+ value="" type="text" />
</div>
- </div>
- <div id="form-widgets-age-row" class="row">
- <div class="label">
- <label for="form-widgets-age">
- <span>Age</span>
- <span class="required">*</span>
- </label>
- </div>
- <div class="widget">
- <input id="form-widgets-age" name="form.widgets.age"
- class="text-widget required int-field" value=""
- type="text" />
+ </div>
+ <div class="field ">
+ <label for="form-widgets-age">
+ <span>Age</span>
+ <span class="fieldRequired" title="Required">
+ <span class="textual-info">(Required)</span>
+ </span>
+ </label>
+ <div class="widget">
+ <input id="form-widgets-age" name="form.widgets.age"
+ class="text-widget required int-field" value=""
+ type="text" />
</div>
- </div>
- </div>
- </div>
- <div>
- <div class="buttons">
+ </div>
+ </div>
+ <div id="actionsView">
+ <span class="actionButtons">
<input id="form-buttons-apply" name="form.buttons.apply"
- class="submit-widget button-field" value="Apply"
- type="submit" />
- </div>
+ class="submit-widget button-field" value="Apply"
+ type="submit" />
+ </span>
</div>
</form>
</div>
- </body>
+ </body>
</html>
@@ -159,12 +152,6 @@
from z3c.form import button, field
-class FormSkin(z3cform.FormLayer):
- grok.skin('formskin')
-
-grok.layer(FormSkin)
-
-
class IMammoth(interface.Interface):
name = schema.TextLine(title=u"Name")
age = schema.Int(title=u"Age")
Modified: megrok.z3cform/branches/megrok.z3cfrom-layout/src/megrok/z3cform/tests/test_render.py
===================================================================
--- megrok.z3cform/branches/megrok.z3cfrom-layout/src/megrok/z3cform/tests/test_render.py 2009-09-07 09:08:51 UTC (rev 103609)
+++ megrok.z3cform/branches/megrok.z3cfrom-layout/src/megrok/z3cform/tests/test_render.py 2009-09-07 13:48:47 UTC (rev 103610)
@@ -10,7 +10,6 @@
>>> from zope.interface import alsoProvides
>>> from zope.publisher.browser import TestRequest
>>> request = TestRequest()
- >>> alsoProvides(request, RenderSkin)
add forms
---------
@@ -18,50 +17,47 @@
>>> add = component.getMultiAdapter((manfred, request), name='add')
>>> print add()
<form action="http://127.0.0.1" method="post"
- enctype="multipart/form-data" class="edit-form"
- name="form" id="form">
- <div class="viewspace">
- <div class="required-info">
- <span class="required">*</span>
- – required
- </div>
- <div>
- <div id="form-widgets-name-row" class="row">
- <div class="label">
- <label for="form-widgets-name">
- <span>Name</span>
- <span class="required">*</span>
- </label>
- </div>
- <div class="widget">
- <input id="form-widgets-name" name="form.widgets.name"
- class="text-widget required textline-field"
- value="" type="text" />
+ enctype="multipart/form-data" class="form-add">
+ <div class="errors">
</div>
- </div>
- <div id="form-widgets-age-row" class="row">
- <div class="label">
- <label for="form-widgets-age">
- <span>Age</span>
- <span class="required">*</span>
- </label>
- </div>
- <div class="widget">
- <input id="form-widgets-age" name="form.widgets.age"
- class="text-widget required int-field" value=""
- type="text" />
- </div>
- </div>
- </div>
+ <p class="documentDescription"></p>
+ <input type="hidden" name="camefrom" />
+ <div id="edition-fields">
+ <div class="field ">
+ <label for="form-widgets-name">
+ <span>Name</span>
+ <span class="fieldRequired" title="Required">
+ <span class="textual-info">(Required)</span>
+ </span>
+ </label>
+ <div class="widget">
+ <input id="form-widgets-name" name="form.widgets.name"
+ class="text-widget required textline-field"
+ value="" type="text" />
+ </div>
</div>
- <div>
- <div class="buttons">
- <input id="form-buttons-add" name="form.buttons.add"
- class="submit-widget button-field" value="Add"
- type="submit" />
- </div>
+ <div class="field ">
+ <label for="form-widgets-age">
+ <span>Age</span>
+ <span class="fieldRequired" title="Required">
+ <span class="textual-info">(Required)</span>
+ </span>
+ </label>
+ <div class="widget">
+ <input id="form-widgets-age" name="form.widgets.age"
+ class="text-widget required int-field" value=""
+ type="text" />
+ </div>
</div>
- </form>
+ </div>
+ <div id="actionsView">
+ <span class="actionButtons">
+ <input id="form-buttons-add" name="form.buttons.add"
+ class="submit-widget button-field" value="Add"
+ type="submit" />
+ </span>
+ </div>
+ </form>
edit-forms
@@ -70,50 +66,47 @@
>>> edit = component.getMultiAdapter((manfred, request), name='edit')
>>> print edit()
<form action="http://127.0.0.1" method="post"
- enctype="multipart/form-data" class="edit-form"
- name="form" id="form">
- <div class="viewspace">
- <div class="required-info">
- <span class="required">*</span>
- – required
- </div>
- <div>
- <div id="form-widgets-name-row" class="row">
- <div class="label">
- <label for="form-widgets-name">
- <span>Name</span>
- <span class="required">*</span>
- </label>
- </div>
- <div class="widget">
- <input id="form-widgets-name" name="form.widgets.name"
- class="text-widget required textline-field"
- value="" type="text" />
+ enctype="multipart/form-data" class="form-edit">
+ <div class="errors">
</div>
- </div>
- <div id="form-widgets-age-row" class="row">
- <div class="label">
- <label for="form-widgets-age">
- <span>Age</span>
- <span class="required">*</span>
- </label>
- </div>
- <div class="widget">
- <input id="form-widgets-age" name="form.widgets.age"
- class="text-widget required int-field" value=""
- type="text" />
- </div>
- </div>
- </div>
+ <p class="documentDescription"></p>
+ <input type="hidden" name="camefrom" />
+ <div id="edition-fields">
+ <div class="field ">
+ <label for="form-widgets-name">
+ <span>Name</span>
+ <span class="fieldRequired" title="Required">
+ <span class="textual-info">(Required)</span>
+ </span>
+ </label>
+ <div class="widget">
+ <input id="form-widgets-name" name="form.widgets.name"
+ class="text-widget required textline-field"
+ value="" type="text" />
+ </div>
</div>
- <div>
- <div class="buttons">
- <input id="form-buttons-apply" name="form.buttons.apply"
- class="submit-widget button-field" value="Apply"
- type="submit" />
- </div>
+ <div class="field ">
+ <label for="form-widgets-age">
+ <span>Age</span>
+ <span class="fieldRequired" title="Required">
+ <span class="textual-info">(Required)</span>
+ </span>
+ </label>
+ <div class="widget">
+ <input id="form-widgets-age" name="form.widgets.age"
+ class="text-widget required int-field" value=""
+ type="text" />
+ </div>
</div>
- </form>
+ </div>
+ <div id="actionsView">
+ <span class="actionButtons">
+ <input id="form-buttons-apply" name="form.buttons.apply"
+ class="submit-widget button-field" value="Apply"
+ type="submit" />
+ </span>
+ </div>
+ </form>
display-forms
@@ -121,32 +114,34 @@
>>> index = component.getMultiAdapter((manfred, request), name='index')
>>> print index()
- <div class="viewspace">
- <div>
- <div id="form-widgets-name-row" class="row">
- <div class="label">
- <label for="form-widgets-name">
- <span>Name</span>
- </label>
- </div>
- <div class="widget">
- <span id="form-widgets-name"
- class="text-widget required textline-field"></span>
- </div>
- </div>
- <div id="form-widgets-age-row" class="row">
- <div class="label">
- <label for="form-widgets-age">
- <span>Age</span>
- </label>
- </div>
- <div class="widget">
- <span id="form-widgets-age"
- class="text-widget required int-field"></span>
- </div>
- </div>
+ <html>
+ <body>
+ <div class="main">
+ <div id="form-widgets-name-row" class="row">
+ <div class="label">
+ <label for="form-widgets-name">
+ <span>Name</span>
+ </label>
+ </div>
+ <div class="widget">
+ <span id="form-widgets-name"
+ class="text-widget required textline-field"></span>
+ </div>
</div>
+ <div id="form-widgets-age-row" class="row">
+ <div class="label">
+ <label for="form-widgets-age">
+ <span>Age</span>
+ </label>
+ </div>
+ <div class="widget">
+ <span id="form-widgets-age"
+ class="text-widget required int-field"></span>
+ </div>
+ </div>
</div>
+ </body>
+ </html>
"""
import grok
@@ -156,13 +151,6 @@
from megrok import z3cform
from z3c.form import field
-class RenderSkin(z3cform.FormLayer):
- grok.skin('renderskin')
-
-grok.layer(RenderSkin)
-
-
-
class IMammoth(interface.Interface):
name = schema.TextLine(title=u"Name")
Modified: megrok.z3cform/branches/megrok.z3cfrom-layout/src/megrok/z3cform/tests/test_widgettemplate.py
===================================================================
--- megrok.z3cform/branches/megrok.z3cfrom-layout/src/megrok/z3cform/tests/test_widgettemplate.py 2009-09-07 09:08:51 UTC (rev 103609)
+++ megrok.z3cform/branches/megrok.z3cfrom-layout/src/megrok/z3cform/tests/test_widgettemplate.py 2009-09-07 13:48:47 UTC (rev 103610)
@@ -5,7 +5,6 @@
>>> from zope.interface import alsoProvides
>>> from zope.publisher.browser import TestRequest
>>> request = TestRequest()
- >>> alsoProvides(request, Skin)
Check that fields have been created on the edition page:
@@ -16,7 +15,7 @@
>>> [field.__name__ for field in view.fields.values()]
['name', 'age']
-The widget for *name* should show it´s normal widget.
+The widget for *name* should show it's normal widget.
Because no CustomWidget is provided for this field.
>>> view.updateWidgets()
@@ -31,7 +30,7 @@
>>> print view.widgets['age'].render()
<span> This is custom integer widget for zope.schema.Int Fields </span>
-Now let´s look on a other view. Here we get a CustomWidget as a result
+Now let's look on a other view. Here we get a CustomWidget as a result
of the CustomStringTemplate
>>> view = component.getMultiAdapter((manfred, request), name='view')
@@ -40,7 +39,7 @@
<span> Extra Widget </span>
Our CustomTemplate class is configured for the IAdded interface.
-Let´s check if we get the right template for it.
+Let's check if we get the right template for it.
>>> view = component.getMultiAdapter((manfred, request), name='add')
>>> view.updateWidgets()
@@ -74,12 +73,7 @@
from z3c.form import field, interfaces
-class Skin(z3cform.FormLayer):
- grok.skin('skin')
-grok.layer(Skin)
-
-
class IPerson(interface.Interface):
name = schema.TextLine(title=u"Name")
age = schema.Int(title=u"Age")
More information about the checkins
mailing list