Tom Hacohen
f393ebfffe
Eobj: change the tests according to the new wref concept.
...
We should not delete the wref if object is already freed. It's because
of the damn new wref API.
SVN revision: 70438
2012-04-24 12:27:22 +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
f973b12daf
Eobj: we don't care about "Still reachable".
...
It seems that libcheck keeps some reachable data, unfortunate as it makes
it very annoying for us to check for reachable memory in our code, but
letting valgrind report about it is just too damn annoying.
SVN revision: 70412
2012-04-23 08:10:09 +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
7713059d6d
Eobj: Modified the mixin test to test the mixin mro.
...
SVN revision: 70320
2012-04-19 08:52:11 +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
ff0482180f
Eobj: Add a mixin inheritance test.
...
SVN revision: 70274
2012-04-17 15:22:27 +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
294c932c9e
Eobj: Added EOBJ_BASE_DATA free function tests.
...
SVN revision: 70270
2012-04-17 14:00:56 +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
bad7533b67
Eobj: Improved tests.
...
SVN revision: 70264
2012-04-17 10:27:40 +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
ceca1938c4
Eobj: add a "class errors" test.
...
SVN revision: 70262
2012-04-17 10:27:34 +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
519adcf26c
Eobj: Add missing op descriptions in examples.
...
SVN revision: 70258
2012-04-17 08:05:07 +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
154e1b6f1b
Eobj: Improved config.h a bit and fixed a pkg-config error.
...
SVN revision: 70236
2012-04-16 16:02:41 +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
5386de12b8
Eobj: examples/evas/elw_win - fix the class name.
...
Thanks to Yakov for letting me know.
SVN revision: 70224
2012-04-16 12:36:27 +00:00
Tom Hacohen
03a94f7cb1
Eobj: Evas example - fixed coding convetion.
...
Approved by Daniel Zaoui.
SVN revision: 70197
2012-04-15 12:12:05 +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
8be32105cb
Eobj: Added more function override tests.
...
SVN revision: 70151
2012-04-12 15:27:22 +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
d6affb56f7
Eobj: Improved constructors test.
...
SVN revision: 70149
2012-04-12 14:59:01 +00:00
Tom Hacohen
d5e74719dc
Eobj: Improved error reporting.
...
SVN revision: 70148
2012-04-12 14:58:57 +00:00
Tom Hacohen
739441afeb
Eobj: Added some more test scenarios.
...
SVN revision: 70147
2012-04-12 14:37: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
0395f7943c
Eobj: Improve signals test.
...
SVN revision: 70144
2012-04-12 12:42:33 +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
5c53136210
Eobj: Improved output of signals test.
...
SVN revision: 70140
2012-04-12 12:25:32 +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
3d11446968
Eobj: Improved some tests a bit more.
...
SVN revision: 70138
2012-04-12 12:25:26 +00:00
Tom Hacohen
ef994b8163
Eobj: Improved tests a bit.
...
SVN revision: 70137
2012-04-12 11:20:26 +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
230de30c3e
Eobj: Improved testing a bit.
...
SVN revision: 70135
2012-04-12 11:20:19 +00:00
Tom Hacohen
bef76f0407
Eobj: Added some composite objects tests.
...
SVN revision: 70134
2012-04-12 10:48:08 +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
6996e85cd2
Eobj: Added a couple of function_overrides tests.
...
SVN revision: 70128
2012-04-12 08:27:38 +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