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