Edje_Edit: support use_alternate_font_metrics setters and getters

This commit is contained in:
Vitalii Vorobiov 2016-02-24 11:45:49 +00:00
parent e4cb6ff6fe
commit 0cb676395d
2 changed files with 53 additions and 6 deletions

View File

@ -1792,6 +1792,29 @@ EAPI Eina_Bool edje_edit_part_repeat_events_get(Evas_Object *obj, const char *pa
*/
EAPI Eina_Bool edje_edit_part_repeat_events_set(Evas_Object *obj, const char *part, Eina_Bool repeat_events);
/** Get use_alternate_font_metrics variable for part.
*
* @param obj Object being edited.
* @param part Part to get use_alternate_font_metrics for text or textblock part is enabled.
*
* @return @c EINA_TRUE if use_alternate_font_metrics, @c EINA_FALSE otherwise
* @since 1.18
*/
EAPI Eina_Bool
edje_edit_part_use_alternate_font_metrics_get(Evas_Object *obj, const char *part);
/** Set use_alternate_font_metrics variable for part.
*
* @param obj Object being edited.
* @param part Part to set use_alternate_font_metrics for text or textblock part is enabled.
* @param use EINA_TRUE if use_alternate_font_metrics, @c EINA_FALSE otherwise
*
* @return @c EINA_TRUE in case of success, @c EINA_FALSE otherwise.
* @since 1.18
*/
EAPI Eina_Bool
edje_edit_part_use_alternate_font_metrics_set(Evas_Object *obj, const char *part, Eina_Bool use);
/** Get multiline for part.
*
* @param obj Object being edited.

View File

@ -3782,6 +3782,32 @@ edje_edit_part_repeat_events_set(Evas_Object *obj, const char *part, Eina_Bool r
return EINA_TRUE;
}
EAPI Eina_Bool
edje_edit_part_use_alternate_font_metrics_get(Evas_Object *obj, const char *part)
{
GET_RP_OR_RETURN(0);
if ((rp->part->type != EDJE_PART_TYPE_TEXT) &&
(rp->part->type != EDJE_PART_TYPE_TEXTBLOCK))
return EINA_FALSE;
return rp->part->use_alternate_font_metrics;
}
EAPI Eina_Bool
edje_edit_part_use_alternate_font_metrics_set(Evas_Object *obj, const char *part, Eina_Bool use)
{
GET_RP_OR_RETURN(EINA_FALSE);
if ((!rp->object) ||
((rp->part->type != EDJE_PART_TYPE_TEXT) &&
(rp->part->type != EDJE_PART_TYPE_TEXTBLOCK)))
return EINA_FALSE;
rp->part->use_alternate_font_metrics = use;
return EINA_TRUE;
}
EAPI Eina_Bool
edje_edit_part_multiline_get(Evas_Object *obj, const char *part)
{
@ -12311,12 +12337,10 @@ _edje_generate_source_of_part(Evas_Object *obj, Edje_Part *ep, Eina_Strbuf *buf)
if (rp->part->access)
BUF_APPEND(I4 "access: 1;\n");
//TODO Support use_alternate_font_metrics
if ((str = _edje_part_clip_to_get(ed, rp)))
{
BUF_APPENDF(I4 "clip_to: \"%s\";\n", str);
edje_edit_string_free(str);
}
if ((rp->part->type == EDJE_PART_TYPE_TEXTBLOCK) ||
(rp->part->type == EDJE_PART_TYPE_TEXT))
if (rp->part->use_alternate_font_metrics)
BUF_APPENDF(I4 "use_alternate_font_metrics: 1;\n");
if ((rp->part->type == EDJE_PART_TYPE_TEXTBLOCK) ||
(rp->part->type == EDJE_PART_TYPE_GROUP))