[Zope-CMF] ?is the class definition of CMFCatalogAware incorrect in SkinnedFolder

Tim Hoffman timhoffman@cams.wa.gov.au
12 Sep 2002 16:29:10 +0800


Hi

I am playing with some mixin classes that I want all CMF content types
to use (I am experimenting further with Unique ID's for content)

I am working with CMF 1.3

In CMFCore,  PortalFolder inherits from DynamicType, CMFCatalogAware and
Folder, 

Where as CMFDefault.SkinnedFolder on the other hand inherits from 
CMFCatalogAware then PortalFolder.

Now I have to ask why is CMFCatalogAware being respecified in
PortalSkinnedFolder? I believe that this is a hold over from pre CMF 1.3
(ie CMF 1.2) when PortalFolder only inherited from Folder and
DynamicType. So catalog awareness in SkinnedFolder needed
CMFCatalogAware.

The current arrangement causes problems if one wants to modify the 
PortalFolder implementation, as CMFCatalogAware defines manage_afterAdd,
manage_afterClone etc and if one is trying to change these behaviours 
in a portalFolder (ie create each of these methods then call the method
in the new mixin class and in CMFCatalogAware) that is all well and good
except that SkinnedFolder inherits from CMFCatalogAware before
PortalFolder so this new behaviour in PortalFolder is hidden, from
SkinnedFolder 

It would seem that SkinnedFolder should just be inheriting from
PortalFolder.

I believe what I am saying is correct, but can anyone confirm what I
believe to be true, then I will lodge a collector on it.

Regards

Tim Hoffman