Remove individual class BETA guards
authorXavi Artigas <xavierartigas@yahoo.es>
Wed, 13 Feb 2019 10:58:33 +0000 (11:58 +0100)
committerWonki Kim <wonki_.kim@samsung.com>
Fri, 8 Mar 2019 11:49:34 +0000 (20:49 +0900)
commit47edd40351d1fb92ef8f8e5c9007f7af462da1c7
treea264957f58b32f126e3e9a3318b070cfd51838f5
parent2f5d8883a5019c99e3a4828af916e26b37b8c253
Remove individual class BETA guards

Summary:
Eolian adds a per-class BETA guard (like EFL_UI_WIN_BETA) to any method tagged
as @beta. This means that any app (and the EFL code) wanting to use BETA features
has to enable them class by class, which is cumbersome.
This commit replaces the individual guards with the global EFL_BETA_API_SUPPORT
guard, so apps only need to define one symbol to access BETA features.

Any usage of the per-class guards has been removed from the EFL code and examples.
When building EFL the global guard is defined by configure, so all EFL methods
already have access to BETA API.
Efl_Core.h and Efl_Ui.h no longer define EFL_BETA_API_SUPPORT. Apps wanting to
use BETA API have to define this symbol before including any EFL header
(It has been added to the examples requiring it).

Test Plan:
make && make check && make examples still work, but there's a lot less #defines
in the code

Reviewers: zmike, bu5hm4n, q66

Reviewed By: q66

Subscribers: cedric, #reviewers, #committers

Tags: #efl

Maniphest Tasks: T6788

Differential Revision: https://phab.enlightenment.org/D7924
59 files changed:
src/bin/eolian/headers.c
src/examples/ecore/ecore_promise2_example.c
src/examples/ecore/efl_io_buffered_stream_example.c
src/examples/ecore/efl_io_copier_example.c
src/examples/ecore/efl_io_copier_simple_example.c
src/examples/ecore/efl_io_queue_example.c
src/examples/ecore/efl_net_control_example.c
src/examples/ecore/efl_net_dialer_http_example.c
src/examples/ecore/efl_net_dialer_simple_example.c
src/examples/ecore/efl_net_dialer_udp_example.c
src/examples/ecore/efl_net_dialer_unix_example.c
src/examples/ecore/efl_net_dialer_websocket_autobahntestee.c
src/examples/ecore/efl_net_dialer_websocket_example.c
src/examples/ecore/efl_net_server_example.c
src/examples/ecore/efl_net_server_simple_example.c
src/examples/ecore/efl_net_session_example.c
src/examples/ecore/efl_net_socket_ssl_dialer_example.c
src/examples/ecore/efl_net_socket_ssl_server_example.c
src/lib/edje/edje_calc.c
src/lib/edje/edje_edit.c
src/lib/edje/edje_private.h
src/lib/edje/edje_smart.c
src/lib/efl/interfaces/efl_interfaces_main.c
src/lib/eio/eio_sentry.c
src/lib/elementary/efl_access_action.c
src/lib/elementary/efl_access_component.c
src/lib/elementary/efl_access_widget_action.c
src/lib/elementary/efl_ui_anchor_popup.c
src/lib/elementary/efl_ui_dnd.c
src/lib/elementary/efl_ui_grid.c
src/lib/elementary/efl_ui_image_zoomable.c
src/lib/elementary/efl_ui_internal_text_scroller.c
src/lib/elementary/efl_ui_list.c
src/lib/elementary/efl_ui_list_view.c
src/lib/elementary/efl_ui_scroll_alert_popup.c
src/lib/elementary/efl_ui_scroll_manager.c
src/lib/elementary/efl_ui_scroller.c
src/lib/elementary/efl_ui_selection.c
src/lib/elementary/efl_ui_tab_bar.c
src/lib/elementary/efl_ui_tab_pager.c
src/lib/elementary/efl_ui_widget.c
src/lib/elementary/efl_ui_win.c
src/lib/elementary/elc_ctxpopup.c
src/lib/elementary/elc_fileselector.c
src/lib/elementary/elc_fileselector_button.c
src/lib/elementary/elc_fileselector_entry.c
src/lib/elementary/elementary_config.h
src/lib/elementary/elm_atspi_bridge.c
src/lib/elementary/elm_interface_fileselector.c
src/lib/emotion/emotion_smart.c
src/lib/evas/canvas/evas_callbacks.c
src/lib/evas/canvas/evas_image_legacy.c
src/lib/evas/canvas/evas_main.c
src/lib/evas/canvas/evas_object_box.c
src/lib/evas/canvas/evas_object_main.c
src/lib/evas/canvas/evas_object_smart.c
src/lib/evas/canvas/evas_object_table.c
src/lib/evas/canvas/evas_object_textblock.c
src/tests/eolian/data/class_simple_ref_eo.h