Evas: Moved font functions from object_text.c to font_dir.c

Not the best place, but at least better than putting them in object_text.c

SVN revision: 61327
This commit is contained in:
Tom Hacohen 2011-07-13 08:54:49 +00:00
parent 9f2e58e6f0
commit 420d235bff
2 changed files with 154 additions and 153 deletions

View File

@ -975,3 +975,157 @@ evas_object_text_font_string_parse(char *buffer, char dest[14][256])
n++;
return n;
}
EAPI void
evas_font_path_clear(Evas *e)
{
MAGIC_CHECK(e, Evas, MAGIC_EVAS);
return;
MAGIC_CHECK_END();
while (e->font_path)
{
eina_stringshare_del(e->font_path->data);
e->font_path = eina_list_remove(e->font_path, e->font_path->data);
}
}
EAPI void
evas_font_path_append(Evas *e, const char *path)
{
MAGIC_CHECK(e, Evas, MAGIC_EVAS);
return;
MAGIC_CHECK_END();
if (!path) return;
e->font_path = eina_list_append(e->font_path, eina_stringshare_add(path));
}
EAPI void
evas_font_path_prepend(Evas *e, const char *path)
{
MAGIC_CHECK(e, Evas, MAGIC_EVAS);
return;
MAGIC_CHECK_END();
if (!path) return;
e->font_path = eina_list_prepend(e->font_path, eina_stringshare_add(path));
}
EAPI const Eina_List *
evas_font_path_list(const Evas *e)
{
MAGIC_CHECK(e, Evas, MAGIC_EVAS);
return NULL;
MAGIC_CHECK_END();
return e->font_path;
}
static void
evas_font_object_rehint(Evas_Object *obj)
{
if (obj->smart.smart)
{
EINA_INLIST_FOREACH(evas_object_smart_members_get_direct(obj), obj)
evas_font_object_rehint(obj);
}
else
{
if (!strcmp(obj->type, "text"))
_evas_object_text_rehint(obj);
if (!strcmp(obj->type, "textblock"))
_evas_object_textblock_rehint(obj);
}
}
EAPI void
evas_font_hinting_set(Evas *e, Evas_Font_Hinting_Flags hinting)
{
Evas_Layer *lay;
MAGIC_CHECK(e, Evas, MAGIC_EVAS);
return;
MAGIC_CHECK_END();
if (e->hinting == hinting) return;
e->hinting = hinting;
EINA_INLIST_FOREACH(e->layers, lay)
{
Evas_Object *obj;
EINA_INLIST_FOREACH(lay->objects, obj)
evas_font_object_rehint(obj);
}
}
EAPI Evas_Font_Hinting_Flags
evas_font_hinting_get(const Evas *e)
{
MAGIC_CHECK(e, Evas, MAGIC_EVAS);
return EVAS_FONT_HINTING_BYTECODE;
MAGIC_CHECK_END();
return e->hinting;
}
EAPI Eina_Bool
evas_font_hinting_can_hint(const Evas *e, Evas_Font_Hinting_Flags hinting)
{
MAGIC_CHECK(e, Evas, MAGIC_EVAS);
return 0;
MAGIC_CHECK_END();
if (e->engine.func->font_hinting_can_hint)
return e->engine.func->font_hinting_can_hint(e->engine.data.output,
hinting);
return EINA_FALSE;
}
EAPI void
evas_font_cache_flush(Evas *e)
{
MAGIC_CHECK(e, Evas, MAGIC_EVAS);
return;
MAGIC_CHECK_END();
e->engine.func->font_cache_flush(e->engine.data.output);
}
EAPI void
evas_font_cache_set(Evas *e, int size)
{
MAGIC_CHECK(e, Evas, MAGIC_EVAS);
return;
MAGIC_CHECK_END();
if (size < 0) size = 0;
e->engine.func->font_cache_set(e->engine.data.output, size);
}
EAPI int
evas_font_cache_get(const Evas *e)
{
MAGIC_CHECK(e, Evas, MAGIC_EVAS);
return 0;
MAGIC_CHECK_END();
return e->engine.func->font_cache_get(e->engine.data.output);
}
EAPI Eina_List *
evas_font_available_list(const Evas *e)
{
MAGIC_CHECK(e, Evas, MAGIC_EVAS);
return NULL;
MAGIC_CHECK_END();
return evas_font_dir_available_list(e);
}
EAPI void
evas_font_available_list_free(Evas *e, Eina_List *available)
{
MAGIC_CHECK(e, Evas, MAGIC_EVAS);
return;
MAGIC_CHECK_END();
evas_font_dir_available_list_free(available);
}

View File

@ -1226,159 +1226,6 @@ evas_object_text_style_pad_get(const Evas_Object *obj, int *l, int *r, int *t, i
EAPI void
evas_font_path_clear(Evas *e)
{
MAGIC_CHECK(e, Evas, MAGIC_EVAS);
return;
MAGIC_CHECK_END();
while (e->font_path)
{
eina_stringshare_del(e->font_path->data);
e->font_path = eina_list_remove(e->font_path, e->font_path->data);
}
}
EAPI void
evas_font_path_append(Evas *e, const char *path)
{
MAGIC_CHECK(e, Evas, MAGIC_EVAS);
return;
MAGIC_CHECK_END();
if (!path) return;
e->font_path = eina_list_append(e->font_path, eina_stringshare_add(path));
}
EAPI void
evas_font_path_prepend(Evas *e, const char *path)
{
MAGIC_CHECK(e, Evas, MAGIC_EVAS);
return;
MAGIC_CHECK_END();
if (!path) return;
e->font_path = eina_list_prepend(e->font_path, eina_stringshare_add(path));
}
EAPI const Eina_List *
evas_font_path_list(const Evas *e)
{
MAGIC_CHECK(e, Evas, MAGIC_EVAS);
return NULL;
MAGIC_CHECK_END();
return e->font_path;
}
static void
evas_font_object_rehint(Evas_Object *obj)
{
if (obj->smart.smart)
{
EINA_INLIST_FOREACH(evas_object_smart_members_get_direct(obj), obj)
evas_font_object_rehint(obj);
}
else
{
if (!strcmp(obj->type, "text"))
_evas_object_text_rehint(obj);
if (!strcmp(obj->type, "textblock"))
_evas_object_textblock_rehint(obj);
}
}
EAPI void
evas_font_hinting_set(Evas *e, Evas_Font_Hinting_Flags hinting)
{
Evas_Layer *lay;
MAGIC_CHECK(e, Evas, MAGIC_EVAS);
return;
MAGIC_CHECK_END();
if (e->hinting == hinting) return;
e->hinting = hinting;
EINA_INLIST_FOREACH(e->layers, lay)
{
Evas_Object *obj;
EINA_INLIST_FOREACH(lay->objects, obj)
evas_font_object_rehint(obj);
}
}
EAPI Evas_Font_Hinting_Flags
evas_font_hinting_get(const Evas *e)
{
MAGIC_CHECK(e, Evas, MAGIC_EVAS);
return EVAS_FONT_HINTING_BYTECODE;
MAGIC_CHECK_END();
return e->hinting;
}
EAPI Eina_Bool
evas_font_hinting_can_hint(const Evas *e, Evas_Font_Hinting_Flags hinting)
{
MAGIC_CHECK(e, Evas, MAGIC_EVAS);
return 0;
MAGIC_CHECK_END();
if (e->engine.func->font_hinting_can_hint)
return e->engine.func->font_hinting_can_hint(e->engine.data.output,
hinting);
return EINA_FALSE;
}
EAPI void
evas_font_cache_flush(Evas *e)
{
MAGIC_CHECK(e, Evas, MAGIC_EVAS);
return;
MAGIC_CHECK_END();
e->engine.func->font_cache_flush(e->engine.data.output);
}
EAPI void
evas_font_cache_set(Evas *e, int size)
{
MAGIC_CHECK(e, Evas, MAGIC_EVAS);
return;
MAGIC_CHECK_END();
if (size < 0) size = 0;
e->engine.func->font_cache_set(e->engine.data.output, size);
}
EAPI int
evas_font_cache_get(const Evas *e)
{
MAGIC_CHECK(e, Evas, MAGIC_EVAS);
return 0;
MAGIC_CHECK_END();
return e->engine.func->font_cache_get(e->engine.data.output);
}
EAPI Eina_List *
evas_font_available_list(const Evas *e)
{
MAGIC_CHECK(e, Evas, MAGIC_EVAS);
return NULL;
MAGIC_CHECK_END();
return evas_font_dir_available_list(e);
}
EAPI void
evas_font_available_list_free(Evas *e, Eina_List *available)
{
MAGIC_CHECK(e, Evas, MAGIC_EVAS);
return;
MAGIC_CHECK_END();
evas_font_dir_available_list_free(available);
}
EAPI int
evas_string_char_next_get(const char *str, int pos, int *decoded)
{