2014-07-18 05:38:25 -07:00
|
|
|
#ifndef _EFL_H
|
|
|
|
#define _EFL_H
|
|
|
|
|
2014-09-12 11:56:09 -07:00
|
|
|
#if defined ( __cplusplus )
|
2015-04-28 06:11:20 -07:00
|
|
|
extern "C" {
|
2014-09-12 11:56:09 -07:00
|
|
|
#endif
|
|
|
|
|
2014-07-18 05:38:25 -07:00
|
|
|
#include <Eo.h>
|
|
|
|
|
2014-08-26 03:04:47 -07:00
|
|
|
#ifdef EAPI
|
|
|
|
# undef EAPI
|
|
|
|
#endif
|
2018-05-03 16:34:17 -07:00
|
|
|
#ifdef EWAPI
|
|
|
|
# undef EWAPI
|
|
|
|
#endif
|
|
|
|
#ifdef EOAPI
|
|
|
|
# undef EOAPI
|
|
|
|
#endif
|
2014-08-26 03:04:47 -07:00
|
|
|
|
|
|
|
#ifdef _WIN32
|
2018-01-18 01:04:03 -08:00
|
|
|
# ifdef EFL_BUILD
|
2014-08-26 03:04:47 -07:00
|
|
|
# ifdef DLL_EXPORT
|
|
|
|
# define EAPI __declspec(dllexport)
|
|
|
|
# else
|
|
|
|
# define EAPI
|
2018-01-18 01:04:03 -08:00
|
|
|
# endif
|
2014-08-26 03:04:47 -07:00
|
|
|
# else
|
|
|
|
# define EAPI __declspec(dllimport)
|
2018-01-18 01:04:03 -08:00
|
|
|
# endif
|
2018-05-03 16:34:17 -07:00
|
|
|
# define EAPI_WEAK
|
2014-08-26 03:04:47 -07:00
|
|
|
#else
|
|
|
|
# ifdef __GNUC__
|
|
|
|
# if __GNUC__ >= 4
|
|
|
|
# define EAPI __attribute__ ((visibility("default")))
|
2018-05-03 16:34:17 -07:00
|
|
|
# define EAPI_WEAK __attribute__ ((weak))
|
2014-08-26 03:04:47 -07:00
|
|
|
# else
|
|
|
|
# define EAPI
|
2018-05-03 16:34:17 -07:00
|
|
|
# define EAPI_WEAK
|
2014-08-26 03:04:47 -07:00
|
|
|
# endif
|
|
|
|
# else
|
|
|
|
# define EAPI
|
2018-05-03 16:34:17 -07:00
|
|
|
# define EAPI_WEAK
|
2014-08-26 03:04:47 -07:00
|
|
|
# endif
|
2018-01-18 01:04:03 -08:00
|
|
|
#endif
|
2014-08-26 03:04:47 -07:00
|
|
|
|
2018-05-03 16:34:17 -07:00
|
|
|
#define EWAPI EAPI EAPI_WEAK
|
|
|
|
#define EOAPI EAPI EAPI_WEAK
|
|
|
|
|
2016-02-29 04:30:31 -08:00
|
|
|
#define EFL_VERSION_1_18 1
|
2016-08-11 10:42:42 -07:00
|
|
|
#define EFL_VERSION_1_19 1
|
2017-06-09 17:16:07 -07:00
|
|
|
#define EFL_VERSION_1_20 1
|
2017-08-14 04:24:48 -07:00
|
|
|
#define EFL_VERSION_1_21 1
|
2015-11-17 18:13:00 -08:00
|
|
|
|
2016-04-11 22:08:35 -07:00
|
|
|
/* Add here all the required ifdef for any @protected method */
|
2018-01-18 01:04:03 -08:00
|
|
|
#ifdef EFL_BUILD
|
2016-04-19 01:43:28 -07:00
|
|
|
# define EFL_PACK_LAYOUT_PROTECTED
|
2016-06-08 00:09:38 -07:00
|
|
|
# define EFL_GFX_SIZE_HINT_PROTECTED
|
2016-04-11 22:08:35 -07:00
|
|
|
#endif
|
|
|
|
|
2016-02-09 07:28:25 -08:00
|
|
|
/**
|
|
|
|
* @ingroup Efl
|
|
|
|
* @since 1.18
|
|
|
|
*
|
|
|
|
* This type is a alias to struct tm.
|
|
|
|
* It is intended to be a standard way to reference it in .eo files.
|
|
|
|
*/
|
|
|
|
typedef struct tm Efl_Time;
|
|
|
|
|
2017-07-17 02:45:36 -07:00
|
|
|
typedef struct _Efl_Text_Cursor_Cursor Efl_Text_Cursor_Cursor;
|
2017-07-17 07:38:28 -07:00
|
|
|
typedef struct _Efl_Text_Annotate_Annotation Efl_Text_Annotate_Annotation;
|
2017-06-18 07:30:00 -07:00
|
|
|
|
2016-02-09 12:16:50 -08:00
|
|
|
#ifdef EFL_BETA_API_SUPPORT
|
|
|
|
|
2016-02-10 14:01:52 -08:00
|
|
|
#include "interfaces/efl_types.eot.h"
|
2016-02-09 12:16:50 -08:00
|
|
|
|
2018-12-07 14:39:42 -08:00
|
|
|
#include <Efl_MVVM_Common.h>
|
2015-11-17 18:13:00 -08:00
|
|
|
|
2016-02-03 01:23:45 -08:00
|
|
|
/* Data types */
|
|
|
|
#include "interfaces/efl_gfx_types.eot.h"
|
2017-05-30 07:13:02 -07:00
|
|
|
#include "interfaces/efl_ui_types.eot.h"
|
2016-02-03 01:23:45 -08:00
|
|
|
typedef Efl_Gfx_Path_Command_Type Efl_Gfx_Path_Command;
|
|
|
|
|
2014-07-18 05:38:25 -07:00
|
|
|
/* Interfaces */
|
2016-06-21 01:54:56 -07:00
|
|
|
#include "interfaces/efl_config.eo.h"
|
2014-08-07 04:51:36 -07:00
|
|
|
#include "interfaces/efl_control.eo.h"
|
2017-12-10 21:50:22 -08:00
|
|
|
#include "interfaces/efl_duplicate.eo.h"
|
2014-07-21 03:47:23 -07:00
|
|
|
#include "interfaces/efl_file.eo.h"
|
2018-04-19 04:26:59 -07:00
|
|
|
#include "interfaces/efl_gfx_image.eo.h"
|
|
|
|
#include "interfaces/efl_gfx_image_animation_controller.eo.h"
|
|
|
|
#include "interfaces/efl_gfx_image_load_controller.eo.h"
|
2016-05-18 11:20:09 -07:00
|
|
|
#include "interfaces/efl_part.eo.h"
|
2018-01-16 03:31:15 -08:00
|
|
|
#include "interfaces/efl_playable.eo.h"
|
2014-08-06 03:55:36 -07:00
|
|
|
#include "interfaces/efl_player.eo.h"
|
2014-07-24 09:42:09 -07:00
|
|
|
#include "interfaces/efl_text.eo.h"
|
2016-06-16 04:44:45 -07:00
|
|
|
#include "interfaces/efl_text_types.eot.h"
|
2016-04-05 18:46:04 -07:00
|
|
|
#include "interfaces/efl_orientation.eo.h"
|
2018-12-21 14:13:40 -08:00
|
|
|
#include "interfaces/efl_ui_i18n.eo.h"
|
2017-08-09 04:59:30 -07:00
|
|
|
#include "interfaces/efl_ui_direction.eo.h"
|
2017-05-30 07:13:02 -07:00
|
|
|
#include "interfaces/efl_ui_drag.eo.h"
|
2017-06-14 18:31:25 -07:00
|
|
|
#include "interfaces/efl_ui_range.eo.h"
|
2017-05-15 23:57:16 -07:00
|
|
|
#include "interfaces/efl_ui_autorepeat.eo.h"
|
2017-08-02 11:32:30 -07:00
|
|
|
#include "interfaces/efl_ui_draggable.eo.h"
|
|
|
|
#include "interfaces/efl_ui_clickable.eo.h"
|
|
|
|
#include "interfaces/efl_ui_scrollable.eo.h"
|
2017-12-18 04:08:25 -08:00
|
|
|
#include "interfaces/efl_ui_scrollbar.eo.h"
|
|
|
|
#include "interfaces/efl_ui_scrollable_interactive.eo.h"
|
2017-08-02 11:32:30 -07:00
|
|
|
#include "interfaces/efl_ui_selectable.eo.h"
|
2018-04-22 23:13:59 -07:00
|
|
|
#include "interfaces/efl_ui_multi_selectable.eo.h"
|
2017-08-02 11:32:30 -07:00
|
|
|
#include "interfaces/efl_ui_zoom.eo.h"
|
2014-07-18 05:38:25 -07:00
|
|
|
|
2016-05-31 23:47:31 -07:00
|
|
|
#include "interfaces/efl_screen.eo.h"
|
|
|
|
|
2016-04-07 01:32:40 -07:00
|
|
|
#define EFL_ORIENT_0 EFL_ORIENT_UP
|
|
|
|
#define EFL_ORIENT_90 EFL_ORIENT_RIGHT
|
|
|
|
#define EFL_ORIENT_180 EFL_ORIENT_DOWN
|
|
|
|
#define EFL_ORIENT_270 EFL_ORIENT_LEFT
|
|
|
|
|
2016-01-28 16:12:39 -08:00
|
|
|
/* Core interface */
|
2016-03-10 13:03:02 -08:00
|
|
|
#include "interfaces/efl_animator.eo.h"
|
2018-11-23 02:30:36 -08:00
|
|
|
#include "interfaces/efl_interpolator.eo.h"
|
2016-01-28 16:12:39 -08:00
|
|
|
|
2017-04-17 18:55:14 -07:00
|
|
|
/* Graphics */
|
2018-04-05 01:47:26 -07:00
|
|
|
#include "interfaces/efl_gfx_entity.eo.h"
|
2017-12-19 23:34:01 -08:00
|
|
|
#include "interfaces/efl_gfx_color.eo.h"
|
2016-03-02 03:46:11 -08:00
|
|
|
#include "interfaces/efl_gfx_buffer.eo.h"
|
2015-04-03 07:23:22 -07:00
|
|
|
#include "interfaces/efl_gfx_stack.eo.h"
|
2015-04-03 07:23:24 -07:00
|
|
|
#include "interfaces/efl_gfx_fill.eo.h"
|
2015-04-03 07:23:26 -07:00
|
|
|
#include "interfaces/efl_gfx_view.eo.h"
|
2016-11-23 00:29:38 -08:00
|
|
|
#include "interfaces/efl_gfx_path.eo.h"
|
2015-04-03 07:23:16 -07:00
|
|
|
#include "interfaces/efl_gfx_shape.eo.h"
|
2016-05-10 07:06:04 -07:00
|
|
|
#include "interfaces/efl_gfx_gradient.eo.h"
|
2015-04-03 07:23:16 -07:00
|
|
|
#include "interfaces/efl_gfx_gradient_linear.eo.h"
|
|
|
|
#include "interfaces/efl_gfx_gradient_radial.eo.h"
|
2015-06-17 00:26:30 -07:00
|
|
|
#include "interfaces/efl_gfx_filter.eo.h"
|
2017-12-14 00:23:46 -08:00
|
|
|
#include "interfaces/efl_gfx_blur.eo.h"
|
2016-06-02 01:18:17 -07:00
|
|
|
#include "interfaces/efl_gfx_size_hint.eo.h"
|
2017-11-08 02:04:26 -08:00
|
|
|
#include "interfaces/efl_gfx_color_class.eo.h"
|
|
|
|
#include "interfaces/efl_gfx_text_class.eo.h"
|
|
|
|
#include "interfaces/efl_gfx_size_class.eo.h"
|
2015-04-03 07:14:54 -07:00
|
|
|
|
2017-06-07 19:49:07 -07:00
|
|
|
/* Input events */
|
|
|
|
#include "interfaces/efl_input_types.eot.h"
|
|
|
|
#include "interfaces/efl_input_device.eo.h"
|
|
|
|
|
2017-04-17 18:55:14 -07:00
|
|
|
/* Canvas & UI */
|
2018-03-26 06:21:21 -07:00
|
|
|
#include "interfaces/efl_canvas_scene.eo.h"
|
2017-12-05 21:34:51 -08:00
|
|
|
#include "interfaces/efl_canvas_pointer.eo.h"
|
2017-01-31 12:17:58 -08:00
|
|
|
#include "interfaces/efl_ui_view.eo.h"
|
|
|
|
#include "interfaces/efl_ui_model_connect.eo.h"
|
|
|
|
#include "interfaces/efl_ui_factory.eo.h"
|
2017-10-15 23:24:06 -07:00
|
|
|
#include "interfaces/efl_ui_format.eo.h"
|
2018-12-06 16:38:47 -08:00
|
|
|
#include "interfaces/efl_cached_item.eo.h"
|
2017-01-31 12:17:58 -08:00
|
|
|
|
2017-04-17 18:55:14 -07:00
|
|
|
/* Observable interface */
|
|
|
|
#include "interfaces/efl_observer.eo.h"
|
|
|
|
#include "interfaces/efl_observable.eo.h"
|
|
|
|
|
2016-04-11 22:08:35 -07:00
|
|
|
/* Packing & containers */
|
2016-04-19 22:55:26 -07:00
|
|
|
#include "interfaces/efl_container.eo.h"
|
2017-11-19 22:41:07 -08:00
|
|
|
#include "interfaces/efl_content.eo.h"
|
2016-04-11 22:08:35 -07:00
|
|
|
#include "interfaces/efl_pack.eo.h"
|
2016-04-19 01:43:28 -07:00
|
|
|
#include "interfaces/efl_pack_layout.eo.h"
|
2016-04-11 22:08:35 -07:00
|
|
|
#include "interfaces/efl_pack_linear.eo.h"
|
2017-12-18 21:13:58 -08:00
|
|
|
#include "interfaces/efl_pack_table.eo.h"
|
2016-04-11 22:08:35 -07:00
|
|
|
|
2016-08-13 00:50:29 -07:00
|
|
|
/* Input and Output */
|
|
|
|
#include "interfaces/efl_io_closer.eo.h"
|
|
|
|
#include "interfaces/efl_io_reader.eo.h"
|
|
|
|
#include "interfaces/efl_io_writer.eo.h"
|
|
|
|
#include "interfaces/efl_io_sizer.eo.h"
|
|
|
|
#include "interfaces/efl_io_positioner.eo.h"
|
|
|
|
|
|
|
|
#include "interfaces/efl_io_buffer.eo.h"
|
2016-08-23 16:03:10 -07:00
|
|
|
#include "interfaces/efl_io_queue.eo.h"
|
2016-08-13 00:50:29 -07:00
|
|
|
|
2017-05-22 07:36:41 -07:00
|
|
|
/* Text interfaces */
|
|
|
|
#include "interfaces/efl_text_font.eo.h"
|
|
|
|
#include "interfaces/efl_text_style.eo.h"
|
|
|
|
#include "interfaces/efl_text_format.eo.h"
|
2017-06-08 03:07:12 -07:00
|
|
|
#include "interfaces/efl_text_cursor.eo.h"
|
2017-06-08 06:08:28 -07:00
|
|
|
#include "interfaces/efl_text_annotate.eo.h"
|
2017-09-25 09:21:21 -07:00
|
|
|
#include "interfaces/efl_text_markup.eo.h"
|
|
|
|
#include "interfaces/efl_text_markup_util.eo.h"
|
2017-05-22 07:36:41 -07:00
|
|
|
|
2019-01-14 11:28:45 -08:00
|
|
|
EAPI void efl_observable_tuple_free(Efl_Observable_Tuple *tuple);
|
|
|
|
|
2018-05-03 16:34:17 -07:00
|
|
|
/**
|
|
|
|
* @brief Get a proxy object referring to a part of an object.
|
|
|
|
*
|
|
|
|
* The returned object is valid for only a single function call.
|
|
|
|
* Of course, if the first call is @ref efl_ref, it will last
|
|
|
|
* until @ref efl_unref.
|
|
|
|
*
|
|
|
|
* @param[in] obj The object.
|
|
|
|
* @param[in] name The part name.
|
|
|
|
*
|
|
|
|
* @return A (proxy) object, valid for a single call.
|
|
|
|
*
|
|
|
|
* @since 1.21
|
|
|
|
*/
|
|
|
|
EAPI Efl_Object *efl_part(const Eo *obj, const char *name);
|
|
|
|
|
2018-12-07 15:51:09 -08:00
|
|
|
/**
|
|
|
|
* @brief This triggers the create method of a factory and trigger the item created event.
|
|
|
|
*
|
|
|
|
* @param[in] factory The factory that will provide the item
|
|
|
|
* @param[in] model The model to use to fetch information from
|
|
|
|
* @param[in] parent The parent of the newly created item
|
|
|
|
* @return A future that will resolve with the newly created item.
|
|
|
|
*
|
|
|
|
* @since 1.22
|
|
|
|
* @note This exists as we always want to trigger the event once all the logic
|
|
|
|
* of every factory in the chain has done what it planned to do. Basically we
|
|
|
|
* want the inverse of inheritance call like efl_super. So we do setup the future
|
|
|
|
* in this way.
|
|
|
|
*/
|
|
|
|
EAPI Eina_Future *efl_ui_view_factory_create_with_event(Efl_Ui_Factory *factory, Efl_Model *model, Efl_Gfx_Entity *parent);
|
|
|
|
|
2015-11-18 23:10:41 -08:00
|
|
|
#else
|
|
|
|
|
|
|
|
#ifndef EFL_NOLEGACY_API_SUPPORT
|
2016-02-03 01:23:45 -08:00
|
|
|
#include "interfaces/efl_gfx_types.eot.h"
|
2017-05-30 07:13:02 -07:00
|
|
|
#include "interfaces/efl_ui_types.eot.h"
|
2016-08-25 03:20:10 -07:00
|
|
|
#include "interfaces/efl_input_types.eot.h"
|
2015-11-18 23:10:41 -08:00
|
|
|
#include "interfaces/efl_gfx_fill.eo.legacy.h"
|
2018-04-05 01:47:26 -07:00
|
|
|
#include "interfaces/efl_gfx_entity.eo.legacy.h"
|
2018-04-19 04:26:59 -07:00
|
|
|
#include "interfaces/efl_gfx_image.eo.legacy.h"
|
|
|
|
#include "interfaces/efl_gfx_image_animation_controller.eo.legacy.h"
|
2016-04-28 01:08:14 -07:00
|
|
|
#include "interfaces/efl_input_device.eo.legacy.h"
|
2016-06-16 04:44:45 -07:00
|
|
|
#include "interfaces/efl_text_types.eot.h"
|
2015-11-18 23:10:41 -08:00
|
|
|
#endif
|
|
|
|
|
2016-02-03 01:23:45 -08:00
|
|
|
typedef Efl_Gfx_Path_Command_Type Efl_Gfx_Path_Command;
|
|
|
|
|
2015-02-07 04:46:12 -08:00
|
|
|
#endif
|
|
|
|
|
2016-04-06 22:40:10 -07:00
|
|
|
/* work-around bug in gcc --as-needed link optimization */
|
|
|
|
EAPI void __efl_internal_init(void);
|
|
|
|
|
2014-09-12 11:56:09 -07:00
|
|
|
#if defined ( __cplusplus )
|
|
|
|
}
|
|
|
|
#endif
|
|
|
|
|
2015-04-28 06:11:20 -07:00
|
|
|
#undef EAPI
|
|
|
|
#define EAPI
|
|
|
|
|
2014-07-18 05:38:25 -07:00
|
|
|
#endif
|