forked from enlightenment/efl
parent
792762f2d5
commit
6938a5eb5f
|
@ -148,6 +148,8 @@ extern "C" {
|
|||
/* edje_util.c */
|
||||
EAPI void edje_freeze (void);
|
||||
EAPI void edje_thaw (void);
|
||||
EAPI void edje_fontset_append_set (char *fonts);
|
||||
EAPI const char *edje_fontset_append_get (void);
|
||||
|
||||
/* edje_load.c */
|
||||
EAPI Evas_List *edje_file_collection_list (const char *file);
|
||||
|
|
|
@ -535,7 +535,22 @@ _edje_part_recalc_single(Edje *ed,
|
|||
if (inlined_font) evas_object_text_font_source_set(ep->object, ed->path);
|
||||
else evas_object_text_font_source_set(ep->object, NULL);
|
||||
|
||||
evas_object_text_font_set(ep->object, font, size);
|
||||
if ((_edje_fontset_append) && (font))
|
||||
{
|
||||
char *font2;
|
||||
|
||||
font2 = malloc(strlen(font) + 1 + strlen(_edje_fontset_append) + 1);
|
||||
if (font2)
|
||||
{
|
||||
strcpy(font2, font);
|
||||
strcat(font2, ",");
|
||||
strcat(font2, _edje_fontset_append);
|
||||
evas_object_text_font_set(ep->object, font2, size);
|
||||
free(font2);
|
||||
}
|
||||
}
|
||||
else
|
||||
evas_object_text_font_set(ep->object, font, size);
|
||||
if ((chosen_desc->text.min_x) || (chosen_desc->text.min_y))
|
||||
{
|
||||
int mw, mh;
|
||||
|
|
|
@ -730,6 +730,7 @@ extern Evas_List *_edje_animators;
|
|||
extern Edje_Text_Style _edje_text_styles[EDJE_TEXT_EFFECT_LAST];
|
||||
extern Evas_List *_edje_edjes;
|
||||
|
||||
extern char *_edje_fontset_append;
|
||||
|
||||
void _edje_part_pos_set(Edje *ed, Edje_Real_Part *ep, int mode, double pos);
|
||||
Edje_Part_Description *_edje_part_description_find(Edje *ed, Edje_Real_Part *rp, char *name, double val);
|
||||
|
|
|
@ -502,7 +502,7 @@ _edje_text_recalc_apply(Edje *ed, Edje_Real_Part *ep,
|
|||
Edje_Part_Description *chosen_desc)
|
||||
{
|
||||
char *text;
|
||||
char *font;
|
||||
char *font, *font2 = NULL;
|
||||
int size;
|
||||
Evas_Coord tw, th;
|
||||
Evas_Coord ox, oy, sw, sh;
|
||||
|
@ -529,7 +529,7 @@ _edje_text_recalc_apply(Edje *ed, Edje_Real_Part *ep,
|
|||
if (ep->text.text) text = ep->text.text;
|
||||
if (ep->text.font) font = ep->text.font;
|
||||
if (ep->text.size > 0) size = ep->text.size;
|
||||
|
||||
|
||||
/* check if the font is embedded in the .eet */
|
||||
/* FIXME: we should cache this result */
|
||||
if (ed->file->font_dir)
|
||||
|
@ -551,6 +551,20 @@ _edje_text_recalc_apply(Edje *ed, Edje_Real_Part *ep,
|
|||
}
|
||||
}
|
||||
}
|
||||
|
||||
if ((_edje_fontset_append) && (font))
|
||||
{
|
||||
char *font2;
|
||||
|
||||
font2 = malloc(strlen(font) + 1 + strlen(_edje_fontset_append) + 1);
|
||||
if (font2)
|
||||
{
|
||||
strcpy(font2, font);
|
||||
strcat(font2, ",");
|
||||
strcat(font2, _edje_fontset_append);
|
||||
font = font2;
|
||||
}
|
||||
}
|
||||
|
||||
ox = _edje_text_styles[ep->part->effect].offset.x;
|
||||
oy = _edje_text_styles[ep->part->effect].offset.y;
|
||||
|
@ -726,4 +740,6 @@ _edje_text_recalc_apply(Edje *ed, Edje_Real_Part *ep,
|
|||
|
||||
if (free_text)
|
||||
free(text);
|
||||
if (font2)
|
||||
free(font2);
|
||||
}
|
||||
|
|
|
@ -10,6 +10,7 @@ Evas_Hash *_edje_color_class_member_hash = NULL;
|
|||
Evas_Hash *_edje_text_class_hash = NULL;
|
||||
Evas_Hash *_edje_text_class_member_hash = NULL;
|
||||
|
||||
char *_edje_fontset_append = NULL;
|
||||
|
||||
/************************** API Routines **************************/
|
||||
|
||||
|
@ -39,6 +40,23 @@ edje_thaw(void)
|
|||
edje_object_thaw((Evas_Object *)(l->data));
|
||||
}
|
||||
|
||||
/* FIXDOC: Expand */
|
||||
void
|
||||
edje_fontset_append_set(char *fonts)
|
||||
{
|
||||
if (_edje_fontset_append)
|
||||
free(_edje_fontset_append);
|
||||
_edje_fontset_append = strdup(fonts);
|
||||
}
|
||||
|
||||
/* FIXDOC: Expand */
|
||||
const char *
|
||||
edje_fontset_append_get(void)
|
||||
{
|
||||
return _edje_fontset_append;
|
||||
}
|
||||
|
||||
|
||||
/* FIXDOC: Verify/Expand */
|
||||
/** Get Edje object data
|
||||
* @param obj A valid Evas_Object handle
|
||||
|
|
Loading…
Reference in New Issue