Evas: Use cpdef for making internal calls faster, small performance

optimizations.
This commit is contained in:
Kai Huuhko 2013-04-03 22:47:16 +00:00
parent 18ecef1c2e
commit aa72b5f273
2 changed files with 130 additions and 128 deletions

View File

@ -35,7 +35,7 @@ cdef int _object_unregister_callbacks(Object obj) except 0:
cb = evas_object_event_callbacks[i] cb = evas_object_event_callbacks[i]
evas_object_event_callback_del(o, i, cb) evas_object_event_callback_del(o, i, cb)
evas_object_event_callback_del(o, EVAS_CALLBACK_FREE, obj_free_cb) evas_object_event_callback_del(o, enums.EVAS_CALLBACK_FREE, obj_free_cb)
return 1 return 1
@ -43,7 +43,7 @@ cdef void obj_free_cb(void *data, Evas *e,
Evas_Object *obj, void *event_info) with gil: Evas_Object *obj, void *event_info) with gil:
cdef Object self = <Object>data cdef Object self = <Object>data
lst = self._callbacks[EVAS_CALLBACK_FREE] lst = self._callbacks[enums.EVAS_CALLBACK_FREE]
if lst is not None: if lst is not None:
for func, args, kargs in lst: for func, args, kargs in lst:
try: try:
@ -168,49 +168,41 @@ cdef class Object(Eo):
# #
def __str__(self): def __str__(self):
cdef: cdef:
int x, y, w, h
int r, g, b, a
str name = self.name_get() str name = self.name_get()
bint clip bint clip
tuple g = self.geometry_get()
tuple c = self.color_get()
x, y, w, h = self.geometry_get() name_str = "name=%s, " % name if name is not None else ""
r, g, b, a = self.color_get()
if name is not None:
name_str = "name=%s, " % name
else:
name_str = ""
clip = self.clip_get() is not None clip = self.clip_get() is not None
return ("%s(%sgeometry=(%d, %d, %d, %d), color=(%d, %d, %d, %d), " return ("%s(%sgeometry=(%d, %d, %d, %d), color=(%d, %d, %d, %d), "
"layer=%s, clip=%s, visible=%s)") % \ "layer=%s, clip=%s, visible=%s)") % \
(type(self).__name__, name_str, x, y, w, h, (type(self).__name__, name_str,
r, g, b, a, self.layer_get(), clip, self.visible_get()) g[0], g[1], g[2], g[3],
c[0], c[1], c[2], c[3],
self.layer_get(), clip, self.visible_get())
def __repr__(self): def __repr__(self):
cdef: cdef:
int x, y, w, h
int r, g, b, a
str name = self.name_get() str name = self.name_get()
bint clip bint clip
tuple g = self.geometry_get()
tuple c = self.color_get()
x, y, w, h = self.geometry_get() name_str = "name=%s, " % name if name is not None else ""
r, g, b, a = self.color_get()
if name: clip = self.clip_get() is not None
name_str = "name=%s, " % name
else:
name_str = ""
clip = bool(self.clip_get() is not None)
return ("%s %s(%sgeometry=(%d, %d, %d, %d), color=(%d, %d, %d, %d), " return ("%s %s(%sgeometry=(%d, %d, %d, %d), color=(%d, %d, %d, %d), "
"layer=%s, clip=%s, visible=%s)") % (Eo.__str__(self), "layer=%s, clip=%s, visible=%s)") % (Eo.__str__(self),
type(self).__name__, name_str, x, y, w, h, type(self).__name__, name_str,
r, g, b, a, self.layer_get(), clip, self.visible_get()) g[0], g[1], g[2], g[3],
c[0], c[1], c[2], c[3],
self.layer_get(), clip, self.visible_get())
cdef void _set_obj(self, Evas_Object *obj) except *: cdef void _set_obj(self, Evas_Object *obj) except *:
Eo._set_obj(self, obj) Eo._set_obj(self, obj)
evas_object_event_callback_add(obj, EVAS_CALLBACK_FREE, evas_object_event_callback_add(obj, enums.EVAS_CALLBACK_FREE,
obj_free_cb, <void *>self) obj_free_cb, <void *>self)
Py_INCREF(self) Py_INCREF(self)
@ -279,14 +271,14 @@ cdef class Object(Eo):
""" """
def __set__(self, int l): def __set__(self, int l):
evas_object_layer_set(self.obj, l) self.layer_set(l)
def __get__(self): def __get__(self):
return evas_object_layer_get(self.obj) return self.layer_get()
def layer_set(self, int layer): cpdef layer_set(self, int layer):
evas_object_layer_set(self.obj, layer) evas_object_layer_set(self.obj, layer)
def layer_get(self): cpdef layer_get(self):
return evas_object_layer_get(self.obj) return evas_object_layer_get(self.obj)
@ -370,22 +362,19 @@ cdef class Object(Eo):
:type: tuple of ints :type: tuple of ints
""" """
def __get__(self): # replicated to avoid performance hit def __get__(self):
cdef int x, y, w, h return self.geometry_get()
evas_object_geometry_get(self.obj, &x, &y, &w, &h)
return (x, y, w, h)
def __set__(self, spec): def __set__(self, spec):
cdef int x, y, w, h cdef int x, y, w, h
x, y, w, h = spec x, y, w, h = spec
evas_object_move(self.obj, x, y) self.geometry_set(x, y, w, h)
evas_object_resize(self.obj, w, h)
def geometry_get(self): cpdef geometry_get(self):
cdef int x, y, w, h cdef int x, y, w, h
evas_object_geometry_get(self.obj, &x, &y, &w, &h) evas_object_geometry_get(self.obj, &x, &y, &w, &h)
return (x, y, w, h) return (x, y, w, h)
def geometry_set(self, int x, int y, int w, int h): cpdef geometry_set(self, int x, int y, int w, int h):
evas_object_move(self.obj, x, y) evas_object_move(self.obj, x, y)
evas_object_resize(self.obj, w, h) evas_object_resize(self.obj, w, h)
@ -395,21 +384,19 @@ cdef class Object(Eo):
:type: tuple of ints :type: tuple of ints
""" """
def __get__(self): # replicated to avoid performance hit def __get__(self):
cdef int w, h return self.size_get()
evas_object_geometry_get(self.obj, NULL, NULL, &w, &h)
return (w, h)
def __set__(self, spec): def __set__(self, spec):
cdef int w, h cdef int w, h
w, h = spec w, h = spec
evas_object_resize(self.obj, w, h) self.size_set(w, h)
def size_get(self): cpdef size_get(self):
cdef int w, h cdef int w, h
evas_object_geometry_get(self.obj, NULL, NULL, &w, &h) evas_object_geometry_get(self.obj, NULL, NULL, &w, &h)
return (w, h) return (w, h)
def size_set(self, int w, int h): cpdef size_set(self, int w, int h):
evas_object_resize(self.obj, w, h) evas_object_resize(self.obj, w, h)
def resize(self, int w, int h): def resize(self, int w, int h):
@ -660,24 +647,32 @@ cdef class Object(Eo):
""" """
def __get__(self): # replicated to avoid performance hit def __get__(self): # replicated to avoid performance hit
cdef int x, y, w, h cdef int x, y, w, h, x2, y2
evas_object_geometry_get(self.obj, &x, &y, &w, &h) evas_object_geometry_get(self.obj, &x, &y, &w, &h)
return (x + w/2, y + h/2) x2 = x + w/2
y2 = y + h/2
return (x2, y2)
def __set__(self, spec): def __set__(self, spec):
cdef int x, y, w, h cdef int x, y, w, h, x2, y2
x, y = spec x, y = spec
evas_object_geometry_get(self.obj, NULL, NULL, &w, &h) evas_object_geometry_get(self.obj, NULL, NULL, &w, &h)
evas_object_move(self.obj, x - w/2, y - h/2) x2 = x - w/2
y2 = y - h/2
evas_object_move(self.obj, x2, y2)
def center_get(self): def center_get(self):
cdef int x, y, w, h cdef int x, y, w, h, x2, y2
evas_object_geometry_get(self.obj, &x, &y, &w, &h) evas_object_geometry_get(self.obj, &x, &y, &w, &h)
return (x + w/2, y + h/2) x2 = x + w/2
y2 = y + h/2
return (x2, y2)
def center_set(self, int x, int y): def center_set(self, int x, int y):
cdef int w, h cdef int w, h, x2, y2
evas_object_geometry_get(self.obj, NULL, NULL, &w, &h) evas_object_geometry_get(self.obj, NULL, NULL, &w, &h)
evas_object_move(self.obj, x - w/2, y - h/2) x2 = x - w/2
y2 = y - h/2
evas_object_move(self.obj, x2, y2)
property rect: property rect:
"""A rectangle representing the object's geometry. """A rectangle representing the object's geometry.
@ -934,9 +929,11 @@ cdef class Object(Eo):
Move relatively to current position. Move relatively to current position.
""" """
cdef int x, y cdef int x, y, x2, y2
evas_object_geometry_get(self.obj, &x, &y, NULL, NULL) evas_object_geometry_get(self.obj, &x, &y, NULL, NULL)
evas_object_move(self.obj, x + dx, y + dy) x2 = x + dx
y2 = y + dy
evas_object_move(self.obj, x2, y2)
def show(self): def show(self):
"""Show the object.""" """Show the object."""
@ -953,17 +950,14 @@ cdef class Object(Eo):
""" """
def __get__(self): def __get__(self):
return bool(evas_object_visible_get(self.obj)) return self.visible_get()
def __set__(self, spec): def __set__(self, spec):
if spec: self.visible_set(spec)
self.show()
else:
self.hide()
def visible_get(self): cpdef visible_get(self):
return bool(evas_object_visible_get(self.obj)) return bool(evas_object_visible_get(self.obj))
def visible_set(self, spec): cpdef visible_set(self, spec):
if spec: if spec:
self.show() self.show()
else: else:
@ -1029,17 +1023,16 @@ cdef class Object(Eo):
""" """
def __get__(self): def __get__(self):
cdef int r, g, b, a return self.color_get()
evas_object_color_get(self.obj, &r, &g, &b, &a)
return (r, g, b, a)
def __set__(self, color): def __set__(self, color):
cdef int r, g, b, a
r, g, b, a = color r, g, b, a = color
evas_object_color_set(self.obj, r, g, b, a) evas_object_color_set(self.obj, r, g, b, a)
def color_set(self, int r, int g, int b, int a): def color_set(self, int r, int g, int b, int a):
evas_object_color_set(self.obj, r, g, b, a) evas_object_color_set(self.obj, r, g, b, a)
def color_get(self): cpdef color_get(self):
cdef int r, g, b, a cdef int r, g, b, a
evas_object_color_get(self.obj, &r, &g, &b, &a) evas_object_color_get(self.obj, &r, &g, &b, &a)
return (r, g, b, a) return (r, g, b, a)
@ -1051,9 +1044,7 @@ cdef class Object(Eo):
""" """
def __get__(self): def __get__(self):
cdef Evas_Object *clip return self.clip_get()
clip = evas_object_clip_get(self.obj)
return object_from_instance(clip)
def __set__(self, value): def __set__(self, value):
cdef Evas_Object *clip cdef Evas_Object *clip
@ -1070,10 +1061,9 @@ cdef class Object(Eo):
def __del__(self): def __del__(self):
evas_object_clip_unset(self.obj) evas_object_clip_unset(self.obj)
def clip_get(self): cpdef clip_get(self):
cdef Evas_Object *clip return object_from_instance(evas_object_clip_get(self.obj))
clip = evas_object_clip_get(self.obj)
return object_from_instance(clip)
def clip_set(self, value): def clip_set(self, value):
cdef Evas_Object *clip cdef Evas_Object *clip
cdef Object o cdef Object o
@ -1085,13 +1075,11 @@ cdef class Object(Eo):
evas_object_clip_set(self.obj, clip) evas_object_clip_set(self.obj, clip)
else: else:
raise ValueError("clip must be evas.Object or None") raise ValueError("clip must be evas.Object or None")
def clip_unset(self): def clip_unset(self):
evas_object_clip_unset(self.obj) evas_object_clip_unset(self.obj)
property clipees: property clipees:
"""Objects that this object clips. """Objects that this object clips.
@ -1101,7 +1089,8 @@ cdef class Object(Eo):
def __get__(self): def __get__(self):
return self.clipees_get() return self.clipees_get()
def clipees_get(self): cpdef clipees_get(self):
# TODO: objects to python
cdef const_Eina_List *itr cdef const_Eina_List *itr
cdef Object o cdef Object o
ret = [] ret = []
@ -1119,16 +1108,14 @@ cdef class Object(Eo):
""" """
def __get__(self): def __get__(self):
return _ctouni(evas_object_name_get(self.obj)) return self.name_get()
def __set__(self, value): def __set__(self, value):
if isinstance(value, unicode): value = value.encode("UTF-8") self.name_set(value)
evas_object_name_set(self.obj,
<const_char *>value if value is not None else NULL)
def name_get(self): cpdef name_get(self):
return _ctouni(evas_object_name_get(self.obj)) return _ctouni(evas_object_name_get(self.obj))
def name_set(self, value): cpdef name_set(self, value):
if isinstance(value, unicode): value = value.encode("UTF-8") if isinstance(value, unicode): value = value.encode("UTF-8")
evas_object_name_set(self.obj, evas_object_name_set(self.obj,
<const_char *>value if value is not None else NULL) <const_char *>value if value is not None else NULL)
@ -1140,14 +1127,14 @@ cdef class Object(Eo):
""" """
def __get__(self): def __get__(self):
return bool(evas_object_focus_get(self.obj)) return self.focus_get()
def __set__(self, int value): def __set__(self, value):
evas_object_focus_set(self.obj, value) self.focus_set(value)
def focus_get(self): cpdef focus_get(self):
return bool(evas_object_focus_get(self.obj)) return bool(evas_object_focus_get(self.obj))
def focus_set(self, value): cpdef focus_set(self, value):
evas_object_focus_set(self.obj, value) evas_object_focus_set(self.obj, value)
def event_callback_add(self, Evas_Callback_Type type, func, *args, **kargs): def event_callback_add(self, Evas_Callback_Type type, func, *args, **kargs):
@ -1183,7 +1170,7 @@ cdef class Object(Eo):
raise TypeError("func must be callable") raise TypeError("func must be callable")
if _object_add_callback_to_list(self, type, func, args, kargs): if _object_add_callback_to_list(self, type, func, args, kargs):
if type != EVAS_CALLBACK_FREE: if type != enums.EVAS_CALLBACK_FREE:
cb = evas_object_event_callbacks[<int>type] cb = evas_object_event_callbacks[<int>type]
evas_object_event_callback_add(self.obj, type, cb, <void*>self) evas_object_event_callback_add(self.obj, type, cb, <void*>self)
@ -1205,7 +1192,7 @@ cdef class Object(Eo):
""" """
cdef Evas_Object_Event_Cb cb cdef Evas_Object_Event_Cb cb
if _object_del_callback_from_list(self, type, func): if _object_del_callback_from_list(self, type, func):
if type != EVAS_CALLBACK_FREE: if type != enums.EVAS_CALLBACK_FREE:
cb = evas_object_event_callbacks[<int>type] cb = evas_object_event_callbacks[<int>type]
evas_object_event_callback_del(self.obj, type, cb) evas_object_event_callback_del(self.obj, type, cb)
@ -1216,11 +1203,11 @@ cdef class Object(Eo):
function(object, event_info, *args, **kargs) function(object, event_info, *args, **kargs)
""" """
self.event_callback_add(EVAS_CALLBACK_MOUSE_IN, func, *a, **k) self.event_callback_add(enums.EVAS_CALLBACK_MOUSE_IN, func, *a, **k)
def on_mouse_in_del(self, func): def on_mouse_in_del(self, func):
"""Same as event_callback_del(EVAS_CALLBACK_MOUSE_IN, ...)""" """Same as event_callback_del(EVAS_CALLBACK_MOUSE_IN, ...)"""
self.event_callback_del(EVAS_CALLBACK_MOUSE_IN, func) self.event_callback_del(enums.EVAS_CALLBACK_MOUSE_IN, func)
def on_mouse_out_add(self, func, *a, **k): def on_mouse_out_add(self, func, *a, **k):
"""Same as event_callback_add(EVAS_CALLBACK_MOUSE_OUT, ...) """Same as event_callback_add(EVAS_CALLBACK_MOUSE_OUT, ...)
@ -1229,11 +1216,11 @@ cdef class Object(Eo):
function(object, event_info, *args, **kargs) function(object, event_info, *args, **kargs)
""" """
self.event_callback_add(EVAS_CALLBACK_MOUSE_OUT, func, *a, **k) self.event_callback_add(enums.EVAS_CALLBACK_MOUSE_OUT, func, *a, **k)
def on_mouse_out_del(self, func): def on_mouse_out_del(self, func):
"""Same as event_callback_del(EVAS_CALLBACK_MOUSE_OUT, ...)""" """Same as event_callback_del(EVAS_CALLBACK_MOUSE_OUT, ...)"""
self.event_callback_del(EVAS_CALLBACK_MOUSE_OUT, func) self.event_callback_del(enums.EVAS_CALLBACK_MOUSE_OUT, func)
def on_mouse_down_add(self, func, *a, **k): def on_mouse_down_add(self, func, *a, **k):
"""Same as event_callback_add(EVAS_CALLBACK_MOUSE_DOWN, ...) """Same as event_callback_add(EVAS_CALLBACK_MOUSE_DOWN, ...)
@ -1242,11 +1229,11 @@ cdef class Object(Eo):
function(object, event_info, *args, **kargs) function(object, event_info, *args, **kargs)
""" """
self.event_callback_add(EVAS_CALLBACK_MOUSE_DOWN, func, *a, **k) self.event_callback_add(enums.EVAS_CALLBACK_MOUSE_DOWN, func, *a, **k)
def on_mouse_down_del(self, func): def on_mouse_down_del(self, func):
"""Same as event_callback_del(EVAS_CALLBACK_MOUSE_DOWN, ...)""" """Same as event_callback_del(EVAS_CALLBACK_MOUSE_DOWN, ...)"""
self.event_callback_del(EVAS_CALLBACK_MOUSE_DOWN, func) self.event_callback_del(enums.EVAS_CALLBACK_MOUSE_DOWN, func)
def on_mouse_up_add(self, func, *a, **k): def on_mouse_up_add(self, func, *a, **k):
"""Same as event_callback_add(EVAS_CALLBACK_MOUSE_UP, ...) """Same as event_callback_add(EVAS_CALLBACK_MOUSE_UP, ...)
@ -1255,11 +1242,11 @@ cdef class Object(Eo):
function(object, event_info, *args, **kargs) function(object, event_info, *args, **kargs)
""" """
self.event_callback_add(EVAS_CALLBACK_MOUSE_UP, func, *a, **k) self.event_callback_add(enums.EVAS_CALLBACK_MOUSE_UP, func, *a, **k)
def on_mouse_up_del(self, func): def on_mouse_up_del(self, func):
"""Same as event_callback_del(EVAS_CALLBACK_MOUSE_UP, ...)""" """Same as event_callback_del(EVAS_CALLBACK_MOUSE_UP, ...)"""
self.event_callback_del(EVAS_CALLBACK_MOUSE_UP, func) self.event_callback_del(enums.EVAS_CALLBACK_MOUSE_UP, func)
def on_mouse_move_add(self, func, *a, **k): def on_mouse_move_add(self, func, *a, **k):
"""Same as event_callback_add(EVAS_CALLBACK_MOUSE_MOVE, ...) """Same as event_callback_add(EVAS_CALLBACK_MOUSE_MOVE, ...)
@ -1268,11 +1255,11 @@ cdef class Object(Eo):
function(object, event_info, *args, **kargs) function(object, event_info, *args, **kargs)
""" """
self.event_callback_add(EVAS_CALLBACK_MOUSE_MOVE, func, *a, **k) self.event_callback_add(enums.EVAS_CALLBACK_MOUSE_MOVE, func, *a, **k)
def on_mouse_move_del(self, func): def on_mouse_move_del(self, func):
"""Same as event_callback_del(EVAS_CALLBACK_MOUSE_MOVE, ...)""" """Same as event_callback_del(EVAS_CALLBACK_MOUSE_MOVE, ...)"""
self.event_callback_del(EVAS_CALLBACK_MOUSE_MOVE, func) self.event_callback_del(enums.EVAS_CALLBACK_MOUSE_MOVE, func)
def on_mouse_wheel_add(self, func, *a, **k): def on_mouse_wheel_add(self, func, *a, **k):
"""Same as event_callback_add(EVAS_CALLBACK_MOUSE_WHEEL, ...) """Same as event_callback_add(EVAS_CALLBACK_MOUSE_WHEEL, ...)
@ -1281,11 +1268,11 @@ cdef class Object(Eo):
function(object, event_info, *args, **kargs) function(object, event_info, *args, **kargs)
""" """
self.event_callback_add(EVAS_CALLBACK_MOUSE_WHEEL, func, *a, **k) self.event_callback_add(enums.EVAS_CALLBACK_MOUSE_WHEEL, func, *a, **k)
def on_mouse_wheel_del(self, func): def on_mouse_wheel_del(self, func):
"""Same as event_callback_del(EVAS_CALLBACK_MOUSE_WHEEL, ...)""" """Same as event_callback_del(EVAS_CALLBACK_MOUSE_WHEEL, ...)"""
self.event_callback_del(EVAS_CALLBACK_MOUSE_WHEEL, func) self.event_callback_del(enums.EVAS_CALLBACK_MOUSE_WHEEL, func)
def on_free_add(self, func, *a, **k): def on_free_add(self, func, *a, **k):
"""Same as event_callback_add(EVAS_CALLBACK_FREE, ...) """Same as event_callback_add(EVAS_CALLBACK_FREE, ...)
@ -1297,11 +1284,11 @@ cdef class Object(Eo):
function(object, *args, **kargs) function(object, *args, **kargs)
""" """
self.event_callback_add(EVAS_CALLBACK_FREE, func, *a, **k) self.event_callback_add(enums.EVAS_CALLBACK_FREE, func, *a, **k)
def on_free_del(self, func): def on_free_del(self, func):
"""Same as event_callback_del(EVAS_CALLBACK_FREE, ...)""" """Same as event_callback_del(EVAS_CALLBACK_FREE, ...)"""
self.event_callback_del(EVAS_CALLBACK_FREE, func) self.event_callback_del(enums.EVAS_CALLBACK_FREE, func)
def on_key_down_add(self, func, *a, **k): def on_key_down_add(self, func, *a, **k):
"""Same as event_callback_add(EVAS_CALLBACK_KEY_DOWN, ...) """Same as event_callback_add(EVAS_CALLBACK_KEY_DOWN, ...)
@ -1310,11 +1297,11 @@ cdef class Object(Eo):
function(object, event_info, *args, **kargs) function(object, event_info, *args, **kargs)
""" """
self.event_callback_add(EVAS_CALLBACK_KEY_DOWN, func, *a, **k) self.event_callback_add(enums.EVAS_CALLBACK_KEY_DOWN, func, *a, **k)
def on_key_down_del(self, func): def on_key_down_del(self, func):
"""Same as event_callback_del(EVAS_CALLBACK_KEY_DOWN, ...)""" """Same as event_callback_del(EVAS_CALLBACK_KEY_DOWN, ...)"""
self.event_callback_del(EVAS_CALLBACK_KEY_DOWN, func) self.event_callback_del(enums.EVAS_CALLBACK_KEY_DOWN, func)
def on_key_up_add(self, func, *a, **k): def on_key_up_add(self, func, *a, **k):
"""Same as event_callback_add(EVAS_CALLBACK_KEY_UP, ...) """Same as event_callback_add(EVAS_CALLBACK_KEY_UP, ...)
@ -1323,11 +1310,11 @@ cdef class Object(Eo):
function(object, event_info, *args, **kargs) function(object, event_info, *args, **kargs)
""" """
self.event_callback_add(EVAS_CALLBACK_KEY_UP, func, *a, **k) self.event_callback_add(enums.EVAS_CALLBACK_KEY_UP, func, *a, **k)
def on_key_up_del(self, func): def on_key_up_del(self, func):
"""Same as event_callback_del(EVAS_CALLBACK_KEY_UP, ...)""" """Same as event_callback_del(EVAS_CALLBACK_KEY_UP, ...)"""
self.event_callback_del(EVAS_CALLBACK_KEY_UP, func) self.event_callback_del(enums.EVAS_CALLBACK_KEY_UP, func)
def on_focus_in_add(self, func, *a, **k): def on_focus_in_add(self, func, *a, **k):
"""Same as event_callback_add(EVAS_CALLBACK_FOCUS_IN, ...) """Same as event_callback_add(EVAS_CALLBACK_FOCUS_IN, ...)
@ -1336,11 +1323,11 @@ cdef class Object(Eo):
function(object, *args, **kargs) function(object, *args, **kargs)
""" """
self.event_callback_add(EVAS_CALLBACK_FOCUS_IN, func, *a, **k) self.event_callback_add(enums.EVAS_CALLBACK_FOCUS_IN, func, *a, **k)
def on_focus_in_del(self, func): def on_focus_in_del(self, func):
"""Same as event_callback_del(EVAS_CALLBACK_FOCUS_IN, ...)""" """Same as event_callback_del(EVAS_CALLBACK_FOCUS_IN, ...)"""
self.event_callback_del(EVAS_CALLBACK_FOCUS_IN, func) self.event_callback_del(enums.EVAS_CALLBACK_FOCUS_IN, func)
def on_focus_out_add(self, func, *a, **k): def on_focus_out_add(self, func, *a, **k):
"""Same as event_callback_add(EVAS_CALLBACK_FOCUS_OUT, ...) """Same as event_callback_add(EVAS_CALLBACK_FOCUS_OUT, ...)
@ -1349,11 +1336,11 @@ cdef class Object(Eo):
function(object, *args, **kargs) function(object, *args, **kargs)
""" """
self.event_callback_add(EVAS_CALLBACK_FOCUS_OUT, func, *a, **k) self.event_callback_add(enums.EVAS_CALLBACK_FOCUS_OUT, func, *a, **k)
def on_focus_out_del(self, func): def on_focus_out_del(self, func):
"""Same as event_callback_del(EVAS_CALLBACK_FOCUS_OUT, ...)""" """Same as event_callback_del(EVAS_CALLBACK_FOCUS_OUT, ...)"""
self.event_callback_del(EVAS_CALLBACK_FOCUS_OUT, func) self.event_callback_del(enums.EVAS_CALLBACK_FOCUS_OUT, func)
def on_show_add(self, func, *a, **k): def on_show_add(self, func, *a, **k):
"""Same as event_callback_add(EVAS_CALLBACK_SHOW, ...) """Same as event_callback_add(EVAS_CALLBACK_SHOW, ...)
@ -1362,11 +1349,11 @@ cdef class Object(Eo):
function(object, *args, **kargs) function(object, *args, **kargs)
""" """
self.event_callback_add(EVAS_CALLBACK_SHOW, func, *a, **k) self.event_callback_add(enums.EVAS_CALLBACK_SHOW, func, *a, **k)
def on_show_del(self, func): def on_show_del(self, func):
"""Same as event_callback_del(EVAS_CALLBACK_SHOW, ...)""" """Same as event_callback_del(EVAS_CALLBACK_SHOW, ...)"""
self.event_callback_del(EVAS_CALLBACK_SHOW, func) self.event_callback_del(enums.EVAS_CALLBACK_SHOW, func)
def on_hide_add(self, func, *a, **k): def on_hide_add(self, func, *a, **k):
"""Same as event_callback_add(EVAS_CALLBACK_HIDE, ...) """Same as event_callback_add(EVAS_CALLBACK_HIDE, ...)
@ -1375,11 +1362,11 @@ cdef class Object(Eo):
function(object, *args, **kargs) function(object, *args, **kargs)
""" """
self.event_callback_add(EVAS_CALLBACK_HIDE, func, *a, **k) self.event_callback_add(enums.EVAS_CALLBACK_HIDE, func, *a, **k)
def on_hide_del(self, func): def on_hide_del(self, func):
"""Same as event_callback_del(EVAS_CALLBACK_HIDE, ...)""" """Same as event_callback_del(EVAS_CALLBACK_HIDE, ...)"""
self.event_callback_del(EVAS_CALLBACK_HIDE, func) self.event_callback_del(enums.EVAS_CALLBACK_HIDE, func)
def on_move_add(self, func, *a, **k): def on_move_add(self, func, *a, **k):
"""Same as event_callback_add(EVAS_CALLBACK_MOVE, ...) """Same as event_callback_add(EVAS_CALLBACK_MOVE, ...)
@ -1388,11 +1375,11 @@ cdef class Object(Eo):
function(object, *args, **kargs) function(object, *args, **kargs)
""" """
self.event_callback_add(EVAS_CALLBACK_MOVE, func, *a, **k) self.event_callback_add(enums.EVAS_CALLBACK_MOVE, func, *a, **k)
def on_move_del(self, func): def on_move_del(self, func):
"""Same as event_callback_del(EVAS_CALLBACK_MOVE, ...)""" """Same as event_callback_del(EVAS_CALLBACK_MOVE, ...)"""
self.event_callback_del(EVAS_CALLBACK_MOVE, func) self.event_callback_del(enums.EVAS_CALLBACK_MOVE, func)
def on_resize_add(self, func, *a, **k): def on_resize_add(self, func, *a, **k):
"""Same as event_callback_add(EVAS_CALLBACK_RESIZE, ...) """Same as event_callback_add(EVAS_CALLBACK_RESIZE, ...)
@ -1401,11 +1388,11 @@ cdef class Object(Eo):
function(object, *args, **kargs) function(object, *args, **kargs)
""" """
self.event_callback_add(EVAS_CALLBACK_RESIZE, func, *a, **k) self.event_callback_add(enums.EVAS_CALLBACK_RESIZE, func, *a, **k)
def on_resize_del(self, func): def on_resize_del(self, func):
"""Same as event_callback_del(EVAS_CALLBACK_RESIZE, ...)""" """Same as event_callback_del(EVAS_CALLBACK_RESIZE, ...)"""
self.event_callback_del(EVAS_CALLBACK_RESIZE, func) self.event_callback_del(enums.EVAS_CALLBACK_RESIZE, func)
def on_restack_add(self, func, *a, **k): def on_restack_add(self, func, *a, **k):
"""Same as event_callback_add(EVAS_CALLBACK_RESTACK, ...) """Same as event_callback_add(EVAS_CALLBACK_RESTACK, ...)
@ -1414,11 +1401,11 @@ cdef class Object(Eo):
function(object, *args, **kargs) function(object, *args, **kargs)
""" """
self.event_callback_add(EVAS_CALLBACK_RESTACK, func, *a, **k) self.event_callback_add(enums.EVAS_CALLBACK_RESTACK, func, *a, **k)
def on_restack_del(self, func): def on_restack_del(self, func):
"""Same as event_callback_del(EVAS_CALLBACK_RESTACK, ...)""" """Same as event_callback_del(EVAS_CALLBACK_RESTACK, ...)"""
self.event_callback_del(EVAS_CALLBACK_RESTACK, func) self.event_callback_del(enums.EVAS_CALLBACK_RESTACK, func)
def on_del_add(self, func, *a, **k): def on_del_add(self, func, *a, **k):
"""Same as event_callback_add(EVAS_CALLBACK_DEL, ...) """Same as event_callback_add(EVAS_CALLBACK_DEL, ...)
@ -1430,27 +1417,27 @@ cdef class Object(Eo):
function(object, *args, **kargs) function(object, *args, **kargs)
""" """
self.event_callback_add(EVAS_CALLBACK_DEL, func, *a, **k) self.event_callback_add(enums.EVAS_CALLBACK_DEL, func, *a, **k)
def on_del_del(self, func): def on_del_del(self, func):
"""Same as event_callback_del(EVAS_CALLBACK_DEL, ...)""" """Same as event_callback_del(EVAS_CALLBACK_DEL, ...)"""
self.event_callback_del(EVAS_CALLBACK_DEL, func) self.event_callback_del(enums.EVAS_CALLBACK_DEL, func)
def on_hold_add(self, func, *a, **k): def on_hold_add(self, func, *a, **k):
"""Same as event_callback_add(EVAS_CALLBACK_HOLD, ...)""" """Same as event_callback_add(EVAS_CALLBACK_HOLD, ...)"""
self.event_callback_add(EVAS_CALLBACK_HOLD, func, *a, **k) self.event_callback_add(enums.EVAS_CALLBACK_HOLD, func, *a, **k)
def on_hold_del(self, func): def on_hold_del(self, func):
"""Same as event_callback_del(EVAS_CALLBACK_HOLD, ...)""" """Same as event_callback_del(EVAS_CALLBACK_HOLD, ...)"""
self.event_callback_del(EVAS_CALLBACK_HOLD, func) self.event_callback_del(enums.EVAS_CALLBACK_HOLD, func)
def on_changed_size_hints_add(self, func, *a, **k): def on_changed_size_hints_add(self, func, *a, **k):
"""Same as event_callback_add(EVAS_CALLBACK_CHANGED_SIZE_HINTS, ...)""" """Same as event_callback_add(EVAS_CALLBACK_CHANGED_SIZE_HINTS, ...)"""
self.event_callback_add(EVAS_CALLBACK_CHANGED_SIZE_HINTS, func, *a, **k) self.event_callback_add(enums.EVAS_CALLBACK_CHANGED_SIZE_HINTS, func, *a, **k)
def on_changed_size_hints_del(self, func): def on_changed_size_hints_del(self, func):
"""Same as event_callback_del(EVAS_CALLBACK_CHANGED_SIZE_HINTS, ...)""" """Same as event_callback_del(EVAS_CALLBACK_CHANGED_SIZE_HINTS, ...)"""
self.event_callback_del(EVAS_CALLBACK_CHANGED_SIZE_HINTS, func) self.event_callback_del(enums.EVAS_CALLBACK_CHANGED_SIZE_HINTS, func)
property pass_events: property pass_events:
"""Whenever object should ignore and pass events. """Whenever object should ignore and pass events.

View File

@ -824,6 +824,21 @@ cdef class Object(Eo):
cdef object _callbacks cdef object _callbacks
# cdef int _unset_obj(self) except 0 # cdef int _unset_obj(self) except 0
# cdef int _set_obj(self, Evas_Object *obj) except 0 # cdef int _set_obj(self, Evas_Object *obj) except 0
cpdef layer_set(self, int layer)
cpdef layer_get(self)
cpdef geometry_get(self)
cpdef geometry_set(self, int x, int y, int w, int h)
cpdef size_get(self)
cpdef size_set(self, int w, int h)
cpdef visible_get(self)
cpdef visible_set(self, spec)
cpdef color_get(self)
cpdef clip_get(self)
cpdef clipees_get(self)
cpdef name_get(self)
cpdef name_set(self, value)
cpdef focus_get(self)
cpdef focus_set(self, value)
cdef class Rectangle(Object): cdef class Rectangle(Object):