aboutsummaryrefslogtreecommitdiffstatshomepage
path: root/libraries/evas/src/lib/include
diff options
context:
space:
mode:
Diffstat (limited to 'libraries/evas/src/lib/include')
-rw-r--r--libraries/evas/src/lib/include/Makefile.in8
-rw-r--r--libraries/evas/src/lib/include/evas_common.h64
-rw-r--r--libraries/evas/src/lib/include/evas_private.h18
3 files changed, 54 insertions, 36 deletions
diff --git a/libraries/evas/src/lib/include/Makefile.in b/libraries/evas/src/lib/include/Makefile.in
index 9d5c371..21f0099 100644
--- a/libraries/evas/src/lib/include/Makefile.in
+++ b/libraries/evas/src/lib/include/Makefile.in
@@ -166,8 +166,6 @@ PATH_SEPARATOR = @PATH_SEPARATOR@
166PIXMAN_CFLAGS = @PIXMAN_CFLAGS@ 166PIXMAN_CFLAGS = @PIXMAN_CFLAGS@
167PIXMAN_LIBS = @PIXMAN_LIBS@ 167PIXMAN_LIBS = @PIXMAN_LIBS@
168PKG_CONFIG = @PKG_CONFIG@ 168PKG_CONFIG = @PKG_CONFIG@
169PKG_CONFIG_LIBDIR = @PKG_CONFIG_LIBDIR@
170PKG_CONFIG_PATH = @PKG_CONFIG_PATH@
171PNG_CFLAGS = @PNG_CFLAGS@ 169PNG_CFLAGS = @PNG_CFLAGS@
172PNG_LIBS = @PNG_LIBS@ 170PNG_LIBS = @PNG_LIBS@
173RANLIB = @RANLIB@ 171RANLIB = @RANLIB@
@@ -184,6 +182,8 @@ VALGRIND_CFLAGS = @VALGRIND_CFLAGS@
184VALGRIND_LIBS = @VALGRIND_LIBS@ 182VALGRIND_LIBS = @VALGRIND_LIBS@
185VERSION = @VERSION@ 183VERSION = @VERSION@
186VMAJ = @VMAJ@ 184VMAJ = @VMAJ@
185WAYLAND_EGL_CFLAGS = @WAYLAND_EGL_CFLAGS@
186WAYLAND_EGL_LIBS = @WAYLAND_EGL_LIBS@
187WIN32_CFLAGS = @WIN32_CFLAGS@ 187WIN32_CFLAGS = @WIN32_CFLAGS@
188WIN32_CPPFLAGS = @WIN32_CPPFLAGS@ 188WIN32_CPPFLAGS = @WIN32_CPPFLAGS@
189XCB_CFLAGS = @XCB_CFLAGS@ 189XCB_CFLAGS = @XCB_CFLAGS@
@@ -265,6 +265,10 @@ evas_engine_software_xcb_cflags = @evas_engine_software_xcb_cflags@
265evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@ 265evas_engine_software_xcb_libs = @evas_engine_software_xcb_libs@
266evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@ 266evas_engine_software_xlib_cflags = @evas_engine_software_xlib_cflags@
267evas_engine_software_xlib_libs = @evas_engine_software_xlib_libs@ 267evas_engine_software_xlib_libs = @evas_engine_software_xlib_libs@
268evas_engine_wayland_egl_cflags = @evas_engine_wayland_egl_cflags@
269evas_engine_wayland_egl_libs = @evas_engine_wayland_egl_libs@
270evas_engine_wayland_shm_cflags = @evas_engine_wayland_shm_cflags@
271evas_engine_wayland_shm_libs = @evas_engine_wayland_shm_libs@
268evas_image_loader_bmp_cflags = @evas_image_loader_bmp_cflags@ 272evas_image_loader_bmp_cflags = @evas_image_loader_bmp_cflags@
269evas_image_loader_bmp_libs = @evas_image_loader_bmp_libs@ 273evas_image_loader_bmp_libs = @evas_image_loader_bmp_libs@
270evas_image_loader_edb_cflags = @evas_image_loader_edb_cflags@ 274evas_image_loader_edb_cflags = @evas_image_loader_edb_cflags@
diff --git a/libraries/evas/src/lib/include/evas_common.h b/libraries/evas/src/lib/include/evas_common.h
index f817202..a9063e6 100644
--- a/libraries/evas/src/lib/include/evas_common.h
+++ b/libraries/evas/src/lib/include/evas_common.h
@@ -1,9 +1,9 @@
1#ifndef EVAS_COMMON_H 1#ifndef EVAS_COMMON_H
2#define EVAS_COMMON_H 2#define EVAS_COMMON_H
3 3
4#ifdef HAVE_CONFIG_H 4//#ifdef HAVE_CONFIG_H
5# include "config.h" /* so that EAPI in Evas.h is correctly defined */ 5#include "config.h" /* so that EAPI in Evas.h is correctly defined */
6#endif 6//#endif
7 7
8#ifdef HAVE_EVIL 8#ifdef HAVE_EVIL
9# include <Evil.h> 9# include <Evil.h>
@@ -138,8 +138,6 @@ extern EAPI int _evas_log_dom_global;
138# define BUILD_PTHREAD 138# define BUILD_PTHREAD
139#endif 139#endif
140 140
141#ifdef BUILD_PTHREAD
142
143#define LK(x) Eina_Lock x 141#define LK(x) Eina_Lock x
144#define LKI(x) eina_lock_new(&(x)) 142#define LKI(x) eina_lock_new(&(x))
145#define LKD(x) eina_lock_free(&(x)) 143#define LKD(x) eina_lock_free(&(x))
@@ -148,42 +146,28 @@ extern EAPI int _evas_log_dom_global;
148#define LKU(x) eina_lock_release(&(x)) 146#define LKU(x) eina_lock_release(&(x))
149#define LKDBG(x) eina_lock_debug(&(x)) 147#define LKDBG(x) eina_lock_debug(&(x))
150 148
149/* for rwlocks */
150#define RWLK(x) Eina_RWLock x
151#define RWLKI(x) eina_rwlock_new(&(x))
152#define RWLKD(x) eina_rwlock_free(&(x))
153#define RDLKL(x) eina_rwlock_take_read(&(x))
154#define WRLKL(x) eina_rwlock_take_write(&(x))
155#define RWLKU(x) eina_rwlock_release(&(x))
156
157#ifdef BUILD_PTHREAD
158
151# define TH(x) pthread_t x 159# define TH(x) pthread_t x
152# define THI(x) int x 160# define THI(x) int x
153# define TH_MAX 8 161# define TH_MAX 8
154 162
155/* for rwlocks */
156#define RWLK(x) pthread_rwlock_t x
157#define RWLKI(x) pthread_rwlock_init(&(x), NULL)
158#define RWLKD(x) pthread_rwlock_destroy(&(x))
159#define RDLKL(x) pthread_rwlock_rdlock(&(x))
160#define WRLKL(x) pthread_rwlock_wrlock(&(x))
161#define RWLKU(x) pthread_rwlock_unlock(&(x))
162
163
164// even though in theory having every Nth rendered line done by a different 163// even though in theory having every Nth rendered line done by a different
165// thread might even out load across threads - it actually slows things down. 164// thread might even out load across threads - it actually slows things down.
166//#define EVAS_SLI 1 165//#define EVAS_SLI 1
167 166
168#else 167#else
169# define LK(x)
170# define LKI(x)
171# define LKD(x)
172# define LKL(x)
173# define LKT(x) 1
174# define LKU(x)
175# define TH(x) 168# define TH(x)
176# define THI(x) 169# define THI(x)
177# define TH_MAX 0 170# define TH_MAX 0
178# define LKDBG(x)
179
180/* for rwlocks */
181#define RWLK(x)
182#define RWLKI(x)
183#define RWLKD(x)
184#define RDLKL(x)
185#define WRLKL(x)
186#define RWLKU(x)
187 171
188#endif 172#endif
189 173
@@ -338,6 +322,21 @@ void *alloca (size_t);
338#define pld(addr, off) 322#define pld(addr, off)
339#endif /* __ARMEL__ */ 323#endif /* __ARMEL__ */
340 324
325// these here are in config.h - just here for documentation
326//#ifdef __ARM_ARCH__
327// *IF* you enable pixman, this determines which things pixman will do
328////#define PIXMAN_FONT 1
329////#define PIXMAN_RECT 1
330////#define PIXMAN_LINE 1
331////#define PIXMAN_POLY 1
332//#define PIXMAN_IMAGE 1
333//#define PIXMAN_IMAGE_SCALE_SAMPLE 1
334//#endif
335// not related to pixman but an alternate rotate code
336//#define TILE_ROTATE 1
337
338#define TILE_CACHE_LINE_SIZE 64
339
341/*****************************************************************************/ 340/*****************************************************************************/
342 341
343#define UNROLL2(op...) op op 342#define UNROLL2(op...) op op
@@ -678,6 +677,9 @@ struct _RGBA_Draw_Context
678 DATA32 col; 677 DATA32 col;
679 } mul; 678 } mul;
680 struct { 679 struct {
680#ifdef HAVE_PIXMAN
681 pixman_image_t *pixman_color_image;
682#endif
681 DATA32 col; 683 DATA32 col;
682 } col; 684 } col;
683 struct RGBA_Draw_Context_clip { 685 struct RGBA_Draw_Context_clip {
@@ -1032,14 +1034,14 @@ struct _Tilebuf
1032 int x, y, w, h; 1034 int x, y, w, h;
1033 } prev_add, prev_del; 1035 } prev_add, prev_del;
1034#ifdef RECTUPDATE 1036#ifdef RECTUPDATE
1035/* 1037/*
1036 Regionbuf *rb; 1038 Regionbuf *rb;
1037 */ 1039 */
1038#elif defined(EVAS_RECT_SPLIT) 1040#elif defined(EVAS_RECT_SPLIT)
1039 int need_merge; 1041 int need_merge;
1040 list_t rects; 1042 list_t rects;
1041#else 1043#else
1042/* 1044/*
1043 struct { 1045 struct {
1044 int w, h; 1046 int w, h;
1045 Tilebuf_Tile *tiles; 1047 Tilebuf_Tile *tiles;
diff --git a/libraries/evas/src/lib/include/evas_private.h b/libraries/evas/src/lib/include/evas_private.h
index 90498d0..84c1d36 100644
--- a/libraries/evas/src/lib/include/evas_private.h
+++ b/libraries/evas/src/lib/include/evas_private.h
@@ -301,12 +301,13 @@ struct _Evas
301 struct { 301 struct {
302 unsigned char inside : 1; 302 unsigned char inside : 1;
303 int mouse_grabbed; 303 int mouse_grabbed;
304 int downs;
304 DATA32 button; 305 DATA32 button;
305 Evas_Coord x, y; 306 Evas_Coord x, y;
307 int nogrep;
306 struct { 308 struct {
307 Eina_List *in; 309 Eina_List *in;
308 } object; 310 } object;
309
310 } pointer; 311 } pointer;
311 312
312 struct { 313 struct {
@@ -320,6 +321,12 @@ struct _Evas
320 unsigned char changed : 1; 321 unsigned char changed : 1;
321 } output; 322 } output;
322 323
324 struct
325 {
326 Evas_Coord x, y, w, h;
327 Eina_Bool changed : 1;
328 } framespace;
329
323 Eina_List *damages; 330 Eina_List *damages;
324 Eina_List *obscures; 331 Eina_List *obscures;
325 332
@@ -331,6 +338,7 @@ struct _Evas
331 338
332 int walking_list; 339 int walking_list;
333 int events_frozen; 340 int events_frozen;
341 Evas_Event_Flags default_event_flags;
334 342
335 struct { 343 struct {
336 Evas_Module *module; 344 Evas_Module *module;
@@ -577,7 +585,7 @@ struct _Evas_Object
577 unsigned char recalculate_cycle; 585 unsigned char recalculate_cycle;
578 Eina_Clist calc_entry; 586 Eina_Clist calc_entry;
579 587
580 Evas_Object_Pointer_Mode pointer_mode : 1; 588 Evas_Object_Pointer_Mode pointer_mode : 2;
581 589
582 Eina_Bool store : 1; 590 Eina_Bool store : 1;
583 Eina_Bool pass_events : 1; 591 Eina_Bool pass_events : 1;
@@ -608,6 +616,8 @@ struct _Evas_Object
608 Eina_Bool changed_move_only : 1; 616 Eina_Bool changed_move_only : 1;
609 Eina_Bool changed_nomove : 1; 617 Eina_Bool changed_nomove : 1;
610 Eina_Bool del_ref : 1; 618 Eina_Bool del_ref : 1;
619
620 Eina_Bool is_frame : 1;
611}; 621};
612 622
613struct _Evas_Func_Node 623struct _Evas_Func_Node
@@ -772,6 +782,7 @@ struct _Evas_Func
772 char *(*image_format_get) (void *data, void *image); 782 char *(*image_format_get) (void *data, void *image);
773 void (*image_colorspace_set) (void *data, void *image, int cspace); 783 void (*image_colorspace_set) (void *data, void *image, int cspace);
774 int (*image_colorspace_get) (void *data, void *image); 784 int (*image_colorspace_get) (void *data, void *image);
785 Eina_Bool (*image_can_region_get) (void *data, void *image);
775 void (*image_mask_create) (void *data, void *image); 786 void (*image_mask_create) (void *data, void *image);
776 void *(*image_native_set) (void *data, void *image, void *native); 787 void *(*image_native_set) (void *data, void *image, void *native);
777 void *(*image_native_get) (void *data, void *image); 788 void *(*image_native_get) (void *data, void *image);
@@ -861,6 +872,7 @@ struct _Evas_Image_Load_Func
861 Eina_Bool (*file_head) (Image_Entry *ie, const char *file, const char *key, int *error); 872 Eina_Bool (*file_head) (Image_Entry *ie, const char *file, const char *key, int *error);
862 Eina_Bool (*file_data) (Image_Entry *ie, const char *file, const char *key, int *error); 873 Eina_Bool (*file_data) (Image_Entry *ie, const char *file, const char *key, int *error);
863 double (*frame_duration) (Image_Entry *ie, const char *file, const int start, const int frame_num); 874 double (*frame_duration) (Image_Entry *ie, const char *file, const int start, const int frame_num);
875 Eina_Bool do_region;
864}; 876};
865 877
866struct _Evas_Image_Save_Func 878struct _Evas_Image_Save_Func
@@ -904,7 +916,7 @@ void evas_object_clip_across_check(Evas_Object *obj);
904void evas_object_clip_across_clippees_check(Evas_Object *obj); 916void evas_object_clip_across_clippees_check(Evas_Object *obj);
905void evas_object_mapped_clip_across_mark(Evas_Object *obj); 917void evas_object_mapped_clip_across_mark(Evas_Object *obj);
906void evas_event_callback_call(Evas *e, Evas_Callback_Type type, void *event_info); 918void evas_event_callback_call(Evas *e, Evas_Callback_Type type, void *event_info);
907void evas_object_event_callback_call(Evas_Object *obj, Evas_Callback_Type type, void *event_info); 919void evas_object_event_callback_call(Evas_Object *obj, Evas_Callback_Type type, void *event_info, int event_id);
908Eina_List *evas_event_objects_event_list(Evas *e, Evas_Object *stop, int x, int y); 920Eina_List *evas_event_objects_event_list(Evas *e, Evas_Object *stop, int x, int y);
909int evas_mem_free(int mem_required); 921int evas_mem_free(int mem_required);
910int evas_mem_degrade(int mem_required); 922int evas_mem_degrade(int mem_required);