* Remove Software SDL engine.
+2012-02-23 Carsten Haitzler (The Rasterman)
+
+ * Add evas_object_ref_get() to be able to tell if others ref
+ an object.
+
* EVAS_OBJECT_POINTER_MODE_NOGRAB_NO_REPEAT_UPDOWN.
* EVAS_GL_OPTIONS_DIRECT.
* evas_object_textblock_style_user_pop/push.
+ * evas_object_ref_get
Fixes:
*/
EAPI void evas_object_unref (Evas_Object *obj);
+/**
+ * Get the object reference count.
+ *
+ * @param obj The given Evas object to query
+ *
+ * This gets the reference count for an object (normally 0 until it is
+ * referenced). Values of 1 or greater mean that someone is holding a
+ * reference to this object that needs to be unreffed before it can be
+ * deleted.
+ *
+ * @see evas_object_ref()
+ * @see evas_object_unref()
+ * @see evas_object_del()
+ *
+ * @ingroup Evas_Object_Group_Basic
+ * @since 1.2.0
+ */
+EAPI int evas_object_ref_get (const Evas_Object *obj);
+
/**
* Marks the given Evas object for deletion (when Evas will free its
return;
MAGIC_CHECK_END();
obj->ref++;
- if (obj->ref == 0) obj->ref--;
}
EAPI void
if ((obj->del_ref) && (obj->ref == 0)) evas_object_del(obj);
}
+EAPI int
+evas_object_ref_get(const Evas_Object *obj)
+{
+ MAGIC_CHECK(obj, Evas_Object, MAGIC_OBJ);
+ return 0;
+ MAGIC_CHECK_END();
+ return obj->ref;
+}
+
EAPI void
evas_object_del(Evas_Object *obj)
{