From: Enlightenment C. <no...@cv...> - 2006-05-08 11:48:30
|
Enlightenment CVS committal Author : sndev Project : e17 Module : apps/e Dir : e17/apps/e/src/bin Modified Files: e_widget_radio.c Log Message: It seems that if all the radios in the group are toggled off, then it is not possible to toggle on any radio in that group :-\. This happens because the variable toggle==0 when all the radios are toggled off. Consequently the "toggle on" code is not reachable. If the toggle variable is removed, then everything seems to work fine. =================================================================== RCS file: /cvs/e/e17/apps/e/src/bin/e_widget_radio.c,v retrieving revision 1.11 retrieving revision 1.12 diff -u -3 -r1.11 -r1.12 --- e_widget_radio.c 7 May 2006 09:49:37 -0000 1.11 +++ e_widget_radio.c 8 May 2006 11:47:20 -0000 1.12 @@ -90,23 +90,23 @@ if (toggle) { Evas_List *l; - int toggled = 0; + //int toggled = 0; for (l = wd->group->radios; l; l = l->next) { - wd = e_widget_data_get(l->data); + //wd = e_widget_data_get(l->data); if (l->data != obj) { wd = e_widget_data_get(l->data); if (wd->valnum == *(wd->group->valptr)) { edje_object_signal_emit(wd->o_radio, "toggle_off", ""); - toggled = 1; + //toggled = 1; break; } } } - if (!toggled) return; + //if (!toggled) return; wd = e_widget_data_get(obj); *(wd->group->valptr) = wd->valnum; edje_object_signal_emit(wd->o_radio, "toggle_on", ""); |
From: Enlightenment C. <no...@cv...> - 2006-05-08 20:25:26
|
Enlightenment CVS committal Author : sndev Project : e17 Module : apps/e Dir : e17/apps/e/src/bin Modified Files: e_int_config_keybindings.c Log Message: * some code cleanup * some bugfixes. =================================================================== RCS file: /cvs/e/e17/apps/e/src/bin/e_int_config_keybindings.c,v retrieving revision 1.20 retrieving revision 1.21 diff -u -3 -r1.20 -r1.21 --- e_int_config_keybindings.c 6 May 2006 09:35:05 -0000 1.20 +++ e_int_config_keybindings.c 8 May 2006 20:24:18 -0000 1.21 @@ -84,7 +84,6 @@ { E_Config_Dialog *cfd; - ACTION_GROUP *current_actg; ACTION2 *current_act; int current_act_selector; @@ -208,21 +207,24 @@ act = l2->data; if (!strcmp(act->action_name, action_name)) { - actg->actions = evas_list_remove(actg->actions, l2); + actg->actions = evas_list_remove_list(actg->actions, l2); if (act->action_name) evas_stringshare_del(act->action_name); if (act->action_cmd) evas_stringshare_del(act->action_cmd); if (act->action_params) evas_stringshare_del(act->action_params); - for (l3 = act->key_bindings; l3; l3 = l3->next) + while (act->key_bindings) { - E_Config_Binding_Key *eb = l3->data; + E_Config_Binding_Key *eb = act->key_bindings->data; if (eb->key) evas_stringshare_del(eb->key); if (eb->action) evas_stringshare_del(eb->action); if (eb->params) evas_stringshare_del(eb->params); E_FREE(eb); - } + act->key_bindings = evas_list_remove_list(act->key_bindings, + act->key_bindings); + + } E_FREE(act); break; } @@ -230,7 +232,7 @@ if (evas_list_count(actg->actions) == 0) { - action_group_list = evas_list_remove(action_group_list, l); + action_group_list = evas_list_remove_list(action_group_list, l); if (actg->action_group) evas_stringshare_del(actg->action_group); E_FREE(actg); } @@ -259,14 +261,25 @@ if (act->action_cmd) evas_stringshare_del(act->action_cmd); if (act->action_params) evas_stringshare_del(act->action_params); - for (l3 = act->key_bindings; l3; l3 = l3->next) + while (act->key_bindings) + { + E_Config_Binding_Key *eb = act->key_bindings->data; + if (eb->key) evas_stringshare_del(eb->key); + if (eb->action) evas_stringshare_del(eb->action); + if (eb->params) evas_stringshare_del(eb->params); + E_FREE(eb); + + act->key_bindings = evas_list_remove_list(act->key_bindings, + act->key_bindings); + } + /*for (l3 = act->key_bindings; l3; l3 = l3->next) { E_Config_Binding_Key *eb = l3->data; if (eb->key) evas_stringshare_del(eb->key); if (eb->action) evas_stringshare_del(eb->action); if (eb->params) evas_stringshare_del(eb->params); E_FREE(eb); - } + }*/ E_FREE(act); @@ -472,7 +485,7 @@ Evas_List *l, *l2, *l3; if (!cfdata) return 0; - if (cfdata->current_actg && cfdata->current_act) + if (cfdata->current_act) if (_e_keybinding_keybind_cb_auto_apply(cfdata) != 1) { //TODO: message box which should ask if we really should proceed. @@ -757,7 +770,7 @@ if (!(cfdata = data)) return; - if (cfdata->current_actg && cfdata->current_act) + if (cfdata->current_act) if (_e_keybinding_keybind_cb_auto_apply(cfdata) != 1) { //TODO: message box which should ask if we really should proceed. @@ -765,7 +778,7 @@ //_keybind_delete_keybinding(cfdata); } - if (!cfdata->current_actg && !cfdata->current_act) + if (!cfdata->current_act) return; indx = e_widget_ilist_selected_get(cfdata->gui.binding_ilist); @@ -794,7 +807,7 @@ if (!cfdata) return; - if (cfdata->current_actg) + if (cfdata->current_act) if (_e_keybinding_keybind_cb_auto_apply(cfdata) != 1) { //TODO: message box which should ask if we really should proceed. @@ -816,7 +829,6 @@ if (!strcmp(act->action_name, label)) { - cfdata->current_actg = actg; cfdata->current_act = act; done = 1; } @@ -824,9 +836,7 @@ } _e_keybinding_update_binding_list(cfdata); - //FIXME:is this is really needed ? _e_keybinding_update_add_delete_buttons(cfdata); - _e_keybinding_update_action_ilist_cur_selection_icon(cfdata); #if 0 @@ -842,10 +852,10 @@ { if (!cfdata) return; - cfdata->current_actg = NULL; cfdata->current_act = NULL; cfdata->current_act_selector = -1; + cfdata->binding_context = -1; E_FREE(cfdata->key_action); cfdata->key_action = strdup(""); E_FREE(cfdata->key_params); @@ -865,7 +875,7 @@ e_widget_disabled_set(cfdata->gui.btn_add, 1); e_widget_disabled_set(cfdata->gui.btn_del, 1); - if (!cfdata->current_actg && !cfdata->current_act) return; + if (!cfdata->current_act) return; e_widget_disabled_set(cfdata->gui.btn_add, 0); @@ -880,7 +890,7 @@ if (!cfdata) return; - if ((!cfdata->current_actg && !cfdata->current_act) || cfdata->current_act_selector < 0) + if (!cfdata->current_act || cfdata->current_act_selector < 0) { e_widget_disabled_set(cfdata->gui.btn_keybind, 1); e_widget_button_label_set(cfdata->gui.btn_keybind, BTN_ASSIGN_KEYBINDING_TEXT); @@ -1019,7 +1029,7 @@ e_widget_disabled_set(cfdata->gui.key_action, 1); e_widget_disabled_set(cfdata->gui.key_params, 1); - if ((!cfdata->current_actg && !cfdata->current_act)) return; + if (!cfdata->current_act) return; if (!(eb = evas_list_nth(cfdata->current_act->key_bindings, cfdata->current_act_selector))) return; @@ -1046,7 +1056,7 @@ E_Config_Dialog_Data *cfdata = data; if (!cfdata) return; - if (!cfdata->current_actg && !cfdata->current_act && cfdata->current_act_selector < 0) + if (!cfdata->current_act && cfdata->current_act_selector < 0) return; _e_keybinding_keybind_delete_keybinding(cfdata); @@ -1055,7 +1065,6 @@ e_widget_ilist_selected_set(cfdata->gui.binding_ilist, cfdata->current_act_selector); e_widget_ilist_go(cfdata->gui.binding_ilist); - //FIXME: is these really needed ? check what is going on when an Item from list is selected. _e_keybinding_update_keybinding_button(cfdata); _e_keybinding_update_add_delete_buttons(cfdata); _e_keybinding_update_context_radios(cfdata); @@ -1073,7 +1082,7 @@ E_Config_Binding_Key *eb; if (!cfdata) return; - if (!cfdata->current_actg && !cfdata->current_act && cfdata->current_act_selector < 0) + if (!cfdata->current_act && cfdata->current_act_selector < 0) return; eb = evas_list_nth(cfdata->current_act->key_bindings, cfdata->current_act_selector); @@ -1187,7 +1196,7 @@ char buf[4096]; Evas_List *l; - if (!cfdata || (!cfdata->current_actg && !cfdata->current_act)) return; + if (!cfdata || !cfdata->current_act) return; e_widget_ilist_clear(cfdata->gui.binding_ilist); @@ -1203,7 +1212,6 @@ free(b); e_widget_ilist_append(cfdata->gui.binding_ilist, NULL, buf, NULL, NULL, NULL); } - //FIXME: is these really needed ? Should the last two rows be there ? _e_keybinding_update_keybinding_button(cfdata); _e_keybinding_update_add_delete_buttons(cfdata); _e_keybinding_update_context_radios(cfdata); @@ -1223,7 +1231,7 @@ E_Config_Dialog_Data *cfdata = data; if (!cfdata) return; - if (!cfdata->current_actg && !cfdata->current_act) return; + if (!cfdata->current_act) return; if (_e_keybinding_keybind_cb_auto_apply(cfdata) != 1) { @@ -1250,7 +1258,6 @@ e_widget_ilist_selected_set(cfdata->gui.binding_ilist, cfdata->current_act_selector); e_widget_ilist_go(cfdata->gui.binding_ilist); - //FIXME: is these really needed ? _e_keybinding_update_keybinding_button(cfdata); _e_keybinding_update_add_delete_buttons(cfdata); _e_keybinding_update_context_radios(cfdata); @@ -1267,8 +1274,7 @@ E_Config_Binding_Key *eb; if (!cfdata) return 0; - if ((!cfdata->current_actg && !cfdata->current_act) || - cfdata->current_act_selector < 0) return 1; + if (!cfdata->current_act || cfdata->current_act_selector < 0) return 1; eb = evas_list_nth(cfdata->current_act->key_bindings, cfdata->current_act_selector); if (!eb) return 0; @@ -1368,8 +1374,7 @@ ; else { - if (cfdata && (cfdata->current_actg && cfdata->current_act) && - cfdata->current_act_selector >= 0) + if (cfdata && cfdata->current_act && cfdata->current_act_selector >= 0) { Evas_List *l, *l2, *l3; int found; |
From: Enlightenment C. <no...@cv...> - 2006-05-12 12:27:08
|
Enlightenment CVS committal Author : sndev Project : e17 Module : apps/e Dir : e17/apps/e/src/bin Modified Files: e_int_config_keybindings.c Log Message: -- nothing new. =================================================================== RCS file: /cvs/e/e17/apps/e/src/bin/e_int_config_keybindings.c,v retrieving revision 1.22 retrieving revision 1.23 diff -u -3 -r1.22 -r1.23 --- e_int_config_keybindings.c 11 May 2006 14:09:10 -0000 1.22 +++ e_int_config_keybindings.c 12 May 2006 12:25:55 -0000 1.23 @@ -589,22 +589,6 @@ act->action_name, NULL, NULL, NULL); } } - /*for (l = cfdata->key_bindings; l; l = l->next) - { - Evas_Object *ic; - E_Config_KeyBind *eckb; - - eckb = l->data; - ic = edje_object_add(evas); - if (eckb && eckb->bk_list) - e_util_edje_icon_set(ic, ILIST_ICON_WITH_KEYBIND); - else - e_util_edje_icon_set(ic, ILIST_ICON_WITHOUT_KEYBIND); - - e_widget_ilist_append(cfdata->gui.action_ilist, ic, - _(actions_predefined_names[eckb->acn].action_name), - NULL, NULL, NULL); - }*/ e_widget_min_size_set(cfdata->gui.action_ilist, 250, 330); e_widget_ilist_go(cfdata->gui.action_ilist); } @@ -1062,8 +1046,8 @@ _e_keybinding_keybind_delete_keybinding(cfdata); _e_keybinding_update_binding_list(cfdata); - e_widget_ilist_selected_set(cfdata->gui.binding_ilist, cfdata->current_act_selector); e_widget_ilist_go(cfdata->gui.binding_ilist); + e_widget_ilist_selected_set(cfdata->gui.binding_ilist, cfdata->current_act_selector); _e_keybinding_update_keybinding_button(cfdata); _e_keybinding_update_add_delete_buttons(cfdata); @@ -1220,8 +1204,8 @@ _e_keybinding_update_action_ilist_cur_selection_icon(cfdata); _e_keybinding_update_binding_ilist_cur_selection_icon(cfdata); - e_widget_ilist_selected_set(cfdata->gui.binding_ilist, cfdata->current_act_selector); e_widget_ilist_go(cfdata->gui.binding_ilist); + e_widget_ilist_selected_set(cfdata->gui.binding_ilist, cfdata->current_act_selector); } static void |
From: Enlightenment C. <no...@cv...> - 2006-05-20 00:04:48
|
Enlightenment CVS committal Author : sndev Project : e17 Module : apps/e Dir : e17/apps/e/src/bin Modified Files: e_int_gadcon_config.c Log Message: of the same gadcon in one shelf. The config dialog still contains some problems : * If the config dialog is opened, and at that time the settings of the gadcon has changed, then applying settings will overwrite changes with the old values. (will be fixed soon). * The problem of gadcon identifiers. For example if one have two instances of the ibar in one shelf, then changing settings of the one ibar gadcon will automatically change the settings of the another gadcon(s) in the same shelf. Basically, they are not distinguishable. (will be fixed soon, but need raster's consultation/help/explanation :)) * Icons in "Selected Items" lists (will be fixed soon) * Names of the gadcons in "Selected Items" list should start with capital letter. * maybe something else I forgot to list. Raster, your code is still presented in the file :). So, if unfortunatelly you will dislike what I did :), it can be easiely rolled back :) Enjoy the new functionality :) =================================================================== RCS file: /cvs/e/e17/apps/e/src/bin/e_int_gadcon_config.c,v retrieving revision 1.6 retrieving revision 1.7 diff -u -3 -r1.6 -r1.7 --- e_int_gadcon_config.c 19 May 2006 13:21:01 -0000 1.6 +++ e_int_gadcon_config.c 20 May 2006 00:03:20 -0000 1.7 @@ -14,8 +14,12 @@ { E_Gadcon *gc; char *cname; + char *ciname; int enabled; Evas_Object *o_enabled, *o_disabled; + Evas_Object *o_add, *o_remove, *o_instances; + + Evas_List *cf_gcc; }; /* a nice easy setup function that does the dirty work */ @@ -35,7 +39,7 @@ v->basic.create_widgets = _basic_create_widgets; v->override_auto_apply = 1; - /* create config diaolg for bd object/data */ + /* create config dialog for bd object/data */ cfd = e_config_dialog_new(e_container_current_get(e_manager_current_get()), _("Contents Settings"), NULL, 0, v, gc); gc->config_dialog = cfd; @@ -46,7 +50,46 @@ static void _fill_data(E_Config_Dialog_Data *cfdata) { + int ok; + E_Config_Gadcon *cf_gc; + E_Config_Gadcon_Client *cf_gcc, *cf_gcc2; + Evas_List *l; + cfdata->cname = NULL; + cfdata->ciname = NULL; + cfdata->cf_gcc = NULL; + + ok = 0; + for (l = e_config->gadcons; l; l = l->next) + { + cf_gc = l->data; + if ((!strcmp(cf_gc->name, cfdata->gc->name)) && + (!strcmp(cf_gc->id, cfdata->gc->id))) + { + ok = 1; + break; + } + } + if (ok) + { + for (l = cf_gc->clients; l; l = l->next) + { + cf_gcc = l->data; + if (!cf_gcc->name) continue; + + cf_gcc2 = E_NEW(E_Config_Gadcon_Client, 1); + cf_gcc2->name = evas_stringshare_add(cf_gcc->name); + cf_gcc2->id = evas_stringshare_add(cf_gcc->id); + cf_gcc2->geom.res = cf_gcc->geom.res; + cf_gcc2->geom.size = cf_gcc->geom.size; + cf_gcc2->geom.pos = cf_gcc->geom.pos; + cf_gcc2->style = !cf_gcc->style ? NULL : evas_stringshare_add(cf_gcc->style); + cf_gcc2->autoscroll = cf_gcc->autoscroll; + cf_gcc2->resizable = cf_gcc->resizable; + + cfdata->cf_gcc = evas_list_append(cfdata->cf_gcc, cf_gcc2); + } + } } static void * @@ -67,9 +110,25 @@ static void _free_data(E_Config_Dialog *cfd, E_Config_Dialog_Data *cfdata) { + Evas_List *l; /* Free the cfdata */ cfdata->gc->config_dialog = NULL; + + while (cfdata->cf_gcc) + { + E_Config_Gadcon_Client *cf_gcc = cfdata->cf_gcc->data; + + if (cf_gcc->name) evas_stringshare_del(cf_gcc->name); + if (cf_gcc->id) evas_stringshare_del(cf_gcc->id); + if (cf_gcc->style) evas_stringshare_del(cf_gcc->style); + free(cf_gcc); + + cfdata->cf_gcc = evas_list_remove_list(cfdata->cf_gcc, cfdata->cf_gcc); + } + + if (cfdata->cname) free(cfdata->cname); + if (cfdata->ciname) free(cfdata->ciname); free(cfdata); } @@ -77,6 +136,263 @@ static int _basic_apply_data(E_Config_Dialog *cfd, E_Config_Dialog_Data *cfdata) { + int ok = 0; + E_Config_Gadcon *cf_gc; + E_Config_Gadcon_Client *cf_gcc; + Evas_List *l; + + Evas_List *new_clients = NULL; + + + for (l = e_config->gadcons; l; l = l->next) + { + cf_gc = l->data; + if ((!strcmp(cf_gc->name, cfdata->gc->name)) && + (!strcmp(cf_gc->id, cfdata->gc->id))) + { + ok = 1; + break; + } + } + if (!ok) return 1; + + //FIXME: some how the settings of the gadcon should be updated before + //saving it. + while (cf_gc->clients) + { + cf_gcc = cf_gc->clients->data; + + if (!cf_gcc->name) + new_clients = evas_list_append(new_clients, cf_gcc); + else + { + if (cf_gcc->name) evas_stringshare_del(cf_gcc->name); + if (cf_gcc->id) evas_stringshare_del(cf_gcc->id); + if (cf_gcc->style) evas_stringshare_del(cf_gcc->style); + free(cf_gcc); + } + cf_gc->clients = evas_list_remove_list(cf_gc->clients, cf_gc->clients); + } + cf_gc->clients = new_clients; + + for (l = cfdata->cf_gcc; l; l = l->next) + { + E_Config_Gadcon_Client *cf_gcc2 = l->data; + + cf_gcc = E_NEW(E_Config_Gadcon_Client, 1); + cf_gcc->name = evas_stringshare_add(cf_gcc2->name); + cf_gcc->id = evas_stringshare_add(cf_gcc2->id); + cf_gcc->geom.res = cf_gcc2->geom.res; + cf_gcc->geom.size = cf_gcc2->geom.size; + cf_gcc->geom.pos = cf_gcc2->geom.pos; + cf_gcc->style = !cf_gcc2->style ? NULL : evas_stringshare_add(cf_gcc2->style); + cf_gcc->autoscroll = cf_gcc2->autoscroll; + cf_gcc->resizable = cf_gcc2->resizable; + + cf_gc->clients = evas_list_append(cf_gc->clients, cf_gcc); + } + + e_gadcon_unpopulate(cfdata->gc); + e_gadcon_populate(cfdata->gc); + e_config_save_queue(); + return 1; +} + +static void +_cb_select_client(void *data) +{ + E_Config_Dialog_Data *cfdata; + cfdata = data; + + e_widget_disabled_set(cfdata->o_add, 0); +} + +static void +_cb_select_client_instance(void *data) +{ + E_Config_Dialog_Data *cfdata; + cfdata = data; + + e_widget_disabled_set(cfdata->o_remove, 0); +} + +static void +_cb_add_instance(void *data, void *data2) +{ + char buf[256], buf2[256]; + int i, ok; + E_Config_Dialog_Data *cfdata; + E_Config_Gadcon *cf_gc; + E_Config_Gadcon_Client *cf_gcc; + Evas_List *l, *l2; + + cfdata = data; + + snprintf(buf, sizeof(buf), "default"); + for (i = 0; ; i++) + { + ok = 1; + for (l = e_config->gadcons; l; l = l->next) + { + cf_gc = l->data; + for (l2 = cf_gc->clients; l2; l2 = l2->next) + { + cf_gcc = l2->data; + if ((!cf_gcc->name) || (!cf_gcc->id)) continue; + if ((!strcmp(cf_gcc->name, cfdata->cname)) && (!strcmp(cf_gcc->id, buf))) + { + ok = 0; + break; + } + } + if (!ok) break; + } + if (ok) break; + snprintf(buf, sizeof(buf), "other-%i", ok); + } + + cf_gcc = E_NEW(E_Config_Gadcon_Client, 1); + cf_gcc->name = evas_stringshare_add(cfdata->cname); + cf_gcc->id = evas_stringshare_add(buf); + cf_gcc->geom.res = 800; + cf_gcc->geom.size = 80; + cf_gcc->geom.pos = cf_gcc->geom.res - cf_gcc->geom.size; + cf_gcc->style = NULL; + cf_gcc->autoscroll = 0; + cf_gcc->resizable = 0; + + cfdata->cf_gcc = evas_list_append(cfdata->cf_gcc, cf_gcc); + + e_widget_ilist_append(cfdata->o_instances, NULL, cf_gcc->name, _cb_select_client_instance, + cfdata, (char *)cf_gcc->name); + e_widget_ilist_go(cfdata->o_instances); + e_widget_ilist_selected_set(cfdata->o_instances, + e_widget_ilist_count(cfdata->o_instances) - 1); +} + +static void +_cb_remove_instance(void *data, void *data2) +{ + int i; + E_Config_Dialog_Data *cfdata; + E_Config_Gadcon_Client *cf_gcc; + Evas_List *l; + + cfdata = data; + i = e_widget_ilist_selected_get(cfdata->o_instances); + + l = evas_list_nth_list(cfdata->cf_gcc, i); + cf_gcc = l->data; + + if (cf_gcc->name) evas_stringshare_del(cf_gcc->name); + if (cf_gcc->id) evas_stringshare_del(cf_gcc->id); + if (cf_gcc->style) evas_stringshare_del(cf_gcc->style); + free(cf_gcc); + + cfdata->cf_gcc = evas_list_remove_list(cfdata->cf_gcc, l); + + e_widget_ilist_clear(cfdata->o_instances); + for (l = cfdata->cf_gcc; l; l = l->next) + { + cf_gcc = l->data; + e_widget_ilist_append(cfdata->o_instances, NULL, cf_gcc->name, _cb_select_client_instance, + cfdata, (char *)cf_gcc->name); + } + e_widget_ilist_go(cfdata->o_instances); + + if (i >= e_widget_ilist_count(cfdata->o_instances)) + i = e_widget_ilist_count(cfdata->o_instances) - 1; + + if (!e_widget_ilist_count(cfdata->o_instances)) + e_widget_disabled_set(cfdata->o_remove, 1); + else + e_widget_ilist_selected_set(cfdata->o_instances, i); +} + +/**--GUI--**/ +static Evas_Object * +_basic_create_widgets(E_Config_Dialog *cfd, Evas *evas, E_Config_Dialog_Data *cfdata) +{ + /* generate the core widget layout for a basic dialog */ + Evas_Object *o, *o2, *of, *oft, *ob, *oi; + Evas_Coord wmw, wmh; + Evas_List *l; + E_Config_Gadcon_Client *cf_gcc; + //int ok; + + /* FIXME: this is just raw config now - it needs UI improvments */ + o = e_widget_list_add(evas, 0, 1); + + of = e_widget_framelist_add(evas, _("Available Items"), 0); + + oi = e_widget_ilist_add(evas, 24, 24, &(cfdata->cname)); + + for (l = e_gadcon_provider_list(); l; l = l->next) + { + E_Gadcon_Client_Class *cc; + char *label; + Evas_Object *icon; + + cc = l->data; + icon = NULL; + label = NULL; + if (cc->func.label) label = cc->func.label(); + if (!label) label = cc->name; + if (cc->func.icon) icon = cc->func.icon(evas); + e_widget_ilist_append(oi, icon, label, _cb_select_client, cfdata, cc->name); + } + e_widget_ilist_go(oi); + + e_widget_min_size_get(oi, &wmw, &wmh); + if (wmw < 200) wmw = 200; + e_widget_min_size_set(oi, wmw, 250); + + e_widget_framelist_object_append(of, oi); + + e_widget_list_object_append(o, of, 1, 1, 0.5); + + oft = e_widget_frametable_add(evas, _("Selected Items"), 0); + + oi = e_widget_ilist_add(evas, 24, 24, &(cfdata->ciname)); + + for (l = cfdata->cf_gcc; l; l = l->next) + { + cf_gcc = l->data; + e_widget_ilist_append(oi, NULL, cf_gcc->name, _cb_select_client_instance, + cfdata, (char *)cf_gcc->name); + } + + e_widget_ilist_go(oi); + + e_widget_min_size_get(oi, &wmw, &wmh); + if (wmw < 200) wmw = 200; + if (wmh < 190) wmh = 190; + e_widget_min_size_set(oi, wmw, wmh); + + e_widget_frametable_object_append(oft, oi, 0, 0, 1, 1, 1, 1, 1, 1); + cfdata->o_instances = oi; + + ob = e_widget_button_add(evas, _("Add Instance"), NULL, _cb_add_instance, cfdata, NULL); + e_widget_frametable_object_append(oft, ob, 0, 1, 1, 1, 1, 1, 1, 1); + e_widget_disabled_set(ob, 1); + cfdata->o_add = ob; + + ob = e_widget_button_add(evas, _("Remove Instance"), NULL, _cb_remove_instance, cfdata, NULL); + e_widget_frametable_object_append(oft, ob, 0, 2, 1, 1, 1, 1, 1, 1); + e_widget_disabled_set(ob, 1); + cfdata->o_remove = ob; + + + e_widget_list_object_append(o, oft, 1, 1, 0.5); + + return o; +} + +/************* raster original code ********************/ +#if 0 +static int +_basic_apply_data(E_Config_Dialog *cfd, E_Config_Dialog_Data *cfdata) +{ Evas_List *l, *l2; E_Config_Gadcon *cf_gc, *cf_gc2; E_Config_Gadcon_Client *cf_gcc, *cf_gcc2; @@ -94,7 +410,7 @@ break; } } - if (!ok) return; + if (!ok) return 1; for (l = cf_gc->clients; l; l = l->next) { cf_gcc = l->data; @@ -151,7 +467,6 @@ e_config_save_queue(); return 1; /* Apply was OK */ } - static void _cb_select(void *data) { @@ -189,7 +504,6 @@ e_widget_radio_toggle_set(cfdata->o_disabled, 1 - enabled); } -/**--GUI--**/ static Evas_Object * _basic_create_widgets(E_Config_Dialog *cfd, Evas *evas, E_Config_Dialog_Data *cfdata) { @@ -248,3 +562,4 @@ return o; } +#endif |
From: Enlightenment C. <no...@cv...> - 2006-05-20 00:43:15
|
Enlightenment CVS committal Author : sndev Project : e17 Module : apps/e Dir : e17/apps/e/src/bin Modified Files: e_int_gadcon_config.c Log Message: FIXME added. =================================================================== RCS file: /cvs/e/e17/apps/e/src/bin/e_int_gadcon_config.c,v retrieving revision 1.7 retrieving revision 1.8 diff -u -3 -r1.7 -r1.8 --- e_int_gadcon_config.c 20 May 2006 00:03:20 -0000 1.7 +++ e_int_gadcon_config.c 20 May 2006 00:41:45 -0000 1.8 @@ -229,6 +229,7 @@ cfdata = data; snprintf(buf, sizeof(buf), "default"); + //FIXME: I DO NOT LIKE THIS LOOP. IT CAN NOT END. FOR EXAMPLE IBAR ON SHELF 0 for (i = 0; ; i++) { ok = 1; |
From: Enlightenment C. <no...@cv...> - 2006-05-20 09:40:57
|
Enlightenment CVS committal Author : sndev Project : e17 Module : apps/e Dir : e17/apps/e/src/bin Modified Files: e_int_config_desklock.c Log Message: Just improving of the GUI by putting headers into the list of backrounds. =================================================================== RCS file: /cvs/e/e17/apps/e/src/bin/e_int_config_desklock.c,v retrieving revision 1.15 retrieving revision 1.16 diff -u -3 -r1.15 -r1.16 --- e_int_config_desklock.c 13 May 2006 03:04:35 -0000 1.15 +++ e_int_config_desklock.c 20 May 2006 09:39:30 -0000 1.16 @@ -678,6 +678,7 @@ f1 = e_theme_edje_file_get("base/theme/desklock", "desklock/background"); c = strdup(f1); + e_widget_ilist_header_append(cfdata->gui.bg_list, NULL, ("Theme Backgrounds")); if (edje_object_file_set(o, f1, "desklock/background")) { if (!e_thumb_exists(c)) @@ -686,7 +687,8 @@ else ic = e_thumb_evas_object_get(c, cfdata->evas, BG_LIST_ICON_SIZE_W, BG_LIST_ICON_SIZE_H, 1); - e_widget_ilist_append(cfdata->gui.bg_list, ic, _("Theme DeskLock Background"), + + e_widget_ilist_append(cfdata->gui.bg_list, ic, _("Theme Desklock Background"), _ibg_list_cb_bg_selected, cfdata, DEF_DESKLOCK_BACKGROUND); } @@ -734,7 +736,8 @@ evas_object_del(o); ecore_evas_free(eebuf); free(c); - + + e_widget_ilist_header_append(cfdata->gui.bg_list, NULL, _("Personal")); bg_dirs = e_path_dir_list_get(path_backgrounds); for (bg = bg_dirs; bg; bg = bg->next) { |
From: Enlightenment C. <no...@cv...> - 2006-05-21 08:41:45
|
Enlightenment CVS committal Author : sndev Project : e17 Module : apps/e Dir : e17/apps/e Modified Files: TODO Log Message: todo ++ =================================================================== RCS file: /cvs/e/e17/apps/e/TODO,v retrieving revision 1.329 retrieving revision 1.330 diff -u -3 -r1.329 -r1.330 --- TODO 18 May 2006 06:30:32 -0000 1.329 +++ TODO 21 May 2006 08:40:16 -0000 1.330 @@ -84,6 +84,9 @@ "NICE TO HAVE" FEATURES ------------------------------------------------------------------------------- +* ibox should have options "Show from this desktop", "Show from all desktops", + "show from zones", "show from this zone", etc. Similarly to those, that are + in winlist. * winlist and exebuf can let the mouse select items * option to NOT raise on focus in click to focus * switch to desktop of a new window if it opens on another desktop than the |
From: Enlightenment C. <no...@cv...> - 2006-05-21 11:22:00
|
Enlightenment CVS committal Author : sndev Project : e17 Module : apps/e Dir : e17/apps/e/src/bin Modified Files: e_int_gadcon_config.c Log Message: ooopppps. Using uninitiliazed "label" variable in _basic_create_widgets and _cb_remove_instance. fixing. =================================================================== RCS file: /cvs/e/e17/apps/e/src/bin/e_int_gadcon_config.c,v retrieving revision 1.9 retrieving revision 1.10 diff -u -3 -r1.9 -r1.10 --- e_int_gadcon_config.c 20 May 2006 03:53:36 -0000 1.9 +++ e_int_gadcon_config.c 21 May 2006 11:20:30 -0000 1.10 @@ -315,7 +315,7 @@ for (l = cfdata->cf_gcc; l; l = l->next) { E_Gadcon_Client_Class *cc; - char *label; + char *label = NULL; Evas_Object *icon; cf_gcc = l->data; @@ -408,6 +408,7 @@ cf_gcc = l->data; cc = NULL; + label = NULL; for (l2 = e_gadcon_provider_list(); l2; l2 = l2->next) { cc = l2->data; |
From: Enlightenment C. <no...@cv...> - 2006-05-22 12:02:44
|
Enlightenment CVS committal Author : sndev Project : e17 Module : apps/e Dir : e17/apps/e/src/bin Modified Files: e_int_config_shelf.c Log Message: * improving the usability of the Shelf config dialog in E config panel. Now when one add a new shelf the selector automatically goes to it. * adding a confirmation dialog on shelf delete. Request from CodeWarrior. :) * possible-TODO: would be nice very nice "question" icon for this dialog. =================================================================== RCS file: /cvs/e/e17/apps/e/src/bin/e_int_config_shelf.c,v retrieving revision 1.3 retrieving revision 1.4 diff -u -3 -r1.3 -r1.4 --- e_int_config_shelf.c 21 May 2006 11:45:22 -0000 1.3 +++ e_int_config_shelf.c 22 May 2006 12:01:09 -0000 1.4 @@ -9,6 +9,7 @@ { E_Config_Dialog *cfd; Evas_Object *ilist; + E_Dialog *confirm_dialog; }; EAPI E_Config_Dialog * @@ -140,29 +141,79 @@ e_config_save_queue(); _ilist_fill(cfdata); + e_widget_ilist_selected_set(cfdata->ilist, e_widget_ilist_count(cfdata->ilist) - 1); } static void -_cb_del(void *data, void *data2) +_cb_confirm_dialog_no(void *data, E_Dialog *dia) { E_Config_Dialog_Data *cfdata; + + cfdata = data; + e_object_del(E_OBJECT(cfdata->confirm_dialog)); + cfdata->confirm_dialog = NULL; +} +static void +_cb_confirm_dialog_yes(void *data, E_Dialog *dia) +{ E_Shelf *es; E_Config_Shelf *cfg; - + E_Config_Dialog_Data *cfdata; + cfdata = data; es = evas_list_nth(e_shelf_list(), e_widget_ilist_selected_get(cfdata->ilist)); - if (!es) return; - cfg = es->cfg; - e_object_del(E_OBJECT(es)); - - e_config->shelves = evas_list_remove(e_config->shelves, cfg); - if (cfg->name) evas_stringshare_del(cfg->name); - if (cfg->style) evas_stringshare_del(cfg->style); - E_FREE(cfg); - - e_config_save_queue(); - - _ilist_fill(cfdata); + if (es) + { + cfg = es->cfg; + e_object_del(E_OBJECT(es)); + + e_config->shelves = evas_list_remove(e_config->shelves, cfg); + if (cfg->name) evas_stringshare_del(cfg->name); + if (cfg->style) evas_stringshare_del(cfg->style); + E_FREE(cfg); + e_config_save_queue(); + + _ilist_fill(cfdata); + } + + e_object_del(E_OBJECT(cfdata->confirm_dialog)); + cfdata->confirm_dialog = NULL; +} +static void +_cb_confirm_dialog_delete(E_Win *win) +{ + E_Config_Dialog_Data *cfdata; + cfdata = ((E_Dialog *)win->data)->data; + _cb_confirm_dialog_no(cfdata, cfdata->confirm_dialog); +} + +static void +_cb_del(void *data, void *data2) +{ + char buf[4096]; + E_Config_Dialog_Data *cfdata; + + cfdata = data; + if (cfdata->confirm_dialog) e_object_del(E_OBJECT(cfdata->confirm_dialog)); + cfdata->confirm_dialog = e_dialog_new(e_container_current_get(e_manager_current_get())); + if (!cfdata->confirm_dialog) return; + cfdata->confirm_dialog->data = cfdata; + e_win_delete_callback_set(cfdata->confirm_dialog->win, _cb_confirm_dialog_delete); + e_dialog_title_set(cfdata->confirm_dialog, _("Are you sure you want to delete this shelf?")); + + snprintf(buf, sizeof(buf), _("You requested to delete \"%s\".<br>" + "<br>" + "Are you sure you want to delete this shelf?"), + e_widget_ilist_selected_label_get(cfdata->ilist)); + + e_dialog_text_set(cfdata->confirm_dialog, buf); + e_dialog_icon_set(cfdata->confirm_dialog, "enlightenment/exit", 64); + e_dialog_button_add(cfdata->confirm_dialog, _("Yes"), NULL, _cb_confirm_dialog_yes, cfdata); + e_dialog_button_add(cfdata->confirm_dialog, _("No"), NULL, _cb_confirm_dialog_no, cfdata); + + e_dialog_button_focus_num(cfdata->confirm_dialog, 1); + e_win_centered_set(cfdata->confirm_dialog->win, 1); + e_dialog_show(cfdata->confirm_dialog); } static void |
From: Enlightenment C. <no...@cv...> - 2006-05-22 20:30:17
|
Enlightenment CVS committal Author : sndev Project : e17 Module : apps/e Dir : e17/apps/e/src/bin Modified Files: Makefile.am e_border.c e_border.h e_includes.h e_int_config_keybindings.c e_int_config_shelf.c e_shelf.c Added Files: e_confirm_dialog.c e_confirm_dialog.h Log Message: 1. The confirmation dialog on shelf delete is added. Somebody on IRC proposed to have it. Also it is added on Key Binding deletion (see Key Bindings dialog). Code duplicates were moved to a separate function e_confirm_dialog_show. 2. Two new events E_EVENT_BORDER_FOCUS_IN and E_EVENT_BORDER_FOCUS_OUT are added. =================================================================== RCS file: /cvs/e/e17/apps/e/src/bin/Makefile.am,v retrieving revision 1.120 retrieving revision 1.121 diff -u -3 -r1.120 -r1.121 --- Makefile.am 5 May 2006 12:20:14 -0000 1.120 +++ Makefile.am 22 May 2006 20:28:32 -0000 1.121 @@ -154,7 +154,8 @@ e_int_config_paths.h \ e_int_shelf_config.h \ e_int_config_shelf.h \ -e_int_gadcon_config.h +e_int_gadcon_config.h \ +e_confirm_dialog.h enlightenment_src = \ e_user.c \ @@ -290,6 +291,7 @@ e_int_shelf_config.c \ e_int_config_shelf.c \ e_int_gadcon_config.c \ +e_confirm_dialog.c \ $(ENLIGHTENMENTHEADERS) enlightenment_SOURCES = \ =================================================================== RCS file: /cvs/e/e17/apps/e/src/bin/e_border.c,v retrieving revision 1.488 retrieving revision 1.489 diff -u -3 -r1.488 -r1.489 --- e_border.c 16 May 2006 07:32:37 -0000 1.488 +++ e_border.c 22 May 2006 20:28:32 -0000 1.489 @@ -67,6 +67,8 @@ static void _e_border_event_border_desk_set_free(void *data, void *ev); static void _e_border_event_border_stack_free(void *data, void *ev); static void _e_border_event_border_icon_change_free(void *data, void *ev); +static void _e_border_event_border_focus_in_free(void *data, void *ev); +static void _e_border_event_border_focus_out_free(void *data, void *ev); static void _e_border_event_border_resize_free(void *data, void *ev); static void _e_border_event_border_move_free(void *data, void *ev); static void _e_border_event_border_show_free(void *data, void *ev); @@ -127,6 +129,8 @@ EAPI int E_EVENT_BORDER_UNSTICK = 0; EAPI int E_EVENT_BORDER_STACK = 0; EAPI int E_EVENT_BORDER_ICON_CHANGE = 0; +EAPI int E_EVENT_BORDER_FOCUS_IN = 0; +EAPI int E_EVENT_BORDER_FOCUS_OUT = 0; #define GRAV_SET(bd, grav) \ ecore_x_window_gravity_set(bd->bg_win, grav); \ @@ -177,6 +181,8 @@ E_EVENT_BORDER_UNSTICK = ecore_event_type_new(); E_EVENT_BORDER_STACK = ecore_event_type_new(); E_EVENT_BORDER_ICON_CHANGE = ecore_event_type_new(); + E_EVENT_BORDER_FOCUS_IN = ecore_event_type_new(); + E_EVENT_BORDER_FOCUS_OUT = ecore_event_type_new(); return 1; } @@ -1280,13 +1286,31 @@ #endif if (bd->focused) { + E_Event_Border_Focus_In *ev; + focused = bd; //printf("set focused to %p\n", focused); + + ev = calloc(1, sizeof(E_Event_Border_Focus_In)); + ev->border = bd; + e_object_ref(E_OBJECT(bd)); + + ecore_event_add(E_EVENT_BORDER_FOCUS_IN, ev, + _e_border_event_border_focus_in_free, NULL); } else if ((!bd->focused) && (focused == bd)) { + E_Event_Border_Focus_Out *ev; + focused = NULL; //printf("set focused to %p\n", focused); + + ev = calloc(1, sizeof(E_Event_Border_Focus_Out)); + ev->border = bd; + e_object_ref(E_OBJECT(bd)); + + ecore_event_add(E_EVENT_BORDER_FOCUS_OUT, ev, + _e_border_event_border_focus_out_free, NULL); } } @@ -6307,6 +6331,26 @@ e = ev; // e_object_breadcrumb_del(E_OBJECT(e->border), "border_icon_change_event"); + e_object_unref(E_OBJECT(e->border)); + free(e); +} + +static void +_e_border_event_border_focus_in_free(void *data, void *ev) +{ + E_Event_Border_Focus_In *e; + + e = ev; + e_object_unref(E_OBJECT(e->border)); + free(e); +} + +static void +_e_border_event_border_focus_out_free(void *data, void *ev) +{ + E_Event_Border_Focus_Out *e; + + e = ev; e_object_unref(E_OBJECT(e->border)); free(e); } =================================================================== RCS file: /cvs/e/e17/apps/e/src/bin/e_border.h,v retrieving revision 1.133 retrieving revision 1.134 diff -u -3 -r1.133 -r1.134 --- e_border.h 10 May 2006 14:54:59 -0000 1.133 +++ e_border.h 22 May 2006 20:28:32 -0000 1.134 @@ -84,6 +84,8 @@ typedef struct _E_Event_Border_Desk_Set E_Event_Border_Desk_Set; typedef struct _E_Event_Border_Stack E_Event_Border_Stack; typedef struct _E_Event_Border_Icon_Change E_Event_Border_Icon_Change; +typedef struct _E_Event_Border_Focus_In E_Event_Border_Focus_In; +typedef struct _E_Event_Border_Focus_Out E_Event_Border_Focus_Out; #else #ifndef E_BORDER_H @@ -484,6 +486,16 @@ E_Border *border; }; +struct _E_Event_Border_Focus_In +{ + E_Border *border; +}; + +struct _E_Event_Border_Focus_Out +{ + E_Border *border; +}; + EAPI int e_border_init(void); EAPI int e_border_shutdown(void); @@ -573,6 +585,8 @@ extern EAPI int E_EVENT_BORDER_DESK_SET; extern EAPI int E_EVENT_BORDER_STACK; extern EAPI int E_EVENT_BORDER_ICON_CHANGE; +extern EAPI int E_EVENT_BORDER_FOCUS_IN; +extern EAPI int E_EVENT_BORDER_FOCUS_OUT; #endif #endif =================================================================== RCS file: /cvs/e/e17/apps/e/src/bin/e_includes.h,v retrieving revision 1.102 retrieving revision 1.103 diff -u -3 -r1.102 -r1.103 --- e_includes.h 5 May 2006 12:20:14 -0000 1.102 +++ e_includes.h 22 May 2006 20:28:32 -0000 1.103 @@ -135,3 +135,4 @@ #include "e_int_shelf_config.h" #include "e_int_config_shelf.h" #include "e_int_gadcon_config.h" +#include "e_confirm_dialog.h" =================================================================== RCS file: /cvs/e/e17/apps/e/src/bin/e_int_config_keybindings.c,v retrieving revision 1.23 retrieving revision 1.24 diff -u -3 -r1.23 -r1.24 --- e_int_config_keybindings.c 12 May 2006 12:25:55 -0000 1.23 +++ e_int_config_keybindings.c 22 May 2006 20:28:32 -0000 1.24 @@ -34,7 +34,7 @@ static void _e_keybinding_default_keybinding_settings(E_Config_Dialog_Data *cfdata); static void _e_keybinding_keybind_cb_del_keybinding(void *data, void *data2); -static void _e_keybinding_keybind_delete_keybinding(E_Config_Dialog_Data *cfdata); +//static void _e_keybinding_keybind_delete_keybinding(E_Config_Dialog_Data *cfdata); static void _e_keybinding_keybind_cb_add_keybinding(void *data, void *data2); @@ -105,6 +105,8 @@ Evas_Object *bind_context[E_BINDING_CONTEXT_NUMBER]; Evas_Object *key_action; Evas_Object *key_params; + + E_Dialog *confirm_dialog; } gui; struct { @@ -1035,15 +1037,24 @@ } static void -_e_keybinding_keybind_cb_del_keybinding(void *data, void *data2) +_e_keybinding_cb_confirm_dialog_yes(void *data) { - E_Config_Dialog_Data *cfdata = data; + E_Config_Binding_Key *eb; + E_Config_Dialog_Data *cfdata; - if (!cfdata) return; - if (!cfdata->current_act && cfdata->current_act_selector < 0) - return; + if (!(cfdata = data)) + if ((!cfdata->current_act) && (cfdata->current_act_selector < 0)) return; + + eb = evas_list_nth(cfdata->current_act->key_bindings, cfdata->current_act_selector); + cfdata->current_act->key_bindings = evas_list_remove(cfdata->current_act->key_bindings, eb); + + if (eb->key) evas_stringshare_del(eb->key); + if (eb->action) evas_stringshare_del(eb->action); + if (eb->params) evas_stringshare_del(eb->params); + E_FREE(eb); - _e_keybinding_keybind_delete_keybinding(cfdata); + if (cfdata->current_act_selector >= evas_list_count(cfdata->current_act->key_bindings)) + cfdata->current_act_selector = evas_list_count(cfdata->current_act->key_bindings) - 1; _e_keybinding_update_binding_list(cfdata); e_widget_ilist_go(cfdata->gui.binding_ilist); @@ -1060,30 +1071,23 @@ //cfdata->changed = 1; } + static void -_e_keybinding_keybind_delete_keybinding(E_Config_Dialog_Data *cfdata) +_e_keybinding_keybind_cb_del_keybinding(void *data, void *data2) { - E_Config_Binding_Key *eb; + char buf[4096]; + E_Config_Dialog_Data *cfdata = data; if (!cfdata) return; - if (!cfdata->current_act && cfdata->current_act_selector < 0) - return; - eb = evas_list_nth(cfdata->current_act->key_bindings, cfdata->current_act_selector); - cfdata->current_act->key_bindings = evas_list_remove(cfdata->current_act->key_bindings, eb); + snprintf(buf, sizeof(buf), _("You requested to delte \"%s\" keybinding.<br>" + "<br>" + "Are you sure you want to delete it?"), + e_widget_ilist_selected_label_get(cfdata->gui.binding_ilist)); - if (!evas_list_count(cfdata->current_act->key_bindings)) - { - evas_list_free(cfdata->current_act->key_bindings); - cfdata->current_act->key_bindings = NULL; - } - if (eb->key) evas_stringshare_del(eb->key); - if (eb->action) evas_stringshare_del(eb->action); - if (eb->params) evas_stringshare_del(eb->params); - E_FREE(eb); + e_confirm_dialog_show(_("Delete?"), "enlightenment/exit", buf, NULL, NULL, + _e_keybinding_cb_confirm_dialog_yes, NULL, cfdata, NULL); - if (cfdata->current_act_selector >= evas_list_count(cfdata->current_act->key_bindings)) - cfdata->current_act_selector = evas_list_count(cfdata->current_act->key_bindings) - 1; } static void _e_keybinding_update_binding_ilist_cur_selection_icon(E_Config_Dialog_Data *cfdata) =================================================================== RCS file: /cvs/e/e17/apps/e/src/bin/e_int_config_shelf.c,v retrieving revision 1.4 retrieving revision 1.5 diff -u -3 -r1.4 -r1.5 --- e_int_config_shelf.c 22 May 2006 12:01:09 -0000 1.4 +++ e_int_config_shelf.c 22 May 2006 20:28:33 -0000 1.5 @@ -144,7 +144,7 @@ e_widget_ilist_selected_set(cfdata->ilist, e_widget_ilist_count(cfdata->ilist) - 1); } -static void +/*static void _cb_confirm_dialog_no(void *data, E_Dialog *dia) { E_Config_Dialog_Data *cfdata; @@ -185,35 +185,45 @@ E_Config_Dialog_Data *cfdata; cfdata = ((E_Dialog *)win->data)->data; _cb_confirm_dialog_no(cfdata, cfdata->confirm_dialog); -} +}*/ static void +_cb_confirm_dialog_yes(void *data) +{ + E_Shelf *es; + E_Config_Shelf *cfg; + E_Config_Dialog_Data *cfdata; + + cfdata = data; + es = evas_list_nth(e_shelf_list(), e_widget_ilist_selected_get(cfdata->ilist)); + if (es) + { + cfg = es->cfg; + e_object_del(E_OBJECT(es)); + + e_config->shelves = evas_list_remove(e_config->shelves, cfg); + if (cfg->name) evas_stringshare_del(cfg->name); + if (cfg->style) evas_stringshare_del(cfg->style); + E_FREE(cfg); + e_config_save_queue(); + + _ilist_fill(cfdata); + } +} +static void _cb_del(void *data, void *data2) { char buf[4096]; E_Config_Dialog_Data *cfdata; cfdata = data; - if (cfdata->confirm_dialog) e_object_del(E_OBJECT(cfdata->confirm_dialog)); - cfdata->confirm_dialog = e_dialog_new(e_container_current_get(e_manager_current_get())); - if (!cfdata->confirm_dialog) return; - cfdata->confirm_dialog->data = cfdata; - e_win_delete_callback_set(cfdata->confirm_dialog->win, _cb_confirm_dialog_delete); - e_dialog_title_set(cfdata->confirm_dialog, _("Are you sure you want to delete this shelf?")); - snprintf(buf, sizeof(buf), _("You requested to delete \"%s\".<br>" "<br>" "Are you sure you want to delete this shelf?"), e_widget_ilist_selected_label_get(cfdata->ilist)); - e_dialog_text_set(cfdata->confirm_dialog, buf); - e_dialog_icon_set(cfdata->confirm_dialog, "enlightenment/exit", 64); - e_dialog_button_add(cfdata->confirm_dialog, _("Yes"), NULL, _cb_confirm_dialog_yes, cfdata); - e_dialog_button_add(cfdata->confirm_dialog, _("No"), NULL, _cb_confirm_dialog_no, cfdata); - - e_dialog_button_focus_num(cfdata->confirm_dialog, 1); - e_win_centered_set(cfdata->confirm_dialog->win, 1); - e_dialog_show(cfdata->confirm_dialog); + e_confirm_dialog_show(_("Are you sure you want to delete this shelf?"), "enlightenment/exit", + buf, NULL, NULL, _cb_confirm_dialog_yes, NULL, cfdata, NULL); } static void =================================================================== RCS file: /cvs/e/e17/apps/e/src/bin/e_shelf.c,v retrieving revision 1.24 retrieving revision 1.25 diff -u -3 -r1.24 -r1.25 --- e_shelf.c 18 May 2006 21:33:03 -0000 1.24 +++ e_shelf.c 22 May 2006 20:28:33 -0000 1.25 @@ -735,11 +735,11 @@ } static void -_e_shelf_cb_menu_delete(void *data, E_Menu *m, E_Menu_Item *mi) +_e_shelf_cb_confirm_dialog_yes(void *data) { E_Config_Shelf *cfg; E_Shelf *es; - + es = data; cfg = es->cfg; e_object_del(E_OBJECT(es)); @@ -749,6 +749,17 @@ E_FREE(cfg); e_config_save_queue(); +} + + +static void +_e_shelf_cb_menu_delete(void *data, E_Menu *m, E_Menu_Item *mi) +{ + e_confirm_dialog_show(_("Are you sure you want to delete this shelf?"), "enlightenment/exit", + _("You requested to delete this shelf.<br>" + "<br>" + "Are you sure you want to delete it?"), NULL, NULL, + _e_shelf_cb_confirm_dialog_yes, NULL, data, NULL); } static void |
From: Enlightenment C. <no...@cv...> - 2006-05-27 17:10:47
|
Enlightenment CVS committal Author : sndev Project : e17 Module : apps/e Dir : e17/apps/e/src/bin Modified Files: e_border.c e_int_config_keybindings.c Log Message: * Allow the E_EVENT_FOCUS_IN/OUT to be sent iff the focus is set explicitly. Otherwise, the event is set on each focus callback, not even if the border already has focus. * Do not like autoapply in keybinding dialog. :) =================================================================== RCS file: /cvs/e/e17/apps/e/src/bin/e_border.c,v retrieving revision 1.489 retrieving revision 1.490 diff -u -3 -r1.489 -r1.490 --- e_border.c 22 May 2006 20:28:32 -0000 1.489 +++ e_border.c 27 May 2006 17:09:08 -0000 1.490 @@ -1291,12 +1291,17 @@ focused = bd; //printf("set focused to %p\n", focused); - ev = calloc(1, sizeof(E_Event_Border_Focus_In)); - ev->border = bd; - e_object_ref(E_OBJECT(bd)); - - ecore_event_add(E_EVENT_BORDER_FOCUS_IN, ev, - _e_border_event_border_focus_in_free, NULL); + if (focus && set) + { + // Let send the focus event iff the focus is set explicitly, + // not via callback + ev = calloc(1, sizeof(E_Event_Border_Focus_In)); + ev->border = bd; + e_object_ref(E_OBJECT(bd)); + + ecore_event_add(E_EVENT_BORDER_FOCUS_IN, ev, + _e_border_event_border_focus_in_free, NULL); + } } else if ((!bd->focused) && (focused == bd)) { @@ -1304,13 +1309,18 @@ focused = NULL; //printf("set focused to %p\n", focused); - - ev = calloc(1, sizeof(E_Event_Border_Focus_Out)); - ev->border = bd; - e_object_ref(E_OBJECT(bd)); - ecore_event_add(E_EVENT_BORDER_FOCUS_OUT, ev, - _e_border_event_border_focus_out_free, NULL); + if (set) + { + // Let send the focus event iff the focus is set explicitly, + // not via callback + ev = calloc(1, sizeof(E_Event_Border_Focus_Out)); + ev->border = bd; + e_object_ref(E_OBJECT(bd)); + + ecore_event_add(E_EVENT_BORDER_FOCUS_OUT, ev, + _e_border_event_border_focus_out_free, NULL); + } } } =================================================================== RCS file: /cvs/e/e17/apps/e/src/bin/e_int_config_keybindings.c,v retrieving revision 1.24 retrieving revision 1.25 diff -u -3 -r1.24 -r1.25 --- e_int_config_keybindings.c 22 May 2006 20:28:32 -0000 1.24 +++ e_int_config_keybindings.c 27 May 2006 17:09:08 -0000 1.25 @@ -311,7 +311,7 @@ v->free_cfdata = _free_data; v->basic.apply_cfdata = _basic_apply_data; v->basic.create_widgets = _basic_create_widgets; - //v->override_auto_apply = 1; + v->override_auto_apply = 1; cfd = e_config_dialog_new(con, _("Key Binding Settings"), NULL, 0, v, NULL); return cfd; |
From: Enlightenment C. <no...@cv...> - 2006-05-27 22:59:48
|
Enlightenment CVS committal Author : sndev Project : e17 Module : apps/e Dir : e17/apps/e/src/modules/ibox Modified Files: e_mod_main.c Log Message: * Focus window on uniconify. =================================================================== RCS file: /cvs/e/e17/apps/e/src/modules/ibox/e_mod_main.c,v retrieving revision 1.47 retrieving revision 1.48 diff -u -3 -r1.47 -r1.48 --- e_mod_main.c 25 May 2006 13:25:37 -0000 1.47 +++ e_mod_main.c 27 May 2006 22:58:09 -0000 1.48 @@ -672,7 +672,10 @@ ev = event_info; ic = data; if ((ev->button == 1) && (!ic->drag.dnd)) - e_border_uniconify(ic->border); + { + e_border_uniconify(ic->border); + e_border_focus_set(ic->border, 1, 1); + } } static void |
From: Enlightenment C. <no...@cv...> - 2006-05-28 11:29:54
|
Enlightenment CVS committal Author : sndev Project : e17 Module : apps/e Dir : e17/apps/e/src/bin Modified Files: e_int_gadcon_config.c Log Message: oooppps. NULL check was not performed => strange items in the list :) =================================================================== RCS file: /cvs/e/e17/apps/e/src/bin/e_int_gadcon_config.c,v retrieving revision 1.10 retrieving revision 1.11 diff -u -3 -r1.10 -r1.11 --- e_int_gadcon_config.c 21 May 2006 11:20:30 -0000 1.10 +++ e_int_gadcon_config.c 28 May 2006 11:28:14 -0000 1.11 @@ -422,9 +422,9 @@ if (cc->func.icon) icon = cc->func.icon(evas); } - e_widget_ilist_append(oi, icon, label, - _cb_select_client_instance, - cfdata, (char *)cf_gcc->name); + if (label) + e_widget_ilist_append(oi, icon, label, _cb_select_client_instance, + cfdata, (char *)cf_gcc->name); } e_widget_ilist_go(oi); |
From: Enlightenment C. <no...@cv...> - 2006-05-30 21:29:37
|
Enlightenment CVS committal Author : sndev Project : e17 Module : apps/e Dir : e17/apps/e/src/bin Modified Files: e_int_config_shelf.c Log Message: * Preventing to have more than 1 config dialog per shelf, when it is launched via E config panel. =================================================================== RCS file: /cvs/e/e17/apps/e/src/bin/e_int_config_shelf.c,v retrieving revision 1.5 retrieving revision 1.6 diff -u -3 -r1.5 -r1.6 --- e_int_config_shelf.c 22 May 2006 20:28:33 -0000 1.5 +++ e_int_config_shelf.c 30 May 2006 21:27:52 -0000 1.6 @@ -144,49 +144,6 @@ e_widget_ilist_selected_set(cfdata->ilist, e_widget_ilist_count(cfdata->ilist) - 1); } -/*static void -_cb_confirm_dialog_no(void *data, E_Dialog *dia) -{ - E_Config_Dialog_Data *cfdata; - - cfdata = data; - e_object_del(E_OBJECT(cfdata->confirm_dialog)); - cfdata->confirm_dialog = NULL; -} -static void -_cb_confirm_dialog_yes(void *data, E_Dialog *dia) -{ - E_Shelf *es; - E_Config_Shelf *cfg; - E_Config_Dialog_Data *cfdata; - - cfdata = data; - es = evas_list_nth(e_shelf_list(), e_widget_ilist_selected_get(cfdata->ilist)); - if (es) - { - cfg = es->cfg; - e_object_del(E_OBJECT(es)); - - e_config->shelves = evas_list_remove(e_config->shelves, cfg); - if (cfg->name) evas_stringshare_del(cfg->name); - if (cfg->style) evas_stringshare_del(cfg->style); - E_FREE(cfg); - e_config_save_queue(); - - _ilist_fill(cfdata); - } - - e_object_del(E_OBJECT(cfdata->confirm_dialog)); - cfdata->confirm_dialog = NULL; -} -static void -_cb_confirm_dialog_delete(E_Win *win) -{ - E_Config_Dialog_Data *cfdata; - cfdata = ((E_Dialog *)win->data)->data; - _cb_confirm_dialog_no(cfdata, cfdata->confirm_dialog); -}*/ - static void _cb_confirm_dialog_yes(void *data) { @@ -235,7 +192,7 @@ cfdata = data; es = evas_list_nth(e_shelf_list(), e_widget_ilist_selected_get(cfdata->ilist)); if (!es) return; - e_int_shelf_config(es); + if (!es->config_dialog) e_int_shelf_config(es); } static Evas_Object * |
From: Enlightenment C. <no...@cv...> - 2006-06-01 22:18:15
|
Enlightenment CVS committal Author : sndev Project : e17 Module : apps/e Dir : e17/apps/e/src/bin Modified Files: e_int_gadcon_config.c Log Message: * making the code easier * allowing to add gccs directly to a gc->clients, instead of local evas_list. =================================================================== RCS file: /cvs/e/e17/apps/e/src/bin/e_int_gadcon_config.c,v retrieving revision 1.13 retrieving revision 1.14 diff -u -3 -r1.13 -r1.14 --- e_int_gadcon_config.c 1 Jun 2006 06:44:35 -0000 1.13 +++ e_int_gadcon_config.c 1 Jun 2006 22:16:29 -0000 1.14 @@ -15,11 +15,9 @@ E_Gadcon *gc; char *cname; char *ciname; - int enabled; - Evas_Object *o_enabled, *o_disabled; Evas_Object *o_add, *o_remove, *o_instances; - Evas_List *cf_gcc; + E_Config_Gadcon *cf_gc; }; /* a nice easy setup function that does the dirty work */ @@ -50,45 +48,21 @@ static void _fill_data(E_Config_Dialog_Data *cfdata) { - int ok; - E_Config_Gadcon *cf_gc; - E_Config_Gadcon_Client *cf_gcc, *cf_gcc2; Evas_List *l; cfdata->cname = NULL; cfdata->ciname = NULL; - cfdata->cf_gcc = NULL; + cfdata->cf_gc = NULL; - ok = 0; for (l = e_config->gadcons; l; l = l->next) { - cf_gc = l->data; - if ((!strcmp(cf_gc->name, cfdata->gc->name)) && - (!strcmp(cf_gc->id, cfdata->gc->id))) + cfdata->cf_gc = l->data; + if ((!strcmp(cfdata->cf_gc->name, cfdata->gc->name)) && + (!strcmp(cfdata->cf_gc->id, cfdata->gc->id))) { - ok = 1; break; } - } - if (ok) - { - for (l = cf_gc->clients; l; l = l->next) - { - cf_gcc = l->data; - if (!cf_gcc->name) continue; - - cf_gcc2 = E_NEW(E_Config_Gadcon_Client, 1); - cf_gcc2->name = evas_stringshare_add(cf_gcc->name); - cf_gcc2->id = evas_stringshare_add(cf_gcc->id); - cf_gcc2->geom.res = cf_gcc->geom.res; - cf_gcc2->geom.size = cf_gcc->geom.size; - cf_gcc2->geom.pos = cf_gcc->geom.pos; - cf_gcc2->style = !cf_gcc->style ? NULL : evas_stringshare_add(cf_gcc->style); - cf_gcc2->autoscroll = cf_gcc->autoscroll; - cf_gcc2->resizable = cf_gcc->resizable; - - cfdata->cf_gcc = evas_list_append(cfdata->cf_gcc, cf_gcc2); - } + cfdata->cf_gc = NULL; } } @@ -113,19 +87,6 @@ /* Free the cfdata */ cfdata->gc->config_dialog = NULL; - while (cfdata->cf_gcc) - { - E_Config_Gadcon_Client *cf_gcc = cfdata->cf_gcc->data; - - if (cf_gcc->name) evas_stringshare_del(cf_gcc->name); - if (cf_gcc->id) evas_stringshare_del(cf_gcc->id); - if (cf_gcc->style) evas_stringshare_del(cf_gcc->style); - free(cf_gcc); - - cfdata->cf_gcc = evas_list_remove_list(cfdata->cf_gcc, cfdata->cf_gcc); - } - - if (cfdata->cname) free(cfdata->cname); if (cfdata->ciname) free(cfdata->ciname); free(cfdata); @@ -135,61 +96,7 @@ static int _basic_apply_data(E_Config_Dialog *cfd, E_Config_Dialog_Data *cfdata) { - int ok = 0; - E_Config_Gadcon *cf_gc; - E_Config_Gadcon_Client *cf_gcc; - Evas_List *l; - - Evas_List *new_clients = NULL; - - - for (l = e_config->gadcons; l; l = l->next) - { - cf_gc = l->data; - if ((!strcmp(cf_gc->name, cfdata->gc->name)) && - (!strcmp(cf_gc->id, cfdata->gc->id))) - { - ok = 1; - break; - } - } - if (!ok) return 1; - - //FIXME: some how the settings of the gadcon should be updated before - //saving it. - while (cf_gc->clients) - { - cf_gcc = cf_gc->clients->data; - - if (!cf_gcc->name) - new_clients = evas_list_append(new_clients, cf_gcc); - else - { - if (cf_gcc->name) evas_stringshare_del(cf_gcc->name); - if (cf_gcc->id) evas_stringshare_del(cf_gcc->id); - if (cf_gcc->style) evas_stringshare_del(cf_gcc->style); - free(cf_gcc); - } - cf_gc->clients = evas_list_remove_list(cf_gc->clients, cf_gc->clients); - } - cf_gc->clients = new_clients; - - for (l = cfdata->cf_gcc; l; l = l->next) - { - E_Config_Gadcon_Client *cf_gcc2 = l->data; - - cf_gcc = E_NEW(E_Config_Gadcon_Client, 1); - cf_gcc->name = evas_stringshare_add(cf_gcc2->name); - cf_gcc->id = evas_stringshare_add(cf_gcc2->id); - cf_gcc->geom.res = cf_gcc2->geom.res; - cf_gcc->geom.size = cf_gcc2->geom.size; - cf_gcc->geom.pos = cf_gcc2->geom.pos; - cf_gcc->style = !cf_gcc2->style ? NULL : evas_stringshare_add(cf_gcc2->style); - cf_gcc->autoscroll = cf_gcc2->autoscroll; - cf_gcc->resizable = cf_gcc2->resizable; - - cf_gc->clients = evas_list_append(cf_gc->clients, cf_gcc); - } + if (!cfdata->cf_gc) return 1; e_gadcon_unpopulate(cfdata->gc); e_gadcon_populate(cfdata->gc); @@ -263,7 +170,7 @@ cf_gcc->autoscroll = 0; cf_gcc->resizable = 0; - cfdata->cf_gcc = evas_list_append(cfdata->cf_gcc, cf_gcc); + cfdata->cf_gc->clients = evas_list_append(cfdata->cf_gc->clients, cf_gcc); cc = NULL; for (l = e_gadcon_provider_list(); l; l = l->next) @@ -281,6 +188,7 @@ if (cc->func.icon) icon = cc->func.icon(evas_object_evas_get(cfdata->o_instances)); } + if (!label) label = ""; e_widget_ilist_append(cfdata->o_instances, icon, label, _cb_select_client_instance, cfdata, (char *)cf_gcc->name); @@ -297,10 +205,11 @@ E_Config_Gadcon_Client *cf_gcc; Evas_List *l, *l2; + cfdata = data; i = e_widget_ilist_selected_get(cfdata->o_instances); - l = evas_list_nth_list(cfdata->cf_gcc, i); + l = evas_list_nth_list(cfdata->cf_gc->clients, i); cf_gcc = l->data; if (cf_gcc->name) evas_stringshare_del(cf_gcc->name); @@ -308,10 +217,10 @@ if (cf_gcc->style) evas_stringshare_del(cf_gcc->style); free(cf_gcc); - cfdata->cf_gcc = evas_list_remove_list(cfdata->cf_gcc, l); - + cfdata->cf_gc->clients = evas_list_remove_list(cfdata->cf_gc->clients, l); + e_widget_ilist_clear(cfdata->o_instances); - for (l = cfdata->cf_gcc; l; l = l->next) + for (l = cfdata->cf_gc->clients; l; l = l->next) { E_Gadcon_Client_Class *cc; char *label = NULL; @@ -332,6 +241,7 @@ if (cc->func.icon) icon = cc->func.icon(evas_object_evas_get(cfdata->o_instances)); } + if (!label) label = ""; e_widget_ilist_append(cfdata->o_instances, icon, label, _cb_select_client_instance, cfdata, (char *)cf_gcc->name); @@ -356,7 +266,6 @@ Evas_Coord wmw, wmh; Evas_List *l, *l2; E_Config_Gadcon_Client *cf_gcc; - //int ok; /* FIXME: this is just raw config now - it needs UI improvments */ o = e_widget_list_add(evas, 0, 1); @@ -389,7 +298,6 @@ ob = e_widget_button_add(evas, _("Add Gadget"), NULL, _cb_add_instance, cfdata, NULL); e_widget_framelist_object_append(of, ob); -// e_widget_frametable_object_append(oft, ob, 0, 1, 1, 1, 1, 1, 1, 1); e_widget_disabled_set(ob, 1); cfdata->o_add = ob; @@ -399,12 +307,12 @@ oi = e_widget_ilist_add(evas, 24, 24, &(cfdata->ciname)); - for (l = cfdata->cf_gcc; l; l = l->next) + for (l = cfdata->cf_gc->clients; l; l = l->next) { E_Gadcon_Client_Class *cc; char *label; Evas_Object *icon; - + cf_gcc = l->data; cc = NULL; label = NULL; @@ -418,12 +326,12 @@ { if (cc->func.label) label = cc->func.label(); if (!label) label = cc->name; - if (cc->func.icon) + if (cc->func.icon) icon = cc->func.icon(evas); } if (label) - e_widget_ilist_append(oi, icon, label, _cb_select_client_instance, - cfdata, (char *)cf_gcc->name); + e_widget_ilist_append(oi, icon, label, _cb_select_client_instance, + cfdata, (char *)cf_gcc->name); } e_widget_ilist_go(oi); |
From: Enlightenment C. <no...@cv...> - 2006-06-03 00:05:03
|
Enlightenment CVS committal Author : sndev Project : e17 Module : apps/e Dir : e17/apps/e/src/modules/ibox Modified Files: e_mod_config.c e_mod_main.c e_mod_main.h Log Message: Improving ibox. * New config options that allow to show iconified wins from all zones/current zone/all zone desktops/current zone desktop. * fixing multiple config dialogs issue. Only one config dialog is allowed per module instance. =================================================================== RCS file: /cvs/e/e17/apps/e/src/modules/ibox/e_mod_config.c,v retrieving revision 1.21 retrieving revision 1.22 diff -u -3 -r1.21 -r1.22 --- e_mod_config.c 25 May 2006 13:25:37 -0000 1.21 +++ e_mod_config.c 3 Jun 2006 00:03:09 -0000 1.22 @@ -7,6 +7,15 @@ struct _E_Config_Dialog_Data { int show_label; + + int zone_policy; + int desk_policy; + + struct + { + Evas_Object *o_desk_show_all; + Evas_Object *o_desk_show_active; + } gui; }; /* Protos */ @@ -15,6 +24,11 @@ static Evas_Object *_basic_create_widgets(E_Config_Dialog *cfd, Evas *evas, E_Config_Dialog_Data *cfdata); static int _basic_apply_data(E_Config_Dialog *cfd, E_Config_Dialog_Data *cfdata); +static Evas_Object *_advanced_create_widgets(E_Config_Dialog *cfd, Evas *evas, E_Config_Dialog_Data *cfdata); +static int _advanced_apply_data(E_Config_Dialog *cfd, E_Config_Dialog_Data *cfdata); + +static void _cb_zone_policy_change(void *data, Evas_Object *obj); + void _config_ibox_module(Config_Item *ci) { @@ -34,13 +48,15 @@ /* Create The Dialog */ cfd = e_config_dialog_new(e_container_current_get(e_manager_current_get()), _("IBox Configuration"), NULL, 0, v, ci); - ibox_config->config_dialog = cfd; + ibox_config->config_dialog = evas_list_append(ibox_config->config_dialog, cfd); } static void _fill_data(Config_Item *ci, E_Config_Dialog_Data *cfdata) { cfdata->show_label = ci->show_label; + cfdata->zone_policy = ci->show_zone; + cfdata->desk_policy = ci->show_desk; } static void * @@ -58,32 +74,110 @@ static void _free_data(E_Config_Dialog *cfd, E_Config_Dialog_Data *cfdata) { - ibox_config->config_dialog = NULL; + ibox_config->config_dialog = evas_list_remove(ibox_config->config_dialog, cfd); free(cfdata); } static Evas_Object * _basic_create_widgets(E_Config_Dialog *cfd, Evas *evas, E_Config_Dialog_Data *cfdata) { - Evas_Object *o, *of, *ob; - + E_Radio_Group *rg; + Evas_Object *o, *ol, *of, *ob; + + Evas_List *l, *l2; + int zone_count; + char buf[256]; + o = e_widget_list_add(evas, 0, 0); + of = e_widget_framelist_add(evas, _("General Settings"), 0); ob = e_widget_check_add(evas, _("Show Icon Label"), &(cfdata->show_label)); e_widget_framelist_object_append(of, ob); e_widget_list_object_append(o, of, 1, 1, 0.5); - + + of = e_widget_framelist_add(evas, _("Zone"), 0); + + zone_count = 0; + for (l = e_manager_list(); l; l = l->next) + { + E_Manager *man; + man = l->data; + + for (l2 = man->containers; l2; l2 = l2->next) + { + E_Container *con; + + con = l2->data; + zone_count += evas_list_count(con->zones); + } + } + + if (zone_count <= 1) cfdata->zone_policy = 1; + + rg = e_widget_radio_group_new((int *)&(cfdata->zone_policy)); + ob = e_widget_radio_add(evas, _("Show windows from all zones"), 0, rg); + e_widget_on_change_hook_set(ob, _cb_zone_policy_change, cfdata); + e_widget_framelist_object_append(of, ob); + if (zone_count <= 1) e_widget_disabled_set(ob, 1); + + ob = e_widget_radio_add(evas, _("Show windows from current zone"), 1, rg); + e_widget_on_change_hook_set(ob, _cb_zone_policy_change, cfdata); + e_widget_framelist_object_append(of, ob); + + e_widget_list_object_append(o, of, 1, 1, 0.5); + + of = e_widget_framelist_add(evas, _("Desktop"), 0); + + rg = e_widget_radio_group_new((int *)&(cfdata->desk_policy)); + ob = e_widget_radio_add(evas, _("Show windows from all desktops"), 0, rg); + e_widget_framelist_object_append(of, ob); + if (cfdata->zone_policy == 0) e_widget_disabled_set(ob, 1); + cfdata->gui.o_desk_show_all = ob; + + ob = e_widget_radio_add(evas, _("Show windows from active desktop"), 1, rg); + e_widget_framelist_object_append(of, ob); + if (cfdata->zone_policy == 0) e_widget_disabled_set(ob, 1); + cfdata->gui.o_desk_show_active = ob; + + e_widget_list_object_append(o, of, 1, 1, 0.5); + return o; } -static int +static int _basic_apply_data(E_Config_Dialog *cfd, E_Config_Dialog_Data *cfdata) { Config_Item *ci; ci = cfd->data; ci->show_label = cfdata->show_label; + + ci->show_zone = cfdata->zone_policy; + ci->show_desk = cfdata->desk_policy; + _ibox_config_update(); e_config_save_queue(); return 1; +} + + +/****** callbacks **********/ + +static void +_cb_zone_policy_change(void *data, Evas_Object *obj) +{ + E_Config_Dialog_Data *cfdata; + + cfdata = data; + + if (cfdata->zone_policy == 0) + { + e_widget_disabled_set(cfdata->gui.o_desk_show_all, 1); + e_widget_disabled_set(cfdata->gui.o_desk_show_active, 1); + } + else + { + e_widget_disabled_set(cfdata->gui.o_desk_show_all, 0); + e_widget_disabled_set(cfdata->gui.o_desk_show_active, 0); + } } =================================================================== RCS file: /cvs/e/e17/apps/e/src/modules/ibox/e_mod_main.c,v retrieving revision 1.50 retrieving revision 1.51 diff -u -3 -r1.50 -r1.51 --- e_mod_main.c 1 Jun 2006 06:44:37 -0000 1.50 +++ e_mod_main.c 3 Jun 2006 00:03:09 -0000 1.51 @@ -53,6 +53,8 @@ int drop_before; Evas_List *icons; int show_label; + int show_zone; + int show_desk; E_Zone *zone; }; @@ -88,7 +90,8 @@ static void _ibox_icon_fill(IBox_Icon *ic); static void _ibox_icon_empty(IBox_Icon *ic); static void _ibox_icon_signal_emit(IBox_Icon *ic, char *sig, char *src); -static IBox *_ibox_zone_find(E_Zone *zone); +//static IBox *_ibox_zone_find(E_Zone *zone); +static Evas_List *_ibox_zone_find(E_Zone *zone); static int _ibox_cb_timer_drop_recalc(void *data); static void _ibox_cb_obj_moveresize(void *data, Evas *e, Evas_Object *obj, void *event_info); static void _ibox_cb_menu_post(void *data, E_Menu *m); @@ -111,6 +114,7 @@ static int _ibox_cb_event_border_uniconify(void *data, int type, void *event); static int _ibox_cb_event_border_icon_change(void *data, int type, void *event); static int _ibox_cb_event_border_zone_set(void *data, int type, void *event); +static int _ibox_cb_event_desk_show(void *data, int type, void *event); static Config_Item *_ibox_config_item_get(const char *id); static E_Config_DD *conf_edd = NULL; @@ -137,6 +141,10 @@ b = _ibox_new(gc->evas, gc->zone); b->show_label = ci->show_label; + b->show_zone = ci->show_zone; + b->show_desk = ci->show_desk; + _ibox_fill(b); + b->inst = inst; inst->ibox = b; o = b->o_box; @@ -249,7 +257,6 @@ e_box_orientation_set(b->o_box, 1); e_box_align_set(b->o_box, 0.5, 0.5); b->zone = zone; - _ibox_fill(b); return b; } @@ -344,15 +351,34 @@ IBox_Icon *ic; E_Border_List *bl; E_Border *bd; + int ok; bl = e_container_border_list_first(b->zone->container); while ((bd = e_container_border_list_next(bl))) { - if ((bd->zone == b->zone) && (bd->iconic)) + ok = 0; + if ((b->show_zone == 0) && (bd->iconic)) { + ok = 1; + } + else if((b->show_zone == 1) && (bd->iconic)) + { + if ((b->show_desk == 0) && (bd->zone == b->zone)) + { + ok = 1; + } + else if((b->show_desk == 1) && (bd->zone == b->zone) && + (bd->desk == e_desk_current_get(b->zone))) + { + ok = 1; + } + } + + if (ok) + { ic = _ibox_icon_new(b, bd); - b->icons = evas_list_append(b->icons, ic); - e_box_pack_end(b->o_box, ic->o_holder); + b->icons = evas_list_append(b->icons, ic); + e_box_pack_end(b->o_box, ic->o_holder); } } @@ -547,19 +573,29 @@ edje_object_signal_emit(ic->o_icon2, sig, src); } -static IBox * +static Evas_List * _ibox_zone_find(E_Zone *zone) { + Evas_List *ibox = NULL; Evas_List *l; - + for (l = ibox_config->instances; l; l = l->next) { Instance *inst; + Config_Item *ci; inst = l->data; - if (inst->ibox->zone == zone) return inst->ibox; + ci = _ibox_config_item_get(inst->gcc->id); + if (!ci) continue; + + if (ci->show_zone == 0) + ibox = evas_list_append(ibox, inst->ibox); + else if (ci->show_zone == 1) + { + if (inst->ibox->zone == zone) ibox = evas_list_append(ibox, inst->ibox); + } } - return NULL; + return ibox; } static int @@ -971,6 +1007,7 @@ static int _ibox_cb_event_border_add(void *data, int type, void *event) { + int ok; E_Event_Border_Add *ev; IBox *b; IBox_Icon *ic; @@ -979,16 +1016,23 @@ /* add if iconic */ if (ev->border->iconic) { - b = _ibox_zone_find(ev->border->zone); - if (!b) return 1; - if (_ibox_icon_find(b, ev->border)) return 1; - ic = _ibox_icon_new(b, ev->border); - if (!ic) return 1; - b->icons = evas_list_append(b->icons, ic); - e_box_pack_end(b->o_box, ic->o_holder); - _ibox_empty_handle(b); - _ibox_resize_handle(b); - _gc_orient(b->inst->gcc); + Evas_List *l, *ibox; + ibox = _ibox_zone_find(ev->border->zone); + for (l = ibox; l; l = l->next) + { + b = l->data; + if (_ibox_icon_find(b, ev->border)) continue; + ic = _ibox_icon_new(b, ev->border); + if (!ic) continue; + b->icons = evas_list_append(b->icons, ic); + e_box_pack_end(b->o_box, ic->o_holder); + _ibox_empty_handle(b); + _ibox_resize_handle(b); + _gc_orient(b->inst->gcc); + } + + while (ibox) + ibox = evas_list_remove_list(ibox, ibox); } return 1; } @@ -999,18 +1043,25 @@ E_Event_Border_Remove *ev; IBox *b; IBox_Icon *ic; + Evas_List *l, *ibox; ev = event; /* find icon and remove if there */ - b = _ibox_zone_find(ev->border->zone); - if (!b) return 1; - ic = _ibox_icon_find(b, ev->border); - if (!ic) return 1; - _ibox_icon_free(ic); - b->icons = evas_list_remove(b->icons, ic); - _ibox_empty_handle(b); - _ibox_resize_handle(b); - _gc_orient(b->inst->gcc); + ibox = _ibox_zone_find(ev->border->zone); + for (l = ibox; l; l = l->next) + { + b = l->data; + ic = _ibox_icon_find(b, ev->border); + if (!ic) continue; + _ibox_icon_free(ic); + b->icons = evas_list_remove(b->icons, ic); + _ibox_empty_handle(b); + _ibox_resize_handle(b); + _gc_orient(b->inst->gcc); + } + while (ibox) + ibox = evas_list_remove_list(ibox, ibox); + return 1; } @@ -1020,20 +1071,27 @@ E_Event_Border_Iconify *ev; IBox *b; IBox_Icon *ic; + Evas_List *l, *ibox; ev = event; /* add icon for ibox for right zone */ /* do some sort of anim when iconifying */ - b = _ibox_zone_find(ev->border->zone); - if (!b) return 1; - if (_ibox_icon_find(b, ev->border)) return 1; - ic = _ibox_icon_new(b, ev->border); - if (!ic) return 1; - b->icons = evas_list_append(b->icons, ic); - e_box_pack_end(b->o_box, ic->o_holder); - _ibox_empty_handle(b); - _ibox_resize_handle(b); - _gc_orient(b->inst->gcc); + ibox = _ibox_zone_find(ev->border->zone); + for (l = ibox; l; l = l->next) + { + b = l->data; + if (_ibox_icon_find(b, ev->border)) continue; + ic = _ibox_icon_new(b, ev->border); + if (!ic) continue; + b->icons = evas_list_append(b->icons, ic); + e_box_pack_end(b->o_box, ic->o_holder); + _ibox_empty_handle(b); + _ibox_resize_handle(b); + _gc_orient(b->inst->gcc); + } + + while (ibox) + ibox = evas_list_remove_list(ibox, ibox); return 1; } @@ -1043,19 +1101,27 @@ E_Event_Border_Uniconify *ev; IBox *b; IBox_Icon *ic; + Evas_List *l, *ibox; ev = event; /* del icon for ibox for right zone */ /* do some sort of anim when uniconifying */ - b = _ibox_zone_find(ev->border->zone); - if (!b) return 1; - ic = _ibox_icon_find(b, ev->border); - if (!ic) return 1; - _ibox_icon_free(ic); - b->icons = evas_list_remove(b->icons, ic); - _ibox_empty_handle(b); - _ibox_resize_handle(b); - _gc_orient(b->inst->gcc); + ibox = _ibox_zone_find(ev->border->zone); + for (l = ibox; l; l = l->next) + { + b = l->data; + ic = _ibox_icon_find(b, ev->border); + if (!ic) continue; + _ibox_icon_free(ic); + b->icons = evas_list_remove(b->icons, ic); + _ibox_empty_handle(b); + _ibox_resize_handle(b); + _gc_orient(b->inst->gcc); + } + + while (ibox) + ibox = evas_list_remove_list(ibox, ibox); + return 1; } @@ -1065,15 +1131,23 @@ E_Event_Border_Icon_Change *ev; IBox *b; IBox_Icon *ic; + Evas_List *l, *ibox; ev = event; /* update icon */ - b = _ibox_zone_find(ev->border->zone); - if (!b) return 1; - ic = _ibox_icon_find(b, ev->border); - if (!ic) return 1; - _ibox_icon_empty(ic); - _ibox_icon_fill(ic); + ibox = _ibox_zone_find(ev->border->zone); + for (l = ibox; l; l = l->next) + { + b = l->data; + ic = _ibox_icon_find(b, ev->border); + if (!ic) continue; + _ibox_icon_empty(ic); + _ibox_icon_fill(ic); + } + + while (ibox) + ibox = evas_list_remove_list(ibox, ibox); + return 1; } @@ -1092,6 +1166,30 @@ return 1; } +static int _ibox_cb_event_desk_show(void *data, int type, void *event) +{ + E_Event_Desk_Show *ev; + IBox *b; + Evas_List *l, *ibox; + + ev = event; + /* delete all wins from ibox and add only for current desk */ + ibox = _ibox_zone_find(ev->desk->zone); + for (l = ibox; l; l = l->next) + { + b = l->data; + _ibox_empty(b); + _ibox_fill(b); + _ibox_resize_handle(b); + _gc_orient(b->inst->gcc); + } + + while (ibox) + ibox = evas_list_remove_list(ibox, ibox); + + return 1; +} + static Config_Item * _ibox_config_item_get(const char *id) { @@ -1107,6 +1205,8 @@ ci = E_NEW(Config_Item, 1); ci->id = evas_stringshare_add(id); ci->show_label = 0; + ci->show_zone = 1; + ci->show_desk = 0; ibox_config->items = evas_list_append(ibox_config->items, ci); return ci; } @@ -1123,6 +1223,13 @@ inst = l->data; ci = _ibox_config_item_get(inst->gcc->id); inst->ibox->show_label = ci->show_label; + inst->ibox->show_zone = ci->show_zone; + inst->ibox->show_desk = ci->show_desk; + + _ibox_empty(inst->ibox); + _ibox_fill(inst->ibox); + _ibox_resize_handle(inst->ibox); + _gc_orient(inst->gcc); } } @@ -1131,10 +1238,23 @@ { IBox *b; Config_Item *ci; + int ok = 1; + Evas_List *l; b = data; ci = _ibox_config_item_get(b->inst->gcc->id); - _config_ibox_module(ci); + for (l = ibox_config->config_dialog; l; l = l->next) + { + E_Config_Dialog *cfd; + + cfd = l->data; + if (cfd->data == ci) + { + ok = 0; + break; + } + } + if (ok) _config_ibox_module(ci); } /***************************************************************************/ @@ -1156,6 +1276,8 @@ #define D conf_item_edd E_CONFIG_VAL(D, T, id, STR); E_CONFIG_VAL(D, T, show_label, INT); + E_CONFIG_VAL(D, T, show_zone, INT); + E_CONFIG_VAL(D, T, show_desk, INT); conf_edd = E_CONFIG_DD_NEW("IBox_Config", Config); #undef T @@ -1174,6 +1296,8 @@ ci = E_NEW(Config_Item, 1); ci->id = evas_stringshare_add("0"); ci->show_label = 0; + ci->show_zone = 1; + ci->show_desk = 0; ibox_config->items = evas_list_append(ibox_config->items, ci); } @@ -1197,6 +1321,9 @@ ibox_config->handlers = evas_list_append (ibox_config->handlers, ecore_event_handler_add (E_EVENT_BORDER_ZONE_SET, _ibox_cb_event_border_zone_set, NULL)); + ibox_config->handlers = evas_list_append + (ibox_config->handlers, ecore_event_handler_add + (E_EVENT_DESK_SHOW, _ibox_cb_event_desk_show, NULL)); /* FIXME: add these later for things taskbar-like functionality ibox_config->handlers = evas_list_append @@ -1224,14 +1351,18 @@ { e_gadcon_provider_unregister(&_gadcon_class); - if (ibox_config->config_dialog) - e_object_del(E_OBJECT(ibox_config->config_dialog)); - while (ibox_config->handlers) { ecore_event_handler_del(ibox_config->handlers->data); ibox_config->handlers = evas_list_remove_list(ibox_config->handlers, ibox_config->handlers); } + + while (ibox_config->config_dialog) + /* there is no need to eves_list_remove_list. It is done implicitly in + * dialog _free_data function + */ + e_object_del(E_OBJECT(ibox_config->config_dialog->data)); + if (ibox_config->menu) { e_menu_post_deactivate_callback_set(ibox_config->menu, NULL, NULL); =================================================================== RCS file: /cvs/e/e17/apps/e/src/modules/ibox/e_mod_main.h,v retrieving revision 1.16 retrieving revision 1.17 diff -u -3 -r1.16 -r1.17 --- e_mod_main.h 1 Jun 2006 06:44:37 -0000 1.16 +++ e_mod_main.h 3 Jun 2006 00:03:09 -0000 1.17 @@ -15,13 +15,15 @@ E_Menu *menu; Evas_List *handlers; Evas_List *items; - E_Config_Dialog *config_dialog; + Evas_List *config_dialog;//E_Config_Dialog *; }; struct _Config_Item { const char *id; int show_label; + int show_zone; + int show_desk; }; EAPI extern E_Module_Api e_modapi; |
From: Enlightenment C. <no...@cv...> - 2006-06-03 00:05:27
|
Enlightenment CVS committal Author : sndev Project : e17 Module : apps/e Dir : e17/apps/e Modified Files: TODO Log Message: Improving ibox. * New config options that allow to show iconified wins from all zones/current zone/all zone desktops/current zone desktop. * fixing multiple config dialogs issue. Only one config dialog is allowed per module instance. =================================================================== RCS file: /cvs/e/e17/apps/e/TODO,v retrieving revision 1.335 retrieving revision 1.336 diff -u -3 -r1.335 -r1.336 --- TODO 2 Jun 2006 19:10:20 -0000 1.335 +++ TODO 3 Jun 2006 00:03:09 -0000 1.336 @@ -82,9 +82,6 @@ * option to allow flipping desktops to wrap at virtual desktop grid edges * window menu with raise/lower for windows (obviously missing currently) -* ibox should have options "Show from this desktop", "Show from all desktops", - "show from zones", "show from this zone", etc. Similarly to those, that are - in winlist. * winlist and exebuf can let the mouse select items * option to NOT raise on focus in click to focus * switch to desktop of a new window if it opens on another desktop than the |
From: Enlightenment C. <no...@cv...> - 2006-06-06 02:59:43
|
Enlightenment CVS committal Author : sndev Project : e17 Module : apps/e Dir : e17/apps/e/data/themes Modified Files: default_desklock.edc Log Message: * fixing desklock cfg dialog bug. * removing comments. =================================================================== RCS file: /cvs/e/e17/apps/e/data/themes/default_desklock.edc,v retrieving revision 1.6 retrieving revision 1.7 diff -u -3 -r1.6 -r1.7 --- default_desklock.edc 19 Mar 2006 12:24:19 -0000 1.6 +++ default_desklock.edc 5 Jun 2006 16:47:55 -0000 1.7 @@ -202,206 +202,3 @@ } } -/*group { - name, "widgets/desklock/main"; - parts - { - part { - name: "background_image"; - description { - state: "default" 0.0; - image { - normal: "e17_brushed.png"; - } - fill { - size { - relative: 0 0; - offset: 400 300; - } - } - } - } - part { - name: "reflection_shadow_overlay"; - description { - state: "default" 0.0; - image { - normal: "e17_"SM"reflection_shadow_overlay.png"; - } - } - } - part - { - name: "logo"; - mouse_events: 0; - description - { - state: "default" 0.0; - min: 64 64; - max: 64 64; - //align: 0.5 0.0; - rel1 - { - relative: 0.45 0.5; - offset: 0 0; - } - rel2 - { - relative: 0.45 0.5; - offset: 0 0; - } - image - { - normal: "e17_logo.png"; - } - } - } - part - { - name: "label"; - type: TEXT; - effect: SHADOW; - description { - state: "default" 0.0; - color: 0 0 0 255; - fixed: 0 1; - align: 0.0 0.5; - rel1 - { - relative: 1.0 0.0; - offset: 20 0; - to: "logo"; - } - rel2 - { - relative: 1.0 0.3; - offset: 0 0; - to: "logo"; - } - - color: 0 0 0 255; - color3: 255 255 255 128; - text { - text: "Please enter your unlock password"; - font: "Edje-Vera-Bold"; - size: 10; - align: 0.0 0.5; - min: 1 1; - text_class: "desklock_title"; - } - } - } - part - { - name: "passwd_entry_clip"; - type: RECT; - mouse_events: 0; - description - { - state: "default" 0.0; - visible: 1; - rel1 - { - relative: 0.0 0.0; - offset: 10 10; - to: "passwd_border"; - } - rel2 - { - relative: 1.0 1.0; - offset: -17 -10; - to: "passwd_border"; - } - } - } - part - { - name: "passwd"; - type: TEXT; - effect: SHADOW; - clip_to: "passwd_entry_clip"; - description { - state: "default" 0.0; - color: 0 0 0 255; - fixed: 0 1; - align: 0.0 0.5; - - rel1 - { - relative: 0.0 0.0; - offset: 0 0; - to: "passwd_entry_clip"; - } - rel2 - { - relative: 0.0 1.0; - offset: 0 0; - to: "passwd_entry_clip"; - } - - color: 0 0 0 255; - color3: 255 255 255 128; - text { - text: "****"; - font: "Edje-Vera-Bold"; - size: 16; - align: 0.0 0.5; - min: 1 1; - text_class: "desklock_passwd"; - } - } - } - part - { - name: "cursor"; - mouse_events: 0; - clip_to: "passwd_entry_clip"; - description { - state: "default" 0.0; - min: 16 16; - max: 16 16; - align: 0.0 0.5; - fixed: 1 1; - rel1 { - relative: 1.0 0.0; - offset: 0 -2; - to: "passwd"; - } - rel2 { - relative: 1.0 0.9; - offset: 0 0; - to: "passwd"; - } - image { - normal: "e17_entry_cursor.png"; - } - } - } - part - { - name: "passwd_border"; - mouse_events: 0; - description - { - state: "default" 0.0; - rel1 - { - relative: 1.0 0.3; - offset: 0 0; - to: "logo"; - } - rel2 - { - relative: 5.0 0.9; - offset: 0 0; - to: "logo"; - } - image - { - normal: "e17_gadman_overlay.png"; - border: 15 15 15 15; - } - } - } - } -}*/ |
From: Enlightenment C. <no...@cv...> - 2006-06-06 03:03:21
|
Enlightenment CVS committal Author : sndev Project : e17 Module : apps/e Dir : e17/apps/e/src/bin Modified Files: e_int_config_desklock.c Log Message: * fixing desklock cfg dialog bug. * removing comments. =================================================================== RCS file: /cvs/e/e17/apps/e/src/bin/e_int_config_desklock.c,v retrieving revision 1.18 retrieving revision 1.19 diff -u -3 -r1.18 -r1.19 --- e_int_config_desklock.c 1 Jun 2006 04:09:33 -0000 1.18 +++ e_int_config_desklock.c 5 Jun 2006 16:47:55 -0000 1.19 @@ -523,6 +523,7 @@ eebuf = ecore_evas_buffer_new(1, 1); evasbuf = ecore_evas_get(eebuf); + ic = NULL; /* Desklock background */ o = edje_object_add(evasbuf); f1 = e_theme_edje_file_get("base/theme/desklock", "desklock/background"); @@ -535,19 +536,19 @@ ic = e_thumb_generate_begin(c, BG_LIST_ICON_SIZE_W, BG_LIST_ICON_SIZE_H, cfdata->evas, &ic, NULL, NULL); else - ic = e_thumb_evas_object_get(c, cfdata->evas, BG_LIST_ICON_SIZE_W, BG_LIST_ICON_SIZE_H, 1); - - + ic = e_thumb_evas_object_get(c, cfdata->evas, BG_LIST_ICON_SIZE_W, + BG_LIST_ICON_SIZE_H, 1); + e_widget_ilist_append(cfdata->gui.bg_list, ic, _("Theme Desklock Background"), _ibg_list_cb_bg_selected, cfdata, DEF_DESKLOCK_BACKGROUND); } - if ((!e_config->desklock_background) || + if ((e_config->desklock_background) && (!strcmp(e_config->desklock_background, DEF_DESKLOCK_BACKGROUND))) - e_widget_ilist_selected_set(cfdata->gui.bg_list, 0); + e_widget_ilist_selected_set(cfdata->gui.bg_list, 1); im = e_widget_preview_add(cfdata->evas, BG_PREVIEW_W, BG_PREVIEW_H); - e_widget_preview_edje_set(im, c, "desktop/background"); + e_widget_preview_edje_set(im, c, "desklock/background"); evas_object_del(o); ecore_evas_free(eebuf); @@ -561,22 +562,25 @@ o = edje_object_add(evasbuf); f = e_theme_edje_file_get("base/theme/backgrounds", "desktop/background"); c = strdup(f); + ic = NULL; if (edje_object_file_set(o, f, "desktop/background")) { if (!e_thumb_exists(c)) ic = e_thumb_generate_begin(c, BG_LIST_ICON_SIZE_W, BG_LIST_ICON_SIZE_H, cfdata->evas, &ic, NULL, NULL); else - ic = e_thumb_evas_object_get(c, cfdata->evas, BG_LIST_ICON_SIZE_W, BG_LIST_ICON_SIZE_H, 1); + ic = e_thumb_evas_object_get(c, cfdata->evas, BG_LIST_ICON_SIZE_W, + BG_LIST_ICON_SIZE_H, 1); - e_widget_ilist_append(cfdata->gui.bg_list, ic, _("Theme Background"), _ibg_list_cb_bg_selected, - cfdata, DEF_THEME_BACKGROUND); + e_widget_ilist_append(cfdata->gui.bg_list, ic, _("Theme Background"), + _ibg_list_cb_bg_selected, cfdata, DEF_THEME_BACKGROUND); } if ((e_config->desklock_background) && (!strcmp(e_config->desklock_background, DEF_THEME_BACKGROUND))) { - e_widget_ilist_selected_set(cfdata->gui.bg_list, 1); + e_widget_ilist_selected_set(cfdata->gui.bg_list, 2); + evas_object_del(im); im = e_widget_preview_add(cfdata->evas, BG_PREVIEW_W, BG_PREVIEW_H); e_widget_preview_edje_set(im, c, "desktop/background"); } @@ -652,7 +656,7 @@ const char *theme; theme = e_theme_edje_file_get("base/theme/desklock", "desklock/background"); - e_widget_preview_edje_set(cfdata->preview_image, theme, "desktop/background"); + e_widget_preview_edje_set(cfdata->preview_image, theme, "desklock/background"); } else if (!strcmp(cfdata->cur_bg, DEF_THEME_BACKGROUND)) { @@ -669,7 +673,7 @@ const char *theme; theme = e_theme_edje_file_get("base/theme/desklock", "desklock/background"); - e_widget_preview_edje_set(cfdata->preview_image, theme, "desktop/background"); + e_widget_preview_edje_set(cfdata->preview_image, theme, "desklock/background"); } } |
From: Enlightenment C. <no...@cv...> - 2006-06-08 09:31:50
|
Enlightenment CVS committal Author : sndev Project : e17 Module : apps/e Dir : e17/apps/e/src/bin Modified Files: e_actions.c Log Message: * fixing parameters of the "Maximize Vertical" and "Maximize Horizontal" actions wrt the last raster commits. Users: have to redefine those actions. =================================================================== RCS file: /cvs/e/e17/apps/e/src/bin/e_actions.c,v retrieving revision 1.64 retrieving revision 1.65 diff -u -3 -r1.64 -r1.65 --- e_actions.c 8 Jun 2006 07:28:11 -0000 1.64 +++ e_actions.c 8 Jun 2006 09:29:53 -0000 1.65 @@ -1550,10 +1550,10 @@ e_register_action_predef_name(_("Window : State"), _("Maximize"), "window_maximized_toggle", NULL, EDIT_RESTRICT_ACTION | EDIT_RESTRICT_PARAMS, 0); e_register_action_predef_name(_("Window : State"), _("Maximize Vertically"), - "window_maximized_toggle", "vertical", + "window_maximized_toggle", "default vertical", EDIT_RESTRICT_ACTION | EDIT_RESTRICT_PARAMS, 0); e_register_action_predef_name(_("Window : State"), _("Maximize Horizontally"), - "window_maximized_toggle", "horizontal", + "window_maximized_toggle", "default horizontal", EDIT_RESTRICT_ACTION | EDIT_RESTRICT_PARAMS, 0); e_register_action_predef_name(_("Window : State"), _("Maximize Fullscreen"), "window_maximized_toggle", "fullscreen", |
From: Enlightenment C. <no...@cv...> - 2006-06-09 22:17:49
|
Enlightenment CVS committal Author : sndev Project : e17 Module : apps/e Dir : e17/apps/e/src/bin Modified Files: e_actions.c e_config.c e_int_config_desklock.c e_int_config_window_manipulation.c Log Message: * improving maximization behavior. i.e. if the window is maximized vertically, it is not denied to maximize it horizontally. * fixing some mess between basic/advanced window manipulation cfg dialogs. * fixing initial keybindings. =================================================================== RCS file: /cvs/e/e17/apps/e/src/bin/e_actions.c,v retrieving revision 1.65 retrieving revision 1.66 diff -u -3 -r1.65 -r1.66 --- e_actions.c 8 Jun 2006 09:29:53 -0000 1.65 +++ e_actions.c 9 Jun 2006 22:15:11 -0000 1.66 @@ -379,9 +379,19 @@ if (sscanf(params, "%20s %20s", s1, s2) == 2) { if (!strcmp(s2, "vertical")) - e_border_unmaximize(bd, E_MAXIMIZE_VERTICAL); + { + if (bd->maximized & E_MAXIMIZE_VERTICAL) + e_border_unmaximize(bd, E_MAXIMIZE_VERTICAL); + else + goto maximize; + } else if (!strcmp(s2, "horizontal")) - e_border_unmaximize(bd, E_MAXIMIZE_HORIZONTAL); + { + if (bd->maximized & E_MAXIMIZE_HORIZONTAL) + e_border_unmaximize(bd, E_MAXIMIZE_HORIZONTAL); + else + goto maximize; + } else e_border_unmaximize(bd, E_MAXIMIZE_BOTH); } @@ -390,7 +400,8 @@ } } else - { + { + maximize: if (!params) e_border_maximize(bd, e_config->maximize_policy); else =================================================================== RCS file: /cvs/e/e17/apps/e/src/bin/e_config.c,v retrieving revision 1.180 retrieving revision 1.181 diff -u -3 -r1.180 -r1.181 --- e_config.c 8 Jun 2006 15:15:57 -0000 1.180 +++ e_config.c 9 Jun 2006 22:15:11 -0000 1.181 @@ -779,10 +779,10 @@ "window_maximized_toggle", NULL); CFG_KEYBIND(E_BINDING_CONTEXT_ANY, "F10", E_BINDING_MODIFIER_ALT, 0, - "window_maximized_toggle", "vertical"); + "window_maximized_toggle", "default vertical"); CFG_KEYBIND(E_BINDING_CONTEXT_ANY, "F10", E_BINDING_MODIFIER_CTRL, 0, - "window_maximized_toggle", "horizontal"); + "window_maximized_toggle", "default horizontal"); CFG_KEYBIND(E_BINDING_CONTEXT_ANY, "r", E_BINDING_MODIFIER_CTRL | E_BINDING_MODIFIER_ALT, 0, "window_shaded_toggle", NULL); =================================================================== RCS file: /cvs/e/e17/apps/e/src/bin/e_int_config_desklock.c,v retrieving revision 1.20 retrieving revision 1.21 diff -u -3 -r1.20 -r1.21 --- e_int_config_desklock.c 8 Jun 2006 19:35:39 -0000 1.20 +++ e_int_config_desklock.c 9 Jun 2006 22:15:11 -0000 1.21 @@ -543,7 +543,7 @@ _ibg_list_cb_bg_selected, cfdata, DEF_DESKLOCK_BACKGROUND); } - if ((e_config->desklock_background) && + if ((!e_config->desklock_background) || (!strcmp(e_config->desklock_background, DEF_DESKLOCK_BACKGROUND))) e_widget_ilist_selected_set(cfdata->gui.bg_list, 1); =================================================================== RCS file: /cvs/e/e17/apps/e/src/bin/e_int_config_window_manipulation.c,v retrieving revision 1.10 retrieving revision 1.11 diff -u -3 -r1.10 -r1.11 --- e_int_config_window_manipulation.c 7 Jun 2006 23:30:12 -0000 1.10 +++ e_int_config_window_manipulation.c 9 Jun 2006 22:15:11 -0000 1.11 @@ -99,8 +99,8 @@ /* Actually take our cfdata settings and apply them in real life */ e_config->use_auto_raise = cfdata->use_auto_raise; e_config->use_resist = cfdata->use_resist; - e_config->maximize_policy &= ~E_MAXIMIZE_TYPE; - e_config->maximize_policy &= cfdata->maximize_policy; + //e_config->maximize_policy &= ~E_MAXIMIZE_TYPE; + e_config->maximize_policy = cfdata->maximize_policy | cfdata->maximize_direction; e_config_save_queue(); return 1; /* Apply was OK */ } |
From: Enlightenment C. <no...@cv...> - 2006-06-10 11:10:28
|
Enlightenment CVS committal Author : sndev Project : e17 Module : apps/e Dir : e17/apps/e/src/bin Modified Files: e_border.c Log Message: * improvment of the restoration of the window maximization on E restart. =================================================================== RCS file: /cvs/e/e17/apps/e/src/bin/e_border.c,v retrieving revision 1.494 retrieving revision 1.495 diff -u -3 -r1.494 -r1.495 --- e_border.c 8 Jun 2006 19:02:11 -0000 1.494 +++ e_border.c 10 Jun 2006 11:08:27 -0000 1.495 @@ -1551,6 +1551,8 @@ if (bd->new_client) { bd->need_maximize = 1; + bd->maximized &= ~E_MAXIMIZE_TYPE; + bd->maximized |= max; return; } @@ -5958,7 +5960,10 @@ if (bd->need_maximize) { - e_border_maximize(bd, e_config->maximize_policy); + E_Maximize max; + max = bd->maximized; + bd->maximized = E_MAXIMIZE_NONE; + e_border_maximize(bd, max); bd->need_maximize = 0; } |
From: Enlightenment C. <no...@cv...> - 2006-06-14 18:43:09
|
Enlightenment CVS committal Author : sndev Project : e17 Module : apps/e Dir : e17/apps/e/src/bin Modified Files: e_int_gadcon_config.c Log Message: We donnot need ok/apply buttons in the "shelf contents" config dialog since the dialog directly operates on the gadcon client list. Therefore, if gcc is add and the dialog just closed then we have an inconsistency until the gcc will be unpopulated-populated. Moreover, thats much nicer from the UI point of view. =================================================================== RCS file: /cvs/e/e17/apps/e/src/bin/e_int_gadcon_config.c,v retrieving revision 1.15 retrieving revision 1.16 diff -u -3 -r1.15 -r1.16 --- e_int_gadcon_config.c 7 Jun 2006 23:30:12 -0000 1.15 +++ e_int_gadcon_config.c 14 Jun 2006 18:43:07 -0000 1.16 @@ -6,7 +6,6 @@ /* PROTOTYPES - same all the time */ static void *_create_data(E_Config_Dialog *cfd); static void _free_data(E_Config_Dialog *cfd, E_Config_Dialog_Data *cfdata); -static int _basic_apply_data(E_Config_Dialog *cfd, E_Config_Dialog_Data *cfdata); static Evas_Object *_basic_create_widgets(E_Config_Dialog *cfd, Evas *evas, E_Config_Dialog_Data *cfdata); /* Actual config data we will be playing with whil the dialog is active */ @@ -33,7 +32,7 @@ /* methods */ v->create_cfdata = _create_data; v->free_cfdata = _free_data; - v->basic.apply_cfdata = _basic_apply_data; + v->basic.apply_cfdata = NULL; //_basic_apply_data; v->basic.create_widgets = _basic_create_widgets; v->override_auto_apply = 1; @@ -94,18 +93,6 @@ free(cfdata); } -/**--APPLY--**/ -static int -_basic_apply_data(E_Config_Dialog *cfd, E_Config_Dialog_Data *cfdata) -{ - if (!cfdata->cf_gc) return 1; - - e_gadcon_unpopulate(cfdata->gc); - e_gadcon_populate(cfdata->gc); - e_config_save_queue(); - return 1; -} - static void _cb_select_client(void *data) { @@ -197,6 +184,10 @@ e_widget_ilist_go(cfdata->o_instances); e_widget_ilist_selected_set(cfdata->o_instances, e_widget_ilist_count(cfdata->o_instances) - 1); + + e_gadcon_unpopulate(cfdata->gc); + e_gadcon_populate(cfdata->gc); + e_config_save_queue(); } static void @@ -257,6 +248,9 @@ e_widget_disabled_set(cfdata->o_remove, 1); else e_widget_ilist_selected_set(cfdata->o_instances, i); + e_gadcon_unpopulate(cfdata->gc); + e_gadcon_populate(cfdata->gc); + e_config_save_queue(); } /**--GUI--**/ |
From: Enlightenment C. <no...@cv...> - 2006-07-16 19:03:11
|
Enlightenment CVS committal Author : sndev Project : e17 Module : apps/e Dir : e17/apps/e/src/bin Modified Files: e_int_config_keybindings.c Log Message: * Adding new "KEYS" icon for the E config panel and keybinding config dialog =================================================================== RCS file: /cvs/e/e17/apps/e/src/bin/e_int_config_keybindings.c,v retrieving revision 1.31 retrieving revision 1.32 diff -u -3 -r1.31 -r1.32 --- e_int_config_keybindings.c 2 Jul 2006 16:19:51 -0000 1.31 +++ e_int_config_keybindings.c 17 Jul 2006 00:03:08 -0000 1.32 @@ -13,7 +13,7 @@ #define TEXT_PRESS_KEY_SEQUENCE _("Please press key sequence,<br>" \ "or <hilight>Escape</hilight> to abort") -#define ILIST_ICON_WITH_KEYBIND "enlightenment/e" +#define ILIST_ICON_WITH_KEYBIND "enlightenment/keys" #define ILIST_ICON_WITHOUT_KEYBIND "" #define AG_UNSORTED _("Unsorted") |
From: Enlightenment C. <no...@cv...> - 2006-07-16 19:03:39
|
Enlightenment CVS committal Author : sndev Project : e17 Module : apps/e Dir : e17/apps/e/data/themes/images Modified Files: Makefile.am Added Files: e17_icon_keys.png Log Message: * Adding new "KEYS" icon for the E config panel and keybinding config dialog =================================================================== RCS file: /cvs/e/e17/apps/e/data/themes/images/Makefile.am,v retrieving revision 1.60 retrieving revision 1.61 diff -u -3 -r1.60 -r1.61 --- Makefile.am 5 Jul 2006 19:22:48 -0000 1.60 +++ Makefile.am 17 Jul 2006 00:03:08 -0000 1.61 @@ -379,6 +379,7 @@ e17_icon_screen_right.png \ e17_icon_screen_vflip.png \ e17_icon_mouse.png \ +e17_icon_keys.png \ e17_button_detail_paste.png \ e17_button_detail_arrange_name.png \ e17_button_detail_properties.png \ |