Eo composite: change composite objects to not be tied to parent
authorTom Hacohen <tom@stosb.com>
Thu, 5 May 2016 15:08:08 +0000 (16:08 +0100)
committerTom Hacohen <tom@stosb.com>
Thu, 5 May 2016 15:45:12 +0000 (16:45 +0100)
commit537b138a2328008c16cf54401dc442bd6c8d11c5
tree525c571f79524bb6fac6dd32f84b12453b601c5d
parent9d5caf00b624b149b01fc689f3e16c2ff3469335
Eo composite: change composite objects to not be tied to parent

This commit breaks behaviour!
Re-parenting no longer detaches composite objects, so watch out.

Now you can have an object be a composite object of an object although
it's not its child. This allows widgets to do things like having an
object as the child of a child object while still making it a composite
object to the main object.

With this change, composite objects don't keep a reference to the child,
but instead composite "bonds" are implicitly removed when either the
parent or the child are destructed.
src/lib/eo/eo_base_class.c
src/lib/eo/eo_private.h
src/tests/eo/suite/eo_test_general.c