+ return num;
+}
+
+static void free_ruby_event (void *data, void *event)
+{
+ /* do nothing */
+}
+
+static VALUE m_add_event (VALUE self, VALUE type, VALUE event)
+{
+ Check_Type (type, T_FIXNUM);
+
+ ecore_event_add (FIX2INT (type), (void *) event, free_ruby_event, NULL);
+
+ return Qnil;
+}
+
+#if 0
+static VALUE c_ev_exe_exit_init (VALUE self, VALUE event)
+{
+ VALUE c = CLASS_OF (self);
+ Ecore_Event_Exe_Exit *e = (void *) event;
+
+ rb_define_attr (c, "pid", 1, 0);
+ rb_define_attr (c, "exit_code", 1, 0);
+ rb_define_attr (c, "exit_signal", 1, 0);
+ rb_define_attr (c, "exited", 1, 0);
+ rb_define_attr (c, "signalled", 1, 0);
+
+ rb_iv_set (self, "@pid", INT2FIX (e->pid));
+ rb_iv_set (self, "@exit_code", INT2FIX (e->exit_code));
+ rb_iv_set (self, "@exit_signal", INT2FIX (e->exit_signal));
+ rb_iv_set (self, "@exited", e->exited ? Qtrue : Qfalse);
+ rb_iv_set (self, "@signalled", e->signalled ? Qtrue : Qfalse);
+
+ return self;
+}