Commit Graph

1297 Commits

Author SHA1 Message Date
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 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
Gustavo Sverzut Barbieri aa3cd47bf2 oops, fix doc example.
SVN revision: 38267
2008-12-21 18:19:33 +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 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
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
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 31658d4f1e Added iterator and accessor to box and table
SVN revision: 38203
2008-12-18 02:39:09 +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
Carsten Haitzler 4b2fd7c5aa engine in list--
SVN revision: 38177
2008-12-17 08:24:09 +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 0b2c10c1c6 Add function prototypes to header.
SVN revision: 38154
2008-12-15 20:31:26 +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 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
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
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
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
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
Cedric BAIL 94aaa28ef9 Fix warning. evas_hash_free never returned anything.
SVN revision: 38019
2008-12-08 12:49:36 +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 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
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
Carsten Haitzler ad5c292def fix #defines for arm - 5e on supports pld! :)
SVN revision: 37874
2008-12-01 03:56:34 +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
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
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
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 3e2108728f and only remove markup if we have a style...
SVN revision: 37661
2008-11-15 13:57:37 +00:00
Carsten Haitzler 7e6fb27b4c make scale set apply immediately on objects that do scaling...
SVN revision: 37656
2008-11-15 10:39:46 +00:00
Carsten Haitzler fec072d883 fix some formatting/indenting and explicitly look at mouse_down as a counter.
SVN revision: 37650
2008-11-15 05:13:09 +00:00
Gustavo Sverzut Barbieri 4e108162aa make it easy to write bindings for box.
giving an extra void *user_data to layout function is now easy to
write bindings, just give the callback to be a generic function that
will call the language/binding specific function handled as user_data.

Example, for python we can use:

   void _layout_dispatcher(Evas_Object *o, Evas_Object_Box_Data *priv, void *data) {
       PyObject *pyobj = data, *args;

       args = PyTyple_New(1);
       PyTuple_SET_ITEM(args, 0, Evas_object_from_instance(o));
       PyObject_Call(pyobj, args, NULL);
       Py_DECREF(args);
   }

   evas_object_box_layout_set(o, _layout_dispatcher, pyobj, Py_DecRef);


SVN revision: 37640
2008-11-14 23:10:29 +00:00
Gustavo Sverzut Barbieri 4ce0cbc6ea oops! fix bugs hinted by compiler warnings!
SVN revision: 37635
2008-11-14 21:33:10 +00:00
Vincent Torri d250e5501b Big patch to make Evas work (more or less) with Windows CE:
* when fopen used, open in binary mode
 * use Evil when fopen is used
 * clean a bit some Makefile.am and add Evil dependency where needed
 * in evas_path.c, remove useless old Windows CE code. It's managed by Evil, now
 * in Evas_Data.h, move Eina.h before EAPI is defined for Evas.
 * define _WIN32_WCE when the host is windows cee


SVN revision: 37476
2008-11-05 17:21:04 +00:00
Carsten Haitzler 9705e3c741 hmmm after some talking - for now put the transform patch on hold - we need
tyo fix up some of these breaks first and there isn't a lot of time devoted
to this. so revert this. it's in svn history so we can dig it out any time we
like.



SVN revision: 37453
2008-11-04 09:19:35 +00:00
Carsten Haitzler 3e984fee34 jose's transform patches. some things to note:
1. nearest scaling is now broken - it's always linear interpolation. this
will lead to slowdowns. i need to fix this - a must.
2. i think it's time i put in a transformed image cache that can cache an
image object at a transform (and share it) automatically.
3. transforms in non-software-engines will not work - broken. need to at
least do xrender and gl engines.

any volunteers to help?



SVN revision: 37447
2008-11-03 22:50:54 +00:00
Davide Andreoli f38e74e550 * remove \'too small\' categories
SVN revision: 37387
2008-11-01 22:21:10 +00:00
Davide Andreoli f526e28ac0 * More better cats\'
* remove some @ingroup in favor of @addtogroup

SVN revision: 37386
2008-11-01 21:50:36 +00:00
Davide Andreoli 08ca0e43c0 * put evas_object stack functions in the Evas_Object_Group
SVN revision: 37385
2008-11-01 21:13:21 +00:00
Davide Andreoli 6637117c95 * put all the verious objects (rect, image, text...) in a single macro category
SVN revision: 37384
2008-11-01 21:07:49 +00:00
Michael Lauer f10451da1f evas: rename 'delete' parameter in evas_object_table_clear to 'clear'.
delete is a reserved keyword in C++.


SVN revision: 37383
2008-11-01 20:55:22 +00:00
Davide Andreoli b1b189a0bb * remove \'too small\' groups (unify image and gradient groups)
* fix some modules name to be more consistent

SVN revision: 37382
2008-11-01 20:19:28 +00:00
Davide Andreoli 92dfd49fdb * Add a Texblock doxy category and put all the textblock_* functions to apper under it
SVN revision: 37381
2008-11-01 19:40:07 +00:00
Gustavo Sverzut Barbieri ef48d58df5 Comments about box and table.
SVN revision: 37372
2008-11-01 13:36:58 +00:00
Gustavo Sverzut Barbieri b2470c6cd6 Implement non-homogeneous (regular) table layout.
It's now complete, needs some more testing and possible fix corner
cases, but should do the same as els_table (from elementary).


SVN revision: 37362
2008-11-01 00:03:17 +00:00
Gustavo Sverzut Barbieri f2791cdc56 Add evas_object_table, make evas_object_box more consistent.
Table code is still *incomplete*, it just do homogeneous layouts as
I'm still trying to figure out how to make it great.

I'm not expecting to make layout configurable, as we did for box, but
if you think it's required we can do that later.

Now that the public API of both BOX and TABLE are in, we can add these
as parts of Edje.



SVN revision: 37359
2008-10-31 17:42:47 +00:00
Cedric BAIL 9840ad8c4e eina_hash_foreach doesn't allow safe removal of entry during iteration anymore.
SVN revision: 37354
2008-10-31 11:07:10 +00:00
Cedric BAIL cdf08d5696 Fix bug when shutting down all engine and still have some font in the cache.
Draw back: When we are destroying an Evas canvas, we loose all cached font
that are not used anymore.

A correct fix would be to link Fndat to the Evas that provide and use them.
And only delete them when no more Evas reference them.


SVN revision: 37353
2008-10-31 10:46:46 +00:00
Carsten Haitzler 8e06d6fbea fix segv in pw mode
SVN revision: 37351
2008-10-31 06:18:18 +00:00
Vincent Torri 3fe7c5c077 remove useless fnmatch_libs
SVN revision: 37298
2008-10-29 08:36:22 +00:00
Carsten Haitzler ff536078be another sachiel fix! :)
SVN revision: 37292
2008-10-29 03:29:10 +00:00
Carsten Haitzler 09c1768c99 sachiel patch!
SVN revision: 37265
2008-10-28 06:37:16 +00:00
Carsten Haitzler 9761b10afa fix possible segv
SVN revision: 37263
2008-10-28 05:22:50 +00:00
Carsten Haitzler e7b5030226 segv nuked thansk to scahiel and a leak plugged thansk to valgrind.
SVN revision: 37261
2008-10-28 04:01:10 +00:00
Gustavo Sverzut Barbieri 34397f7fc6 always copy all members from parent Evas_Smart_Class.
SVN revision: 37254
2008-10-27 21:21:53 +00:00
Cedric BAIL ee6d4e42d5 Fix a little typo.
SVN revision: 37219
2008-10-27 10:11:44 +00:00
Carsten Haitzler c15ea4d731 dont repeat code
SVN revision: 37191
2008-10-27 03:12:59 +00:00
Carsten Haitzler 9ec09d258b less than map end!
SVN revision: 37190
2008-10-27 03:03:59 +00:00
Gustavo Sverzut Barbieri 5026fa724a add evas_object_box.
Box is a smart object to help with the common task of laying out lots
of objects. It's very flexibile and one can customize the layout
function on a per-object basis dynamically, just set a new layout
function (the most common are provided). By default layouts use size
hints from children to do their work, but one can also add new
properties, just subclass with evas_object_smart_smart_set() and then
define your own option_* callbacks.

This code was ported from Guarana (widgets/sequence_box.c) with
permission of ProFUSION embedded systems so it can be relicensed from
LGPL to Evas license.

Original author: Gustavo Lima Chaves <glima@profusion.mobi>
Port: Gustavo Sverzut Barbieri <barbieri@profusion.mobi>



SVN revision: 37188
2008-10-27 02:22:41 +00:00
Sebastian Dransfeld 6f8f89d2c7 Correct function declaration for evas_hash_foreach
SVN revision: 37154
2008-10-26 16:19:09 +00:00
Sebastian Dransfeld ffcb66dec3 * Set changed = 1
* Remove unused variable

SVN revision: 37153
2008-10-26 16:18:58 +00:00
Sebastian Dransfeld d65c1e7507 Set gradient_changed to 1
SVN revision: 37152
2008-10-26 16:18:23 +00:00
Carsten Haitzler ff6d285c07 segs--
SVN revision: 37112
2008-10-26 05:37:38 +00:00
Gustavo Sverzut Barbieri 5854b1429e Add member_{add,del} as smart callbacks.
On the let's break 'em all bandwagon, add the two callbacks (or
virtuals if you like the name) so we can know when some object is
attached or detached as a member of our object, this will help
eliminate confusing and duplicate functions like
evas_object_smart_clipped_smart_add().

Please recompile *ALL* your libs and applications that depend on Evas
and Smart Objects, like ETK.



SVN revision: 37084
2008-10-25 02:49:19 +00:00
Sebastian Dransfeld 88c695c2ad Only unix should depend on signal.h
SVN revision: 37043
2008-10-24 06:49:44 +00:00
Carsten Haitzler bf8905c54d add a "repch" (replace char). for passowrd mode! :)
SVN revision: 36956
2008-10-22 08:57:30 +00:00
Carsten Haitzler e4e3b0d5a2 better escaping!
SVN revision: 36954
2008-10-22 04:44:22 +00:00
Cedric BAIL a360b26230 Declare dir in the right scope.
SVN revision: 36945
2008-10-21 16:54:30 +00:00
Cedric BAIL 0ea9b88ae1 Fix a typo.
SVN revision: 36944
2008-10-21 16:50:40 +00:00
Cedric BAIL 465b76a017 Remove Evas_List from Evas.
SVN revision: 36942
2008-10-21 16:31:05 +00:00
Cedric BAIL 7e74651236 Fix a potential bug jumping over one element when destroying them.
Didn't find a way to trigger it, but caught it during code review.



SVN revision: 36940
2008-10-21 15:23:24 +00:00
Cedric BAIL 68d377afe6 Rename EINA_INLIST_ITER_NEXT/EINA_INLIST_ITER_LAST to EINA_INLIST_FOREACH/
EINA_INLIST_REVERSE_FOREACH so it best match is behaviour. Asked by Gustavo.



SVN revision: 36928
2008-10-21 12:19:57 +00:00
Cedric BAIL e9ddcdd311 Remove evas hash.
SVN revision: 36862
2008-10-20 16:12:47 +00:00
Carsten Haitzler 03114c0dac and drop rendering text out of bounds.
SVN revision: 36853
2008-10-20 13:07:05 +00:00
Cedric BAIL bdfed791ea More use of iterator macro.
SVN revision: 36852
2008-10-20 12:36:48 +00:00
Carsten Haitzler 5497660f72 remove debugging.
SVN revision: 36850
2008-10-20 12:15:07 +00:00
Carsten Haitzler 9517f8f0e0 directly export eina deps for evas.
SVN revision: 36845
2008-10-20 10:58:50 +00:00
Carsten Haitzler f053582e31 1. fix no propagate
2. fix segv in textblock.



SVN revision: 36828
2008-10-19 23:58:56 +00:00
Cedric BAIL f9e815645f Replace heavy snprintf by eina convertion functions.
SVN revision: 36751
2008-10-17 11:59:49 +00:00
Cedric BAIL c99824328f Move from Evas_Object_List to Eina_Inlist and completly remove Evas_Object_List.
SVN revision: 36750
2008-10-17 11:23:18 +00:00
Carsten Haitzler 37ca3d9821 put format info in pops too when feeding from markup.
SVN revision: 36740
2008-10-17 03:16:11 +00:00
Carsten Haitzler 9e6d0e4ce8 more work to make it usable
SVN revision: 36737
2008-10-17 01:39:57 +00:00
Carsten Haitzler 2313cf3ed1 fix another booboo in textblock for editing multiline stuff
SVN revision: 36732
2008-10-17 00:04:17 +00:00
Carsten Haitzler b386c7ff6e als search for format items.
SVN revision: 36720
2008-10-16 14:18:50 +00:00
Cedric BAIL 9460febabb Remove easy to replace data type from Evas and replace them by Eina.
This make Eina a requirements for Evas.


SVN revision: 36717
2008-10-16 13:00:16 +00:00
Cedric BAIL e692738d22 Remove Evas_Array.
SVN revision: 36716
2008-10-16 12:27:07 +00:00
Carsten Haitzler 59d9e81427 more textblock work/additions for entry support.
SVN revision: 36708
2008-10-16 09:17:37 +00:00
Cedric BAIL 1cec65e922 Switch evas internal use of evas_stringshare to eina_stringshare.
SVN revision: 36674
2008-10-15 14:38:34 +00:00
Cedric BAIL 5b87d765b6 Fix for CPU_* use with evas_pipe.c.
SVN revision: 36673
2008-10-15 14:25:27 +00:00
Carsten Haitzler 8cd80ffc56 more fixed to textblock plus an addition - reverse the markup.
SVN revision: 36664
2008-10-15 09:58:17 +00:00
Cedric BAIL 0d82a4a75a Remove duplicated declaration.
SVN revision: 36654
2008-10-14 12:43:45 +00:00
Carsten Haitzler 8cac2fe220 fix some minor bugs in textblock with cursor pos's, text insertion etc.
SVN revision: 36645
2008-10-14 02:45:55 +00:00
Cedric BAIL ad1525e5f9 Make evas depend on eina. No change in the code yet, so just fix your build system and no bug must show up.
SVN revision: 36621
2008-10-13 15:58:56 +00:00
Carsten Haitzler 29a4c2a8c2 formatting
SVN revision: 36440
2008-10-05 03:47:52 +00:00
Carsten Haitzler 84218c5694 fix missed assignment
SVN revision: 36435
2008-10-04 17:28:43 +00:00
Carsten Haitzler b2fe56136a fix typo and dont call chnages if no change on size hints.
SVN revision: 36434
2008-10-04 17:10:44 +00:00
Carsten Haitzler a5a9004c5a and init size_hints struct with defaults on alloc.
SVN revision: 36433
2008-10-04 16:57:02 +00:00
Carsten Haitzler 34e595f87a return a "default" max of -1 x -1 - 0x0 max isnt that sensible! (-1 ==
unlimited)



SVN revision: 36432
2008-10-04 16:53:47 +00:00
Carsten Haitzler 204993a635 ok weight default 0
SVN revision: 36431
2008-10-04 16:42:04 +00:00
Carsten Haitzler 09cfefd9dc and have sane default values for weight and align.
SVN revision: 36430
2008-10-04 16:12:48 +00:00
Carsten Haitzler 07447cf079 add align, weight and padding hints for evas objects.
SVN revision: 36429
2008-10-04 16:11:23 +00:00
Vincent Torri dfdf20227b Fix compilation on Win32. Patch by Nicolas Aguirre
SVN revision: 36381
2008-10-01 15:42:48 +00:00
Carsten Haitzler 6dfb74c54a and now i added "line dither". what is this. it's only for non-rotated 16bpp
565. what it does is it's a half-way house between no dither and "small
dither mask". what is does is change the "rounding" between odd and even
lines. the resolt is not as nice as small (or large) dither mask - but its
almost "good". it gives a horizontal-blinds like look to dithering. it's
almost as fast as no-dither in my tests on a core2 (of course making lots of
use of branch prediction or conditional instructins - whihc arm nd x86 have).



SVN revision: 36373
2008-10-01 06:37:31 +00:00
Carsten Haitzler 4e809cf60d 1. yuv fix for unused algorithm :)
2. jose's 16bit speedup patches. quick summary:

speedups:
large dither 409 -> 518
small dither 451 -> 524
no dither    728 -> 757

(reference) 32bit gets: 853



SVN revision: 36369
2008-10-01 02:27:18 +00:00
Carsten Haitzler bc7d6544e9 speedups in c yuv->rgb from joseg. :) 11% - but only if u dont have mmx/sse
or altivec. this is c fallbacks only.



SVN revision: 36243
2008-09-25 05:30:23 +00:00
Vincent Torri adb3896f4c link libevas against 16 bits lib when needed
SVN revision: 36177
2008-09-22 20:30:31 +00:00
Vincent Torri eae91bae39 * remove trailing spaces in configure.in
* compile src/lib/engines/common16 on if one of the 16 bits
   engines is requested


SVN revision: 36176
2008-09-22 17:55:13 +00:00
Carsten Haitzler bcabb2be60 and when deleting a hash item - if hash data != NULL delete EXACTLY that
entry (if there are duplicates... this will avoid removing the wrong one)



SVN revision: 36092
2008-09-19 09:36:48 +00:00
Gustavo Sverzut Barbieri 6c918f3d8a Do not assume fontconfig will find a font.
If you have no fonts in fontconfig, it returns NULL... believe me, it
does happen.



SVN revision: 36029
2008-09-16 22:59:59 +00:00
Cedric BAIL bd2c5d6648 Add image preloading support.
This should work without performance impact for all engine.


SVN revision: 36018
2008-09-16 14:52:57 +00:00
Vincent Torri 892ea362f0 * fix compilation with c++ compilers
* remove trailing spaces


SVN revision: 35973
2008-09-13 07:45:47 +00:00
Cedric BAIL 665ee944ee When you know what you do, it could make sense to remove all magic check
from Evas and win some speed boost. Use really carefully.

Still turn MAGIC_DEBUG on by default.


SVN revision: 35965
2008-09-12 13:14:08 +00:00
Carsten Haitzler 0cf0cd8e15 ensure scaling multiplies are promoted to fp.
SVN revision: 35924
2008-09-10 06:40:54 +00:00
Carsten Haitzler c1d838efa7 promote scale to fp.
SVN revision: 35920
2008-09-10 05:43:25 +00:00
Carsten Haitzler d06c5e9efb and add a scale factor per object. right now text and textblock use it.
that's about it. a bit hacky - but works and frankly.. the idea is that u'd
set a scale factor once really and not change it per obj... most likely.




SVN revision: 35896
2008-09-09 14:14:26 +00:00
Carsten Haitzler aa2fded0fc some notes on kerning bugs in ft2.
SVN revision: 35876
2008-09-08 02:08:43 +00:00
Gustavo Sverzut Barbieri e861013485 Document the default behavior.
SVN revision: 35862
2008-09-07 02:11:46 +00:00
Gustavo Sverzut Barbieri 3f90a63416 Add Evas Clipped Smart Object.
This class covers the most common cases, usually its sub-classes will
have to implement resize and override one or two methods at most,
making the smart object usage less error prone and easier.

Default behavior is:
 - add: creates a hidden clipper with "infinite" size;
 - del: delete all children objects;
 - move: move all objects relative relatively;
 - resize: not defined;
 - show: if there are children objects, show clipper;
 - hide: hides clipper;
 - color_set: set the color of clipper;
 - clip_set: set clipper of clipper;
 - clip_unset: unset the clipper of clipper;

Documentation explains an easy way to inherit from this class and
still be able to use overridden methods.



SVN revision: 35861
2008-09-07 02:10:17 +00:00
Gustavo Sverzut Barbieri 58a49c2f69 Add calculate callback to Evas_Smart_Class.
Some people is using it for some time now without problems, so I'm
adding it to SVN to get some broader use. Remember to recompile ALL
libraries that depend on Evas as it will change the
EVAS_SMART_CLASS_VERSION and old classes will fail to load.

This will also change Edje so it will postpone _edje_recalc() to
render time, calculate() callback, however some methods will force
early recalculation.



SVN revision: 35860
2008-09-07 01:25:49 +00:00
Carsten Haitzler d73b8c5d7b updated patches from jose!
SVN revision: 35756
2008-08-31 02:04:31 +00:00
Carsten Haitzler c1fe72d7e4 jose has some new gradient work - these are his patches. nice work joseg! yes
- some enignes break as they dont have the stubbed out functions, and
xrender/gl engines dont even implement the drawing and need to (but are
stubbed out).



SVN revision: 35677
2008-08-26 05:45:04 +00:00
Peter Wehrfritz d095344c86 constness
SVN revision: 35612
2008-08-21 22:12:56 +00:00
Peter Wehrfritz 61bbfbf54c remove unused variables
SVN revision: 35611
2008-08-21 22:11:18 +00:00
Cedric BAIL 899a60456c Need to correctly initialize this value.
SVN revision: 35581
2008-08-20 13:49:04 +00:00
Cedric BAIL 9181503f9f * evas/src/lib/cache/evas_cache_image.c: Fix a typo that should have broken svg rendering in some case.
SVN revision: 35580
2008-08-20 12:14:30 +00:00
Jaime Thomas 0219f7fc2f Typo
SVN revision: 35336
2008-08-06 02:37:24 +00:00
Carsten Haitzler e20edb01e2 revert patch - breaks etk "drag scrolling".
SVN revision: 35247
2008-07-30 07:57:05 +00:00
Carsten Haitzler 4ed5796b2f cedirc patchies!
SVN revision: 35228
2008-07-26 13:04:29 +00:00
doursse 6a87729269 add some vim headers
SVN revision: 35183
2008-07-21 16:44:58 +00:00
doursse 9c58ab7087 * move blend functions declaration to their own header files
* add vim header


SVN revision: 35182
2008-07-21 16:10:48 +00:00
doursse 60391e746d * move draw functions declaration to their own file
* add missing headers


SVN revision: 35181
2008-07-21 15:52:09 +00:00
doursse 7d5e3d39e9 the inline file is evas_inline_array.x, not evas_array_inline.x
SVN revision: 35180
2008-07-21 12:03:28 +00:00
Cedric BAIL 53a094e414 Correctly use the string without escaped charactere.
SVN revision: 35179
2008-07-21 11:20:19 +00:00
doursse 3f28e61186 * move image declaration funtions to their own header file
* add vim header


SVN revision: 35173
2008-07-19 18:32:32 +00:00
doursse 83c733fbf7 * move line, polygon, rectangle API to their own files
* add vim header


SVN revision: 35172
2008-07-19 18:05:54 +00:00
doursse 193c21da9e remove tons of trailing spaces
SVN revision: 35171
2008-07-19 17:40:52 +00:00
doursse 261189e2e2 * move font and gradient declarations to their own files
* add vim headers
 * remove some trailing spaces


SVN revision: 35170
2008-07-19 17:13:42 +00:00
doursse bc8c99083b missing stdlib.h
SVN revision: 35164
2008-07-18 15:37:52 +00:00
Carsten Haitzler 986b3ded31 fix build. build properly.
SVN revision: 35163
2008-07-18 14:17:05 +00:00
Cedric BAIL 3b2a46c239 This call is already done at the end of a frame rendering, so no need to do
it also every time we restack something.


SVN revision: 35162
2008-07-18 13:31:06 +00:00
doursse 21a5e030f2 not needed anymore as they are in their source file, now
SVN revision: 35156
2008-07-18 11:11:04 +00:00
doursse d11bfc2323 remove trailing spaces
SVN revision: 35155
2008-07-18 11:04:06 +00:00
doursse 31f339cdc1 * copy inlined needed functions in evas_array.c, hence remove dependancy
of evas_common.h
 * use size_t when needed
 * add vim header


SVN revision: 35153
2008-07-18 09:38:03 +00:00
doursse 2497aae125 cvsignore++
SVN revision: 35150
2008-07-18 07:33:01 +00:00
doursse ac88597078 make cache functions link properly when using c++ compiler
SVN revision: 35144
2008-07-17 20:42:22 +00:00
doursse 47e866557d add cast for c++ compilers. Patch from Dmitriy Mazovka
SVN revision: 35138
2008-07-17 07:45:42 +00:00
doursse e576961d89 add vi formatting stuff
SVN revision: 35131
2008-07-16 20:47:22 +00:00
doursse 77a014170b formatting
SVN revision: 35130
2008-07-16 20:46:47 +00:00
doursse 0fd75a462a move pipe function declarations to their own file
SVN revision: 35064
2008-07-11 08:21:25 +00:00
doursse 493eb069a3 * remove trailing spaces in evas_pipe.c
* move scale function declarations to their own files


SVN revision: 35063
2008-07-11 06:36:30 +00:00
doursse 739be5c6b7 move evas_convert_main.h to evas_common.h
SVN revision: 35062
2008-07-11 05:50:56 +00:00
doursse 2679ced73b move evas_object_list declaration from evas_common.h to Evas_Data.h
SVN revision: 35061
2008-07-11 05:42:44 +00:00
doursse 312b0dfc6c add header files to the distribution
SVN revision: 35059
2008-07-10 22:58:04 +00:00
doursse fb9313c024 * move convert function declarations to their own header file
* add vim header in the files I modified
 * fix minor warnings

i think i don't break compilation on that commit :)


SVN revision: 35058
2008-07-10 22:53:33 +00:00
Carsten Haitzler 5b74833dfb broke evas! change other evas_common_array calls to be evas_array! :)
SVN revision: 35056
2008-07-10 21:14:44 +00:00
doursse b5011a094e evas_common_array_hash_free --> evas_array_hash_free
SVN revision: 35054
2008-07-10 18:12:45 +00:00
doursse 0760cc6776 evas_common_array_hash_free --> evas_array_hash_free
SVN revision: 35053
2008-07-10 18:08:18 +00:00
doursse 9b35bc26f3 * move evas_mempool from main.c to it's own file in data/ as it's only
used by evas_list
 * add a header files for evas_cache, evas_path and evas_module
 * remove trailing spaces in evas_list.c


SVN revision: 35052
2008-07-10 16:38:54 +00:00
doursse 11a6fd276c fix comment
SVN revision: 35043
2008-07-09 16:56:33 +00:00
doursse 993697fec7 * move _Evas_Object_List and _Evas_Hash structures to Evas_Data.h
* move Evas_Array_Hash and Evas_Object_List declarations to Evas_Data.h
 * move evas_array_hash.c from engines/common/ to data/
 * remove Evas_Array_Double_Hash declaration (not used)


SVN revision: 35042
2008-07-09 16:50:33 +00:00
Carsten Haitzler 3242217c16 cedric rect + arrays patch for reducing allocs
SVN revision: 35024
2008-07-07 21:29:29 +00:00
doursse 2bda662d65 add Evas_Data.h to the headers to be installed
SVN revision: 34975
2008-07-02 04:46:20 +00:00
doursse a9e090a81b * move Evas_Hash_El from evas_common.h to evas_hash.c as
it is not used outside evas_hash.c
 * move data types api from Evas.h to Evas_Data.h


SVN revision: 34974
2008-07-02 04:44:38 +00:00
Carsten Haitzler 6f480338d4 cover up segv where somehow the alpha flag is set in the 16bit engine but the
alpha pixel pointer is NULL. couldn't see where that happens, but it's now
protected against it.


SVN revision: 34968
2008-07-02 00:57:26 +00:00
Gustavo Sverzut Barbieri d6b97fd852 Destroy pthread_attr when we do not need it anymore.
pthread manual says it is safe to destroy them after they are used
with pthread_create: "If the attributes specified by attr are modified
later, the thread���s attributes shall not be affected."


SVN revision: 34937
2008-06-28 15:29:57 +00:00
Peter Wehrfritz 254d60b8a4 add documentation stubs for the textblock
SVN revision: 34935
2008-06-28 10:55:58 +00:00
Carsten Haitzler d8288d5531 bad *alloc! bad sizeof usage. bad! :)
SVN revision: 34856
2008-06-19 04:09:33 +00:00
Cedric BAIL 2ebe01d957 Correct the removal of an object.
SVN revision: 34842
2008-06-17 11:24:48 +00:00
Cedric BAIL 3796312acf Cleanly handle evas_object_release.
SVN revision: 34841
2008-06-17 09:04:12 +00:00
Carsten Haitzler d4e8f592bb fix arrya state engin issue... redraws vanishing. fixed!
SVN revision: 34808
2008-06-12 13:22:26 +00:00
Cedric BAIL 4c9f900c60 Check the correct colorspace.
SVN revision: 34796
2008-06-10 14:21:06 +00:00
Cedric BAIL 346b2c922d Fix width correctly depending on colorspace.
SVN revision: 34791
2008-06-10 09:20:41 +00:00
Cedric BAIL 47bf4e1999 cvsignore++
SVN revision: 34778
2008-06-09 08:59:09 +00:00
Cedric BAIL 6a1b1c5ef9 Forgot to update the current allocated space.
SVN revision: 34744
2008-06-05 08:12:25 +00:00
Cedric BAIL e95f38aed8 Remove now useless code to force evas_render cache invalidation.
SVN revision: 34738
2008-06-04 16:44:05 +00:00
Cedric BAIL eaedf88d4d Fix osbcuring case with evas_render cache.
SVN revision: 34737
2008-06-04 16:42:39 +00:00
Cedric BAIL 1a1f807026 Their should be no direct modification of Evas_Object changed flag.
SVN revision: 34736
2008-06-04 16:41:16 +00:00
Cedric BAIL 55bc10d2a0 Add evas_array_remove.
SVN revision: 34735
2008-06-04 16:39:43 +00:00
Cedric BAIL 2b8c136ad9 Fix a little bug with alpha flags not being correctly set.
SVN revision: 34734
2008-06-04 08:20:39 +00:00
Gustavo Sverzut Barbieri b802f4c94a Add evas_object_event_callback_del_full()
This will check both function and data before removing the callback,
this is useful when you have lots of children monitoring parent, when
one child want to remove its monitoring function, others will remain.

Name is quite difficult to choose, I opted for "_full", but could be
"_with_data" or similar.


SVN revision: 34731
2008-06-03 20:33:40 +00:00
Cedric BAIL 9feac9ef8b Fix common 16bpp engine use of alpha.
SVN revision: 34729
2008-06-03 14:45:39 +00:00
Cedric BAIL d102e3db82 * Make RGBA_IMAGE_HAS_ALPHA and RGBA_IMAGE_ALPHA_SPARSE part of
Image_Entry flag structure. This fix a bug with 16 bpp software engine.

        * Change image loader module API to take any Image_Entry. Same goes
        for evas_common_image_premul and evas_common_image_set_alpha_sparse.

        * Use new eet API: eet_data_image_read_to_surface.


SVN revision: 34728
2008-06-03 09:09:39 +00:00
Carsten Haitzler c510afbd8e end_opt not needed there.
SVN revision: 34715
2008-06-01 00:40:58 +00:00
Carsten Haitzler 7752c8a3e5 and fix the gradient bug - yes. it is a GRADIENT BUG. you emms() when u are
totally done and may hand control back to a non rendering codepath - or
before u do any fp ops u are unsure of the cpu state beforehand. see the big
fat comment.

i was right. it was a missing emms.


SVN revision: 34707
2008-05-31 04:16:39 +00:00
Cedric BAIL 0c85857e57 Fix a typo.
SVN revision: 34701
2008-05-30 13:55:51 +00:00
Cedric BAIL 0ca6c0a0bb Add a private data member to cache image structure.
SVN revision: 34700
2008-05-30 13:33:40 +00:00
doursse 7f47953b78 missing EAPI in front of evas_common_gradient_geometer_get()
other gradient related functions (lines 1138 - 1143) seem to
be used only internally. Maybe we should move them elsewhere.


SVN revision: 34694
2008-05-30 05:56:53 +00:00
doursse 37eed61ee8 put unistd.h after sys/types.h. Seems to be needed for vc++. Thanks to Dmitriy Mazovka
SVN revision: 34691
2008-05-29 05:48:16 +00:00
Gustavo Sverzut Barbieri 40a63c7965 Fix typo!
SVN revision: 34686
2008-05-28 18:00:04 +00:00
Cedric BAIL eaa23bebce Replace evas_list used by evas_render by a cache of evas_array.
README: This should not break any EFL applications, but please check and report any breakage to me.


SVN revision: 34677
2008-05-26 13:24:24 +00:00
Cedric BAIL c766fe91db Add array type to evas.
SVN revision: 34676
2008-05-26 13:17:12 +00:00
Cedric BAIL 777410eac2 Make the most used functions inline functions.
SVN revision: 34675
2008-05-26 13:08:54 +00:00
doursse 5ce3b6752b fix compilation with a c++ compiler, add EAPI in front of all cache function declarations
SVN revision: 34659
2008-05-24 18:26:51 +00:00
Cedric BAIL 0e253aaca6 Their is no more allocation with evas_object_list. Remove useless test.
SVN revision: 34633
2008-05-21 12:23:47 +00:00
Gustavo Sverzut Barbieri a4ed92a1a5 Remove bugs with bitfield usage, make boolean usage clear.
This patch fixes the problem with bitfield of signed types (ie: char),
where the bit would be used for the signal, so 1 is considered -0 and
thus 0.

Move all the single bit fields to Evas_Bool, making it clear and also
avoiding these problems since Evas_Bool is unsigned char.


SVN revision: 34631
2008-05-20 20:56:39 +00:00
Carsten Haitzler 906040dab0 add a cancel to all mouse butotn presses
SVN revision: 34607
2008-05-19 04:15:22 +00:00
Carsten Haitzler cd0fd38a9c add file
SVN revision: 34606
2008-05-19 03:37:37 +00:00
Carsten Haitzler 0d42705593 adapt to newer valgrind goop
SVN revision: 34605
2008-05-19 03:29:54 +00:00
Carsten Haitzler 5887bde860 colorspace stuff in cvs.
SVN revision: 34604
2008-05-19 03:13:16 +00:00
doursse 37607b5e8e config.h is already included in evas_common.h
SVN revision: 34599
2008-05-18 22:28:10 +00:00
doursse fb826a2200 remove trailing spaces
SVN revision: 34586
2008-05-16 04:55:31 +00:00
Cedric BAIL b85c0672c4 Update the stride when needed.
SVN revision: 34566
2008-05-14 16:38:36 +00:00
doursse db311f0b05 wrong inclusion of Evas.h
SVN revision: 34561
2008-05-13 20:58:15 +00:00
Christopher Michael 355b22f3a7 Add missing prototype for _evas_cache_image_entry_delete because it was
being used before the function was defined.


SVN revision: 34516
2008-05-09 19:04:49 +00:00
Cedric BAIL d31b0db3ca Fix a bug when a file change when it's still in use. Thanks to Adriano Rezende for helping tracking the bug.
SVN revision: 34513
2008-05-09 16:18:18 +00:00
Carsten Haitzler 6c439dbd46 stringshare buckets -> 1024 + debugging for testing.
SVN revision: 34509
2008-05-08 08:34:55 +00:00
Cedric BAIL 5f41def624 Only call the allocation surface when required and correctly handle no_free.
SVN revision: 34480
2008-05-06 11:20:29 +00:00
Carsten Haitzler 0688234e2f notes - cedric... i think i may have found a problem here...
SVN revision: 34443
2008-05-03 08:31:26 +00:00
Carsten Haitzler 42facfffe6 1. dont free/realoc if no_free is set.
2. free then malloc otherwise realloc might ALSO have to memcpy if it cant
resize the segment whihc means overhead we dont need/want.


SVN revision: 34441
2008-05-03 06:38:45 +00:00
Carsten Haitzler 14e2187305 get rid of 0 byte alloc
SVN revision: 34440
2008-05-03 05:33:26 +00:00
Gustavo Sverzut Barbieri f89e8850c2 Fix users of evas_object_layer_set() outside the "short" range.
This also introduces EVAS_LAYER_MIN and EVAS_LAYER_MAX for ease of use.


SVN revision: 34421
2008-05-01 06:39:27 +00:00
Gustavo Sverzut Barbieri 27437c83cf Make layer number a short and Save 8 bytes.
By having a layer as a short (16 bits) we can pack it together with
the bitfields, saving 4 bytes per sub-struct, 8 bytes in total, also
bringing the struct down from 4 to 3 cachelines on my laptop.

Rationale: layers are mostly used to differentiate groups of objects
and they stacking, usually we have few layers and we use very large or
very small numbers to make a layer be at the top or at the bottom, but
usually we don't need so many layers.

Caution: code that use values like 999999 will break, so fix your
code! I'll provide another patch to fix all the CVS using these large
values.


SVN revision: 34420
2008-05-01 06:18:21 +00:00
Gustavo Sverzut Barbieri 7a82a3e43d Save 20 bytes moving smart data to its specific object struct.
This saves 20 bytes, bringing Evas_Object to 200 bytes, by moving data
specific to smart objects to their own struct (Evas_Object_Smart).

There is still one remaining member that could be removed:
smart.smart, this is used mainly to identify if one object is a smart
object or not. One possibility would be to add a bitfield to state
that, but another possibility is to check Evas_Object::object_data
and see if it's a smart or not.


SVN revision: 34419
2008-05-01 05:48:03 +00:00
Gustavo Sverzut Barbieri 4bc8043a10 Save 8 bytes from Evas_Object by packing interpolation.color_space.
Interpolation color_space (now ASHV or ARGB) was being used inside a
struct with 4 byte alignment. Remove it from the struct and make it a
bitfield so can be packed with the other fields. This saves 2
integers, so 8 bytes.


SVN revision: 34418
2008-05-01 04:14:08 +00:00
Gustavo Sverzut Barbieri 625e124f05 Reorganize Evas_Object to save 20 bytes.
This is a repack of bitfield members, was tested on GNU/Linux + GCC 4.1.2
and works fine. Needs further testing on other compilers.


SVN revision: 34417
2008-05-01 03:52:20 +00:00
Gustavo Sverzut Barbieri 80f8e23d77 Use more specific types in Evas_Object.
SVN revision: 34416
2008-05-01 03:42:21 +00:00
Gustavo Sverzut Barbieri 14cf29eede Use Evas_Coord_Rectangle in evas_object_image.c
SVN revision: 34415
2008-05-01 00:09:39 +00:00
Gustavo Sverzut Barbieri 29549249c4 Cosmetic: add name to structs: Evas_Coord_Rectangle.
Non-intrusive change to name structs of Evas_Coord x, y, w, h.

TODO: intrusive changes to use this struct, will need to fix ".c"


SVN revision: 34414
2008-04-30 23:58:43 +00:00
Gustavo Sverzut Barbieri dbf35460a6 Cosmetic: Visual alignment of member name.
SVN revision: 34413
2008-04-30 23:44:03 +00:00
Gustavo Sverzut Barbieri b46fc2a2f4 Save memory related to size hints.
Size hints are useful, but wasting 36 bytes for it on every object is a bit
too much: clippers and lots of other objects will have no need for it.

Now it's a pointer to a struct that will be allocated just when some value
is set, wasting 4/8 bytes more for the pointer when it is used, but saving
32/28 bytes when it is not.

This will also help to have alignment properties in future, that can come
as hints, without too much impact on memory consumption.


SVN revision: 34412
2008-04-30 22:51:08 +00:00
Gustavo Sverzut Barbieri 54c06677b4 Export missing size_hints methods.
SVN revision: 34411
2008-04-30 22:13:50 +00:00
Cedric BAIL 2a123c0d6a Add support for evas asynchronous events.
SVN revision: 34410
2008-04-30 12:21:31 +00:00
Gustavo Sverzut Barbieri 247e2556a5 Evas_Bool should be unsigned.
This will help the use of Evas_Bool to define bitfield structs like in:

struct s {
        Evas_Bool a:1;
        Evas_Bool b:1;
        Evas_Bool c:1;
        Evas_Bool d:1;
        Evas_Bool e:1;
        Evas_Bool f:1;
        Evas_Bool g:1;
        Evas_Bool h:1;
        Evas_Bool i:1;
};

It must be unsigned or it would use the signal bit, having "a == 0" to
be true anyway, as it would be just +0 and -0.


SVN revision: 34362
2008-04-24 15:31:57 +00:00
doursse 208d20a30f * Add Windows CE engine (1st step)
The engine is not entirely working right now. Recent devices which
  supports the raw frame buffer should work though. But having it in
  cvs will help me as I'm coding it most of the time "blindly" (no
  device to test it)

 * minor formatting in the top evel Makefile.am too


SVN revision: 34354
2008-04-23 19:17:59 +00:00
doursse 56eacad43d Autotools cleaning (not complete)
* formatting
 * put WIN32_CFLAGS in AM_CFLAGS and not AM_CPPFLAGS, as it is where it belongs
 * rename create_shared_lib to lt_no_undefined
 * pass -Wl,--enable-auto-import to libtool when compiling with cegcc
 * add files to EXTRA_DIST only when they are not in _SOURCES or _include_HEADERS (they
   are added anyway)


SVN revision: 34353
2008-04-23 06:55:10 +00:00
Cedric BAIL 47c7f1aa08 Fix a bug caused by duplicated entry in the activ and dirty cache list.
SVN revision: 34302
2008-04-17 15:30:03 +00:00
Carsten Haitzler 184bfa989d fix image dirties with yuv and software rendering
SVN revision: 34272
2008-04-15 15:20:53 +00:00
Cedric BAIL 1a9cfba889 Removing trailing white spaces.
SVN revision: 34269
2008-04-14 09:31:31 +00:00
Carsten Haitzler 38689004fb missed this. add.
SVN revision: 34255
2008-04-12 05:33:13 +00:00
Carsten Haitzler 35b8f22752 add missing files.
SVN revision: 34254
2008-04-12 02:11:07 +00:00
Carsten Haitzler ae1977a214 cedric's cache changes patch
SVN revision: 34253
2008-04-12 00:32:30 +00:00
Carsten Haitzler 27f1963fcb gustavo's size hint patch.
SVN revision: 34248
2008-04-11 23:12:20 +00:00
Carsten Haitzler 73b6cc9ff8 add a hold event to feed.
SVN revision: 34160
2008-03-31 21:38:38 +00:00
Gustavo Sverzut Barbieri 7fe7199a0c Minor reorganization of Evas_Object fields.
Move pointer_mode (size 4) before bitfields, leave 'delete_me' as it's
a byte, this still have 2 bits left from unsigned short and another
byte around delete_me to make it grom from 244 bytes.


SVN revision: 34068
2008-03-21 07:13:46 +00:00
Carsten Haitzler f2aeab1bd6 fix some escaping :)
SVN revision: 34066
2008-03-20 21:15:16 +00:00
doursse 219831980f * Remove Windows code in evas_module.c and use evilness instead
* Allow Windows Mobile to correctly load dll's
 * Use correct scheme for EAPI on Windows and include config.h when necessary
 * add -mwin32 to compiler flags when compiling with cegcc


SVN revision: 34024
2008-03-14 16:49:49 +00:00
Gustavo Sverzut Barbieri 79a5be8ec3 Fix missing null terminator in textblock.
Although I used 3 lines comments to state it was not required, it is
required because none of the values accounted includes the '\0'.


SVN revision: 33940
2008-03-06 01:06:58 +00:00
Gustavo Sverzut Barbieri 23c566bb07 Cleanup textblock's strbuf implementation.
This should provide correct code in a simpler way by sharing some of
the common code among functions.

Tested with E17 basics, require some applications with extensive usage
of textblock manipulation to do validate results.


SVN revision: 33939
2008-03-06 00:41:47 +00:00
Gustavo Sverzut Barbieri 4bd8fdaeeb Fix evas_object_textblock's strbuf implementation.
Code was not tracking the real size of the allocated memory and was
increasing the string size by one, so the '\0' was being accounted and
the string was being truncated visually.

Patch will remember the exact allocated size and just increment the
string size by the added string, not including it's null-byte
terminator.

This is based on Cedric's BAIL patch set 'evas_object_textblock more
character fix', but doing the minimum to fix the problem.

PS: this code will be rewritten to share some implementation in next commit.


SVN revision: 33937
2008-03-05 21:30:22 +00:00
Peter Wehrfritz 5acbfcb6e3 add portable pixmaps image loader
SVN revision: 33880
2008-03-01 15:27:20 +00:00
Carsten Haitzler 23aef39670 ooh - a case where callbacks may be cleared but we call one - list entry not
nulled out. fix.


SVN revision: 33848
2008-02-26 09:16:17 +00:00
Gustavo Sverzut Barbieri 4d5430d438 Add room for '\0' in textblock calculations.
In evas_object_textblock, the length forgot the '\0', this create a
buffer overrun.

Author: Cedric BAIL


SVN revision: 33747
2008-02-15 14:45:31 +00:00
Gustavo Sverzut Barbieri 9b983b96b1 Patch by Cedric to really shutdown font system.
every thing is not really cleaned on shutdown (It make it crash, if
you shutdown completely the font system and then restart it again).

Author: Cedric BAIL


SVN revision: 33746
2008-02-15 14:43:51 +00:00