We now use real structs to wrap objects.
[ruby-evas.git] / src / rb_evas_object.h
index 99190eae82f41ab7545d09d237c99f9fe918d75c..8760498541d094c23c5629583d1c3b779822175a 100644 (file)
@@ -1,5 +1,5 @@
 /*
- * $Id: rb_evas_object.h 46 2004-07-26 11:14:50Z tilman $
+ * $Id: rb_evas_object.h 49 2004-08-01 10:17:39Z tilman $
  *
  * Copyright (C) 2004 Tilman Sauerbeck (tilman at code-monkey de)
  *
 #ifndef __RB_EVAS_OBJECT_H
 #define __RB_EVAS_OBJECT_H
 
+#include <stdbool.h>
+
 #define RUBY_EVAS_OBJECT_KEY "__RB_EVAS_OBJECT_OBJECT"
 
-#ifndef __RB_EVAS_OBJECT_C
-extern VALUE cEvasObject;
-#endif
+typedef struct {
+       Evas_Object *real;
+       VALUE parent;
+} RbEvasObject;
 
 void Init_EvasObject (void);
 
-void c_evas_object_free (Evas_Object **e);
-void c_evas_object_mark (Evas_Object **e);
+void c_evas_object_free (RbEvasObject *e, bool free_mem);
+void c_evas_object_mark (RbEvasObject *e);
+
+#ifndef __RB_EVAS_OBJECT_C
+extern VALUE cEvasObject;
+#endif
 
 #endif