On 5/14/09 6:36 PM, Hanno Schlichting wrote: > Chris McDonough wrote: >> I did a bit of research on the direct "zope.app.*" dependencies of >> zope.formlib. >> >> - I looked into its dependency on zope.app.pagetemplate. >> It defines two "named templates" in its form.py module using >> The ViewPageTemplateFile class from zope.app.pagetemplate. >> Each is registered in its configure.zcml as adapter with the >> name "default". I don't have enough zen to know what the intent >> is here or whether the named templates could use >> zope.pagetemplate instead. > > This is part of the whole named template adapter story. The rationale > for the whole story is to be able to replace the template of a view > without touching the view. So the template is looked up as an adapter > and not just accessed as self.index / self.template. Personally I find > the whole feature just annoying and overcomplicated. I think the whole > feature is due for removal. It's only used in a very minor number of > cases and not consistently with views in general. > >> - I looked into its dependency on zope.app.form. It >> essentially uses a bunch of interfaces from the >> zope.app.form.interfaces package. I don't know whether it >> would be reasonable to move all those interfaces >> to zope.browser or somewhere else, but essentially >> moving those interfaces to somewhere "neutral" >> would break this particular dependency. > > Why not move the interfaces to zope.formlib and invert the dependency, > so zope.app.form depends on zope.formlib? Or are these generally useful > outside of a formlib context?
That's possible. A Google search indicates that zope.app.form.interfaces is being used by: - zope.formlib - schooltool - plone (maybe) - alchemist - sputnik (an openplans project) - collective.easyslider - zc.extjs - zenoss - alphaflow It's also apparently documented in Phillip's book. So... what? Errrr... I dunno. The interfaces are: from zope.app.form.interfaces import IInputWidget, IDisplayWidget from zope.app.form.interfaces import InputErrors, WidgetInputError from zope.app.form.browser.interfaces import IWidgetImportErrorView Any thoughts? - C _______________________________________________ Zope-Dev maillist - Zope-Dev@zope.org http://mail.zope.org/mailman/listinfo/zope-dev ** No cross posts or HTML encoding! ** (Related lists - http://mail.zope.org/mailman/listinfo/zope-announce http://mail.zope.org/mailman/listinfo/zope )