Commit Graph

7992 Commits

Author SHA1 Message Date
Gustavo Sverzut Barbieri bda2733238 fix message
SVN revision: 42313
2009-09-07 04:29:27 +00:00
Gustavo Sverzut Barbieri 8318f4c1f2 allow amalgamation of files, at least symbols don't clash anymore.
more related to amalgamation later.



SVN revision: 42312
2009-09-07 04:23:05 +00:00
Gustavo Sverzut Barbieri a4bd77905d malloc--: error and magic can take statically defined strings so no
need to strdup them.



SVN revision: 42311
2009-09-07 03:32:22 +00:00
Gustavo Sverzut Barbieri 404e3e09fb API BREAK: eina_magic_string_set() does not change existing strings anymore.
It's pointless to be able to change magic number string after it's
created, so let's avoid walking the existing list and just remove
places where strings were being duplicated (list/array both inited
magic strings for accessor/iterators).

Also an optimization, register using an array and sort it before
searching. Sort will just happen when array was changed, and this is
just done when eina_magic_string_get() is called.




SVN revision: 42310
2009-09-07 02:33:54 +00:00
Gustavo Sverzut Barbieri 4baa70798c eina_inlist.h is not required anymore.
SVN revision: 42305
2009-09-06 22:56:34 +00:00
Gustavo Sverzut Barbieri 777e74ce7d eina_error: improvements to make it faster.
Use a simple array instead of inlist, error get is now much faster
using direct index access.



SVN revision: 42304
2009-09-06 22:54:49 +00:00
Gustavo Sverzut Barbieri f98bf21da7 allocate more buckets on init to save couple of reallocs during startup.
SVN revision: 42303
2009-09-06 22:34:38 +00:00
Gustavo Sverzut Barbieri 205e0fe399 fix macro positioning of '\'
SVN revision: 42302
2009-09-06 22:25:36 +00:00
Gustavo Sverzut Barbieri 992936af22 Update to match new EINA init/shutdown.
SVN revision: 42301
2009-09-06 22:23:04 +00:00
Gustavo Sverzut Barbieri e4af7c100c EINA API BREAK: no more individual modules init/shutdown.
Being able to indivually initialize individual modules was initially
"good", but at end it's putting complexities on users that would try
to "optimize" by doing just what they used, but in the end most people
would get them wrong, users would have to do lots of code and etc. At
the end it does not worth.

Most module init just register handful errors and log domains, so are
cheap. The exception is mempool users, that would dlopen() stuff, but
people that are concerned (embedded) can just compile those statically
in eina.

Since at the end any real application would use most of modules, we
actually end saving lots of function calls that would do nothing other
than increment a global counter.

I also did the init/shutdown use an array, making it easier to
maintain. The inital dependencies were analysed by a script I wrote, I
hope it's all right.

Please fix any breakages you find!



SVN revision: 42300
2009-09-06 22:21:56 +00:00
Vincent Torri 718873e00c shut down safety checks in the log module
Note : currently, because of a circular calls of
eina_log_init() and eina_safety_checks_init(), eina
is not correctly shut down. Imho, eina_log should not
depend on the safety checks module. That would mean
some fprintf in eina_log_domain_new(), eina_log_domain_free(),
eina_log_domain_register()and eina_log_domain_unregister().


SVN revision: 42292
2009-09-06 15:25:35 +00:00
Vincent Torri e780763aa0 shutdown array module
SVN revision: 42287
2009-09-06 08:39:04 +00:00
Vincent Torri e6891b228c formatting
SVN revision: 42275
2009-09-05 08:52:41 +00:00
Vincent Torri 1dd8436cd4 add Mathieu Taillefumier's patch for eina logging,
with small modifications and fixing

ecore_evas_win32 does not build, though. I think that
if we add log support in evas, all the macro must have
different names, because of all the _private.h headers
that are included in all source files (that's the problem
with win32). I'll fix ecore_evas_win32 build later. Or
someone can do it if he wants :-)


SVN revision: 42274
2009-09-05 08:39:34 +00:00
Vincent Torri 911ce19bfc fix build when async events are not enabled
SVN revision: 42273
2009-09-05 07:56:03 +00:00
Gustavo Sverzut Barbieri 5846195caf eina_log: be able to disable function or line.
write down specialized cases for threads or not, function or file,
color or not. Maybe it's not even an optimization since we add yet
another indirection/function call, but each case is simpler.

 * EINA_LOG_FILE_DISABLE=1: disables show of file:line in
   stderr/stdout messages.
 * EINA_LOG_FUNCTION_DISABLE=1: disables show of function() in
   stderr/stdout messages.

one must not use the two options at the same time, if that's the case
code will ignore EINA_LOG_FILE_DISABLE=1 and use just function
disable.



SVN revision: 42272
2009-09-04 23:45:16 +00:00
Gustavo Sverzut Barbieri 86aa8a433b mark log functions as not_instrument_function.
SVN revision: 42270
2009-09-04 21:55:03 +00:00
Gustavo Sverzut Barbieri b5397eea63 eina_log optimization: allow to compile out some debug messages.
Users may opt to set EINA_LOG_LEVEL_MAXIMUM to some integer and macro
will then evaluate to check for that value before actually call
eina_log_print() macro. By using optimizations compilers will
effectivelly compile out the code if it is never reached, thus saving
the check and function call in possible critical paths.



SVN revision: 42269
2009-09-04 21:28:50 +00:00
Gustavo Sverzut Barbieri e229b25826 loggify ethumb.
remove debug_level options as it is better handled by EINA_LOG_LEVELS
and EINA_LOG_LEVEL variables, for example:

  EINA_LOG_LEVEL=3 EINA_LOG_LEVELS=ethumb:4,ethumb_client=1

will show debug for ethumb (lib), just errors (no warnings) for
ethumb_client library and everything else shows "info".



SVN revision: 42261
2009-09-04 19:27:12 +00:00
xcomputerman 1f24df9c39 Update EINA_ERROR_LEVEL* to EINA_LOG_LEVEL* to allow building again
SVN revision: 42255
2009-09-04 18:04:00 +00:00
Vincent Torri 1d7608daaa fix coverage support configuration
SVN revision: 42250
2009-09-04 16:55:51 +00:00
Vincent Torri 5e05323794 include eina_log.h in eina_error.h as some log macro are used in it
SVN revision: 42249
2009-09-04 16:54:38 +00:00
Vincent Torri d56568b7f9 eina_log uses pthreads now (if enabled), so link libeina against pthread
SVN revision: 42248
2009-09-04 16:25:18 +00:00
Gustavo Sverzut Barbieri eef2d35ea6 eina_matrixsparse: loggify, install header, remove warnings and coding style.
* use eina_log
 * install eina_matrixsparse.h
 * remove unused variable
 * fix coding style issue reported by Vincent



SVN revision: 42246
2009-09-04 14:18:05 +00:00
Gustavo Sverzut Barbieri 643958705b eina_matrixsparse: welcome sparse matrix implementation and tests.
Sparse Matrix was implemented and tested by Rafael Antognolli and
myself in order to implement optimized large sparse matrix walk in
some products, one of them WebKit-EFL optimizations.

We have done extensive tests, with good code coverage. Similar to
lists/inlists, we keep pointer to last known element and similar to
iterators we keep reference to last accessed row and cell inside
rows. This allows fast sequential access (for i... for j... m[i,j]),
that is our most common usage case.

Rows are kept in a list, with cells inside that row as another
list. It's not similar to most book implementations where cells keep
reference to their sibling cells in other rows as well, we opted to
not do that to save some pointers and make algorithms simpler, still
do great for our use case.

This code was developed on behalf of our client, that wants to remain
unnamed so far. Thanks client ;-)



SVN revision: 42243
2009-09-04 13:43:44 +00:00
Vincent Torri d8acbfc6f6 rename ecore_thread_init and ecore_thread_shutdown to fit usual private function names
SVN revision: 42240
2009-09-04 05:49:54 +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
Vincent Torri be3e63eb6d et_init should fail if eina_init fails
SVN revision: 42237
2009-09-04 05:03:47 +00:00
Vincent Torri 4576249649 fix maintainer-clean rule
SVN revision: 42236
2009-09-04 04:45:47 +00:00
Vincent Torri d109fae2f9 remove from MAINTAINERCLEANFILES files that are removed by distclean rule
SVN revision: 42235
2009-09-04 04:36:03 +00:00
Vincent Torri cb3150f9ea remove uneeded files
SVN revision: 42234
2009-09-04 04:29:23 +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 e88b62b295 oops! thanks Vincent.
SVN revision: 42230
2009-09-04 03:52:05 +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
Gustavo Sverzut Barbieri 4d5fbb7742 loggify array.
this is the last eina module to be converted to eina_log! :-)


SVN revision: 42228
2009-09-04 02:35:24 +00:00
Gustavo Sverzut Barbieri 5ea9ceeafc eina_module must initialize eina_array as it is used.
SVN revision: 42227
2009-09-04 02:34:48 +00:00
Gustavo Sverzut Barbieri dfee09d6b0 make it easier to spot wrong users of eina_log_print()
SVN revision: 42226
2009-09-04 02:34:10 +00:00
Gustavo Sverzut Barbieri 9f8dfea129 loggify rectangle.
SVN revision: 42225
2009-09-04 02:11:44 +00:00
Gustavo Sverzut Barbieri 04489ec727 loggify stringshare, with extensive debug.
note that one can turn per module debug, for example:

   EINA_LOG_LEVEL=4 EINA_LOG_LEVELS=eina_stringshare:0 ./bla

will enable level 4 (debug) for all modules except eina_stringshare
that is forced to 0 (just critical messages).



SVN revision: 42224
2009-09-04 02:03:46 +00:00
Gustavo Sverzut Barbieri 21545b087a loggify stringshare.
SVN revision: 42223
2009-09-04 01:54:37 +00:00
Gustavo Sverzut Barbieri ecbff0cb75 loggify main.
SVN revision: 42222
2009-09-04 01:48:36 +00:00
Gustavo Sverzut Barbieri 8a2c84631c loggify list.
SVN revision: 42221
2009-09-04 01:43:50 +00:00
Gustavo Sverzut Barbieri 8ca1675c51 eina_error: deprecated old logging, move to eina_log.
SVN revision: 42220
2009-09-04 01:37:11 +00:00
Gustavo Sverzut Barbieri 2406791660 loggify benchmark.
SVN revision: 42219
2009-09-04 01:19:19 +00:00
Gustavo Sverzut Barbieri dac152772f loggify mempool.
SVN revision: 42218
2009-09-04 01:13:49 +00:00
Gustavo Sverzut Barbieri 253a9623e9 loggify eina_convert.
SVN revision: 42217
2009-09-04 01:03:27 +00:00
Gustavo Sverzut Barbieri eeb2d38d38 eina_log_vprint() for those that want to wrap it in other functions.
SVN revision: 42216
2009-09-04 00:57:09 +00:00
Gustavo Sverzut Barbieri 0dd3836c56 missing file, sorry.
SVN revision: 42215
2009-09-04 00:56:16 +00:00
Gustavo Sverzut Barbieri 07d2bde900 eina_safety_checks_init()
All these individual init functions are getting messy, some modules
lack them and it's easy to get inconsistent. Safety check needs error
and log, but these need safety checks as well, some modules (lalloc,
rbtree and others) use safety checks but provide no _init().

I want to know if we really gain something to init individual
modules. It should not be that expensive as init should not allocate
heavy resources and the recommendation is to call eina_init() so most
users will do that anyway.

If people agree I'll unmark all *_init() as EAPI and make them private
to eina lib.



SVN revision: 42214
2009-09-04 00:53:19 +00:00
Gustavo Sverzut Barbieri 4d37971d60 eina_safety_checks now uses eina_log.
SVN revision: 42213
2009-09-03 23:36:27 +00:00
Massimo Maiurana 63ebbb00a0 adding french and italian translations
SVN revision: 42211
2009-09-03 17:22:10 +00:00
Gustavo Sverzut Barbieri cee03dcb3c eina_log: CONVENTION BREAK!!!! automatically adds \n
Automatically add \n to messages. Since we use that prefix, there is
no use to allow messages without \n, it would look a mess.

Some logging systems may not require the trailing newline, for example
logging to xml or syslog, for those you don't need to ignore this char
if present.

Yes, this breaks convention, but better now than latter. And the
results are not so bad.



SVN revision: 42200
2009-09-03 01:39:45 +00:00
Gustavo Sverzut Barbieri 8024360138 eina_log: thread safe logging!
eina_log_threads_enable() and then get thread safe logging with
non-main threads being printed with special notation to easily spot
those.



SVN revision: 42199
2009-09-03 01:31:26 +00:00
Gustavo Sverzut Barbieri d8ee1b3a24 eina_log: fix error handling and handle deleted domains.
EINA_SAFETY_CHECKS will call eina_log, so calling these from inside
eina_log_print() may lead to recursion, that is really bad (although
it seems it would never lead to infinite recursion).

handle d->deleted, also showing error.



SVN revision: 42198
2009-09-03 00:17:27 +00:00
Gustavo Sverzut Barbieri 9fb9b1259d eina_log: fix stderr, improve log output.
* stderr logger was doing prefix properly but user message to stdout, fixed.
 * log is improved:
   * grep-able, it shows the 3 letter level name as prefix, unknown levels
     will have their number printed.
   * colors just on prefix, less polluted output still easy to spot.
   * function names are highlighted.



SVN revision: 42197
2009-09-03 00:07:25 +00:00
Gustavo Sverzut Barbieri 418c99a8e3 eina_log improvements: docs, micro optimizations and stderr logging by default.
* more docs.
 * do not getenv("EINA_LOG_ABORT") everytime, just at init.
 * EINA_UNLIKELY() in some critical paths (not that big impact anyway)
 * eina_log_print_cb_stderr() and use it by default.




SVN revision: 42196
2009-09-02 23:28:00 +00:00
Gustavo Sverzut Barbieri bb717a3be5 less malloc and memory fragmentation.
not that important, but an easy improvement does not hurt.



SVN revision: 42195
2009-09-02 23:11:22 +00:00
Gustavo Sverzut Barbieri 2f8ded1037 loggify eina_module, adding couple of debug info.
SVN revision: 42194
2009-09-02 23:06:55 +00:00
Gustavo Sverzut Barbieri c1e2a300e4 coding style/indent.
SVN revision: 42193
2009-09-02 22:39:41 +00:00
Christopher Michael d00a91f70d Formatting.
SVN revision: 42185
2009-09-02 15:48:34 +00:00
Carsten Haitzler 8a202ffe04 remove excessive backspace
SVN revision: 42183
2009-09-02 12:49:09 +00:00
Carsten Haitzler d6cdd8131b 1. ecore-evas doesnt disable draws to fully obscured windows if compositoir
is there
2. static atom for compositor check
3. stop filterng out mouse moves for better scroll momentum checks



SVN revision: 42182
2009-09-02 12:48:56 +00:00
Vincent Torri af6cde97d3 fix gettext stuff
to disable it, pass to configure --disable-nls



SVN revision: 42166
2009-09-01 17:27:23 +00:00
Iván Briano d0e971620e fix docs
SVN revision: 42159
2009-09-01 16:16:23 +00:00
Gustavo Sverzut Barbieri 7d5dfd2b1c fix build to actually use gettext, create ecore.pot
SVN revision: 42158
2009-09-01 14:56:06 +00:00
Gustavo Sverzut Barbieri ba79d71f95 have ecore+gettext stuff to actually compile.
SVN revision: 42157
2009-09-01 14:46:16 +00:00
Gustavo Sverzut Barbieri 21e66eec2b some parts I missed before.
SVN revision: 42156
2009-09-01 14:35:59 +00:00
Daniel Kolesa 2f319b9a5c Gettext support in Ecore_Getopt. Thanks to k-s :)
SVN revision: 42155
2009-09-01 14:15:37 +00:00
Cedric BAIL 49cb141f10 * eina_magic: Test suite now work when magic debug is disabled.
SVN revision: 42150
2009-09-01 12:17:13 +00:00
Cedric BAIL a77cd76e1d * edje: Fix static build of edje.
SVN revision: 42146
2009-09-01 10:02:40 +00:00
dieb 7eff1d432b Remove legacy error code definition from eina log.
SVN revision: 42126
2009-08-31 14:40:48 +00:00
Cedric BAIL 2bc38ddb92 * eina: Add more FP type (f8p24 and f32p32).
SVN revision: 42124
2009-08-31 13:52:17 +00:00
Vincent Torri 2d11ac918c fix number of events
SVN revision: 42114
2009-08-30 21:41:51 +00:00
Vincent Torri 8f53c520a4 typo
SVN revision: 42091
2009-08-29 20:53:12 +00:00
Vincent Torri 2a5548f8e9 better fix : if HW_AVAILCPU is defined, we use it, otherwise we use HW_NCPU
SVN revision: 42090
2009-08-29 19:59:26 +00:00
Vincent Torri 841aaa8f52 typo
SVN revision: 42089
2009-08-29 19:29:30 +00:00
Vincent Torri 9f01ad25cf fix for the BSD systems
SVN revision: 42088
2009-08-29 16:39:59 +00:00
Vincent Torri 17cb74c23f don't try to remove monitors if non has been added before
SVN revision: 42087
2009-08-29 08:44:05 +00:00
Vincent Torri d3d9560eb1 remove debug
SVN revision: 42086
2009-08-29 08:42:44 +00:00
Vincent Torri 2e38151ed8 formatting
SVN revision: 42084
2009-08-29 05:29:05 +00:00
Vincent Torri 72b87160a2 * add eina_config.h in all source files. Fix linking with Visual Studio
* move eina_private.h and eina_safety_checks.h just after eina_config.h


SVN revision: 42077
2009-08-28 12:03:34 +00:00
Carsten Haitzler c1e675d669 fix copying to 2.1 again and keep static linking clause
SVN revision: 42075
2009-08-28 11:30:35 +00:00
Carsten Haitzler 1c58a8b3f3 static linking exception
SVN revision: 42073
2009-08-28 11:17:59 +00:00
Vincent Torri 42918e0b9e rename the dll name created by VS
SVN revision: 42068
2009-08-28 09:51:39 +00:00
Vincent Torri 2678846b95 rename project name and filename
SVN revision: 42064
2009-08-28 07:34:58 +00:00
Vincent Torri 5612cf9020 * declare variables at the beginning of the block
* strtol returns a long int

SVN revision: 42063
2009-08-28 07:21:35 +00:00
Vincent Torri bc6ee8c17a fix warning with vc++
SVN revision: 42062
2009-08-28 07:15:49 +00:00
Vincent Torri 8eb64a4e2d update Visual Studio project
SVN revision: 42060
2009-08-28 06:32:45 +00:00
Vincent Torri 0de03a3f2b update Visual Studio project even more
SVN revision: 42059
2009-08-28 06:20:15 +00:00
Vincent Torri bede23211d update Visual Studio project
SVN revision: 42058
2009-08-28 06:15:35 +00:00
Vincent Torri 1029babb26 remove debug
SVN revision: 42057
2009-08-28 05:49:40 +00:00
dieb 7bc6284e09 Fix compilation issue reported by Vincent on Windows (stdint and c++ compiler), setup a negative value for flagging the unknown level.
SVN revision: 42049
2009-08-27 21:32:42 +00:00
dieb e6b9bea5d8 Add missing prototype for ecore_con_url_response_headers_get().
SVN revision: 42048
2009-08-27 21:21:43 +00:00
Vincent Torri bb6e659965 * src/lib/dlfcn/dlfcn.c:
fix warnings
	* src/lib/evil_fnmatch_list_of_states.c:
	fix vc++ warning
	* win32/MANIFEST.txt:
	* win32/README.txt:
	* win32/start.bat:
	* win32/vs9/evil.sln:
	* win32/vs9/libdlfcn.vcproj:
	* win32/vs9/libevil.vcproj:
	* win32/vs9/test/out/update_deps.bat:
	* win32/vs9/test/start.bat:
	* win32/vs9/test/test.sln:
	* win32/vs9/test/test.vcproj:
	* win32/vs9/test/test_fnmatch.cpp:
	* win32/vs9 (added):
	* win32/vs9/test (added):
	* win32/vs9/test/test_fnmatch.cpp (added):
	* win32/vs9/test/test.vcproj (added):
	* win32/vs9/test/start.bat (added):
	* win32/vs9/test/out (added):
	* win32/vs9/test/out/update_deps.bat (added):
	* win32/vs9/test/test.sln (added):
	* win32/vs9/libdlfcn.vcproj (added):
	* win32/vs9/libevil.vcproj (added):
	* win32/vs9/evil.sln (added):
	* win32/start.bat (added):
	* win32/vs8/libmman.vcproj (deleted):
	* win32/vs8/start.bat (deleted):
	* win32/set_env.bat (deleted):
	update the Visual Studio environment. Now, there is only one
	script to launch (start.bat) in win32/. It detects automatically
	the latest Visual Studio environment which is installed and launch
	the solution. Currently	supported VS are 2005 and 2008.



SVN revision: 42029
2009-08-27 08:19:06 +00:00
Vincent Torri 654330e183 warnings--
SVN revision: 42018
2009-08-26 15:43:45 +00:00
Vincent Torri 77a9dab5eb fix warnings
SVN revision: 42016
2009-08-26 15:36:01 +00:00
Vincent Torri ebf35949a6 * fix potential bugs
* fix warnings
 * make the code a bit more readable


SVN revision: 42015
2009-08-26 15:34:49 +00:00
Vincent Torri 0bd66ee195 fix warnings
SVN revision: 42014
2009-08-26 15:32:23 +00:00
Lars Munch 023b8909af Added missing pthread guard
Patch from Vincent Torri



SVN revision: 42005
2009-08-26 05:59:56 +00:00
dieb c891a34a08 Add eina_log module into the main module and global header.
SVN revision: 41985
2009-08-25 21:26:27 +00:00
Gustavo Sverzut Barbieri c8534587f2 do not check for data, eina_iterator_next/eina_accessor_data_get() does that.
SVN revision: 41984
2009-08-25 21:05:00 +00:00
Vincent Torri 2a8d44f5a0 allow the user to chose in which directory the temporary file
will be created. The logic is the following:

 * if the environment variable TMPDIR is set, use its value
 * if it is not set, take the directory passed with the
   -td option (see edje_cc help)
 * otherwise on Windows use a temporary dir and on other
   platform, use /tmp


SVN revision: 41978
2009-08-25 17:25:23 +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
Vincent Torri e005dd2479 * fix compilation when curl is not available
* small formatting


SVN revision: 41968
2009-08-25 06:45:35 +00:00
dieb d7bbc05b12 Initial import of the new eina logging API.
* eina_error might be kept for error messages and codes, but it's logging API
  will be deprecated. For now, it's been kept for not breaking others code and
  for a smoother transition.
* Added test for new logging API, also demonstrates usage.


SVN revision: 41960
2009-08-24 21:43:48 +00:00
dieb 85ba9823e7 Change my email address to a fixed one.
SVN revision: 41959
2009-08-24 21:28:59 +00:00
Vincent Torri 5fd9a46869 small cleanup
SVN revision: 41958
2009-08-24 17:20:33 +00:00
Vincent Torri 8b2bd0c079 * remove unused parameters (except in edje_lua.c, as i don't know the current status)
* remove unused variables


SVN revision: 41957
2009-08-24 16:40:42 +00:00
Cedric BAIL 05549684f7 * ecore_con_url: Remove debug.
SVN revision: 41954
2009-08-24 13:25:51 +00:00
Christopher Michael 26f32b9520 Return NULL to be consistent, not 0.
SVN revision: 41953
2009-08-24 10:52:40 +00:00
Cedric BAIL 3c24106508 * ecore: Add Andre Dieb in ecore AUTHORS file.
SVN revision: 41952
2009-08-24 09:41:46 +00:00
Cedric BAIL 8d908436c6 * ecore_con_url: Add a way to retrieve request response headers.
Patch from Andre Dieb <andre.martins@ee.ufcg.edu.br>.


SVN revision: 41951
2009-08-24 09:41:07 +00:00
Vincent Torri 37fc8c9674 fix warning
SVN revision: 41943
2009-08-23 20:37:17 +00:00
Vincent Torri b4ddae48b8 typo
SVN revision: 41942
2009-08-23 15:37:20 +00:00
Vincent Torri da7d129e2d * remove the inclusion of config.h in Eet_private.h (not needed)
* add config.h in all source file to be consistent, even if it
   is not necessary
 * formatting


SVN revision: 41941
2009-08-23 09:36:43 +00:00
Vincent Torri 6e7aecc7c0 * Put definition of alloca before any standard header
files according to the doc
 * define _GNU_SOURCE before the inclusion of alloca
   as features.h inclued by alloca.h, defines some
   macros according to _GNU_SOURCE.



SVN revision: 41940
2009-08-23 09:18:14 +00:00
Christopher Michael 581556e6d2 Patch from Andre Dieb to remove a debug statement.
Fix formatting also.


SVN revision: 41919
2009-08-21 19:47:04 +00:00
Gustavo Sverzut Barbieri 85c2e25399 have efreet to match x-generic as well, requested by jeffdameth.
SVN revision: 41907
2009-08-21 03:03:59 +00:00
Vincent Torri c01af79f80 portable way to do echo -n as some shells do not
support it (Mac OS X or OpenSolaris)


SVN revision: 41897
2009-08-20 21:20:31 +00:00
Vincent Torri 13b23be252 don't do arithmetic on void *
SVN revision: 41885
2009-08-20 11:56:57 +00:00
Vincent Torri 5213fca489 rewrite a bit that m4 macro
SVN revision: 41881
2009-08-20 08:31:26 +00:00
Lars Munch 2e7e9169e7 Fix building without pthread support
SVN revision: 41880
2009-08-20 06:09:15 +00:00
Vincent Torri 008b437d52 update changelog
SVN revision: 41877
2009-08-19 12:18:08 +00:00
Vincent Torri 137f6f2d91 -pthread should be passed to eina_chained_mempool_la_LDFLAGS
SVN revision: 41876
2009-08-19 12:15:10 +00:00
Vincent Torri 5c8b90d23c add alloca() declaration
SVN revision: 41874
2009-08-19 10:58:38 +00:00
Carsten Haitzler 59f676f369 oh suncc - shut up!
SVN revision: 41873
2009-08-19 09:56:46 +00:00
Vincent Torri 989ade86dd fix a bit the documentation
SVN revision: 41870
2009-08-19 07:54:13 +00:00
Vincent Torri 2d97e95d2a clean a bit the hamster
SVN revision: 41869
2009-08-19 07:36:39 +00:00
Vincent Torri c45bf860da * remove uneeded semicolons
* fix and add doxygen doc


SVN revision: 41868
2009-08-19 07:09:24 +00:00
Vincent Torri 36be15fc55 don't suppose that gcc is the only compiler that can be used.
Check if -Wall and -fno-strict-aliasing are supported by the compiler


SVN revision: 41863
2009-08-18 20:04:19 +00:00
Cedric BAIL 0b7407905c * eina_rectangle: Add a local cache to rectangle creation.
SVN revision: 41856
2009-08-18 13:35:33 +00:00
Davide Andreoli dfac5a2a59 * Remove _strdup(). Useless unless we don't check the return value
SVN revision: 41850
2009-08-17 21:28:40 +00:00
Cedric BAIL 9abdbe30af * edje: Fix tween when comming from same state.
SVN revision: 41844
2009-08-17 15:16:23 +00:00
Davide Andreoli cb29b20245 * Do not include edje_cc.h anymore :)
SVN revision: 41843
2009-08-17 14:49:26 +00:00
Davide Andreoli 74565cec99 * Do not use the 'Font' struct from edje_cc.h
SVN revision: 41842
2009-08-17 14:26:31 +00:00
Davide Andreoli 8fa5f302d3 * Do not use SZ() macro from edje_cc.h
SVN revision: 41841
2009-08-17 14:13:26 +00:00
Cedric BAIL 06f76b1e87 * edje: Fix calc.
SVN revision: 41840
2009-08-17 14:00:44 +00:00
Davide Andreoli 061798f628 * rename mem_strdup() to not clash (in the case of a static build) with the one defined in bin/
SVN revision: 41839
2009-08-17 13:54:17 +00:00
Cedric BAIL 6c7f8ce84c * edje: Remove warning, mainly due to lua merge.
SVN revision: 41838
2009-08-17 11:32:56 +00:00
Carsten Haitzler 359df1c2b9 fix eet docs.
SVN revision: 41826
2009-08-17 01:51:56 +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
Mikhail Gusarov 90f801d31c From: Mikhail Gusarov <dottedmag@dottedmag.net>
Those symbols appeared earlier than in 1.2.2, but debian/libeet1.symbols
was not updated, so there is no point to look at the actual minimal
versions of symbols.



SVN revision: 41824
2009-08-17 01:31:38 +00:00
Carsten Haitzler aff55d6fbb log.
SVN revision: 41814
2009-08-16 09:44:21 +00:00
Carsten Haitzler 65c50a0a4e fix - write empty chunks. need them for corner case. see comments.
SVN revision: 41810
2009-08-16 07:06:22 +00:00
Carsten Haitzler 2a06a861d5 do not exit on lua errors! this would be righteously bad for apps using
themes that happened to use lua...



SVN revision: 41804
2009-08-16 03:00:14 +00:00
Hanspeter Portner da75132793 From: "Hanspeter Portner" <ventosus@airpost.net>
This concerns Ticket #109: Add Lua support for Edje

It adds Lua as scripting facility to Edje, letting Embryo untouched.
It should be easier to use and be more flexible than Embryo, imho ;-)

---
The patch
---

Lua 5.1 is used in sandboxed mode. Lua byte code is not
platform/architecture independent, Lua code is saved as text in the Edje
container and parsed at load time, therefore.

The patch goes in two directions

1) Analogous to Embryo for scripting logic, messaging and custom states.
The same things are implemented as in Embryo:

    - messaging from and to C
        - manual creation of timers, animators, pollers for custom events /
            animations
                - manual manipulation of Edje parts by means of the public
                    edje_object_part_* and internal functions and custom states
                    
                        -> those routines are actually implemented as Lua
bindings to
    functions in Edje.h and Ecore.h
        -> the implementation is done in an object oriented way, so that the
            interface gives the feel of an object description language, pretty
                similar to EDC itself
                    -> combining custom states and custom animators allows
for fancy
    animations and transitions, e.g circular/spline translations or
        complex/conditional transitions, etc.
            -> this is just the same as Embryo does, but implemented in Lua, so
                nothing new here, actually
                
                2) Dynamic object creation and manipulation
                
                    - this interface stems from the 'script_only' objects in
Edje. Those
    objects are a kind of scriptable Edje counterparts to Evas_Smart
        objects. The infrastructure for Embryo is already there, but has
            never been used
                - I added this in Lua and added some first bindings to
experiment
    with
        - I thought it would be useful to allow for a limited dynamic
            creation of ui parts
                - We can create instances of groups from within the same Edje
                    container and use them just like the main Edje object as
stated in
    1)
        - And there are some stand-alone bindings to dynamically create
            Evas_Image, Evas_Table, Evas_Line, Evas_Polygon as examples
            
                -> this may be useful to decouple the program from the ui
even more,
    to be able to do things that have to be done in the program itself
        atm, but actually belong to the user interface, but need dynamic
            creation of objects or complex interactions
                -> those objects are manipulated manually with Lua bindings
to the
    corresponding edje_object_* and evas_object_* functions
    
    ---
    Discussion points
    ---
    
    Both stuff in 1) & 2) is functioning, but needs testing, feedback,
    improvements, ...
    
    Stuff in 1) can already fully replace Embryo scripting with Lua
    scripting. There still is space for improvements/additions, though.
    
    Of the stuff in 2), I think it may only make sense to add the dynamic
    creation of groups defined in the same Edje container.  Dynamic creation
    of other Evas_Objects makes not much sense, as most of them can already
    be used as Edje parts and be manipulated with custom states (apart from
    polygons and lines) and it would make the whole theming potentially more
    programing-like and much more susceptible for errors, etc.
    
    Would this be useful, or drop it all?
    
    The scripting should be there just for logic, conditionals, custom
    states and animations, not for a whole dynamic canvas, imho.
    
    There is a patch around with EXTERNAL Edje parts. Seems to be a better,
    faster, more secure way to extend Edje with custom objects.
    
    There would be the possibility of precompiling Lua code at compile time
    (edje_cc) for faster loading, but we would have to patch and run our own
    Lua version.
    The Lua parser is pretty fast, though, and using
    byte-converted/endianness-swapped byte-code does only pay off for Lua
    chunks of some kilo lines.
    Byte code also occupies much more space than text in the final Edje
    container, as it includes debug symbols.
    
    ---
    
    Cedric and Vincent told me, that the plan was to replace Embryo totally
    by Lua before the official release of Edje at the end of the year? So it
    would make sense to bring Lua to svn soon and look how it fits in, test,
    debug, adapt it further to the themers needs, decide on its final shape,
    GATHER SOME PEOPLE TO HELP ;-)
    
    ---
    
    The Lua enhanced Edje is in sync with svn and can be get directly here
       git clone git://repo.or.cz/edje_lua.git
          cd edje_lua
             git checkout -b lua_patch origin/lua_patch
             
             or apply the attached patch
             
             There are also some examples to show the usage of the things
mentioned
above
    - showcase.edj: shows usage of custom animators, custom states,
        messaging and the script_only object
            - test.edj: test cases of script usage and bindings (custom states,
                custom transitions, tween_states, animators, timers,
object_parts),
    but most of it are experimental script_only objects
    
    http://didgmo.sourceforge.net/showcase.edj
    http://didgmo.sourceforge.net/test.edj
    
    The source of showcase.edc is attached, too, to just have a glimpse at
    Lua inside of EDC
    
    ---
    
    So, what do you guys think?
    
    Thanks and sry for the looong mail, hehe ;-)



SVN revision: 41802
2009-08-16 02:34:02 +00:00
Gustavo Sverzut Barbieri 425ebc47f5 improve docs and simplify macro, by kubo.
Kubo just found that docs could be improved and macro could be
simplified during his learning of EFL. Big bonus he did the
improvements =)



SVN revision: 41799
2009-08-16 00:47:23 +00:00
Gustavo Sverzut Barbieri cbbb575f69 have his full name, as he likes it =)
SVN revision: 41798
2009-08-16 00:37:38 +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 56674aeb99 * edje: Make EDJE_CALC_CACHE on by default.
SVN revision: 41772
2009-08-14 17:20:27 +00:00
Cedric BAIL 7df190d264 * edje_calc: Major cleanup.
- Edje_Real_Part use less memory.
		- Edje_Real_Part and Edje_Real_Part_State now use a mempool.
		- When both param1 and param2 are the same, only recalc param1.
		- Don't compute Edje_Real_Part more than one time per edje_recalc_do.



SVN revision: 41771
2009-08-14 17:19:42 +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
Cedric BAIL 67418404d0 * eet: Make macro EET_EINA_*_DATA_DESCRIPTOR_CLASS_SET usable in if
statement.

        Patch from Raphael Kubo.


SVN revision: 41763
2009-08-14 14:30:56 +00:00
Cedric BAIL c634e07770 * eina: Fix typo.
SVN revision: 41762
2009-08-14 14:22:25 +00:00
Cedric BAIL 09012c96bb * ecore_con_url: Fix mem leak.
SVN revision: 41758
2009-08-14 11:33:33 +00:00
Cedric BAIL d894444135 * edje_calc: Use 20 bytes less per Edje_Calc_Params.
SVN revision: 41745
2009-08-13 16:28:17 +00:00
Cedric BAIL eff22017dc * edje_calc: Cleanup calc structure.
SVN revision: 41744
2009-08-13 16:13:49 +00:00
Cedric BAIL b559c260fa * Ecore_Con: Revert r41742.
Note: It's not a good idea to initialize curl, if you just
	want to do some ecore_con network or ipc. Better let them
	initialize separatly.


SVN revision: 41743
2009-08-13 15:42:30 +00:00
Gustavo Sverzut Barbieri 33b9d1b2ed init ecore_con_url.
By: Andre Dieb <andre.martins@ee.ufcg.edu.br>


SVN revision: 41742
2009-08-13 15:26:29 +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
Carsten Haitzler c1acd83e1e beware "class"! those c++ compiler can compile c... but they like to think
class is special... ESPECIALLY IN HEADERS used by c++ apps.



SVN revision: 41738
2009-08-13 14:47:10 +00:00
Cedric BAIL 05edf17dd4 * eet: Oops. Fix init order.
SVN revision: 41736
2009-08-13 13:57:22 +00:00
Cedric BAIL 2cf15dc335 * eet: Fix prefix.
SVN revision: 41735
2009-08-13 13:26:43 +00:00
Cedric BAIL bc5dda9c0c * edje: Use new clean API from Eet.
SVN revision: 41733
2009-08-13 12:53:12 +00:00
Cedric BAIL 1e0baaab60 * eet: Cleanup Eet_Data_Descriptor API.
- Provide two functions with a better name (Still need more doc).
	- Deprecating old eet_data_descriptor*_new.
	- Provide helper function for eet when using eina data type.


SVN revision: 41732
2009-08-13 12:52:41 +00:00
Carsten Haitzler 819c572d1c amazing time hamsters!
SVN revision: 41728
2009-08-13 01:26:08 +00:00
Carsten Haitzler d0c5158f5b eina hamster++
<dieb_> weird, undefined refernce to eina_cpu_count
<raster> you have no cpus!
<dieb_> dammit!
<Sachiel> try eina_hamster_count
<dieb_> lo
<raster> oh god
<raster> now u did it
<raster> i have to add that
<dieb_> heheheh



SVN revision: 41727
2009-08-13 00:47:55 +00:00
Carsten Haitzler 447051bf3c dont use #ifdeffed out calls
SVN revision: 41726
2009-08-13 00:30:59 +00:00
Carsten Haitzler 26d8a50642 formatting!
SVN revision: 41725
2009-08-13 00:27:53 +00:00
Gustavo Sverzut Barbieri 4a514076ad NULL sfont as it might be used earlier.
if sfont=something was given to _edje_text_class_font_get(), sfont
might be untouched there and old pointer was being freed, resulting in
double free. So make sure we're using the correct pointer there.



SVN revision: 41714
2009-08-12 17:57:34 +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
Cedric BAIL 3fe43bff2c * edje: Starting refactor of edje_recalc_single.
SVN revision: 41706
2009-08-12 14:13:17 +00:00
Cedric BAIL caf64d8849 * ecore_con: Add broadcast support from Atton Jonathan.
SVN revision: 41701
2009-08-12 11:24:33 +00:00
Cedric BAIL c7f13ac781 * ecore_con_url: Patch from Andre Dieb with a few modification.
SVN revision: 41699
2009-08-12 09:47:04 +00:00
Cedric BAIL 3d5a09f6e8 * edje: Reverting to recalc_do in edje smart resize.
Note: A bug spotted in layout of box is the reason of this revert. From
	my understanding, layout require some property on the object to be
	correctly set. This is done during edje_recalc_single on the part. The
	layout fonction of evas would be called just after the resize. If we
	didn't do an edje_recalc_do, but an edje_recalc, the call to
	edje_recalc_single will be delayed and the layout property will not be
	set correctly.


SVN revision: 41698
2009-08-12 09:27:09 +00:00
Cedric BAIL e713c62730 * eina_stringshare: We should use "unsigned char", because suncc think that char is signed.
SVN revision: 41697
2009-08-12 09:02:09 +00:00
Cedric BAIL 8170df024a * edje: Oops, fix drag.
SVN revision: 41691
2009-08-11 14:55:26 +00:00
Cedric BAIL 2ba87c1129 * eina: Fix SunPro compiler.
SVN revision: 41690
2009-08-11 14:14:42 +00:00
Cedric BAIL ae1d5b38bb * eina: eina_cpu_count should be multiplatform.
SVN revision: 41689
2009-08-11 14:11:36 +00:00
Cedric BAIL b69abd204f * edje: Free the Edje_Real_Part_Drag.
SVN revision: 41686
2009-08-11 13:07:46 +00:00
Cedric BAIL d16bbd3953 * edje: Make Edje_Real_Part_Drag a pointer. Win 100 bytes per states.
SVN revision: 41685
2009-08-11 12:47:00 +00:00
Cedric BAIL 9807d2e4c8 * edje: More cleanup of Edje_Real_Part.
SVN revision: 41683
2009-08-11 10:32:21 +00:00
Cedric BAIL 7047c5f561 * edje: Cleanup drag part of Edje_Real_Part.
SVN revision: 41682
2009-08-11 10:17:14 +00:00
Cedric BAIL 16111c4867 * edje: Starting cleanup of Edje_Real_Part.
SVN revision: 41681
2009-08-11 10:08:03 +00:00
Cedric BAIL b6a228e3eb * edje_load: More cleanup.
SVN revision: 41680
2009-08-11 10:06:37 +00:00
Cedric BAIL 922939d832 * edje: Some cleanup, mainly removing dead code.
SVN revision: 41679
2009-08-11 09:45:06 +00:00
Cedric BAIL 280010f404 * edje: Fix memory count.
SVN revision: 41664
2009-08-10 15:18:07 +00:00
Cedric BAIL 7f9a41a824 * edje: Add a cache for _edje_part_recalc_single.
WARNING: THIS CAN CAUSE RENDERING GLITCH AND OTHER WEIRD BEHAVIOUR WITH
	YOUR EDJE FILE. PLEASE REPORT ANY ALIEN STUFF.

	Note: This patch cache the result of _edje_part_recalc_single, until
	any relative part are moved, the object is resized or some property
	are changed (like during text set or color class set).

	Note: Be carefull when you call edje_object_size_min_restricted_calc,
	it's really an inderect heavy user of _edje_part_recalc_single and
	I wasn't able to bring it down.

	Note: This patch use more RAM, around 480 bytes per Edje state, so I
	don't recommand using it on a Desktop with a lot of CPU power.


SVN revision: 41663
2009-08-10 15:16:51 +00:00
Cedric BAIL ee729dd97f * edje: Oops, not the right one.
SVN revision: 41658
2009-08-10 12:38:39 +00:00
Cedric BAIL db0247c644 * edje_recalc: Reduce use of stack.
SVN revision: 41656
2009-08-10 11:52:46 +00:00
Cedric BAIL b1de7da564 * edje: Delay edje_recalc on edje object resize.
WARNING: THIS MAY CAUSE RENDER GLITCH, IF YOU SEE ANYTHING STRANGE
	PLEASE REPORT TO ME.


SVN revision: 41654
2009-08-10 11:33:36 +00:00
Cedric BAIL 0f752e491c * edje: Group configure block together.
SVN revision: 41653
2009-08-10 11:15:38 +00:00
Cedric BAIL 854f360739 * edje: Reduce sizeof (Edje_Calc_Params).
Note: It doesn't really impact edje memory foot print yet. But in
	the plan to do a computation cache inside edje, this structure
	will be used a lot (I am planning to do this feature at some point,
	but no ETA yet, and be reassured it will be optionnal so we can
	choose between CPU load or memory load).

	Note: As I was looking for similar area of improvements,
	Edje_Part_Description could really use an union to reduce it's size,
	but as we load this structure directly from an Eet file, we need
	union in Eet first. And this should be part of a comming Edje file
	format break.



SVN revision: 41652
2009-08-10 09:56:19 +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