efl/src/lib/elementary/Elementary.h

306 lines
6.5 KiB
C
Raw Normal View History

/* This is the prmary Elementary header file that includes all other useful
* headers.
*
* Elementary is distributed under the LGPLv2 license. Please see the COPYING
* file that was distributed with this source.
*/
#ifndef ELEMENTARY_H
#define ELEMENTARY_H
/* Options which can be enabled or disabled by the buildtool */
#include "Elementary_Options.h"
/* Standard headers for standard system calls etc. */
#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include <string.h>
#include <sys/types.h>
#include <sys/stat.h>
#include <sys/time.h>
#include <sys/param.h>
#include <math.h>
#include <fnmatch.h>
#include <limits.h>
#include <ctype.h>
#include <time.h>
#ifdef ELM_DIRENT_H
#include <dirent.h>
#endif
#include <pwd.h>
#include <errno.h>
#ifdef ELM_UNIX
#include <locale.h>
#ifdef ELM_LIBINTL_H
#include <libintl.h>
#endif
#include <signal.h>
#include <grp.h>
#include <glob.h>
#endif
#ifdef ELM_ALLOCA_H
#include <alloca.h>
#endif
#ifdef ELM_WIN32
#include <malloc.h>
#ifndef alloca
#define alloca _alloca
#endif
#endif
/* EFL headers */
#include "Efl_Config.h"
#include <Eina.h>
#include <Eet.h>
#include <Evas.h>
#include <Evas_GL.h>
#include <Ecore.h>
#include <Ecore_Evas.h>
#include <Ecore_File.h>
#include <Ecore_Input.h>
#include <Ecore_IMF.h>
#include <Ecore_Con.h>
#include <Edje.h>
2013-04-23 09:05:43 -07:00
#include <Eldbus.h>
#include <Efreet.h>
#include <Efreet_Mime.h>
#include <Efreet_Trash.h>
#include <Ethumb_Client.h>
#include <Efl.h>
#ifdef ELM_ELOCATION
#include <Elocation.h>
#endif
#ifdef ELM_EMAP
#include <EMap.h>
2011-06-25 07:30:10 -07:00
#endif
#ifdef EAPI
# undef EAPI
#endif
#ifdef _WIN32
# define EAPI_MAIN
# ifdef ELEMENTARY_BUILD
# ifdef DLL_EXPORT
# define EAPI __declspec(dllexport)
# else
# define EAPI
# endif /* ! DLL_EXPORT */
# else
# define EAPI __declspec(dllimport)
# endif /* ! EFL_EVAS_BUILD */
#else
# ifdef __GNUC__
# if __GNUC__ >= 4
# define EAPI __attribute__ ((visibility("default")))
# define EAPI_MAIN __attribute__ ((visibility("default")))
# else
# define EAPI
# define EAPI_MAIN
# endif
# else
# define EAPI
# define EAPI_MAIN
# endif
#endif /* ! _WIN32 */
/* allow usage from c++ */
#ifdef __cplusplus
extern "C"
{
#endif
/* docs */
#include <elm_intro.h>
#include <elm_getting_started.h>
#include <elm_authors.h>
#define ELM_VERSION_MAJOR EFL_VERSION_MAJOR
#define ELM_VERSION_MINOR EFL_VERSION_MINOR
typedef struct _Elm_Version
{
int major;
int minor;
int micro;
int revision;
} Elm_Version;
EAPI extern Elm_Version *elm_version;
/* include these first for general used definitions */
#include <elm_gen.h>
#include <elm_general.h>
#include <elm_config.h>
#include <elm_focus.h>
#if defined (EFL_EO_API_SUPPORT) && defined (EFL_BETA_API_SUPPORT)
# include "efl_ui_focus_object.eo.h"
# include "efl_ui_focus_manager.eo.h"
# include "efl_ui_focus_manager_calc.eo.h"
# include "efl_ui_focus_manager_sub.eo.h"
# include "efl_ui_focus_manager_root_focus.eo.h"
# include "efl_ui_focus_user.eo.h"
# include <efl_ui_textpath.eo.h>
# include <efl_ui_translatable.eo.h>
# include <efl_ui_focus_composition.eo.h>
# include <efl_ui_focus_layer.eo.h>
#endif
#include <elm_tooltip.h>
#include <elm_object_item.h>
#include <elm_focus_item.h>
#include <elm_prefs_data.h>
#include <elm_prefs.h>
#include <elm_systray.h>
#include <elm_sys_notify.h>
/* special widgets - types used elsewhere */
#include <elm_access.h>
#include <elm_icon.h>
#include <elm_scroller.h>
#include <elm_entry.h>
#include <elm_list.h>
/* Interfaces */
#include <elm_interfaces.h>
/* other includes */
#include <elc_ctxpopup.h>
#include <elc_combobox.h>
#include <elm_dayselector.h>
#include <elc_fileselector_button.h>
#include <elc_fileselector_entry.h>
#include <elc_fileselector.h>
#include <elc_hoversel.h>
#include <elc_multibuttonentry.h>
#include <elc_naviframe.h>
#include <elc_popup.h>
#include <elm_actionslider.h>
#include <elm_app.h>
#include <elm_atspi_app_object.h>
#include <elm_atspi_bridge.h>
#include <elm_bg.h>
#include <elm_box.h>
#include <elm_bubble.h>
#include <elm_button.h>
#include <elm_cache.h>
#include <elm_calendar.h>
#include <efl_ui_calendar.h>
#include <elm_check.h>
#include <elm_clock.h>
#include <elm_cnp.h>
#include <elm_code.h>
#include <elm_colorselector.h>
#include <elm_color_class.h>
#include <elm_conform.h>
#include <elm_cursor.h>
#include <elm_datetime.h>
#include <elm_debug.h>
#include <elm_diskselector.h>
//#include <elm_factory.h>
#include <elm_finger.h>
#include <elm_flip.h>
#include <elm_flipselector.h>
#include <elm_font.h>
#include <elm_frame.h>
#include <elm_gengrid.h>
#include <elm_genlist.h>
#include <elm_gesture_layer.h>
#include <elm_glview.h>
#include <elm_grid.h>
#include <elm_hover.h>
#include <elm_image.h>
#include <elm_index.h>
#include <elm_inwin.h>
#include <elm_label.h>
#include <elm_layout.h>
#include <elm_macros.h>
#include <elm_map.h>
#include <elm_mapbuf.h>
#include <elm_menu.h>
#include <elm_mirroring.h>
#include <elm_need.h>
#include <elm_notify.h>
#include <efl_ui_nstate.h>
#include <elm_object.h>
#include <elm_panel.h>
#include <elm_panes.h>
#include <elm_photocam.h>
#include <elm_photo.h>
#include <elm_plug.h>
#include <elm_progressbar.h>
#include <elm_radio.h>
#include <elm_route.h>
#include <elm_scale.h>
#include <elm_scroll.h>
#include <elm_segment_control.h>
#include <elm_separator.h>
#include <elm_slider.h>
#include <elm_slideshow.h>
#include <elm_spinner.h>
#include <elm_store.h>
#include <elm_table.h>
#include <elm_theme.h>
#include <elm_thumb.h>
#include <elm_toolbar.h>
#include <elm_transit.h>
#include <efl_ui_video.h>
#include <elm_view_list.h>
#include <elm_view_form.h>
#include <elm_web.h>
#include <elm_win.h>
#ifdef EFL_EO_API_SUPPORT
# include <efl_config_global.eo.h>
# include <efl_ui_widget_part.eo.h>
# include <efl_ui_layout_part.eo.h>
# include <efl_ui_layout_part_box.eo.h>
# include <efl_ui_layout_part_content.eo.h>
# include <efl_ui_layout_part_text.eo.h>
# include <efl_ui_layout_part_table.eo.h>
2017-09-26 03:33:56 -07:00
# include <efl_ui_win_part.eo.h>
# include <efl_ui_box.eo.h>
# include <efl_ui_box_flow.eo.h>
# include <efl_ui_box_stack.eo.h>
# include <efl_ui_grid.eo.h>
# include <efl_ui_grid_static.eo.h>
# include <efl_ui_image.eo.h>
# include <efl_ui_win.eo.h>
# include <efl_ui_win_inlined.eo.h>
# include <efl_ui_win_socket.eo.h>
Ui text interactive: introduce this new object (rebase squash) @feature Ui text: Add a new interactive version of Canvas.Text This object is internal and is essentially a Canvas.Text that accepts key and mouse input. It should be used by Ui.Text as the text layout/input driver. Ui text interactive: Add include guard to header. Ui internal text: Improve input handling support and add selection. Ui internal text: Add a lot of imf stuff. Add more text selection handling code. Add support for allowing selection. Efl.Ui.Text.Interactive: (reword) code format fix. Efl.Ui.Text.Interactive: Remove useless struct members. Add multiline toggle support and a constructor. Text interactive: Add support for legcay newline. Text interactive: Use the new cursor_equal function. Efl.Ui.Text.Interactive: (Rebase split) fixup cursor Efl.Ui.Interactive: (Rebase split) fixup line_jump_by usage Text interactive: Cleanup tab/return handling. Text interactive: Use cursor_equal more. Text interactive: Simplify and unify selection handling in key input. Text interactive: Fix user text change reporting. This is useful for implementing undo/redo. Text interactive: Add documentation to event. Efl text interactive: (Rebase reword) Add a new interface to be used later. Ui text interactive: Migrate one missing change_info call. Ui text interactive: Mark the correct type for the change event. Ui text interactive: (Edited) Move to elementary and add "selection,changed". This is useful for implementing selection handlers. We had to move it to elementary because we started referencing cursors. Ui internal: Emit an event for selection changed. Ui text interactive: Remove unused code. Ui text interactive: Remove more unused code. Ui text interactive: Remove more unused code. Ui text interactive: Rename improperly named function. Ui text interactive: Update code to the new canvas text api. Ui text interactive: provide access to the selection cursors. This is the new API for manipulation selection outside of the object. Just manipulate these cursors to manipulate the selection. Fix previous commit. Ui interactive: Clean up internal functions. Ui interactive: Fix abuse of selection in word deletion. Ui text interactive: Fix selection. Ui text interactive: Fix right key to move next. Ui text interactive: Fix selection using keyboard. Ui text interactive: Don't emit selection changed events twice. We now use the cursor changed event to track changes, so no need to manually emit events ourselves. Ui Text interactive: Remove selection,cleared signal, use changed instead. If the selection cursors are equal, there's no selection, if they are different, there is. Ui text interactive: remove redundant code. Ui text interactive: Don't emit selection changed events on init. Ui text interactive: Remove unused variable. Efl.Ui.Interactive: fixup char_coor usage Ui text interactive: Fix some fixmes. Ui text interactive: fix selection_cursors_get Ui text interactive: Skip key down events if marked ON_HOLD.
2016-06-08 03:45:40 -07:00
# include <efl_ui_text_interactive.eo.h>
# include <efl_ui_text.eo.h>
# include <efl_ui_text_editable.eo.h>
# include <efl_ui_text_async.eo.h>
# include <efl_ui_clock.eo.h>
# include <efl_ui_image_factory.eo.h>
#endif
/* include deprecated calls last of all */
#include <elm_deprecated.h>
#include <elm_helper.h>
#ifdef __cplusplus
}
#endif
#undef EAPI
#define EAPI
#endif