Commit Graph

212 Commits

Author SHA1 Message Date
ChunEon Park 7f631d4db1 evas/evas_object_image - fixed an inccorect word in doxygen
SVN revision: 57003
2011-02-14 04:42:53 +00:00
Brett Nash 8729a314ab Fix the semicolon, and small optimisation.
SVN revision: 56975
2011-02-13 00:27:03 +00:00
Brett Nash 310f872e56 Manual merge of proxy code (inc ChangeLog)
SVN revision: 56780
2011-02-07 04:18:37 +00:00
Brett Nash aa59164001 Support for Proxy Objects (and others)
Proxy objects allow you to use another image as the source of an image.
Essentially allowing the same object to be rendered multiple times.  One
object (the source) is the original, each additional 'copy' is an image with
evas_object_image_source_set.

This is complete.

Also add partially working arbitrary maps, and arbitrary clipping.
Unfortunately both have some issues yet to be resolved (waiting on the next
feature to get merged together).

SVN revision: 56777
2011-02-06 23:52:17 +00:00
Carsten Haitzler 725e7cd0d7 protect against people providing out-of-bounds u&v coords in map.
SVN revision: 56313
2011-01-27 02:59:49 +00:00
Carsten Haitzler 0f33f9be05 and forgot that one too.
SVN revision: 56182
2011-01-16 08:06:05 +00:00
Carsten Haitzler e7b6e7beb4 and reduce error more by making coords fp/double.
SVN revision: 56181
2011-01-16 08:03:28 +00:00
Carsten Haitzler 1b89a7ac5f change map points to use double and floats to reduce perspective
correction adjustment seams in gl engine. almost all gone.



SVN revision: 56180
2011-01-16 07:49:49 +00:00
Carsten Haitzler 19d4f8affc add unload callback - missing event problem that makes it impossible
for client apps that tried to be efficient with preloads to adapt
when the preloaded data is taken away from them. this allows it.
missing callback api bug fix.



SVN revision: 55745
2010-12-24 16:04:27 +00:00
Carsten Haitzler fa337f7f7f and only check version if surf != NULL
SVN revision: 55318
2010-12-06 09:02:16 +00:00
Carsten Haitzler 640a4030f3 change native api to allow for other types of native data like texture
id's, fbo's etc. too - at least it's versioned now.



SVN revision: 55315
2010-12-06 07:09:51 +00:00
Carsten Haitzler c75b63a482 evas -> use mempool for many objects and things. but.. disable it for
now. use old calloc+free thing for 1.0 and enable mpool for 1.1. this
is just done in advance but disabled for some testing purposes looking
for some bugs.



SVN revision: 55006
2010-11-26 10:01:18 +00:00
Carsten Haitzler 29a707fdf8 eek - case of stride value being wrong! fix!
SVN revision: 54087
2010-11-02 08:18:16 +00:00
Carsten Haitzler 3a9d3268d2 fix warnings in async render code.. and well.. warn about it - it
crashes for me in expedite with 4 cores on x86 at random points. looks
like it's bitrotting. though it was relatively tentative to begin with.



SVN revision: 53856
2010-10-25 11:27:17 +00:00
Carsten Haitzler 6debefec1c fix stride - again. but no one noticed this one ... yet :)
SVN revision: 53388
2010-10-14 03:21:20 +00:00
Carsten Haitzler 3fad0649a6 eek stride should be in bytes - to allow for various image formats.
fix for fallback.



SVN revision: 52948
2010-10-01 12:18:18 +00:00
Carsten Haitzler 2dce035395 warning--, formatting.
SVN revision: 52577
2010-09-22 11:02:19 +00:00
Carsten Haitzler 21ec26bed3 move some simple #define constants to typedefs. api compatible tho.
SVN revision: 52575
2010-09-22 10:52:54 +00:00
Carsten Haitzler 011b2ce822 brutally evil... internally.. but it works. map perspective correct
now in gl engine. hooray for that. one complaint less.



SVN revision: 52566
2010-09-22 06:52:28 +00:00
Lucas De Marchi 85815e306c Fix common misspellings
Following misspellings were fixed:

accomodate->accommodate
achive->achieve
beacuse->because
caluclate->calculate
cant->can't
carefull->careful
convertion->conversion
dependancy->dependency
dependant->dependent
doesnt->doesn't
existant->existent
extention->extension
fucntion->function
impliment->implement
inital->initial
lenght->length
occured->occurred
occuring->occurring
onyl->only
positon->position
possibilty->possibility
postion->position
proccessing->processing
proccess->process
propogate->propagate
recieve->receive
sucessive->successive
teh->the
ther->there
throught->through
thsi->this
wasnt->wasn't
whcih->which
wheras->whereas




SVN revision: 51965
2010-09-08 03:51:24 +00:00
Christopher Michael d6da81ea66 Update email address across the board.
SVN revision: 51890
2010-09-04 18:32:59 +00:00
Carsten Haitzler 92fcbddbf7 move more callbacks to typedefs.
SVN revision: 51705
2010-08-29 01:59:21 +00:00
Carsten Haitzler 817c505230 remove transform stuff - never was implemented anyway so no effective
break.



SVN revision: 51384
2010-08-19 07:32:44 +00:00
Carsten Haitzler a0d8db000e and make dynamic hint actually work when we have zero-copy texture
support. fully ok now for argb8888.



SVN revision: 51380
2010-08-19 05:18:17 +00:00
Carsten Haitzler c398484812 fix stride and hint setting so any order works.
SVN revision: 51379
2010-08-19 05:03:37 +00:00
Christopher Michael 00c661adab Fix warnings about some unused paramaters (This does not cleanup all
the warnings, just the ones which were Obviously not used).

Evas_Object_Text.c: Fix big ole nasty oopsie in the declaration of
object_func: Was missing a NULL for can_map.



SVN revision: 51280
2010-08-18 14:44:23 +00:00
Carsten Haitzler 01b7216880 more glue/infra. glue evas api to engine together. gl engine gets stubs.
SVN revision: 51028
2010-08-12 06:11:13 +00:00
Carsten Haitzler 83f2ef6142 working on new gl engine feature. inactive right now.
SVN revision: 51027
2010-08-12 06:02:15 +00:00
Carsten Haitzler ccfd7f27fc 1. slightly optimise a get opaque call. (some tests get a 5-10% speedup)
2. gl - be stricter on gl-es texture formats.



SVN revision: 50950
2010-08-10 02:35:07 +00:00
Lucas De Marchi 0a4617ae38 FORMATTING
* Remove vim modelines:
 find . -name '*.[chx]' -exec sed -i '/\/\*$/ {N;N;/ \* vim:ts/d}' \{\} \;
 find . -name '*.[chx]' -exec sed -i '/\/[\*\/] *vim:/d' \{\} \;

* Remove leading blank lines:
 find . -name '*.[cxh]' -exec sed -i '/./,$!d'

If you use vim, use this in your .vimrc:
set ts=8 sw=3 sts=8 expandtab cino=>5n-3f0^-2{2(0W1st0



SVN revision: 50816
2010-08-04 16:57:32 +00:00
Carsten Haitzler 9275e5beb2 re-jig native surface stuff to share the same gl image between
multiple instances of the same pixmap.



SVN revision: 50758
2010-08-03 06:09:53 +00:00
Carsten Haitzler cec0aa3771 segv there in frame queue code. fix.
SVN revision: 49107
2010-05-21 16:50:25 +00:00
Carsten Haitzler eaad0eb095 big patch from Samsung SAIT (Advanced research group) for async multi-frame
rendering. to turn on:

1.
configure with --enable-async-render
2.
export EVAS_RENDER_MODE=non-blocking
  
presto. necessitates some api swizzling (thus the expedite. ecore etc. changes)

the kind of results you get on a desktop:

http://www.rasterman.com/files/evas-async-vs-none.html



SVN revision: 49087
2010-05-21 07:10:45 +00:00
Cedric BAIL a52773a8ab * evas: specify Evas canvas for Evas_Object.
SVN revision: 48428
2010-04-29 17:35:47 +00:00
Carsten Haitzler 8ea3844c85 fix fill render bug cedric reported. :)
SVN revision: 48393
2010-04-28 14:38:46 +00:00
Gustavo Sverzut Barbieri fd2659c572 evas: mega documentation improving commit.
This commit moves Evas.h contents a lot, but it should not change code
(some conts were added, some function attributes were changed).

The purpose of such is to define the order that doxygen show modules
in its documentation.

I also splitted documentation a bit more, and added a src/examples to
list useful example code. Right now it is just a pure-evas
draw-and-save using buffer engine.

NOTE: there is lots to document, and the @todo list is quite long but
      I guess lots of things there were done already. Raster, could
      you review this list?




SVN revision: 47308
2010-03-18 04:57:40 +00:00
Carsten Haitzler 10da9b00a3 api for image content hint - nothing uses it yet, but... it will. and does
nothing right now... but that will be able to change. it opens up better
optimisation paths in future.



SVN revision: 46922
2010-03-07 04:19:17 +00:00
Carsten Haitzler a4b6192e7f border_scale ... possible++
SVN revision: 46340
2010-02-21 06:21:15 +00:00
Carsten Haitzler ff86d27663 found divide by 0 in some circumstances -> fix.
SVN revision: 44932
2010-01-06 22:54:51 +00:00
Gustavo Sverzut Barbieri 51c00c6526 fix evas image loading error reporting.
Evas image load was always reporint "generic" error, since it was
disconnected from actual loader modules.

This commit will break the module loader API (as it's restricted to
inside Evas, this should be no problem). The return was turned into
"Eina_Bool" for clarity, while an extra "int *error" is responsible to
report errors. This approach was choosen to force compiler warnings
and to try avoid mistakes as EINA_FALSE == EVAS_LOAD_ERROR_NONE and
thus we'd get opposite behavior if something slips.

Most loaders play well, except by eet that does not provide means to
know if the file open failed due missing file, incorrect format or
corrupted file :-(

Please report any issues. I added eina_log debugging to loader
functions, just run your Evas application as:

     EINA_LOG_LEVELS=evas_main:4 your_app




SVN revision: 44666
2009-12-22 23:11:57 +00:00
Carsten Haitzler c88c587e66 printf--!
SVN revision: 43597
2009-11-09 23:48:26 +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
Carsten Haitzler 2c44b7dd55 smart children of mapped objs etc. work work!
SVN revision: 43506
2009-11-07 05:01:43 +00:00
Carsten Haitzler 9791b27a18 map coords in mapped objects.
SVN revision: 43463
2009-11-05 15:24:48 +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 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
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 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
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 8984a75799 * evas: Cleanup move to eina log.
Patch from Mathieu Taillefumier.


SVN revision: 43200
2009-10-22 15:22:22 +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 46996c95d3 mini-speedups!
SVN revision: 43037
2009-10-12 15:22:38 +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
Vincent Torri 6677c2fcf9 fix double to Evas_Coord conversion warnings
SVN revision: 42662
2009-09-24 04:55:01 +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
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
Carsten Haitzler f780cc2c8f add "region" load opt. no loader handles it... yet
SVN revision: 42494
2009-09-15 13:34:12 +00:00
Vincent Torri ac3dae2a80 remove trailing spaces
SVN revision: 42238
2009-09-04 05:13:19 +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 6d0ee81526 * evas: Remove Evas_Bool.
SVN revision: 41067
2009-06-17 10:01:52 +00:00
Carsten Haitzler f1ec8f8b3e fix precise-in
SVN revision: 40878
2009-06-03 14:16:55 +00:00
Carsten Haitzler 1d75ac114a make reload work properly...
SVN revision: 40670
2009-05-15 11:48:20 +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 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
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
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 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
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
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
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
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 5621e47f1c Correctly cancel each image object and not all at once.
SVN revision: 38658
2009-01-20 14:56:37 +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 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
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
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 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
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 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 f526e28ac0 * More better cats\'
* remove some @ingroup in favor of @addtogroup

SVN revision: 37386
2008-11-01 21:50:36 +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
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
Sebastian Dransfeld ffcb66dec3 * Set changed = 1
* Remove unused variable

SVN revision: 37153
2008-10-26 16:18:58 +00:00
Cedric BAIL 465b76a017 Remove Evas_List from Evas.
SVN revision: 36942
2008-10-21 16:31:05 +00:00
Cedric BAIL 68d377afe6 Rename EINA_INLIST_ITER_NEXT/EINA_INLIST_ITER_LAST to EINA_INLIST_FOREACH/
EINA_INLIST_REVERSE_FOREACH so it best match is behaviour. Asked by Gustavo.



SVN revision: 36928
2008-10-21 12:19:57 +00:00
Cedric BAIL 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
Cedric BAIL 1cec65e922 Switch evas internal use of evas_stringshare to eina_stringshare.
SVN revision: 36674
2008-10-15 14:38:34 +00:00
Cedric BAIL 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 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
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
Carsten Haitzler 5887bde860 colorspace stuff in cvs.
SVN revision: 34604
2008-05-19 03:13:16 +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