summaryrefslogtreecommitdiff
path: root/src/lib/evas/canvas/evas_canvas_eo.legacy.c
diff options
context:
space:
mode:
authorFelipe Magno de Almeida <felipe@expertise.dev>2020-12-15 23:02:20 -0300
committerFelipe Magno de Almeida <felipe@expertise.dev>2020-12-15 23:06:12 -0300
commit0363fd8238c3df734c856a48cbb831b9651ed089 (patch)
tree951895156f0a5dd6aa7e88d8a602c58d79251c50 /src/lib/evas/canvas/evas_canvas_eo.legacy.c
parent75f07e41c0242123f9e4e5dcbc303ad46ea0849b (diff)
downloadefl-0363fd8238c3df734c856a48cbb831b9651ed089.tar.gz
evas: Rename EAPI macro to EVAS_API in Evas library
Summary: Patch from a series of patches to rename EAPI symbols to specific library DSOs. = The Rationale = This patch is from a series of patches to rename EAPI symbols to specific library DSOs. EAPI was designed to be able to pass `__attribute__ ((visibility ("default")))` for symbols with GCC, which would mean that even if -fvisibility=hidden was used when compiling the library, the needed symbols would get exported. MSVC __almost__ works like GCC (or mingw) in which you can declare everything as export and it will just work (slower, but it will work). But there's a caveat: global variables will not work the same way for MSVC, but works for mingw and GCC. For global variables (as opposed to functions), MSVC requires correct DSO visibility for MSVC: instead of declaring a symbol as export for everything, you need to declare it as import when importing from another DSO and export when defining it locally. With current EAPI definitions, we get the following example working in mingw and MSVC (observe it doesn't define any global variables as exported symbols). Example 1: dll1: ``` EAPI void foo(void); EAPI void bar() { foo(); } ``` dll2: ``` EAPI void foo() { printf ("foo\n"); } ``` This works fine with API defined as __declspec(dllexport) in both cases and for gcc defining as `__atttribute__((visibility("default")))`. However, the following: Example 2: dll1: ``` EAPI extern int foo; EAPI void foobar(void); EAPI void bar() { foo = 5; foobar(); } ``` dll2: ``` EAPI int foo = 0; EAPI void foobar() { printf ("foo %d\n", foo); } ``` This will work on mingw but will not work for MSVC. And that's why LIBAPI is the only solution that works for MSVC. Co-authored-by: João Paulo Taylor Ienczak Zanette <jpaulotiz@gmail.com> Co-authored-by: Lucas Cavalcante de Sousa <lucks.sousa@gmail.com> Co-authored-by: Ricardo Campos <ricardo.campos@expertise.dev> Reviewers: vtorri, woohyun, jptiz, lucas Reviewed By: vtorri, lucas Subscribers: cedric, #reviewers, #committers Tags: #efl Differential Revision: https://phab.enlightenment.org/D12214
Diffstat (limited to 'src/lib/evas/canvas/evas_canvas_eo.legacy.c')
-rw-r--r--src/lib/evas/canvas/evas_canvas_eo.legacy.c128
1 files changed, 64 insertions, 64 deletions
diff --git a/src/lib/evas/canvas/evas_canvas_eo.legacy.c b/src/lib/evas/canvas/evas_canvas_eo.legacy.c
index 93578fbba1..767d0e46f6 100644
--- a/src/lib/evas/canvas/evas_canvas_eo.legacy.c
+++ b/src/lib/evas/canvas/evas_canvas_eo.legacy.c
@@ -1,383 +1,383 @@
-EAPI void
+EVAS_API void
evas_image_cache_set(Evas_Canvas *obj, int size)
{
evas_canvas_image_cache_set(obj, size);
}
-EAPI int
+EVAS_API int
evas_image_cache_get(const Evas_Canvas *obj)
{
return evas_canvas_image_cache_get(obj);
}
-EAPI void
+EVAS_API void
evas_event_default_flags_set(Evas_Canvas *obj, Evas_Event_Flags flags)
{
evas_canvas_event_default_flags_set(obj, flags);
}
-EAPI Evas_Event_Flags
+EVAS_API Evas_Event_Flags
evas_event_default_flags_get(const Evas_Canvas *obj)
{
return (Evas_Event_Flags)evas_canvas_event_default_flags_get(obj);
}
-EAPI void
+EVAS_API void
evas_font_cache_set(Evas_Canvas *obj, int size)
{
evas_canvas_font_cache_set(obj, size);
}
-EAPI int
+EVAS_API int
evas_font_cache_get(const Evas_Canvas *obj)
{
return evas_canvas_font_cache_get(obj);
}
-EAPI void
+EVAS_API void
evas_data_attach_set(Evas_Canvas *obj, void *data)
{
evas_canvas_data_attach_set(obj, data);
}
-EAPI void *
+EVAS_API void *
evas_data_attach_get(const Evas_Canvas *obj)
{
return evas_canvas_data_attach_get(obj);
}
-EAPI Efl_Canvas_Object *
+EVAS_API Efl_Canvas_Object *
evas_focus_get(const Evas_Canvas *obj)
{
return evas_canvas_focus_get(obj);
}
-EAPI Efl_Canvas_Object *
+EVAS_API Efl_Canvas_Object *
evas_seat_focus_get(const Evas_Canvas *obj, Evas_Device *seat)
{
return evas_canvas_seat_focus_get(obj, seat);
}
-EAPI Efl_Canvas_Object *
+EVAS_API Efl_Canvas_Object *
evas_object_top_get(const Evas_Canvas *obj)
{
return evas_canvas_object_top_get(obj);
}
-EAPI void
+EVAS_API void
evas_pointer_canvas_xy_by_device_get(const Evas_Canvas *obj, Evas_Device *dev, int *x, int *y)
{
evas_canvas_pointer_canvas_xy_by_device_get(obj, dev, x, y);
}
-EAPI void
+EVAS_API void
evas_pointer_canvas_xy_get(const Evas_Canvas *obj, int *x, int *y)
{
evas_canvas_pointer_canvas_xy_get(obj, x, y);
}
-EAPI int
+EVAS_API int
evas_event_down_count_get(const Evas_Canvas *obj)
{
return evas_canvas_event_down_count_get(obj);
}
-EAPI int
+EVAS_API int
evas_smart_objects_calculate_count_get(const Evas_Canvas *obj)
{
return evas_canvas_smart_objects_calculate_count_get(obj);
}
-EAPI Eina_Bool
+EVAS_API Eina_Bool
evas_focus_state_get(const Evas_Canvas *obj)
{
return evas_canvas_focus_state_get(obj);
}
-EAPI Eina_Bool
+EVAS_API Eina_Bool
evas_seat_focus_state_get(const Evas_Canvas *obj, Evas_Device *seat)
{
return evas_canvas_seat_focus_state_get(obj, seat);
}
-EAPI Eina_Bool
+EVAS_API Eina_Bool
evas_changed_get(const Evas_Canvas *obj)
{
return evas_canvas_changed_get(obj);
}
-EAPI void
+EVAS_API void
evas_pointer_output_xy_by_device_get(const Evas_Canvas *obj, Evas_Device *dev, int *x, int *y)
{
evas_canvas_pointer_output_xy_by_device_get(obj, dev, x, y);
}
-EAPI void
+EVAS_API void
evas_pointer_output_xy_get(const Evas_Canvas *obj, int *x, int *y)
{
evas_canvas_pointer_output_xy_get(obj, x, y);
}
-EAPI Efl_Canvas_Object *
+EVAS_API Efl_Canvas_Object *
evas_object_bottom_get(const Evas_Canvas *obj)
{
return evas_canvas_object_bottom_get(obj);
}
-EAPI unsigned int
+EVAS_API unsigned int
evas_pointer_button_down_mask_by_device_get(const Evas_Canvas *obj, Evas_Device *dev)
{
return evas_canvas_pointer_button_down_mask_by_device_get(obj, dev);
}
-EAPI unsigned int
+EVAS_API unsigned int
evas_pointer_button_down_mask_get(const Evas_Canvas *obj)
{
return evas_canvas_pointer_button_down_mask_get(obj);
}
-EAPI Eina_List *
+EVAS_API Eina_List *
evas_tree_objects_at_xy_get(Evas_Canvas *obj, Efl_Canvas_Object *stop, int x, int y)
{
return evas_canvas_tree_objects_at_xy_get(obj, stop, x, y);
}
-EAPI void
+EVAS_API void
evas_key_lock_on(Evas_Canvas *obj, const char *keyname)
{
evas_canvas_key_lock_on(obj, keyname);
}
-EAPI void
+EVAS_API void
evas_seat_key_lock_on(Evas_Canvas *obj, const char *keyname, Evas_Device *seat)
{
evas_canvas_seat_key_lock_on(obj, keyname, seat);
}
-EAPI void
+EVAS_API void
evas_seat_key_lock_off(Evas_Canvas *obj, const char *keyname, Evas_Device *seat)
{
evas_canvas_seat_key_lock_off(obj, keyname, seat);
}
-EAPI void
+EVAS_API void
evas_key_modifier_add(Evas_Canvas *obj, const char *keyname)
{
evas_canvas_key_modifier_add(obj, keyname);
}
-EAPI void
+EVAS_API void
evas_key_modifier_off(Evas_Canvas *obj, const char *keyname)
{
evas_canvas_key_modifier_off(obj, keyname);
}
-EAPI Eina_Bool
+EVAS_API Eina_Bool
evas_render_async(Evas_Canvas *obj)
{
return evas_canvas_render_async(obj);
}
-EAPI void
+EVAS_API void
evas_focus_out(Evas_Canvas *obj)
{
evas_canvas_focus_out(obj);
}
-EAPI void
+EVAS_API void
evas_norender(Evas_Canvas *obj)
{
evas_canvas_norender(obj);
}
-EAPI void
+EVAS_API void
evas_nochange_pop(Evas_Canvas *obj)
{
evas_canvas_nochange_pop(obj);
}
-EAPI void
+EVAS_API void
evas_key_lock_off(Evas_Canvas *obj, const char *keyname)
{
evas_canvas_key_lock_off(obj, keyname);
}
-EAPI void
+EVAS_API void
evas_nochange_push(Evas_Canvas *obj)
{
evas_canvas_nochange_push(obj);
}
-EAPI void
+EVAS_API void
evas_font_cache_flush(Evas_Canvas *obj)
{
evas_canvas_font_cache_flush(obj);
}
-EAPI void
+EVAS_API void
evas_key_modifier_on(Evas_Canvas *obj, const char *keyname)
{
evas_canvas_key_modifier_on(obj, keyname);
}
-EAPI void
+EVAS_API void
evas_seat_key_modifier_on(Evas_Canvas *obj, const char *keyname, Evas_Device *seat)
{
evas_canvas_seat_key_modifier_on(obj, keyname, seat);
}
-EAPI void
+EVAS_API void
evas_seat_key_modifier_off(Evas_Canvas *obj, const char *keyname, Evas_Device *seat)
{
evas_canvas_seat_key_modifier_off(obj, keyname, seat);
}
-EAPI Eina_List *
+EVAS_API Eina_List *
evas_font_available_list(const Evas_Canvas *obj)
{
return evas_canvas_font_available_list(obj);
}
-EAPI Efl_Canvas_Object *
+EVAS_API Efl_Canvas_Object *
evas_object_name_find(const Evas_Canvas *obj, const char *name)
{
return evas_canvas_object_name_find(obj, name);
}
-EAPI void
+EVAS_API void
evas_font_path_append(Evas_Canvas *obj, const char *path)
{
evas_canvas_font_path_append(obj, path);
}
-EAPI void
+EVAS_API void
evas_font_path_clear(Evas_Canvas *obj)
{
evas_canvas_font_path_clear(obj);
}
-EAPI void
+EVAS_API void
evas_key_lock_del(Evas_Canvas *obj, const char *keyname)
{
evas_canvas_key_lock_del(obj, keyname);
}
-EAPI void
+EVAS_API void
evas_damage_rectangle_add(Evas_Canvas *obj, int x, int y, int w, int h)
{
evas_canvas_damage_rectangle_add(obj, x, y, w, h);
}
-EAPI void
+EVAS_API void
evas_sync(Evas_Canvas *obj)
{
evas_canvas_sync(obj);
}
-EAPI const Eina_List *
+EVAS_API const Eina_List *
evas_font_path_list(const Evas_Canvas *obj)
{
return evas_canvas_font_path_list(obj);
}
-EAPI void
+EVAS_API void
evas_image_cache_reload(Evas_Canvas *obj)
{
evas_canvas_image_cache_reload(obj);
}
-EAPI int
+EVAS_API int
evas_coord_world_x_to_screen(const Evas_Canvas *obj, int x)
{
return evas_canvas_coord_world_x_to_screen(obj, x);
}
-EAPI Eina_List *
+EVAS_API Eina_List *
evas_render_updates(Evas_Canvas *obj)
{
return evas_canvas_render_updates(obj);
}
-EAPI void
+EVAS_API void
evas_image_cache_flush(Evas_Canvas *obj)
{
evas_canvas_image_cache_flush(obj);
}
-EAPI int
+EVAS_API int
evas_coord_screen_y_to_world(const Evas_Canvas *obj, int y)
{
return evas_canvas_coord_screen_y_to_world(obj, y);
}
-EAPI void
+EVAS_API void
evas_key_modifier_del(Evas_Canvas *obj, const char *keyname)
{
evas_canvas_key_modifier_del(obj, keyname);
}
-EAPI void
+EVAS_API void
evas_focus_in(Evas_Canvas *obj)
{
evas_canvas_focus_in(obj);
}
-EAPI void
+EVAS_API void
evas_obscured_rectangle_add(Evas_Canvas *obj, int x, int y, int w, int h)
{
evas_canvas_obscured_rectangle_add(obj, x, y, w, h);
}
-EAPI void
+EVAS_API void
evas_render_dump(Evas_Canvas *obj)
{
evas_canvas_render_dump(obj);
}
-EAPI void
+EVAS_API void
evas_render(Evas_Canvas *obj)
{
evas_canvas_render(obj);
}
-EAPI void
+EVAS_API void
evas_font_path_prepend(Evas_Canvas *obj, const char *path)
{
evas_canvas_font_path_prepend(obj, path);
}
-EAPI void
+EVAS_API void
evas_obscured_clear(Evas_Canvas *obj)
{
evas_canvas_obscured_clear(obj);
}
-EAPI int
+EVAS_API int
evas_coord_screen_x_to_world(const Evas_Canvas *obj, int x)
{
return evas_canvas_coord_screen_x_to_world(obj, x);
}
-EAPI void
+EVAS_API void
evas_key_lock_add(Evas_Canvas *obj, const char *keyname)
{
evas_canvas_key_lock_add(obj, keyname);
}
-EAPI void
+EVAS_API void
evas_render_idle_flush(Evas_Canvas *obj)
{
evas_canvas_render_idle_flush(obj);
}
-EAPI Evas_Device *
+EVAS_API Evas_Device *
evas_default_device_get(const Evas_Canvas *obj, Evas_Device_Class type)
{
return evas_canvas_default_device_get(obj, type);
}
-EAPI int
+EVAS_API int
evas_coord_world_y_to_screen(const Evas_Canvas *obj, int y)
{
return evas_canvas_coord_world_y_to_screen(obj, y);