[Checkins] SVN: grokcore.layout/trunk/s Be sure the layout is set when the view is updated.

Sylvain Viollon sylvain at infrae.com
Wed Jul 13 13:03:17 EDT 2011


Log message for revision 122181:
  Be sure the layout is set when the view is updated.
  Remove the message utility (will be added by Grok)
  

Changed:
  U   grokcore.layout/trunk/setup.py
  U   grokcore.layout/trunk/src/grokcore/layout/components.py
  U   grokcore.layout/trunk/src/grokcore/layout/configure.zcml
  D   grokcore.layout/trunk/src/grokcore/layout/tests/models/message.py

-=-
Modified: grokcore.layout/trunk/setup.py
===================================================================
--- grokcore.layout/trunk/setup.py	2011-07-13 16:51:02 UTC (rev 122180)
+++ grokcore.layout/trunk/setup.py	2011-07-13 17:03:17 UTC (rev 122181)
@@ -42,7 +42,6 @@
       install_requires=[
           'grokcore.component',
           'grokcore.formlib',
-          'grokcore.message',
           'grokcore.security',
           'grokcore.view >= 2.3',
           'martian',

Modified: grokcore.layout/trunk/src/grokcore/layout/components.py
===================================================================
--- grokcore.layout/trunk/src/grokcore/layout/components.py	2011-07-13 16:51:02 UTC (rev 122180)
+++ grokcore.layout/trunk/src/grokcore/layout/components.py	2011-07-13 17:03:17 UTC (rev 122181)
@@ -2,7 +2,6 @@
 
 import grokcore.component as grok
 import grokcore.formlib
-import grokcore.message
 import grokcore.view
 import zope.component
 
@@ -28,12 +27,7 @@
             raise zope.component.ComponentLookupError("No site found.")
         return self.url(site, name)
 
-    def flash(self, message, type='message'):
-        """Sends a message to the session messager.
-        """
-        return grokcore.message.send(message, type)
 
-
 class Layout(grokcore.view.ViewSupport, UtilityView):
     """A layout object.
     """
@@ -89,13 +83,13 @@
     layout = None
 
     def __call__(self):
+        self.layout = zope.component.getMultiAdapter(
+            (self.request, self.context), ILayout)
         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.layout = zope.component.getMultiAdapter(
-            (self.request, self.context), ILayout)
         return self.layout(self)
 
     def default_namespace(self):

Modified: grokcore.layout/trunk/src/grokcore/layout/configure.zcml
===================================================================
--- grokcore.layout/trunk/src/grokcore/layout/configure.zcml	2011-07-13 16:51:02 UTC (rev 122180)
+++ grokcore.layout/trunk/src/grokcore/layout/configure.zcml	2011-07-13 17:03:17 UTC (rev 122181)
@@ -5,6 +5,5 @@
   <include package="grokcore.layout" file="meta.zcml" />
   <include package="grokcore.view" />
   <include package="grokcore.formlib" />
-  <include package="grokcore.message" />
 
 </configure>

Deleted: grokcore.layout/trunk/src/grokcore/layout/tests/models/message.py
===================================================================
--- grokcore.layout/trunk/src/grokcore/layout/tests/models/message.py	2011-07-13 16:51:02 UTC (rev 122180)
+++ grokcore.layout/trunk/src/grokcore/layout/tests/models/message.py	2011-07-13 17:03:17 UTC (rev 122181)
@@ -1,63 +0,0 @@
-"""
-  >>> from grokcore.layout import ILayout
-  >>> from zope.component import getMultiAdapter
-  >>> from zope.publisher.browser import TestRequest
-
-  >>> kitty = Cat()
-  >>> request = TestRequest()
-  >>> mylayout = getMultiAdapter((request, kitty), ILayout)
-  >>> myview = getMultiAdapter((kitty, request), name='utils')
-  >>> myform = getMultiAdapter((kitty, request), name='formutils')
-
-  >>> print myview.flash(u'test')
-  Traceback (most recent call last):
-  ...
-  NoInteraction
-
-  >>> from zope.security.management import newInteraction
-  >>> newInteraction(request)
-
-  >>> print myview.flash(u'test')
-  True
-
-  >>> print myform.flash(u'some form message')
-  True
-
-  >>> from grokcore.message import receive
-  >>> messages = [i for i in receive()]
-  >>> len(messages)
-  2
-
-  >>> print ", ".join([msg.message for msg in messages])
-  test, some form message
-
-  >>> from zope.security.management import endInteraction
-  >>> endInteraction()
-
-"""
-import grokcore.component as grok
-from grokcore.view import templatedir
-from zope.interface import Interface
-from grokcore.layout import Layout, Page, Form
-
-templatedir('templates')
-
-
-class Cat(grok.Context):
-    pass
-
-
-class Master(Layout):
-    grok.name('master')
-    grok.context(Cat)
-
-
-class Utils(Page):
-    grok.context(Interface)
-
-    def render(self):
-        return "<p>A purring cat</p>"
-
-
-class FormUtils(Form):
-    grok.context(Interface)



More information about the checkins mailing list