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);

-- 


Reply via email to