Add function for getting grid name and save grid name during _grid_add
Signed-off-by: Chris Michael <devilhorns@comcast.net>
This commit is contained in:
parent
73f443cffc
commit
0e79b5ce2c
|
@ -40,6 +40,10 @@ struct _Grid
|
|||
|
||||
Evas_Object *o_event;
|
||||
|
||||
const char *name;
|
||||
|
||||
Eina_Bool noreqsize : 1;
|
||||
|
||||
Ecore_Timer *delayed_size_timer;
|
||||
};
|
||||
|
||||
|
@ -499,14 +503,15 @@ _smart_size(Evas_Object *obj, int w, int h, Eina_Bool force)
|
|||
|
||||
evas_event_freeze(sd->evas);
|
||||
evas_object_textgrid_size_set(sd->grid.obj, w, h);
|
||||
|
||||
sd->grid.w = w;
|
||||
sd->grid.h = h;
|
||||
|
||||
evas_object_resize(sd->cursor.obj, sd->font.chw, sd->font.chh);
|
||||
|
||||
evas_object_size_hint_min_set(obj, sd->font.chw, sd->font.chh);
|
||||
evas_object_size_hint_request_set(obj, sd->font.chw * sd->grid.w,
|
||||
sd->font.chh * sd->grid.h);
|
||||
if (!sd->noreqsize)
|
||||
evas_object_size_hint_request_set(obj, sd->font.chw * sd->grid.w,
|
||||
sd->font.chh * sd->grid.h);
|
||||
|
||||
_smart_calculate(obj);
|
||||
_smart_apply(obj);
|
||||
|
@ -570,6 +575,8 @@ _smart_cb_focus_in(void *data, Evas *evas EINA_UNUSED, Evas_Object *obj EINA_UNU
|
|||
if (!(sd = evas_object_smart_data_get(data))) return;
|
||||
|
||||
edje_object_signal_emit(sd->cursor.obj, "focus,in", "express");
|
||||
evas_object_show(sd->cursor.obj);
|
||||
|
||||
/* TODO: finish */
|
||||
}
|
||||
|
||||
|
@ -673,6 +680,7 @@ _smart_del(Evas_Object *obj)
|
|||
/* try to get smart data */
|
||||
if (!(sd = evas_object_smart_data_get(obj))) return;
|
||||
|
||||
if (sd->name) eina_stringshare_del(sd->name);
|
||||
if (sd->delayed_size_timer) ecore_timer_del(sd->delayed_size_timer);
|
||||
if (sd->cursor.obj) evas_object_del(sd->cursor.obj);
|
||||
if (sd->o_event) evas_object_del(sd->o_event);
|
||||
|
@ -740,6 +748,9 @@ _grid_config_set(Grid *sd)
|
|||
{
|
||||
Evas_Coord w = 2, h = 2;
|
||||
|
||||
if (sd->font.name) eina_stringshare_del(sd->font.name);
|
||||
sd->font.name = NULL;
|
||||
|
||||
if (_ex_cfg->font.bitmap)
|
||||
{
|
||||
char buff[PATH_MAX];
|
||||
|
@ -781,7 +792,7 @@ _grid_config_set(Grid *sd)
|
|||
}
|
||||
|
||||
Evas_Object *
|
||||
_grid_add(Evas_Object *parent)
|
||||
_grid_add(Evas_Object *parent, const char *name)
|
||||
{
|
||||
Evas_Object *obj;
|
||||
Grid *sd;
|
||||
|
@ -795,6 +806,8 @@ _grid_add(Evas_Object *parent)
|
|||
obj = evas_object_smart_add(evas, _smart);
|
||||
if (!(sd = evas_object_smart_data_get(obj))) return obj;
|
||||
|
||||
sd->name = eina_stringshare_add(name);
|
||||
|
||||
_grid_config_set(sd);
|
||||
|
||||
_smart_size(obj, 80, 24, EINA_FALSE);
|
||||
|
@ -880,3 +893,13 @@ _grid_colors_init(Evas_Object *obj, Evas_Object *bg)
|
|||
}
|
||||
}
|
||||
}
|
||||
|
||||
const char *
|
||||
_grid_name_get(Evas_Object *obj)
|
||||
{
|
||||
Grid *sd;
|
||||
|
||||
/* try to get smart data */
|
||||
if (!(sd = evas_object_smart_data_get(obj))) return NULL;
|
||||
return sd->name;
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue