[Checkins] SVN: zope.app.form/trunk/ Avoid the ``zope.app.basicskin`` dependency, by defining our own FormMacros.
Hanno Schlichting
hannosch at hannosch.eu
Thu Dec 17 15:20:06 EST 2009
Log message for revision 106713:
Avoid the ``zope.app.basicskin`` dependency, by defining our own FormMacros.
Changed:
U zope.app.form/trunk/CHANGES.txt
U zope.app.form/trunk/setup.py
U zope.app.form/trunk/src/zope/app/form/browser/macros.py
-=-
Modified: zope.app.form/trunk/CHANGES.txt
===================================================================
--- zope.app.form/trunk/CHANGES.txt 2009-12-17 20:05:16 UTC (rev 106712)
+++ zope.app.form/trunk/CHANGES.txt 2009-12-17 20:20:06 UTC (rev 106713)
@@ -2,12 +2,11 @@
CHANGES
=======
-3.9.1 (unreleased)
-==================
+3.10.0 (unreleased)
+===================
-- Nothing changed yet.
+- Avoid the ``zope.app.basicskin`` dependency, by defining our own FormMacros.
-
3.9.0 (2009-10-08)
==================
Modified: zope.app.form/trunk/setup.py
===================================================================
--- zope.app.form/trunk/setup.py 2009-12-17 20:05:16 UTC (rev 106712)
+++ zope.app.form/trunk/setup.py 2009-12-17 20:20:06 UTC (rev 106713)
@@ -27,7 +27,7 @@
return open(os.path.join(os.path.dirname(__file__), *rnames)).read()
setup(name='zope.app.form',
- version = '3.9.1dev',
+ version = '3.10.0dev',
author='Zope Corporation and Contributors',
author_email='zope-dev at zope.org',
description='The Original Zope 3 Form Framework',
@@ -88,7 +88,6 @@
"zope.publisher",
"zope.schema>=3.5.1dev",
"zope.security",
- "zope.app.basicskin",
],
include_package_data = True,
zip_safe = False,
Modified: zope.app.form/trunk/src/zope/app/form/browser/macros.py
===================================================================
--- zope.app.form/trunk/src/zope/app/form/browser/macros.py 2009-12-17 20:05:16 UTC (rev 106712)
+++ zope.app.form/trunk/src/zope/app/form/browser/macros.py 2009-12-17 20:20:06 UTC (rev 106713)
@@ -17,9 +17,31 @@
"""
__docformat__ = 'restructuredtext'
-from zope.app.basicskin.standardmacros import StandardMacros
+from zope.component import getMultiAdapter
+from zope.interface import implements
+from zope.interface.common.mapping import IItemMapping
+from zope.publisher.browser import BrowserView
+class FormMacros(BrowserView):
+ implements(IItemMapping)
-class FormMacros(StandardMacros):
-
macro_pages = ('widget_macros', 'addform_macros')
+ aliases = {
+ 'view': 'page',
+ 'dialog': 'page',
+ 'addingdialog': 'page'
+ }
+
+ def __getitem__(self, key):
+ key = self.aliases.get(key, key)
+ context = self.context
+ request = self.request
+ for name in self.macro_pages:
+ page = getMultiAdapter((context, request), name=name)
+ try:
+ v = page[key]
+ except KeyError:
+ pass
+ else:
+ return v
+ raise KeyError(key)
More information about the checkins
mailing list