Enlightenment CVS committal Author : barbieri Project : e17 Module : proto/python-efl
Dir : e17/proto/python-efl/python-evas/evas Modified Files: evas.c_evas.pxd evas.c_evas_object_smart.pxi Log Message: Fix circular reference, have Factory to add Text as member =================================================================== RCS file: /cvs/e/e17/proto/python-efl/python-evas/evas/evas.c_evas.pxd,v retrieving revision 1.10 retrieving revision 1.11 diff -u -3 -r1.10 -r1.11 --- evas.c_evas.pxd 24 Jul 2007 14:20:07 -0000 1.10 +++ evas.c_evas.pxd 22 Aug 2007 14:29:54 -0000 1.11 @@ -624,14 +624,6 @@ cdef object _m_color_set cdef object _m_clip_set cdef object _m_clip_unset - cdef object _m_old_delete - cdef object _m_old_move - cdef object _m_old_resize - cdef object _m_old_show - cdef object _m_old_hide - cdef object _m_old_color_set - cdef object _m_old_clip_set - cdef object _m_old_clip_unset cdef class Rectangle(Object): =================================================================== RCS file: /cvs/e/e17/proto/python-efl/python-evas/evas/evas.c_evas_object_smart.pxi,v retrieving revision 1.11 retrieving revision 1.12 diff -u -3 -r1.11 -r1.12 --- evas.c_evas_object_smart.pxi 9 Aug 2007 15:59:28 -0000 1.11 +++ evas.c_evas_object_smart.pxi 22 Aug 2007 14:29:54 -0000 1.12 @@ -10,16 +10,30 @@ cdef SmartObject obj obj = <SmartObject>Object_from_instance(o) if obj._m_delete is not None: - obj._m_delete(obj) + try: + obj._m_delete(obj) + except Exception, e: + import traceback + traceback.print_exc() + + del obj.delete + del obj.move + del obj.resize + del obj.show + del obj.hide + del obj.color_set + del obj.clip_set + del obj.clip_unset + obj._smart_callbacks = None - obj.delete = obj._m_old_delete - obj.move = obj._m_old_move - obj.resize = obj._m_old_resize - obj.show = obj._m_old_show - obj.hide = obj._m_old_hide - obj.color_set = obj._m_old_color_set - obj.clip_set = obj._m_old_clip_set - obj.clip_unset = obj._m_old_clip_unset + obj._m_delete = None + obj._m_move = None + obj._m_resize = None + obj._m_show = None + obj._m_hide = None + obj._m_color_set = None + obj._m_clip_set = None + obj._m_clip_unset = None cdef void _smart_object_move(Evas_Object *o, Evas_Coord x, Evas_Coord y): @@ -207,35 +221,27 @@ def __new__(self, *a, **ka): self._smart_callbacks = dict() cls = self.__class__ - self._m_old_delete = self.delete self._m_delete = _smart_class_get_impl_method(cls, "delete") if self._m_delete is not None: self.delete = python.PyMethod_New(Object.delete, self, cls) - self._m_old_move = self.move self._m_move = _smart_class_get_impl_method(cls, "move") if self._m_move is not None: self.move = python.PyMethod_New(Object.move, self, cls) - self._m_old_resize = self.resize self._m_resize = _smart_class_get_impl_method(cls, "resize") if self._m_resize is not None: self.resize = python.PyMethod_New(Object.resize, self, cls) - self._m_old_show = self.show self._m_show = _smart_class_get_impl_method(cls, "show") if self._m_show is not None: self.show = python.PyMethod_New(Object.show, self, cls) - self._m_old_hide = self.hide self._m_hide = _smart_class_get_impl_method(cls, "hide") if self._m_hide is not None: self.hide = python.PyMethod_New(Object.hide, self, cls) - self._m_old_color_set = self.color_set self._m_color_set = _smart_class_get_impl_method(cls, "color_set") if self._m_color_set is not None: self.color_set = python.PyMethod_New(Object.color_set, self, cls) - self._m_old_clip_set = self.clip_set self._m_clip_set = _smart_class_get_impl_method(cls, "clip_set") if self._m_clip_set is not None: self.clip_set = python.PyMethod_New(Object.clip_set, self, cls) - self._m_old_clip_unset = self.clip_unset self._m_clip_unset = _smart_class_get_impl_method(cls, "clip_unset") if self._m_clip_unset is not None: self.clip_unset = python.PyMethod_New(Object.clip_unset, self, cls) @@ -378,4 +384,5 @@ glow_color=glow_color, glow2_color=glow2_color, outline_color=outline_color, size=size, pos=pos, geometry=geometry, color=color, name=name) + self.member_add(obj) return obj ------------------------------------------------------------------------- This SF.net email is sponsored by: Splunk Inc. Still grepping through log files to find problems? Stop. Now Search log events and configuration files using AJAX and a browser. Download your FREE copy of Splunk now >> http://get.splunk.com/ _______________________________________________ enlightenment-cvs mailing list enlightenment-cvs@lists.sourceforge.net https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs