On 7-Oct-2008, Michael Goffioul wrote:
| While we're talking about __go_delete__, does anybody
| remember what was the idea behind removing an object
| from its parent's children in __go_delete__, instead of
| gh_manager::free? This makes life slighlty more complex
| if you want to delete an object from C++, where you would
| typically use gh_manager::free, but you then have to remove
| the child manually from its parent's children.
|
| I don't think I wrote that part of the code, and I can't figure
| out why it is written that way.
It's likely that I wrote it, and I assumed that a call to the delete
function should remove the handle from its parent's list of children.
Is that not what should happen? If not, then what should happen?
For
example, what does Matlab do for
h = line (); get (gca (), 'children'), delete (h); get (gca (),
'children')
? Shouldn't the children of the current axes be empty after H is
deleted? If that doesn't happen automatically in the delete
function,
then how does it happen?