{
unsigned char r, g, b, a;
int x;
- unsigned int text_props;
+ unsigned int text_props_index;
};
struct _Evas_Object_Textgrid_Line
&(o->glyphs_used[glyphs_index]));
}
+static Evas_Text_Props *
+_textprop_from_idx(Evas_Textgrid_Data *o, unsigned int props_index)
+{
+ return &(o->glyphs[props_index >> 8].props[props_index & 0xFF]);
+}
+
+
static void
evas_object_textgrid_textprop_unref(Evas_Textgrid_Data *o, unsigned int props_index)
{
Evas_Text_Props *props;
- props = &(o->glyphs[props_index >> 8].props[props_index & 0xFF]);
+ props = _textprop_from_idx(o, props_index);
if (props->info)
{
}
}
-static Evas_Text_Props *
-evas_object_textgrid_textprop_int_to(Evas_Textgrid_Data *o, int props)
-{
- return &(o->glyphs[props >> 8].props[props & 0xFF]);
-}
-
/* all nice and private */
static void
evas_object_textgrid_init(Evas_Object *eo_obj)
if (r->texts)
{
for (i = 0; i < r->texts_num; i++)
- if (r->texts[i].text_props != 0xFFFFFFFF)
+ if (r->texts[i].text_props_index != 0xFFFFFFFF)
{
- evas_object_textgrid_textprop_unref(o, r->texts[i].text_props);
- r->texts[i].text_props = 0xFFFFFFFF;
+ evas_object_textgrid_textprop_unref(o, r->texts[i].text_props_index);
+ r->texts[i].text_props_index = 0xFFFFFFFF;
}
free(r->texts);
r->texts = NULL;
text_props_index = evas_object_textgrid_textprop_ref(eo_obj, o, codepoint);
- row->texts[row->texts_num - 1].text_props = text_props_index;
+ row->texts[row->texts_num - 1].text_props_index = text_props_index;
row->texts[row->texts_num - 1].x = x;
row->texts[row->texts_num - 1].r = r;
row->texts[row->texts_num - 1].g = g;
for (xx = 0; xx < row->texts_num; xx++)
{
- Evas_Text_Props *props;
+ Evas_Text_Props *props;
- props =
- evas_object_textgrid_textprop_int_to
- (o, row->texts[xx].text_props);
+ props = _textprop_from_idx(o, row->texts[xx].text_props_index);
evas_common_font_draw_prepare(props);
int tx = xp + row->texts[xx].x;
int ty = yp + o->ascent;
- props =
- evas_object_textgrid_textprop_int_to
- (o, row->texts[xx].text_props);
+ props = _textprop_from_idx(o, row->texts[xx].text_props_index);
r = row->texts[xx].r;
g = row->texts[xx].g;
unsigned int props_index;
props_index = (unsigned int) (intptr_t) eina_array_pop(&o->glyphs_cleanup);
- prop = &(o->glyphs[props_index >> 8].props[props_index & 0xFF]);
-
+ prop = _textprop_from_idx(o, props_index);
+
evas_common_text_props_content_nofree_unref(prop);
if (!prop->info)
{
unsigned int props_index;
props_index = (unsigned int) (intptr_t) eina_array_pop(&o->glyphs_cleanup);
- prop = &(o->glyphs[props_index >> 8].props[props_index & 0xFF]);
-
+ prop = _textprop_from_idx(o, props_index);
+
evas_common_text_props_content_nofree_unref(prop);
if (!prop->info)
{