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
Tom Hacohen
94efb39c34
Eobj: Added EOBJ_SIG_CALLBACK_ADD/DEL to Eobj's Event desc.
...
SVN revision: 70229
2012-04-16 14:22:04 +00:00
Tom Hacohen
bb25247d46
Eobj: Better grouped docs in doxygen.
...
SVN revision: 70228
2012-04-16 12:52:28 +00:00
Tom Hacohen
809a7d4e1e
Eobj: Initial doxygen commit.
...
SVN revision: 70227
2012-04-16 12:36:42 +00:00
Tom Hacohen
2374281331
Eobj: Fixed eobj_event_callback_call to return a meaningful value.
...
SVN revision: 70226
2012-04-16 12:36:37 +00:00
Tom Hacohen
0b35767735
Eobj: EOBJ_OP_FUNC_DESCRIPTION -> EOBJ_OP_FUNC.
...
The previous name was just too damn long.
SVN revision: 70225
2012-04-16 12:36:34 +00:00
Tom Hacohen
ad5549c8aa
Eobj: Make construct error a bool.
...
Way faster, and doesn't waste any additional memory.
SVN revision: 70196
2012-04-15 11:57:25 +00:00
Tom Hacohen
41189e408e
Eobj: Minor changes in eina log registration.
...
SVN revision: 70195
2012-04-15 10:18:06 +00:00
Tom Hacohen
36374f49a7
Eobj: Make eobj_event_callback_add a macro.
...
Thanks to raster for the tip.
SVN revision: 70193
2012-04-15 08:57:20 +00:00
Tom Hacohen
f4ad42ffda
Eobj: ref/unref inside internal functions.
...
Thanks to raster for the tip.
SVN revision: 70192
2012-04-15 08:57:17 +00:00
Tom Hacohen
1380c56c28
Eobj: Eobj_Op should be unsigned int, not uintptr_t.
...
I have no clue why it ever was a uintptr_t...
Thanks to raster for noticing.
SVN revision: 70191
2012-04-15 08:57:14 +00:00
Tom Hacohen
d331ee0001
Eobj: Fixed (and made fast) _eobj_op_id_desc_get.
...
SVN revision: 70150
2012-04-12 15:27:18 +00:00
Tom Hacohen
d5e74719dc
Eobj: Improved error reporting.
...
SVN revision: 70148
2012-04-12 14:58:57 +00:00
Tom Hacohen
de70c853ea
Eobj: Fixed a possible inconsistency in constructor error detection.
...
SVN revision: 70146
2012-04-12 14:37:52 +00:00
Tom Hacohen
697c58026f
Eobj: Pass the private data to functions automatically.
...
This saves us from having to call the data_get function. This makes the
code nicer and potentially faster.
Thanks to raster for the tip.
SVN revision: 70145
2012-04-12 13:52:13 +00:00
Tom Hacohen
17527c5307
Eobj: Fixed a bug in event_callback_del.
...
SVN revision: 70143
2012-04-12 12:42:29 +00:00
Tom Hacohen
b02811d7fd
Eobj: Cosmetic change + added a FIXME.
...
SVN revision: 70141
2012-04-12 12:25:34 +00:00
Tom Hacohen
cc4cd4f710
Eobj: Restrict class inheritance a bit.
...
Don't allow mixing regular with non regular types when inheriting.
SVN revision: 70139
2012-04-12 12:25:29 +00:00
Tom Hacohen
d113debcd2
Eobj: Fixed a bug in composite_object_is
...
SVN revision: 70136
2012-04-12 11:20:22 +00:00
Tom Hacohen
a0ee8a4aa7
Eobj: Revert "Eobj: Only try composite objects when really supposed to."
...
Was stupid and plain wrong.
This reverts commit 70132.
SVN revision: 70133
2012-04-12 10:23:46 +00:00
Tom Hacohen
c92e62b5eb
Eobj: Only try composite objects when really supposed to.
...
SVN revision: 70132
2012-04-12 10:19:50 +00:00
Tom Hacohen
f8c89e84a2
Eobj: Composite objects should be attempted last.
...
SVN revision: 70131
2012-04-12 10:14:58 +00:00
Tom Hacohen
f4cc28cde9
Eobj: Fixed order of function call.
...
SVN revision: 70127
2012-04-12 08:27:35 +00:00
Tom Hacohen
69bf58ba95
Eobj: Fixed a potential bug in eobj_super_do.
...
SVN revision: 70126
2012-04-12 08:27:31 +00:00
Tom Hacohen
369617c161
Eobj: Fixed a potential bug in eobj_super_do.
...
SVN revision: 70014
2012-04-11 09:04:44 +00:00
Tom Hacohen
43f4caf7b0
Eobj: Removed eobj_class_parent_get. It's useless and discouraged.
...
SVN revision: 70013
2012-04-11 08:57:12 +00:00
Tom Hacohen
4e91ce84bc
Eobj: Only allocate kls_itr when really needed.
...
SVN revision: 70012
2012-04-11 08:55:20 +00:00
Tom Hacohen
fe45f31c02
Eobj: Allow more than one "super" chain per eobj_do.
...
SVN revision: 70011
2012-04-11 08:55:15 +00:00
Tom Hacohen
995140207f
Eobj: Random commit to give credit for the idea of the previous commit.
...
Previous commit was suggested by Daniel Zaoui.
Sorry for forgetting. :)
SVN revision: 70010
2012-04-11 07:07:05 +00:00
Tom Hacohen
27429380dd
Eobj: Improved private data lookups.
...
No offset array anymore - less memory wasted.
Lookup is *way* faster now.
SVN revision: 70009
2012-04-11 07:05:39 +00:00
Tom Hacohen
a41960d689
Eobj: Added eobj_ref_get.
...
SVN revision: 70008
2012-04-11 07:05:37 +00:00
Tom Hacohen
aaf11f7274
Eobj: make the kls_itr a stack.
...
It's useful for calling functions from within functions.
SVN revision: 70007
2012-04-11 07:05:33 +00:00
Tom Hacohen
4e471e9186
eobj: wrapped all the kls_itr calls into functions.
...
SVN revision: 70006
2012-04-11 07:05:30 +00:00
Tom Hacohen
e1d070a9db
Eobj: removed unneeded field.
...
SVN revision: 70005
2012-04-11 07:05:27 +00:00
Tom Hacohen
dadb753a15
eobj: Improve error reporting.
...
This order of messages is better.
SVN revision: 70004
2012-04-11 07:05:24 +00:00
Tom Hacohen
419145c72a
Eobj: Added eobj_super_do instead of class_do.
...
SVN revision: 70003
2012-04-11 07:05:21 +00:00
Tom Hacohen
9c4b436c69
Eobj: Added an MRO to classes. Walking the classes tree is not enough.
...
SVN revision: 70002
2012-04-11 07:05:14 +00:00
Tom Hacohen
fc75687bc7
Eobj: added default constructor/destructor.
...
When NULL is passed, the default one is called.
SVN revision: 70001
2012-04-11 07:05:10 +00:00
Tom Hacohen
a74871955c
Eobj: Removed useless va_end.
...
Thanks to Daniel Zaoui.
SVN revision: 69993
2012-04-10 09:18:52 +00:00
Tom Hacohen
32f6c31ed1
eobj: A couple of other cosmetic changes.
...
Again, thanks to Vtorri.
SVN revision: 69992
2012-04-10 09:12:49 +00:00
Tom Hacohen
fdf72fa795
Eobj: eobj.h -> Eobj.h
...
Thanks to vtorri.
SVN revision: 69991
2012-04-10 09:12:46 +00:00
Tom Hacohen
4f3f37059c
Eobj: Initial commit.
...
SVN revision: 69932
2012-04-05 15:31:15 +00:00