94a5ef6dc931ee51ef9dcf26e87ebcf8eb632edc
[framework/uifw/elementary.git] / src / lib / Elementary.h
1 /**
2  * @file Elementary.h
3  * @brief Elementary Widget Library
4  */
5 #ifndef ELEMENTARY_H
6 #define ELEMENTARY_H
7
8 #define ELM_UNIX
9 #undef ELM_WIN32
10 #undef ELM_WINCE
11 #define ELM_EDBUS
12 #define ELM_EFREET
13 #define ELM_ETHUMB
14 #undef ELM_WEB
15 #undef ELM_EMAP
16 #undef ELM_DEBUG
17 #define ELM_ALLOCA_H
18 #define ELM_LIBINTL_H
19 #define ELM_DIRENT_H
20
21 /* Standard headers for standard system calls etc. */
22 #include <stdio.h>
23 #include <stdlib.h>
24 #include <unistd.h>
25 #include <string.h>
26 #include <sys/types.h>
27 #include <sys/stat.h>
28 #include <sys/time.h>
29 #include <sys/param.h>
30 #include <math.h>
31 #include <fnmatch.h>
32 #include <limits.h>
33 #include <ctype.h>
34 #include <time.h>
35 #ifdef ELM_DIRENT_H
36 #include <dirent.h>
37 #endif
38 #include <pwd.h>
39 #include <errno.h>
40
41 #ifdef ELM_UNIX
42 #include <locale.h>
43 #ifdef ELM_LIBINTL_H
44 #include <libintl.h>
45 #endif
46 #include <signal.h>
47 #include <grp.h>
48 #include <glob.h>
49 #endif
50
51 #ifdef ELM_ALLOCA_H
52 #include <alloca.h>
53 #endif
54
55 #if defined (ELM_WIN32) || defined (ELM_WINCE)
56 #include <malloc.h>
57 #ifndef alloca
58 #define alloca _alloca
59 #endif
60 #endif
61
62 /* EFL headers */
63 #include <Eina.h>
64 #include <Eet.h>
65 #include <Evas.h>
66 #include <Evas_GL.h>
67 #include <Ecore.h>
68 #include <Ecore_Evas.h>
69 #include <Ecore_File.h>
70 #include <Ecore_IMF.h>
71 #include <Ecore_Con.h>
72 #include <Edje.h>
73
74 #ifdef ELM_EDBUS
75 #include <E_DBus.h>
76 #endif
77
78 #ifdef ELM_EFREET
79 #include <Efreet.h>
80 #include <Efreet_Mime.h>
81 #include <Efreet_Trash.h>
82 #endif
83
84 #ifdef ELM_ETHUMB
85 #include <Ethumb_Client.h>
86 #endif
87
88 #ifdef ELM_EMAP
89 #include <EMap.h>
90 #endif
91
92 #ifdef EAPI
93 #undef EAPI
94 #endif
95
96 #ifdef _WIN32
97 #ifdef ELEMENTARY_BUILD
98 #ifdef DLL_EXPORT
99 #define EAPI __declspec(dllexport)
100 #else
101 #define EAPI
102 #endif /* ! DLL_EXPORT */
103 #else
104 #define EAPI __declspec(dllimport)
105 #endif /* ! EFL_EVAS_BUILD */
106 #else
107 #ifdef __GNUC__
108 #if __GNUC__ >= 4
109 #define EAPI __attribute__ ((visibility("default")))
110 #else
111 #define EAPI
112 #endif
113 #else
114 #define EAPI
115 #endif
116 #endif /* ! _WIN32 */
117
118 #ifdef _WIN32
119 #define EAPI_MAIN
120 #else
121 #define EAPI_MAIN EAPI
122 #endif
123
124 /* allow usage from c++ */
125 #ifdef __cplusplus
126 extern "C"
127 {
128 #endif
129
130 /* docs */
131 #include <elm_intro.h>
132 #include <elm_getting_started.h>
133 #include <elm_authors.h>
134
135 #define ELM_VERSION_MAJOR 0
136 #define ELM_VERSION_MINOR 8
137
138 typedef struct _Elm_Version
139 {
140    int major;
141    int minor;
142    int micro;
143    int revision;
144 } Elm_Version;
145
146 EAPI extern Elm_Version * elm_version;
147
148 /* include these first for general used definitions */
149 #include <elm_general.h>
150 #include <elm_object_item.h>
151 #include <elm_tooltip.h>
152
153 /* special widgets - types used elsewhere */
154 #include <elm_icon.h>
155 #include <elm_scroller.h>
156 #include <elm_entry.h>
157 #include <elm_list.h>
158
159 /* other includes */
160 #include <elc_anchorblock.h>
161 #include <elc_anchorview.h>
162 #include <elc_ctxpopup.h>
163 #include <elc_fileselector_button.h>
164 #include <elc_fileselector_entry.h>
165 #include <elc_fileselector.h>
166 #include <elc_hoversel.h>
167 #include <elc_multibuttonentry.h>
168 #include <elc_naviframe.h>
169 #include <elm_actionslider.h>
170 #include <elm_app.h>
171 #include <elm_bg.h>
172 #include <elm_box.h>
173 #include <elm_bubble.h>
174 #include <elm_button.h>
175 #include <elm_cache.h>
176 #include <elm_calendar.h>
177 #include <elm_check.h>
178 #include <elm_clock.h>
179 #include <elm_cnp.h>
180 #include <elm_colorselector.h>
181 #include <elm_config.h>
182 #include <elm_conform.h>
183 #include <elm_cursor.h>
184 #include <elm_debug.h>
185 #include <elm_deprecated.h>
186 #include <elm_diskselector.h>
187 #include <elm_engine.h>
188 #include <elm_factory.h>
189 #include <elm_finger.h>
190 #include <elm_flip.h>
191 #include <elm_flipselector.h>
192 #include <elm_focus.h>
193 #include <elm_fonts.h>
194 #include <elm_frame.h>
195 #include <elm_gengrid.h>
196 #include <elm_genlist.h>
197 #include <elm_gesture_layer.h>
198 #include <elm_glview.h>
199 #include <elm_grid.h>
200 #include <elm_hover.h>
201 #include <elm_image.h>
202 #include <elm_index.h>
203 #include <elm_label.h>
204 #include <elm_layout.h>
205 #include <elm_macros.h>
206 #include <elm_mapbuf.h>
207 #include <elm_map.h>
208 #include <elm_menu.h>
209 #include <elm_mirroring.h>
210 #include <elm_need.h>
211 #include <elm_notify.h>
212 #include <elm_object.h>
213 #include <elm_pager.h>
214 #include <elm_panel.h>
215 #include <elm_panes.h>
216 #include <elm_password.h>
217 #include <elm_photocam.h>
218 #include <elm_photo.h>
219 #include <elm_progressbar.h>
220 #include <elm_radio.h>
221 #include <elm_route.h>
222 #include <elm_scale.h>
223 #include <elm_scroll.h>
224 #include <elm_segment_control.h>
225 #include <elm_separator.h>
226 #include <elm_slider.h>
227 #include <elm_slideshow.h>
228 #include <elm_spinner.h>
229 #include <elm_store.h>
230 #include <elm_table.h>
231 #include <elm_theme.h>
232 #include <elm_thumb.h>
233 #include <elm_toolbar.h>
234 #include <elm_transit.h>
235 #include <elm_video.h>
236 #include <elm_web.h>
237 #include <elm_win.h>
238
239 #ifdef __cplusplus
240 }
241 #endif
242
243 #endif