diff options
author | David Walter Seikel | 2012-04-22 09:20:32 +1000 |
---|---|---|
committer | David Walter Seikel | 2012-04-22 09:20:32 +1000 |
commit | 3ad3455551be0d7859ecb02290376206d5e66498 (patch) | |
tree | 497917e12b4d7f458dff9765d9b53f64c4e03fc3 /libraries/elementary/src/lib/elm_priv.h | |
parent | Update EFL to latest beta. (diff) | |
download | SledjHamr-3ad3455551be0d7859ecb02290376206d5e66498.zip SledjHamr-3ad3455551be0d7859ecb02290376206d5e66498.tar.gz SledjHamr-3ad3455551be0d7859ecb02290376206d5e66498.tar.bz2 SledjHamr-3ad3455551be0d7859ecb02290376206d5e66498.tar.xz |
And actually include new files, plus elementary libraries.
Diffstat (limited to 'libraries/elementary/src/lib/elm_priv.h')
-rw-r--r-- | libraries/elementary/src/lib/elm_priv.h | 315 |
1 files changed, 315 insertions, 0 deletions
diff --git a/libraries/elementary/src/lib/elm_priv.h b/libraries/elementary/src/lib/elm_priv.h new file mode 100644 index 0000000..f931bc0 --- /dev/null +++ b/libraries/elementary/src/lib/elm_priv.h | |||
@@ -0,0 +1,315 @@ | |||
1 | #ifndef ELM_PRIV_H | ||
2 | #define ELM_PRIV_H | ||
3 | #ifdef HAVE_CONFIG_H | ||
4 | #include "elementary_config.h" | ||
5 | #endif | ||
6 | #ifdef HAVE_ELEMENTARY_X | ||
7 | #include <Ecore_X.h> | ||
8 | #endif | ||
9 | #ifdef HAVE_ELEMENTARY_FB | ||
10 | #include <Ecore_Fb.h> | ||
11 | #endif | ||
12 | #ifdef HAVE_ELEMENTARY_WINCE | ||
13 | #include <Ecore_WinCE.h> | ||
14 | #endif | ||
15 | |||
16 | #include "elm_widget.h" | ||
17 | |||
18 | #define CRITICAL(...) EINA_LOG_DOM_CRIT(_elm_log_dom, __VA_ARGS__) | ||
19 | #define ERR(...) EINA_LOG_DOM_ERR (_elm_log_dom, __VA_ARGS__) | ||
20 | #define WRN(...) EINA_LOG_DOM_WARN(_elm_log_dom, __VA_ARGS__) | ||
21 | #define INF(...) EINA_LOG_DOM_INFO(_elm_log_dom, __VA_ARGS__) | ||
22 | #define DBG(...) EINA_LOG_DOM_DBG (_elm_log_dom, __VA_ARGS__) | ||
23 | |||
24 | #ifdef ENABLE_NLS | ||
25 | #include <libintl.h> | ||
26 | #define E_(string) _elm_dgettext(string) | ||
27 | #else | ||
28 | #ifndef setlocale | ||
29 | #define setlocale(c, l) | ||
30 | #endif | ||
31 | #ifndef libintl_setlocale | ||
32 | #define libintl_setlocale(c, l) | ||
33 | #endif | ||
34 | #ifndef bindtextdomain | ||
35 | #define bindtextdomain(domain, dir) | ||
36 | #endif | ||
37 | #ifndef libintl_bindtextdomain | ||
38 | #define libintl_bindtextdomain(domain, dir) | ||
39 | #endif | ||
40 | #define E_(string) (string) | ||
41 | #endif | ||
42 | #define N_(string) (string) | ||
43 | |||
44 | typedef struct _Elm_Config Elm_Config; | ||
45 | typedef struct _Elm_Module Elm_Module; | ||
46 | typedef struct _Elm_Datetime_Module_Data Elm_Datetime_Module_Data; | ||
47 | |||
48 | struct _Elm_Theme | ||
49 | { | ||
50 | Eina_List *overlay; | ||
51 | Eina_List *themes; | ||
52 | Eina_List *extension; | ||
53 | Eina_Hash *cache; | ||
54 | Eina_Hash *cache_data; | ||
55 | Elm_Theme *ref_theme; | ||
56 | Eina_List *referrers; | ||
57 | const char *theme; | ||
58 | int ref; | ||
59 | }; | ||
60 | |||
61 | /* increment this whenever we change config enough that you need new | ||
62 | * defaults for elm to work. | ||
63 | */ | ||
64 | #define ELM_CONFIG_EPOCH 0x0001 | ||
65 | /* increment this whenever a new set of config values are added but the users | ||
66 | * config doesn't need to be wiped - simply new values need to be put in | ||
67 | */ | ||
68 | #define ELM_CONFIG_FILE_GENERATION 0x0003 | ||
69 | #define ELM_CONFIG_VERSION ((ELM_CONFIG_EPOCH << 16) | ELM_CONFIG_FILE_GENERATION) | ||
70 | /* NB: profile configuration files (.src) must have their | ||
71 | * "config_version" entry's value up-to-date with ELM_CONFIG_VERSION | ||
72 | * (in decimal)!! */ | ||
73 | |||
74 | /* note: always remember to sync it with elm_config.c */ | ||
75 | extern const char *_elm_engines[]; | ||
76 | |||
77 | #define ELM_SOFTWARE_X11 (_elm_engines[0]) | ||
78 | #define ELM_SOFTWARE_FB (_elm_engines[1]) | ||
79 | #define ELM_SOFTWARE_DIRECTFB (_elm_engines[2]) | ||
80 | #define ELM_SOFTWARE_16_X11 (_elm_engines[3]) | ||
81 | #define ELM_SOFTWARE_8_X11 (_elm_engines[4]) | ||
82 | #define ELM_XRENDER_X11 (_elm_engines[5]) | ||
83 | #define ELM_OPENGL_X11 (_elm_engines[6]) | ||
84 | #define ELM_SOFTWARE_WIN32 (_elm_engines[7]) | ||
85 | #define ELM_SOFTWARE_16_WINCE (_elm_engines[8]) | ||
86 | #define ELM_SOFTWARE_SDL (_elm_engines[9]) | ||
87 | #define ELM_SOFTWARE_16_SDL (_elm_engines[10]) | ||
88 | #define ELM_OPENGL_SDL (_elm_engines[11]) | ||
89 | #define ELM_BUFFER (_elm_engines[12]) | ||
90 | #define ELM_EWS (_elm_engines[13]) | ||
91 | #define ELM_OPENGL_COCOA (_elm_engines[14]) | ||
92 | #define ELM_SOFTWARE_PSL1GHT (_elm_engines[15]) | ||
93 | #define ELM_WAYLAND_SHM (_elm_engines[16]) | ||
94 | #define ELM_WAYLAND_EGL (_elm_engines[17]) | ||
95 | |||
96 | #define ELM_FONT_TOKEN_STYLE ":style=" | ||
97 | |||
98 | #define ELM_ACCESS_MODE_OFF 0 | ||
99 | #define ELM_ACCESS_MODE_ON 1 | ||
100 | |||
101 | #undef MIN | ||
102 | #define MIN(x, y) (((x) < (y)) ? (x) : (y)) | ||
103 | #undef MAX | ||
104 | #define MAX(x, y) (((x) > (y)) ? (x) : (y)) | ||
105 | |||
106 | struct _Elm_Config | ||
107 | { | ||
108 | int config_version; | ||
109 | const char *engine; | ||
110 | unsigned char vsync; | ||
111 | unsigned char thumbscroll_enable; | ||
112 | int thumbscroll_threshold; | ||
113 | double thumbscroll_momentum_threshold; | ||
114 | double thumbscroll_friction; | ||
115 | double thumbscroll_bounce_friction; | ||
116 | double page_scroll_friction; | ||
117 | double bring_in_scroll_friction; | ||
118 | double zoom_friction; | ||
119 | unsigned char thumbscroll_bounce_enable; | ||
120 | double thumbscroll_border_friction; | ||
121 | double thumbscroll_sensitivity_friction; | ||
122 | double scroll_smooth_amount; | ||
123 | double scroll_smooth_history_weight; | ||
124 | double scroll_smooth_future_time; | ||
125 | double scroll_smooth_time_window; | ||
126 | double scale; | ||
127 | int bgpixmap; | ||
128 | int compositing; | ||
129 | Eina_List *font_dirs; | ||
130 | Eina_List *font_overlays; | ||
131 | int font_hinting; | ||
132 | int cache_flush_poll_interval; | ||
133 | unsigned char cache_flush_enable; | ||
134 | int image_cache; | ||
135 | int font_cache; | ||
136 | int edje_cache; | ||
137 | int edje_collection_cache; | ||
138 | int finger_size; | ||
139 | double fps; | ||
140 | const char *theme; | ||
141 | const char *modules; | ||
142 | double tooltip_delay; | ||
143 | unsigned char cursor_engine_only; | ||
144 | unsigned char focus_highlight_enable; | ||
145 | unsigned char focus_highlight_animate; | ||
146 | int toolbar_shrink_mode; | ||
147 | unsigned char fileselector_expand_enable; | ||
148 | unsigned char inwin_dialogs_enable; | ||
149 | int icon_size; | ||
150 | double longpress_timeout; | ||
151 | unsigned char effect_enable; | ||
152 | unsigned char desktop_entry; | ||
153 | Eina_Bool password_show_last; | ||
154 | double password_show_last_timeout; | ||
155 | Eina_Bool glayer_zoom_finger_enable; | ||
156 | double glayer_zoom_finger_factor; | ||
157 | double glayer_zoom_wheel_factor; | ||
158 | double glayer_zoom_distance_tolerance; | ||
159 | double glayer_rotate_finger_enable; | ||
160 | double glayer_rotate_angular_tolerance; | ||
161 | double glayer_line_min_length; | ||
162 | double glayer_line_distance_tolerance; | ||
163 | double glayer_line_angular_tolerance; | ||
164 | unsigned int glayer_flick_time_limit_ms; | ||
165 | double glayer_long_tap_start_timeout; | ||
166 | int access_mode; | ||
167 | Eina_Bool glayer_continues_enable; | ||
168 | int week_start; | ||
169 | int weekend_start; | ||
170 | int weekend_len; | ||
171 | int year_min; | ||
172 | int year_max; | ||
173 | Eina_List *color_palette; | ||
174 | |||
175 | /* Not part of the EET file */ | ||
176 | Eina_Bool is_mirrored : 1; | ||
177 | Eina_Bool translate : 1; | ||
178 | }; | ||
179 | |||
180 | struct _Elm_Module | ||
181 | { | ||
182 | int version; | ||
183 | const char *name; | ||
184 | const char *as; | ||
185 | const char *so_path; | ||
186 | const char *data_dir; | ||
187 | const char *bin_dir; | ||
188 | Eina_Module *module; | ||
189 | void *data; | ||
190 | void *api; | ||
191 | int (*init_func)(Elm_Module *m); | ||
192 | int (*shutdown_func)(Elm_Module *m); | ||
193 | int references; | ||
194 | }; | ||
195 | |||
196 | struct _Elm_Datetime_Module_Data | ||
197 | { | ||
198 | Evas_Object *base; | ||
199 | void (*field_limit_get)(Evas_Object *obj, Elm_Datetime_Field_Type field_type, int *range_min, int *range_max); | ||
200 | const char *(*field_format_get)(Evas_Object * obj, Elm_Datetime_Field_Type field_type); | ||
201 | }; | ||
202 | |||
203 | int _elm_ews_wm_init(void); | ||
204 | void _elm_ews_wm_shutdown(void); | ||
205 | void _elm_ews_wm_rescale(Elm_Theme *th, Eina_Bool use_theme); | ||
206 | |||
207 | void _elm_win_shutdown(void); | ||
208 | void _elm_win_rescale(Elm_Theme *th, Eina_Bool use_theme); | ||
209 | void _elm_win_translate(void); | ||
210 | |||
211 | Eina_Bool _elm_theme_object_set(Evas_Object *parent, Evas_Object *o, const char *clas, const char *group, const char *style); | ||
212 | Eina_Bool _elm_theme_object_icon_set(Evas_Object *parent, Evas_Object *o, const char *group, const char *style); | ||
213 | Eina_Bool _elm_theme_set(Elm_Theme *th, Evas_Object *o, const char *clas, const char *group, const char *style); | ||
214 | Eina_Bool _elm_theme_icon_set(Elm_Theme *th, Evas_Object *o, const char *group, const char *style); | ||
215 | Eina_Bool _elm_theme_parse(Elm_Theme *th, const char *theme); | ||
216 | void _elm_theme_shutdown(void); | ||
217 | |||
218 | void _elm_module_init(void); | ||
219 | void _elm_module_shutdown(void); | ||
220 | void _elm_module_parse(const char *s); | ||
221 | Elm_Module *_elm_module_find_as(const char *as); | ||
222 | Elm_Module *_elm_module_add(const char *name, const char *as); | ||
223 | void _elm_module_del(Elm_Module *m); | ||
224 | Eina_Bool _elm_module_load(Elm_Module *m); | ||
225 | void _elm_module_unload(Elm_Module *m); | ||
226 | const void *_elm_module_symbol_get(Elm_Module *m, const char *name); | ||
227 | |||
228 | void _elm_widget_type_clear(void); | ||
229 | void _elm_widget_focus_region_show(const Evas_Object *obj); | ||
230 | void _elm_widget_top_win_focused_set(Evas_Object *obj, Eina_Bool top_win_focused); | ||
231 | Eina_Bool _elm_widget_top_win_focused_get(const Evas_Object *obj); | ||
232 | |||
233 | void _elm_unneed_ethumb(void); | ||
234 | void _elm_unneed_web(void); | ||
235 | |||
236 | void _elm_rescale(void); | ||
237 | void _elm_widget_mirrored_reload(Evas_Object *obj); | ||
238 | |||
239 | void _elm_config_init(void); | ||
240 | void _elm_config_sub_init(void); | ||
241 | void _elm_config_shutdown(void); | ||
242 | void _elm_config_sub_shutdown(void); | ||
243 | Eina_Bool _elm_config_save(void); | ||
244 | void _elm_config_reload(void); | ||
245 | |||
246 | void _elm_recache(void); | ||
247 | |||
248 | const char *_elm_config_current_profile_get(void); | ||
249 | const char *_elm_config_profile_dir_get(const char *prof, Eina_Bool is_user); | ||
250 | Eina_List *_elm_config_profiles_list(void); | ||
251 | void _elm_config_all_update(void); | ||
252 | void _elm_config_profile_set(const char *profile); | ||
253 | |||
254 | void _elm_config_engine_set(const char *engine); | ||
255 | |||
256 | Eina_List *_elm_config_font_overlays_list(void); | ||
257 | void _elm_config_font_overlay_set(const char *text_class, const char *font, Evas_Font_Size size); | ||
258 | void _elm_config_font_overlay_remove(const char *text_class); | ||
259 | void _elm_config_font_overlay_apply(void); | ||
260 | Eina_List *_elm_config_text_classes_get(void); | ||
261 | void _elm_config_text_classes_free(Eina_List *l); | ||
262 | |||
263 | Elm_Font_Properties *_elm_font_properties_get(Eina_Hash **font_hash, const char *font); | ||
264 | Eina_Hash *_elm_font_available_hash_add(Eina_Hash *font_hash, const char *full_name); | ||
265 | void _elm_font_available_hash_del(Eina_Hash *hash); | ||
266 | |||
267 | void elm_tooltip_theme(Elm_Tooltip *tt); | ||
268 | void elm_object_sub_tooltip_content_cb_set(Evas_Object *eventarea, Evas_Object *owner, Elm_Tooltip_Content_Cb func, const void *data, Evas_Smart_Cb del_cb); | ||
269 | void elm_cursor_theme(Elm_Cursor *cur); | ||
270 | void elm_object_sub_cursor_set(Evas_Object *eventarea, Evas_Object *owner, const char *cursor); | ||
271 | |||
272 | void elm_menu_clone(Evas_Object *from_menu, Evas_Object *to_menu, Elm_Object_Item *parent); | ||
273 | |||
274 | Eina_Bool _elm_dangerous_call_check(const char *call); | ||
275 | |||
276 | Evas_Object *_elm_scroller_edje_object_get(Evas_Object *obj); | ||
277 | |||
278 | char *_elm_util_mkup_to_text(const char *mkup); | ||
279 | char *_elm_util_text_to_mkup(const char *text); | ||
280 | |||
281 | Eina_Bool _elm_video_check(Evas_Object *video); | ||
282 | |||
283 | Eina_List *_elm_config_color_list_get(const char *palette_name); | ||
284 | void _elm_config_color_set(const char *palette_name, int r, int g, int b, int a); | ||
285 | void _elm_config_colors_free(const char *palette_name); | ||
286 | |||
287 | extern char *_elm_appname; | ||
288 | extern Elm_Config *_elm_config; | ||
289 | extern const char *_elm_data_dir; | ||
290 | extern const char *_elm_lib_dir; | ||
291 | extern int _elm_log_dom; | ||
292 | extern Eina_List *_elm_win_list; | ||
293 | extern int _elm_win_deferred_free; | ||
294 | extern const char *_elm_preferred_engine; | ||
295 | |||
296 | #ifdef ENABLE_NLS | ||
297 | /* Our gettext wrapper, used to disable translation of elm if the app | ||
298 | * is not translated. */ | ||
299 | static inline const char * | ||
300 | _elm_dgettext(const char *string) | ||
301 | { | ||
302 | if (EINA_UNLIKELY(_elm_config->translate == EINA_FALSE)) | ||
303 | { | ||
304 | return string; | ||
305 | } | ||
306 | |||
307 | return dgettext(PACKAGE, string); | ||
308 | } | ||
309 | |||
310 | #endif | ||
311 | |||
312 | /* Used by the paste handler */ | ||
313 | void _elm_entry_entry_paste(Evas_Object *obj, const char *entry); | ||
314 | |||
315 | #endif | ||