Merge with e17 devel
[platform/core/uifw/e17.git] / src / bin / e_font.h
1 #ifdef E_TYPEDEFS
2
3 typedef struct _E_Font_Default E_Font_Default;
4 typedef struct _E_Font_Fallback E_Font_Fallback;
5 typedef struct _E_Font_Available E_Font_Available;
6 typedef struct _E_Font_Properties E_Font_Properties;
7
8 #else
9 #ifndef E_FONT_H
10 #define E_FONT_H
11
12 struct _E_Font_Default
13 {
14    const char     *text_class;
15    const char     *font;
16    Evas_Font_Size  size;
17 };
18
19 struct _E_Font_Fallback
20 {
21    const char *name;
22 };
23
24 struct _E_Font_Available
25 {
26    const char *name;
27 };
28
29 struct _E_Font_Properties
30 {
31    const char *name;
32    Eina_List *styles;
33 };
34
35 EINTERN int             e_font_init(void);
36 EINTERN int             e_font_shutdown(void);
37 EAPI void               e_font_apply(void);
38 EAPI Eina_List         *e_font_available_list(void);
39 EAPI void               e_font_available_list_free(Eina_List *available);
40 EAPI Eina_Hash         *e_font_available_list_parse(Eina_List *list);
41 EAPI void               e_font_available_hash_free(Eina_Hash *hash);
42 EAPI E_Font_Properties *e_font_fontconfig_name_parse(const char *font);
43 EAPI const char        *e_font_fontconfig_name_get(const char *name, const char *style);
44 EAPI void               e_font_properties_free(E_Font_Properties *efp);
45
46 /* global font fallbacks */
47 EAPI void               e_font_fallback_clear(void);
48 EAPI void               e_font_fallback_append(const char *font);
49 EAPI void               e_font_fallback_prepend(const char *font);
50 EAPI void               e_font_fallback_remove(const char *font);
51 EAPI Eina_List         *e_font_fallback_list(void);
52
53 /* setup edje text classes */
54 EAPI void               e_font_default_set(const char *text_class, const char *font, Evas_Font_Size size);
55 EAPI E_Font_Default    *e_font_default_get(const char *text_class);
56 EAPI void               e_font_default_remove(const char *text_class);
57 EAPI Eina_List         *e_font_default_list(void);
58 EAPI const char        *e_font_default_string_get(const char *text_class, Evas_Font_Size *size_ret);
59
60 #endif
61 #endif