[Checkins] SVN: z3ext.layout/tags/2.0.8/ release tag
Nikolay Kim
fafhrd91 at gmail.com
Tue Jun 2 07:48:43 EDT 2009
Log message for revision 100584:
release tag
Changed:
A z3ext.layout/tags/2.0.8/
D z3ext.layout/tags/2.0.8/CHANGES.txt
A z3ext.layout/tags/2.0.8/CHANGES.txt
U z3ext.layout/tags/2.0.8/setup.py
D z3ext.layout/tags/2.0.8/src/z3ext/layout/layout.py
A z3ext.layout/tags/2.0.8/src/z3ext/layout/layout.py
-=-
Deleted: z3ext.layout/tags/2.0.8/CHANGES.txt
===================================================================
--- z3ext.layout/trunk/CHANGES.txt 2009-05-31 16:32:16 UTC (rev 100565)
+++ z3ext.layout/tags/2.0.8/CHANGES.txt 2009-06-02 11:48:42 UTC (rev 100584)
@@ -1,275 +0,0 @@
-=======
-CHANGES
-=======
-
-2.0.7 (2009-04-15)
-------------------
-
-- Do not use z3c.autoinclude
-
-
-2.0.6 (2009-03-11)
-------------------
-
-- Fixed discriminator for z3ext:pagelet directive
-
-- Allow use 'layout' pagelet type as template for layout
-
-- Update styles
-
-
-2.0.5 (2009-01-26)
-------------------
-
-- Update styles
-
-
-2.0.4 (2009-01-22)
-------------------
-
-- Pass permission to class required attributes
-
-
-2.0.3 (2009-01-20)
-------------------
-
-- Use __parent__ for layout quering
-
-
-2.0.2 (2009-01-08)
-------------------
-
-- Register layout for (view, for, layer), instead of view and for separatly
-
-
-2.0.1 (2008-12-25)
-------------------
-
-- Pagelet should implement provided interfaces
-
-
-2.0.0 (2008-12-22)
-------------------
-
-- Pagelet without name is not allowed
-
-- Added 'type' attribute to 'z3ext:pagelet'
-
-- Added 'z3ext:pageletType' directive for registering new pagelet types
-
-- multiple params is allowed for 'for' attribute
-
-- Removed pagelet 'manager' attribute
-
-- 'pagelet' tales expression and 'pagelet' view checks additional context IPageletContext
- if exists use it as adapter parameter
-
-
-1.7.3 (2008-12-18)
-------------------
-
-- Use IPagelet instead of IPageTemplate for pagelet rendering
-
-
-1.7.2 (2008-12-17)
-------------------
-
-- Update default styles
-
-
-1.7.1 (2008-12-15)
-------------------
-
-- Check if context provides interface in @@pagelet view and pagelet: tales expresion
-
-
-1.7.0 (2008-12-11)
-------------------
-
-- Added `manager` attribute to z3ext:pagelet directive
- this allow use getMultiAdapter((content, request, manager1, manager2, ...), IPagelet)
-
-- Use 'provides' schema for converting kwargs in z3ext:pagelet directive
-
-
-1.6.0 (2008-11-27)
-------------------
-
-- Added 'uid' attribute to z3ext:layout directive.
- Send ILayoutCreatedEvent event only if layout has uid
-
-
-1.5.9 (2008-11-24)
-------------------
-
-- Fixed python2.4 compatibility
-
-
-1.5.7 (2008-11-17)
-------------------
-
-- Update css styles
-
-
-1.5.6 (2008-11-06)
-------------------
-
-- Register nameless pagelet only if provided interface is not
-inherited from IBrowserPublisher
-
-
-1.5.5 (2008-11-05)
-------------------
-
-- Add IPagelet interface to pagelet provides
-
-
-1.5.4 (2008-10-30)
-------------------
-
-- Added 'pagelet' tales expression (same as @@pagelet)
-
-- Update css styles
-
-
-1.5.3 (2008-10-16)
-------------------
-
-- Update css styles
-
-
-1.5.2 (2008-10-15)
-------------------
-
-- Render IPagelet adapter for @@pagelet view
-
-
-1.5.1 (2008-10-14)
-------------------
-
-- Fixed missing NotFount in @@pagelet
-
-- Log errors in @@pagelet
-
-- Default css styles
-
-
-1.5.0 (2008-10-06)
-------------------
-
-- Added @@pagelet browser view for fast access pagelets
-
-
-1.4.6 (2008-10-03)
-------------------
-
-- Fixed bug with multple nameless pagelet
-
-
-1.4.5 (2008-08-18)
-------------------
-
-- `name` attribute is optional for <z3ext:pagelet/> directive
-
-
-1.4.4 (2008-07-22)
-------------------
-
-- Fix IPagelet adapter for content
-
-
-1.4.3 (2008-05-22)
-------------------
-
-- Added LayoutNotFound exception
-
-
-1.4.2 (2008-05-14)
-------------------
-
-- Remove unused interfaces
-
-- Tests updated
-
-
-1.4.1 (2008-04-23)
-------------------
-
-- Use newer version of z3ext.autoinclude
-
-
-1.4 (2008-03-21)
-----------------
-
-- Added z3ext:pagelet directive
-
-- Code cleanup
-
-- Moved to svn.zope.org
-
-
-1.3.2 (2008-03-06)
-------------------
-
-- Removed context layouts
-
-
-1.3.1 (2008-02-21)
-------------------
-
-- Code cleanup
-
-- Remove code related to zope.formlib
-
-
-1.3.0 (2008-02-20)
-------------------
-
-- Removed code related to z3c.form
-
-
-1.2.1 (2008-02-18)
-------------------
-
-- Added 'redirect' method to IBrowserPagelet, this is usefull
- when we need redirect during 'update' method and we don't
- need render pagelet at all.
-
-- Added adapter to IPagelet for (context, request),
- this adapter gets browser:defaultView for context and if it IPagelet return it
-
-
-1.2.0 (2008-02-13)
-------------------
-
-- Remove all code related to persistent templates
-
-
-1.1.2 (2008-02-12)
-------------------
-
-- Added 'title' and 'description' fields layout directive
-
-- check ILayoutTemplateTAL for ISite
-
-
-1.1.0 (2008-02-08)
-------------------
-
-- Added compatibility with z3c.template layouts
-
-- Added ILayoutTemplateTAL interface, other packages
- can define adapter to this interface and change layout template
- TAL program (layout customization)
-
-
-1.0.1 (2008-02-02)
-------------------
-
-- Added required dependencies
-
-
-1.0.0 (2008-01-15)
-------------------
-
-- Initial release
Copied: z3ext.layout/tags/2.0.8/CHANGES.txt (from rev 100583, z3ext.layout/trunk/CHANGES.txt)
===================================================================
--- z3ext.layout/tags/2.0.8/CHANGES.txt (rev 0)
+++ z3ext.layout/tags/2.0.8/CHANGES.txt 2009-06-02 11:48:42 UTC (rev 100584)
@@ -0,0 +1,281 @@
+=======
+CHANGES
+=======
+
+2.0.8 (2009-06-03)
+------------------
+
+- Fixed next layout calculation for root object
+
+
+2.0.7 (2009-04-15)
+------------------
+
+- Do not use z3c.autoinclude
+
+
+2.0.6 (2009-03-11)
+------------------
+
+- Fixed discriminator for z3ext:pagelet directive
+
+- Allow use 'layout' pagelet type as template for layout
+
+- Update styles
+
+
+2.0.5 (2009-01-26)
+------------------
+
+- Update styles
+
+
+2.0.4 (2009-01-22)
+------------------
+
+- Pass permission to class required attributes
+
+
+2.0.3 (2009-01-20)
+------------------
+
+- Use __parent__ for layout quering
+
+
+2.0.2 (2009-01-08)
+------------------
+
+- Register layout for (view, for, layer), instead of view and for separatly
+
+
+2.0.1 (2008-12-25)
+------------------
+
+- Pagelet should implement provided interfaces
+
+
+2.0.0 (2008-12-22)
+------------------
+
+- Pagelet without name is not allowed
+
+- Added 'type' attribute to 'z3ext:pagelet'
+
+- Added 'z3ext:pageletType' directive for registering new pagelet types
+
+- multiple params is allowed for 'for' attribute
+
+- Removed pagelet 'manager' attribute
+
+- 'pagelet' tales expression and 'pagelet' view checks additional context IPageletContext
+ if exists use it as adapter parameter
+
+
+1.7.3 (2008-12-18)
+------------------
+
+- Use IPagelet instead of IPageTemplate for pagelet rendering
+
+
+1.7.2 (2008-12-17)
+------------------
+
+- Update default styles
+
+
+1.7.1 (2008-12-15)
+------------------
+
+- Check if context provides interface in @@pagelet view and pagelet: tales expresion
+
+
+1.7.0 (2008-12-11)
+------------------
+
+- Added `manager` attribute to z3ext:pagelet directive
+ this allow use getMultiAdapter((content, request, manager1, manager2, ...), IPagelet)
+
+- Use 'provides' schema for converting kwargs in z3ext:pagelet directive
+
+
+1.6.0 (2008-11-27)
+------------------
+
+- Added 'uid' attribute to z3ext:layout directive.
+ Send ILayoutCreatedEvent event only if layout has uid
+
+
+1.5.9 (2008-11-24)
+------------------
+
+- Fixed python2.4 compatibility
+
+
+1.5.7 (2008-11-17)
+------------------
+
+- Update css styles
+
+
+1.5.6 (2008-11-06)
+------------------
+
+- Register nameless pagelet only if provided interface is not
+inherited from IBrowserPublisher
+
+
+1.5.5 (2008-11-05)
+------------------
+
+- Add IPagelet interface to pagelet provides
+
+
+1.5.4 (2008-10-30)
+------------------
+
+- Added 'pagelet' tales expression (same as @@pagelet)
+
+- Update css styles
+
+
+1.5.3 (2008-10-16)
+------------------
+
+- Update css styles
+
+
+1.5.2 (2008-10-15)
+------------------
+
+- Render IPagelet adapter for @@pagelet view
+
+
+1.5.1 (2008-10-14)
+------------------
+
+- Fixed missing NotFount in @@pagelet
+
+- Log errors in @@pagelet
+
+- Default css styles
+
+
+1.5.0 (2008-10-06)
+------------------
+
+- Added @@pagelet browser view for fast access pagelets
+
+
+1.4.6 (2008-10-03)
+------------------
+
+- Fixed bug with multple nameless pagelet
+
+
+1.4.5 (2008-08-18)
+------------------
+
+- `name` attribute is optional for <z3ext:pagelet/> directive
+
+
+1.4.4 (2008-07-22)
+------------------
+
+- Fix IPagelet adapter for content
+
+
+1.4.3 (2008-05-22)
+------------------
+
+- Added LayoutNotFound exception
+
+
+1.4.2 (2008-05-14)
+------------------
+
+- Remove unused interfaces
+
+- Tests updated
+
+
+1.4.1 (2008-04-23)
+------------------
+
+- Use newer version of z3ext.autoinclude
+
+
+1.4 (2008-03-21)
+----------------
+
+- Added z3ext:pagelet directive
+
+- Code cleanup
+
+- Moved to svn.zope.org
+
+
+1.3.2 (2008-03-06)
+------------------
+
+- Removed context layouts
+
+
+1.3.1 (2008-02-21)
+------------------
+
+- Code cleanup
+
+- Remove code related to zope.formlib
+
+
+1.3.0 (2008-02-20)
+------------------
+
+- Removed code related to z3c.form
+
+
+1.2.1 (2008-02-18)
+------------------
+
+- Added 'redirect' method to IBrowserPagelet, this is usefull
+ when we need redirect during 'update' method and we don't
+ need render pagelet at all.
+
+- Added adapter to IPagelet for (context, request),
+ this adapter gets browser:defaultView for context and if it IPagelet return it
+
+
+1.2.0 (2008-02-13)
+------------------
+
+- Remove all code related to persistent templates
+
+
+1.1.2 (2008-02-12)
+------------------
+
+- Added 'title' and 'description' fields layout directive
+
+- check ILayoutTemplateTAL for ISite
+
+
+1.1.0 (2008-02-08)
+------------------
+
+- Added compatibility with z3c.template layouts
+
+- Added ILayoutTemplateTAL interface, other packages
+ can define adapter to this interface and change layout template
+ TAL program (layout customization)
+
+
+1.0.1 (2008-02-02)
+------------------
+
+- Added required dependencies
+
+
+1.0.0 (2008-01-15)
+------------------
+
+- Initial release
Modified: z3ext.layout/tags/2.0.8/setup.py
===================================================================
--- z3ext.layout/trunk/setup.py 2009-05-31 16:32:16 UTC (rev 100565)
+++ z3ext.layout/tags/2.0.8/setup.py 2009-06-02 11:48:42 UTC (rev 100584)
@@ -21,7 +21,7 @@
def read(*rnames):
return open(os.path.join(os.path.dirname(__file__), *rnames)).read()
-version='2.0.8dev'
+version='2.0.8'
setup(name='z3ext.layout',
Deleted: z3ext.layout/tags/2.0.8/src/z3ext/layout/layout.py
===================================================================
--- z3ext.layout/trunk/src/z3ext/layout/layout.py 2009-05-31 16:32:16 UTC (rev 100565)
+++ z3ext.layout/tags/2.0.8/src/z3ext/layout/layout.py 2009-06-02 11:48:42 UTC (rev 100584)
@@ -1,130 +0,0 @@
-##############################################################################
-#
-# Copyright (c) 2007 Zope Corporation and Contributors.
-# All Rights Reserved.
-#
-# This software is subject to the provisions of the Zope Public License,
-# Version 2.1 (ZPL). A copy of the ZPL should accompany this distribution.
-# THIS SOFTWARE IS PROVIDED "AS IS" AND ANY AND ALL EXPRESS OR IMPLIED
-# WARRANTIES ARE DISCLAIMED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
-# WARRANTIES OF TITLE, MERCHANTABILITY, AGAINST INFRINGEMENT, AND FITNESS
-# FOR A PARTICULAR PURPOSE.
-#
-##############################################################################
-"""
-
-$Id$
-"""
-from zope import interface
-from zope.publisher import browser
-from zope.component import getMultiAdapter
-from zope.app.pagetemplate.engine import TrustedAppPT
-from zope.pagetemplate.pagetemplatefile import PageTemplateFile
-
-from z3ext.layout.pagelet import queryLayout
-from z3ext.layout.interfaces import LayoutNotFound
-from z3ext.layout.interfaces import ILayout, ILayoutView, ILayoutTemplateFile
-
-
-class ViewMapper(object):
-
- def __init__(self, ob, request):
- self.ob = ob
- self.request = request
-
- def __getitem__(self, name):
- return getMultiAdapter((self.ob, self.request), name=name)
-
-
-class LayoutTemplateFile(TrustedAppPT, PageTemplateFile):
- interface.implements(ILayoutTemplateFile)
-
- expand = False
-
- def __init__(self, filename, _prefix=None, content_type=None):
- _prefix = self.get_path_from_prefix(_prefix)
- super(LayoutTemplateFile, self).__init__(filename, _prefix)
- if content_type is not None:
- self.content_type = content_type
-
- def pt_getContext(self, layout, **_kw):
- view = layout.view
-
- # instance is a View component
- namespace = super(LayoutTemplateFile, self).pt_getContext(**_kw)
- namespace['view'] = view
- namespace['request'] = layout.request
- namespace['context'] = view.context
- namespace['layout'] = layout
- namespace['layoutcontext'] = layout.context
- namespace['mainview'] = layout.mainview
- namespace['maincontext'] = layout.maincontext
- namespace['views'] = ViewMapper(view.context, layout.request)
- return namespace
-
- def __call__(self, layout, *args, **kw):
- namespace = self.pt_getContext(layout, args=args, options=kw)
- return self.pt_render(namespace)
-
-
-class Layout(browser.BrowserPage):
- interface.implements(ILayout)
-
- template = None
- mainview = None
- maincontext = None
-
- def __init__(self, view, context, request):
- self.view = view
- self.context = context
- self.request = request
-
- self.__parent__ = view.__parent__
-
- def update(self):
- pass
-
- def render(self):
- if self.template is None:
- view = getMultiAdapter((self, self.request), ILayoutView)
- view.update()
- return view.render()
-
- return self.template(self)
-
- def __call__(self, layout=None, view=None, *args, **kw):
- if view is None:
- view = self.view
- self.mainview = view
- self.maincontext = view.context
-
- layoutview = self.view
- if layout is not None:
- self.view = layout
-
- self.update()
-
- if self.layout is None:
- return self.render()
-
- if self.__name__ != self.layout:
- layout = queryLayout(
- view, self.request, view.__parent__, name=self.layout)
- if layout is not None:
- return layout(layout=self, view=view, *args, **kw)
- else:
- context = self.context
- if layoutview.context is not context.__parent__:
- context = context.__parent__
- else:
- context = getattr(context.__parent__, '__parent__', None)
-
- layout = queryLayout(self, self.request, context, name=self.layout)
- if layout is not None:
- return layout(view=view, *args, **kw)
-
- layout = queryLayout(self.view, self.context, self.request, name=self.layout)
- if layout is not None:
- return layout(*args, **kw)
-
- raise LayoutNotFound(self.layout)
Copied: z3ext.layout/tags/2.0.8/src/z3ext/layout/layout.py (from rev 100583, z3ext.layout/trunk/src/z3ext/layout/layout.py)
===================================================================
--- z3ext.layout/tags/2.0.8/src/z3ext/layout/layout.py (rev 0)
+++ z3ext.layout/tags/2.0.8/src/z3ext/layout/layout.py 2009-06-02 11:48:42 UTC (rev 100584)
@@ -0,0 +1,136 @@
+##############################################################################
+#
+# Copyright (c) 2007 Zope Corporation and Contributors.
+# All Rights Reserved.
+#
+# This software is subject to the provisions of the Zope Public License,
+# Version 2.1 (ZPL). A copy of the ZPL should accompany this distribution.
+# THIS SOFTWARE IS PROVIDED "AS IS" AND ANY AND ALL EXPRESS OR IMPLIED
+# WARRANTIES ARE DISCLAIMED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
+# WARRANTIES OF TITLE, MERCHANTABILITY, AGAINST INFRINGEMENT, AND FITNESS
+# FOR A PARTICULAR PURPOSE.
+#
+##############################################################################
+"""
+
+$Id$
+"""
+from zope import interface
+from zope.publisher import browser
+from zope.component import getMultiAdapter
+from zope.traversing.api import getRoot
+from zope.app.pagetemplate.engine import TrustedAppPT
+from zope.pagetemplate.pagetemplatefile import PageTemplateFile
+
+from z3ext.layout.pagelet import queryLayout
+from z3ext.layout.interfaces import LayoutNotFound
+from z3ext.layout.interfaces import ILayout, ILayoutView, ILayoutTemplateFile
+
+
+class ViewMapper(object):
+
+ def __init__(self, ob, request):
+ self.ob = ob
+ self.request = request
+
+ def __getitem__(self, name):
+ return getMultiAdapter((self.ob, self.request), name=name)
+
+
+class LayoutTemplateFile(TrustedAppPT, PageTemplateFile):
+ interface.implements(ILayoutTemplateFile)
+
+ expand = False
+
+ def __init__(self, filename, _prefix=None, content_type=None):
+ _prefix = self.get_path_from_prefix(_prefix)
+ super(LayoutTemplateFile, self).__init__(filename, _prefix)
+ if content_type is not None:
+ self.content_type = content_type
+
+ def pt_getContext(self, layout, **_kw):
+ view = layout.view
+
+ # instance is a View component
+ namespace = super(LayoutTemplateFile, self).pt_getContext(**_kw)
+ namespace['view'] = view
+ namespace['request'] = layout.request
+ namespace['context'] = view.context
+ namespace['layout'] = layout
+ namespace['layoutcontext'] = layout.context
+ namespace['mainview'] = layout.mainview
+ namespace['maincontext'] = layout.maincontext
+ namespace['views'] = ViewMapper(view.context, layout.request)
+ return namespace
+
+ def __call__(self, layout, *args, **kw):
+ namespace = self.pt_getContext(layout, args=args, options=kw)
+ return self.pt_render(namespace)
+
+
+class Layout(browser.BrowserPage):
+ interface.implements(ILayout)
+
+ template = None
+ mainview = None
+ maincontext = None
+
+ def __init__(self, view, context, request):
+ self.view = view
+ self.context = context
+ self.request = request
+
+ self.__parent__ = view.__parent__
+
+ def update(self):
+ pass
+
+ def render(self):
+ if self.template is None:
+ view = getMultiAdapter((self, self.request), ILayoutView)
+ view.update()
+ return view.render()
+
+ return self.template(self)
+
+ def __call__(self, layout=None, view=None, *args, **kw):
+ if view is None:
+ view = self.view
+ self.mainview = view
+ self.maincontext = view.context
+
+ layoutview = self.view
+ if layout is not None:
+ self.view = layout
+
+ self.update()
+
+ if self.layout is None:
+ return self.render()
+
+ if self.__name__ != self.layout:
+ layout = queryLayout(
+ view, self.request, view.__parent__, name=self.layout)
+ if layout is not None:
+ return layout(layout=self, view=view, *args, **kw)
+ else:
+ context = self.context
+ if layoutview.context is not context.__parent__:
+ context = context.__parent__
+ else:
+ context = getattr(context.__parent__, '__parent__', None)
+
+ if context is None:
+ context = getRoot(self.context)
+
+ layout = queryLayout(self, self.request, context, name=self.layout)
+ if layout is not None:
+ return layout(view=view, *args, **kw)
+
+ layout = queryLayout(
+ self.view, self.context, self.request, name=self.layout)
+
+ if layout is not None:
+ return layout(*args, **kw)
+
+ raise LayoutNotFound(self.layout)
More information about the Checkins
mailing list