[Checkins] SVN: z3c.cssresource/trunk/src/z3c/cssresource/ The resource directive is more annoying than I thought. So provide a

Stephan Richter srichter at cosmos.phy.tufts.edu
Mon Aug 14 14:21:57 EDT 2006


Log message for revision 69490:
  The resource directive is more annoying than I thought. So provide a 
  custom directive until we fix the default resource directive.
  

Changed:
  A   z3c.cssresource/trunk/src/z3c/cssresource/SETUP.cfg
  A   z3c.cssresource/trunk/src/z3c/cssresource/meta.zcml
  A   z3c.cssresource/trunk/src/z3c/cssresource/z3c.cssresource-meta.zcml
  A   z3c.cssresource/trunk/src/z3c/cssresource/zcml.py

-=-
Added: z3c.cssresource/trunk/src/z3c/cssresource/SETUP.cfg
===================================================================
--- z3c.cssresource/trunk/src/z3c/cssresource/SETUP.cfg	2006-08-14 18:16:38 UTC (rev 69489)
+++ z3c.cssresource/trunk/src/z3c/cssresource/SETUP.cfg	2006-08-14 18:21:57 UTC (rev 69490)
@@ -0,0 +1,3 @@
+<data-files zopeskel/etc/package-includes>
+  z3c.cssresource-*.zcml
+</data-files>

Added: z3c.cssresource/trunk/src/z3c/cssresource/meta.zcml
===================================================================
--- z3c.cssresource/trunk/src/z3c/cssresource/meta.zcml	2006-08-14 18:16:38 UTC (rev 69489)
+++ z3c.cssresource/trunk/src/z3c/cssresource/meta.zcml	2006-08-14 18:21:57 UTC (rev 69490)
@@ -0,0 +1,15 @@
+<configure
+    xmlns="http://namespaces.zope.org/zope"
+    xmlns:meta="http://namespaces.zope.org/meta">
+
+  <meta:directives namespace="http://namespaces.zope.org/browser">
+
+    <meta:directive
+        name="css-resource"
+        schema=".zcml.ICSSResourceDirective"
+        handler=".zcml.cssresource"
+        />
+
+  </meta:directives>
+
+</configure>


Property changes on: z3c.cssresource/trunk/src/z3c/cssresource/meta.zcml
___________________________________________________________________
Name: svn:eol-style
   + native

Added: z3c.cssresource/trunk/src/z3c/cssresource/z3c.cssresource-meta.zcml
===================================================================
--- z3c.cssresource/trunk/src/z3c/cssresource/z3c.cssresource-meta.zcml	2006-08-14 18:16:38 UTC (rev 69489)
+++ z3c.cssresource/trunk/src/z3c/cssresource/z3c.cssresource-meta.zcml	2006-08-14 18:21:57 UTC (rev 69490)
@@ -0,0 +1 @@
+<include package="z3c.cssresource" file="meta.zcml" />


Property changes on: z3c.cssresource/trunk/src/z3c/cssresource/z3c.cssresource-meta.zcml
___________________________________________________________________
Name: svn:eol-style
   + native

Added: z3c.cssresource/trunk/src/z3c/cssresource/zcml.py
===================================================================
--- z3c.cssresource/trunk/src/z3c/cssresource/zcml.py	2006-08-14 18:16:38 UTC (rev 69489)
+++ z3c.cssresource/trunk/src/z3c/cssresource/zcml.py	2006-08-14 18:21:57 UTC (rev 69490)
@@ -0,0 +1,60 @@
+##############################################################################
+#
+# Copyright (c) 2001, 2002 Zope Foundation 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.
+#
+##############################################################################
+"""Meta Configure
+
+$Id$
+"""
+import zope.schema
+import zope.configuration.fields
+from zope.component.zcml import handler
+from zope.interface import Interface
+from zope.publisher.interfaces.browser import IDefaultBrowserLayer
+from zope.app.publisher.browser import metadirectives
+
+from z3c.cssresource import cssresource
+
+
+class ICSSResourceDirective(metadirectives.IBasicResourceInformation):
+    """Defines a browser CSS resource"""
+
+    name = zope.schema.TextLine(
+        title=u"The name of the resource",
+        description=u"""
+        This is the name used in resource urls. Resource urls are of
+        the form site/@@/resourcename, where site is the url of
+        "site", a folder with a site manager.
+
+        We make resource urls site-relative (as opposed to
+        content-relative) so as not to defeat caches.""",
+        required=True
+        )
+
+    file = zope.configuration.fields.Path(
+        title=u"File",
+        description=u"The file containing the resource data.",
+        required=True
+        )
+
+
+def cssresource(_context, name, file, layer=IDefaultBrowserLayer,
+                permission='zope.Public'):
+
+    factory = cssresource.CSSFileResourceFactory(file, checker, name)
+
+    _context.action(
+        discriminator = ('resource', name, IBrowserRequest, layer),
+        callable = handler,
+        args = ('registerAdapter',
+                factory, (layer,), Interface, name, _context.info),
+        )


Property changes on: z3c.cssresource/trunk/src/z3c/cssresource/zcml.py
___________________________________________________________________
Name: svn:keywords
   + Id



More information about the Checkins mailing list