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 E_API void e_font_apply(void); 38 E_API Eina_List *e_font_available_list(void); 39 E_API void e_font_available_list_free(Eina_List *available); 40 E_API Eina_Hash *e_font_available_list_parse(Eina_List *list); 41 E_API void e_font_available_hash_free(Eina_Hash *hash); 42 E_API E_Font_Properties *e_font_fontconfig_name_parse(const char *font); 43 E_API const char *e_font_fontconfig_name_get(const char *name, const char *style); 44 E_API void e_font_properties_free(E_Font_Properties *efp); 45 46 /* global font fallbacks */ 47 E_API void e_font_fallback_clear(void); 48 E_API void e_font_fallback_append(const char *font); 49 E_API void e_font_fallback_prepend(const char *font); 50 E_API void e_font_fallback_remove(const char *font); 51 E_API Eina_List *e_font_fallback_list(void); 52 53 /* setup edje text classes */ 54 E_API void e_font_default_set(const char *text_class, const char *font, Evas_Font_Size size); 55 E_API E_Font_Default *e_font_default_get(const char *text_class); 56 E_API void e_font_default_remove(const char *text_class); 57 E_API Eina_List *e_font_default_list(void); 58 E_API const char *e_font_default_string_get(const char *text_class, Evas_Font_Size *size_ret); 59 60 #endif 61 #endif 62