Commit Graph

1369 Commits

Author SHA1 Message Date
Cedric BAIL 777410eac2 Make the most used functions inline functions.
SVN revision: 34675
2008-05-26 13:08:54 +00:00
doursse b9ac050dd2 add DirectDraw backend. Seems faster on pda's that have it
SVN revision: 34668
2008-05-25 17:39:48 +00:00
doursse 5ce3b6752b fix compilation with a c++ compiler, add EAPI in front of all cache function declarations
SVN revision: 34659
2008-05-24 18:26:51 +00:00
doursse 51e193610d remove debug printf
SVN revision: 34652
2008-05-23 18:57:40 +00:00
doursse 0f071fe71d * put key management outside the engine. It's not its place in it
* make Ipaq H38xx and H39xx work with the framebuffer


SVN revision: 34650
2008-05-23 18:26:41 +00:00
doursse a1e64a5e9c fix framebuffer address on Ipaq H38xx and H39xx. GAPI is really really broken on these devices
SVN revision: 34642
2008-05-22 11:00:01 +00:00
doursse 4d7eac659d fix keys on Ipaq H38xx and H39xx
SVN revision: 34641
2008-05-22 10:40:40 +00:00
Cedric BAIL 0e253aaca6 Their is no more allocation with evas_object_list. Remove useless test.
SVN revision: 34633
2008-05-21 12:23:47 +00:00
Gustavo Sverzut Barbieri a4ed92a1a5 Remove bugs with bitfield usage, make boolean usage clear.
This patch fixes the problem with bitfield of signed types (ie: char),
where the bit would be used for the signal, so 1 is considered -0 and
thus 0.

Move all the single bit fields to Evas_Bool, making it clear and also
avoiding these problems since Evas_Bool is unsigned char.


SVN revision: 34631
2008-05-20 20:56:39 +00:00
Carsten Haitzler 906040dab0 add a cancel to all mouse butotn presses
SVN revision: 34607
2008-05-19 04:15:22 +00:00
Carsten Haitzler cd0fd38a9c add file
SVN revision: 34606
2008-05-19 03:37:37 +00:00
Carsten Haitzler 0d42705593 adapt to newer valgrind goop
SVN revision: 34605
2008-05-19 03:29:54 +00:00
Carsten Haitzler 5887bde860 colorspace stuff in cvs.
SVN revision: 34604
2008-05-19 03:13:16 +00:00
doursse 37607b5e8e config.h is already included in evas_common.h
SVN revision: 34599
2008-05-18 22:28:10 +00:00
doursse fb826a2200 remove trailing spaces
SVN revision: 34586
2008-05-16 04:55:31 +00:00
Cedric BAIL b85c0672c4 Update the stride when needed.
SVN revision: 34566
2008-05-14 16:38:36 +00:00
Peter Wehrfritz bb1f257f5f build again
SVN revision: 34565
2008-05-14 11:26:29 +00:00
doursse db311f0b05 wrong inclusion of Evas.h
SVN revision: 34561
2008-05-13 20:58:15 +00:00
Gustavo Sverzut Barbieri 782e77d9ae Remove DirectFB, will add a new one based on SDL code.
Remove DirectFB, will create a new one based on SDL.


SVN revision: 34559
2008-05-13 19:32:00 +00:00
doursse d7e2cb5163 Ipaq H38** and H39** are considered as landscape device because of their uglyness
SVN revision: 34517
2008-05-09 23:12:00 +00:00
Christopher Michael 355b22f3a7 Add missing prototype for _evas_cache_image_entry_delete because it was
being used before the function was defined.


SVN revision: 34516
2008-05-09 19:04:49 +00:00
Cedric BAIL d31b0db3ca Fix a bug when a file change when it's still in use. Thanks to Adriano Rezende for helping tracking the bug.
SVN revision: 34513
2008-05-09 16:18:18 +00:00
Carsten Haitzler 6c439dbd46 stringshare buckets -> 1024 + debugging for testing.
SVN revision: 34509
2008-05-08 08:34:55 +00:00
doursse 340d0ed554 remove a possible seg fault when DestroyWindow() is called
SVN revision: 34507
2008-05-08 06:46:26 +00:00
Cedric BAIL 5f41def624 Only call the allocation surface when required and correctly handle no_free.
SVN revision: 34480
2008-05-06 11:20:29 +00:00
Carsten Haitzler 0688234e2f notes - cedric... i think i may have found a problem here...
SVN revision: 34443
2008-05-03 08:31:26 +00:00
Carsten Haitzler 42facfffe6 1. dont free/realoc if no_free is set.
2. free then malloc otherwise realloc might ALSO have to memcpy if it cant
resize the segment whihc means overhead we dont need/want.


SVN revision: 34441
2008-05-03 06:38:45 +00:00
Carsten Haitzler 14e2187305 get rid of 0 byte alloc
SVN revision: 34440
2008-05-03 05:33:26 +00:00
Gustavo Sverzut Barbieri f89e8850c2 Fix users of evas_object_layer_set() outside the "short" range.
This also introduces EVAS_LAYER_MIN and EVAS_LAYER_MAX for ease of use.


SVN revision: 34421
2008-05-01 06:39:27 +00:00
Gustavo Sverzut Barbieri 27437c83cf Make layer number a short and Save 8 bytes.
By having a layer as a short (16 bits) we can pack it together with
the bitfields, saving 4 bytes per sub-struct, 8 bytes in total, also
bringing the struct down from 4 to 3 cachelines on my laptop.

Rationale: layers are mostly used to differentiate groups of objects
and they stacking, usually we have few layers and we use very large or
very small numbers to make a layer be at the top or at the bottom, but
usually we don't need so many layers.

Caution: code that use values like 999999 will break, so fix your
code! I'll provide another patch to fix all the CVS using these large
values.


SVN revision: 34420
2008-05-01 06:18:21 +00:00
Gustavo Sverzut Barbieri 7a82a3e43d Save 20 bytes moving smart data to its specific object struct.
This saves 20 bytes, bringing Evas_Object to 200 bytes, by moving data
specific to smart objects to their own struct (Evas_Object_Smart).

There is still one remaining member that could be removed:
smart.smart, this is used mainly to identify if one object is a smart
object or not. One possibility would be to add a bitfield to state
that, but another possibility is to check Evas_Object::object_data
and see if it's a smart or not.


SVN revision: 34419
2008-05-01 05:48:03 +00:00
Gustavo Sverzut Barbieri 4bc8043a10 Save 8 bytes from Evas_Object by packing interpolation.color_space.
Interpolation color_space (now ASHV or ARGB) was being used inside a
struct with 4 byte alignment. Remove it from the struct and make it a
bitfield so can be packed with the other fields. This saves 2
integers, so 8 bytes.


SVN revision: 34418
2008-05-01 04:14:08 +00:00
Gustavo Sverzut Barbieri 625e124f05 Reorganize Evas_Object to save 20 bytes.
This is a repack of bitfield members, was tested on GNU/Linux + GCC 4.1.2
and works fine. Needs further testing on other compilers.


SVN revision: 34417
2008-05-01 03:52:20 +00:00
Gustavo Sverzut Barbieri 80f8e23d77 Use more specific types in Evas_Object.
SVN revision: 34416
2008-05-01 03:42:21 +00:00
Gustavo Sverzut Barbieri 14cf29eede Use Evas_Coord_Rectangle in evas_object_image.c
SVN revision: 34415
2008-05-01 00:09:39 +00:00
Gustavo Sverzut Barbieri 29549249c4 Cosmetic: add name to structs: Evas_Coord_Rectangle.
Non-intrusive change to name structs of Evas_Coord x, y, w, h.

TODO: intrusive changes to use this struct, will need to fix ".c"


SVN revision: 34414
2008-04-30 23:58:43 +00:00
Gustavo Sverzut Barbieri dbf35460a6 Cosmetic: Visual alignment of member name.
SVN revision: 34413
2008-04-30 23:44:03 +00:00
Gustavo Sverzut Barbieri b46fc2a2f4 Save memory related to size hints.
Size hints are useful, but wasting 36 bytes for it on every object is a bit
too much: clippers and lots of other objects will have no need for it.

Now it's a pointer to a struct that will be allocated just when some value
is set, wasting 4/8 bytes more for the pointer when it is used, but saving
32/28 bytes when it is not.

This will also help to have alignment properties in future, that can come
as hints, without too much impact on memory consumption.


SVN revision: 34412
2008-04-30 22:51:08 +00:00
Gustavo Sverzut Barbieri 54c06677b4 Export missing size_hints methods.
SVN revision: 34411
2008-04-30 22:13:50 +00:00
Cedric BAIL 2a123c0d6a Add support for evas asynchronous events.
SVN revision: 34410
2008-04-30 12:21:31 +00:00
Carsten Haitzler 5b10356d45 endif++!
SVN revision: 34407
2008-04-30 07:24:10 +00:00
doursse 39f63d6690 wrong commit
SVN revision: 34404
2008-04-29 22:38:27 +00:00
doursse a6a3a2a9db the address returned by draw_begin can be NULL
SVN revision: 34373
2008-04-26 12:32:29 +00:00
Gustavo Sverzut Barbieri 247e2556a5 Evas_Bool should be unsigned.
This will help the use of Evas_Bool to define bitfield structs like in:

struct s {
        Evas_Bool a:1;
        Evas_Bool b:1;
        Evas_Bool c:1;
        Evas_Bool d:1;
        Evas_Bool e:1;
        Evas_Bool f:1;
        Evas_Bool g:1;
        Evas_Bool h:1;
        Evas_Bool i:1;
};

It must be unsigned or it would use the signal bit, having "a == 0" to
be true anyway, as it would be just +0 and -0.


SVN revision: 34362
2008-04-24 15:31:57 +00:00
Cedric BAIL 3938160157 Fix directfb engine with new Evas cache API.
NOTE: This engine should be rewritten and use the new engine cache api.


SVN revision: 34360
2008-04-24 14:37:14 +00:00
doursse 39289b21d5 forget to modify some calls. Now fb and gapi should work
SVN revision: 34359
2008-04-24 06:18:09 +00:00
doursse 208d20a30f * Add Windows CE engine (1st step)
The engine is not entirely working right now. Recent devices which
  supports the raw frame buffer should work though. But having it in
  cvs will help me as I'm coding it most of the time "blindly" (no
  device to test it)

 * minor formatting in the top evel Makefile.am too


SVN revision: 34354
2008-04-23 19:17:59 +00:00
doursse 56eacad43d Autotools cleaning (not complete)
* formatting
 * put WIN32_CFLAGS in AM_CFLAGS and not AM_CPPFLAGS, as it is where it belongs
 * rename create_shared_lib to lt_no_undefined
 * pass -Wl,--enable-auto-import to libtool when compiling with cegcc
 * add files to EXTRA_DIST only when they are not in _SOURCES or _include_HEADERS (they
   are added anyway)


SVN revision: 34353
2008-04-23 06:55:10 +00:00
Cedric BAIL 47c7f1aa08 Fix a bug caused by duplicated entry in the activ and dirty cache list.
SVN revision: 34302
2008-04-17 15:30:03 +00:00
Carsten Haitzler 184bfa989d fix image dirties with yuv and software rendering
SVN revision: 34272
2008-04-15 15:20:53 +00:00