On Jun 18, 2008, at 1:44 PM, Malthe Borch wrote:
Martijn Faassen wrote:
There's one major problem that I see. What's the backwards compatibility story? I'm sure there are a lot of cases in lots of code where people look up views with a getMultiAdapter, and if we started registering views differently, wouldn't that code break? How to we get from A to B?
It deserves consideration, but I don't think code will be prone to break since we're merely providing more information to lookup a view component, not less.
Exactly. The interface passed to getMultiAdapter or queryMultiAdapter is a minimum requirement. Making views provide IView won't stop them from providing Interface, which is the default. On a somewhat related matter, it would be great if the browser:page ZCML directive could be augmented to have a provides= attribute, so that even more specific categories of views can be marked. E.g. for Malthe's Collage add-on for Plone, which does page compositing, we want to look up a named view on an object, but only if the view provides ICollageView. David Glick Project Associate ONE/Northwest New tools and strategies for engaging people in protecting the environment http://www.onenw.org davidglick@onenw.org (206) 286-1235 x32 Subscribe to ONEList, our email newsletter! Practical advice for effective online engagement http://www.onenw.org/full_signup