/*
- * $Id: rb_evas_object.c 64 2004-08-12 19:37:04Z tilman $
+ * $Id: rb_evas_object.c 104 2004-08-29 15:38:46Z tilman $
*
* Copyright (C) 2004 Tilman Sauerbeck (tilman at code-monkey de)
*
VALUE cEvasObject;
+VALUE TO_EVAS_OBJECT (Evas_Object *o)
+{
+ void *obj;
+
+ if (!o)
+ return Qnil;
+
+ if (!(obj = evas_object_data_get (o, RUBY_EVAS_OBJECT_KEY))) {
+ rb_raise (rb_eException, "EvasObject Ruby object key missing");
+ return Qnil;
+ }
+
+ return (VALUE) obj;
+}
+
/* called by the child classes */
void c_evas_object_mark (RbEvasObject *e)
{
static VALUE c_above_get (VALUE self)
{
Evas_Object *o;
- void *obj;
GET_OBJ (self, RbEvasObject, e);
- if (!(o = evas_object_above_get (e->real)))
- return Qnil;
-
- if (!(obj = evas_object_data_get (o, RUBY_EVAS_OBJECT_KEY))) {
- rb_raise (rb_eException, "EvasObject Ruby object key missing");
- return Qnil;
- }
-
- return (VALUE) obj;
+ return TO_EVAS_OBJECT (evas_object_above_get (e->real));
}
/*
static VALUE c_below_get (VALUE self)
{
Evas_Object *o;
- void *obj;
GET_OBJ (self, RbEvasObject, e);
- if (!(o = evas_object_below_get (e->real)))
- return Qnil;
-
- if (!(obj = evas_object_data_get (o, RUBY_EVAS_OBJECT_KEY))) {
- rb_raise (rb_eException, "EvasObject Ruby object key missing");
- return Qnil;
- }
-
- return (VALUE) obj;
+ return TO_EVAS_OBJECT (evas_object_below_get (e->real));
}
void Init_EvasObject (void)