Author: jmorliaguet
Date: Tue Apr 11 21:55:10 2006
New Revision: 2823

Added:
   cpsskins/branches/jmo-perspectives/standard/ds/menuitem.py
      - copied, changed from r2820, 
cpsskins/branches/jmo-perspectives/standard/ds/item.py
   cpsskins/branches/jmo-perspectives/standard/ds/menuitems.py   (contents, 
props changed)
Removed:
   cpsskins/branches/jmo-perspectives/standard/ds/item.py
   cpsskins/branches/jmo-perspectives/standard/ds/items.py
Modified:
   cpsskins/branches/jmo-perspectives/doc/portlet-rendering.txt
   cpsskins/branches/jmo-perspectives/elements/configure.zcml
   cpsskins/branches/jmo-perspectives/standard/ds/README.txt
   cpsskins/branches/jmo-perspectives/standard/ds/configure.zcml
   cpsskins/branches/jmo-perspectives/standard/filters/widget/widgets.zcml
   cpsskins/branches/jmo-perspectives/standard/portlets/actions/configure.zcml
   cpsskins/branches/jmo-perspectives/standard/portlets/actions/portlet.py
   
cpsskins/branches/jmo-perspectives/standard/portlets/breadcrumbs/configure.zcml
   cpsskins/branches/jmo-perspectives/standard/portlets/breadcrumbs/portlet.py
   cpsskins/branches/jmo-perspectives/standard/portlets/custom/configure.zcml
   cpsskins/branches/jmo-perspectives/standard/portlets/dummy/configure.zcml
   cpsskins/branches/jmo-perspectives/standard/portlets/image/configure.zcml
   cpsskins/branches/jmo-perspectives/standard/portlets/macroslot/configure.zcml
   cpsskins/branches/jmo-perspectives/tests/test_ds.py
Log:

- doc update

- renamed 'Item' as 'MenuItem', etc.



Modified: cpsskins/branches/jmo-perspectives/doc/portlet-rendering.txt
==============================================================================
--- cpsskins/branches/jmo-perspectives/doc/portlet-rendering.txt        
(original)
+++ cpsskins/branches/jmo-perspectives/doc/portlet-rendering.txt        Tue Apr 
11 21:55:10 2006
@@ -11,40 +11,58 @@
     >>> from zope.publisher.interfaces import IRequest
     >>> request = TestRequest()
 
-The dummy portlet is an example implementation of a portlet.
+Portlets use a context info structure to transmit data further down in the
+rendering chain. This structure is created by the page renderer but since
+there is no page renderer in this example, we create a fake info structure:
+
+    >>> from cpsskins.browser.rendering.context import ContextInfo
+    >>> info = ContextInfo({'data': None, 'metadata': None})
+    >>> info.globals = ContextInfo({'request': request})
+
+Portlets
+--------
+
+Portlets are the first elements in the rendering chain, they are content
+providers. They can provide both unstructured data (HTML markup) and
+structured data (data structures implementing specific data schemas).
+
+The dummy portlet is an example implementation of a portlet which provides
+HTML markup:
 
     >>> from cpsskins.standard.portlets.dummy.portlet import Dummy \
     ...                                               as DummyPortlet
     >>> portlet = DummyPortlet(title=u'Example portlet',
     ...                        text=u'Dummy text.')
 
-    >>> portlet.title
-    u'Example portlet'
 
+To get HTML markup from the portlet we pass the info structure to it:
 
-The rendering of a portlet is done in three steps
--------------------------------------------------
+    >>> portlet(info)
+    u'Dummy text.'
 
-1) a portlet has some data to display, called the 'Display Data'.
-   it corresponds to the model in the Model-View-Controller paradigm.
+the portlet can also modify the info structure that it receives, however in
+the case of the Dummy portlet the info structure is left unchanged:
 
-   to obtain data from the portlet the __call__() method is used:
+    >>> info.data, info.metadata = None, None
 
-    >>> from cpsskins.browser.rendering.context import ContextInfo
-    >>> info = ContextInfo({'data': None, 'metadata': None})
-    >>> info.globals = ContextInfo({'request': request})
 
-    >>> portlet(info=info)
-    u'Dummy text.'
+Rendering steps
+---------------
+
+A portlet is rendered in three steps:
+
+1) a portlet has some data to display, called the 'Display Data'.
+   it corresponds to the model in the Model-View-Controller paradigm.
+
 
+   the display data can be for instance:
 
-   the actual content of the display data is either:
+   - a list of menu items
 
-   - a list of items (items.Items, item.Item)
+    >>> from cpsskins.standard.ds.menuitems import MenuItems
+    >>> from cpsskins.standard.ds.menuitem import MenuItem
 
-    >>> from cpsskins.standard.ds.item import Item
-    >>> from cpsskins.standard.ds.items import Items
-    >>> item = Item(title=u'Item title', url=u'@@url.html', icon=u'')
+    >>> item = MenuItem(title=u'Item title', url=u'@@url.html', icon=u'')
     >>> pprint(item())
     {'description': u'',
      'icon': u'',
@@ -52,9 +70,9 @@
      'title': u'Item title',
      'url': u'@@url.html'}
 
-    >>> content = Items([item])
+    >>> content = MenuItems([item])
     >>> content()
-    [<Item 'Item title'>]
+    [<Menu item 'Item title'>]
 
    - ...
 
@@ -101,12 +119,12 @@
 Available widgets:
 ==================
 
-Widgets displaying items
-------------------------
+Widgets displaying menu items
+-----------------------------
 
-    >>> itemA = Item(title=u'Item A', url=u'@@urlA.html', icon=u'')
-    >>> itemB = Item(title=u'Item B', url=u'@@urlB.html', icon=u'')
-    >>> info.data = Items([itemA, itemB])
+    >>> itemA = MenuItem(title=u'Item A', url=u'@@urlA.html', icon=u'')
+    >>> itemB = MenuItem(title=u'Item B', url=u'@@urlB.html', icon=u'')
+    >>> info.data = MenuItems([itemA, itemB])
 
     a) vertical menu
     ----------------

Modified: cpsskins/branches/jmo-perspectives/elements/configure.zcml
==============================================================================
--- cpsskins/branches/jmo-perspectives/elements/configure.zcml  (original)
+++ cpsskins/branches/jmo-perspectives/elements/configure.zcml  Tue Apr 11 
21:55:10 2006
@@ -216,7 +216,7 @@
 
     <cpsskins:format
         name="widget"
-        types="page_body"
+        types="standard.page_body"
     />
 
     <cpsskins:format
@@ -273,7 +273,7 @@
 
     <cpsskins:format
         name="widget"
-        types="table_frame"
+        types="standard.table_frame"
     />
 
     <cpsskins:format
@@ -331,7 +331,7 @@
 
     <cpsskins:format
         name="widget"
-        types="table_cell"
+        types="standard.table_cell"
     />
 
     <cpsskins:format
@@ -395,7 +395,8 @@
 
     <cpsskins:format
         name="widget"
-        types="frame_box vertical_menu"
+        types="standard.frame_box
+               standard.vertical_menu"
     />
 
     <cpsskins:format
@@ -428,7 +429,7 @@
 
     <cpsskins:format
         name="widget"
-        types="plain_html"
+        types="standard.plain_html"
     />
 
     <cpsskins:format

Modified: cpsskins/branches/jmo-perspectives/standard/ds/README.txt
==============================================================================
--- cpsskins/branches/jmo-perspectives/standard/ds/README.txt   (original)
+++ cpsskins/branches/jmo-perspectives/standard/ds/README.txt   Tue Apr 11 
21:55:10 2006
@@ -1,8 +1,8 @@
 
 $id:$
 
-This package contains the data structures used by content elements such as 
portlets
-to represent information.
+This package contains the data structures used by content elements such as
+portlets to represent information.
 
 Available data structures are:
 
@@ -10,6 +10,6 @@
 
 - Item
 
-- Items
+- MenuItems
 
 - Image

Modified: cpsskins/branches/jmo-perspectives/standard/ds/configure.zcml
==============================================================================
--- cpsskins/branches/jmo-perspectives/standard/ds/configure.zcml       
(original)
+++ cpsskins/branches/jmo-perspectives/standard/ds/configure.zcml       Tue Apr 
11 21:55:10 2006
@@ -12,20 +12,20 @@
 
   </class>
 
-  <class class=".item.Item">
+  <class class=".menuitem.MenuItem">
 
     <require
         permission="zope.View"
-        interface=".item.IItem"
+        interface=".menuitem.IMenuItem"
         />
 
   </class>
 
-  <class class=".items.Items">
+  <class class=".menuitems.MenuItems">
 
     <require
         permission="zope.View"
-        interface=".items.IItems"
+        interface=".menuitems.IMenuItems"
         />
 
   </class>

Copied: cpsskins/branches/jmo-perspectives/standard/ds/menuitem.py (from r2820, 
cpsskins/branches/jmo-perspectives/standard/ds/item.py)
==============================================================================
--- cpsskins/branches/jmo-perspectives/standard/ds/item.py      (original)
+++ cpsskins/branches/jmo-perspectives/standard/ds/menuitem.py  Tue Apr 11 
21:55:10 2006
@@ -25,12 +25,9 @@
 
 _ = MessageFactory("cpsskins")
 
-class IItem(Interface):
-    """Item.
+class IMenuItem(Interface):
+    """Menu item.
     """
-    def __getitem__(k):
-        """Get the item"""
-
     title = TextLine(
         title=_(u"Item title"),
         description=_(u"The title of the item."),
@@ -61,12 +58,13 @@
         required=False,
         )
 
-IItem.setTaggedValue('name', u'item')
+    def __getitem__(k):
+        """Get the item"""
 
-class Item(object):
-    """Some item
+class MenuItem(object):
+    """A menu item
 
-    >>> menuitem = Item(title=u'Item title',
+    >>> menuitem = MenuItem(title=u'Item title',
     ...    description=u'Item description',
     ...    url=u'/@@itemurl.html')
     ...    selected=True,
@@ -85,10 +83,10 @@
     >>> menuitem['unknown']
     Traceback (most recent call last):
      ...
-    AttributeError: 'Item' object has no attribute 'unknown'
+    AttributeError: 'MenuItem' object has no attribute 'unknown'
 
     """
-    implements(IItem)
+    implements(IMenuItem)
 
     def __init__(self, title=u'', description=u'', url=u'', selected=False,
                        icon=u''):
@@ -99,7 +97,7 @@
         self.icon = icon
 
     def __repr__(self):
-        return "<Item '%s'>" % self.title
+        return "<Menu item '%s'>" % self.title
 
     def __call__(self):
         return {

Added: cpsskins/branches/jmo-perspectives/standard/ds/menuitems.py
==============================================================================
--- (empty file)
+++ cpsskins/branches/jmo-perspectives/standard/ds/menuitems.py Tue Apr 11 
21:55:10 2006
@@ -0,0 +1,63 @@
+##############################################################################
+#
+# Copyright (c) 2005-2006 Nuxeo 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$
+"""
+__docformat__ = "reStructuredText"
+
+from pprint import pprint
+
+from zope.interface import implements, Interface
+from zope.i18nmessageid import MessageFactory
+from zope.schema import List
+
+_ = MessageFactory("cpsskins")
+
+class IMenuItems(Interface):
+    """Menu items.
+    """
+    items = List(
+        title=_(u"Items"),
+        description=_(u"An ordered collection of items"),
+        required=False,
+        )
+
+    def __iter__():
+        """Iterates through items """
+
+class MenuItems(object):
+    """A list of menu items
+
+    >>> from cpsskins.standard.ds.menuitem import MenuItem
+    >>> item = MenuItem(title=u'item')
+    >>> items = MenuItems([item])
+    >>> [i for i in items]
+    [<Menu item 'item'>]
+
+    """
+    implements(IMenuItems)
+
+    def __init__(self, items=[]):
+        self.items = items
+
+    def __repr__(self):
+        return "<Items>"
+
+    def __call__(self):
+        return list(self.items)
+
+    def __iter__(self):
+        return iter(self.items)
+

Modified: 
cpsskins/branches/jmo-perspectives/standard/filters/widget/widgets.zcml
==============================================================================
--- cpsskins/branches/jmo-perspectives/standard/filters/widget/widgets.zcml     
(original)
+++ cpsskins/branches/jmo-perspectives/standard/filters/widget/widgets.zcml     
Tue Apr 11 21:55:10 2006
@@ -20,15 +20,15 @@
   <widget
       name="standard.plain_item"
       view=".widgets.BasicItemView"
-      for="cpsskins.standard.ds.item.IItem"
-      title="Basic item view"
+      for="cpsskins.standard.ds.menuitem.IMenuItem"
+      title="Basic menu item view"
   />
 
   <widget
       name="standard.plain_items"
       view=".widgets.BasicItemsView"
-      for="cpsskins.standard.ds.items.IItems"
-      title="Basic items view"
+      for="cpsskins.standard.ds.menuitems.IMenuItems"
+      title="Basic menu items view"
   />
 
 
@@ -83,35 +83,35 @@
       name="standard.vertical_menu"
       title="Vertical menu"
       view=".widgets.VerticalMenu"
-      for="cpsskins.standard.ds.items.IItems"
+      for="cpsskins.standard.ds.menuitems.IMenuItems"
   />
 
   <widget
       name="standard.horizontal_tabs"
       title="Horizontal tabs"
       view=".widgets.HorizontalTabs"
-      for="cpsskins.standard.ds.items.IItems"
+      for="cpsskins.standard.ds.menuitems.IMenuItems"
   />
 
   <widget
       name="standard.menu_bar"
       title="Menu bar"
       view=".widgets.MenuBar"
-      for="cpsskins.standard.ds.items.IItems"
+      for="cpsskins.standard.ds.menuitems.IMenuItems"
   />
 
   <widget
       name="standard.horizontal_trail"
       title="Horizontal trail"
       view=".widgets.HorizontalTrail"
-      for="cpsskins.standard.ds.items.IItems"
+      for="cpsskins.standard.ds.menuitems.IMenuItems"
   />
 
   <widget
       name="standard.dropdown_list"
       title="Drop-down list"
       view=".widgets.DropDownList"
-      for="cpsskins.standard.ds.items.IItems"
+      for="cpsskins.standard.ds.menuitems.IMenuItems"
   />
 
 

Modified: 
cpsskins/branches/jmo-perspectives/standard/portlets/actions/configure.zcml
==============================================================================
--- cpsskins/branches/jmo-perspectives/standard/portlets/actions/configure.zcml 
(original)
+++ cpsskins/branches/jmo-perspectives/standard/portlets/actions/configure.zcml 
Tue Apr 11 21:55:10 2006
@@ -25,7 +25,7 @@
 
     <format
         name="widget"
-        types="vertical_menu"
+        types="standard.vertical_menu"
     />
 
     <format

Modified: 
cpsskins/branches/jmo-perspectives/standard/portlets/actions/portlet.py
==============================================================================
--- cpsskins/branches/jmo-perspectives/standard/portlets/actions/portlet.py     
(original)
+++ cpsskins/branches/jmo-perspectives/standard/portlets/actions/portlet.py     
Tue Apr 11 21:55:10 2006
@@ -25,8 +25,8 @@
 
 from cpsskins import Portlet
 from cpsskins.interfaces import IPortlet
-from cpsskins.standard.ds.item import Item
-from cpsskins.standard.ds.items import Items
+from cpsskins.standard.ds.menuitem import MenuItem
+from cpsskins.standard.ds.menuitems import MenuItems
 
 _ = MessageFactory("cpsskins")
 
@@ -56,13 +56,8 @@
         except ComponentLookupError:
            items = []
         else:
-           items = [
-               Item(
-                   title=ac['title'],
-                   url=ac['action'],
-                   icon=ac['icon'],
-                   )
-               for ac in menu]
+           items = [Item(title=ac['title'], url=ac['action'], icon=ac['icon'])
+                    for ac in menu]
 
-        info.data = Items(items)
+        info.data = MenuItems(items)
 

Modified: 
cpsskins/branches/jmo-perspectives/standard/portlets/breadcrumbs/configure.zcml
==============================================================================
--- 
cpsskins/branches/jmo-perspectives/standard/portlets/breadcrumbs/configure.zcml 
    (original)
+++ 
cpsskins/branches/jmo-perspectives/standard/portlets/breadcrumbs/configure.zcml 
    Tue Apr 11 21:55:10 2006
@@ -27,7 +27,7 @@
 
     <format
         name="widget"
-        types="horizontal_trail"
+        types="standard.horizontal_trail"
     />
 
     <format

Modified: 
cpsskins/branches/jmo-perspectives/standard/portlets/breadcrumbs/portlet.py
==============================================================================
--- cpsskins/branches/jmo-perspectives/standard/portlets/breadcrumbs/portlet.py 
(original)
+++ cpsskins/branches/jmo-perspectives/standard/portlets/breadcrumbs/portlet.py 
Tue Apr 11 21:55:10 2006
@@ -24,8 +24,8 @@
 
 from cpsskins import Portlet
 from cpsskins.interfaces import IPortlet
-from cpsskins.standard.ds.item import Item
-from cpsskins.standard.ds.items import Items
+from cpsskins.standard.ds.menuitem import MenuItem
+from cpsskins.standard.ds.menuitems import MenuItems
 
 _ = MessageFactory("cpsskins")
 
@@ -45,9 +45,7 @@
         location = info.globals.location
 
         url = getMultiAdapter((location, request), IAbsoluteURL)
-        items = [
-            Item(title=bc['name'], url=bc['url'])
-            for bc in url.breadcrumbs()
-            ]
+        items = [MenuItem(title=bc['name'], url=bc['url'])
+                 for bc in url.breadcrumbs()]
 
-        info.data = Items(items)
+        info.data = MenuItems(items)

Modified: 
cpsskins/branches/jmo-perspectives/standard/portlets/custom/configure.zcml
==============================================================================
--- cpsskins/branches/jmo-perspectives/standard/portlets/custom/configure.zcml  
(original)
+++ cpsskins/branches/jmo-perspectives/standard/portlets/custom/configure.zcml  
Tue Apr 11 21:55:10 2006
@@ -28,7 +28,7 @@
 
     <format
         name="widget"
-        types="plain_html"
+        types="standard.plain_html"
     />
 
     <format

Modified: 
cpsskins/branches/jmo-perspectives/standard/portlets/dummy/configure.zcml
==============================================================================
--- cpsskins/branches/jmo-perspectives/standard/portlets/dummy/configure.zcml   
(original)
+++ cpsskins/branches/jmo-perspectives/standard/portlets/dummy/configure.zcml   
Tue Apr 11 21:55:10 2006
@@ -27,7 +27,7 @@
 
     <format
         name="widget"
-        types="plain_html"
+        types="standard.plain_html"
     />
 
     <format

Modified: 
cpsskins/branches/jmo-perspectives/standard/portlets/image/configure.zcml
==============================================================================
--- cpsskins/branches/jmo-perspectives/standard/portlets/image/configure.zcml   
(original)
+++ cpsskins/branches/jmo-perspectives/standard/portlets/image/configure.zcml   
Tue Apr 11 21:55:10 2006
@@ -27,7 +27,7 @@
 
     <format
         name="widget"
-        types="image"
+        types="standard.image"
     />
 
     <format

Modified: 
cpsskins/branches/jmo-perspectives/standard/portlets/macroslot/configure.zcml
==============================================================================
--- 
cpsskins/branches/jmo-perspectives/standard/portlets/macroslot/configure.zcml   
    (original)
+++ 
cpsskins/branches/jmo-perspectives/standard/portlets/macroslot/configure.zcml   
    Tue Apr 11 21:55:10 2006
@@ -28,7 +28,7 @@
 
     <format
         name="widget"
-        types="plain_html"
+        types="standard.plain_html"
     />
 
     <format

Modified: cpsskins/branches/jmo-perspectives/tests/test_ds.py
==============================================================================
--- cpsskins/branches/jmo-perspectives/tests/test_ds.py (original)
+++ cpsskins/branches/jmo-perspectives/tests/test_ds.py Tue Apr 11 21:55:10 2006
@@ -23,8 +23,8 @@
 
 def test_suite():
     return unittest.TestSuite((
-        DocTestSuite('cpsskins.standard.ds.item'),
-        DocTestSuite('cpsskins.standard.ds.items'),
+        DocTestSuite('cpsskins.standard.ds.menuitem'),
+        DocTestSuite('cpsskins.standard.ds.menuitems'),
         DocTestSuite('cpsskins.standard.ds.metadata'),
         DocTestSuite('cpsskins.standard.ds.image'),
         ))
-- 
http://lists.nuxeo.com/mailman/listinfo/z3lab-checkins

Reply via email to