Commit Graph

818 Commits

Author SHA1 Message Date
Cedric BAIL 8cfa89c10f * Evas: Increase number of Evas_Rectangle in the pool as we use them a lot.
SVN revision: 41047
2009-06-15 14:33:48 +00:00
Cedric BAIL 14693fd070 * evas: Fix SEGV when smart object's child come from another layer than
the parent.

	When we insert object inside a smart object, they could be attached to
	another layer. As long as ref counting work, nothing wrong will happen.
	But during destruction of an Evas, we were just looping over all layers,
	destroying each of them, without checking for refcounting. This could
	cause SEGV.
	      This patch introduce a third loop for wiping out all layers after
	destroying all Evas_Object. So no more SEGV, and no performance
	regression.

	Note: Do not rely on evas_object_layer_get on smart object's child, it
	could give you the wrong answer.


SVN revision: 41046
2009-06-15 14:25:21 +00:00
Gustavo Sverzut Barbieri 600d560fc6 Cleanup llvm warnings.
By: michael bouchaud.


SVN revision: 41033
2009-06-14 20:48:37 +00:00
Gustavo Sverzut Barbieri 3e04e9ec3f cleanup llvm warnings by michael bouchaud.
By: michael bouchaud.


SVN revision: 41024
2009-06-13 00:04:25 +00:00
Carsten Haitzler f1ec8f8b3e fix precise-in
SVN revision: 40878
2009-06-03 14:16:55 +00:00
Carsten Haitzler 7c66538545 fix corer case with utf8
SVN revision: 40867
2009-05-31 21:26:36 +00:00
Carsten Haitzler c3b8b4ee14 revertg big R to L patches because they break cursors and selection.... BACK
boy BACK!



SVN revision: 40783
2009-05-22 21:12:32 +00:00
Andreas Volz 040492e46a some docs
SVN revision: 40779
2009-05-22 20:21:56 +00:00
Carsten Haitzler e999c88e80 tasn's rtl pathes and improvements... continued!
SVN revision: 40715
2009-05-18 06:08:15 +00:00
Carsten Haitzler 1d75ac114a make reload work properly...
SVN revision: 40670
2009-05-15 11:48:20 +00:00
Carsten Haitzler f5c88e9d53 fix a corner-case textblock issue with end of line char pos
SVN revision: 40640
2009-05-14 12:52:44 +00:00
Carsten Haitzler c830f68a06 1. fix scalecache to actually respect env vars set!
2. fix textblock cursor stuff in corner case.



SVN revision: 40617
2009-05-13 12:20:14 +00:00
Vincent Torri 84afbb853e fix EAPI value on Windows
SVN revision: 40597
2009-05-11 18:16:34 +00:00
Carsten Haitzler 26dea1fee7 dont dirty on loadopt change - cache handles that
SVN revision: 40583
2009-05-10 22:42:09 +00:00
Carsten Haitzler 47f6f036c1 fix load opts to only unload/reload if opts changed for cserve
SVN revision: 40573
2009-05-10 03:06:49 +00:00
Carsten Haitzler f79b4a4a2f 1. scalecache config env vars an use them
2. more api's related to cserve



SVN revision: 40548
2009-05-08 11:26:25 +00:00
Carsten Haitzler 85bff718d6 1. scale cache now allows you to hint at the object if its dynamic, static or
none (ie default) and the engines actually understand it and use it.
2. fixes to scalecache and cserver too. more toto's done and its now been
stress tested by me - and i think cserve is ready to go gold. just enable it
with export EVAS_CSERVE=1 in your env for any eflapps - and run evas_cserve
(cmd-line options avalable plus cmd-line tol to query settings change on the
fly and query statsitics and state)



SVN revision: 40536
2009-05-07 13:29:56 +00:00
Carsten Haitzler b37f6643cf fix char-wrap min size calc!
SVN revision: 40522
2009-05-06 12:34:54 +00:00
Carsten Haitzler 46e8aa1b0d shared cache server++
is it ok?

1. it can be --disabled in evas's configure, but i think it works WITHOUT
disabling it (runtime) as it falls back to the old way of loading
2. it may cause build problems on some platforms - without it being enabled
we won't find out, so enable.
3. it needs enabling runtime to make use of it so it should be safe for now
until you enable it.

what is it?

it is a SHARED cache server - that means images loaded are loaded BY the
cache server (not by the actual process using evas). images are shared via
shared memory segments (shm_open + mmap). this means only 1 copy is in all
ram at any time - no matter how many processes need it , and its only loaded
once. also if another app has already loaded the same data - and its in the
cache or active hash, then another process needing the same stuff will avoid
the loads as it will just get instant replies from the cache of "image already
there". as it runs in its own process it can also time-out images from the
cache too.

right now you enable it by doing 2 things

1. run evas_cserve (it has cmd-line options to configure cache etc.
2. export EVAS_CSERVE=1 (im the environment of apps that should use the cache
server).

it works (for me) without crashes or problems. except for the following:

1. preloading doesnt work so its disabled if cserve is enabled. thisis
because the load threads interfere withthe unix comms socket causing
problems. this need to really change and have the cserve know about/do
preload and let the select() on the evas async events fd listen for the
unsolicited reply "load done". but it's not broken - simple preloads are
syncronous and forced if cserve is enabled (at build time).
2. if cserve is killed/crashes every app using it will have a bad day. baaad
day. so dont do it. also cserve may be vulnerable to apps crashing on it - it
may also exit with sigpipe. this needs fixing.
3. if the apps load using relative paths - this will break as it doesnt
account for the CWD of the client currently. will be fixed.
4. no way to change cache config runtime (yet)
5. no way to get internal cache state (yet).
6. if cache server exist - it wont clean up the shmem file nodes in /dev/shm
- it will clean on restart (remove the old junk). this needs fixing.

if you fine other issues - let me know.

things for the future:

1. now its a separate server.. the server could do async http etc. loads too
2. as a server it could monitor history of usage of files and images and
auto-pre-load files it knows historically are loaded then whose data is 
immediately accessed.
3. the same infra could be used to share font loads (freetype and/or 
fontconfig data).
4. ultimately being able to share rendered font glyphs will help a lot too.
5. it could, on its own, monitor "free memory" and when free memory runs
load, reduce cache size dynamically. (improving low memory situations).
6. it should get a gui to query cache state/contents and display visually.
this would be awesome to have a list of thumbnails that show whats in the
cache, how many referencesa they have, last active timestamps etc.

blah blah.

please let me know if the build is broken asap though as i will vanish
offline for a bit in about 24hrs...



SVN revision: 40478
2009-05-01 07:11:07 +00:00
Gustavo Sverzut Barbieri f783e3900d add missing "changed" flags.
SVN revision: 40409
2009-04-27 02:41:27 +00:00
Vincent Torri 7f98415206 add GDI engine.
todo: fullscreen and shape support


SVN revision: 40310
2009-04-23 03:20:51 +00:00
Carsten Haitzler 5399d14e78 limit init and fini to.. once!
SVN revision: 40261
2009-04-21 06:26:52 +00:00
Carsten Haitzler 38811d99c5 cleanup on shutdown better
SVN revision: 40242
2009-04-19 20:40:41 +00:00
Cedric BAIL 10a15524cc * evas: Finally remove as much free/malloc from the render path. Will need certainly
need some tunning on the number of Evas_Rectangle allocated in advance.


SVN revision: 40084
2009-04-15 13:40:37 +00:00
Gustavo Sverzut Barbieri 1a395af37d cedric I hate you :-)
remove last code using non-eina_mempool rectangles and abort() that
was triggering on clicks on titlebar.

Thanks to antognolli for reporting.



SVN revision: 40074
2009-04-15 03:14:41 +00:00
Gustavo Sverzut Barbieri 7468b45fbc export useful function.
SVN revision: 40065
2009-04-14 23:51:43 +00:00
Cedric BAIL 55e281b4ff * evas: Now all Evas_Rectangle are part of a pool. Next step would be to
remove free at the end of evas_object_render_pre_effect_updates and only
	do it on idle.


SVN revision: 40040
2009-04-14 12:15:07 +00:00
Cedric BAIL fa4c0f3ea3 * evas: Another attempt to fix clip cache. Now invalid clip cache every time
we change cur.geometry in the code (did a grep to locate this). I hope I did
	spot all users, as I didn't see bug in exec_buf, efm and in window title, I
	am confident enought to break svn again.

	* WARNING * This change can cause visual bug. Please report.



SVN revision: 40039
2009-04-14 10:47:15 +00:00
Cedric BAIL 0a662abf81 * evas: Oops, forgotten patch freeing without mempool.
SVN revision: 40038
2009-04-14 09:48:31 +00:00
Cedric BAIL d40e3ac01a * evas: Add a mempool. More speedup to come, depend on timing with "break" freeze.
SVN revision: 40037
2009-04-14 09:27:27 +00:00
Carsten Haitzler de96594bde revert - spotted clip bug in titlebar in e17.
SVN revision: 39966
2009-04-11 07:10:26 +00:00
Cedric BAIL d3a9b8307f * evas: This patch reintroduce the use of cache for clip. I don't know
why it was disable the first time, so it could lead to some graphic bug.
	Please report any strange behaviour.

	*WARNING* This could really introduce some visual bug.



SVN revision: 39940
2009-04-10 15:14:40 +00:00
Carsten Haitzler 481bde4366 raoul: patch to fix thml-escapes for textblock
SVN revision: 39914
2009-04-10 03:25:27 +00:00
Cedric BAIL df60ff6129 * evas: Make one more function inline.
SVN revision: 39894
2009-04-08 11:08:02 +00:00
Vincent Torri b61328192f API break (well, kind of...)
* evas_engine_info_set() returns now an int, to inform if
   an error occured or not when setting the info of the engine.
 * in the Evas_Func structure, the setup() method returns an int
 * all the engines are updated

I'll fix ecore_evas and ewl later (the compilation is still fine).

Gustavo: should I add EINA_WARN_UNUSED_RESULT at the end of the
evas_engine_info_set() function ?



SVN revision: 39670
2009-03-24 09:05:32 +00:00
Carsten Haitzler 19802a5705 leak--!
SVN revision: 39645
2009-03-23 10:02:26 +00:00
Cedric BAIL a01af7856b * evas_object_smart: Oops, the right test.
SVN revision: 39529
2009-03-17 17:56:06 +00:00
Cedric BAIL bdc54a6afd * evas_object_smart: Prevent adding a child from another Evas.
**** WARNING ****
	  E is bugged in some place, it does swallow object from another Evas in some place.
	With this patch, it will abort sooner. If you find situation where it abort, please
	report. This are nasty bug hidden in our code base. And yes, you will the white box
	of death, this is expected.



SVN revision: 39528
2009-03-17 17:45:37 +00:00
Carsten Haitzler 09176167bd more neon infra - just for "copies" right now. only 1 func filled in.
SVN revision: 39502
2009-03-16 10:50:37 +00:00
Viktor Kojouharov 2b196bcc54 --oopsie in the min size calc of the flow layouts
SVN revision: 39330
2009-03-02 13:47:50 +00:00
Viktor Kojouharov a5a7e167d9 more accurate min size calculation for flow layouts
SVN revision: 39310
2009-03-01 16:27:03 +00:00
Gustavo Sverzut Barbieri 87d5d0a037 Mark as changed when smooth scale flag changes.
This allows us to change to non-smooth on animations and then back to
smooth after animation is done.



SVN revision: 39300
2009-02-28 20:09:03 +00:00
Gustavo Sverzut Barbieri 071ad5b4aa minor optimizations to box recalculation.
just recalculate when required, and just mark as required when layout
really changes.



SVN revision: 39299
2009-02-28 20:04:55 +00:00
Viktor Kojouharov 999e7c9c54 size min hints for the flow layouts
SVN revision: 39297
2009-02-28 19:33:30 +00:00
Viktor Kojouharov 1b197b9542 it actually makes sense to have them overlap on justify, so go back
SVN revision: 39293
2009-02-28 18:06:37 +00:00
Viktor Kojouharov fee3b366bf and also for the vertical layout
SVN revision: 39291
2009-02-28 17:56:06 +00:00
Viktor Kojouharov 6554ab44d6 fix smaller-box-than-items problem for horizontal layout
SVN revision: 39289
2009-02-28 17:50:15 +00:00
Gustavo Sverzut Barbieri 0cd52d626b Fix flow layout if box size is smaller than required.
Reported and fix suggestion by Viktor Kojouharov.



SVN revision: 39286
2009-02-28 17:10:03 +00:00
Gustavo Sverzut Barbieri e46171ee07 box: remove unused parameters
SVN revision: 39285
2009-02-28 17:07:10 +00:00
Gustavo Sverzut Barbieri 56e28f91b6 Remove last standing warnings.
SVN revision: 39269
2009-02-27 16:35:32 +00:00
Gustavo Sverzut Barbieri 9a3570bfb9 Create macros to help initialize class structures.
also defined evas_smart_new() as deprecated.



SVN revision: 39266
2009-02-27 15:30:32 +00:00
Vincent Torri 7dd1e9e055 remove more 'unused parameter' warnings
SVN revision: 39223
2009-02-25 23:39:19 +00:00
Vincent Torri f344743dae fix some warnings reported by llvm (see http://local.profusion.mobi:8081/~lfelipe/output-efl/)
* mainly unused parameters
 * in src/lib/imaging/evas_imaging.c, set font to NULL
 * in src/lib/canvas/evas_object_gradient.c, add unititialized member

there are a *lot* of reported warnings by llvm, i'll fix them later

there are also *lots* of unused parameters (compile evas with -W). I'll
fix them later too



SVN revision: 39172
2009-02-24 08:31:31 +00:00
Carsten Haitzler 842cadce24 update debug code.
SVN revision: 39154
2009-02-23 07:21:37 +00:00
Cedric BAIL 720a9efe71 * evas_object_image.c: Remove a warning and return 1 as a success.
SVN revision: 39060
2009-02-17 17:36:29 +00:00
Carsten Haitzler 9062c9050a and support obscured rects for clip-out if middle of bordered image set to
solid. speedup.



SVN revision: 39051
2009-02-17 04:53:03 +00:00
Carsten Haitzler bda789960a fix minor bug in fill mode.
SVN revision: 39020
2009-02-15 02:53:24 +00:00
Cedric BAIL 630e5f1558 * evas/lib/canvas/evas_async_events.c: Use memset instead of PACKED.
SVN revision: 39003
2009-02-12 17:05:17 +00:00
Carsten Haitzler cb94c8fadd in theory - (not tested yet) allow hitns to set middle to solid of
borderscaling.



SVN revision: 39000
2009-02-12 13:38:33 +00:00
Cedric BAIL 166c76146d * evas/m4/ac_attribute.m4,
* evas/src/lib/canvas/evas_async_events.c: Fix long standing warning from valgrind.



SVN revision: 38996
2009-02-11 17:56:03 +00:00
Gustavo Sverzut Barbieri ad1af73d40 Do not inform callbacks that did not changed the state of object.
For some unknown reason evas was informing EVAS_CALLBACK_* even if the
original call did not changed the internal object state, that is, new
value is already equal to current value.

This is specially costly since Edje, Box, Table and possible other
layout engines will call evas_object_resize(), move(), show(), hide()
even if the state has not changed, assuming evas will ignore the call
(as it does). The real overhead might come if there are listeners
attached to these events, that in turn might do lots of other stuff,
leading to a torrent of useless calls.

I marked it for removal, please test it and uncomment '#define
CALLBACK_NOOPS' to get the old behavior back. It does seems to work
with e17 and edje_editor. If problems appear, let's try to fix the
real problem instead of getting this code back, it's a performance
penalty.



SVN revision: 38955
2009-02-05 14:37:58 +00:00
Gustavo Sverzut Barbieri a6e8f2cd36 Do not recalculate table/box if size does not really changed.
SVN revision: 38950
2009-02-05 12:38:04 +00:00
Cedric BAIL 5621e47f1c Correctly cancel each image object and not all at once.
SVN revision: 38658
2009-01-20 14:56:37 +00:00
Iván Briano 8d7855081a Make evas_object_table_smart_set static.
Makes no sense to export it when table is not meant to be inheritable.



SVN revision: 38516
2009-01-09 13:31: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 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
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 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
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
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 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
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
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
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 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 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
Carsten Haitzler 8cd80ffc56 more fixed to textblock plus an addition - reverse the markup.
SVN revision: 36664
2008-10-15 09:58:17 +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
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
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
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 61bbfbf54c remove unused variables
SVN revision: 35611
2008-08-21 22:11:18 +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
Cedric BAIL 53a094e414 Correctly use the string without escaped charactere.
SVN revision: 35179
2008-07-21 11:20:19 +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 d11bfc2323 remove trailing spaces
SVN revision: 35155
2008-07-18 11:04:06 +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 3242217c16 cedric rect + arrays patch for reducing allocs
SVN revision: 35024
2008-07-07 21:29:29 +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 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
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
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 777410eac2 Make the most used functions inline functions.
SVN revision: 34675
2008-05-26 13:08:54 +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 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
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 14cf29eede Use Evas_Coord_Rectangle in evas_object_image.c
SVN revision: 34415
2008-05-01 00:09:39 +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
Cedric BAIL 2a123c0d6a Add support for evas asynchronous events.
SVN revision: 34410
2008-04-30 12:21:31 +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
Cedric BAIL 1a9cfba889 Removing trailing white spaces.
SVN revision: 34269
2008-04-14 09:31:31 +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
Carsten Haitzler f2aeab1bd6 fix some escaping :)
SVN revision: 34066
2008-03-20 21:15:16 +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
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 5d571051b9 Add const to Evas api: objects and remaining bits.
SVN revision: 33716
2008-02-08 22:35:19 +00:00
Gustavo Sverzut Barbieri 2756696bbe Add const to Evas aoi (part 3), still lacks objects.
SVN revision: 33715
2008-02-08 21:42:01 +00:00
Gustavo Sverzut Barbieri bbc9773a26 Add const to Evas api (part 2), still lacks objects.
SVN revision: 33713
2008-02-08 20:57:30 +00:00
Gustavo Sverzut Barbieri 5233796eb5 Add const to Evas api, still lacks objects.
SVN revision: 33711
2008-02-08 20:44:09 +00:00
Gustavo Sverzut Barbieri 903a4d6e4d Add const to Evas_Smart_Class pointer.
The previous commit just removed the warning, but it was not the ideal
solution. The class is really a constant, nobody should change it
after it's assigned.


SVN revision: 33709
2008-02-08 20:03:48 +00:00
Gustavo Sverzut Barbieri 7cb7216314 Add const: evas_hash.c
As agreed on IRC, evas_hash_foreach() now takes const, to make clear
that hash shouldn't be changed. If one wants to change he must do a
cast and return 0.  However this will require users to be updated in
applications.


SVN revision: 33708
2008-02-08 19:55:03 +00:00
Gustavo Sverzut Barbieri 72b005350a Add missing cast.
SVN revision: 33707
2008-02-08 19:51:02 +00:00
Christopher Michael f665bd40d6 Comment out unused function...was giving a "defined but not used" warning
during compile. Left function intact, just commented out, in case it was
meant for use later.


SVN revision: 33658
2008-02-01 01:45:46 +00:00
Carsten Haitzler f8a8489e92 and have the event surfivie between object calls - that was an oops!
SVN revision: 33563
2008-01-23 09:00:59 +00:00
Carsten Haitzler a20bf8dc09 and... set event flags to 0 damnit!
SVN revision: 33561
2008-01-23 08:27:13 +00:00
Brett Nash f30bb5ed4a Make layer get work correctly for smart members.
Currently works fine until you change the smart objects layer.


SVN revision: 33117
2007-12-12 23:52:18 +00:00
doursse e21fb0f122 autostuff improvements:
* use non deprecated version of AC_INIT and AM_INIT_AUTOMAKE
   and check the required minimal versions.
 * add bzipped distribution archive
 * add AC_LIBTOOL_WIN32_DLL
 * forbid libtool to check fortran
 * compute libtool versioning from the version of the package
 * pass the directories based on ${prefix} to the preoprocessor
   with the -D option
 * replace INCLUDES, wich is deprecated since 2001 by AM_CPPFLAGS
 * remove useless -L flags in *_la_LDFLAGS


SVN revision: 32337
2007-11-04 09:21:50 +00:00
doursse 2898660d8a 16 bits software directdraw engine. Mainly for win ce users, I guess
SVN revision: 32020
2007-10-08 19:08:42 +00:00
andrunko 4b4d4ca3b9 Updated documentation.
Fixed documentation of Evas_Object_Image.
Added some more documentation.
Fixed typo on evas_list_remove_list documentation.


SVN revision: 31982
2007-10-05 19:37:21 +00:00
Carsten Haitzler a5d3f7ddc0 1. default object size to 0x0
2. remove some float numbers (were cast anyway)
3. make smart object mmove/resize only called if the obj changes


SVN revision: 31968
2007-10-05 04:52:10 +00:00
Carsten Haitzler e6aa181b56 add a DEL callback - called at the very start of object deleteion.
SVN revision: 31942
2007-10-03 04:09:36 +00:00
Carsten Haitzler 2ea744bc1b working on optimising software-x11 with the one-buffer persistence idea that
software-16 uses. it works and in some cases gets massive speedups (70%+) but
in a few its slowdowns (30% down) in expedite tests - why, i don't know. it
should be the same or better in all tests. disabled for now - also not
complete. < 32bpp wont' work and not sure rotation works and masks don't work
either.


SVN revision: 31928
2007-10-02 03:40:14 +00:00
andrunko 2c2ca77d5f Make sure image colorspace is properly set.
SVN revision: 31889
2007-09-30 15:04:51 +00:00
Gustavo Sverzut Barbieri cba48d38b5 Reorder emission of EVAS_CALLBACK_FREE event.
Now EVAS_CALLBACK_FREE is emitted after smart object's "del"
implementation, this way bindings/wrappers can observe this event in
order to release its wrappers and be sure that they'll not be used
anymore.

Please check your existing code to see if you don't rely on the old
behavior.


SVN revision: 31800
2007-09-25 13:33:12 +00:00
Carsten Haitzler eafbf9bd38 removbe by list item not data item - faster.
SVN revision: 31799
2007-09-25 13:26:23 +00:00
Carsten Haitzler 819e078f4d fix infinite loop!
SVN revision: 31710
2007-09-13 23:16:11 +00:00
Gustavo Sverzut Barbieri 03cca32caa Fix bug of type truncation on 64bits platform.
Returning a pointer (possible 64bits) where an integer (possible
32bits) is expected may truncate the type, returning just one part
that may be full "0", leading to incorrect behavior. This fix checks
against NULL and resulting value is either 0 or 1.

By: Brett Nash (kill-a-1-in-4-billion-crash.patch)


SVN revision: 31698
2007-09-13 14:28:32 +00:00
tilman 1bd182b2f1 When we're drawing text objects, don't apply the horizontal bearing ourselves.
The font drawing code already takes care of that.

This fixes alignment problems most visible with monospaced fonts.


SVN revision: 31511
2007-08-26 11:06:34 +00:00
moom c9264664d9 * Add interceptors for color_set(), clip_set() and clip_unset()
SVN revision: 31460
2007-08-22 16:45:37 +00:00
doursse 8474937ef3 Direct3D engine. I'm not an expert of that api, so there should room for lots of improvements
SVN revision: 31359
2007-08-17 09:16:26 +00:00
Sebastian Dransfeld 07c37865cf Remove wrong comma in printf statement.
SVN revision: 31290
2007-08-13 05:17:44 +00:00
doursse 31c47b3461 Glew OpenGL engine added. Windows can have an opengl engine thgough the Glew library, now. See INSTALL note
SVN revision: 31180
2007-08-05 07:22:44 +00:00
Carsten Haitzler 4b435be1ed move a chunk of stuff to use evas_smart_class_new() - evas_smart_new() will
probably die as it's already got legacy funcion methods for layer etc. stuff.


SVN revision: 31161
2007-08-04 13:12:43 +00:00
Carsten Haitzler a6d0bff73f was screwing around hunting down bug in edje...
SVN revision: 31106
2007-08-01 14:35:30 +00:00
Gustavo Sverzut Barbieri eda1f13b33 Support for selectable pointer_mode.
Evas now support objects that do not grab mouse down event (NOGRAB) aside
with the default (AUTOGRAB). API is meant to be extensible.


SVN revision: 30950
2007-07-24 14:20:07 +00:00
Carsten Haitzler d6f9cc797e adrunko's precise event patch
SVN revision: 30939
2007-07-23 14:22:57 +00:00
Carsten Haitzler be1ba8873b no need for extra nul byte check - while terminated IF its null. so known
condition. formatting too.


SVN revision: 30923
2007-07-21 03:06:08 +00:00
Gustavo Sverzut Barbieri b4ab277e21 Fix bug introduced with r1.138, removed incorrect offset table.
I changed evas_object_textblock_text_markup_get() to just return
previously known contents, not try to recreate them set with other
means, this was not used (at least in our CVS) and was slow and
incorrect.


SVN revision: 30919
2007-07-20 22:30:12 +00:00
Carsten Haitzler 694cab4e14 0
cedric's patches broke emotion - fix.


SVN revision: 30888
2007-07-18 04:42:23 +00:00
Carsten Haitzler 6c167c3a6d cedric's sdl patch.
SVN revision: 30845
2007-07-16 07:25:35 +00:00
Carsten Haitzler 78408fe60a 1. fix a lot of things so they pass make distcheck - so many things have
broken. guys - need to be more careful!
2. asparagus
3. some extra docs/comments for evas


SVN revision: 30696
2007-07-10 00:13:26 +00:00
Carsten Haitzler da64700f13 fix from brett
SVN revision: 30677
2007-07-09 10:39:49 +00:00
Carsten Haitzler 0c4af24a33 save a few bytes by packing structures better... simple savings :)
SVN revision: 30486
2007-06-28 23:22:20 +00:00
kiwi a001af9e23 fix some warnings, mostly missing "void" when a function has no parameters
SVN revision: 30474
2007-06-27 10:57:54 +00:00
Carsten Haitzler c303f04048 add an engine idle flush
SVN revision: 30355
2007-06-17 02:56:59 +00:00
Gustavo Sverzut Barbieri 6398a2c6dc Add branch prediction fixes
SVN revision: 30237
2007-06-04 18:31:30 +00:00
Carsten Haitzler 849e428e7f documentation from brett... tiler can compiler again.
SVN revision: 30221
2007-06-04 09:48:28 +00:00
doursse 2bbb2619f9 add the DirectDraw engine. Evas is now available on Windows (tm)
SVN revision: 30089
2007-05-27 06:43:23 +00:00
tilman 07ff938e34 rework how the html entity escape arrays are stored. this saves a few hundred bytes on the data section of the library, kills off ~300 locations, and makes the so 77K smaller.
SVN revision: 30012
2007-05-17 22:48:48 +00:00
tilman 840acd78a4 missing commas in important places ftl
SVN revision: 30001
2007-05-15 19:19:00 +00:00
tilman 936b791547 a bunch of constness fixes
SVN revision: 29871
2007-05-06 11:29:37 +00:00