Commit Graph

91 Commits

Author SHA1 Message Date
Tom Hacohen c3cccdc7ce Eobj: Fix clang's (static analyser) warnings.
SVN revision: 70537
2012-04-29 15:52:37 +00:00
Tom Hacohen 47161b869c Eobj: Fixed a possible bug with object deletion.
SVN revision: 70437
2012-04-24 12:16:23 +00:00
Tom Hacohen 9d03a70fa2 Eobj: Made weak ref a base class function.
SVN revision: 70436
2012-04-24 12:16:21 +00:00
Tom Hacohen 3cc5c60d17 Eobj: eobj_event_callback_del/_full renames.
eobj_event_callback_del -> eobj_event_callback_del_lazy.
eobj_event_callback_del_full -> eobj_event_callback_del.

Thanks to cedric for the suggestion.

SVN revision: 70435
2012-04-24 12:16:17 +00:00
Tom Hacohen 2c66050b65 Eobj: Changed all the eobj_do macros to lowercase.
code clutter--.

SVN revision: 70432
2012-04-24 08:56:49 +00:00
Tom Hacohen 4e05a6193c Eobj: Added infrastructure for const functions and eobj_query.
SVN revision: 70431
2012-04-24 08:04:14 +00:00
Tom Hacohen b004b4c833 Eobj: Fixed the order of parameters in the weak ref add func.
SVN revision: 70430
2012-04-24 08:04:09 +00:00
Tom Hacohen 331ef4b522 Eobj: Updated weak ref docs.
SVN revision: 70419
2012-04-23 12:47:44 +00:00
Tom Hacohen 31e6682a66 Eobj: Make eobj_weak_ref_add return the obejct being reffed.
Suggested by vtorri.

SVN revision: 70418
2012-04-23 12:32:36 +00:00
Tom Hacohen 5b529c506b Eobj: Added docs to the examples (needed for introspection).
Patch by Yakov Goldberg.

SVN revision: 70417
2012-04-23 12:32:34 +00:00
Tom Hacohen 44e549e812 Eobj: added warnings to eobj_ref's docs.
SVN revision: 70416
2012-04-23 11:51:49 +00:00
Tom Hacohen 5c5fc69bef Eobj: Changed weak-ref to work without allocating a structure.
Thanks to cedric.

SVN revision: 70415
2012-04-23 10:57:04 +00:00
Tom Hacohen 945cf1e9c2 Eobj: Rename _EOBJ_BUILD to EFL_EOBJ_BUILD.
vtorri is right pointing out it is a reserved name.

SVN revision: 70414
2012-04-23 08:26:40 +00:00
Tom Hacohen c599a9090d Eobj: Destruct the object upon deletion, free it when unrefed.
Sorted this out a bit. I believe the current behaviour is better than the
previous one.

SVN revision: 70413
2012-04-23 08:10:12 +00:00
Tom Hacohen a1ed819ea2 Eobj: Use EINA_SAFETY when needed.
Also added a couple of EINA_UNLIKELY.

SVN revision: 70411
2012-04-23 08:10:06 +00:00
Tom Hacohen 8875c23a6c Eobj: Added eina magic to API functions.
SVN revision: 70410
2012-04-23 08:10:04 +00:00
Tom Hacohen e8348bf802 Eobj: Fixed windows support.
DAMN, Windows is broken...
Thanks to vtorri.

SVN revision: 70409
2012-04-23 08:10:00 +00:00
Tom Hacohen b5a1df1270 Eobj: Added EOBJ_CALLBACK_STOP/CONTINUE macros.
SVN revision: 70408
2012-04-23 08:09:58 +00:00
Tom Hacohen e0f6adbea6 Eobj: Add a convenience macro for defining the class_get functions.
This macro makes the code a tad simpler, but more importantly, makes it
easier for us to be thread safe, or more corrctly, easier for us the
make user code thread safe.

SVN revision: 70407
2012-04-23 08:09:54 +00:00
Tom Hacohen 1390200ede Eobj: Fixed issue with FindEina.cmake and things using it.
SVN revision: 70406
2012-04-23 08:09:49 +00:00
Tom Hacohen a5742a341c Eobj: Allocate the data blob at the end of the object.
This replaces the obj->data_blob pointer. Hopefully will be better.

SVN revision: 70405
2012-04-23 08:09:45 +00:00
Tom Hacohen 84a698c972 Eobj: A bit of code cleanup.
SVN revision: 70404
2012-04-23 08:09:42 +00:00
Tom Hacohen b126854a86 Eobj: Added EINA_LIKELY/UNLIKELY to eobj_data_get.
SVN revision: 70403
2012-04-23 08:09:40 +00:00
Tom Hacohen e066c0041c Eobj: Add a couple of funcs_set tests and fixed a bug related.
SVN revision: 70402
2012-04-23 08:09:37 +00:00
Tom Hacohen 95eaccb0cc Eobj: s/__UNUSED__/EINA_UNUSED/ I had no idea that exists.
SVN revision: 70332
2012-04-19 11:30:17 +00:00
Tom Hacohen 9fee446cc1 Eobj: Fixed naming of the internal con/destructor wrapper.
It's a lot less confusing now.

SVN revision: 70331
2012-04-19 11:30:12 +00:00
Tom Hacohen bfe38419bd Eobj: Enforce some interface restrictions.
SVN revision: 70330
2012-04-19 11:30:10 +00:00
Tom Hacohen a59a972f8b Eobj: Change obj of eobj_data_get to be const.
Thanks to Daniel Zaoui for the report.

SVN revision: 70325
2012-04-19 08:56:29 +00:00
Tom Hacohen 11361eae41 Eobj: Added mixin data support.
SVN revision: 70324
2012-04-19 08:52:25 +00:00
Tom Hacohen c2e55db47d Eobj: Added forgotten docs to eobj_xref/xunref.
SVN revision: 70323
2012-04-19 08:52:22 +00:00
Tom Hacohen 965952c3a5 Eobj: Improved tests.
And one cosmetic change.

SVN revision: 70322
2012-04-19 08:52:18 +00:00
Tom Hacohen 5bfbd5f9d1 Eobj: Add checks to ensure consistent method rosulotion order.
SVN revision: 70321
2012-04-19 08:52:15 +00:00
Tom Hacohen 51bf71c131 Eobj: Improved error reporting.
SVN revision: 70288
2012-04-18 07:58:39 +00:00
Tom Hacohen 25ab72e2ee Eobj: Ensure we don't allow calling super functions out of place.
And improved error reporting.

SVN revision: 70287
2012-04-18 07:58:34 +00:00
Tom Hacohen f4fd7944b7 Eobj: Use xref.
SVN revision: 70275
2012-04-17 15:36:41 +00:00
Tom Hacohen d6146c132e Eobj: Add named (by obj ptr) ref - xref.
SVN revision: 70273
2012-04-17 15:22:22 +00:00
Tom Hacohen 69afa9d2ad Eobj: EOBJ_CLASS_BASE -> EOBJ_BASE_CLASS.
SVN revision: 70272
2012-04-17 14:01:09 +00:00
Tom Hacohen ec413015da Eobj: Doxygen - moved EOBJ_EV_* to be under EOBJ_BASE_CLASS.
SVN revision: 70271
2012-04-17 14:01:03 +00:00
Tom Hacohen 856cf05f5c Eobj: Added weak ref.
SVN revision: 70269
2012-04-17 13:38:41 +00:00
Tom Hacohen 45f75b670a Eobj: Fixed docs.
Thanks to Daniel.

SVN revision: 70268
2012-04-17 12:58:33 +00:00
Tom Hacohen 2764023655 Eobj: eobj_generic_data_*->EOBJ_BASE_DATA_*.
And also split the base class away from eobj.c

SVN revision: 70267
2012-04-17 12:49:53 +00:00
Tom Hacohen 544a663dd2 Eobj: Fixed inheritance checks and fixed mixin examples accordingly.
SVN revision: 70263
2012-04-17 10:27:37 +00:00
Tom Hacohen e787f5aeae Eobj: Improved error reporting.
SVN revision: 70261
2012-04-17 10:27:31 +00:00
Tom Hacohen 3f2c369c26 Eobj: Made eobj_class_new return a const class.
Once a class is created, we are no longer allowed to touch it.

SVN revision: 70260
2012-04-17 10:27:25 +00:00
Tom Hacohen 3d245132cc Eobj: Enforce Op description order.
SVN revision: 70259
2012-04-17 08:05:09 +00:00
Tom Hacohen fc75dd0032 Eobj: eobj_super_do -> eobj_do_super.
SVN revision: 70257
2012-04-17 08:05:03 +00:00
Tom Hacohen 7bcda618a2 Eobj: Add pkg-config file and start installing stuff.
SVN revision: 70233
2012-04-16 15:27:32 +00:00
Tom Hacohen 8c40b3de26 Eobj: Small documentation adjustments.
SVN revision: 70232
2012-04-16 15:27:29 +00:00
Tom Hacohen eb6c52240f Eobj: Added event callbacks for Object free/del.
SVN revision: 70231
2012-04-16 14:22:11 +00:00
Tom Hacohen 18258b9002 Eobj: Renamed EOBJ_SIG_CALLBACK_* to EOBJ_EV_CALLBACK_*.
SVN revision: 70230
2012-04-16 14:22:08 +00:00