[Zope3-checkins] SVN: Zope3/trunk/src/zope/app/boston/ Added initial implementation

Roger Ineichen roger at projekt01.ch
Mon Mar 7 18:54:08 EST 2005


Log message for revision 29413:
  Added initial implementation

Changed:
  A   Zope3/trunk/src/zope/app/boston/README.txt
  A   Zope3/trunk/src/zope/app/boston/__init__.py
  A   Zope3/trunk/src/zope/app/boston/boston_layout_v2.png
  A   Zope3/trunk/src/zope/app/boston/browser/
  A   Zope3/trunk/src/zope/app/boston/browser/__init__.py
  A   Zope3/trunk/src/zope/app/boston/browser/boston.js
  A   Zope3/trunk/src/zope/app/boston/browser/configure.zcml
  A   Zope3/trunk/src/zope/app/boston/browser/ftests.py
  A   Zope3/trunk/src/zope/app/boston/browser/img/
  A   Zope3/trunk/src/zope/app/boston/browser/img/favicon.png
  A   Zope3/trunk/src/zope/app/boston/browser/img/zopelogo.gif
  A   Zope3/trunk/src/zope/app/boston/browser/skin.css
  A   Zope3/trunk/src/zope/app/boston/browser/standardmacros.py
  A   Zope3/trunk/src/zope/app/boston/browser/template.pt
  A   Zope3/trunk/src/zope/app/boston/browser/widget.css
  A   Zope3/trunk/src/zope/app/boston/browser/widget_macros.pt
  A   Zope3/trunk/src/zope/app/boston/configure.zcml
  A   Zope3/trunk/src/zope/app/boston/slots/
  A   Zope3/trunk/src/zope/app/boston/slots/__init__.py
  A   Zope3/trunk/src/zope/app/boston/slots/addbox.zcml
  A   Zope3/trunk/src/zope/app/boston/slots/addbox_layout.pt
  A   Zope3/trunk/src/zope/app/boston/slots/configure.zcml
  A   Zope3/trunk/src/zope/app/boston/slots/helpaction.zcml
  A   Zope3/trunk/src/zope/app/boston/slots/img/
  A   Zope3/trunk/src/zope/app/boston/slots/img/collapse.gif
  A   Zope3/trunk/src/zope/app/boston/slots/img/expand.gif
  A   Zope3/trunk/src/zope/app/boston/slots/toggle.zcml
  A   Zope3/trunk/src/zope/app/boston/slots/toolbar.zcml
  A   Zope3/trunk/src/zope/app/boston/slots/tooltipbox.zcml
  A   Zope3/trunk/src/zope/app/boston/slots/tooltipbox_layout.pt
  A   Zope3/trunk/src/zope/app/boston/slots/zmicookietreebox.zcml
  A   Zope3/trunk/src/zope/app/boston/slots/zmicookietreebox_layout.pt

-=-
Added: Zope3/trunk/src/zope/app/boston/README.txt
===================================================================
--- Zope3/trunk/src/zope/app/boston/README.txt	2005-03-07 23:53:29 UTC (rev 29412)
+++ Zope3/trunk/src/zope/app/boston/README.txt	2005-03-07 23:54:08 UTC (rev 29413)
@@ -0,0 +1,41 @@
+======
+README
+======
+
+The Boston skin is experimental work right now. Feel free to write comments,
+ideas and wishes to the zope3-dev mailinglist. 
+
+We will try different concepts on this skin. The main target whould be to get a 
+open customizable skin where can be used as a ZMI Rotterdam replacement 
+used by deveopers. 
+
+Requirements
+-------------
+
+  - Offer a concept for register aditional javascripts
+
+  - Offer a concept for register additional CSS style sheets
+
+  - Offer a concept for register own boxes under the navigation
+  
+  - Works in newer browser on each plattform, this are linux, windows, mac
+
+  - Works in newest version of the following browsers, IE, firefox(gecko),
+    Safari
+
+Dont's
+------
+
+  - Must not work on older browsers, new technologies are fine but have to 
+    support the plattform and browsers described above.
+
+  - Must not support accessibility requirments. It's not a enduser skin.
+    Please tell me if somebody need this. Id so, we can implement a own ZMI skin
+    for supporting fully accessibility support.
+
+btw
+---
+
+  Different ideas of the Boston skin where born on the IRC with Stefan Richter.
+  It's usual to name a skin like the town where the skin was born. We decide to 
+  name it Boston because Stefan lives there.


Property changes on: Zope3/trunk/src/zope/app/boston/README.txt
___________________________________________________________________
Name: svn:eol-style
   + native

Added: Zope3/trunk/src/zope/app/boston/__init__.py
===================================================================
--- Zope3/trunk/src/zope/app/boston/__init__.py	2005-03-07 23:53:29 UTC (rev 29412)
+++ Zope3/trunk/src/zope/app/boston/__init__.py	2005-03-07 23:54:08 UTC (rev 29413)
@@ -0,0 +1,34 @@
+##############################################################################
+#
+# Copyright (c) 2005 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.
+#
+##############################################################################
+"""Standard macros for page templates in the Boston ZMI
+
+The macros are drawn from various different page templates.
+
+$Id$
+"""
+
+from zope.publisher.interfaces.browser import IBrowserRequest
+from zope.publisher.interfaces.browser import IDefaultBrowserLayer
+
+
+class boston(IBrowserRequest):
+    """The `boston` layer."""
+
+class Boston(boston, IDefaultBrowserLayer):
+    """The `Boston` skin.
+
+    It is available via `++skin++zope.app.boston.Boston`
+    or via `++skin++Boston`.
+    """
+


Property changes on: Zope3/trunk/src/zope/app/boston/__init__.py
___________________________________________________________________
Name: svn:eol-style
   + native

Added: Zope3/trunk/src/zope/app/boston/boston_layout_v2.png
===================================================================
(Binary files differ)


Property changes on: Zope3/trunk/src/zope/app/boston/boston_layout_v2.png
___________________________________________________________________
Name: svn:mime-type
   + application/octet-stream

Added: Zope3/trunk/src/zope/app/boston/browser/__init__.py
===================================================================
--- Zope3/trunk/src/zope/app/boston/browser/__init__.py	2005-03-07 23:53:29 UTC (rev 29412)
+++ Zope3/trunk/src/zope/app/boston/browser/__init__.py	2005-03-07 23:54:08 UTC (rev 29413)
@@ -0,0 +1,17 @@
+##############################################################################
+#
+# Copyright (c) 2005 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.
+#
+##############################################################################
+"""Boston skin
+
+$Id$
+"""


Property changes on: Zope3/trunk/src/zope/app/boston/browser/__init__.py
___________________________________________________________________
Name: svn:eol-style
   + native

Added: Zope3/trunk/src/zope/app/boston/browser/boston.js
===================================================================
--- Zope3/trunk/src/zope/app/boston/browser/boston.js	2005-03-07 23:53:29 UTC (rev 29412)
+++ Zope3/trunk/src/zope/app/boston/browser/boston.js	2005-03-07 23:54:08 UTC (rev 29413)
@@ -0,0 +1,66 @@
+//----------------------------------------------------------------------------
+// Copyright (c) 2005 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.
+//----------------------------------------------------------------------------
+
+//----------------------------------------------------------------------------
+// popup window with settings 
+//----------------------------------------------------------------------------
+function popup(page, name, settings) {
+  win = window.open(page, name, settings);
+  win.focus();
+}
+
+//----------------------------------------------------------------------------
+// guess browser version, feel free to enhance it if needed.
+//----------------------------------------------------------------------------
+var ie = document.all != null;
+var moz = !ie && document.getElementById != null && document.layers == null;
+
+//----------------------------------------------------------------------------
+// change the status (color) of the matrix table used in grant.html
+//----------------------------------------------------------------------------
+function changeMatrix(e) {
+  var ele = e? e: window.event;
+  var id = ele.getAttribute('id');
+  var name = ele.getAttribute('name');
+  if (moz) {
+    var label = ele.parentNode;
+    var center = label.parentNode;
+    var td = center.parentNode;
+  }
+  else {
+    var label = ele.parentElement;
+    var center = label.parentElement;
+    var td = center.parentElement;
+  }
+  resetMatrixCSS(name);
+  if (td.className != "default") {
+    td.className = "changed";
+  }
+}
+
+function resetMatrixCSS(name) {
+  var inputFields = document.getElementsByTagName('input');
+  for (var i = 0; i < inputFields.length; i++) {
+    var field = inputFields[i];
+    if (field.getAttribute('name') == name) {
+      if (moz) {
+        td = field.parentNode.parentNode.parentNode;
+      }
+      else {
+        td = field.parentElement.parentElement.parentElement;
+      }
+      if (td.className != "default") {
+        td.className = "";
+      }
+    }
+  }
+}


Property changes on: Zope3/trunk/src/zope/app/boston/browser/boston.js
___________________________________________________________________
Name: svn:eol-style
   + native

Added: Zope3/trunk/src/zope/app/boston/browser/configure.zcml
===================================================================
--- Zope3/trunk/src/zope/app/boston/browser/configure.zcml	2005-03-07 23:53:29 UTC (rev 29412)
+++ Zope3/trunk/src/zope/app/boston/browser/configure.zcml	2005-03-07 23:54:08 UTC (rev 29413)
@@ -0,0 +1,71 @@
+<configure
+    xmlns="http://namespaces.zope.org/zope"
+    xmlns:browser="http://namespaces.zope.org/browser">
+
+  <browser:layer 
+      name="boston"
+      interface="zope.app.boston.boston"
+      />  
+
+  <browser:skin 
+      name="Boston"
+      interface="zope.app.boston.Boston"
+      />
+
+  <browser:resource 
+      name="boston.js"
+      file="boston.js"
+      layer="zope.app.boston.boston"
+      />
+
+  <browser:resource 
+      name="skin.css"
+      file="skin.css"
+      layer="zope.app.boston.boston"
+      />
+
+  <browser:resource 
+      name="widget.css"
+      file="widget.css"
+      layer="zope.app.boston.boston"
+      />
+
+  <!-- layout img -->
+  <browser:resource
+      name="favicon.png"
+      file="img/favicon.png"
+      layer="zope.app.boston.boston"
+      />
+
+  <browser:resource 
+      name="logo.gif"
+      file="img/zopelogo.gif"
+      layer="zope.app.boston.boston"
+      />
+
+  <browser:page
+      for="*"
+      name="standard_macros"
+      permission="zope.View"
+      class=".standardmacros.StandardMacros"
+      allowed_interface="zope.interface.common.mapping.IItemMapping"
+      layer="zope.app.boston.boston" 
+      />
+
+  <browser:page 
+      for="*"
+      name="skin_macros"
+      permission="zope.View"
+      template="template.pt"
+      layer="zope.app.boston.boston"
+      />
+
+  <browser:page
+      for="*"
+      name="widget_macros"
+      permission="zope.Public"
+      template="widget_macros.pt"
+      layer="zope.app.boston.boston"
+      />
+
+</configure>


Property changes on: Zope3/trunk/src/zope/app/boston/browser/configure.zcml
___________________________________________________________________
Name: svn:eol-style
   + native

Added: Zope3/trunk/src/zope/app/boston/browser/ftests.py
===================================================================
--- Zope3/trunk/src/zope/app/boston/browser/ftests.py	2005-03-07 23:53:29 UTC (rev 29412)
+++ Zope3/trunk/src/zope/app/boston/browser/ftests.py	2005-03-07 23:54:08 UTC (rev 29413)
@@ -0,0 +1,100 @@
+##############################################################################
+#
+# Copyright (c) 2005 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.
+#
+##############################################################################
+"""Boston skin ftests
+
+$Id$
+"""
+
+import unittest
+from xml.dom import minidom
+from zope.app.testing.functional import BrowserTestCase
+
+class TestBostonSkin(BrowserTestCase):
+
+
+    def test_addFolder(self):
+        response = self.publish("/++skin++Boston/+/action.html", 
+                                basic='mgr:mgrpw', 
+                                form={'type_name':u'zope.app.content.Folder', 
+                                      'id':u'folder'})
+        self.assertEqual(response.getStatus(), 302)
+
+        response = self.publish("/++skin++Boston/folder/+/action.html", 
+                                basic='mgr:mgrpw', 
+                                form={'type_name':u'zope.app.content.Folder', 
+                                      'id':u'subfolder'})
+        self.assertEqual(response.getStatus(), 302)
+
+    def test_addSiteManager(self):
+        response = self.publish("/++skin++Boston/+/action.html", 
+                                basic='mgr:mgrpw', 
+                                form={'type_name':u'zope.app.content.Folder', 
+                                      'id':u'folder'})
+        self.assertEqual(response.getStatus(), 302)
+
+        response = self.publish("/++skin++Boston/folder/+/action.html", 
+                                basic='mgr:mgrpw', 
+                                form={'type_name':u'zope.app.content.Folder', 
+                                      'id':u'subsite'})
+        self.assertEqual(response.getStatus(), 302)
+
+        response = self.publish(
+            "/++skin++Boston/folder/subsite/addSiteManager.html", 
+            basic='mgr:mgrpw')
+        self.assertEqual(response.getStatus(), 302)
+
+    def test_css_pagelets(self):
+        response = self.publish('/++skin++Boston/', basic='mgr:mgrpw')
+        self.assertEqual(response.getStatus(), 200)
+        self.assert_(response.getBody().find('@import url(http://localhost/++skin++Boston/@@/skin.css)') != -1)
+        self.assert_(response.getBody().find('@import url(http://localhost/++skin++Boston/@@/widget.css)') != -1)
+
+    def test_javascrip_pagelets(self):
+        response = self.publish('/++skin++Boston/', basic='mgr:mgrpw')
+        self.assertEqual(response.getStatus(), 200)
+        self.assert_(response.getBody().find('src="http://localhost/++skin++Boston/@@/toggle.js') != -1)
+
+    def test_left_boxes(self):
+        # Add some folders
+        response = self.publish("/++skin++Boston/+/action.html",
+                                basic='mgr:mgrpw', 
+                                form={'type_name':u'zope.app.content.Folder', 
+                                      'id':u'folder'})
+        self.assertEqual(response.getStatus(), 302)
+        
+        response = self.publish('/++skin++Boston/folder', basic='mgr:mgrpw')
+        self.assertEqual(response.getStatus(), 200)
+
+        # test zmitree cookie box
+        self.assert_(response.getBody().find('id="zmicookietreebox"') != -1)
+
+        # test add box
+        self.assert_(response.getBody().find('id="addbox"') != -1)
+
+        # test tooltip box. Ah I found one in the role permission view
+        response = self.publish('/++skin++Boston/++etc++site/@@AllRolePermissions.html',
+                                basic='mgr:mgrpw')
+        self.assertEqual(response.getStatus(), 200)
+        self.assert_(response.getBody().find('id="tooltipbox"') != -1)
+
+
+
+def test_suite():
+    suite = unittest.TestSuite()
+    suite.addTest(unittest.makeSuite(TestBostonSkin))
+    return suite
+
+if __name__=='__main__':
+    unittest.main(defaultTest='test_suite')
+


Property changes on: Zope3/trunk/src/zope/app/boston/browser/ftests.py
___________________________________________________________________
Name: svn:eol-style
   + native

Added: Zope3/trunk/src/zope/app/boston/browser/img/favicon.png
===================================================================
(Binary files differ)


Property changes on: Zope3/trunk/src/zope/app/boston/browser/img/favicon.png
___________________________________________________________________
Name: svn:mime-type
   + application/octet-stream

Added: Zope3/trunk/src/zope/app/boston/browser/img/zopelogo.gif
===================================================================
(Binary files differ)


Property changes on: Zope3/trunk/src/zope/app/boston/browser/img/zopelogo.gif
___________________________________________________________________
Name: svn:mime-type
   + application/octet-stream

Added: Zope3/trunk/src/zope/app/boston/browser/skin.css
===================================================================
--- Zope3/trunk/src/zope/app/boston/browser/skin.css	2005-03-07 23:53:29 UTC (rev 29412)
+++ Zope3/trunk/src/zope/app/boston/browser/skin.css	2005-03-07 23:54:08 UTC (rev 29413)
@@ -0,0 +1,545 @@
+/*
+** Boston style sheet for CSS2-capable browsers.
+**
+*/
+
+/* Basic Elements 
+*/
+html {
+	height: 100%;
+}
+body {
+	height: 100%;
+	font: 75% Verdana, Helvetica, Arial, sans-serif;
+	color: #181818;
+	background: #F9F9F9;
+	margin: 0;
+	padding: 0;
+}
+
+a {
+    text-decoration: none;
+    color: BLACK;
+    background-color: transparent;
+}
+a:hover {
+    text-decoration: underline;
+}
+
+img {
+	border: none;
+}
+
+p {
+    margin: 0.5em 0em 1em 0em;
+    line-height: 1.5em;
+}
+
+p a {
+    text-decoration: underline;
+}
+
+p a:visited {
+    color: Purple;
+    background-color: transparent;
+}
+
+p a:active {
+    color: Red;
+    background-color: transparent;
+}
+
+p img {
+    border: 0;
+    margin: 0;
+}
+
+
+hr {
+    clear: both;
+    height: 1px;
+    color: #006600;
+    background-color: transparent;
+}
+
+
+h1, h2, h3, h4, h5, h6 {
+    color: Black;
+    clear: left;
+    font: 100% bold Verdana, Helvetica, Arial, sans-serif;
+    margin: 0;
+    padding-top: 0.5em;
+}
+
+h1 {
+    font-size: 140%;
+}
+
+h2 {
+    font-size: 120%;
+}
+
+h3 {
+    font-weight: bold;
+    font-size: 100%;
+}
+
+h4 {
+    color: #777777;
+    font-size: 100%;
+    font-weight: bold;
+}
+
+h5 {
+    font-size: 100%;
+}
+
+h6 {
+    font-size: 80%;
+}
+
+ul { 
+    line-height: 1.5em;
+    /* list-style-image: url("bullet.gif"); */
+    margin-left: 2em;
+    padding:0;
+}
+
+ol {
+    line-height: 1.5em;
+    margin-left: 2em;
+    padding:0;
+}
+
+ul a, ol a {
+    text-decoration: underline;
+}
+
+dl {
+}
+
+dt {
+    font-weight: bold;    
+}
+
+dd {
+    line-height: 1.5em;
+    margin-bottom: 1em;
+}
+
+
+fieldset {
+    border: 1px solid #A0A0A0;
+    margin: 2em 0em 1em 0em;
+    padding: 1em 0em;
+}
+
+legend {
+    background: transparent;
+    padding: 0.5em;
+}
+
+
+form {
+    border: none;
+    margin: 0;
+    padding: 0;
+}
+
+textarea {
+    color: Black;
+    width: 100%;
+    border: 1px solid #9B9B9B;
+    padding: 0.1em;
+}
+
+input {
+    font: normal 100% Verdana, Helvetica, Arial, sans-serif;
+    color: Black;
+    border: 1px solid #9B9B9B;
+    vertical-align: middle;
+    margin-bottom: 1px; /* IE bug fix */
+    padding: 0.1em;
+}
+
+input.noborder {
+    border: 0;
+}
+
+select {
+    font: normal 100% Verdana, Helvetica, Arial, sans-serif;
+    vertical-align: top;
+}
+
+abbr, acronym, .explain {
+    border-bottom: 1px dotted Black;
+    color: Black;
+    background-color: transparent;
+    cursor: help;
+}
+
+q {
+    font-family: Times, "Times New Roman", serif;
+    font-style: italic;
+    font-size: 120%;
+}
+
+blockquote {
+    font-family: Times, "Times New Roman", serif;
+    font-style: italic;
+    font-size: 120%;
+}
+
+code {
+    font-size: 120%;
+    color: Black;
+    background-color: #CCCCCC;
+}
+
+pre {
+    font-size: 120%;
+    padding: 1em;
+    border: 1px solid #A0A0A0;
+    color: Black;
+    background-color: #CCCCCC;
+}
+
+table {
+    border-collapse: collapse;
+    font-size: 100%;
+}
+
+.netscape4 {
+    display: none;
+}
+
+
+/* layout styles
+*/
+#layout {
+    width: 100%;
+	height: 79px;
+    font-size: 100%;
+}
+
+#layout td {
+    vertical-align: top;
+}
+
+#layout tr.menu {
+    width: 100%;
+}
+
+#layout tr.menu td {
+    height: 24px;
+    background-color: #EBE9DF;
+    border: 1px solid #C1BBAC;
+}
+
+#layout tr.head{
+	background-color: #0066CC;
+}
+
+#layout td.logo {
+    height: 55px;
+    width: 250px;
+}
+
+#layout td.logo img {
+    padding-top: 7px;
+    padding-left: 7px;
+}
+
+#actions {
+    height: 20px;
+	float: left;
+    padding: 4px 0px 0px 0px;
+}
+
+#actions span {
+    white-space: nowrap;
+}
+
+#actions a {
+	color: #666666;
+    margin: 1px 6px 3px 6px;
+}
+
+#actions a:hover {
+	color: black;
+    text-decoration: none;
+	background-color: #D9DAF2;
+	border: 1px solid #0066CC;
+    padding: 1px 5px 3px 5px;
+    margin: 0px;
+}
+
+#userdetails {
+	color: #898074;
+	float: right;
+	padding: 4px 5px 0px 5px;
+}
+
+#breadcrumbs {
+	color: #CCCCCC;
+    font: 100% Verdana, Helvetica, Arial, sans-serif;
+	margin: 30px 0px 0px 15px;
+}
+
+#breadcrumbs a {
+    color: #CCCCCC;
+}
+
+/* navigation area 
+*/
+#navigation {
+    width: 200px;
+    vertical-align: top;
+    padding: 0px;
+    margin: 0px;
+}
+
+
+/* slot boxes
+*/
+#slotbox {
+    width: 200px;
+    padding: 20px 5px 0px 5px;
+}
+
+.slotbox {
+	border: 2px solid #0066CC;
+    margin-bottom: 10px;
+    padding: 0px;
+}
+
+.slotbox div.header {
+	height: 22px;
+	color: white;
+	font-weight: bold;
+	background-color: #0066CC;
+	padding: 0px 0px 0px 5px;
+	margin: 0px 0px 0px 0px;
+}
+
+.slotbox div.header img.icon {
+	float: right;
+	position: relative;
+	padding: 2px;
+}
+
+.slotbox div.title {
+    height: 17px;
+    white-space: nowrap;
+	padding: 3px 0px 0px 0px;
+}
+
+.slotbox div.body {
+	margin: 0px 0px 0px 0px;
+}
+
+.slotbox div.body div {
+    color: #777777;
+	padding: 2px 0px 5px 5px;
+	margin: 0px;
+}
+
+.slotbox div.body div.tip {
+    color: #B30000;
+	padding: 2px 0px 5px 5px;
+}
+
+.slotbox div.treebody {
+	margin: 5px 5px 5px 5px;
+}
+
+.slotbox div.body div.even {
+    background: #EBEBE2;
+	padding: 4px;
+}
+
+.slotbox div.body div.odd {
+	padding: 4px;
+}
+
+.slotbox div.body a:hover {
+    text-decoration: underline;
+}
+
+
+/* content area
+*/
+
+#content {
+    width: 100%;
+    margin: 0px;
+    padding: 0px 10px 0px 10px;
+}
+
+
+#zmiviews {
+    margin: 0px 0px 0px 0px;
+    padding: 18px 0px 0px 0px;
+}
+
+#zmiviews div {
+    font: 100% Verdana, Helvetica, Arial, sans-serif;
+    background-color: #EBE9DF;
+    border: 1px solid #C1BBAC;
+    padding: 5px 0px 5px 5px;
+    margin: 2px 0px 10px 0px;
+}
+
+#zmiviews div span {
+    white-space: nowrap;
+}
+
+#zmiviews div a {
+	color: #666666;
+    font-weight: normal;
+    padding: 2px 6px 2px 6px;
+}
+
+#zmiviews div a:hover {
+	color: black;
+	text-decoration: none;
+	background-color: #CECEFF;
+	border: 1px solid #0066CC;
+    padding: 2px 5px 2px 5px;
+}
+
+#zmiviews div a.selected {
+	color: black;
+	text-decoration: none;
+	background-color: #D9DAF2;
+	border: 1px solid #0066CC;
+    padding: 2px 5px 2px 5px;
+}
+
+
+/* standard fields
+*/
+div.row div.field {
+    clear: left;
+}
+
+div.row div.label {
+    font-weight: bold;
+	margin: 0;
+}
+
+div.row span.error {
+    background: #A51212;
+    color: white;
+	margin: 0;
+}
+
+
+/* widget row layout
+*/
+#widgets {
+    width: 100%;
+    margin: 0px 0px 10px 0px;
+}
+
+#widgets td {
+    height: 25px;
+    vertical-align: top;
+}
+
+#widgets td.labels {
+    width: 100px;
+    text-align: right;
+    background: #DAD8CF;
+    padding: 7px 5px 5px 0px;
+}
+
+#widgets td.fields {
+    background: #EBEBE2;
+    padding: 7px 5px 5px 20px;
+}
+
+#widgets div.error {
+    color: #A51212;
+}
+
+
+/* footer area 
+*/
+#footer {
+    float: left;
+    clear: both;
+}
+
+
+/* table lyout
+*/
+table.listing {
+    width: 100%;
+    margin: 0px 0px 10px 0px;
+}
+
+table.listing th {
+    height: 18px;
+    background: #EBE9DF;
+    color: black;
+    font-weight: normal;
+    text-align: left;
+    white-space: nowrap;
+    padding: 2px 0px 2px 0px;
+    margin: 0px 0px 0px 0px;
+}
+
+table.listing td.top {
+    text-align: right ! important;
+    padding: 0px 0px 0px 0px;
+}
+
+table.listing tr.odd {
+    background: #F3F3EE;
+}
+
+table.listing tr.even {
+    border: 0px;
+    background: transparent;
+}
+
+table.listing td {
+    text-align: left;
+    padding: 2px 0px 2px 0px;
+}
+
+table.listing img {
+    vertical-align: middle;
+}
+
+table.listing input {
+    padding: 3px 5px 0px 5px;
+}
+
+
+/* messages and errors
+*/
+div.message {
+    height: 18px;
+    color: Black;
+    font: 100% Verdana, Helvetica, Arial, sans-serif;
+    background: #D9DAF2;
+    border: 1px solid #0066CC;
+    padding: 3px 6px 10px 6px;
+    margin-right: 10px;
+}
+
+div.message a {
+    color: Black;
+    text-decoration: underline;
+}
+
+div.page_error {  
+    font: 100% Verdana, Helvetica, Arial, sans-serif;
+    background: #F29F9F;
+    border: 1px solid #A51212; 
+    padding: 2px 5px; 
+    margin: 0px 0px 10px 0px; 
+    vertical-align: middle; 
+}


Property changes on: Zope3/trunk/src/zope/app/boston/browser/skin.css
___________________________________________________________________
Name: svn:eol-style
   + native

Added: Zope3/trunk/src/zope/app/boston/browser/standardmacros.py
===================================================================
--- Zope3/trunk/src/zope/app/boston/browser/standardmacros.py	2005-03-07 23:53:29 UTC (rev 29412)
+++ Zope3/trunk/src/zope/app/boston/browser/standardmacros.py	2005-03-07 23:54:08 UTC (rev 29413)
@@ -0,0 +1,23 @@
+##############################################################################
+#
+# Copyright (c) 2005 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.
+#
+##############################################################################
+"""Boston skin
+
+$Id$
+"""
+
+from zope.app.basicskin.standardmacros import StandardMacros as BaseMacros
+
+class StandardMacros(BaseMacros):
+    macro_pages = ('skin_macros', 'view_macros', 'dialog_macros'
+                  , 'navigation_macros')


Property changes on: Zope3/trunk/src/zope/app/boston/browser/standardmacros.py
___________________________________________________________________
Name: svn:eol-style
   + native

Added: Zope3/trunk/src/zope/app/boston/browser/template.pt
===================================================================
--- Zope3/trunk/src/zope/app/boston/browser/template.pt	2005-03-07 23:53:29 UTC (rev 29412)
+++ Zope3/trunk/src/zope/app/boston/browser/template.pt	2005-03-07 23:54:08 UTC (rev 29413)
@@ -0,0 +1,141 @@
+<metal:block define-macro="page"><metal:block define-slot="doctype"><!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"></metal:block>
+
+<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en" i18n:domain="zope">
+<head>
+  <title metal:define-slot="title"
+         tal:content="string:Tiks: ${context/zope:title_or_name}">Tiks: title</title>
+  
+  <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
+
+  <!-- move this javascript to a pagelet -->
+	<script type="text/javascript" src="boston.js"
+          tal:attributes="src string:${context/++resource++boston.js}" >
+  </script>
+
+  <style type="text/css" media="all" tal:content="string: @import url(${context/++resource++skin.css});">
+    @import url(skin.css);
+  </style>
+
+  <!-- move this styles sheet to a pagelet -->
+  <style type="text/css" media="all" tal:content="string: @import url(${context/++resource++widget.css});">
+    @import url(widget.css);
+  </style>
+	
+  <link rel="icon" type="image/png" 
+        tal:attributes="href context/++resource++favicon.png" />
+
+  <!-- some slots used in Zope3 Rotterdam, let's be compatible -->
+  <metal:block define-slot="headers" />
+  <metal:block define-slot="style_slot" />
+  <metal:block define-slot="ecmascript_slot" />  
+
+  <!-- head pagelets -->
+	<metal:block tal:repeat="pagelets pagelets:zope.app.boston.slots.IHead">
+    <tal:block metal:use-macro="pagelets" />
+	</metal:block>
+	
+  <!-- css slot -->
+	<metal:block tal:repeat="pagelets pagelets:zope.app.boston.slots.ICSS">
+    <tal:block metal:use-macro="pagelets" />
+	</metal:block>
+	
+  <!-- javascripts slot -->
+	<metal:block tal:repeat="pagelets pagelets:zope.app.boston.slots.IJavaScript">
+    <tal:block metal:use-macro="pagelets" />
+	</metal:block>
+</head>
+
+<body tal:define="global rooturl request/getApplicationURL;
+                  global thisbaseurl request/URL/-1">
+
+  <table id="layout">
+    <tr class="menu">
+    	<td colspan="2">
+
+			  <!-- toolbar slot (zmi_action) -->
+				<metal:block tal:repeat="pagelets pagelets:zope.app.boston.slots.IToolBar">
+					<tal:block metal:use-macro="pagelets" />
+				</metal:block>
+
+				<div id="userdetails">
+          <metal:block define-macro="logged_user">
+            <span tal:omit-tag="" i18n:translate="">User:</span>
+            <tal:block replace="request/principal/title">User</tal:block>
+          </metal:block>
+          <a href="" 
+             tal:attributes="href string:@@logout.html?nextURL=${request/URL}"
+             tal:condition="python: hasattr(view.request.principal, 'getLogin')"
+             i18n:translate="">[Logout]</a>
+          <a href="" 
+             tal:attributes="href string:@@login.html?nextURL=${request/URL}"
+             tal:condition="python: not hasattr(view.request.principal, 'getLogin')"
+             i18n:translate="">[Login]</a>
+        </div>
+			</td>
+		</tr>
+    <tr class="head">
+      <td class="logo"><img tal:attributes="src context/++resource++logo.gif" width="107" height="38" /></td>
+      <td>
+        <div id="breadcrumbs" metal:define-macro="breadcrumbs">
+          <span tal:omit-tag="" i18n:translate="">Location:&nbsp;</span>
+          <tal:block repeat="breadcrumb context/@@absolute_url/breadcrumbs">
+            <a href=""
+               tal:condition="repeat/breadcrumb/start"
+               tal:attributes="href string:${breadcrumb/url}/@@SelectedManagementView.html"
+               i18n:translate="">[top]</a>
+            <a href=""
+               tal:condition="not:repeat/breadcrumb/start"
+               tal:content="string:${breadcrumb/name}"
+               tal:attributes="href string:${breadcrumb/url}/@@SelectedManagementView.html"
+               >breadcrumb item</a>
+            / </tal:block>
+        </div>
+      </td>
+    </tr>
+		<tr>
+			<td id="navigation">
+				<div id="slotbox">
+					<metal:block tal:repeat="pagelet pagelets:zope.app.boston.slots.ILeft">
+						<tal:block metal:use-macro="pagelet" />
+					</metal:block>
+				</div>
+			</td>
+			<td id="content">
+				<div id="zmiviews">
+					<div metal:define-slot="tabs" tal:condition="python:macroname == 'view'">
+						<span tal:repeat="view context/@@view_get_menu/zmi_views">
+							<a href=""
+									tal:attributes="href view/action;
+																	class view/selected;"
+									tal:content="view/title"
+									i18n:translate="">label</a>
+						</span>
+					</div> 
+      	</div> 
+      	<div metal:define-slot="message" id="message"></div>
+				<div id="body" metal:define-slot="body">
+					<table class="listing">
+						<thead>
+							<th>Test</th>
+							<th>Another</th>
+						</thead>
+							<tbody>
+								<tr>
+									<td>content</td>
+									<td>thingy</td>
+								</tr>
+								<tr class="even">
+									<td>more</td>
+									<td>data</td>
+								</tr>
+							</tbody>
+						</table>
+					</div>
+				<div id="footer" metal:define-macro="footer" />
+				<div id="logger" />
+			</td>
+		</tr>
+	</table>
+</body>
+</html>
+</metal:block>


Property changes on: Zope3/trunk/src/zope/app/boston/browser/template.pt
___________________________________________________________________
Name: svn:eol-style
   + native

Added: Zope3/trunk/src/zope/app/boston/browser/widget.css
===================================================================
--- Zope3/trunk/src/zope/app/boston/browser/widget.css	2005-03-07 23:53:29 UTC (rev 29412)
+++ Zope3/trunk/src/zope/app/boston/browser/widget.css	2005-03-07 23:54:08 UTC (rev 29413)
@@ -0,0 +1,9 @@
+/*colorize the matrix table used in grant.html*/
+table.matrix td.default {
+    background: #82BA78;
+}
+
+
+table.matrix td.changed {
+    background: #D96868;
+}


Property changes on: Zope3/trunk/src/zope/app/boston/browser/widget.css
___________________________________________________________________
Name: svn:eol-style
   + native

Added: Zope3/trunk/src/zope/app/boston/browser/widget_macros.pt
===================================================================
--- Zope3/trunk/src/zope/app/boston/browser/widget_macros.pt	2005-03-07 23:53:29 UTC (rev 29412)
+++ Zope3/trunk/src/zope/app/boston/browser/widget_macros.pt	2005-03-07 23:54:08 UTC (rev 29413)
@@ -0,0 +1,33 @@
+<html>
+  <body>
+    <metal:block define-macro="widget_rows">
+
+			<table id="widgets" border="0" cellspacing="0" cellpadding="0">
+      	<div class="row" tal:repeat="widget view/widgets">
+       		<metal:block define-macro="widget_row">
+						<tr>
+							<td class="labels">
+								<div class="label">
+									<label for="field.name" title="The widget's hint"
+										tal:attributes="for widget/name; title widget/hint"
+										tal:content="widget/label">The Label</label>
+								</div>
+							</td>
+							<td class="fields">
+								<div class="field" tal:content="structure widget">
+									<input type="text" style="width:100%"/>
+								</div>
+								<div class="error" tal:define="error widget/error"
+														tal:condition="error" tal:content="structure error">
+										The Error
+								</div>
+							</td>
+						</tr>
+
+					</metal:block>
+				</div>
+			</table>
+
+    </metal:block>
+  </body>
+</html>


Property changes on: Zope3/trunk/src/zope/app/boston/browser/widget_macros.pt
___________________________________________________________________
Name: svn:eol-style
   + native

Added: Zope3/trunk/src/zope/app/boston/configure.zcml
===================================================================
--- Zope3/trunk/src/zope/app/boston/configure.zcml	2005-03-07 23:53:29 UTC (rev 29412)
+++ Zope3/trunk/src/zope/app/boston/configure.zcml	2005-03-07 23:54:08 UTC (rev 29413)
@@ -0,0 +1,20 @@
+<configure
+    xmlns="http://namespaces.zope.org/zope"
+    xmlns:browser="http://namespaces.zope.org/browser"
+    xmlns:help="http://namespaces.zope.org/help"
+    xmlns:zcml="http://namespaces.zope.org/zcml"
+    i18n_domain="zope">
+
+  <include package=".slots" />
+  <include package=".browser" />
+
+  <configure zcml:condition="have onlinehelp">
+    <help:register
+        id="boston"
+        title="Boston Skin (experimental)"
+        doc_path="README.txt"
+        class="zope.app.onlinehelp.onlinehelptopic.RESTOnlineHelpTopic"
+        />
+  </configure>
+    
+</configure>


Property changes on: Zope3/trunk/src/zope/app/boston/configure.zcml
___________________________________________________________________
Name: svn:eol-style
   + native

Added: Zope3/trunk/src/zope/app/boston/slots/__init__.py
===================================================================
--- Zope3/trunk/src/zope/app/boston/slots/__init__.py	2005-03-07 23:53:29 UTC (rev 29412)
+++ Zope3/trunk/src/zope/app/boston/slots/__init__.py	2005-03-07 23:54:08 UTC (rev 29413)
@@ -0,0 +1,65 @@
+##############################################################################
+#
+# Copyright (c) 2005 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.
+#
+##############################################################################
+"""Boston skin
+
+$Id$
+"""
+
+from zope.app.pagelet.interfaces import IPageletSlot
+
+
+
+class IHead(IPageletSlot):
+    """Head pagelet slot interface.
+
+    This pagelet slot will lookup for pagelets. If you like to additional 
+    content to this slot, use the 'zope.app.boston.slots.IHead' 
+    interface for the slot attribute in a pagelet directive.
+    """
+
+
+class ICSS(IPageletSlot):
+    """CSS pagelet slot interface.
+
+    This pagelet slot will lookup for pagelets. If you like to additional 
+    content to this slot, use the 'zope.app.boston.slots.IHead' 
+    interface for the slot attribute in a pagelet directive.
+    """
+
+
+class IJavaScript(IPageletSlot):
+    """Javasscript pagelet slot interface. 
+
+    This pagelet slot will lookup for pagelets. If you like to additional 
+    content to this slot, use the 'zope.app.boston.slots.IJavaScript' 
+    interface for the slot attribute in a pagelet directive. 
+    """
+
+
+class IToolBar(IPageletSlot):
+    """View action pagelet slot interface.
+
+    This pagelet slot will lookup for pagelets. If you like to additional 
+    content to this slot, use the 'zope.app.boston.slots.IViewAction' 
+    interface for the slot attribute in a pagelet directive. 
+    """
+
+
+class ILeft(IPageletSlot):
+    """Left pagelet slot interface.
+
+    This pagelet slot will lookup for pagelets. If you like to additional 
+    content to this slot, use the 'zope.app.boston.slots.ILeft' 
+    interface for the slot attribute in a pagelet directive.
+    """


Property changes on: Zope3/trunk/src/zope/app/boston/slots/__init__.py
___________________________________________________________________
Name: svn:eol-style
   + native

Added: Zope3/trunk/src/zope/app/boston/slots/addbox.zcml
===================================================================
--- Zope3/trunk/src/zope/app/boston/slots/addbox.zcml	2005-03-07 23:53:29 UTC (rev 29412)
+++ Zope3/trunk/src/zope/app/boston/slots/addbox.zcml	2005-03-07 23:54:08 UTC (rev 29413)
@@ -0,0 +1,27 @@
+<configure
+    xmlns:zope="http://namespaces.zope.org/zope"
+    xmlns="http://namespaces.zope.org/browser"
+    i18n_domain="zope">
+
+  <configure package="zope.app.skintools.addbox.browser">
+    <pagelet
+        name="addbox"
+        for="zope.app.container.interfaces.IWriteContainer"
+        slot="zope.app.boston.slots.ILeft"
+        permission="zope.ManageContent"
+        template="addbox.pt"
+        layer="zope.app.boston.boston"
+        weight="1"
+        />
+  </configure>
+
+  <pagelet
+      name="addbox_layout"
+      for="*"
+      slot="zope.app.skintools.addbox.IAddBoxLayout"
+      permission="zope.ManageContent"
+      template="addbox_layout.pt"
+      layer="zope.app.boston.boston"
+      />
+
+</configure>
\ No newline at end of file


Property changes on: Zope3/trunk/src/zope/app/boston/slots/addbox.zcml
___________________________________________________________________
Name: svn:eol-style
   + native

Added: Zope3/trunk/src/zope/app/boston/slots/addbox_layout.pt
===================================================================
--- Zope3/trunk/src/zope/app/boston/slots/addbox_layout.pt	2005-03-07 23:53:29 UTC (rev 29412)
+++ Zope3/trunk/src/zope/app/boston/slots/addbox_layout.pt	2005-03-07 23:54:08 UTC (rev 29413)
@@ -0,0 +1,28 @@
+<html>
+<body>
+
+<metal:block define-macro="addbox_layout">
+	<div class="slotbox" id="addbox">
+		<div class="header">
+
+			<img id="arrowAddBox" class="icon" style="cursor:hand" 
+					 onClick="javascript:toggle(document.getElementById('arrowAddBox'), 'addboxToggle')"
+					 border="0" src="collapse.gif" width="16" height="16"
+					 tal:attributes="src context/++resource++collapse.gif">
+	
+			<metal:block define-slot="header">
+				This text will be replace by the content of the pagelet.
+			</metal:block>
+		</div>
+		<div class="toggle body" id="addboxToggle">
+	
+			<metal:block define-slot="body">
+				This text will be replace by the content of the pagelet.
+			</metal:block>
+	
+		</div>
+	</div>
+</metal:block>
+
+</body>
+</html>


Property changes on: Zope3/trunk/src/zope/app/boston/slots/addbox_layout.pt
___________________________________________________________________
Name: svn:eol-style
   + native

Added: Zope3/trunk/src/zope/app/boston/slots/configure.zcml
===================================================================
--- Zope3/trunk/src/zope/app/boston/slots/configure.zcml	2005-03-07 23:53:29 UTC (rev 29412)
+++ Zope3/trunk/src/zope/app/boston/slots/configure.zcml	2005-03-07 23:54:08 UTC (rev 29413)
@@ -0,0 +1,23 @@
+<configure
+    xmlns="http://namespaces.zope.org/zope"
+    xmlns:browser="http://namespaces.zope.org/browser">
+
+  <interface interface="zope.app.boston.slots.IHead" />
+  <interface interface="zope.app.boston.slots.IJavaScript" />
+  <interface interface="zope.app.boston.slots.ICSS" />
+  <interface interface="zope.app.boston.slots.IToolBar" />
+  <interface interface="zope.app.boston.slots.ILeft" />
+
+  <!-- IJavaScript slot pagelets -->
+  <include file="toggle.zcml" />
+
+  <!-- IToolBar slot pagelets -->
+  <include file="toolbar.zcml" />
+  <include file="helpaction.zcml" />
+
+  <!-- ILeft slot pagelets -->
+  <include file="addbox.zcml" />
+  <include file="tooltipbox.zcml" />
+  <include file="zmicookietreebox.zcml" />
+
+</configure>


Property changes on: Zope3/trunk/src/zope/app/boston/slots/configure.zcml
___________________________________________________________________
Name: svn:eol-style
   + native

Added: Zope3/trunk/src/zope/app/boston/slots/helpaction.zcml
===================================================================
--- Zope3/trunk/src/zope/app/boston/slots/helpaction.zcml	2005-03-07 23:53:29 UTC (rev 29412)
+++ Zope3/trunk/src/zope/app/boston/slots/helpaction.zcml	2005-03-07 23:54:08 UTC (rev 29413)
@@ -0,0 +1,27 @@
+<configure
+    xmlns:zope="http://namespaces.zope.org/zope"
+    xmlns="http://namespaces.zope.org/browser"
+    i18n_domain="zope">
+
+  <configure package="zope.app.skintools.helpaction.browser">
+    <pagelet
+        name="helpaction"
+        for="*"
+        slot="zope.app.boston.slots.IToolBar"
+        permission="zope.ManageContent"
+        template="helpaction.pt"
+        layer="zope.app.boston.boston"
+        weight="2"
+        />
+
+    <pagelet
+        name="helpaction_layout"
+        for="*"
+        slot="zope.app.skintools.helpaction.IHelpActionLayout"
+        permission="zope.ManageContent"
+        template="helpaction_layout.pt"
+        layer="zope.app.boston.boston"
+        />
+  </configure>
+
+</configure>
\ No newline at end of file


Property changes on: Zope3/trunk/src/zope/app/boston/slots/helpaction.zcml
___________________________________________________________________
Name: svn:eol-style
   + native

Added: Zope3/trunk/src/zope/app/boston/slots/img/collapse.gif
===================================================================
(Binary files differ)


Property changes on: Zope3/trunk/src/zope/app/boston/slots/img/collapse.gif
___________________________________________________________________
Name: svn:mime-type
   + application/octet-stream

Added: Zope3/trunk/src/zope/app/boston/slots/img/expand.gif
===================================================================
(Binary files differ)


Property changes on: Zope3/trunk/src/zope/app/boston/slots/img/expand.gif
___________________________________________________________________
Name: svn:mime-type
   + application/octet-stream

Added: Zope3/trunk/src/zope/app/boston/slots/toggle.zcml
===================================================================
--- Zope3/trunk/src/zope/app/boston/slots/toggle.zcml	2005-03-07 23:53:29 UTC (rev 29412)
+++ Zope3/trunk/src/zope/app/boston/slots/toggle.zcml	2005-03-07 23:54:08 UTC (rev 29413)
@@ -0,0 +1,36 @@
+<configure
+    xmlns:zope="http://namespaces.zope.org/zope"
+    xmlns="http://namespaces.zope.org/browser"
+    i18n_domain="tiks">
+
+  <configure package="zope.app.skintools.javascripts.toggle.browser">
+    <pagelet
+        for="*"
+        slot="zope.app.boston.slots.IJavaScript" 
+        name="toggle"
+        permission="zope.Public"
+        template="javascript.pt"
+        layer="zope.app.boston.boston"
+        />
+
+    <resource 
+        name="toggle.js"
+        file="toggle.js"
+        layer="zope.app.boston.boston"
+        />
+  </configure>
+
+  <!-- toggle img -->
+  <resource 
+      name="collapse.gif"
+      file="img/collapse.gif"
+      layer="zope.app.boston.boston"
+      />
+  
+  <resource 
+      name="expand.gif"
+      file="img/expand.gif"
+      layer="zope.app.boston.boston"
+      />
+
+</configure>
\ No newline at end of file


Property changes on: Zope3/trunk/src/zope/app/boston/slots/toggle.zcml
___________________________________________________________________
Name: svn:eol-style
   + native

Added: Zope3/trunk/src/zope/app/boston/slots/toolbar.zcml
===================================================================
--- Zope3/trunk/src/zope/app/boston/slots/toolbar.zcml	2005-03-07 23:53:29 UTC (rev 29412)
+++ Zope3/trunk/src/zope/app/boston/slots/toolbar.zcml	2005-03-07 23:54:08 UTC (rev 29413)
@@ -0,0 +1,27 @@
+<configure
+    xmlns:zope="http://namespaces.zope.org/zope"
+    xmlns="http://namespaces.zope.org/browser"
+    i18n_domain="tiks">
+
+  <configure package="zope.app.skintools.toolbar.browser">
+    <pagelet
+        for="*"
+        slot="zope.app.boston.slots.IToolBar" 
+        name="toolbar"
+        permission="zope.Public"
+        template="toolbar.pt"
+        layer="zope.app.boston.boston"
+        weight="1"
+        />
+
+    <pagelet
+        name="toolbar_layout"
+        for="*"
+        slot="zope.app.skintools.toolbar.IToolBarLayout"
+        permission="zope.ManageContent"
+        template="toolbar_layout.pt"
+        layer="zope.app.boston.boston"
+        />
+  </configure>
+
+</configure>
\ No newline at end of file


Property changes on: Zope3/trunk/src/zope/app/boston/slots/toolbar.zcml
___________________________________________________________________
Name: svn:eol-style
   + native

Added: Zope3/trunk/src/zope/app/boston/slots/tooltipbox.zcml
===================================================================
--- Zope3/trunk/src/zope/app/boston/slots/tooltipbox.zcml	2005-03-07 23:53:29 UTC (rev 29412)
+++ Zope3/trunk/src/zope/app/boston/slots/tooltipbox.zcml	2005-03-07 23:54:08 UTC (rev 29413)
@@ -0,0 +1,27 @@
+<configure
+    xmlns:zope="http://namespaces.zope.org/zope"
+    xmlns="http://namespaces.zope.org/browser"
+    i18n_domain="zope">
+
+  <configure package="zope.app.skintools.tooltipbox.browser">
+    <pagelet
+        name="tooltipbox"
+        for="zope.app.container.interfaces.IWriteContainer"
+        slot="zope.app.boston.slots.ILeft"
+        permission="zope.ManageContent"
+        template="tooltipbox.pt"
+        layer="zope.app.boston.boston"
+        weight="2"
+        />
+  </configure>
+
+  <pagelet
+      name="tooltipbox_layout"
+      for="*"
+      slot="zope.app.skintools.tooltipbox.IToolTipBoxLayout"
+      permission="zope.ManageContent"
+      template="tooltipbox_layout.pt"
+      layer="zope.app.boston.boston"
+      />
+
+</configure>
\ No newline at end of file


Property changes on: Zope3/trunk/src/zope/app/boston/slots/tooltipbox.zcml
___________________________________________________________________
Name: svn:eol-style
   + native

Added: Zope3/trunk/src/zope/app/boston/slots/tooltipbox_layout.pt
===================================================================
--- Zope3/trunk/src/zope/app/boston/slots/tooltipbox_layout.pt	2005-03-07 23:53:29 UTC (rev 29412)
+++ Zope3/trunk/src/zope/app/boston/slots/tooltipbox_layout.pt	2005-03-07 23:54:08 UTC (rev 29413)
@@ -0,0 +1,29 @@
+<html>
+<body>
+
+<metal:block define-macro="tooltipbox_layout">
+	<div class="slotbox" id="tooltipbox">
+		<div class="header"> 
+
+			<img id="arrowToolTipBox" class="icon" style="cursor:hand" 
+					 onClick="javascript:toggle(document.getElementById('arrowToolTipBox'), 'tooltipboxToggle')"
+					 border="0" src="collapse.gif" width="16" height="16"
+					 tal:attributes="src context/++resource++collapse.gif">
+	
+			<metal:block define-slot="header">
+				This text will be replace by the content of the pagelet.
+			</metal:block>
+	
+		</div>
+		<div class="toggle body" id="tooltipboxToggle">
+	
+			<metal:block define-slot="body">
+				This text will be replace by the content of the pagelet.
+			</metal:block>
+	
+		</div>
+	</div>
+</metal:block>
+
+</body>
+</html>


Property changes on: Zope3/trunk/src/zope/app/boston/slots/tooltipbox_layout.pt
___________________________________________________________________
Name: svn:eol-style
   + native

Added: Zope3/trunk/src/zope/app/boston/slots/zmicookietreebox.zcml
===================================================================
--- Zope3/trunk/src/zope/app/boston/slots/zmicookietreebox.zcml	2005-03-07 23:53:29 UTC (rev 29412)
+++ Zope3/trunk/src/zope/app/boston/slots/zmicookietreebox.zcml	2005-03-07 23:54:08 UTC (rev 29413)
@@ -0,0 +1,53 @@
+<configure
+    xmlns:zope="http://namespaces.zope.org/zope"
+    xmlns="http://namespaces.zope.org/browser"
+    i18n_domain="zope">
+
+  <configure package="zope.app.skintools.zmicookietreebox.browser">
+  <pagelet
+      name="zmicookietreebox"
+      for="*"
+      slot="zope.app.boston.slots.ILeft"
+      permission="zope.View"
+      template="zmicookietreebox.pt"
+      layer="zope.app.boston.boston"
+      weight="0"
+      />
+  </configure>
+
+  <pagelet
+      name="zmicookietreebox_layout"
+      for="*"
+      slot="zope.app.skintools.zmicookietreebox.IZMICookieTreeBoxLayout"
+      permission="zope.ManageContent"
+      template="zmicookietreebox_layout.pt"
+      layer="zope.app.boston.boston"
+      />
+
+  <configure package="zope.app.tree.browser">
+    <pages
+        for="*"
+        class=".cookie.CookieTreeView"
+        permission="zope.View"
+        layer="zope.app.boston.boston"
+        >
+      <page
+          name="cookie_tree"
+          attribute="cookieTree"
+          />
+      <page
+          name="folder_cookie_tree"
+          attribute="folderTree"
+          />
+      <page
+          name="site_cookie_tree"
+          attribute="siteTree"
+          />
+      <page
+          name="root_cookie_tree"
+          attribute="rootTree"
+          />
+    </pages>
+  </configure>
+
+</configure>


Property changes on: Zope3/trunk/src/zope/app/boston/slots/zmicookietreebox.zcml
___________________________________________________________________
Name: svn:eol-style
   + native

Added: Zope3/trunk/src/zope/app/boston/slots/zmicookietreebox_layout.pt
===================================================================
--- Zope3/trunk/src/zope/app/boston/slots/zmicookietreebox_layout.pt	2005-03-07 23:53:29 UTC (rev 29412)
+++ Zope3/trunk/src/zope/app/boston/slots/zmicookietreebox_layout.pt	2005-03-07 23:54:08 UTC (rev 29413)
@@ -0,0 +1,29 @@
+<html>
+<body>
+
+<metal:block define-macro="zmicookietreebox_layout">
+	<div class="slotbox" id="zmicookietreebox">
+		<div class="header"> 
+
+			<img id="arrowZMICookieTreeBox" class="icon" style="cursor:hand" 
+					 onClick="javascript:toggle(document.getElementById('arrowZMICookieTreeBox'), 'zmicookietreeboxToggle')"
+					 border="0" src="collapse.gif" width="16" height="16"
+					 tal:attributes="src context/++resource++collapse.gif">
+	
+			<metal:block define-slot="header">
+				This text will be replace by the content of the pagelet.
+			</metal:block>
+	
+		</div>
+		<div class="toggle treebody" id="zmicookietreeboxToggle">
+	
+			<metal:block define-slot="body">
+				This text will be replace by the content of the pagelet.
+			</metal:block>
+	
+		</div>
+	</div>
+</metal:block>
+
+</body>
+</html>


Property changes on: Zope3/trunk/src/zope/app/boston/slots/zmicookietreebox_layout.pt
___________________________________________________________________
Name: svn:eol-style
   + native



More information about the Zope3-Checkins mailing list