* make E aware of the existance of gadman as a gadcon. This solve some module load/unload issues

SVN revision: 37575
This commit is contained in:
Davide Andreoli 2008-11-10 15:47:25 +00:00
parent 55d7e03993
commit fa648a9e48
4 changed files with 22 additions and 1 deletions

View File

@ -410,7 +410,7 @@ struct _E_Config_Gadcon_Client
int seq, flags;
} state_info;
const char *style;
int orient;
int orient;
unsigned char autoscroll;
unsigned char resizable;
};

View File

@ -252,6 +252,20 @@ e_gadcon_provider_list(void)
return providers_list;
}
EAPI void
e_gadcon_custom_new(E_Gadcon *gc)
{
if (!gc) return;
gadcons = eina_list_append(gadcons, gc);
}
EAPI void
e_gadcon_custom_del(E_Gadcon *gc)
{
if (!gc) return;
gadcons = eina_list_remove(gadcons, gc);
}
EAPI E_Gadcon *
e_gadcon_swallowed_new(const char *name, int id, Evas_Object *obj, char *swallow_name)
{

View File

@ -190,6 +190,8 @@ EAPI void e_gadcon_provider_register(const E_Gadcon_Client_Class *cc
EAPI void e_gadcon_provider_unregister(const E_Gadcon_Client_Class *cc);
EAPI Eina_List *e_gadcon_provider_list(void);
EAPI E_Gadcon *e_gadcon_swallowed_new(const char *name, int id, Evas_Object *obj, char *swallow_name);
EAPI void e_gadcon_custom_new(E_Gadcon *gc);
EAPI void e_gadcon_custom_del(E_Gadcon *gc);
EAPI void e_gadcon_swallowed_min_size_set(E_Gadcon *gc, Evas_Coord w, Evas_Coord h);
EAPI void e_gadcon_min_size_request_callback_set(E_Gadcon *gc, void (*func) (void *data, E_Gadcon *gc, Evas_Coord w, Evas_Coord h), void *data);
EAPI void e_gadcon_size_request_callback_set(E_Gadcon *gc, void (*func) (void *data, E_Gadcon *gc, Evas_Coord w, Evas_Coord h), void *data);

View File

@ -101,6 +101,9 @@ gadman_shutdown(void)
e_gadcon_unpopulate(Man->gc);
e_gadcon_unpopulate(Man->gc_top);
e_gadcon_custom_del(Man->gc);
e_gadcon_custom_del(Man->gc_top);
/* free gadcons */
e_config->gadcons = eina_list_remove(e_config->gadcons, Man->gc);
e_config->gadcons = eina_list_remove(e_config->gadcons, Man->gc_top);
@ -528,6 +531,8 @@ _gadman_gadcon_new(const char* name, int ontop)
e_config_save_queue();
}
e_gadcon_custom_new(gc);
return gc;
}