Commit Graph

2200 Commits

Author SHA1 Message Date
Gustavo Sverzut Barbieri 3e08cf2e23 more evas_map utils, let's avoid duplicating these everywhere.
SVN revision: 43612
2009-11-11 12:33:52 +00:00
Carsten Haitzler 6e22b36451 step 1. some map support! images only right now. next. render-to-texture.
invasive change right now.



SVN revision: 43611
2009-11-11 11:39:25 +00:00
Vincent Torri 43fb7ca168 fix compilation of glew engine.
Unfortunately, the computer on which i compile does not
support OpenGL 2.0, so i can't test the engine.

SVN revision: 43610
2009-11-11 11:17:11 +00:00
Carsten Haitzler dbfacc1acf aaag found the bugger. printf--
SVN revision: 43601
2009-11-10 09:10:59 +00:00
Carsten Haitzler e58124942d ok. i'm hunting the bug. yes! printf debuggin gets in! i want others to be
able to find it too.



SVN revision: 43600
2009-11-10 08:50:11 +00:00
Carsten Haitzler c88c587e66 printf--!
SVN revision: 43597
2009-11-09 23:48:26 +00:00
Carsten Haitzler 730661d3da move check to more unlikely position in chekc order
SVN revision: 43585
2009-11-09 15:20:32 +00:00
Carsten Haitzler 9af8993332 god damnt that took some time! fixed some bugs with map + smart objcs +
repainting etc. etc. - seems to be working now in complex smart obj tests and
simple ones.



SVN revision: 43584
2009-11-09 15:18:37 +00:00
Cedric BAIL 3450e0aaea * evas: Add support for async callback in Quartz backend.
TODO: Add map support.


SVN revision: 43582
2009-11-09 13:04:41 +00:00
Sebastian Dransfeld 48eec51e60 Fix compiler warnings
SVN revision: 43536
2009-11-08 19:52:44 +00:00
Vincent Torri c6458f9e7f fix evas compilation when async preload is disabled
SVN revision: 43514
2009-11-07 18:19:44 +00:00
Carsten Haitzler 2c44b7dd55 smart children of mapped objs etc. work work!
SVN revision: 43506
2009-11-07 05:01:43 +00:00
Cedric BAIL 992a1b4f13 * evas: Add convertion function for 8bpp grayscale no pal (256 and 16 values).
SVN revision: 43491
2009-11-06 15:15:37 +00:00
Carsten Haitzler 402103b40b 2 more!
SVN revision: 43490
2009-11-06 15:15:12 +00:00
Carsten Haitzler 09554e67fb remove 2 more types
SVN revision: 43489
2009-11-06 15:14:34 +00:00
Carsten Haitzler 7ecfc00965 fix - remove typedefs of gl stuff. not needed.
SVN revision: 43488
2009-11-06 15:13:29 +00:00
Carsten Haitzler 3fa1906514 better text perf - less geometry data for complex text drawing.
simpler yuv with matrix.



SVN revision: 43487
2009-11-06 11:32:23 +00:00
Carsten Haitzler 9b56603875 oops - infinite loopies
SVN revision: 43486
2009-11-06 10:30:24 +00:00
Carsten Haitzler eb732b80e0 return somethnig
SVN revision: 43485
2009-11-06 10:26:54 +00:00
Carsten Haitzler 948bb4a63e fix smart map redraw errors.
SVN revision: 43483
2009-11-06 08:44:49 +00:00
Cedric BAIL a82d161c27 * evas_cache_image: Attempt to make a definitiv fix for race condition on cancel.
WARNING: If you continue to see any segv in E17, please report to me with a backtrace. Thanks.


SVN revision: 43465
2009-11-05 17:38:51 +00:00
Carsten Haitzler bf871d0975 try uncondiutionalyl remove dropped images from preload queue
SVN revision: 43464
2009-11-05 16:05:29 +00:00
Carsten Haitzler 9791b27a18 map coords in mapped objects.
SVN revision: 43463
2009-11-05 15:24:48 +00:00
Carsten Haitzler 36a2d10682 fix mul! out of premul range!
SVN revision: 43446
2009-11-04 09:25:52 +00:00
Carsten Haitzler bd0541a0b0 and fix the dual geometry thing - use the clip cache for uv geometry. perfect!
SVN revision: 43432
2009-11-03 15:41:36 +00:00
Carsten Haitzler 7526d0751e add a new npot extn string
SVN revision: 43430
2009-11-03 10:33:37 +00:00
Gustavo Sverzut Barbieri 3d77c82d15 immediately unset maps.
if we call evas_object_map_enable_set(o, 0) we expect things to go
back to normal immediately.



SVN revision: 43424
2009-11-02 15:58:48 +00:00
Carsten Haitzler 0007c51508 document map util calls
SVN revision: 43423
2009-11-02 15:43:51 +00:00
Carsten Haitzler f514e72be7 fix 3d util api. better now.
SVN revision: 43418
2009-11-02 12:20:50 +00:00
Carsten Haitzler 2510cad2f0 some more util calls for 3d goop. not 100% sure i like it atm, but.. here goes.
SVN revision: 43411
2009-11-02 08:52:23 +00:00
Carsten Haitzler b2ac7c110a fix mmx code
SVN revision: 43386
2009-11-01 11:45:16 +00:00
Carsten Haitzler 6f4db357dd i shoudl use join macro
SVN revision: 43385
2009-11-01 09:03:01 +00:00
Carsten Haitzler 069de70853 add color to the vertexes in map. this allows for fading/shading of
reflections, goraud shading for smooth 3d surfaces, mor realistic lighting
etc. etc. it comes at a small cost, but worth it.



SVN revision: 43384
2009-11-01 01:32:23 +00:00
Vincent Torri 00d1eab6d8 spelling
SVN revision: 43374
2009-10-31 15:18:19 +00:00
Carsten Haitzler 1545cc226e more map work. now only re-render map surface if size changed or any contents
changed. still renders all, but better now. keeps map surfacer around for
shits and giggles until map unset or object deleted. als be able to set
smooth map and disable alpha (for smart objects)



SVN revision: 43362
2009-10-31 09:08:01 +00:00
Carsten Haitzler bb3824803c finally! smart objects work with map!
SVN revision: 43343
2009-10-30 10:11:15 +00:00
Carsten Haitzler 335081d18c ifdef++
SVN revision: 43337
2009-10-29 11:54:47 +00:00
Carsten Haitzler 422faf09fd clean up map - move to #included worker and add mmx - just copied from normal
image scaler actually.



SVN revision: 43336
2009-10-29 06:52:51 +00:00
Carsten Haitzler 5cc7803ef9 the start of other objects being able to map! text objects work.. tested.
SVN revision: 43323
2009-10-28 08:59:01 +00:00
Mike Frysinger e204104de3 fix typo in previous change -- EVAS_DEFAULT_LOG_COLOR, not EVAS_DEFAULT_COLOR
SVN revision: 43300
2009-10-26 20:42:24 +00:00
Carsten Haitzler b0695a6712 fill in last fixme on rendering code and make it better written by moving
comon code blobs to functions.



SVN revision: 43298
2009-10-26 14:06:21 +00:00
Vincent Torri 56f784dacd fix+++
SVN revision: 43250
2009-10-24 17:00:34 +00:00
Vincent Torri d8c4555c36 eng_setup must return 1 on success and 0 on failure
SVN revision: 43248
2009-10-24 15:24:11 +00:00
Carsten Haitzler b36917b180 smooth map works (down to 1/2 size its good. its pretty much gl_linear, but
in software. but it looks gorgeous. rotations are groovey.



SVN revision: 43226
2009-10-23 13:17:22 +00:00
Carsten Haitzler 4a6609c55f fix copy & paste bug.
SVN revision: 43225
2009-10-23 13:11:23 +00:00
Carsten Haitzler 2168b2a57f fix statements
SVN revision: 43224
2009-10-23 06:48:22 +00:00
Vincent Torri f60b381333 Fix some warnings. I don't touch gl engines for now
SVN revision: 43221
2009-10-22 22:33:06 +00:00
Vincent Torri e5046c8846 Fix some warnings. I don't touch map code for now.
SVN revision: 43218
2009-10-22 22:22:10 +00:00
Gustavo Sverzut Barbieri 4b95e6b078 oops, it's eina_log_domain_unregister... domain, not dom!
SVN revision: 43213
2009-10-22 20:14:05 +00:00
Gustavo Sverzut Barbieri 6982f7b9c6 evas_map: more extensible and safe. add docs
change evas_map to return a structure that serves as an array of
points. This way we'll know for sure the number of points in it. Right
now it's hardcoded to 4, so check it, but in future we can just allow
more points and it should work.

added docs. I'm not sure about most of it, so it would be good to have
someone to review and fill in more, maybe that's raster? Grep for
"TODO" and you'll see the missing stuff. It would be good to add
examples in evas_map_point_coord_set() and
evas_map_point_image_uv_set()



SVN revision: 43211
2009-10-22 20:11:33 +00:00
Cedric BAIL 9af68d80da * evas: Add map to SDL also.
SVN revision: 43206
2009-10-22 17:06:06 +00:00
Cedric BAIL 0cf81bc080 * evas: Fix missing correction.
SVN revision: 43205
2009-10-22 16:39:20 +00:00
Carsten Haitzler 041327008f a little cleaner, but not faster
SVN revision: 43204
2009-10-22 16:06:32 +00:00
Carsten Haitzler a24ad9a1c4 fast path for solid maps.
SVN revision: 43203
2009-10-22 15:51:18 +00:00
Carsten Haitzler 7fce71c5d9 add some beginnigns of utility funcs to evas map. move it to its own file.
SVN revision: 43201
2009-10-22 15:47:30 +00:00
Cedric BAIL 8984a75799 * evas: Cleanup move to eina log.
Patch from Mathieu Taillefumier.


SVN revision: 43200
2009-10-22 15:22:22 +00:00
Carsten Haitzler 6f4b45e296 re-enable yuv shader for 6410.
SVN revision: 43195
2009-10-22 08:55:07 +00:00
Carsten Haitzler c1b3587659 enable npot textures
SVN revision: 43194
2009-10-22 08:53:25 +00:00
Carsten Haitzler 43234e9b59 pull smooth... that's not going to be sane. or smooth. hmmm.
SVN revision: 43192
2009-10-22 07:31:25 +00:00
Carsten Haitzler 67fd2dd37c default load - 75dpi. like fonts.
SVN revision: 43190
2009-10-22 06:40:58 +00:00
Carsten Haitzler 63ec70ea91 enable smooth path - same as nearest... for now
SVN revision: 43183
2009-10-21 14:53:55 +00:00
Carsten Haitzler ceb6cb9600 handle if uv are out of image coords - clamp. remove unsued bounds checks
(not needed anymore). also fix a black edge.



SVN revision: 43182
2009-10-21 14:45:55 +00:00
Cedric BAIL 4d083a6627 * evas: Make quartz engine compile again.
SVN revision: 43180
2009-10-21 13:09:04 +00:00
Carsten Haitzler 0f138474d6 improve map.. now no rendering or segv bugs (that i have seen). woot. also
handle clipping and clip-outs.



SVN revision: 43178
2009-10-21 09:33:07 +00:00
Carsten Haitzler 8bf3f50b2c map code... works.. with bugs... but works. visually...
SVN revision: 43163
2009-10-20 16:03:57 +00:00
Carsten Haitzler c50ea6b1c8 map image... not used yet.
SVN revision: 43131
2009-10-17 10:25:51 +00:00
Vincent Torri 3066c3d305 Evas_Data.h functions are deprecated.
SVN revision: 43130
2009-10-17 09:10:31 +00:00
Jonathan Atton 75303b4b5b Evas :The doc say "This function removes the most recently added callback", consequently we have te prepend the items
SVN revision: 43103
2009-10-15 20:50:15 +00:00
Carsten Haitzler 8cf88e6b18 and flush there too
SVN revision: 43091
2009-10-15 03:25:22 +00:00
Carsten Haitzler 40f23d3708 flush queu at context change time (use win) just in case
SVN revision: 43090
2009-10-15 01:39:22 +00:00
Vincent Torri ebdf658cfd use fprintf for messages
SVN revision: 43056
2009-10-13 17:31:18 +00:00
Vincent Torri 3414279848 fix compilation on Windows CE
SVN revision: 43055
2009-10-13 17:27:49 +00:00
Carsten Haitzler 017e26b4e0 fix font aligned tex.
SVN revision: 43049
2009-10-13 10:42:03 +00:00
Carsten Haitzler 0b3d755ce9 more work putting shared bits in shared. but context seems to be a big problem.
:(



SVN revision: 43048
2009-10-13 09:40:39 +00:00
Carsten Haitzler 022dc0cb6e disable yuv for 6410 - seems theres a bug., use img shader instead just as a
placeholder.



SVN revision: 43047
2009-10-13 03:12:32 +00:00
Carsten Haitzler 6b1d31e5bc free up stuff on context free. still need to do programs
SVN revision: 43046
2009-10-13 01:44:46 +00:00
Carsten Haitzler f62f738c7e add level 0 as request. dont want overlay.
SVN revision: 43045
2009-10-13 01:30:04 +00:00
Carsten Haitzler e31d7799ee set tex min/mag filter always
SVN revision: 43044
2009-10-13 00:37:16 +00:00
Carsten Haitzler 8da2320695 dont eed these params here
SVN revision: 43038
2009-10-12 18:02:33 +00:00
Carsten Haitzler 46996c95d3 mini-speedups!
SVN revision: 43037
2009-10-12 15:22:38 +00:00
Carsten Haitzler c0c9f60751 more work on the gles + gl engine.
SVN revision: 43036
2009-10-12 13:19:55 +00:00
Carsten Haitzler 09ba2ed738 and one more untested fix
SVN revision: 43033
2009-10-12 03:52:23 +00:00
Carsten Haitzler a08e1d6793 and fix more bits not tested yet
SVN revision: 43032
2009-10-12 03:43:00 +00:00
Carsten Haitzler bcf85c7225 remove _dends. old code.
SVN revision: 43031
2009-10-12 03:35:32 +00:00
Carsten Haitzler 8bd109e8ce update build for gles on s3c6410 testing
SVN revision: 43030
2009-10-12 03:31:24 +00:00
Carsten Haitzler a60f577446 some infra for starting to handle dest-alpha (rgba) windows in gl engine.
not sure shaped windows will ever be sanely possible.



SVN revision: 43015
2009-10-11 06:59:47 +00:00
Carsten Haitzler 0a036d1ec2 keep locks for less - ie not arorund a loop calling callbacks.
SVN revision: 43014
2009-10-11 06:57:23 +00:00
Carsten Haitzler 00486440c0 fix autofoo make and included files etc. produce shader binaries for systems
that dont have runtime compilers using offline tools. binary blobs will need
to be provided in src trees as the shader_type_bin_target.h files



SVN revision: 43004
2009-10-10 15:03:41 +00:00
Carsten Haitzler a6b2cfd52a and delete u and v textures too
SVN revision: 43002
2009-10-10 14:55:10 +00:00
Carsten Haitzler 1046b6339a fix yuv shader. right now.
SVN revision: 43001
2009-10-10 14:48:34 +00:00
Carsten Haitzler 43420a5df3 yuv support is back now.
SVN revision: 43000
2009-10-10 13:24:15 +00:00
Iván Briano b1cc741a2d bigger clipper
SVN revision: 42984
2009-10-09 19:17:55 +00:00
Carsten Haitzler daa0573ceb oops missed file.
SVN revision: 42983
2009-10-09 15:17:27 +00:00
Carsten Haitzler 37b66e806b new gl engine. no one uses it anyway. not 100% complete, but much better than
the old. and it ALSO does GLES2.0 as well asn GL.



SVN revision: 42982
2009-10-09 12:10:27 +00:00
Carsten Haitzler 94e5770212 dont retunr if invalid
SVN revision: 42976
2009-10-09 04:31:13 +00:00
Vincent Torri 506311faaa fix evas_init() when called several times but is failing
SVN revision: 42972
2009-10-08 21:17:21 +00:00
Carsten Haitzler c280f8610e add external api call to call smart calc calls on al smarts on a canvas
SVN revision: 42960
2009-10-08 14:28:21 +00:00
Vincent Torri 7902ce1bb7 simplify evas_init() and evas_shutdown() a bit
SVN revision: 42956
2009-10-08 06:25:09 +00:00
Cedric BAIL ef2d2ddfda * evas: Remove some llvm warning.
SVN revision: 42938
2009-10-07 12:47:01 +00:00
Iván Briano 1d3f50027a Added version and insert_after to box api
SVN revision: 42862
2009-10-02 19:06:12 +00:00
Vincent Torri de7282e68b use Eina macro for default log color
SVN revision: 42855
2009-10-02 04:47:34 +00:00
Vincent Torri b770510734 call engine info_free() after output_free()
SVN revision: 42830
2009-10-01 08:01:03 +00:00
Vincent Torri 0a775ef90d fix eina logging in software_ddraw
SVN revision: 42829
2009-10-01 07:44:39 +00:00
Carsten Haitzler e30651d7ca more patches from tom
SVN revision: 42828
2009-10-01 05:18:17 +00:00
Carsten Haitzler 0986cd681b init some ptrs to null.
SVN revision: 42823
2009-09-30 22:30:12 +00:00
Tom 39b6c9148c From: Tom <tom@stosb.com> (tasn)
Hey raster,

Here is the non intrusive patch I talked to you about. Please apply it as it
introduces some fixes, some improvements and mostly and underlying
infrastructure for future RTL improvements.

(note hebrew & yiddish seem fine, but things expedite test seems to show are
wrong (why i don't know as i dont speak the langs- just comparing to pango /
gtk output):

arabic seems lsightl wrong (maybe composition chars not working?)
gujarati - also seems wrong
malayam - also looks wrong
persian - looks wrong
sinhala - looks wrong
tamil - looks wrong

these are what, appear to me, to look wrong. why they look wrong, i don't
know. i'm guessing its compositiong not being handled. but i dont's peak,
read or write any of these languages so i am unsure of what it really should
be like, why and how to fix it.

anyone want to put up a hand? (everything else is displaying fine as best i
can tell - the langauges i read/speak/somewhat understand are working fine).



SVN revision: 42814
2009-09-30 04:23:21 +00:00
Iván Briano 0a546d1b78 Use align == -1 for fill, and don't fill if not requested.
SVN revision: 42780
2009-09-28 19:24:53 +00:00
Carsten Haitzler ff09bcbaae add some macros/defin es to make life easier
SVN revision: 42757
2009-09-28 05:53:48 +00:00
Carsten Haitzler 526b6e8f3b and fix async load thing hanging around... put in shared queue and be able to
remove targets from the queue.



SVN revision: 42754
2009-09-28 03:51:21 +00:00
Carsten Haitzler aea9bb4064 i KNOW there is a bug here... the question is.. how to fix it?
SVN revision: 42692
2009-09-25 09:06:13 +00:00
Carsten Haitzler 58fc0273fe account for padding too for too-big
SVN revision: 42678
2009-09-24 14:44:05 +00:00
Vincent Torri c1b56b9cf1 revert. I didn't see that the .c files were included...
SVN revision: 42664
2009-09-24 06:01:59 +00:00
Vincent Torri f12c2099d4 * export _evas_log_dom_global as it can be used in modules
* don't include non microsoft header files when vc++ is used
 * declare alloca before standard C header files
 * minor formatting

SVN revision: 42663
2009-09-24 05:10:49 +00:00
Vincent Torri 6677c2fcf9 fix double to Evas_Coord conversion warnings
SVN revision: 42662
2009-09-24 04:55:01 +00:00
Vincent Torri 454f2fadcb move declaration of variables at the beginning of the blocks
SVN revision: 42650
2009-09-23 17:15:18 +00:00
Vincent Torri c392f30e71 make evas_module.c and evas_path.c compile with vc++
SVN revision: 42641
2009-09-23 07:12:11 +00:00
Vincent Torri cefbd7abf5 use size_t instead of int
SVN revision: 42640
2009-09-23 06:45:39 +00:00
Vincent Torri ac44ab5449 move the gradient2 main structure in a specific header as it is also used in the linear and radial files
SVN revision: 42639
2009-09-23 06:37:08 +00:00
Vincent Torri e50c003031 last auto-import symbols
SVN revision: 42631
2009-09-22 23:07:29 +00:00
Vincent Torri ef825fc3c1 more auto-import symbols
SVN revision: 42630
2009-09-22 23:05:51 +00:00
Vincent Torri e359ac2161 auto-import symbols
SVN revision: 42628
2009-09-22 22:51:15 +00:00
Vincent Torri 165a507ce2 move declaration of variables at the beginning of the block
SVN revision: 42627
2009-09-22 22:37:03 +00:00
Carsten Haitzler bea22f22a4 fix wrns.. and fix macro!
SVN revision: 42617
2009-09-22 08:04:57 +00:00
Carsten Haitzler 85c9ee14e1 and much pain and ganshing of teeth.. this took too long... no more hanging
preload cancels. u can cancel a preload (explicitly or implicitly) with no
lock penalty. now i can get on with my other fun.



SVN revision: 42616
2009-09-22 07:02:14 +00:00
Cedric BAIL c259d8addd * evas: Use eina_log.
Patch from Matthieu.


SVN revision: 42598
2009-09-21 16:08:51 +00:00
Carsten Haitzler 2f87e02f09 more work on jpeg region load. use some hacks i did to libjpeg.
SVN revision: 42593
2009-09-21 12:49:31 +00:00
Carsten Haitzler c61c9643ca handle regions for all jpeg types (cymk, rgb, gray). other formats dont
support this (atm). there is possibly little point in doing so... perhaps
svg... thought maybe tiff too later? for now, get jpeg 100% up to snuff.



SVN revision: 42587
2009-09-20 14:31:48 +00:00
Vincent Torri 0c0dbb92dc move EINA_DEPRECATED to the beginning of the declaration
SVN revision: 42571
2009-09-20 07:16:47 +00:00
Iván Briano 5c3b4fa74e Improve documentation for Evas, Ecore, Edje and Elementary.
Work by:
 - Thiago R. Masaki (mostly)
 - Fabiano Fidencio
 - Gustavo Lima


SVN revision: 42550
2009-09-17 22:38:10 +00:00
Gustavo Sverzut Barbieri 8e56bad0e6 dunno what's this crazy math, but it overflows on 64 bits... ensure it's unsigned long long...
SVN revision: 42523
2009-09-16 19:20:26 +00:00
Carsten Haitzler 65f147aa81 make loaders use "big image" macro to detect an image that is going to just
be way too big to ever allocate. probably code can do with other fixes too.

also make jpeg loader rudametarily understand load regions. very brute-force.
but enough for just this moment to do testing.



SVN revision: 42507
2009-09-16 09:48:05 +00:00
Carsten Haitzler f780cc2c8f add "region" load opt. no loader handles it... yet
SVN revision: 42494
2009-09-15 13:34:12 +00:00
dieb c2fde2fa75 Trailing whitespaces--, remove wrong tabs.
SVN revision: 42454
2009-09-13 03:04:20 +00:00
Carsten Haitzler 7ee7fb5604 1. make max image size a #define
2. max image size > 65536x65536
3. fix cserve leak
4. fix cserve+async load to work together.



SVN revision: 42406
2009-09-11 13:44:53 +00:00
Carsten Haitzler deb61bbe7c fix some possible mutex probs
SVN revision: 42319
2009-09-07 10:42:30 +00:00
Vincent Torri 911ce19bfc fix build when async events are not enabled
SVN revision: 42273
2009-09-05 07:56:03 +00:00
Vincent Torri eaf9934e80 evas_init() fails if eina_init() or evas_async_events_init() fail
SVN revision: 42239
2009-09-04 05:41:20 +00:00
Vincent Torri ac3dae2a80 remove trailing spaces
SVN revision: 42238
2009-09-04 05:13:19 +00:00
Carsten Haitzler 1352efe452 1. make smart callback calling faster with == instead of strcmp
2. add linesize/line relsize for setting line sizes in textblock



SVN revision: 42231
2009-09-04 03:53:18 +00:00
Gustavo Sverzut Barbieri e455e6f5b9 fix eina to not use deprecated eina_error logging.
SVN revision: 42229
2009-09-04 02:42:51 +00:00
Vincent Torri ea9c39e2f7 masks should be correctly rotated in the xcb engine, now
remove a few unused parameters and unused variables


SVN revision: 41975
2009-08-25 16:21:09 +00:00
Vincent Torri 86dab3bef7 we should try if shm is available
SVN revision: 41974
2009-08-25 15:23:15 +00:00
Christopher Michael 26f32b9520 Return NULL to be consistent, not 0.
SVN revision: 41953
2009-08-24 10:52:40 +00:00
Carsten Haitzler 59f676f369 oh suncc - shut up!
SVN revision: 41873
2009-08-19 09:56:46 +00:00
Mikhail Gusarov 226e4e5e16 From: Mikhail Gusarov <dottedmag@dottedmag.net>
Subject: [E-devel] [evas] Add RGBA -> grayscale 64 entries palette conversion

This is needed for E-Ink devices outta there. Names of new files,
configure.ac variables and macros are awful, suggestions are welcome.



SVN revision: 41825
2009-08-17 01:41:07 +00:00
Rafael Antognolli af554298cd Bugfix on directfb engine:
* cleaning dirty rectangles on dfb surfaces now is done correctly.



SVN revision: 41777
2009-08-14 20:36:49 +00:00
Cedric BAIL b2d4ead502 * evas: Garbage is back for opaque window without background object.
SVN revision: 41773
2009-08-14 17:48:49 +00:00
Cedric BAIL 3d6840cd1a * evas: Fix two render bugs :
- Forgot to reset clip before drawing cleanup rect.
		- Always draw a rect to reset the background, just
		choose a correct color.

	Note: This will slow down software_x11 engine, as this engine
	always do memset, so it does it twice. Before only the alpha
	case was impacted, now both case are. Need time to fix it. If
	someone has, don't hesitate :-) You can use elementary windows
	state test, to see if thing is going correctly or not.

	For the record, SDL engine has a score around 500 under X11 on
	my computer, where the X11 engine does only have a score around
	450.


SVN revision: 41770
2009-08-14 17:17:01 +00:00
Cedric BAIL 443fe5fc8e * evas: gl_x11 window can't support alpha, as drawing rect with
alpha=0 is not possible.


SVN revision: 41769
2009-08-14 17:11:08 +00:00
Gustavo Sverzut Barbieri 96001ff1a1 fix evas box flow layouts to consider padding.
By: Fabiano Fidêncio <fidencio@profusion.mobi>



SVN revision: 41739
2009-08-13 15:01:49 +00:00
Gustavo Sverzut Barbieri 09bb18e727 need to set trailing NULL as it will not be done automatically.
SVN revision: 41708
2009-08-12 16:02:32 +00:00
Christopher Michael 53f359573e Fix placement of __UNUSED__
SVN revision: 41650
2009-08-09 19:07:03 +00:00
Christopher Michael a29767c572 Formatting
SVN revision: 41648
2009-08-09 16:41:51 +00:00
Christopher Michael 9261a4d24b Just Formatting. NO code changes.
SVN revision: 41636
2009-08-07 21:38:36 +00:00
Christopher Michael c508b00c24 evas_object_resize patch to move evas_object_recalc_clippees. This makes
evas_object_resize behave more like evas_object_move.

NB's added in case this causes glitches in corner cases



SVN revision: 41635
2009-08-07 20:35:30 +00:00
Cedric BAIL e4d68c7fbe * evas: gl_common now use Eina_Rectangle_Pool.
SVN revision: 41607
2009-08-05 14:47:12 +00:00
Carsten Haitzler c3c692269a Ticket #372 - patch. fix.
SVN revision: 41563
2009-08-03 08:19:12 +00:00
Cedric BAIL 5784d74daa * eina: Add eina_cpu_count.
SVN revision: 41543
2009-07-30 16:45:15 +00:00
Christopher Michael cecbfe7618 Do not return a value if the function returns void.
SVN revision: 41537
2009-07-29 18:34:27 +00:00
Gustavo Sverzut Barbieri 7ca620ce73 unbreak static savers, cedric pay attention to seds!
SVN revision: 41529
2009-07-28 23:48:27 +00:00
Iván Briano 0269d38187 Fix build of loaders
SVN revision: 41527
2009-07-28 17:59:26 +00:00
Vincent Torri 39809967cb clean dist rule
SVN revision: 41526
2009-07-28 11:50:22 +00:00
Vincent Torri 12751954d1 remove uneeded declaration (to be symetric with xcb code)
SVN revision: 41523
2009-07-28 09:55:08 +00:00
Cedric BAIL 940b7b0740 * evas: Return Eina_Bool when it make sense.
SVN revision: 41458
2009-07-20 15:33:10 +00:00
Michael Lauer 565a623f26 evas: add first bunch of typedefs for previously anonymous callbacks
SVN revision: 41423
2009-07-18 22:43:18 +00:00
Vincent Torri da292c1f29 * rename 'x11' to 'xlib' when it makes sense
* allow the build of evas without xlib installed (for OpenInkpot guys)
 * add big fat warning when at least a module is linked statically (try it !)

more patches will follow now (ecore, e, rage and ewl)
I let pyton and c++ bindings maintainer to do the rename


SVN revision: 41329
2009-07-14 21:16:08 +00:00
Gustavo Sverzut Barbieri 05f61cd086 fix uninitialized problems reported by valgrind.
SVN revision: 41316
2009-07-12 16:11:58 +00:00
Carsten Haitzler d6a6cc63e8 cserve for evas now has a threaded loader - much better when multiple clients
aare hammering it with load requests



SVN revision: 41293
2009-07-10 06:52:09 +00:00
Mikhail Gusarov d6af88ef6c patch from: Mikhail Gusarov <dottedmag@dottedmag.net>
evas_common_font_utf8_get_prev currently works correctly only on an
ASCII symbols. For non-ASCII it just returns random garbage somehow
constructed from a string.

Attached patch makes it work according to the comment at the start.



SVN revision: 41292
2009-07-10 06:06:37 +00:00
Cedric BAIL 7a94d9de85 * evas: Try all known modules when testing an unknown file.
SVN revision: 41262
2009-07-07 11:07:43 +00:00
Vincent Torri 7e475a152c missing ;
SVN revision: 41259
2009-07-06 21:48:11 +00:00
Cedric BAIL 1676145494 * evas: Reduce code duplication.
SVN revision: 41228
2009-07-01 14:05:04 +00:00
Vincent Torri c803ed44d3 fix++
SVN revision: 41222
2009-06-29 06:44:35 +00:00
Vincent Torri 19b6892b94 remove useless Windows CE stuff, as it must be done on the
executable, and not the library.


SVN revision: 41214
2009-06-27 07:00:39 +00:00
Cedric BAIL a7f2974e13 * evas: break engine API !!!
Improvements: Now evas rendering loop is the one responsible to
	initialize the surface to 0 correctly (taking into account surface
	alpha and object opacity). This will reduce the number of memset
	we do.

	Note: Current software_x11 (xlib and xcb) are buggy. They are
	copying too much data when the surface use a mask. That's why
	two memset are left in their code. They could be removed, but
	we should fix the surface we copy on change (look at mxob user
	and evas_software_xlib_x_output_buffer_paste).


SVN revision: 41206
2009-06-26 13:26:52 +00:00
Carsten Haitzler e420003d7e add a zero of cpu.. just in case.
SVN revision: 41195
2009-06-25 14:59:12 +00:00
Vincent Torri 4c09519e99 remove trailing spaces
SVN revision: 41191
2009-06-25 04:20:34 +00:00
Vincent Torri ebc20c2236 API BREAK: fix Eina API so that it is more consistent with the other EFL
what is modified:

eina_counter_add -> eina_counter_new
eina_counter_delete -> eina_counter_free
eina_lalloc_delete -> eina_lalloc_free
eina_mempool_new -> eina_mempool_add
eina_mempool_delete -> eina_mempool_del
eina_mempool_alloc -> eina_mempool_malloc
eina_tiler_del -> eina_tiler_free

It remains some questions: have the following API a good name:

eina_module_list_delete
eina_list_free
eina_rbtree_delete

(see ticket #286)

If you find any problem, please report in that thread


SVN revision: 41187
2009-06-24 16:56:49 +00:00
Cedric BAIL 0c9aead634 Evas_Rectangle are gone. We now use Eina_Rectangle and memory pool is
shared accross the application.


SVN revision: 41170
2009-06-23 13:57:27 +00:00
Cedric BAIL 42e610f81b * evas: Reduce malloc/free done by Fribidi use in evas.
Note: More could be done to improve this situation.


SVN revision: 41169
2009-06-23 13:51:41 +00:00
Vincent Torri ddc06185d2 Remove the static options of configure and add
a way to select it with --enable-foo by passing
'static'. Use at your own risks.

If I've messed something up, please report in that thread


SVN revision: 41160
2009-06-22 17:35:31 +00:00
Gustavo Sverzut Barbieri b5f6c61c94 free array as well.
SVN revision: 41124
2009-06-20 07:36:30 +00:00
Gustavo Sverzut Barbieri 1c0ca5dfbb fix memory leak introduced with recent layer destruction.
also rename evas_layer_free() to evas_layer_free_objects() as what it
do now, make _evas_layer_free() as static and use it both cases.



SVN revision: 41123
2009-06-20 07:17:40 +00:00
Vincent Torri 324fd7b2ca do not segv when no pallete in xcb engine too.
SVN revision: 41122
2009-06-20 06:53:48 +00:00
Gustavo Sverzut Barbieri 0567fd7bf2 improve sched_getaffinity() usage.
* handle error code and print out error message, this should remove
   invalid access traces from valgrind.

 * give "0" as pid to get self affinity, this is documented in the man
   page.



SVN revision: 41118
2009-06-20 06:34:20 +00:00
Gustavo Sverzut Barbieri 728b003fee do not segv when no pallete.
spotted this bug when I disabled all converters in a config mistake :-)



SVN revision: 41116
2009-06-20 05:55:37 +00:00
Cedric BAIL eb488748c6 * evas: Fix a few typo preventing a full static build.
SVN revision: 41114
2009-06-19 16:40:21 +00:00
Cedric BAIL 5d0a773fef * evas: Use Eina hash improvements.
SVN revision: 41101
2009-06-18 12:14:29 +00:00
Lars Munch f850d6cb0d Fix wince engine module name
SVN revision: 41099
2009-06-18 10:21:09 +00:00
Lars Munch 8804249862 The data directory is not there anymore
SVN revision: 41095
2009-06-18 05:01:11 +00:00
Gustavo Sverzut Barbieri 37b3a62cde remove last trace of Evas_List, it's gone dude!
SVN revision: 41089
2009-06-17 18:12:55 +00:00
Cedric BAIL 010621dd4a * evas: Remove Evas data type. You should now use Eina.
SVN revision: 41083
2009-06-17 15:46:27 +00:00
Lars Munch b4c12e8efe Rename public to definition as public is a reserved word in c++
SVN revision: 41077
2009-06-17 13:10:00 +00:00
Cedric BAIL 6d0ee81526 * evas: Remove Evas_Bool.
SVN revision: 41067
2009-06-17 10:01:52 +00:00
Gustavo Sverzut Barbieri 3c6e35dd10 be explicit about SUBDIRS and DIST_SUBDIRS, fix maintainer-clean.
automake was "smart enough" to include in DIST_SUBDIRS even when 'if'
clause didn't add it to SUBDIRS, that was causing modules like XPM be
added twice, resulting maintainer-clean to double-clean the directory
(one from src/modules/loaders and other from src/lib), failing on the
second time.



SVN revision: 41060
2009-06-16 19:03:28 +00:00
Gustavo Sverzut Barbieri 6760437fdd do not add duplicate search paths to module loader.
usually libevas.so/../evas/modules is the same as libdir/evas/modules,
so avoid adding it twice.


SVN revision: 41059
2009-06-16 15:02:57 +00:00
Gustavo Sverzut Barbieri a7a2419ac3 add missing EAPI to now external visible methods.
SVN revision: 41058
2009-06-16 15:01:26 +00:00
Cedric BAIL 575b0579cd * evas: Move to Eina module and make it possible to build a libevas with
everything in it.

	Note: This patch break the module API, so make sure you recompile and install
	every thing.


SVN revision: 41055
2009-06-16 13:01:36 +00:00
Cedric BAIL 0839ec65ea * Evas: Improve RGBA_Font_* cache using hash and stringshare correctly.
Note: This should not impact font rendering, but if you notice anything
	wrong, please don't hesitate to report this to me.


SVN revision: 41050
2009-06-15 15:07:13 +00:00
Cedric BAIL fdca8644a2 * Evas: Add another delay before reducing number of unused font in the
cache.

	Note: This is usefull when you are scaling up and down a font during an
	animation.


SVN revision: 41049
2009-06-15 14:37:14 +00:00
Cedric BAIL f63beb3edf * Evas: Remove allocation/free from the critical path.
SVN revision: 41048
2009-06-15 14:34:33 +00:00
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
Vincent Torri e61101a4a4 fix object size when rotation is 90 or 270 degree
SVN revision: 40907
2009-06-05 18:58:16 +00:00
Andreas Volz e2b32f8ad8 after discussion on IRC (#edevelop) with k-s and raster I removed the deprecated tag
SVN revision: 40886
2009-06-03 21:41:00 +00:00
Carsten Haitzler f1ec8f8b3e fix precise-in
SVN revision: 40878
2009-06-03 14:16:55 +00:00
Carsten Haitzler 3528238bbe add request # tracking. this should detect badness - like forking and using
the connection from the fork (the cserve connection). it won't catch
threads... most of the time, but i need something else for that i think.



SVN revision: 40869
2009-05-31 22:03:24 +00:00
Carsten Haitzler 7c66538545 fix corer case with utf8
SVN revision: 40867
2009-05-31 21:26:36 +00:00
Vincent Torri 6842103267 revert the patch for RTL text rendering in software_16 engine
SVN revision: 40789
2009-05-23 09:23:01 +00:00
Carsten Haitzler 974bbfd19f header miss!
SVN revision: 40784
2009-05-22 23:10:01 +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
Carsten Haitzler adab71dcfd fix engines to match engine func changes with font stuff (R to L)
SVN revision: 40782
2009-05-22 21:11:45 +00:00
Andreas Volz 040492e46a some docs
SVN revision: 40779
2009-05-22 20:21:56 +00:00
Iván Briano 5888d62400 Make fribidi truly optional
SVN revision: 40755
2009-05-20 03:14:29 +00:00
Vincent Torri 0c233cfcf3 missing declaration of evas_common_font_query_last_up_to_pos()
patch by Lars Munch (previous one too)


SVN revision: 40729
2009-05-18 17:33:54 +00:00
Vincent Torri cad3471bfb update 16 bits engine for rtl support
SVN revision: 40728
2009-05-18 17:31:52 +00:00
Carsten Haitzler e999c88e80 tasn's rtl pathes and improvements... continued!
SVN revision: 40715
2009-05-18 06:08:15 +00:00
Vincent Torri 024dc3c51e Remove eoftware_win32_gdi directory. It is empty (old
gdi engine written by raster and removed because of
IP, iirc) and of no use (another gdi engine is there)


SVN revision: 40673
2009-05-15 14:27:53 +00:00
Cedric BAIL d2b68904fc * cserve: Fix potential source of segv in cserve.
SVN revision: 40672
2009-05-15 13:19:27 +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 5b7c1be3eb fix a strange issue with re-connect after explicit disconnect to cserve
SVN revision: 40587
2009-05-11 13:09:43 +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
Vincent Torri 22969c71ef allow compilation on OS where the cache server can't be built (like Windows...)
SVN revision: 40570
2009-05-09 16:18:31 +00:00
Vincent Torri fb5e325078 remove EINA_WARN_UNUSED_RESULT on functions that return nothing
SVN revision: 40565
2009-05-09 06:59:00 +00:00
Vincent Torri 7ac68a4283 include time.h header files because time_t is used in Evas.h
SVN revision: 40558
2009-05-08 21:46:01 +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 5f77a25e1b unset cserve in cserve
SVN revision: 40539
2009-05-07 14:02:14 +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
Vincent Torri 63f52c10c8 config.h is automatically added as a dependency by automake
SVN revision: 40531
2009-05-07 07:33:30 +00:00
Carsten Haitzler d92a6d99a7 more cserver work for sharede cache- improvements
SVN revision: 40524
2009-05-06 12:36:06 +00:00
Carsten Haitzler 63e4b4e564 fix softwared x11 xlib engine to generate masks when rotated too
SVN revision: 40523
2009-05-06 12:35:38 +00:00
Carsten Haitzler b37f6643cf fix char-wrap min size calc!
SVN revision: 40522
2009-05-06 12:34:54 +00:00
Gustavo Sverzut Barbieri 880ecd5726 fix minor build problems.
SVN revision: 40517
2009-05-06 06:39:59 +00:00
Vincent Torri 48c7e28b20 * add support of CMYK, ICCK and grayscale images
* remove trailing spaces

fix ticket #303


SVN revision: 40515
2009-05-05 21:48:50 +00:00
Carsten Haitzler 892c085276 more todo items knocked off for cserve
SVN revision: 40509
2009-05-05 14:37:18 +00:00
Carsten Haitzler bd6d938956 todo items for cserve for evas done - well some of them. more to come.
SVN revision: 40495
2009-05-03 07:37:31 +00:00
Gustavo Sverzut Barbieri 8ef8b1e15a fix build of cserve with -fvisibility=hidden.
SVN revision: 40486
2009-05-02 15:53:48 +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
Mike Frysinger 0041222bb0 pull in evas_common.h for evas_string_char_len_get() decl
SVN revision: 40428
2009-04-28 05:06:48 +00:00
Gustavo Sverzut Barbieri f783e3900d add missing "changed" flags.
SVN revision: 40409
2009-04-27 02:41:27 +00:00
Iván Briano 554dccdb0b some formatting
SVN revision: 40343
2009-04-24 04:35:52 +00:00
Iván Briano 6c7831c3ab Build against newer Fribidi
SVN revision: 40341
2009-04-24 00:21:26 +00:00
Vincent Torri 899b8d13dc * better fix for -no-undefined
* remove test with icl


SVN revision: 40313
2009-04-23 03:47:28 +00:00
Vincent Torri 7f98415206 add GDI engine.
todo: fullscreen and shape support


SVN revision: 40310
2009-04-23 03:20:51 +00:00