seoz pushed a commit to branch master.

http://git.enlightenment.org/core/elementary.git/commit/?id=41b5521077578831a6c15c388f353b56954bd7cd

commit 41b5521077578831a6c15c388f353b56954bd7cd
Author: Daniel Juyung Seo <seojuyu...@gmail.com>
Date:   Sun Sep 7 17:49:04 2014 +0900

    test_genlist: Refactored internal codes.
    
    Created internal function _test_genlist_focus_option_panel_create() as it is
    getting too big.
---
 src/bin/test_genlist.c | 244 +++++++++++++++++++++++++------------------------
 1 file changed, 127 insertions(+), 117 deletions(-)

diff --git a/src/bin/test_genlist.c b/src/bin/test_genlist.c
index 82a97ce..64cf28d 100644
--- a/src/bin/test_genlist.c
+++ b/src/bin/test_genlist.c
@@ -4254,124 +4254,16 @@ _focus_autoscroll_mode_frame_create(Evas_Object 
*parent)
    return fr;
 }
 
-void
-test_genlist_focus(void *data EINA_UNUSED,
-                   Evas_Object *obj EINA_UNUSED,
-                   void *event_info EINA_UNUSED)
+static void
+_test_genlist_focus_option_panel_create(Evas_Object *win, Evas_Object *bx,
+                                        Evas_Object *gl, Elm_Object_Item *it_0,
+                                        Elm_Object_Item *it_2)
 {
-   Evas_Object *win, *bx, *bx2, *gl, *btn, *fr;
-   Evas_Object *bx_opt, *chk, *bx_btn, *btn_focus, *btn_sel, *btn_dis;
-   Evas_Object *bx_mv, *rd, *rdg;
-   unsigned lhand, rhand;
-   Elm_Object_Item *it = NULL, *it_0 = NULL, *it_2 = NULL;
-
-   api_data *api = calloc(1, sizeof(api_data));
-   win = elm_win_util_standard_add("genlist-focus", "Genlist Focus");
-   elm_win_autodel_set(win, EINA_TRUE);
-   evas_object_event_callback_add(win, EVAS_CALLBACK_FREE, _cleanup_cb, api);
-   evas_object_event_callback_add(win, EVAS_CALLBACK_DEL,
-                                  _gl_focus_win_del_cb, NULL);
-
-   elm_win_focus_highlight_enabled_set(win, EINA_TRUE);
-   elm_win_focus_highlight_animate_set(win, EINA_TRUE);
-
-   bx = elm_box_add(win);
-   evas_object_size_hint_weight_set(bx, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
-   elm_win_resize_object_add(win, bx);
-   evas_object_show(bx);
-
-   btn = elm_button_add(bx);
-   elm_object_text_set(btn, "Up");
-   elm_box_pack_end(bx, btn);
-   evas_object_smart_callback_add(btn, "clicked",
-                                  _focus_button_clicked_cb, "Up");
-   evas_object_show(btn);
-
-   bx2 = elm_box_add(bx);
-   elm_box_horizontal_set(bx2, EINA_TRUE);
-   evas_object_size_hint_weight_set(bx2, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
-   evas_object_size_hint_align_set(bx2, EVAS_HINT_FILL, EVAS_HINT_FILL);
-   elm_box_pack_end(bx, bx2);
-   evas_object_show(bx2);
-
-   btn = elm_button_add(bx2);
-   elm_object_text_set(btn, "Left");
-   elm_box_pack_end(bx2, btn);
-   evas_object_smart_callback_add(btn, "clicked",
-                                  _focus_button_clicked_cb, "Left");
-   evas_object_show(btn);
-
-   gl = elm_genlist_add(bx);
-   evas_object_size_hint_weight_set(gl, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
-   evas_object_size_hint_align_set(gl, EVAS_HINT_FILL, EVAS_HINT_FILL);
-   elm_genlist_select_mode_set(gl, ELM_OBJECT_SELECT_MODE_ALWAYS);
-   elm_box_pack_end(bx2, gl);
-   api->gl = gl;
-   evas_object_show(gl);
-   evas_object_smart_callback_add(gl, "item,focused", _gl_focus_item_cb, 
"item,focused");
-   evas_object_smart_callback_add(gl, "item,unfocused", _gl_focus_item_cb, 
"item,unfocused");
-   evas_object_smart_callback_add(gl, "selected", _gl_focus_item_cb, 
"selected");
-   evas_object_smart_callback_add(gl, "unselected", _gl_focus_item_cb, 
"unselected");
-   evas_object_smart_callback_add(gl, "activated", _gl_focus_item_cb, 
"activated");
-   evas_object_smart_callback_add(gl, "highlighted", _gl_focus_item_cb, 
"highlighted");
-   evas_object_smart_callback_add(gl, "unhighlighted", _gl_focus_item_cb, 
"unhighlighted");
-   evas_object_event_callback_add(gl, EVAS_CALLBACK_KEY_DOWN, 
_gl_focus_key_down_cb, NULL);
-
-   btn = elm_button_add(bx2);
-   elm_object_text_set(btn, "Right");
-   elm_box_pack_end(bx2, btn);
-   evas_object_smart_callback_add(btn, "clicked",
-                                  _focus_button_clicked_cb, "Right");
-   evas_object_show(btn);
-
-   btn = elm_button_add(bx);
-   elm_object_text_set(btn, "Down");
-   elm_box_pack_end(bx, btn);
-   evas_object_smart_callback_add(btn, "clicked",
-                                  _focus_button_clicked_cb, "Down");
-   evas_object_show(btn);
-
-   api->itc1 = elm_genlist_item_class_new();
-   api->itc1->item_style = "default";
-   api->itc1->func.text_get = gl_focus_text_get;
-   api->itc1->func.content_get = gl_focus_content_get;
-   api->itc1->func.state_get = NULL;
-   api->itc1->func.del = NULL;
-
-   api->itc2 = elm_genlist_item_class_new();
-   api->itc2->item_style = "tree_effect";
-   api->itc2->func.text_get = gl_focus_text_get;
-   api->itc2->func.content_get = gl_focus_content_get;
-   api->itc2->func.state_get = NULL;
-   api->itc2->func.del = NULL;
+   Evas_Object *fr = NULL, *bx_opt = NULL, *chk = NULL;
+   Evas_Object *bx_mv = NULL, *rd = NULL, *rdg = NULL;
+   Evas_Object *bx_btn = NULL, *btn_focus = NULL, *btn_sel = NULL,
+               *btn_dis = NULL;
 
-   for (lhand = 0; lhand < _gl_focus_objects; lhand++)
-     {
-        for (rhand = 0; rhand < _gl_focus_objects; rhand++)
-          {
-             unsigned digit1 = lhand * 10 + rhand;
-             it = elm_genlist_item_append(gl, api->itc1, 
(void*)(uintptr_t)digit1,
-                                          NULL, ELM_GENLIST_ITEM_NONE, NULL, 
NULL);
-             if (!it_0) it_0 = it;
-
-             unsigned digit2 = (_gl_focus_objects - lhand -1) * 10 +
-                (_gl_focus_objects - rhand -1);
-             it = elm_genlist_item_append(gl, api->itc1, 
(void*)(uintptr_t)digit2,
-                                          NULL, ELM_GENLIST_ITEM_NONE, NULL, 
NULL);
-             if (!it_2) it_2 = it;
-             if (rhand == 4)
-               elm_object_item_disabled_set(it, EINA_TRUE);
-
-             if (rhand == (_gl_focus_objects - 1))
-               elm_genlist_item_append(gl, api->itc2, (void*)(uintptr_t)digit1,
-                     NULL, ELM_GENLIST_ITEM_TREE, NULL, NULL);
-          }
-     }
-
-   elm_genlist_item_class_free(api->itc1);
-   elm_genlist_item_class_free(api->itc2);
-
-   // Options
    fr = elm_frame_add(bx);
    elm_object_text_set(fr, "Options");
    evas_object_size_hint_weight_set(fr, EVAS_HINT_EXPAND, 0.0);
@@ -4440,7 +4332,6 @@ test_genlist_focus(void *data EINA_UNUSED,
    elm_box_pack_end(bx_opt, chk);
    evas_object_show(chk);
 
-
    // Focus Autoscroll Mode
    fr = _focus_autoscroll_mode_frame_create(bx);
    elm_box_pack_end(bx, fr);
@@ -4515,6 +4406,125 @@ test_genlist_focus(void *data EINA_UNUSED,
    evas_object_smart_callback_add(btn_focus, "clicked", _focus_btn_cb, it_2);
    evas_object_smart_callback_add(btn_sel, "clicked", _sel_btn_cb, it_2);
    evas_object_smart_callback_add(btn_dis, "clicked", _dis_btn_cb, it_0);
+}
+
+void
+test_genlist_focus(void *data EINA_UNUSED,
+                   Evas_Object *obj EINA_UNUSED,
+                   void *event_info EINA_UNUSED)
+{
+   Evas_Object *win, *bx, *bx2, *gl, *btn;
+   unsigned lhand, rhand;
+   Elm_Object_Item *it = NULL, *it_0 = NULL, *it_2 = NULL;
+
+   api_data *api = calloc(1, sizeof(api_data));
+   win = elm_win_util_standard_add("genlist-focus", "Genlist Focus");
+   elm_win_autodel_set(win, EINA_TRUE);
+   evas_object_event_callback_add(win, EVAS_CALLBACK_FREE, _cleanup_cb, api);
+   evas_object_event_callback_add(win, EVAS_CALLBACK_DEL,
+                                  _gl_focus_win_del_cb, NULL);
+
+   elm_win_focus_highlight_enabled_set(win, EINA_TRUE);
+   elm_win_focus_highlight_animate_set(win, EINA_TRUE);
+
+   bx = elm_box_add(win);
+   evas_object_size_hint_weight_set(bx, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
+   elm_win_resize_object_add(win, bx);
+   evas_object_show(bx);
+
+   btn = elm_button_add(bx);
+   elm_object_text_set(btn, "Up");
+   elm_box_pack_end(bx, btn);
+   evas_object_smart_callback_add(btn, "clicked",
+                                  _focus_button_clicked_cb, "Up");
+   evas_object_show(btn);
+
+   bx2 = elm_box_add(bx);
+   elm_box_horizontal_set(bx2, EINA_TRUE);
+   evas_object_size_hint_weight_set(bx2, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
+   evas_object_size_hint_align_set(bx2, EVAS_HINT_FILL, EVAS_HINT_FILL);
+   elm_box_pack_end(bx, bx2);
+   evas_object_show(bx2);
+
+   btn = elm_button_add(bx2);
+   elm_object_text_set(btn, "Left");
+   elm_box_pack_end(bx2, btn);
+   evas_object_smart_callback_add(btn, "clicked",
+                                  _focus_button_clicked_cb, "Left");
+   evas_object_show(btn);
+
+   gl = elm_genlist_add(bx);
+   evas_object_size_hint_weight_set(gl, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
+   evas_object_size_hint_align_set(gl, EVAS_HINT_FILL, EVAS_HINT_FILL);
+   elm_genlist_select_mode_set(gl, ELM_OBJECT_SELECT_MODE_ALWAYS);
+   elm_box_pack_end(bx2, gl);
+   api->gl = gl;
+   evas_object_show(gl);
+   evas_object_smart_callback_add(gl, "item,focused", _gl_focus_item_cb, 
"item,focused");
+   evas_object_smart_callback_add(gl, "item,unfocused", _gl_focus_item_cb, 
"item,unfocused");
+   evas_object_smart_callback_add(gl, "selected", _gl_focus_item_cb, 
"selected");
+   evas_object_smart_callback_add(gl, "unselected", _gl_focus_item_cb, 
"unselected");
+   evas_object_smart_callback_add(gl, "activated", _gl_focus_item_cb, 
"activated");
+   evas_object_smart_callback_add(gl, "highlighted", _gl_focus_item_cb, 
"highlighted");
+   evas_object_smart_callback_add(gl, "unhighlighted", _gl_focus_item_cb, 
"unhighlighted");
+   evas_object_event_callback_add(gl, EVAS_CALLBACK_KEY_DOWN, 
_gl_focus_key_down_cb, NULL);
+
+   btn = elm_button_add(bx2);
+   elm_object_text_set(btn, "Right");
+   elm_box_pack_end(bx2, btn);
+   evas_object_smart_callback_add(btn, "clicked",
+                                  _focus_button_clicked_cb, "Right");
+   evas_object_show(btn);
+
+   btn = elm_button_add(bx);
+   elm_object_text_set(btn, "Down");
+   elm_box_pack_end(bx, btn);
+   evas_object_smart_callback_add(btn, "clicked",
+                                  _focus_button_clicked_cb, "Down");
+   evas_object_show(btn);
+
+   api->itc1 = elm_genlist_item_class_new();
+   api->itc1->item_style = "default";
+   api->itc1->func.text_get = gl_focus_text_get;
+   api->itc1->func.content_get = gl_focus_content_get;
+   api->itc1->func.state_get = NULL;
+   api->itc1->func.del = NULL;
+
+   api->itc2 = elm_genlist_item_class_new();
+   api->itc2->item_style = "tree_effect";
+   api->itc2->func.text_get = gl_focus_text_get;
+   api->itc2->func.content_get = gl_focus_content_get;
+   api->itc2->func.state_get = NULL;
+   api->itc2->func.del = NULL;
+
+   for (lhand = 0; lhand < _gl_focus_objects; lhand++)
+     {
+        for (rhand = 0; rhand < _gl_focus_objects; rhand++)
+          {
+             unsigned digit1 = lhand * 10 + rhand;
+             it = elm_genlist_item_append(gl, api->itc1, 
(void*)(uintptr_t)digit1,
+                                          NULL, ELM_GENLIST_ITEM_NONE, NULL, 
NULL);
+             if (!it_0) it_0 = it;
+
+             unsigned digit2 = (_gl_focus_objects - lhand -1) * 10 +
+                (_gl_focus_objects - rhand -1);
+             it = elm_genlist_item_append(gl, api->itc1, 
(void*)(uintptr_t)digit2,
+                                          NULL, ELM_GENLIST_ITEM_NONE, NULL, 
NULL);
+             if (!it_2) it_2 = it;
+             if (rhand == 4)
+               elm_object_item_disabled_set(it, EINA_TRUE);
+
+             if (rhand == (_gl_focus_objects - 1))
+               elm_genlist_item_append(gl, api->itc2, (void*)(uintptr_t)digit1,
+                     NULL, ELM_GENLIST_ITEM_TREE, NULL, NULL);
+          }
+     }
+
+   elm_genlist_item_class_free(api->itc1);
+   elm_genlist_item_class_free(api->itc2);
+
+   // Options
+   _test_genlist_focus_option_panel_create(win, bx, gl, it_0, it_2);
 
    evas_object_resize(win, 420, 600);
    evas_object_show(win);

-- 


Reply via email to