Commit Graph

2035 Commits

Author SHA1 Message Date
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
Vincent Torri 611850f0a6 Use stdio instead of iostream to output error messages
Large parts of the stdc++ library are statically linked into the dll.
The size of the generated DLL decrease from ~500KB to ~24KB



SVN revision: 37428
2008-11-03 05:25:56 +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
Vincent Torri b7d5746e0d * remove module_la_DEPENDENCIES useless variable
* add -fno-rtti and -fno-exceptions when c++ is used (in Windows engines)
 * fix glew engine compilation
 * minor formatting


SVN revision: 37369
2008-11-01 09:46:51 +00:00
Vincent Torri 5be63df7c0 fix constness and wrong type parameters
SVN revision: 37368
2008-11-01 07:55:33 +00:00
Gustavo Sverzut Barbieri b2470c6cd6 Implement non-homogeneous (regular) table layout.
It's now complete, needs some more testing and possible fix corner
cases, but should do the same as els_table (from elementary).


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

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

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



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

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


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

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

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



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

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

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



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



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



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



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


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



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



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

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

(reference) 32bit gets: 853



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



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


SVN revision: 36176
2008-09-22 17:55:13 +00:00
Carsten Haitzler 8d175a12e8 illogict patch for evas configure xcb checks.
- evas-configure-xcb_image_version_requirement.patch: check for
xcb-image at least version 0.2.1



SVN revision: 36111
2008-09-20 02:11:33 +00:00
Carsten Haitzler fab81faa86 tim horton's quartz engine for evas.
SVN revision: 36107
2008-09-20 02:03:22 +00:00
Carsten Haitzler bcabb2be60 and when deleting a hash item - if hash data != NULL delete EXACTLY that
entry (if there are duplicates... this will avoid removing the wrong one)



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



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


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


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

Still turn MAGIC_DEBUG on by default.


SVN revision: 35965
2008-09-12 13:14:08 +00:00
Carsten Haitzler 0cf0cd8e15 ensure scaling multiplies are promoted to fp.
SVN revision: 35924
2008-09-10 06:40:54 +00:00
Carsten Haitzler c1d838efa7 promote scale to fp.
SVN revision: 35920
2008-09-10 05:43:25 +00:00
Gustavo Sverzut Barbieri ddad2bf152 Fix usage of DirectFB FillSpans().
SVN revision: 35909
2008-09-10 00:47:33 +00:00
Gustavo Sverzut Barbieri c1c8a18b54 Brand new DirectFB engine.
ProFUSION funded the rework of DirectFB engine, it works quite well,
please report problems with it and be sure to try to uncomment the
following lines to see if it helps:

evas_engine.c: (uncomment if you notice problems)
    //#define DFB_USE_EVAS_IMAGE_DRAW 1
    //#define DFB_USE_EVAS_RECT_DRAW 1
    //#define DFB_USE_EVAS_POLYGON_DRAW 1
    //#define DFB_UPDATE_INDIVIDUAL_RECTS 1

polygon.c: (comment if you notice slowdowns, but may lead to visual problems)
    #define USE_SPAN_RECTS 1

You can also turn on debug by uncommenting in evas_engine.c:
    //#define DFB_DEBUG_IMAGE 1
    //#define DFB_DEBUG_FLAGS 1
    //#define DFB_DEBUG_ACCELERATION 1

Thanks to Denis Oliver Kropp (dok) for review and patches!



SVN revision: 35904
2008-09-09 20:27:58 +00:00
Carsten Haitzler d06c5e9efb and add a scale factor per object. right now text and textblock use it.
that's about it. a bit hacky - but works and frankly.. the idea is that u'd
set a scale factor once really and not change it per obj... most likely.




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

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

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



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

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



SVN revision: 35860
2008-09-07 01:25:49 +00:00
Carsten Haitzler d73b8c5d7b updated patches from jose!
SVN revision: 35756
2008-08-31 02:04:31 +00:00
Carsten Haitzler 55711fffca fix 16bit engine with new grad 2
SVN revision: 35727
2008-08-29 06:28:05 +00:00