"Phillip J. Eby" wrote:
> This would explain why you only get a change event, since if add happens
> after change, it is ignored.  I'm curious how the change event is getting
> called first, since...  Oh.  I'll bet I know what it is.  It's probably
> that manage_afterAdd is being called later in the ObjectManager code than
> it used to be, and/or Zope is trying to set an _owner attribute on the
> newly added object.  Crap.  This is going to take some rethinking to find
> another way to trap the Zope "add" event.  :(

Is this a way around the problem, or am I only seeing half the picture
:-) ?

You could have a flag in DataSkin instances called _has_been_added. It
is initially cleared. It gets set when manage_afterAdd is called on it.

The DataSkin sends an _objectChanging event only if the _has_been_added
flag is set.

Steve Alexander
Software Engineer
Cat-Box limited

Zope-Dev maillist  -  [EMAIL PROTECTED]
**  No cross posts or HTML encoding!  **
(Related lists - 
 http://lists.zope.org/mailman/listinfo/zope )

Reply via email to