@ -109,6 +109,37 @@ sysinfo_memusage_remove(Instance *inst)
}
}
static void
_memusage_eval_instance_aspect ( Instance * inst )
{
Evas_Coord w , h ;
Evas_Coord sw = 0 , sh = 0 ;
Evas_Object * owner , * ed ;
owner = e_gadget_site_get ( inst - > o_main ) ;
switch ( e_gadget_site_orient_get ( owner ) )
{
case E_GADGET_SITE_ORIENT_HORIZONTAL :
evas_object_geometry_get ( owner , NULL , NULL , NULL , & sh ) ;
sw = sh ;
break ;
case E_GADGET_SITE_ORIENT_VERTICAL :
evas_object_geometry_get ( owner , NULL , NULL , & sw , NULL ) ;
sh = sw ;
break ;
default :
sw = sh = 48 ;
break ;
}
evas_object_resize ( inst - > cfg - > memusage . o_gadget , sw , sh ) ;
ed = elm_layout_edje_get ( inst - > cfg - > memusage . o_gadget ) ;
edje_object_parts_extends_calc ( ed , NULL , NULL , & w , & h ) ;
evas_object_size_hint_aspect_set ( inst - > o_main , EVAS_ASPECT_CONTROL_BOTH , w , h ) ;
}
static void
_memusage_created_cb ( void * data , Evas_Object * obj , void * event_data EINA_UNUSED )
{
@ -122,6 +153,7 @@ _memusage_created_cb(void *data, Evas_Object *obj, void *event_data EINA_UNUSED)
elm_box_pack_end ( inst - > o_main , inst - > cfg - > memusage . o_gadget ) ;
evas_object_show ( inst - > cfg - > memusage . o_gadget ) ;
evas_object_smart_callback_del_full ( obj , " gadget_created " , _memusage_created_cb , data ) ;
_memusage_eval_instance_aspect ( inst ) ;
_memusage_config_updated ( inst ) ;
}
@ -176,7 +208,6 @@ memusage_create(Evas_Object *parent, int *id, E_Gadget_Site_Orient orient EINA_U
* id = inst - > cfg - > id ;
inst - > o_main = elm_box_add ( parent ) ;
E_EXPAND ( inst - > o_main ) ;
evas_object_size_hint_aspect_set ( inst - > o_main , EVAS_ASPECT_CONTROL_BOTH , 1 , 1 ) ;
evas_object_smart_callback_add ( parent , " gadget_created " , _memusage_created_cb , inst ) ;
evas_object_smart_callback_add ( parent , " gadget_removed " , _memusage_removed_cb , inst ) ;
evas_object_show ( inst - > o_main ) ;