Commit Graph

6849 Commits

Author SHA1 Message Date
Carsten Haitzler 9028efcbdc fix other #ifdefs too
SVN revision: 38345
2008-12-29 11:37:44 +00:00
Cedric BAIL 69f1a6a61e Remove dead assignment and change condition for easier match.
SVN revision: 38344
2008-12-29 10:51:38 +00:00
Cedric BAIL a1a421f5ca Remove dead code detected by llvm static analyser.
SVN revision: 38343
2008-12-29 10:47:18 +00:00
Cedric BAIL ee56641dc8 Remove unused variable and check error return.
SVN revision: 38342
2008-12-29 10:29:08 +00:00
Cedric BAIL 41a6b9d484 Check decompression error. Potential bug detected by llvm static analyser.
SVN revision: 38341
2008-12-29 09:39:03 +00:00
Cedric BAIL 73c686a5ea Fix a little mistake.
SVN revision: 38339
2008-12-29 08:53:19 +00:00
Cedric BAIL e537976f58 Use correct type.
SVN revision: 38338
2008-12-29 08:53:01 +00:00
Vincent Torri c80770901d * configure.ac:
add SECURITY_WIN32 to the proprocessor on Windows XP,
	should fix the bug with security.h



SVN revision: 38334
2008-12-27 18:57:54 +00:00
Vincent Torri ac3bcc3fa9 * src/bin/evil_test_environment.c:
check returned value
	* src/bin/evil_test_memcpy.c:
	define getpagesize() for vc++
	* src/lib/evil_unistd.c:
	move inclusion of time.h after windsock2.h
	include direct.h for vc++
	use _WIN32_WCE for Windows CE compilers in evil_getcwd()
	* src/lib/Evil.h:
	* src/lib/evil_unistd.h:
	move getcwd() define from Evil.h to evil_unistd.h
	add some C99 types to Evil.h for vc++ (will be used in eina)
	* src/lib/evil_fcntl.c:
	include io.h for vc++
	* src/lib/evil_link_xp.cpp:
	use full name for symlink(). Fix symlink on Windows XP with
	the DOS prompt or the debugger of Visual Studio.
	* src/lib/evil_mman.c:
	don't include unistd.h if vc++ is used
	* src/lib/evil_stdio.h:
	formatting
	* src/lib/evil_stdlib.h:
	* src/lib/evil_stdlib.c:
	define putenv only for mingw32ce
	move the returned value of setenv()



SVN revision: 38333
2008-12-27 18:53:56 +00:00
Gustavo Sverzut Barbieri b6e27a739f oops, it's EINA_SAFETY_CHECKS, not just SAFETY_CHECKS.
SVN revision: 38328
2008-12-26 19:14:57 +00:00
Gustavo Sverzut Barbieri ab95d9183d eina safety checks.
safety checks will report null pointers and other error conditions on
public api's and can be disabled by compile time check.

note that in order to have these checks working we need to make
EINA_ARG_NONNULL() void, otherwise GCC can remove these checks since
they're known to be false.

This commit also make two minor changes:

  * list and hash accessors and iterators are created even for empty
    entities. This is correct in my point of view since NULL should
    indicate error. Having these in were an optimziation, but not
    worth it, these are not the most common case and hitting this path
    is not of much cost.

 * unmarked some parameters as nonnull, mainly on list and inlist.



SVN revision: 38327
2008-12-26 18:31:14 +00:00
Gustavo Sverzut Barbieri b0ee5696a6 eina gets lots of gcc attributes to its api.
this should help with optimizations and code correctness, please see
"info gcc" for detailed explanation on these.

if you experience some functions not working as expected, please
double check if they're not marked with EINA_PURE or EINA_CONST, maybe
I misused them. Remove the macro and try again.

brief explanation:

 * EINA_WARN_UNUSED_RESULT: if you forgot to use the return of some
   function, it will emit a warning (and -Werror will make it an
   error). This way it will be harder to miss the attribution
   "l = eina_list_append(l, v)".

 * EINA_ARG_NONNULL(index, index...): if you give it an explicit NULL
   argument, or some tool (ie: clang) finds it could get a NULL but
   this is not accepted by API, then a warning will be emitted.  This
   will help those that still use eina_hash_add() as if it is
   evas_hash_add().

 * EINA_MALLOC: any non-NULL pointer it returns cannot alias any other
   pointer valid when function returns.

 * EINA_PURE: function have no effects other than the return and this
   return just depend on parameters and/or globals. You might call
   this function in a loop a thousand times and it will return the
   same value, thus you may move this function outside the loop and
   remove it.

 * EINA_CONST: stricter version of EINA_PURE, it will not check for
   global parameters, that is, you cannot consider pointer
   arguments. Use it for math things like "int sqrt(int)".

 * EINA_PRINTF(fmt, arg): will check format parameter specified in
   position "fmt" and passed arguments starting at position "arg", it
   will check for things like giving integers where short or strings
   were expected.

 * EINA_SCANF(fmt, arg): similar to eina_printf().

 * EINA_FORMAT(fmt): for use with things like dgettext(), it will get
   a printf-like format string and modifies it.

Please review and test it with your software, make sure you make clean
before you install the new version so it has any effect.

If you find some functions are missing EINA_WARN_UNUSED_RESULT and
EINA_ARG_NONNULL or others, please add them.



SVN revision: 38323
2008-12-26 13:17:51 +00:00
Gustavo Sverzut Barbieri 363ddc283d fix locking around entry_surface_alloc.
we must make sure flags are consistent with actual values, so lock
around use and set of these variables as well.



SVN revision: 38322
2008-12-26 12:50:55 +00:00
Carsten Haitzler 297858d10c calloc not malloc! bad patches!
SVN revision: 38318
2008-12-25 08:35:51 +00:00
Carsten Haitzler 8b4a02c601 use correct #ifdef
SVN revision: 38314
2008-12-23 23:54:51 +00:00
Gustavo Sverzut Barbieri f4ccaaa15d Cancel preload if file a new file is set.
SVN revision: 38313
2008-12-23 23:15:53 +00:00
Gustavo Sverzut Barbieri 68bd5fb68b Possible last try to fix async imagre preload race conditions.
1 - use inlist as regular list uses non-thread safe mempool;
 2 - lock around image loading, so if main thread requests pixels right
     before worker thread is loading them, you don't get ie->info.module
     to NULL while it would be used (triggered from engines/common).
     Maybe this should be handled by a global mutex elsewhere instead of
     per-image mutex, but it has more granularity now.
 3 - emit "preloaded" callback if it was canceled to be loaded from main
     thread.

Please someone review these changes.



SVN revision: 38312
2008-12-23 23:07:48 +00:00
Gustavo Sverzut Barbieri 48d7998c6e attempt to fix image preload thread bugs 1: module refcount.
image preload will use modules from threads, there is a possibility to
crash due wrong reference counting.

actually much more can fail, we need to check modules don't keep that
needs exclusive access in globals or per-Evas_Module, but that's
another issue.

TODO: replace spinlocks with atomic operations.



SVN revision: 38309
2008-12-23 21:20:43 +00:00
Gustavo Sverzut Barbieri de8b6a7bbd fix possible errors with pointer/offset calculation.
it works on gcc, but maybe it would break in other compilers, so make
it safe.



SVN revision: 38302
2008-12-23 20:05:44 +00:00
Gustavo Sverzut Barbieri 7eb0826e29 remove dead stores and reduce some variable scope.
from clang report.


SVN revision: 38294
2008-12-23 19:17:55 +00:00
Gustavo Sverzut Barbieri 586979c07b fix bugs spotted by clang static analyser.
We had some problems with preload and after running LLVM's CLang
Static Analyser we found out that current->target could be NULL after
loop.

Also fixed some GCC and CLang warnings, kudos to these wonderful tools
that "Saved The Day".

PS: we should put some CLang Static Analyser results so others can
help fix other parts of E.



SVN revision: 38293
2008-12-23 18:14:16 +00:00
Cedric BAIL fb238897e5 Use float instead of double.
SVN revision: 38292
2008-12-23 17:23:35 +00:00
Cedric BAIL e006567cb0 Make it compile on Solaris.
SVN revision: 38290
2008-12-23 13:33:11 +00:00
Cedric BAIL 2c9ac0bd82 Remove now uneeded header.
SVN revision: 38289
2008-12-23 13:23:10 +00:00
Cedric BAIL 889d40abf8 Remove PATH_MAX use.
SVN revision: 38288
2008-12-23 13:12:06 +00:00
Cedric BAIL 6a87ca7590 Make code understandable by Visual Studio.
SVN revision: 38287
2008-12-23 10:04:46 +00:00
Cedric BAIL c8714d04cc Declaration should be done before any code.
SVN revision: 38286
2008-12-23 10:02:27 +00:00
dm 80e15cbeef Evas Win32 VS8 projects added
SVN revision: 38284
2008-12-22 23:24:22 +00:00
dm 729bf1a8e5 Eet Win32 VS8 project modified
SVN revision: 38283
2008-12-22 23:21:49 +00:00
dm 77dedbca06 Eina Win32 VS8 project added
SVN revision: 38282
2008-12-22 23:20:52 +00:00
dm 7ad6bb42fc Evil Win32 VS8 projects modified
SVN revision: 38281
2008-12-22 23:18:41 +00:00
Cedric BAIL 61199e56ee Fix sdl engine.
SVN revision: 38277
2008-12-22 11:16:26 +00:00
Ulisses Furquim c2651a9f31 Fix segfault when double freeing a string.
This fix makes it work again. However, ecore plugin should really be rewritten
or we should start considering eina_module instead.


SVN revision: 38275
2008-12-22 02:30:17 +00:00
Gustavo Sverzut Barbieri c36a5f23c3 and we must always pre_free, otherwise we end being called after canvas free.
SVN revision: 38272
2008-12-21 22:33:35 +00:00
Gustavo Sverzut Barbieri 0ec59ba102 must dissociate even if we will not delete the canvas.
otherwise subsequent associate requests will crash on us by using stale pointer.



SVN revision: 38271
2008-12-21 22:29:50 +00:00
Gustavo Sverzut Barbieri b1f00aa9d5 edjeL convert error code to string.
SVN revision: 38268
2008-12-21 18:39:36 +00:00
Gustavo Sverzut Barbieri aa3cd47bf2 oops, fix doc example.
SVN revision: 38267
2008-12-21 18:19:33 +00:00
Gustavo Sverzut Barbieri 765b770f82 oops, eina_stringshare_strlen() should never account '\0'.
SVN revision: 38260
2008-12-21 06:45:09 +00:00
Gustavo Sverzut Barbieri 15a2b2aaf2 force recalc after set_tween_state().
SVN revision: 38258
2008-12-21 02:17:31 +00:00
Vincent Torri d945c93a08 use ecore_pipe in gstreamer module
SVN revision: 38251
2008-12-20 16:31:55 +00:00
Gustavo Sverzut Barbieri 02ced33a33 Oops! ecore must not depend on ecore-evas!
move helper function inside ecore-evas.



SVN revision: 38250
2008-12-20 15:19:48 +00:00
Vincent Torri e66e9cc905 * ecore_win32_window.c:
fix fullscreen

 * ecore_evas_win32.c:
   add fullscreen (d3d and ddraw) and shape (d3d) support
   minor formatting

 * configure.ac:
   enable direct3d support



SVN revision: 38248
2008-12-20 14:37:04 +00:00
Gustavo Sverzut Barbieri 1fc336c2ee ecore_getopt: common callbacks go in.
ecore_evas_list_engines and geometry_parse, they're used in almost all
applications using ecore_getopt, let's avoid replicating code.



SVN revision: 38247
2008-12-20 14:29:45 +00:00
Gustavo Sverzut Barbieri 089b1c7925 fix image preload signature and make it callback if already preloaded.
evas_object_image_preload() should not use object as const because it
will mdofiy the object state (so it's semantic makes more sense).

if data was already loaded, then callback before ignored it (return).



SVN revision: 38246
2008-12-20 13:39:15 +00:00
Vincent Torri 4f96f46169 useless file
SVN revision: 38245
2008-12-20 13:24:27 +00:00
Vincent Torri c989841ab6 * src/modules/engines/direct3d/:
fast direct3d engine written by Dmitriy Mazovka. You rock !

 * m4/evas_check_engine.m:
 * m4/evas_check_loader.m4:
   use m4_popdef for each macro (otherwise, fail if aclocal is too old)

 * src/lib/canvas/evas_font_dir.c:
   include evas_common.h and evas_private.h after Eet.h and Evil.h
   so that EAPI is correctly defined



SVN revision: 38244
2008-12-20 13:22:46 +00:00
Vincent Torri 8b5ff6cb40 make compilation work on Windows XP
SVN revision: 38243
2008-12-20 13:18:27 +00:00
Gustavo Sverzut Barbieri 4821dcf1f8 always call image preloaded callback.
if image was already preloaded, inform user.

regular use case is to have image hidden, ask for preload and then
show image on callback, if there is no callback, image is never shown.



SVN revision: 38236
2008-12-19 21:56:31 +00:00
Jonathan Atton e58ac7064c missing parenthesis
from caro.



SVN revision: 38235
2008-12-19 21:28:32 +00:00
Jonathan Atton 11c671429e include the headers in the correct order so that EAPI is correctly defined on Windows
from caro


SVN revision: 38234
2008-12-19 20:54:13 +00:00
Cedric BAIL 5383cabf2b Fix EINA_ARRAY_ITER_NEXT off by one bug. With this fix you can no longer push
NULL pointer inside an array.


SVN revision: 38232
2008-12-19 17:55:57 +00:00
Carsten Haitzler a38ab7590d doc++
SVN revision: 38229
2008-12-19 14:44:47 +00:00
Carsten Haitzler d3f645a37a add del flag to associate
SVN revision: 38225
2008-12-19 14:30:03 +00:00
Carsten Haitzler 8da641854b dont resize/move fullscreen canvases
SVN revision: 38224
2008-12-19 13:11:21 +00:00
Viktor Kojouharov fa95a224da a vimball script for edc (and embryo). It includes an up-to-date syntax files for edc and embryo, indent and omni-completion scripts
SVN revision: 38207
2008-12-18 10:37:11 +00:00
Iván Briano d413635b56 More proper fix for the infinite calculate in evas box.
SVN revision: 38205
2008-12-18 03:04:15 +00:00
Iván Briano 7f3dfc66f2 And finally, edje table goes in
SVN revision: 38204
2008-12-18 02:43:20 +00:00
Iván Briano 31658d4f1e Added iterator and accessor to box and table
SVN revision: 38203
2008-12-18 02:39:09 +00:00
Cedric BAIL 136be96d28 Use small hash table insteed of bigger one. And move collection hash initialization a bit later.
SVN revision: 38186
2008-12-17 16:10:07 +00:00
Cedric BAIL 35540b3a3b This commit is huge. I did test it a lot on my computer, and it run fine here.
But is so big i fear i could have broken some piece of code. So report any wrong
behaviour to me (cedric on #edevelop).

So moving e17 and efreet to eina_hash. With a little efreet API break so they
must come together.


SVN revision: 38185
2008-12-17 15:33:43 +00:00
Cedric BAIL e33474c92f Move to eina_hash. Nothing should break, but if you experience any unexpected behaviour
please ping me on #edevelop.



SVN revision: 38183
2008-12-17 14:26:47 +00:00
Iván Briano 05af27f999 Guard box from getting into an infinite loop when calculating layout.
SVN revision: 38182
2008-12-17 14:10:09 +00:00
Cedric BAIL 3d41b74146 Update ac_attribute macro and remove __UNUSED__ declaration from eina.
SVN revision: 38179
2008-12-17 13:03:00 +00:00
Carsten Haitzler 4b2fd7c5aa engine in list--
SVN revision: 38177
2008-12-17 08:24:09 +00:00
Carsten Haitzler 53c9394d3b dont need xcb engine code anymore
SVN revision: 38176
2008-12-17 08:18:13 +00:00
Carsten Haitzler 6fc7c79741 use new engine merge.
SVN revision: 38175
2008-12-17 08:16:21 +00:00
Carsten Haitzler fb85d912b6 vtorri's merge of xcb and x11 software engines.
SVN revision: 38173
2008-12-17 08:13:49 +00:00
Sebastian Dransfeld 28bf361096 Fix eina hash usage.
When using eina hash we need to create the hash if it does not exist.

SVN revision: 38172
2008-12-17 08:04:42 +00:00
Cedric BAIL c80a55ee14 Add small bucket support.
SVN revision: 38168
2008-12-16 16:49:29 +00:00
Cedric BAIL 00b5758937 Add include to remove warning.
SVN revision: 38167
2008-12-16 16:49:00 +00:00
Jaime Thomas a0ec6162f7 Plugin fixes, ewl_test workes now.
SVN revision: 38164
2008-12-16 00:40:22 +00:00
Iván Briano 140b0a9fca Add function to get the length in characters of a string
SVN revision: 38158
2008-12-15 22:03:04 +00:00
Sebastian Dransfeld 4615291cc2 evas_hash -> eina_hash
SVN revision: 38157
2008-12-15 21:00:19 +00:00
Sebastian Dransfeld 54b5d7d631 Fix compiler warnings.
SVN revision: 38156
2008-12-15 20:52:51 +00:00
Sebastian Dransfeld 804b284419 Fix hash foreach cb.
SVN revision: 38155
2008-12-15 20:49:59 +00:00
Sebastian Dransfeld 0b2c10c1c6 Add function prototypes to header.
SVN revision: 38154
2008-12-15 20:31:26 +00:00
Sebastian Dransfeld 1de2e74d74 Adding missing Name entry in efreet_menu.
Add fix from Massimiliano Calamelli.

SVN revision: 38153
2008-12-15 20:23:24 +00:00
Sebastian Dransfeld 582e0768fe Remove ecore-desktop
SVN revision: 38151
2008-12-15 18:39:01 +00:00
Sebastian Dransfeld 48202c24bc Misc cleanup.
- Don't use EAPI for internal functions.
- Add prototypes to header.
- Some compiler warnings.

SVN revision: 38150
2008-12-15 17:59:19 +00:00
Iván Briano c76c180b22 Goodbye forgotten debug. We won't miss you.
SVN revision: 38147
2008-12-14 19:26:41 +00:00
Jaime Thomas 81c3548670 Actually, this is probably what was intended.
SVN revision: 38145
2008-12-14 17:09:46 +00:00
Jaime Thomas 364c05f124 Let mouse selections work again.
SVN revision: 38144
2008-12-14 17:07:51 +00:00
Gustavo Sverzut Barbieri 300c7b814c try to avoid infinite recalc loop.
as reported, elicity triggers an infinite loop by calling
edje_object_part_geometry_get(), which in turns calls
_edje_recalc_do() which in turns calls the elicit code that requests
edje_object_part_geometry_get() and since it's still marked as
"dirty", it enters the loop...

the real fix is just the move of ed->dirty = 0; before calling
recalcs, but I also unmarked object as need_recalculate so we can even
avoid requesting object to recalculate from evas.



SVN revision: 38139
2008-12-14 16:30:29 +00:00
Sebastian Dransfeld 82c1c80632 Only save menu element name if it exists.
SVN revision: 38131
2008-12-13 21:00:49 +00:00
Vincent Torri 55f7df7ef9 * src/bin/Makefile.am:
* src/bin/evil_test_gettimeofday.c:
	fix unit test; now all tests pass, finally
	* src/lib/evil_unistd.c:
	fix gettimeofday() on mingw32ce



SVN revision: 38130
2008-12-13 18:43:16 +00:00
Vincent Torri 87ededafe7 * src/bin/Makefile.am:
and don't compile test_dlfcn...



SVN revision: 38129
2008-12-13 17:19:28 +00:00
Vincent Torri 93bded8fd2 * src/bin/evil_suite.c:
do not access to undefined pointer



SVN revision: 38128
2008-12-13 17:11:31 +00:00
Vincent Torri e4978aeae2 * src/bin/test_dlfcn.c:
remove dlfcn test, is in the unit test now



SVN revision: 38127
2008-12-13 16:07:23 +00:00
Vincent Torri 826fd4ce79 * src/bin/Makefile.am:
* src/bin/evil_test_dlfcn.c:
	* src/bin/evil_test_dlfcn.h:
	add dflcn unit test
	* src/bin/evil_suite.c:
	show result of the unit tests and add dlfcn unit test
	* src/bin/evil_test_environment.c:
	remove debug
	* src/bin/evil_test_gettimeofday.c:
	debug, not working yet :/
	* src/bin/evil_test_link.c:
	* src/lib/evil_link_ce.c:
	fix link support on Windows CE



SVN revision: 38126
2008-12-13 16:04:05 +00:00
Gustavo Sverzut Barbieri 643624fe59 helper: evas_object_image_filled.
This helper will take care of applying fill property to match object size.



SVN revision: 38120
2008-12-12 22:36:47 +00:00
Gustavo Sverzut Barbieri f29338d413 Bugfix: do not search/delete in non-existent hashes.
SVN revision: 38119
2008-12-12 22:34:20 +00:00
Gustavo Sverzut Barbieri 11d859481f Nasty bugfix: allow smart calculate to mark object as dirty again.
Wow, this was tricky to find since it is hard to trigger, thanks to
Canola complex edje files we could spot it!

In some cases we end with object being marked as dirty while
calculating its state (ie: edje), then we need to run smart calculate
again.

This has a drawback however: we cannot check for need_recalculate()
inside smart calculate anymore, we must assume it is only called if
the flag is set. To avoid that we could mark a shadow member and use
that or use a counter, that has the problem of using more data.




SVN revision: 38108
2008-12-11 21:55:22 +00:00
Cedric BAIL 642d8686de Remove ecore_hash and eina_hash use from ecore.
SVN revision: 38105
2008-12-11 13:55:47 +00:00
Cedric BAIL db11d16b7f Manipulating NULL iterator should be concidered as a defined behaviour as it
give the possibility to write small code like :

it = eina_hash_iterator_tuple_new(hash);
eina_iterator_foreach(it, do_something_cb, NULL);
eina_iterator_free(it);

If hash is empty, but valid it will return a NULL iterator for this
example.


SVN revision: 38104
2008-12-11 13:54:59 +00:00
Cedric BAIL b8d721ac05 If we set the data free callback of a hash, we expect it to be called when
calling all eina_hash_del functions.


SVN revision: 38102
2008-12-11 13:47:58 +00:00
Gustavo Sverzut Barbieri 3e9459fd60 Proper wrapper for evas_hash around eina_hash.
Eina hash api must get non NULL pointer allocated with
eina_hash_new(), but Evas hash started with NULL and would allocate
and destroy the hash as required by operations.

To do a proper wrapper we must ensure we don't call Eina hash API with
NULL, we must handle that outside Eina.

PLEASE do not remove this code again (it's the second time I add it),
this is the correct approach. Other than that is going after evas_hash
usage and converting directly to eina_hash.




SVN revision: 38091
2008-12-10 21:26:17 +00:00
Vincent Torri 89937e8cf5 * src/lib/Evil.h:
be sure to include stdio.h before redefining the
	functions that are declared int it.



SVN revision: 38076
2008-12-10 06:15:03 +00:00
Gustavo Sverzut Barbieri 1d560a6229 better handling of unset image fill property.
Unset value is now 0x0 and this is handled as invalid, with an error message.

1x1 is a valid fill, but it is very slow and often system hangs while
it scale the whole thing... usually nobody want it at 1x1, we just end
using that for unset values. With unset value at 0x0 it will not
happen and we'll know when we forgot to do so!.



SVN revision: 38071
2008-12-09 22:46:57 +00:00
Vincent Torri 26d595d0d8 * src/bin/evil_test_gettimeofday.c:
add output
	* src/bin/evil_test_link.c:
	add a unit test for readlink()
	* src/lib/evil_link_xp.cpp:
	fix readlink() and symlink() on Windows XP



SVN revision: 38070
2008-12-09 22:27:53 +00:00
Sebastian Dransfeld dd4a299895 Remove const qualifier.
Dynamically allocated buffers which we will free shouldn't be const.

SVN revision: 38069
2008-12-09 20:08:36 +00:00
Chidambar Zinnoury c4525334f3 Leak --: ecore_file_dir_get always returns a new buffer.
SVN revision: 38068
2008-12-09 18:28:45 +00:00
Gustavo Sverzut Barbieri c8d86791e6 Include stdio.h so ecore_getopt_help() is fine.
We need FILE* for ecore_getopt_help().



SVN revision: 38067
2008-12-09 18:15:28 +00:00
Cedric BAIL 2b278b9419 Remove use of evas_hash from evas and use directly eina.
SVN revision: 38066
2008-12-09 17:56:31 +00:00
Cedric BAIL 9bdf013fa4 Better put pointer at the beginning of the structure.
SVN revision: 38065
2008-12-09 17:55:33 +00:00
Cedric BAIL 9b9f752379 Only allocate hash bucket when needed.
Make eina_hash_del_by_key really different from eina_hash_del.


SVN revision: 38064
2008-12-09 17:39:48 +00:00
Cedric BAIL 00e8fba9ba All eina_hash_find* functions should not report problem when hash or key is NULL.
SVN revision: 38059
2008-12-09 14:59:30 +00:00
Cedric BAIL 8ee267ec0d Remove uneeded included.
SVN revision: 38058
2008-12-09 14:30:54 +00:00
Cedric BAIL b0e1863871 eina_hash_find should not complain when hash or key is NULL.
SVN revision: 38057
2008-12-09 14:24:08 +00:00
Cedric BAIL 68cfd7839f Add a visual feedback to counte test.
SVN revision: 38056
2008-12-09 13:58:04 +00:00
Cedric BAIL 24c1995b68 Change eina_counter_dump to return a string so it could work easily on windows.
SVN revision: 38055
2008-12-09 13:55:10 +00:00
Cedric BAIL af30207725 eina_hash_del must honor the data parameter when the key is passed. Propagate
it correctly.


SVN revision: 38054
2008-12-09 13:52:09 +00:00
Chidambar Zinnoury dfadbd5bd7 When your libc doesn't provide iconv, and that you use GNU libiconv, iconv is available on libiconv_plug.so.
SVN revision: 38052
2008-12-09 13:31:38 +00:00
Cedric BAIL 273b7422d6 It's cleaner to first include private header as they could define macro
differently than public interface.


SVN revision: 38050
2008-12-09 13:06:17 +00:00
Cedric BAIL d19801f7c2 Prevent warning from Eina Magic when hash population is 0.
SVN revision: 38049
2008-12-09 13:05:33 +00:00
Cedric BAIL 3c1b5cfb3c Fix documentation.
SVN revision: 38048
2008-12-09 13:02:44 +00:00
Cedric BAIL 55d9c97446 __UNUSED__ macro is not exported by eina.
SVN revision: 38045
2008-12-09 11:01:12 +00:00
Davide Andreoli d77abdd28b * Better size_hint calc for vertical and horiz layout, need to do the same for the other layouts
SVN revision: 38035
2008-12-09 00:02:48 +00:00
Carsten Haitzler 28c433974a olof patch - fix typo for password
SVN revision: 38034
2008-12-08 23:47:04 +00:00
Cedric BAIL 5358b1f84f Add integer and pointer hash table helper.
SVN revision: 38026
2008-12-08 17:31:55 +00:00
Cedric BAIL e51aa4745a Valgrind complain when doing IC Destroy after XCloseDisplay, doing it before
sounds better to valgrind.


SVN revision: 38021
2008-12-08 14:29:44 +00:00
Cedric BAIL 2c668d6747 The for loop inside _edje_file_del is accessing Edje_Real_Part that could be
destroyed by _edje_cache_coll_unref. So moving the call to _edje_cache_coll_unref
after the last use of Edje_Real_Part should be better.


SVN revision: 38020
2008-12-08 14:23:26 +00:00
Cedric BAIL 94aaa28ef9 Fix warning. evas_hash_free never returned anything.
SVN revision: 38019
2008-12-08 12:49:36 +00:00
Cedric BAIL c7b0e0a6b3 Fix include related to previous Eina Magic patch.
SVN revision: 38017
2008-12-08 10:51:51 +00:00
Cedric BAIL 199f900908 Application and library using Eina Magic API should be able to decide if they
want to check magic or not. This should not be forced by Eina config.


SVN revision: 38014
2008-12-08 10:18:05 +00:00
Iván Briano d4d14f54ed Very basic Input Method support. For now, it only uses X default to support things like composed characters with deadkeys kb layouts.
SVN revision: 38008
2008-12-08 00:28:37 +00:00
Gustavo Sverzut Barbieri 8ea28f64b7 hash: better handling of NULL, add magic checking.
* evas: if we automatically destroy hash, check for NULL before
   handling it to eina api, which expect elements to be created with
   eina_hash_new() and thus will fail on NULL.
 * eina: add magic checking for eina_hash and eina_hash_iterator, this will
   help spot when NULL is used.
 * eina_hash_foreach: do not try to create the iterator if hash is NULL.



SVN revision: 37982
2008-12-07 13:28:29 +00:00
Vincent Torri 7dfff8ac98 fix software_16_ddraw engine compilation
SVN revision: 37966
2008-12-06 20:30:15 +00:00
Vincent Torri 193eb2b92a detect fnmatch first in evil, then in iberty
SVN revision: 37963
2008-12-06 18:42:30 +00:00
Gustavo Sverzut Barbieri b21c687f61 refactor eina_hash_del*, expose simpler functions and avoid GCC hack.
By using simpler functions for hash element deletion we can avoid the
hack to shut up GCC warking about hash_num not being used. As these
simple functions are more often needed than the catch-all, expose them
as well.



SVN revision: 37962
2008-12-06 06:58:56 +00:00
Gustavo Sverzut Barbieri 09924b54e5 Let valgrind help with EINA_MAGIC.
Keep EINA_MAGIC at the end of the structure (WHEN POSSIBLE! Watch out
flexible arrays like char str[] at the end!)

this way if parts use EINA_MAGIC and others do not, it will possible overflow and valgrind can help us.

WARNING: make uninstall before update! Then make clean and make install, check if everything is working with "make check".



SVN revision: 37961
2008-12-06 06:53:14 +00:00
Gustavo Sverzut Barbieri 5939d76d9c Fix couple of issues with MAGIC handling.
eina_magic.h MUST include eina_config.h, otherwise it will not
consider EINA_MAGIC stuff. Worse than that, some files were including
that directly and were considering EINA_MAGIC attribute even if the
file that alloc'ed the memory were not!

Also add missing EINA_MAGIC_SET() to iterators and accessors.



SVN revision: 37960
2008-12-06 06:17:11 +00:00
Gustavo Sverzut Barbieri 08832b519b grow array only when required, use step properly.
We need to grow when we reach total amount, not when current + step > total.



SVN revision: 37959
2008-12-06 06:13:55 +00:00
Gustavo Sverzut Barbieri 091741f861 Force dummy_symbol to be visible.
"make check" was failing with -fvisibility=hidden.



SVN revision: 37958
2008-12-06 06:12:30 +00:00
Gustavo Sverzut Barbieri 6203f4b6be do not segv on NULL inlist.
this was exposed by "make check", counter had no tests and it was failing.



SVN revision: 37957
2008-12-06 06:11:39 +00:00
Gustavo Sverzut Barbieri a00eaac6a6 Make it possible to create iterators outside Eina.
Many places in EFL we just create walk something, create a list with
walked data, return, then the user walks it again and then deletes
(which will walk again). For such cases it's way better to define
iterators or accessors.

I'm not moving any EFL code to it now, but if people are interested,
things like evas_render_method_list(), evas_font_available_list(),
evas_objects_at_xy_get(), evas_objects_in_rectangle_get(),
evas_object_smart_members_get() are good candidates. If the subject is
already using Eina list, then you can just use
eina_list_iterator_new() and return it, otherwise you can define your
own iterator, which is very easy.



SVN revision: 37956
2008-12-06 03:41:03 +00:00
Gustavo Sverzut Barbieri 2f8f874b20 Shut up a bunch of warnings and fix some real errors.
SVN revision: 37954
2008-12-06 03:08:17 +00:00
Gustavo Sverzut Barbieri b023145eed shut up gcc warning, with comment.
SVN revision: 37953
2008-12-06 03:02:30 +00:00
Carsten Haitzler 84f8c174bf fix list accounting on sort! bad - how did this hide for so long?
SVN revision: 37951
2008-12-06 02:51:04 +00:00
Gustavo Sverzut Barbieri f8868ffa96 Fix namespace: Eina_Foreach -> Eina_Hash_Foreach.
SVN revision: 37950
2008-12-06 02:21:17 +00:00
Gustavo Sverzut Barbieri 03fca99e56 Add safe Eina list walk function.
SVN revision: 37949
2008-12-06 02:13:01 +00:00
Gustavo Sverzut Barbieri 00fd3ccc3a fix list iteration and removal inside edje box.
maybe we should add EINA_LIST_FOREACH_SAFE?



SVN revision: 37947
2008-12-06 01:44:01 +00:00
Vincent Torri 7b9b40334f * src/lib/evil_main.c:
always export evil_init() and evil_shutdown()



SVN revision: 37945
2008-12-05 22:50:24 +00:00
Gustavo Sverzut Barbieri 288a77ea18 Hopefully fix some problems with Edje fnmatch and callbacks.
* Fix buffer overflow with EDJE_PROGRAM_CACHE (not tested since I don't use it).
 * break_prog should always unset walking_callbacks and do after-tasks.
 * Fix list walking! ouch!!!



SVN revision: 37944
2008-12-05 22:32:04 +00:00
Cedric BAIL 9c381ceb1f Better error handling with eet identity.
SVN revision: 37937
2008-12-05 09:42:06 +00:00
Nicholas Hughart 0b63514546 Some tweaks/fixups for abstract sockets.
SVN revision: 37931
2008-12-05 04:48:12 +00:00
Chidambar Zinnoury 5c2c6049f1 Use includedir instead of prefix/include to install Eina headers.
SVN revision: 37925
2008-12-04 16:25:40 +00:00
Carsten Haitzler a0f7a66e8d in svn.
SVN revision: 37919
2008-12-03 22:21:40 +00:00
Vincent Torri c8bb3dc658 add cast
SVN revision: 37915
2008-12-03 17:59:39 +00:00
Vincent Torri 1457850b4f add cast
SVN revision: 37914
2008-12-03 17:58:26 +00:00
Chidambar Zinnoury ef7cd1e966 Typo: --enable enables an option.
SVN revision: 37913
2008-12-03 17:27:51 +00:00
Vincent Torri e407285fb1 * src/bin/evil_test_gettimeofday.c:
replace evil_gettimeofday by gettimeofday
	* src/lib/evil_string.c:
	* src/lib/evil_string.h:
	add strcoll() "port" to Windows CE OS. Note it's
	just strcmp, no locale stuff is used onn that OS.



SVN revision: 37910
2008-12-03 00:36:31 +00:00
Carsten Haitzler a2cd677cdc ok - revert scalecache until leak fixed.
SVN revision: 37899
2008-12-02 02:33:09 +00:00
Carsten Haitzler 72c25fd2fc quick - evas scalecache put this in svn do i dont lose my patch. i'll revert
and work on gettign the leak fixed.



SVN revision: 37898
2008-12-02 02:32:22 +00:00
Vincent Torri 1a897239c7 Patch by Dmitriy Mazovka:
add drag'n drop support in ecore_win32 (reworked) (missing files)


SVN revision: 37890
2008-12-01 22:43:04 +00:00
Vincent Torri 6a06a92ac8 add fullscreen support in software directdraw engine (win xp)
SVN revision: 37887
2008-12-01 20:38:05 +00:00
Carsten Haitzler 9cf7c7c3a3 hmm revert this for now - i think it broke efm... i think...
SVN revision: 37879
2008-12-01 11:41:32 +00:00
Carsten Haitzler b8b89cb17e flush should use select with a timeout and try write every 10th of a sec
SVN revision: 37877
2008-12-01 10:13:16 +00:00
Carsten Haitzler ad5c292def fix #defines for arm - 5e on supports pld! :)
SVN revision: 37874
2008-12-01 03:56:34 +00:00
Vincent Torri b1f46fb7e8 remove trailing spaces
SVN revision: 37851
2008-11-29 11:23:17 +00:00
Vincent Torri e12623ee46 * src/lib/evil_main.c:
define correctly EAPI



SVN revision: 37849
2008-11-29 10:56:20 +00:00
Carsten Haitzler 90d3729897 bad edje! leak! fix fix!
SVN revision: 37840
2008-11-28 13:54:21 +00:00
Vincent Torri 4862bc46f1 * Patch by Dmitriy Mazovka
- add shape support in ecore_win32
  - add drag'n drop support in ecore_win32 (reworked)
 * remove strange character (ecore_evas_win32.c)
 * include Eina.h before defining EAPI (Ecore_Data.h)
 * add -lole32 as lib for DnD, minor thing (configure.ac)

next steps will be the new direct3d engine, and full support
of DnD, shapes and fullscreen for the directdraw engine and
in ecore_evas.


SVN revision: 37831
2008-11-27 19:30:39 +00:00
Davide Andreoli ed830d3fe7 * typo
SVN revision: 37822
2008-11-27 09:43:00 +00:00
Samuel F. Baggen 04d7bd940b typo fixed: added x11 to glitz name (glitz_x11) in makefile
SVN revision: 37816
2008-11-27 02:13:35 +00:00
Cedric BAIL bb9eeaa8f0 Add a function to get the raw signature data.
SVN revision: 37809
2008-11-26 10:45:47 +00:00
Carsten Haitzler 266594739f re-index aliases on override of part name too.
SVN revision: 37805
2008-11-25 23:18:04 +00:00
Iván Briano a7d321651c Correct descriptions for the engines options. Thanks ashikase.
SVN revision: 37796
2008-11-25 01:52:13 +00:00
Carsten Haitzler ffde2cf694 so.. why do we check for cairo-svg or libsvg-cairo? isn't this a librsvg
problem - not ours, so we don't need to check?



SVN revision: 37795
2008-11-24 23:57:49 +00:00
Vincent Torri e2a220ac8d typo
SVN revision: 37790
2008-11-24 18:20:40 +00:00
Vincent Torri a659951ced * use the m4 macro EVAS_CHECK_ENGINE to check if an engine is available or not
* group the want_* variables related to engines and loaders at the beginning
   of configure.ac
 * use -no-undefined directly instead of a flag checked wrt the host
 * some clean up in Makefile.am files

Please report any problem


SVN revision: 37784
2008-11-24 06:18:31 +00:00
Iván Briano 0ee4d07727 Edje Box in. Have fun with it.
SVN revision: 37783
2008-11-24 05:15:15 +00:00
Gustavo Sverzut Barbieri 62d0d7eca0 Easy to use and powerful getopt implementation.
Create a parser description and give it the parameters, that's it. You
can store values (automatically converting types!), count occurrences,
make it true or false, create a list, choose from a list of items or
even specify your own callback to process arguments!

It was inspired by Python's optparse: http://www.python.org/doc/2.5.2/lib/module-optparse.html


SVN revision: 37781
2008-11-24 00:49:04 +00:00
Vincent Torri a8387b1087 remove trailing spaces
SVN revision: 37771
2008-11-23 14:49:55 +00:00
Davide Andreoli 49daa74741 * call the smart_changed function
SVN revision: 37762
2008-11-23 03:27:28 +00:00
Davide Andreoli bb2cc93ebc * add the function:
Evas_Bool evas_object_box_remove_all(Evas_Object *o, Evas_Bool clear);
* set min size hint on layout (flow layouts not done yet)


SVN revision: 37758
2008-11-23 02:01:38 +00:00
Vincent Torri 6c764421aa typo
SVN revision: 37746
2008-11-22 10:47:17 +00:00
Carsten Haitzler ee426d66d5 cleaner to re-use mul.
SVN revision: 37745
2008-11-22 09:28:38 +00:00
Vincent Torri d661628349 add evil init / shutdown. Necessary for gettimeofday on Windows CE
SVN revision: 37741
2008-11-22 07:55:02 +00:00
Vincent Torri d7092143aa * src/bin/Makefile.am:
* src/bin/evil_suite.c:
	* src/bin/evil_test_gettimeofday.c:
	* src/bin/evil_test_gettimeofday.h:
	add a small test for gettimeofday
	* src/bin/evil_test_memcpy.c:
	fix warning
	* src/lib/Evil.h:
	* src/lib/Makefile.am:
	* src/lib/evil_main.c:
	* src/lib/evil_main.h:
	* src/lib/evil_unistd.c:
	* src/lib/evil_unistd.h:
	* src/lib/evil_private.h:
	add gettimeofday for Windows CE natively. It is necessary
	to initialise evil with evil_init() now, to have that
	feature.
	* src/lib/evil_stdio.c:
	* src/lib/evil_string.c:
	fix warnings



SVN revision: 37734
2008-11-21 22:57:45 +00:00
kaethorn d489f5edc2 Fix configure flags in Debian rule.
SVN revision: 37727
2008-11-21 10:47:04 +00:00
kaethorn d39ef21f2f fix Debian rule to properly build doc.
SVN revision: 37726
2008-11-21 10:38:21 +00:00
Vincent Torri 5da71a34cd typo
SVN revision: 37725
2008-11-21 08:18:09 +00:00
Vincent Torri 28b9492829 formatting
SVN revision: 37720
2008-11-20 22:16:02 +00:00
Vincent Torri b058683e9c use m4 macro to check evas loaders
please report any problem


SVN revision: 37719
2008-11-20 22:00:50 +00:00
Cedric BAIL 9a5b397a3e Fix a little memory leak when iterating.
SVN revision: 37718
2008-11-20 13:26:18 +00:00
Gustavo Sverzut Barbieri 71f9ed1fc3 Fix size hint docs and improve them.
SVN revision: 37716
2008-11-20 03:02:27 +00:00
Gustavo Sverzut Barbieri c47275f609 add missing evas_object_smart_changed()
SVN revision: 37714
2008-11-19 12:20:20 +00:00
Vincent Torri e9798f4d5e add Windows CE gdi backend
SVN revision: 37713
2008-11-19 09:24:26 +00:00
Vincent Torri b5170a3e63 * formatting
* use a negative height for the biHeight member of the
   bitmap info (topdown bitmap)


SVN revision: 37712
2008-11-19 08:48:00 +00:00
Vincent Torri 5a93b3731e create the bitmap only once. Increased speed :)
SVN revision: 37711
2008-11-19 07:52:05 +00:00
Vincent Torri b8ae972c6c mem leak --
SVN revision: 37710
2008-11-19 07:29:27 +00:00
Vincent Torri ccf5e40899 add gdi backend to the win ce engine. Not working yet
but some other people can help me now with that code in svn

 * expedite is working but sometimes crashes. Maybe a big mem leak ?
 * maybe moving the creation of the bitmap in
   evas_software_wince_gdi_output_buffer_paste()
   to
   evas_software_wince_gdi_output_buffer_new()
   so that the memcpy is not necessary anymore   


SVN revision: 37709
2008-11-19 07:08:18 +00:00
Carsten Haitzler 44c07b8fc9 middle mouse does a paste request now.. unix stylin'
SVN revision: 37705
2008-11-19 06:22:12 +00:00
Carsten Haitzler 965b3be9db fix selection get
SVN revision: 37703
2008-11-19 02:14:50 +00:00
Carsten Haitzler d5bc0e8546 add calls to select all/none
SVN revision: 37700
2008-11-18 08:45:27 +00:00
Vincent Torri e3dd190240 remove the problem of the main loop taking 100% of the cpu
consumption on Windows


SVN revision: 37699
2008-11-18 06:56:31 +00:00
Carsten Haitzler ba0bf9010f and actually force styles to be assigned early.
SVN revision: 37695
2008-11-18 01:46:56 +00:00
Gustavo Sverzut Barbieri 9ede53480f minor optimization for box remove_at.
use eina_list_nth_list() so we can cut search time up to half, as eina
list can look backwards if position is close to list end.



SVN revision: 37692
2008-11-17 14:20:08 +00:00
Carsten Haitzler a867b99db0 make click below text put cursor at end
SVN revision: 37690
2008-11-17 06:17:09 +00:00
Carsten Haitzler 38f06f34e8 track subobjs (used by entry only for now) and emit signals to them too
SVN revision: 37688
2008-11-17 05:54:01 +00:00