Josh Zeidner wrote:
Hmm... possibly I did not explain my needs :
What I need to do is manipulate the attribute of a "folderish" object ( ie. an object that can contain other objects ) that determines what objects are allowed to be contained by my object. I need to do this at instantiation time , *NOT* definition time.
That is what I was targeting -- I guess my implementation wasn't limpidly transparent.
I seemed to have accomplished this by manipulating the "meta_types" attribute... but is this a valid way to attain this behavior?
That is a more straightforward option than I proposed below -- my code _filters_ the available meta_types based on a tokens/list instance property -- the catch is that you have to replace the standard "contents" view in order to get my code used (I am not really changing what _could_ be added; I merely change the list presented to the user.) Munging the meta_types attribute is actually an interesting idea -- "normal" Python product objects have the meta_types attribute as a class member; so in fact, you are "hiding" the class member when you assign to the instance attribute. If you ever want to "recover to original," you should be able to just "del self.meta_types" hand have it reappear, presto-changeo. Glad you found a solution. Tres. -- ========================================================= Tres Seaver tseaver@palladion.com 713-523-6582 Palladion Software http://www.palladion.com