forked from enlightenment/enlightenment
e17: use GADCON_CLIENT_CONFIG_GET, remove old transitional code to remove config items without id
SVN revision: 63125
This commit is contained in:
parent
ca3dd76636
commit
950f9cd729
|
@ -53,7 +53,6 @@ static E_Config_DD *conf_edd = NULL;
|
|||
static E_Config_DD *conf_item_edd = NULL;
|
||||
static Eina_List *clock_instances = NULL;
|
||||
static E_Action *act = NULL;
|
||||
static int uuid = 0;
|
||||
static Ecore_Timer *update_today = NULL;
|
||||
|
||||
static void
|
||||
|
@ -679,21 +678,10 @@ _gc_id_new(E_Gadcon_Client_Class *client_class __UNUSED__)
|
|||
static Config_Item *
|
||||
_conf_item_get(const char *id)
|
||||
{
|
||||
Eina_List *l = NULL;
|
||||
Config_Item *ci = NULL;
|
||||
char buf[128];
|
||||
Config_Item *ci;
|
||||
|
||||
GADCON_CLIENT_CONFIG_GET(Config_Item, clock_config->items, _gadcon_class, id);
|
||||
|
||||
if (!id)
|
||||
{
|
||||
snprintf(buf, sizeof(buf), "%s.%d", _gadcon_class.name, ++uuid);
|
||||
id = buf;
|
||||
}
|
||||
else
|
||||
{
|
||||
uuid++;
|
||||
EINA_LIST_FOREACH(clock_config->items, l, ci)
|
||||
if ((ci->id) && (!strcmp(ci->id, id))) return ci;
|
||||
}
|
||||
ci = E_NEW(Config_Item, 1);
|
||||
ci->id = eina_stringshare_add(id);
|
||||
ci->weekend.start = 6;
|
||||
|
|
|
@ -115,8 +115,6 @@ static Eina_Bool _ibar_cb_config_icons(void *data, int ev_type, void *ev);
|
|||
static E_Config_DD *conf_edd = NULL;
|
||||
static E_Config_DD *conf_item_edd = NULL;
|
||||
|
||||
static int uuid = 0;
|
||||
|
||||
Config *ibar_config = NULL;
|
||||
|
||||
static E_Gadcon_Client *
|
||||
|
@ -436,27 +434,9 @@ static Config_Item *
|
|||
_ibar_config_item_get(const char *id)
|
||||
{
|
||||
Config_Item *ci;
|
||||
char buf[128];
|
||||
|
||||
if (!id)
|
||||
{
|
||||
snprintf(buf, sizeof(buf), "%s.%d", _gadcon_class.name, ++uuid);
|
||||
id = buf;
|
||||
}
|
||||
else
|
||||
{
|
||||
const Eina_List *l;
|
||||
GADCON_CLIENT_CONFIG_GET(Config_Item, ibar_config->items, _gadcon_class, id);
|
||||
|
||||
/* Find old config, or reuse supplied id */
|
||||
EINA_LIST_FOREACH(ibar_config->items, l, ci)
|
||||
{
|
||||
if ((ci->id) && (!strcmp(ci->id, id)))
|
||||
{
|
||||
if (!ci->dir) ci->dir = eina_stringshare_add("default");
|
||||
return ci;
|
||||
}
|
||||
}
|
||||
}
|
||||
ci = E_NEW(Config_Item, 1);
|
||||
ci->id = eina_stringshare_add(id);
|
||||
ci->dir = eina_stringshare_add("default");
|
||||
|
@ -1205,57 +1185,6 @@ e_modapi_init(E_Module *m)
|
|||
ci->eap_label = 0;
|
||||
ibar_config->items = eina_list_append(ibar_config->items, ci);
|
||||
}
|
||||
else
|
||||
{
|
||||
Eina_List *removes = NULL;
|
||||
const Eina_List *l;
|
||||
Config_Item *ci;
|
||||
|
||||
EINA_LIST_FOREACH(ibar_config->items, l, ci)
|
||||
{
|
||||
if (!ci->id)
|
||||
removes = eina_list_append(removes, ci);
|
||||
else if (!ci->dir)
|
||||
removes = eina_list_append(removes, ci);
|
||||
else
|
||||
{
|
||||
const Eina_List *ll;
|
||||
Config_Item *ci2;
|
||||
|
||||
EINA_LIST_FOREACH(l->next, ll, ci2)
|
||||
{
|
||||
if ((ci2->id) && (!strcmp(ci->id, ci2->id)))
|
||||
{
|
||||
removes = eina_list_append(removes, ci);
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
EINA_LIST_FREE(removes, ci)
|
||||
{
|
||||
ibar_config->items = eina_list_remove(ibar_config->items, ci);
|
||||
if (ci->id) eina_stringshare_del(ci->id);
|
||||
if (ci->dir) eina_stringshare_del(ci->dir);
|
||||
E_FREE(ci);
|
||||
}
|
||||
EINA_LIST_FOREACH(ibar_config->items, l, ci)
|
||||
{
|
||||
if (ci->id)
|
||||
{
|
||||
const char *p;
|
||||
|
||||
p = strrchr(ci->id, '.');
|
||||
if (p)
|
||||
{
|
||||
int id;
|
||||
|
||||
id = atoi(p + 1);
|
||||
if (id > uuid) uuid = id;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
ibar_config->module = m;
|
||||
|
||||
|
|
|
@ -117,8 +117,6 @@ static Config_Item *_ibox_config_item_get(const char *id);
|
|||
static E_Config_DD *conf_edd = NULL;
|
||||
static E_Config_DD *conf_item_edd = NULL;
|
||||
|
||||
static int uuid = 0;
|
||||
|
||||
Config *ibox_config = NULL;
|
||||
|
||||
static E_Gadcon_Client *
|
||||
|
@ -1229,25 +1227,10 @@ _ibox_cb_event_desk_show(void *data __UNUSED__, int type __UNUSED__, void *event
|
|||
static Config_Item *
|
||||
_ibox_config_item_get(const char *id)
|
||||
{
|
||||
Eina_List *l;
|
||||
Config_Item *ci;
|
||||
char buf[128];
|
||||
|
||||
if (!id)
|
||||
{
|
||||
snprintf(buf, sizeof(buf), "%s.%d", _gadcon_class.name, ++uuid);
|
||||
id = buf;
|
||||
}
|
||||
else
|
||||
{
|
||||
/* Find old config */
|
||||
for (l = ibox_config->items; l; l = l->next)
|
||||
{
|
||||
ci = l->data;
|
||||
if ((ci->id) && (!strcmp(ci->id, id)))
|
||||
return ci;
|
||||
}
|
||||
}
|
||||
GADCON_CLIENT_CONFIG_GET(Config_Item, ibox_config->items, _gadcon_class, id);
|
||||
|
||||
ci = E_NEW(Config_Item, 1);
|
||||
ci->id = eina_stringshare_add(id);
|
||||
ci->show_label = 0;
|
||||
|
@ -1343,56 +1326,6 @@ e_modapi_init(E_Module *m)
|
|||
ci->icon_label = 0;
|
||||
ibox_config->items = eina_list_append(ibox_config->items, ci);
|
||||
}
|
||||
else
|
||||
{
|
||||
Eina_List *removes = NULL;
|
||||
Eina_List *l;
|
||||
|
||||
for (l = ibox_config->items; l; l = l->next)
|
||||
{
|
||||
Config_Item *ci = l->data;
|
||||
if (!ci->id)
|
||||
removes = eina_list_append(removes, ci);
|
||||
else
|
||||
{
|
||||
Eina_List *ll;
|
||||
|
||||
for (ll = l->next; ll; ll = ll->next)
|
||||
{
|
||||
Config_Item *ci2 = ll->data;
|
||||
if ((ci2->id) && (!strcmp(ci->id, ci2->id)))
|
||||
{
|
||||
removes = eina_list_append(removes, ci);
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
while (removes)
|
||||
{
|
||||
Config_Item *ci = removes->data;
|
||||
removes = eina_list_remove_list(removes, removes);
|
||||
ibox_config->items = eina_list_remove(ibox_config->items, ci);
|
||||
if (ci->id) eina_stringshare_del(ci->id);
|
||||
free(ci);
|
||||
}
|
||||
for (l = ibox_config->items; l; l = l->next)
|
||||
{
|
||||
Config_Item *ci = l->data;
|
||||
if (ci->id)
|
||||
{
|
||||
const char *p;
|
||||
p = strrchr(ci->id, '.');
|
||||
if (p)
|
||||
{
|
||||
int id;
|
||||
|
||||
id = atoi(p + 1);
|
||||
if (id > uuid) uuid = id;
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
ibox_config->module = m;
|
||||
|
||||
|
|
Loading…
Reference in New Issue