hermet pushed a commit to branch master. http://git.enlightenment.org/tools/enventor.git/commit/?id=f6e9eb495bfe4b7f37d62c6649daf272bb3c2d8a
commit f6e9eb495bfe4b7f37d62c6649daf272bb3c2d8a Author: ChunEon Park <[email protected]> Date: Wed Mar 5 03:07:28 2014 +0900 search - change the find/replace function. put the find forward, find backward instead of the find, find/replace once, you replace the word, it will find the next word automatically. --- data/themes/default/layout.edc | 12 +++++----- src/bin/search.c | 54 +++++++++++++++++++++++------------------- 2 files changed, 36 insertions(+), 30 deletions(-) diff --git a/data/themes/default/layout.edc b/data/themes/default/layout.edc index d56ab9b..e6f5390 100644 --- a/data/themes/default/layout.edc +++ b/data/themes/default/layout.edc @@ -96,7 +96,7 @@ group { name: "search"; fixed: 1 1; } } - part { name: "elm.swallow.find"; + part { name: "elm.swallow.forward"; type: SWALLOW; scale: 1; description { state: "default" 0.0; @@ -112,14 +112,14 @@ group { name: "search"; fixed: 1 1; } } - part { name: "elm.swallow.replace/find"; + part { name: "elm.swallow.backward"; type: SWALLOW; scale: 1; description { state: "default" 0.0; rel1.relative: 1 0; rel2.relative: 1 1; - rel1.to: "elm.swallow.find"; - rel2.to: "elm.swallow.find"; + rel1.to: "elm.swallow.forward"; + rel2.to: "elm.swallow.forward"; rel1.offset: 5 0; min: 50 25; align: 0 0; @@ -132,8 +132,8 @@ group { name: "search"; description { state: "default" 0.0; rel1.relative: 1 0; rel2.relative: 1 1; - rel1.to: "elm.swallow.replace/find"; - rel2.to: "elm.swallow.replace/find"; + rel1.to: "elm.swallow.backward"; + rel2.to: "elm.swallow.backward"; rel1.offset: 5 0; min: 50 25; align: 0 0; diff --git a/src/bin/search.c b/src/bin/search.c index 205362e..70f84fe 100644 --- a/src/bin/search.c +++ b/src/bin/search.c @@ -78,7 +78,7 @@ replace_all_proc(search_data *sd) } static void -find_proc(search_data *sd) +find_forward_proc(search_data *sd) { const char *find = elm_entry_entry_get(sd->en_find); if (!find) return; @@ -103,7 +103,7 @@ find_proc(search_data *sd) if (need_iterate) { sd->pos = 0; - find_proc(sd); + find_forward_proc(sd); free(utf8); return; } @@ -127,6 +127,12 @@ find_proc(search_data *sd) free(utf8); } +static void +find_backward_proc(search_data *sd) +{ + //TODO: +} + static Eina_Bool replace_proc(search_data *sd) { @@ -144,11 +150,11 @@ replace_proc(search_data *sd) } static void -replace_find_clicked_cb(void *data, Evas_Object *obj EINA_UNUSED, - void *event_info EINA_UNUSED) +backward_clicked_cb(void *data, Evas_Object *obj EINA_UNUSED, + void *event_info EINA_UNUSED) { search_data *sd = data; - if (replace_proc(sd)) find_proc(sd); + find_backward_proc(sd); } static void @@ -157,6 +163,7 @@ replace_clicked_cb(void *data, Evas_Object *obj EINA_UNUSED, { search_data *sd = data; replace_proc(sd); + //if (replace_proc(sd)) find_forward_proc(sd); } static void @@ -167,13 +174,12 @@ replace_all_clicked_cb(void *data, Evas_Object *obj EINA_UNUSED, replace_all_proc(sd); } - static void -find_clicked_cb(void *data, Evas_Object *obj EINA_UNUSED, - void *event_info EINA_UNUSED) +forward_clicked_cb(void *data, Evas_Object *obj EINA_UNUSED, + void *event_info EINA_UNUSED) { search_data *sd = data; - find_proc(sd); + find_forward_proc(sd); } static void @@ -183,7 +189,7 @@ find_key_down_cb(void *data, Evas *e EINA_UNUSED, Evas_Object *obj EINA_UNUSED, Evas_Event_Key_Down *ev = event_info; if (strcmp(ev->key, "Return")) return; search_data *sd = data; - find_proc(sd); + find_forward_proc(sd); } void @@ -244,20 +250,20 @@ search_open() evas_object_size_hint_align_set(entry_replace, EVAS_HINT_FILL, 0); elm_object_part_content_set(layout, "elm.swallow.replace_entry", entry_replace); - //Button (find) - Evas_Object *btn_find = elm_button_add(layout); - elm_object_text_set(btn_find, "Find"); - evas_object_smart_callback_add(btn_find, "clicked", find_clicked_cb, sd); - elm_object_part_content_set(layout, "elm.swallow.find", btn_find); - - //Button (replace/find) - Evas_Object *btn_replace_find = elm_button_add(layout); - elm_object_text_set(btn_replace_find, "Replace/Find"); - elm_object_disabled_set(btn_replace_find, EINA_TRUE); - evas_object_smart_callback_add(btn_replace_find, "clicked", - replace_find_clicked_cb, sd); - elm_object_part_content_set(layout, "elm.swallow.replace/find", - btn_replace_find); + //Button (forward) + Evas_Object *btn_forward = elm_button_add(layout); + elm_object_text_set(btn_forward, "Forward"); + evas_object_smart_callback_add(btn_forward, "clicked", forward_clicked_cb, sd); + elm_object_part_content_set(layout, "elm.swallow.forward", btn_forward); + + //Button (backward) + Evas_Object *btn_backward = elm_button_add(layout); + elm_object_text_set(btn_backward, "Backward"); + elm_object_disabled_set(btn_backward, EINA_TRUE); + evas_object_smart_callback_add(btn_backward, "clicked", + backward_clicked_cb, sd); + elm_object_part_content_set(layout, "elm.swallow.backward", + btn_backward); //Button (replace) Evas_Object *btn_replace = elm_button_add(layout); --
