diff --git a/src/modules/conf_edgebindings/e_int_config_edgebindings.c b/src/modules/conf_edgebindings/e_int_config_edgebindings.c index 8474268cc..e75bc91d5 100644 --- a/src/modules/conf_edgebindings/e_int_config_edgebindings.c +++ b/src/modules/conf_edgebindings/e_int_config_edgebindings.c @@ -1,86 +1,86 @@ #include "e.h" -#define TEXT_NONE_ACTION_EDGE _("") -#define TEXT_PRESS_EDGE_SEQUENCE _("Please select an edge,
" \ - "or click Close to abort.

" \ - "You can either specify a delay of this
action using " \ - "the slider, or make it
respond to edge clicks:" \ - ) +#define TEXT_NONE_ACTION_EDGE _("") +#define TEXT_PRESS_EDGE_SEQUENCE _("Please select an edge,
" \ + "or click Close to abort.

" \ + "You can either specify a delay of this
action using " \ + "the slider, or make it
respond to edge clicks:" \ + ) -#define TEXT_NO_PARAMS _("") +#define TEXT_NO_PARAMS _("") -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 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); + E_Config_Dialog_Data *cfdata); /********* private functions ***************/ -static void _fill_actions_list(E_Config_Dialog_Data *cfdata); +static void _fill_actions_list(E_Config_Dialog_Data *cfdata); /**************** Updates ***********/ -static void _update_edge_binding_list(E_Config_Dialog_Data *cfdata); -static void _update_action_list(E_Config_Dialog_Data *cfdata); -static void _update_action_params(E_Config_Dialog_Data *cfdata); -static void _update_buttons(E_Config_Dialog_Data *cfdata); +static void _update_edge_binding_list(E_Config_Dialog_Data *cfdata); +static void _update_action_list(E_Config_Dialog_Data *cfdata); +static void _update_action_params(E_Config_Dialog_Data *cfdata); +static void _update_buttons(E_Config_Dialog_Data *cfdata); /**************** Callbacks *********/ -static void _binding_change_cb(void *data); -static void _action_change_cb(void *data); -static void _delete_all_edge_binding_cb(void *data, void *data2); -static void _delete_edge_binding_cb(void *data, void *data2); -static void _restore_edge_binding_defaults_cb(void *data, void *data2); -static void _add_edge_binding_cb(void *data, void *data2); -static void _modify_edge_binding_cb(void *data, void *data2); +static void _binding_change_cb(void *data); +static void _action_change_cb(void *data); +static void _delete_all_edge_binding_cb(void *data, void *data2); +static void _delete_edge_binding_cb(void *data, void *data2); +static void _restore_edge_binding_defaults_cb(void *data, void *data2); +static void _add_edge_binding_cb(void *data, void *data2); +static void _modify_edge_binding_cb(void *data, void *data2); /********* Helper *************************/ -static char *_edge_binding_text_get(E_Zone_Edge edge, float delay, int mod); -static void _auto_apply_changes(E_Config_Dialog_Data *cfdata); -static void _find_edge_binding_action(const char *action, const char *params, int *g, int *a, int *n); +static char *_edge_binding_text_get(E_Zone_Edge edge, float delay, int mod); +static void _auto_apply_changes(E_Config_Dialog_Data *cfdata); +static void _find_edge_binding_action(const char *action, const char *params, int *g, int *a, int *n); /********* Sorting ************************/ -static int _edge_binding_sort_cb(const void *d1, const void *d2); +static int _edge_binding_sort_cb(const void *d1, const void *d2); /**************** grab window *******/ -static void _edge_grab_wnd_show(E_Config_Dialog_Data *cfdata); -static void _edge_grab_wnd_cb_apply(void *data, E_Dialog *dia); -static void _edge_grab_wnd_cb_close(void *data, E_Dialog *dia); -static void _edge_grab_wnd_slider_changed_cb(void *data, Evas_Object *obj); -static void _edge_grab_wnd_check_changed_cb(void *data, Evas_Object *obj); -static void _edge_grab_wnd_selected_edge_cb(void *data, Evas *e, Evas_Object *obj, void *event_info); -static void _edge_grab_wnd_selection_apply(E_Config_Dialog_Data *cfdata); +static void _edge_grab_wnd_show(E_Config_Dialog_Data *cfdata); +static void _edge_grab_wnd_cb_apply(void *data, E_Dialog *dia); +static void _edge_grab_wnd_cb_close(void *data, E_Dialog *dia); +static void _edge_grab_wnd_slider_changed_cb(void *data, Evas_Object *obj); +static void _edge_grab_wnd_check_changed_cb(void *data, Evas_Object *obj); +static void _edge_grab_wnd_selected_edge_cb(void *data, Evas *e, Evas_Object *obj, void *event_info); +static void _edge_grab_wnd_selection_apply(E_Config_Dialog_Data *cfdata); struct _E_Config_Dialog_Data { Evas *evas; struct - { - Eina_List *edge; - } binding; + { + Eina_List *edge; + } binding; struct - { - const char *binding, *action; - char *params; - const char *cur; - double delay; - int click; - int cur_act, add; - E_Zone_Edge edge; - int modifiers; + { + const char *binding, *action; + char *params; + const char *cur; + double delay; + int click; + int cur_act, add; + E_Zone_Edge edge; + int modifiers; - E_Dialog *dia; - } locals; + E_Dialog *dia; + } locals; struct - { - Evas_Object *o_add, *o_mod, *o_del, *o_del_all; - Evas_Object *o_binding_list, *o_action_list; - Evas_Object *o_params, *o_selector, *o_slider, *o_check; - } gui; + { + Evas_Object *o_add, *o_mod, *o_del, *o_del_all; + Evas_Object *o_binding_list, *o_action_list; + Evas_Object *o_params, *o_selector, *o_slider, *o_check; + } gui; - const char *params; + const char *params; - int fullscreen_flip; + int fullscreen_flip; E_Config_Dialog *cfd; }; @@ -100,13 +100,13 @@ e_int_config_edgebindings(E_Container *con, const char *params) v->basic.create_widgets = _basic_create_widgets; v->override_auto_apply = 1; - cfd = e_config_dialog_new(con, _("Edge Bindings Settings"), "E", - "keyboard_and_mouse/edge_bindings", - "enlightenment/edges", 0, v, NULL); + cfd = e_config_dialog_new(con, _("Edge Bindings Settings"), "E", + "keyboard_and_mouse/edge_bindings", + "enlightenment/edges", 0, v, NULL); if ((params) && (params[0])) { - cfd->cfdata->params = eina_stringshare_add(params); - _add_edge_binding_cb(cfd->cfdata, NULL); + cfd->cfdata->params = eina_stringshare_add(params); + _add_edge_binding_cb(cfd->cfdata, NULL); } return cfd; @@ -129,18 +129,18 @@ _fill_data(E_Config_Dialog_Data *cfdata) EINA_LIST_FOREACH(e_config->edge_bindings, l, bi) { - if (!bi) continue; + if (!bi) continue; - bi2 = E_NEW(E_Config_Binding_Edge, 1); - bi2->context = bi->context; - bi2->edge = bi->edge; - bi2->modifiers = bi->modifiers; - bi2->any_mod = bi->any_mod; - bi2->delay = bi->delay; - bi2->action = eina_stringshare_ref(bi->action); - bi2->params = eina_stringshare_ref(bi->params); + bi2 = E_NEW(E_Config_Binding_Edge, 1); + bi2->context = bi->context; + bi2->edge = bi->edge; + bi2->modifiers = bi->modifiers; + bi2->any_mod = bi->any_mod; + bi2->delay = bi->delay; + bi2->action = eina_stringshare_ref(bi->action); + bi2->params = eina_stringshare_ref(bi->params); - cfdata->binding.edge = eina_list_append(cfdata->binding.edge, bi2); + cfdata->binding.edge = eina_list_append(cfdata->binding.edge, bi2); } cfdata->fullscreen_flip = e_config->fullscreen_flip; @@ -165,9 +165,9 @@ _free_data(E_Config_Dialog *cfd __UNUSED__, E_Config_Dialog_Data *cfdata) EINA_LIST_FREE(cfdata->binding.edge, bi) { - eina_stringshare_del(bi->action); - eina_stringshare_del(bi->params); - E_FREE(bi); + eina_stringshare_del(bi->action); + eina_stringshare_del(bi->params); + E_FREE(bi); } eina_stringshare_del(cfdata->locals.cur); @@ -193,46 +193,46 @@ _basic_apply_data(E_Config_Dialog *cfd __UNUSED__, E_Config_Dialog_Data *cfdata) EINA_LIST_FREE(e_config->edge_bindings, bi) { - e_bindings_edge_del(bi->context, bi->edge, bi->modifiers, bi->any_mod, - bi->action, bi->params, bi->delay); - eina_stringshare_del(bi->action); - eina_stringshare_del(bi->params); - E_FREE(bi); + e_bindings_edge_del(bi->context, bi->edge, bi->modifiers, bi->any_mod, + bi->action, bi->params, bi->delay); + eina_stringshare_del(bi->action); + eina_stringshare_del(bi->params); + E_FREE(bi); } EINA_LIST_FOREACH(cfdata->binding.edge, l, bi2) { - bi = E_NEW(E_Config_Binding_Edge, 1); - bi->context = bi2->context; - bi->edge = bi2->edge; - bi->modifiers = bi2->modifiers; - bi->any_mod = bi2->any_mod; - bi->delay = bi2->delay; - bi->action = - ((!bi2->action) || (!bi2->action[0])) ? NULL : eina_stringshare_add(bi2->action); - bi->params = - ((!bi2->params) || (!bi2->params[0])) ? NULL : eina_stringshare_add(bi2->params); + bi = E_NEW(E_Config_Binding_Edge, 1); + bi->context = bi2->context; + bi->edge = bi2->edge; + bi->modifiers = bi2->modifiers; + bi->any_mod = bi2->any_mod; + bi->delay = bi2->delay; + bi->action = + ((!bi2->action) || (!bi2->action[0])) ? NULL : eina_stringshare_add(bi2->action); + bi->params = + ((!bi2->params) || (!bi2->params[0])) ? NULL : eina_stringshare_add(bi2->params); - e_config->edge_bindings = eina_list_append(e_config->edge_bindings, bi); - e_bindings_edge_add(bi->context, bi->edge, bi->modifiers, bi->any_mod, - bi->action, bi->params, bi->delay); + e_config->edge_bindings = eina_list_append(e_config->edge_bindings, bi); + e_bindings_edge_add(bi->context, bi->edge, bi->modifiers, bi->any_mod, + bi->action, bi->params, bi->delay); } if (cfdata->fullscreen_flip != e_config->fullscreen_flip) { - if(cfdata->fullscreen_flip) - layer = 250; - else - layer = 200; + if (cfdata->fullscreen_flip) + layer = 250; + else + layer = 200; - EINA_LIST_FOREACH(e_manager_list(), l, man) - { - EINA_LIST_FOREACH(man->containers, ll, con) - { - EINA_LIST_FOREACH(con->zones, lll, zone) - e_zone_edge_win_layer_set(zone, layer); - } - } + EINA_LIST_FOREACH(e_manager_list(), l, man) + { + EINA_LIST_FOREACH(man->containers, ll, con) + { + EINA_LIST_FOREACH(con->zones, lll, zone) + e_zone_edge_win_layer_set(zone, layer); + } + } } e_config->fullscreen_flip = cfdata->fullscreen_flip; @@ -250,10 +250,10 @@ _basic_create_widgets(E_Config_Dialog *cfd, Evas *evas, E_Config_Dialog_Data *cf cfdata->evas = evas; o = e_widget_list_add(evas, 0, 0); ol = e_widget_list_add(evas, 0, 1); - + of = e_widget_frametable_add(evas, _("Edge Bindings"), 0); ob = e_widget_ilist_add(evas, 32, 32, &(cfdata->locals.binding)); - cfdata->gui.o_binding_list = ob; + cfdata->gui.o_binding_list = ob; e_widget_size_min_set(ob, 200, 160); e_widget_frametable_object_append(of, ob, 0, 0, 2, 1, 1, 1, 1, 1); ob = e_widget_button_add(evas, _("Add"), "list-add", _add_edge_binding_cb, cfdata, NULL); @@ -274,7 +274,7 @@ _basic_create_widgets(E_Config_Dialog *cfd, Evas *evas, E_Config_Dialog_Data *cf ob = e_widget_button_add(evas, _("Restore Default Bindings"), "enlightenment", _restore_edge_binding_defaults_cb, cfdata, NULL); e_widget_frametable_object_append(of, ob, 0, 3, 2, 1, 1, 0, 1, 0); e_widget_list_object_append(ol, of, 1, 1, 0.5); - + ot = e_widget_table_add(evas, 0); of = e_widget_framelist_add(evas, _("Action"), 0); ob = e_widget_ilist_add(evas, 24, 24, &(cfdata->locals.action)); @@ -282,7 +282,7 @@ _basic_create_widgets(E_Config_Dialog *cfd, Evas *evas, E_Config_Dialog_Data *cf e_widget_size_min_set(ob, 200, 240); e_widget_framelist_object_append(of, ob); e_widget_table_object_append(ot, of, 0, 0, 1, 1, 1, 1, 1, 1); - + of = e_widget_framelist_add(evas, _("Action Params"), 0); ob = e_widget_entry_add(evas, &(cfdata->locals.params), NULL, NULL, NULL); cfdata->gui.o_params = ob; @@ -317,24 +317,24 @@ _fill_actions_list(E_Config_Dialog_Data *cfdata) evas_event_freeze(evas_object_evas_get(cfdata->gui.o_action_list)); edje_freeze(); e_widget_ilist_freeze(cfdata->gui.o_action_list); - + e_widget_ilist_clear(cfdata->gui.o_action_list); for (l = e_action_groups_get(), g = 0; l; l = l->next, g++) { - actg = l->data; + actg = l->data; - if (!actg->acts) continue; + if (!actg->acts) continue; - e_widget_ilist_header_append(cfdata->gui.o_action_list, NULL, _(actg->act_grp)); + e_widget_ilist_header_append(cfdata->gui.o_action_list, NULL, _(actg->act_grp)); - for (l2 = actg->acts, a = 0; l2; l2 = l2->next, a++) - { - actd = l2->data; + for (l2 = actg->acts, a = 0; l2; l2 = l2->next, a++) + { + actd = l2->data; - snprintf(buf, sizeof(buf), "%d %d", g, a); - e_widget_ilist_append(cfdata->gui.o_action_list, NULL, _(actd->act_name), - _action_change_cb, cfdata, buf); - } + snprintf(buf, sizeof(buf), "%d %d", g, a); + e_widget_ilist_append(cfdata->gui.o_action_list, NULL, _(actd->act_name), + _action_change_cb, cfdata, buf); + } } e_widget_ilist_go(cfdata->gui.o_action_list); e_widget_ilist_thaw(cfdata->gui.o_action_list); @@ -368,19 +368,19 @@ _modify_edge_binding_cb(void *data, void *data2 __UNUSED__) cfdata->locals.add = 0; if (cfdata->locals.cur && cfdata->locals.cur[0]) - { - E_Config_Binding_Edge *bi; - int n; + { + E_Config_Binding_Edge *bi; + int n; - if (sscanf(cfdata->locals.cur, "e%d", &n) != 1) - return; + if (sscanf(cfdata->locals.cur, "e%d", &n) != 1) + return; - bi = eina_list_nth(cfdata->binding.edge, n); - cfdata->locals.edge = bi->edge; - cfdata->locals.delay = ((double) bi->delay); - if (bi->delay == -1.0) cfdata->locals.click = 1; - else cfdata->locals.click = 0; - cfdata->locals.modifiers = bi->modifiers; + bi = eina_list_nth(cfdata->binding.edge, n); + cfdata->locals.edge = bi->edge; + cfdata->locals.delay = ((double)bi->delay); + if (bi->delay == -1.0) cfdata->locals.click = 1; + else cfdata->locals.click = 0; + cfdata->locals.modifiers = bi->modifiers; } else return; _edge_grab_wnd_show(cfdata); @@ -397,7 +397,7 @@ _binding_change_cb(void *data) if (cfdata->locals.cur) eina_stringshare_del(cfdata->locals.cur); cfdata->locals.cur = NULL; - if ((!cfdata->locals.binding) || (!cfdata->locals.binding[0])) return; + if ((!cfdata->locals.binding) || (!cfdata->locals.binding[0])) return; cfdata->locals.cur = eina_stringshare_ref(cfdata->locals.binding); @@ -424,9 +424,9 @@ _delete_all_edge_binding_cb(void *data, void *data2 __UNUSED__) EINA_LIST_FREE(cfdata->binding.edge, bi) { - eina_stringshare_del(bi->action); - eina_stringshare_del(bi->params); - E_FREE(bi); + eina_stringshare_del(bi->action); + eina_stringshare_del(bi->params); + E_FREE(bi); } eina_stringshare_del(cfdata->locals.cur); @@ -454,20 +454,20 @@ _delete_edge_binding_cb(void *data, void *data2 __UNUSED__) sel = e_widget_ilist_selected_get(cfdata->gui.o_binding_list); if (cfdata->locals.binding[0] == 'e') { - if (sscanf(cfdata->locals.binding, "e%d", &n) != 1) - return; + if (sscanf(cfdata->locals.binding, "e%d", &n) != 1) + return; - l = eina_list_nth_list(cfdata->binding.edge, n); + l = eina_list_nth_list(cfdata->binding.edge, n); - if (l) - { - bi = eina_list_data_get(l); - eina_stringshare_del(bi->action); - eina_stringshare_del(bi->params); - E_FREE(bi); + if (l) + { + bi = eina_list_data_get(l); + eina_stringshare_del(bi->action); + eina_stringshare_del(bi->params); + E_FREE(bi); - cfdata->binding.edge = eina_list_remove_list(cfdata->binding.edge, l); - } + cfdata->binding.edge = eina_list_remove_list(cfdata->binding.edge, l); + } } _update_edge_binding_list(cfdata); @@ -477,16 +477,17 @@ _delete_edge_binding_cb(void *data, void *data2 __UNUSED__) eina_stringshare_del(cfdata->locals.cur); cfdata->locals.cur = NULL; - + e_widget_ilist_selected_set(cfdata->gui.o_binding_list, sel); if (sel < 0) { - e_widget_ilist_unselect(cfdata->gui.o_action_list); - e_widget_entry_clear(cfdata->gui.o_params); - e_widget_disabled_set(cfdata->gui.o_params, 1); - _update_buttons(cfdata); + e_widget_ilist_unselect(cfdata->gui.o_action_list); + e_widget_entry_clear(cfdata->gui.o_params); + e_widget_disabled_set(cfdata->gui.o_params, 1); + _update_buttons(cfdata); } } + static void _restore_edge_binding_defaults_cb(void *data, void *data2 __UNUSED__) { @@ -497,30 +498,30 @@ _restore_edge_binding_defaults_cb(void *data, void *data2 __UNUSED__) EINA_LIST_FREE(cfdata->binding.edge, bi) { - eina_stringshare_del(bi->action); - eina_stringshare_del(bi->params); - E_FREE(bi); + eina_stringshare_del(bi->action); + eina_stringshare_del(bi->params); + E_FREE(bi); } #define CFG_EDGEBIND_DFLT(_context, _edge, _modifiers, _anymod, _action, _params, _delay) \ - bi = E_NEW(E_Config_Binding_Edge, 1); \ - bi->context = _context; \ - bi->edge = _edge; \ - bi->modifiers = _modifiers; \ - bi->any_mod = _anymod; \ - bi->delay = _delay; \ - bi->action = eina_stringshare_add(_action); \ - bi->params = eina_stringshare_add(_params); \ - cfdata->binding.edge = eina_list_append(cfdata->binding.edge, bi) + bi = E_NEW(E_Config_Binding_Edge, 1); \ + bi->context = _context; \ + bi->edge = _edge; \ + bi->modifiers = _modifiers; \ + bi->any_mod = _anymod; \ + bi->delay = _delay; \ + bi->action = eina_stringshare_add(_action); \ + bi->params = eina_stringshare_add(_params); \ + cfdata->binding.edge = eina_list_append(cfdata->binding.edge, bi) CFG_EDGEBIND_DFLT(E_BINDING_CONTEXT_ZONE, E_ZONE_EDGE_LEFT, - 0, 0, "desk_flip_in_direction", NULL, 0.3); + 0, 0, "desk_flip_in_direction", NULL, 0.3); CFG_EDGEBIND_DFLT(E_BINDING_CONTEXT_ZONE, E_ZONE_EDGE_RIGHT, - 0, 0, "desk_flip_in_direction", NULL, 0.3); + 0, 0, "desk_flip_in_direction", NULL, 0.3); CFG_EDGEBIND_DFLT(E_BINDING_CONTEXT_ZONE, E_ZONE_EDGE_TOP, - 0, 0, "desk_flip_in_direction", NULL, 0.3); + 0, 0, "desk_flip_in_direction", NULL, 0.3); CFG_EDGEBIND_DFLT(E_BINDING_CONTEXT_ZONE, E_ZONE_EDGE_BOTTOM, - 0, 0, "desk_flip_in_direction", NULL, 0.3); + 0, 0, "desk_flip_in_direction", NULL, 0.3); eina_stringshare_del(cfdata->locals.cur); cfdata->locals.cur = NULL; @@ -545,19 +546,19 @@ _update_action_list(E_Config_Dialog_Data *cfdata) if (cfdata->locals.cur[0] == 'e') { - if (sscanf(cfdata->locals.cur, "e%d", &n) != 1) - return; + if (sscanf(cfdata->locals.cur, "e%d", &n) != 1) + return; - bi = eina_list_nth(cfdata->binding.edge, n); - if (!bi) - { - e_widget_ilist_unselect(cfdata->gui.o_action_list); - e_widget_entry_clear(cfdata->gui.o_params); - e_widget_disabled_set(cfdata->gui.o_params, 1); - return; - } - action = bi->action; - params = bi->params; + bi = eina_list_nth(cfdata->binding.edge, n); + if (!bi) + { + e_widget_ilist_unselect(cfdata->gui.o_action_list); + e_widget_entry_clear(cfdata->gui.o_params); + e_widget_disabled_set(cfdata->gui.o_params, 1); + return; + } + action = bi->action; + params = bi->params; } else return; @@ -565,66 +566,66 @@ _update_action_list(E_Config_Dialog_Data *cfdata) _find_edge_binding_action(action, params, NULL, NULL, &j); if (j >= 0) - { - for (i = 0; i < e_widget_ilist_count(cfdata->gui.o_action_list); i++) - { - if (i > j) break; - if (e_widget_ilist_nth_is_header(cfdata->gui.o_action_list, i)) j++; - } - } + { + for (i = 0; i < e_widget_ilist_count(cfdata->gui.o_action_list); i++) + { + if (i > j) break; + if (e_widget_ilist_nth_is_header(cfdata->gui.o_action_list, i)) j++; + } + } - if (j >= 0) - { - if (j == e_widget_ilist_selected_get(cfdata->gui.o_action_list)) - _update_action_params(cfdata); - else - e_widget_ilist_selected_set(cfdata->gui.o_action_list, j); + if (j >= 0) + { + if (j == e_widget_ilist_selected_get(cfdata->gui.o_action_list)) + _update_action_params(cfdata); + else + e_widget_ilist_selected_set(cfdata->gui.o_action_list, j); } else - { - e_widget_ilist_unselect(cfdata->gui.o_action_list); - eina_stringshare_del(cfdata->locals.action); - cfdata->locals.action = eina_stringshare_add(""); - e_widget_entry_clear(cfdata->gui.o_params); + { + e_widget_ilist_unselect(cfdata->gui.o_action_list); + eina_stringshare_del(cfdata->locals.action); + cfdata->locals.action = eina_stringshare_add(""); + e_widget_entry_clear(cfdata->gui.o_params); } /*if (cfdata->locals.cur[0] == 'e') - { - sscanf(cfdata->locals.cur, "e%d", &n); - bi = eina_list_nth(cfdata->binding.edge, n); - if (!bi) - { - e_widget_ilist_unselect(cfdata->gui.o_action_list); - e_widget_entry_clear(cfdata->gui.o_params); - e_widget_disabled_set(cfdata->gui.o_params, 1); - return; - } + { + sscanf(cfdata->locals.cur, "e%d", &n); + bi = eina_list_nth(cfdata->binding.edge, n); + if (!bi) + { + e_widget_ilist_unselect(cfdata->gui.o_action_list); + e_widget_entry_clear(cfdata->gui.o_params); + e_widget_disabled_set(cfdata->gui.o_params, 1); + return; + } - _find_edge_binding_action(bi, NULL, NULL, &j); - if (j >= 0) - { - for (i = 0; i < e_widget_ilist_count(cfdata->gui.o_action_list); i++) - { - if (i > j) break; - if (e_widget_ilist_nth_is_header(cfdata->gui.o_action_list, i)) j++; - } - } - - if (j >= 0) - { - if (j == e_widget_ilist_selected_get(cfdata->gui.o_action_list)) - _update_action_params(cfdata); - else - e_widget_ilist_selected_set(cfdata->gui.o_action_list, j); - } - else - { - e_widget_ilist_unselect(cfdata->gui.o_action_list); - if (cfdata->locals.action) free(cfdata->locals.action); - cfdata->locals.action = strdup(""); - e_widget_entry_clear(cfdata->gui.o_params); - } - }*/ + _find_edge_binding_action(bi, NULL, NULL, &j); + if (j >= 0) + { + for (i = 0; i < e_widget_ilist_count(cfdata->gui.o_action_list); i++) + { + if (i > j) break; + if (e_widget_ilist_nth_is_header(cfdata->gui.o_action_list, i)) j++; + } + } + + if (j >= 0) + { + if (j == e_widget_ilist_selected_get(cfdata->gui.o_action_list)) + _update_action_params(cfdata); + else + e_widget_ilist_selected_set(cfdata->gui.o_action_list, j); + } + else + { + e_widget_ilist_unselect(cfdata->gui.o_action_list); + if (cfdata->locals.action) free(cfdata->locals.action); + cfdata->locals.action = strdup(""); + e_widget_entry_clear(cfdata->gui.o_params); + } + }*/ } static void @@ -636,18 +637,17 @@ _update_action_params(E_Config_Dialog_Data *cfdata) E_Config_Binding_Edge *bi; const char *action, *params; -#define EDGE_EXAMPLE_PARAMS \ - if ((!actd->param_example) || (!actd->param_example[0])) \ - e_widget_entry_text_set(cfdata->gui.o_params, TEXT_NO_PARAMS); \ - else \ - e_widget_entry_text_set(cfdata->gui.o_params, actd->param_example) - +#define EDGE_EXAMPLE_PARAMS \ + if ((!actd->param_example) || (!actd->param_example[0])) \ + e_widget_entry_text_set(cfdata->gui.o_params, TEXT_NO_PARAMS); \ + else \ + e_widget_entry_text_set(cfdata->gui.o_params, actd->param_example) if ((!cfdata->locals.action) || (!cfdata->locals.action[0])) { - e_widget_disabled_set(cfdata->gui.o_params, 1); - e_widget_entry_clear(cfdata->gui.o_params); - return; + e_widget_disabled_set(cfdata->gui.o_params, 1); + e_widget_entry_clear(cfdata->gui.o_params); + return; } if (sscanf(cfdata->locals.action, "%d %d", &g, &a) != 2) return; @@ -659,60 +659,60 @@ _update_action_params(E_Config_Dialog_Data *cfdata) if (actd->act_params) { - e_widget_disabled_set(cfdata->gui.o_params, 1); - e_widget_entry_text_set(cfdata->gui.o_params, actd->act_params); - return; - } - - if ((!cfdata->locals.cur) || (!cfdata->locals.cur[0])) - { - e_widget_disabled_set(cfdata->gui.o_params, 1); - EDGE_EXAMPLE_PARAMS; - return; + e_widget_disabled_set(cfdata->gui.o_params, 1); + e_widget_entry_text_set(cfdata->gui.o_params, actd->act_params); + return; } - + + if ((!cfdata->locals.cur) || (!cfdata->locals.cur[0])) + { + e_widget_disabled_set(cfdata->gui.o_params, 1); + EDGE_EXAMPLE_PARAMS; + return; + } + if (!actd->editable) e_widget_disabled_set(cfdata->gui.o_params, 1); else - e_widget_disabled_set(cfdata->gui.o_params, 0); + e_widget_disabled_set(cfdata->gui.o_params, 0); if (cfdata->locals.cur[0] == 'e') { - if (sscanf(cfdata->locals.cur, "e%d", &b) != 1) - { - e_widget_disabled_set(cfdata->gui.o_params, 1); - EDGE_EXAMPLE_PARAMS; - return; - } + if (sscanf(cfdata->locals.cur, "e%d", &b) != 1) + { + e_widget_disabled_set(cfdata->gui.o_params, 1); + EDGE_EXAMPLE_PARAMS; + return; + } - bi = eina_list_nth(cfdata->binding.edge, b); - if (!bi) - { - e_widget_disabled_set(cfdata->gui.o_params, 1); - EDGE_EXAMPLE_PARAMS; - return; - } - action = bi->action; - params = bi->params; + bi = eina_list_nth(cfdata->binding.edge, b); + if (!bi) + { + e_widget_disabled_set(cfdata->gui.o_params, 1); + EDGE_EXAMPLE_PARAMS; + return; + } + action = bi->action; + params = bi->params; } else { - e_widget_disabled_set(cfdata->gui.o_params, 1); - EDGE_EXAMPLE_PARAMS; - return; + e_widget_disabled_set(cfdata->gui.o_params, 1); + EDGE_EXAMPLE_PARAMS; + return; } if (action) { - if (!strcmp(action, actd->act_cmd)) - { - if ((!params) || (!params[0])) - EDGE_EXAMPLE_PARAMS; - else - e_widget_entry_text_set(cfdata->gui.o_params, params); - } - else - EDGE_EXAMPLE_PARAMS; + if (!strcmp(action, actd->act_cmd)) + { + if ((!params) || (!params[0])) + EDGE_EXAMPLE_PARAMS; + else + e_widget_entry_text_set(cfdata->gui.o_params, params); + } + else + EDGE_EXAMPLE_PARAMS; } else EDGE_EXAMPLE_PARAMS; @@ -729,39 +729,39 @@ _update_edge_binding_list(E_Config_Dialog_Data *cfdata) evas_event_freeze(evas_object_evas_get(cfdata->gui.o_binding_list)); edje_freeze(); e_widget_ilist_freeze(cfdata->gui.o_binding_list); - + e_widget_ilist_clear(cfdata->gui.o_binding_list); e_widget_ilist_go(cfdata->gui.o_binding_list); if (cfdata->binding.edge) { - cfdata->binding.edge = eina_list_sort(cfdata->binding.edge, - eina_list_count(cfdata->binding.edge), _edge_binding_sort_cb); + cfdata->binding.edge = eina_list_sort(cfdata->binding.edge, + eina_list_count(cfdata->binding.edge), _edge_binding_sort_cb); } for (l = cfdata->binding.edge, i = 0; l; l = l->next, i++) { - Evas_Object *ic; + Evas_Object *ic; - bi = l->data; + bi = l->data; - b = _edge_binding_text_get(bi->edge, bi->delay, bi->modifiers); - if (!b) continue; + b = _edge_binding_text_get(bi->edge, bi->delay, bi->modifiers); + if (!b) continue; - ic = edje_object_add(cfdata->evas); - e_util_edje_icon_set(ic, "enlightenment/edges"); + ic = edje_object_add(cfdata->evas); + e_util_edje_icon_set(ic, "enlightenment/edges"); - snprintf(b2, sizeof(b2), "e%d", i); - e_widget_ilist_append(cfdata->gui.o_binding_list, ic, b, - _binding_change_cb, cfdata, b2); - free(b); + snprintf(b2, sizeof(b2), "e%d", i); + e_widget_ilist_append(cfdata->gui.o_binding_list, ic, b, + _binding_change_cb, cfdata, b2); + free(b); } e_widget_ilist_go(cfdata->gui.o_binding_list); e_widget_ilist_thaw(cfdata->gui.o_binding_list); edje_thaw(); evas_event_thaw(evas_object_evas_get(cfdata->gui.o_binding_list)); - + if (eina_list_count(cfdata->binding.edge)) e_widget_disabled_set(cfdata->gui.o_del_all, 0); else @@ -771,19 +771,19 @@ _update_edge_binding_list(E_Config_Dialog_Data *cfdata) static void _update_buttons(E_Config_Dialog_Data *cfdata) { - if (e_widget_ilist_count(cfdata->gui.o_binding_list)) + if (e_widget_ilist_count(cfdata->gui.o_binding_list)) e_widget_disabled_set(cfdata->gui.o_del_all, 0); else e_widget_disabled_set(cfdata->gui.o_del_all, 1); if (!cfdata->locals.cur) { - e_widget_disabled_set(cfdata->gui.o_mod, 1); - e_widget_disabled_set(cfdata->gui.o_del, 1); - return; + e_widget_disabled_set(cfdata->gui.o_mod, 1); + e_widget_disabled_set(cfdata->gui.o_del, 1); + return; } e_widget_disabled_set(cfdata->gui.o_mod, 0); - e_widget_disabled_set(cfdata->gui.o_del, 0); + e_widget_disabled_set(cfdata->gui.o_del, 0); } /*************** Sorting *****************************/ @@ -801,21 +801,24 @@ _edge_binding_sort_cb(const void *d1, const void *d2) if (bi->modifiers & E_BINDING_MODIFIER_ALT) i++; if (bi->modifiers & E_BINDING_MODIFIER_SHIFT) i++; if (bi->modifiers & E_BINDING_MODIFIER_WIN) i++; - + if (bi2->modifiers & E_BINDING_MODIFIER_CTRL) j++; if (bi2->modifiers & E_BINDING_MODIFIER_ALT) j++; if (bi2->modifiers & E_BINDING_MODIFIER_SHIFT) j++; if (bi2->modifiers & E_BINDING_MODIFIER_WIN) j++; - + if (i < j) return -1; - else if (i > j) return 1; + else if (i > j) + return 1; if (bi->modifiers < bi2->modifiers) return -1; - else if (bi->modifiers > bi2->modifiers) return 1; + else if (bi->modifiers > bi2->modifiers) + return 1; if (bi->edge < bi2->edge) return -1; - else if (bi->edge > bi2->edge) return 1; - + else if (bi->edge > bi2->edge) + return 1; + return 0; } @@ -830,13 +833,13 @@ _edge_grab_wnd_show(E_Config_Dialog_Data *cfdata) const char *bgfile; int tw, th; char *label = NULL; - + if (cfdata->locals.dia != 0) return; man = e_manager_current_get(); - + cfdata->locals.dia = e_dialog_normal_win_new(e_container_current_get(man), - "E", "_edgebind_getedge_dialog"); + "E", "_edgebind_getedge_dialog"); if (!cfdata->locals.dia) return; e_dialog_title_set(cfdata->locals.dia, _("Edge Binding Sequence")); e_dialog_icon_set(cfdata->locals.dia, "enlightenment/edges", 48); @@ -848,7 +851,7 @@ _edge_grab_wnd_show(E_Config_Dialog_Data *cfdata) cfdata->gui.o_selector = o = edje_object_add(evas); e_theme_edje_object_set(o, "base/theme/modules/conf_edgebindings", - "e/modules/conf_edgebindings/selection"); + "e/modules/conf_edgebindings/selection"); cfdata->gui.o_slider = os = e_widget_slider_add(evas, 1, 0, _("%.2f seconds"), 0.0, 2.0, 0.05, 0, &(cfdata->locals.delay), NULL, 200); edje_object_part_swallow(o, "e.swallow.slider", os); @@ -868,12 +871,12 @@ _edge_grab_wnd_show(E_Config_Dialog_Data *cfdata) edje_object_size_min_get(o, &minw, &minh); if (!minw || !minh) { - edje_object_calc_force(o); - edje_object_size_min_calc(o, &minw, &minh); + edje_object_calc_force(o); + edje_object_size_min_calc(o, &minw, &minh); } e_dialog_content_set(cfdata->locals.dia, o, minw, minh); - + bgfile = e_bg_file_get(0, 0, 0, 0); obg = e_thumb_icon_add(evas); e_icon_fill_inside_set(obg, 0); @@ -886,9 +889,9 @@ _edge_grab_wnd_show(E_Config_Dialog_Data *cfdata) if (cfdata->locals.edge) { - label = _edge_binding_text_get(cfdata->locals.edge, ((float) cfdata->locals.delay), cfdata->locals.modifiers); - edje_object_part_text_set(cfdata->gui.o_selector, "e.text.selection", label); - if (label) E_FREE(label); + label = _edge_binding_text_get(cfdata->locals.edge, ((float)cfdata->locals.delay), cfdata->locals.modifiers); + edje_object_part_text_set(cfdata->gui.o_selector, "e.text.selection", label); + if (label) E_FREE(label); } evas_object_event_callback_add(o, EVAS_CALLBACK_MOUSE_DOWN, @@ -931,8 +934,8 @@ _edge_grab_wnd_slider_changed_cb(void *data, Evas_Object *obj __UNUSED__) char *label = NULL; if (!cfdata->locals.edge) return; - label = _edge_binding_text_get(cfdata->locals.edge, - ((float) cfdata->locals.delay), + label = _edge_binding_text_get(cfdata->locals.edge, + ((float)cfdata->locals.delay), cfdata->locals.modifiers); edje_object_part_text_set(cfdata->gui.o_selector, "e.text.selection", label); if (label) E_FREE(label); @@ -946,15 +949,15 @@ _edge_grab_wnd_check_changed_cb(void *data, Evas_Object *obj __UNUSED__) if (cfdata->locals.click) { - if (cfdata->locals.edge) - label = _edge_binding_text_get(cfdata->locals.edge, -1.0, cfdata->locals.modifiers); - e_widget_disabled_set(cfdata->gui.o_slider, 1); + if (cfdata->locals.edge) + label = _edge_binding_text_get(cfdata->locals.edge, -1.0, cfdata->locals.modifiers); + e_widget_disabled_set(cfdata->gui.o_slider, 1); } else { - if (cfdata->locals.edge) - label = _edge_binding_text_get(cfdata->locals.edge, ((float) cfdata->locals.delay), cfdata->locals.modifiers); - e_widget_disabled_set(cfdata->gui.o_slider, 0); + if (cfdata->locals.edge) + label = _edge_binding_text_get(cfdata->locals.edge, ((float)cfdata->locals.delay), cfdata->locals.modifiers); + e_widget_disabled_set(cfdata->gui.o_slider, 0); } edje_object_part_text_set(cfdata->gui.o_selector, "e.text.selection", label); @@ -969,7 +972,7 @@ _edge_grab_wnd_selected_edge_cb(void *data, Evas *e __UNUSED__, Evas_Object *obj E_Zone_Edge edge; Evas_Coord xx, yy, x, y, w, h; char *label; - + if (!(cfdata = data)) return; if (!(event = event_info)) return; if (event->button != 1) return; @@ -978,50 +981,50 @@ _edge_grab_wnd_selected_edge_cb(void *data, Evas *e __UNUSED__, Evas_Object *obj edje_object_part_geometry_get(cfdata->gui.o_selector, "e.edge.top_left", &x, &y, &w, &h); if (E_INSIDE(event->canvas.x, event->canvas.y, x + xx, y + yy, w, h)) { - edge = E_ZONE_EDGE_TOP_LEFT; - goto stop; + edge = E_ZONE_EDGE_TOP_LEFT; + goto stop; } edje_object_part_geometry_get(cfdata->gui.o_selector, "e.edge.top", &x, &y, &w, &h); if (E_INSIDE(event->canvas.x, event->canvas.y, x + xx, y + yy, w, h)) { - edge = E_ZONE_EDGE_TOP; - goto stop; + edge = E_ZONE_EDGE_TOP; + goto stop; } edje_object_part_geometry_get(cfdata->gui.o_selector, "e.edge.top_right", &x, &y, &w, &h); if (E_INSIDE(event->canvas.x, event->canvas.y, x + xx, y + yy, w, h)) { - edge = E_ZONE_EDGE_TOP_RIGHT; - goto stop; + edge = E_ZONE_EDGE_TOP_RIGHT; + goto stop; } edje_object_part_geometry_get(cfdata->gui.o_selector, "e.edge.right", &x, &y, &w, &h); if (E_INSIDE(event->canvas.x, event->canvas.y, x + xx, y + yy, w, h)) { - edge = E_ZONE_EDGE_RIGHT; - goto stop; + edge = E_ZONE_EDGE_RIGHT; + goto stop; } edje_object_part_geometry_get(cfdata->gui.o_selector, "e.edge.bottom_right", &x, &y, &w, &h); if (E_INSIDE(event->canvas.x, event->canvas.y, x + xx, y + yy, w, h)) { - edge = E_ZONE_EDGE_BOTTOM_RIGHT; - goto stop; + edge = E_ZONE_EDGE_BOTTOM_RIGHT; + goto stop; } edje_object_part_geometry_get(cfdata->gui.o_selector, "e.edge.bottom", &x, &y, &w, &h); if (E_INSIDE(event->canvas.x, event->canvas.y, x + xx, y + yy, w, h)) { - edge = E_ZONE_EDGE_BOTTOM; - goto stop; + edge = E_ZONE_EDGE_BOTTOM; + goto stop; } edje_object_part_geometry_get(cfdata->gui.o_selector, "e.edge.bottom_left", &x, &y, &w, &h); if (E_INSIDE(event->canvas.x, event->canvas.y, x + xx, y + yy, w, h)) { - edge = E_ZONE_EDGE_BOTTOM_LEFT; - goto stop; + edge = E_ZONE_EDGE_BOTTOM_LEFT; + goto stop; } edje_object_part_geometry_get(cfdata->gui.o_selector, "e.edge.left", &x, &y, &w, &h); if (E_INSIDE(event->canvas.x, event->canvas.y, x + xx, y + yy, w, h)) { - edge = E_ZONE_EDGE_LEFT; - goto stop; + edge = E_ZONE_EDGE_LEFT; + goto stop; } return; @@ -1039,8 +1042,8 @@ stop: cfdata->locals.modifiers |= E_BINDING_MODIFIER_WIN; label = _edge_binding_text_get(cfdata->locals.edge, - cfdata->locals.click ? -1.0 : ((float) cfdata->locals.delay), - cfdata->locals.modifiers); + cfdata->locals.click ? -1.0 : ((float)cfdata->locals.delay), + cfdata->locals.modifiers); edje_object_part_text_set(cfdata->gui.o_selector, "e.text.selection", label); if (label) E_FREE(label); } @@ -1052,135 +1055,133 @@ _edge_grab_wnd_selection_apply(E_Config_Dialog_Data *cfdata) Eina_List *l; int found = 0, n = -1; - if (cfdata->locals.click) cfdata->locals.delay = -1.0; if (cfdata->locals.add) { - EINA_LIST_FOREACH(cfdata->binding.edge, l, bi) - if ((bi->modifiers == cfdata->locals.modifiers) && - (bi->edge == cfdata->locals.edge) && - ((bi->delay * 1000) == (cfdata->locals.delay * 1000))) - { - found = 1; - break; - } + EINA_LIST_FOREACH(cfdata->binding.edge, l, bi) + if ((bi->modifiers == cfdata->locals.modifiers) && + (bi->edge == cfdata->locals.edge) && + ((bi->delay * 1000) == (cfdata->locals.delay * 1000))) + { + found = 1; + break; + } } else { - if (cfdata->locals.cur && cfdata->locals.cur[0] && - (sscanf(cfdata->locals.cur, "e%d", &n) == 1)) - { - bi = eina_list_nth(cfdata->binding.edge, n); - EINA_LIST_FOREACH(cfdata->binding.edge, l, bi2) - { - if (bi == bi2) continue; - if ((bi->modifiers == cfdata->locals.modifiers) && - (bi->edge == cfdata->locals.edge) && - ((bi->delay * 1000) == (cfdata->locals.delay * 1000))) - { - found = 1; - break; - } - } - } + if (cfdata->locals.cur && cfdata->locals.cur[0] && + (sscanf(cfdata->locals.cur, "e%d", &n) == 1)) + { + bi = eina_list_nth(cfdata->binding.edge, n); + EINA_LIST_FOREACH(cfdata->binding.edge, l, bi2) + { + if (bi == bi2) continue; + if ((bi->modifiers == cfdata->locals.modifiers) && + (bi->edge == cfdata->locals.edge) && + ((bi->delay * 1000) == (cfdata->locals.delay * 1000))) + { + found = 1; + break; + } + } + } } if (!found) { - if (cfdata->locals.add) - { - bi = E_NEW(E_Config_Binding_Edge, 1); - bi->context = E_BINDING_CONTEXT_ZONE; - bi->edge = cfdata->locals.edge; - bi->any_mod = 0; - bi->delay = (float) (cfdata->locals.delay); - bi->action = NULL; - bi->params = NULL; - bi->modifiers = cfdata->locals.modifiers; - cfdata->binding.edge = eina_list_append(cfdata->binding.edge, bi); - } - else - { - if (cfdata->locals.cur && cfdata->locals.cur[0] && - (sscanf(cfdata->locals.cur, "e%d", &n) == 1)) - { - bi = eina_list_nth(cfdata->binding.edge, n); + if (cfdata->locals.add) + { + bi = E_NEW(E_Config_Binding_Edge, 1); + bi->context = E_BINDING_CONTEXT_ZONE; + bi->edge = cfdata->locals.edge; + bi->any_mod = 0; + bi->delay = (float)(cfdata->locals.delay); + bi->action = NULL; + bi->params = NULL; + bi->modifiers = cfdata->locals.modifiers; + cfdata->binding.edge = eina_list_append(cfdata->binding.edge, bi); + } + else + { + if (cfdata->locals.cur && cfdata->locals.cur[0] && + (sscanf(cfdata->locals.cur, "e%d", &n) == 1)) + { + bi = eina_list_nth(cfdata->binding.edge, n); - bi->modifiers = cfdata->locals.modifiers; - bi->delay = cfdata->locals.delay; - bi->edge = cfdata->locals.edge; - } - } + bi->modifiers = cfdata->locals.modifiers; + bi->delay = cfdata->locals.delay; + bi->edge = cfdata->locals.edge; + } + } - if (cfdata->locals.add) - { - E_Config_Binding_Edge *tmp; + if (cfdata->locals.add) + { + E_Config_Binding_Edge *tmp; - n = 0; - _update_edge_binding_list(cfdata); - EINA_LIST_FOREACH(cfdata->binding.edge, l, tmp) - { - if (tmp == bi) break; - n++; - } - e_widget_ilist_selected_set(cfdata->gui.o_binding_list, n); - e_widget_ilist_unselect(cfdata->gui.o_action_list); - eina_stringshare_del(cfdata->locals.action); - cfdata->locals.action = eina_stringshare_add(""); - if ((cfdata->params) && (cfdata->params[0])) - { - int j, g = -1; - _find_edge_binding_action("exec", NULL, &g, NULL, &j); - if (j >= 0) - { - e_widget_ilist_unselect(cfdata->gui.o_action_list); - e_widget_ilist_selected_set(cfdata->gui.o_action_list, (j + g + 1)); - e_widget_entry_clear(cfdata->gui.o_params); - e_widget_entry_text_set(cfdata->gui.o_params, cfdata->params); - } - } - else - { - e_widget_entry_clear(cfdata->gui.o_params); - e_widget_disabled_set(cfdata->gui.o_params, 1); - } - } - else if (bi) - { + n = 0; + _update_edge_binding_list(cfdata); + EINA_LIST_FOREACH(cfdata->binding.edge, l, tmp) + { + if (tmp == bi) break; + n++; + } + e_widget_ilist_selected_set(cfdata->gui.o_binding_list, n); + e_widget_ilist_unselect(cfdata->gui.o_action_list); + eina_stringshare_del(cfdata->locals.action); + cfdata->locals.action = eina_stringshare_add(""); + if ((cfdata->params) && (cfdata->params[0])) + { + int j, g = -1; + _find_edge_binding_action("exec", NULL, &g, NULL, &j); + if (j >= 0) + { + e_widget_ilist_unselect(cfdata->gui.o_action_list); + e_widget_ilist_selected_set(cfdata->gui.o_action_list, (j + g + 1)); + e_widget_entry_clear(cfdata->gui.o_params); + e_widget_entry_text_set(cfdata->gui.o_params, cfdata->params); + } + } + else + { + e_widget_entry_clear(cfdata->gui.o_params); + e_widget_disabled_set(cfdata->gui.o_params, 1); + } + } + else if (bi) + { char *label; label = _edge_binding_text_get(bi->edge, bi->delay, bi->modifiers); - e_widget_ilist_nth_label_set(cfdata->gui.o_binding_list, n, label); - free(label); - } + e_widget_ilist_nth_label_set(cfdata->gui.o_binding_list, n, label); + free(label); + } } else - { - int g, a, j; - const char *label = NULL; - E_Action_Group *actg = NULL; - E_Action_Description *actd = NULL; + { + int g, a, j; + const char *label = NULL; + E_Action_Group *actg = NULL; + E_Action_Description *actd = NULL; - if (cfdata->locals.add) - _find_edge_binding_action(bi->action, bi->params, &g, &a, &j); - else - _find_edge_binding_action(bi2->action, bi2->params, &g, &a, &j); + if (cfdata->locals.add) + _find_edge_binding_action(bi->action, bi->params, &g, &a, &j); + else + _find_edge_binding_action(bi2->action, bi2->params, &g, &a, &j); - actg = eina_list_nth(e_action_groups_get(), g); - if (actg) actd = eina_list_nth(actg->acts, a); + actg = eina_list_nth(e_action_groups_get(), g); + if (actg) actd = eina_list_nth(actg->acts, a); - if (actd) label = _(actd->act_name); + if (actd) label = _(actd->act_name); - e_util_dialog_show(_("Binding Edge Error"), - _("The binding key sequence, that you choose," - " is already used by
" - "%s action.
" - "Please choose another binding edge sequence."), - label ? label : _("Unknown")); + e_util_dialog_show(_("Binding Edge Error"), + _("The binding key sequence, that you choose," + " is already used by
" + "%s action.
" + "Please choose another binding edge sequence."), + label ? label : _("Unknown")); } } - /********** Helper *********************************/ static void _auto_apply_changes(E_Config_Dialog_Data *cfdata) @@ -1214,24 +1215,24 @@ _auto_apply_changes(E_Config_Dialog_Data *cfdata) eina_stringshare_del(bi->params); bi->params = NULL; - if (actd->act_params) + if (actd->act_params) bi->params = eina_stringshare_add(actd->act_params); else { - ok = 1; - if (cfdata->locals.params) - { - if (!strcmp(cfdata->locals.params, TEXT_NO_PARAMS)) - ok = 0; + ok = 1; + if (cfdata->locals.params) + { + if (!strcmp(cfdata->locals.params, TEXT_NO_PARAMS)) + ok = 0; - if ((actd->param_example) && (!strcmp(cfdata->locals.params, actd->param_example))) - ok = 0; - } - else - ok = 0; + if ((actd->param_example) && (!strcmp(cfdata->locals.params, actd->param_example))) + ok = 0; + } + else + ok = 0; - if (ok) - bi->params = eina_stringshare_add(cfdata->locals.params); + if (ok) + bi->params = eina_stringshare_add(cfdata->locals.params); } } @@ -1250,56 +1251,56 @@ _find_edge_binding_action(const char *action, const char *params, int *g, int *a found = 0; for (l = e_action_groups_get(), gg = 0, nn = 0; l; l = l->next, gg++) { - actg = l->data; + actg = l->data; - for (l2 = actg->acts, aa = 0; l2; l2 = l2->next, aa++) - { - actd = l2->data; - if (!strcmp((!action ? "" : action), (!actd->act_cmd ? "" : actd->act_cmd))) - { - if (!params || !params[0]) - { - if ((!actd->act_params) || (!actd->act_params[0])) - { - if (g) *g = gg; - if (a) *a = aa; - if (n) *n = nn; - return; - } - else - continue; - } - else - { - if ((!actd->act_params) || (!actd->act_params[0])) - { - if (g) *g = gg; - if (a) *a = aa; - if (n) *n = nn; - found = 1; - } - else - { - if (!strcmp(params, actd->act_params)) - { - if (g) *g = gg; - if (a) *a = aa; - if (n) *n = nn; - return; - } - } - } - } - nn++; - } - if (found) break; + for (l2 = actg->acts, aa = 0; l2; l2 = l2->next, aa++) + { + actd = l2->data; + if (!strcmp((!action ? "" : action), (!actd->act_cmd ? "" : actd->act_cmd))) + { + if (!params || !params[0]) + { + if ((!actd->act_params) || (!actd->act_params[0])) + { + if (g) *g = gg; + if (a) *a = aa; + if (n) *n = nn; + return; + } + else + continue; + } + else + { + if ((!actd->act_params) || (!actd->act_params[0])) + { + if (g) *g = gg; + if (a) *a = aa; + if (n) *n = nn; + found = 1; + } + else + { + if (!strcmp(params, actd->act_params)) + { + if (g) *g = gg; + if (a) *a = aa; + if (n) *n = nn; + return; + } + } + } + } + nn++; + } + if (found) break; } if (!found) { - if (g) *g = -1; - if (a) *a = -1; - if (n) *n = -1; + if (g) *g = -1; + if (a) *a = -1; + if (n) *n = -1; } } @@ -1313,69 +1314,78 @@ _edge_binding_text_get(E_Zone_Edge edge, float delay, int mod) if (mod & E_BINDING_MODIFIER_ALT) { - if (b[0]) strcat(b, " + "); - strcat(b, _("ALT")); + if (b[0]) strcat(b, " + "); + strcat(b, _("ALT")); } if (mod & E_BINDING_MODIFIER_SHIFT) { - if (b[0]) strcat(b, " + "); - strcat(b, _("SHIFT")); + if (b[0]) strcat(b, " + "); + strcat(b, _("SHIFT")); } if (mod & E_BINDING_MODIFIER_WIN) { - if (b[0]) strcat(b, " + "); - strcat(b, _("WIN")); + if (b[0]) strcat(b, " + "); + strcat(b, _("WIN")); } if (edge) { - if (b[0]) strcat(b, " + "); + if (b[0]) strcat(b, " + "); - switch (edge) - { - case E_ZONE_EDGE_LEFT: - strcat(b, "Left Edge"); - break; - case E_ZONE_EDGE_TOP: - strcat(b, "Top Edge"); - break; - case E_ZONE_EDGE_RIGHT: - strcat(b, "Right Edge"); - break; - case E_ZONE_EDGE_BOTTOM: - strcat(b, "Bottom Edge"); - break; - case E_ZONE_EDGE_TOP_LEFT: - strcat(b, "Top Left Edge"); - break; - case E_ZONE_EDGE_TOP_RIGHT: - strcat(b, "Top Right Edge"); - break; - case E_ZONE_EDGE_BOTTOM_RIGHT: - strcat(b, "Bottom Right Edge"); - break; - case E_ZONE_EDGE_BOTTOM_LEFT: - strcat(b, "Bottom Left Edge"); - break; - default: - break; - } + switch (edge) + { + case E_ZONE_EDGE_LEFT: + strcat(b, "Left Edge"); + break; + + case E_ZONE_EDGE_TOP: + strcat(b, "Top Edge"); + break; + + case E_ZONE_EDGE_RIGHT: + strcat(b, "Right Edge"); + break; + + case E_ZONE_EDGE_BOTTOM: + strcat(b, "Bottom Edge"); + break; + + case E_ZONE_EDGE_TOP_LEFT: + strcat(b, "Top Left Edge"); + break; + + case E_ZONE_EDGE_TOP_RIGHT: + strcat(b, "Top Right Edge"); + break; + + case E_ZONE_EDGE_BOTTOM_RIGHT: + strcat(b, "Bottom Right Edge"); + break; + + case E_ZONE_EDGE_BOTTOM_LEFT: + strcat(b, "Bottom Left Edge"); + break; + + default: + break; + } } if (delay) { - char buf[20]; + char buf[20]; - if (b[0]) strcat(b, " "); - if (delay == -1.0) - snprintf(buf, 20, "(clickable)"); - else - snprintf(buf, 20, "%.2fs", delay); - strcat(b, buf); + if (b[0]) strcat(b, " "); + if (delay == -1.0) + snprintf(buf, 20, "(clickable)"); + else + snprintf(buf, 20, "%.2fs", delay); + strcat(b, buf); } if (!b[0]) return strdup(TEXT_NONE_ACTION_EDGE); return strdup(b); } + diff --git a/src/modules/conf_edgebindings/e_mod_main.c b/src/modules/conf_edgebindings/e_mod_main.c index f4eeda76c..ffc88d00d 100644 --- a/src/modules/conf_edgebindings/e_mod_main.c +++ b/src/modules/conf_edgebindings/e_mod_main.c @@ -8,17 +8,17 @@ static E_Module *conf_module = NULL; EAPI E_Module_Api e_modapi = { E_MODULE_API_VERSION, - "Settings - Edge Bindings" + "Settings - Edge Bindings" }; EAPI void * e_modapi_init(E_Module *m) { - e_configure_registry_category_add("keyboard_and_mouse", 40, _("Input"), + e_configure_registry_category_add("keyboard_and_mouse", 40, _("Input"), NULL, "preferences-behavior"); - e_configure_registry_item_add("keyboard_and_mouse/edge_bindings", 10, - _("Edge Bindings"), NULL, - "preferences-desktop-edge-bindings", + e_configure_registry_item_add("keyboard_and_mouse/edge_bindings", 10, + _("Edge Bindings"), NULL, + "preferences-desktop-edge-bindings", e_int_config_edgebindings); conf_module = m; e_module_delayed_set(m, 1); @@ -30,7 +30,7 @@ e_modapi_shutdown(E_Module *m __UNUSED__) { E_Config_Dialog *cfd; - while ((cfd = e_config_dialog_get("E", "keyboard_and_mouse/edge_bindings"))) + while ((cfd = e_config_dialog_get("E", "keyboard_and_mouse/edge_bindings"))) e_object_del(E_OBJECT(cfd)); e_configure_registry_item_del("keyboard_and_mouse/edge_bindings"); e_configure_registry_category_del("keyboard_and_mouse"); @@ -43,3 +43,4 @@ e_modapi_save(E_Module *m __UNUSED__) { return 1; } +