Author: jmorliaguet
Date: Sun Jul  2 12:17:34 2006
New Revision: 3584

Modified:
   cpsskins/branches/paris-sprint-2006/doc/theme-structure.txt
   cpsskins/branches/paris-sprint-2006/setup/io/README.txt
   cpsskins/branches/paris-sprint-2006/standard/engines/default.zcml
   cpsskins/branches/paris-sprint-2006/standard/engines/tableless.zcml
   cpsskins/branches/paris-sprint-2006/standard/formats/layout.py
   cpsskins/branches/paris-sprint-2006/standard/portlets/actions/configure.zcml
   
cpsskins/branches/paris-sprint-2006/standard/portlets/breadcrumbs/configure.zcml
   cpsskins/branches/paris-sprint-2006/standard/portlets/custom/configure.zcml
   cpsskins/branches/paris-sprint-2006/standard/portlets/dummy/configure.zcml
   cpsskins/branches/paris-sprint-2006/standard/portlets/image/configure.zcml
   
cpsskins/branches/paris-sprint-2006/standard/portlets/macroslot/configure.zcml
   cpsskins/branches/paris-sprint-2006/standard/presentations.zcml
   
cpsskins/branches/paris-sprint-2006/standard/screens/layouteditor/configure.zcml
   
cpsskins/branches/paris-sprint-2006/standard/screens/layouteditor/layout_editor.pt
   cpsskins/branches/paris-sprint-2006/standard/screens/layouteditor/views.py
   cpsskins/branches/paris-sprint-2006/ui/screens/contentauthor/engine.zcml
   
cpsskins/branches/paris-sprint-2006/ui/screens/pagedesigner/layout/layout_mode.css
   
cpsskins/branches/paris-sprint-2006/ui/screens/pagedesigner/wysiwyg/engine.zcml

Log:

- saving work

   - added the layout editor, all elements now have a layout

   - bug fixes
   


Modified: cpsskins/branches/paris-sprint-2006/doc/theme-structure.txt
==============================================================================
--- cpsskins/branches/paris-sprint-2006/doc/theme-structure.txt (original)
+++ cpsskins/branches/paris-sprint-2006/doc/theme-structure.txt Sun Jul  2 
12:17:34 2006
@@ -58,7 +58,7 @@
 
     >>> inspect()
     - Theme (default: True)
-      |_ Default page (default: True)
+      |_ ThemePage (default: True)
 
     >>> tmutil.getDefaultTheme()
     Theme('Theme')
@@ -73,7 +73,7 @@
 
     >>> inspect()
     - Theme (default: True)
-      |_ Default page (default: True)
+      |_ ThemePage (default: True)
     - Theme 2 (default: False)
 
 the default theme is still the first theme:
@@ -95,7 +95,7 @@
 a theme has pages:
 
     >>> theme1.getPages()
-    [ThemePage('Default page')]
+    [ThemePage('ThemePage')]
 
 we create and add a page to the second theme:
 
@@ -106,7 +106,7 @@
 
     >>> inspect()
     - Theme (default: True)
-      |_ Default page (default: True)
+      |_ ThemePage (default: True)
     - Theme 2 (default: False)
       |_ Page 1 (default: True)
 
@@ -118,7 +118,7 @@
 
     >>> inspect()
     - Theme (default: True)
-      |_ Default page (default: True)
+      |_ ThemePage (default: True)
     - Theme 2 (default: False)
       |_ Page 2 (default: False)
       |_ Page 1 (default: True)
@@ -136,7 +136,7 @@
     >>> tmutil.setAsDefault(theme2)
     >>> inspect()
     - Theme (default: False)
-      |_ Default page (default: True)
+      |_ ThemePage (default: True)
     - Theme 2 (default: True)
       |_ Page 2 (default: False)
       |_ Page 1 (default: True)
@@ -146,7 +146,7 @@
     >>> tmutil.setAsDefault(page2)
     >>> inspect()
     - Theme (default: False)
-      |_ Default page (default: True)
+      |_ ThemePage (default: True)
     - Theme 2 (default: True)
       |_ Page 2 (default: True)
       |_ Page 1 (default: False)
@@ -159,7 +159,7 @@
 
     >>> inspect()
     - Theme (default: False)
-      |_ Default page (default: True)
+      |_ ThemePage (default: True)
     - Theme 2 (default: True)
       |_ Page 1 (default: True)
 
@@ -169,7 +169,7 @@
 
     >>> inspect()
     - Theme (default: False)
-      |_ Default page (default: True)
+      |_ ThemePage (default: True)
     - Theme 2 (default: True)
 
 if we remove a theme that is a default theme, the first theme will become
@@ -178,7 +178,7 @@
     >>> del tmutil[u'Theme-2']
     >>> inspect()
     - Theme (default: True)
-      |_ Default page (default: True)
+      |_ ThemePage (default: True)
 
 we can delete the only theme left:
 

Modified: cpsskins/branches/paris-sprint-2006/setup/io/README.txt
==============================================================================
--- cpsskins/branches/paris-sprint-2006/setup/io/README.txt     (original)
+++ cpsskins/branches/paris-sprint-2006/setup/io/README.txt     Sun Jul  2 
12:17:34 2006
@@ -281,8 +281,7 @@
     </portlets>
     <BLANKLINE>
 
-    >>> binary_name = u'%s_data_120x120.png' % portlet.identifier
-    >>> archive[binary_name] == portlet.data
+    >>> archive[u'image_data_120x120.png'] == portlet.data
     True
 
 Export of fields
@@ -325,8 +324,8 @@
     >>> print toXML(image1, u'images', archive=archive)
     <?xml version="1.0" encoding="utf-8"?>
     <images>
-      <image id="...">
-        <data value="..._data_120x120.png"/>
+      <image>
+        <data value="image_data_120x120.png"/>
         <contentType value="image/png"/>
       </image>
     </images>

Modified: cpsskins/branches/paris-sprint-2006/standard/engines/default.zcml
==============================================================================
--- cpsskins/branches/paris-sprint-2006/standard/engines/default.zcml   
(original)
+++ cpsskins/branches/paris-sprint-2006/standard/engines/default.zcml   Sun Jul 
 2 12:17:34 2006
@@ -77,6 +77,10 @@
     />
 
     <filter
+        name="layout"
+    />
+
+    <filter
         name="style"
     />
 

Modified: cpsskins/branches/paris-sprint-2006/standard/engines/tableless.zcml
==============================================================================
--- cpsskins/branches/paris-sprint-2006/standard/engines/tableless.zcml 
(original)
+++ cpsskins/branches/paris-sprint-2006/standard/engines/tableless.zcml Sun Jul 
 2 12:17:34 2006
@@ -45,11 +45,11 @@
     />
 
     <filter
-        name="layout"
+        name="style"
     />
 
     <filter
-        name="style"
+        name="layout"
     />
 
   </renderer>
@@ -73,6 +73,10 @@
     />
 
     <filter
+        name="layout"
+    />
+
+    <filter
         name="style"
     />
 

Modified: cpsskins/branches/paris-sprint-2006/standard/formats/layout.py
==============================================================================
--- cpsskins/branches/paris-sprint-2006/standard/formats/layout.py      
(original)
+++ cpsskins/branches/paris-sprint-2006/standard/formats/layout.py      Sun Jul 
 2 12:17:34 2006
@@ -39,18 +39,41 @@
 class Layout(Format, Persistent):
     """A layout is used to format layout elements (cells, blocks, etc)
 
-    >>> layout = Layout(types=[u'container'])
-    >>> layout
-    <Layout of type: container>
-
-    >>> dict(layout.items())
-    {}
-
-    >>> layout[u'width'] = u'1em'
-    >>> dict(layout.items())
-    {u'width': u'1em'}
+    'Container' types of layout have dimensions (width, height)
+
+        >>> layout = Layout(types=[u'container'])
+        >>> layout
+        <Layout of type: container>
+
+        >>> dict(layout)
+        {u'width': u'', u'height': u''}
+
+        >>> layout[u'width'] = u'1em'
+        >>> dict(layout)
+        {u'width': u'1em', u'height': u''}
+
+    'Contained' types of layout have no dimensions
+    (margin, padding, border width)
+
+        >>> layout = Layout(types=[u'contained'])
+        >>> layout
+        <Layout of type: contained>
+
+        >>> dict(layout)
+        {u'padding': u'', u'margin': u'', u'border-width': u''}
+
+        >>> layout[u'width'] = u'1em'
+        Traceback (most recent call last):
+        ...
+        KeyError: u'No such property: width'
 
     """
+
+    _layout_types = {
+        'container': (u'width', u'height'),
+        'contained': (u'margin', u'padding', u'border-width'),
+        }
+
     implements(ILayout, ITraversable)
 
     def __init__(self, **kw):
@@ -67,21 +90,25 @@
 
     def __setitem__(self, k, v):
         if not isinstance(v, basestring):
-            raise TypeError, \
-                """Only strings can be stored in the layout objects."""
+            raise TypeError("Only strings can be stored in the layout 
objects.")
+        if not k in self:
+            raise KeyError("No such property: %s" % k)
         self.data[k] = v
 
     def __delitem__(self, k):
         del self.data[k]
 
     def __getitem__(self, k):
-        return self.data[k]
+        try:
+            return self.data[k]
+        except KeyError:
+            return u''
 
     def __contains__(self, k):
-        return k in self.data
+        return k in self.keys()
 
     def keys(self):
-        return list(self.data.keys())
+        return self._layout_types[self.types[0]]
 
     def items(self):
         return self.data.items()

Modified: 
cpsskins/branches/paris-sprint-2006/standard/portlets/actions/configure.zcml
==============================================================================
--- 
cpsskins/branches/paris-sprint-2006/standard/portlets/actions/configure.zcml    
    (original)
+++ 
cpsskins/branches/paris-sprint-2006/standard/portlets/actions/configure.zcml    
    Sun Jul  2 12:17:34 2006
@@ -20,6 +20,11 @@
       for=".portlet.IActions">
 
     <format
+        name="layout"
+        types="contained"
+    />
+
+    <format
         name="widget"
         types="standard.vertical_menu"
     />

Modified: 
cpsskins/branches/paris-sprint-2006/standard/portlets/breadcrumbs/configure.zcml
==============================================================================
--- 
cpsskins/branches/paris-sprint-2006/standard/portlets/breadcrumbs/configure.zcml
    (original)
+++ 
cpsskins/branches/paris-sprint-2006/standard/portlets/breadcrumbs/configure.zcml
    Sun Jul  2 12:17:34 2006
@@ -22,6 +22,11 @@
        for=".portlet.IBreadcrumbs">
 
     <format
+        name="layout"
+        types="contained"
+    />
+
+    <format
         name="widget"
         types="standard.horizontal_trail"
     />

Modified: 
cpsskins/branches/paris-sprint-2006/standard/portlets/custom/configure.zcml
==============================================================================
--- cpsskins/branches/paris-sprint-2006/standard/portlets/custom/configure.zcml 
(original)
+++ cpsskins/branches/paris-sprint-2006/standard/portlets/custom/configure.zcml 
Sun Jul  2 12:17:34 2006
@@ -23,6 +23,11 @@
        for=".portlet.ICustom">
 
     <format
+        name="layout"
+        types="contained"
+    />
+
+    <format
         name="widget"
         types="standard.plain_html"
     />

Modified: 
cpsskins/branches/paris-sprint-2006/standard/portlets/dummy/configure.zcml
==============================================================================
--- cpsskins/branches/paris-sprint-2006/standard/portlets/dummy/configure.zcml  
(original)
+++ cpsskins/branches/paris-sprint-2006/standard/portlets/dummy/configure.zcml  
Sun Jul  2 12:17:34 2006
@@ -22,6 +22,11 @@
        for=".portlet.IDummy">
 
     <format
+        name="layout"
+        types="contained"
+    />
+
+    <format
         name="widget"
         types="standard.plain_html"
     />

Modified: 
cpsskins/branches/paris-sprint-2006/standard/portlets/image/configure.zcml
==============================================================================
--- cpsskins/branches/paris-sprint-2006/standard/portlets/image/configure.zcml  
(original)
+++ cpsskins/branches/paris-sprint-2006/standard/portlets/image/configure.zcml  
Sun Jul  2 12:17:34 2006
@@ -22,6 +22,11 @@
        for=".portlet.IImage">
 
     <format
+        name="layout"
+        types="contained"
+    />
+
+    <format
         name="widget"
         types="standard.image"
     />

Modified: 
cpsskins/branches/paris-sprint-2006/standard/portlets/macroslot/configure.zcml
==============================================================================
--- 
cpsskins/branches/paris-sprint-2006/standard/portlets/macroslot/configure.zcml  
    (original)
+++ 
cpsskins/branches/paris-sprint-2006/standard/portlets/macroslot/configure.zcml  
    Sun Jul  2 12:17:34 2006
@@ -23,6 +23,11 @@
        for=".portlet.IMacroSlot">
 
     <format
+        name="layout"
+        types="contained"
+    />
+
+    <format
         name="widget"
         types="standard.plain_html"
     />

Modified: cpsskins/branches/paris-sprint-2006/standard/presentations.zcml
==============================================================================
--- cpsskins/branches/paris-sprint-2006/standard/presentations.zcml     
(original)
+++ cpsskins/branches/paris-sprint-2006/standard/presentations.zcml     Sun Jul 
 2 12:17:34 2006
@@ -11,7 +11,7 @@
 
     <cpsskins:format
         name="layout"
-        types="page"
+        types="contained"
     />
 
     <cpsskins:format
@@ -76,6 +76,11 @@
       for="cpsskins.elements.interfaces.ISlot">
 
     <cpsskins:format
+        name="layout"
+        types="contained"
+    />
+
+    <cpsskins:format
         name="order"
     />
 
@@ -103,6 +108,11 @@
       for="cpsskins.elements.interfaces.IPortlet">
 
     <cpsskins:format
+        name="layout"
+        types="contained"
+    />
+
+    <cpsskins:format
         name="widget"
         types="standard.plain_html"
     />

Modified: 
cpsskins/branches/paris-sprint-2006/standard/screens/layouteditor/configure.zcml
==============================================================================
--- 
cpsskins/branches/paris-sprint-2006/standard/screens/layouteditor/configure.zcml
    (original)
+++ 
cpsskins/branches/paris-sprint-2006/standard/screens/layouteditor/configure.zcml
    Sun Jul  2 12:17:34 2006
@@ -2,12 +2,22 @@
     xmlns="http://namespaces.zope.org/zope";
     xmlns:browser="http://namespaces.zope.org/browser";>
 
-  <browser:page
-      name="edit.html"
+  <browser:pages
       for="cpsskins.standard.formats.layout.ILayout"
       class=".views.LayoutEditor"
-      template="layout_editor.pt"
       permission="zope.ManageContent"
-  />
+      layer="cpsskins.browser.skin.cpsskins">
+
+    <page
+      name="edit.html"
+      template="layout_editor.pt"
+    />
+
+    <page
+      name="updateProperties"
+      attribute="updateProperties"
+    />
+
+  </browser:pages>
 
 </configure>

Modified: 
cpsskins/branches/paris-sprint-2006/standard/screens/layouteditor/layout_editor.pt
==============================================================================
--- 
cpsskins/branches/paris-sprint-2006/standard/screens/layouteditor/layout_editor.pt
  (original)
+++ 
cpsskins/branches/paris-sprint-2006/standard/screens/layouteditor/layout_editor.pt
  Sun Jul  2 12:17:34 2006
@@ -1,21 +1,19 @@
-<html metal:use-macro="context/@@popup_macros/page">
-  <body metal:fill-slot="body" i18n:domain="cpsskins">
-    <div class="editArea">
-      <h1>Layout editor</h1>
-      <p class="statusMsg"
-         tal:define="status view/update"
-         tal:condition="status"
-         tal:content="status" />
-      <div class="main">
-        <form action="." tal:attributes="action request/URL" method="post"
-              enctype="multipart/form-data">
-          <div metal:use-macro="context/@@form_macros/widget_rows" />
-          <p>
-            <button type="submit" class="submitButton" name="UPDATE_SUBMIT"
-                    i18n:translate="save-button">Save</button>
-          </p>
-        </form>
-      </div>
-    </div>
-  </body>
-</html>
+<h2>Layout editor</h2>
+<form action="" method="post" enctype="multipart/form-data"
+ tal:attributes="action string:${context/@@absolute_url}/@@updateProperties">
+  <table>
+  <tr tal:repeat="field python: context.keys()">
+    <td>
+      <label tal:content="field" />
+    </td>
+    <td>
+      <input type="text"
+       tal:attributes="name field; value context/?field" />
+    </td>
+  </tr>
+  </table>
+  <p>
+    <input type="submit" class="submitButton" name="UPDATE_SUBMIT"
+           i18n:translate="save-button" value="Save" />
+  </p>
+</form>

Modified: 
cpsskins/branches/paris-sprint-2006/standard/screens/layouteditor/views.py
==============================================================================
--- cpsskins/branches/paris-sprint-2006/standard/screens/layouteditor/views.py  
(original)
+++ cpsskins/branches/paris-sprint-2006/standard/screens/layouteditor/views.py  
Sun Jul  2 12:17:34 2006
@@ -17,11 +17,18 @@
 """
 __docformat__ = "reStructuredText"
 
-from zope.app.form.browser.editview import EditView
-
 from cpsskins.standard.formats.layout import ILayout
 
-class LayoutEditor(EditView):
+class LayoutEditor(object):
     """Layout editor view"""
 
-    schema = ILayout
+    def __init__(self, context, request):
+        self.context = context
+        self.request = request
+
+    def updateProperties(self):
+        context = self.context
+        form = self.request.form
+        for k in context.keys():
+            if k in form:
+                context[k] = form[k]

Modified: 
cpsskins/branches/paris-sprint-2006/ui/screens/contentauthor/engine.zcml
==============================================================================
--- cpsskins/branches/paris-sprint-2006/ui/screens/contentauthor/engine.zcml    
(original)
+++ cpsskins/branches/paris-sprint-2006/ui/screens/contentauthor/engine.zcml    
Sun Jul  2 12:17:34 2006
@@ -57,6 +57,10 @@
     />
 
     <filter
+        name="layout"
+    />
+
+    <filter
         name="style"
     />
 

Modified: 
cpsskins/branches/paris-sprint-2006/ui/screens/pagedesigner/layout/layout_mode.css
==============================================================================
--- 
cpsskins/branches/paris-sprint-2006/ui/screens/pagedesigner/layout/layout_mode.css
  (original)
+++ 
cpsskins/branches/paris-sprint-2006/ui/screens/pagedesigner/layout/layout_mode.css
  Sun Jul  2 12:17:34 2006
@@ -49,7 +49,7 @@
 
 .pageBlockAddButton {
   font: 12px Arial, Helvetica, Sans-Serif;
-  text-align: left;
+  text-align: center;
   padding-left: 4px;
   margin-top: 5px;
   margin-bottom: 5px;

Modified: 
cpsskins/branches/paris-sprint-2006/ui/screens/pagedesigner/wysiwyg/engine.zcml
==============================================================================
--- 
cpsskins/branches/paris-sprint-2006/ui/screens/pagedesigner/wysiwyg/engine.zcml 
    (original)
+++ 
cpsskins/branches/paris-sprint-2006/ui/screens/pagedesigner/wysiwyg/engine.zcml 
    Sun Jul  2 12:17:34 2006
@@ -81,6 +81,10 @@
     />
 
     <filter
+        name="layout"
+    />
+
+    <filter
         name="style"
     />
 
-- 
http://lists.nuxeo.com/mailman/listinfo/z3lab-checkins

Reply via email to