diff --git a/src/bin/e_config.c b/src/bin/e_config.c index 5c03788cf..8e21d3d88 100644 --- a/src/bin/e_config.c +++ b/src/bin/e_config.c @@ -1120,9 +1120,9 @@ e_config_init(void) CFG_GADCON_CLIENT("start", "default", 800, 32, 0, NULL, 0, 0); CFG_GADCON_CLIENT("pager", "default", 800, 120, - 32, "inset", 0, 0); + 32, NULL, 0, 0); CFG_GADCON_CLIENT("ibar", "default", 800, 200, - 400 - (16 / 2), "inset", 1, 0); + 400 - (16 / 2), NULL, 1, 0); CFG_GADCON_CLIENT("temperature", "default", 800, 32, 800 - (5 * 32), NULL, 0, 0); CFG_GADCON_CLIENT("cpufreq", "default", 800, 32, @@ -1132,25 +1132,25 @@ e_config_init(void) CFG_GADCON_CLIENT("clock", "default", 800, 32, 800 - (2 * 32), NULL, 0, 0); CFG_GADCON_CLIENT("ibox", "default", 800, 200, - 400 - (1 * 32), "inset", 1, 0); + 400 - (1 * 32), NULL, 1, 0); /* additional shelves for up to 3 more heads by default */ CFG_GADCON("shelf", "1"); CFG_GADCON_CLIENT("pager", "default2", 800, 120, - 0, "inset", 0, 0); + 0, NULL, 0, 0); CFG_GADCON_CLIENT("ibox", "default", 800, 200, - 400 - (1 * 32), "inset", 1, 0); + 400 - (1 * 32), NULL, 1, 0); CFG_GADCON("shelf", "2"); CFG_GADCON_CLIENT("pager", "default3", 800, 120, - 0, "inset", 0, 0); + 0, NULL, 0, 0); CFG_GADCON_CLIENT("ibox", "default", 800, 200, - 400 - (1 * 32), "inset", 1, 0); + 400 - (1 * 32), NULL, 1, 0); CFG_GADCON("shelf", "3"); CFG_GADCON_CLIENT("pager", "default4", 800, 120, - 0, "inset", 0, 0); + 0, NULL, 0, 0); CFG_GADCON_CLIENT("ibox", "default", 800, 200, - 400 - (1 * 32), "inset", 1, 0); + 400 - (1 * 32), NULL, 1, 0); } IFCFGEND; diff --git a/src/bin/e_gadcon.c b/src/bin/e_gadcon.c index f00bbe9b2..b8582c5a9 100644 --- a/src/bin/e_gadcon.c +++ b/src/bin/e_gadcon.c @@ -228,8 +228,15 @@ e_gadcon_populate(E_Gadcon *gc) { E_Gadcon_Client *gcc; - gcc = cc->func.init(gc, cf_gcc->name, cf_gcc->id, + if(!cf_gcc->style) + { + gcc = cc->func.init(gc, cf_gcc->name, cf_gcc->id, + cc->default_style); + } + else + gcc = cc->func.init(gc, cf_gcc->name, cf_gcc->id, cf_gcc->style); + if (gcc) { gcc->client_class = cc; @@ -866,7 +873,7 @@ _e_gadcon_client_cb_menu_style_plain(void *data, E_Menu *m, E_Menu_Item *mi) gcc = data; gc = gcc->gadcon; if (gcc->style) evas_stringshare_del(gcc->style); - gcc->style = NULL; + gcc->style = evas_stringshare_add(E_GADCON_CLIENT_STYLE_PLAIN); _e_gadcon_client_save(gcc); e_gadcon_unpopulate(gc); e_gadcon_populate(gc); @@ -881,7 +888,7 @@ _e_gadcon_client_cb_menu_style_inset(void *data, E_Menu *m, E_Menu_Item *mi) gcc = data; gc = gcc->gadcon; if (gcc->style) evas_stringshare_del(gcc->style); - gcc->style = evas_stringshare_add("inset"); + gcc->style = evas_stringshare_add(E_GADCON_CLIENT_STYLE_INSET); _e_gadcon_client_save(gcc); e_gadcon_unpopulate(gc); e_gadcon_populate(gc); @@ -990,7 +997,8 @@ e_gadcon_client_util_menu_items_append(E_Gadcon_Client *gcc, E_Menu *menu, int f e_util_menu_item_edje_icon_set(mi, "enlightenment/plain"); e_menu_item_radio_group_set(mi, 1); e_menu_item_radio_set(mi, 1); - if (!gcc->style) e_menu_item_toggle_set(mi, 1); + if ((gcc->style) && (!strcmp(gcc->style, E_GADCON_CLIENT_STYLE_PLAIN))) + e_menu_item_toggle_set(mi, 1); e_menu_item_callback_set(mi, _e_gadcon_client_cb_menu_style_plain, gcc); mi = e_menu_item_new(mn); @@ -998,7 +1006,7 @@ e_gadcon_client_util_menu_items_append(E_Gadcon_Client *gcc, E_Menu *menu, int f e_util_menu_item_edje_icon_set(mi, "enlightenment/plain"); e_menu_item_radio_group_set(mi, 1); e_menu_item_radio_set(mi, 1); - if ((gcc->style) && (!strcmp(gcc->style, "inset"))) + if ((gcc->style) && (!strcmp(gcc->style, E_GADCON_CLIENT_STYLE_INSET))) e_menu_item_toggle_set(mi, 1); e_menu_item_callback_set(mi, _e_gadcon_client_cb_menu_style_inset, gcc); diff --git a/src/bin/e_gadcon.h b/src/bin/e_gadcon.h index fa625e6fc..9854215e2 100644 --- a/src/bin/e_gadcon.h +++ b/src/bin/e_gadcon.h @@ -29,6 +29,9 @@ typedef enum _E_Gadcon_Orient E_GADCON_ORIENT_CORNER_RB } E_Gadcon_Orient; +#define E_GADCON_CLIENT_STYLE_PLAIN "plain" +#define E_GADCON_CLIENT_STYLE_INSET "inset" + typedef struct _E_Gadcon E_Gadcon; typedef struct _E_Gadcon_Client E_Gadcon_Client; typedef struct _E_Gadcon_Client_Class E_Gadcon_Client_Class; @@ -93,6 +96,7 @@ struct _E_Gadcon_Client_Class Evas_Object *(*icon) (Evas *evas); /* All members below are part of version 2 */ } func; + char *default_style; }; struct _E_Gadcon_Client