def _find_by_id(self, obj_id): ret = InteractiveObject._find_by_id(self, obj_id) if not ret: for c in self._children: ret = c._find_by_id(obj_id) if ret is not None: break return ret
def _broadcast(self, e): if self._children: chcopy = self._children[:] for c in chcopy: c._broadcast(e) InteractiveObject._broadcast(self, e)
def __init__(self, name=None): InteractiveObject.__init__(self, name) self._children = []
def clear(self): InteractiveObject.clear(self) self.removeAllChildren()
def _on_removed(self, obj, wasonstage): InteractiveObject._on_removed(self, obj, wasonstage) for c in self._children: c._on_removed(obj, wasonstage)
def _on_added(self, obj, isonstage): InteractiveObject._on_added(self, obj, isonstage) for c in self._children: c._on_added(obj, isonstage)
def _get_objects_under_point(self, p, result): InteractiveObject._get_objects_under_point(self, p, result) for c in self._children: c._get_objects_under_point(p, result)