[Checkins] SVN: megrok.layout/trunk/src/megrok/layout/ Forms now inherit from UtilityView

Souheil CHELFOUH souheil at chelfouh.com
Mon Oct 18 06:00:26 EDT 2010


Log message for revision 117673:
  Forms now inherit from UtilityView

Changed:
  U   megrok.layout/trunk/src/megrok/layout/components.py
  U   megrok.layout/trunk/src/megrok/layout/tests/models/message.py
  U   megrok.layout/trunk/src/megrok/layout/tests/models/url.py

-=-
Modified: megrok.layout/trunk/src/megrok/layout/components.py
===================================================================
--- megrok.layout/trunk/src/megrok/layout/components.py	2010-10-18 10:00:20 UTC (rev 117672)
+++ megrok.layout/trunk/src/megrok/layout/components.py	2010-10-18 10:00:26 UTC (rev 117673)
@@ -114,7 +114,7 @@
         return mapply(self.render, (), self.request)
 
 
-class LayoutAwareForm(object):
+class LayoutAwareForm(UtilityView):
     """A mixin to make form aware of layouts.
     """
 

Modified: megrok.layout/trunk/src/megrok/layout/tests/models/message.py
===================================================================
--- megrok.layout/trunk/src/megrok/layout/tests/models/message.py	2010-10-18 10:00:20 UTC (rev 117672)
+++ megrok.layout/trunk/src/megrok/layout/tests/models/message.py	2010-10-18 10:00:26 UTC (rev 117673)
@@ -7,10 +7,14 @@
   >>> request = TestRequest()
   >>> mylayout = getMultiAdapter((request, kitty), ILayout)
   >>> myview = getMultiAdapter((kitty, request), name='utils')
+  >>> myform = getMultiAdapter((kitty, request), name='formutils')
 
   >>> print myview.flash(u'test')
   None
 
+  >>> print myform.flash(u'some form message')
+  None
+
   >>> from zope.security.management import newInteraction
   >>> newInteraction(request)
 
@@ -18,15 +22,19 @@
   >>> print myview.flash(u'test')
   True
 
+  >>> print myform.flash(u'some form message')
+  True
+
   >>> from zope.component import getUtility
   >>> from z3c.flashmessage.interfaces import IMessageReceiver
   >>> receiver = getUtility(IMessageReceiver)
   >>> messages = [i for i in receiver.receive()]
   >>> messages
-  [<z3c.flashmessage.message.Message object at ...>]
+  [<z3c.flashmessage.message.Message object at ...>,
+   <z3c.flashmessage.message.Message object at ...>]
 
   >>> print ", ".join([msg.message for msg in messages])
-  test
+  test, some form message
 
   >>> from zope.security.management import endInteraction
   >>> endInteraction()
@@ -35,7 +43,7 @@
 import grokcore.component as grok
 from grokcore.view import templatedir
 from zope.interface import Interface
-from megrok.layout import Layout, Page
+from megrok.layout import Layout, Page, Form
 
 templatedir('templates')
 
@@ -54,3 +62,7 @@
 
     def render(self):
         return "<p>A purring cat</p>"
+
+
+class FormUtils(Form):
+    grok.context(Interface)

Modified: megrok.layout/trunk/src/megrok/layout/tests/models/url.py
===================================================================
--- megrok.layout/trunk/src/megrok/layout/tests/models/url.py	2010-10-18 10:00:20 UTC (rev 117672)
+++ megrok.layout/trunk/src/megrok/layout/tests/models/url.py	2010-10-18 10:00:26 UTC (rev 117673)
@@ -1,5 +1,5 @@
 """
-  >>> from zope.site.hooks import getSite
+  >>> from zope.component.hooks import getSite
 
   >>> site = getSite()
   >>> site
@@ -17,10 +17,17 @@
   >>> print view.application_url()
   http://127.0.0.1
 
+  >>> form = getMultiAdapter((helmut, request), name='form')
+  >>> form
+  <megrok.layout.tests.models.url.BearForm object at ...>
+
+  >>> print form.application_url()
+  http://127.0.0.1
+
 """
 
 import grokcore.view as grok
-from megrok.layout import Page, Layout
+from megrok.layout import Page, Layout, Form
 from zope.interface import Interface, implements
 
 grok.templatedir("templates")
@@ -38,6 +45,11 @@
     grok.context(IBear)
 
 
+class BearForm(Form):
+    grok.name('form')
+    grok.context(IBear)
+    
+
 class Index(Page):
     grok.context(IBear)
 



More information about the checkins mailing list