[Checkins] SVN: megrok.z3cform/branches/megrok.z3cform-pagelt/s Basic Implementation

Christian Klinger cklinger at novareto.de
Tue Feb 3 09:15:59 EST 2009


Log message for revision 96035:
  Basic Implementation

Changed:
  U   megrok.z3cform/branches/megrok.z3cform-pagelt/setup.py
  U   megrok.z3cform/branches/megrok.z3cform-pagelt/src/megrok/z3cform/components.py
  U   megrok.z3cform/branches/megrok.z3cform-pagelt/src/megrok/z3cform/meta.zcml

-=-
Modified: megrok.z3cform/branches/megrok.z3cform-pagelt/setup.py
===================================================================
--- megrok.z3cform/branches/megrok.z3cform-pagelt/setup.py	2009-02-03 14:15:33 UTC (rev 96034)
+++ megrok.z3cform/branches/megrok.z3cform-pagelt/setup.py	2009-02-03 14:15:58 UTC (rev 96035)
@@ -9,6 +9,8 @@
     'grokcore.view >= 1.1',
     'grokcore.formlib',
     'z3c.form',
+    'z3c.formui',
+    'z3c.layer',
     ]
 
 # The grok dependency is not added explicitly, so we can factor out a

Modified: megrok.z3cform/branches/megrok.z3cform-pagelt/src/megrok/z3cform/components.py
===================================================================
--- megrok.z3cform/branches/megrok.z3cform-pagelt/src/megrok/z3cform/components.py	2009-02-03 14:15:33 UTC (rev 96034)
+++ megrok.z3cform/branches/megrok.z3cform-pagelt/src/megrok/z3cform/components.py	2009-02-03 14:15:58 UTC (rev 96035)
@@ -13,7 +13,9 @@
 
 from z3c.form import form, field
 from z3c.form.interfaces import IFormLayer
+from z3c.template.interfaces import ILayoutTemplate
 
+import megrok.pagelet
 
 class DefaultFields(field.Fields):
     """Marker for default fields.
@@ -27,6 +29,9 @@
     interface.implements(IGrokForm)
     martian.baseclass()
 
+    template = None
+    layout = None
+
     fields = DefaultFields()
 
     def __init__(self, *args):
@@ -54,7 +59,7 @@
         assert not (self.template is None)
         if IGrokTemplate.providedBy(self.template):
             return super(GrokForm, self)._render_template()
-        return self.template()
+        return self.template(self)
 
     def render(self):
         """People don't have to define a render method here, and we
@@ -72,38 +77,52 @@
                                 # override it.
 
     def __call__(self):
-        mapply(self.update, (), self.request)
-        if self.request.response.getStatus() in (302, 303):
-            # A redirect was triggered somewhere in update().  Don't
-            # continue rendering the template or doing anything else.
-            return
-
+        #mapply(self.update, (), self.request)
+        #if self.request.response.getStatus() in (302, 303):
+        #    # A redirect was triggered somewhere in update().  Don't
+        #    # continue rendering the template or doing anything else.
+        #    return
+        self.update()
         self.updateForm()
-        return self.render()
+	if self.layout is None:
+	    layout = component.getMultiAdapter(
+	        (self.context, self.request), ILayoutTemplate)
+	    import pdb; pdb.set_trace()
+	    return layout(self)
+        return self.layout()
 
 
-class Form(GrokForm, form.Form, grokcore.view.View):
+class Form(GrokForm, form.Form, megrok.pagelet.Pagelet):
     """Normal z3c form.
     """
 
     martian.baseclass()
 
 
-class AddForm(GrokForm, form.AddForm, grokcore.view.View):
+class AddForm(GrokForm, form.AddForm, megrok.pagelet.Pagelet):
     """z3c add form.
     """
 
     martian.baseclass()
 
+    def _render_template(self):
+	assert not (self.template is None)
+	if self._finishedAdd:
+	    self.request.response.redirect(self.nextURL())
+	    return ""
+	if IGrokTemplate.providedBy(self.template):
+	    return super(GrokForm, self)._render_template()
+	return self.template(self)    
 
-class EditForm(GrokForm, form.EditForm, grokcore.view.View):
+
+class EditForm(GrokForm, form.EditForm, megrok.pagelet.Pagelet):
     """z3c edit form.
     """
 
     martian.baseclass()
 
 
-class DisplayForm(GrokForm, form.DisplayForm, grokcore.view.View):
+class DisplayForm(GrokForm, form.DisplayForm, megrok.pagelet.Pagelet):
     """z3c display form.
     """
     

Modified: megrok.z3cform/branches/megrok.z3cform-pagelt/src/megrok/z3cform/meta.zcml
===================================================================
--- megrok.z3cform/branches/megrok.z3cform-pagelt/src/megrok/z3cform/meta.zcml	2009-02-03 14:15:33 UTC (rev 96034)
+++ megrok.z3cform/branches/megrok.z3cform-pagelt/src/megrok/z3cform/meta.zcml	2009-02-03 14:15:58 UTC (rev 96035)
@@ -3,6 +3,10 @@
     xmlns:grok="http://namespaces.zope.org/grok">
 
   <include package="z3c.form" file="meta.zcml" />
+  <include package="zope.viewlet" file="meta.zcml" />
+  <include package="z3c.template" file="meta.zcml" />
+  <include package="z3c.macro" file="meta.zcml" />
+
   <include package="grokcore.view" file="meta-minimal.zcml" />
 
   <grok:grok package=".meta" />



More information about the Checkins mailing list