seoz pushed a commit to branch master.

http://git.enlightenment.org/core/elementary.git/commit/?id=538f3f992008b71662c1213293ba777425c69d63

commit 538f3f992008b71662c1213293ba777425c69d63
Author: Daniel Juyung Seo <seojuyu...@gmail.com>
Date:   Fri Jun 19 14:06:16 2015 +0900

    test_focus_policy: Enhance object focus policy test.
    
    - Add more descriptions in the test.
    - Set the focus to the first button automatically.
---
 src/bin/test_focus_policy.c | 159 +++++++++++++++++++++++++++-----------------
 1 file changed, 97 insertions(+), 62 deletions(-)

diff --git a/src/bin/test_focus_policy.c b/src/bin/test_focus_policy.c
index a54c007..66a4244 100644
--- a/src/bin/test_focus_policy.c
+++ b/src/bin/test_focus_policy.c
@@ -14,15 +14,15 @@ _rdg_changed_cb(void *data, Evas_Object *obj,
    switch (value)
      {
       case 0:
-        elm_object_text_set(bt, "Test Button(MOUSE CLICK or KEY)");
+        elm_object_text_set(bt, "Test Button (MOUSE CLICK or KEY)");
         elm_object_focus_move_policy_set(bt, ELM_FOCUS_MOVE_POLICY_CLICK);
         break;
       case 1:
-        elm_object_text_set(bt, "Test Button(MOUSE IN or KEY)");
+        elm_object_text_set(bt, "Test Button (MOUSE IN or KEY)");
         elm_object_focus_move_policy_set(bt, ELM_FOCUS_MOVE_POLICY_IN);
         break;
       case 2:
-        elm_object_text_set(bt, "Test Button(KEY ONLY)");
+        elm_object_text_set(bt, "Test Button (KEY ONLY)");
         elm_object_focus_move_policy_set(bt, ELM_FOCUS_MOVE_POLICY_KEY_ONLY);
         break;
       default:
@@ -33,7 +33,7 @@ _rdg_changed_cb(void *data, Evas_Object *obj,
 void
 test_focus_object_policy(void *data EINA_UNUSED, Evas_Object *obj EINA_UNUSED, 
void *event_info EINA_UNUSED)
 {
-   Evas_Object *win, *fr, *bx, *bt, *test_bt, *rdg, *rd;
+   Evas_Object *win, *fr, *fr2, *bx, *fr_bx, *bt, *test_bt, *lbl, *rdg, *rd;
 
    win = elm_win_util_standard_add("focus-object-policy", "Focus Object 
Policy");
    elm_win_autodel_set(win, EINA_TRUE);
@@ -51,64 +51,99 @@ test_focus_object_policy(void *data EINA_UNUSED, 
Evas_Object *obj EINA_UNUSED, v
    elm_object_content_set(fr, bx);
    evas_object_show(bx);
 
-   bt = elm_button_add(bx);
-   elm_object_text_set(bt, "Button 1");
-   evas_object_size_hint_weight_set(bt, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
-   evas_object_size_hint_align_set(bt, EVAS_HINT_FILL, EVAS_HINT_FILL);
-   elm_box_pack_end(bx, bt);
-   evas_object_show(bt);
-
-   bt = elm_button_add(bx);
-   elm_object_text_set(bt, "Button 2");
-   evas_object_size_hint_weight_set(bt, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
-   evas_object_size_hint_align_set(bt, EVAS_HINT_FILL, EVAS_HINT_FILL);
-   elm_box_pack_end(bx, bt);
-   evas_object_show(bt);
-
-   // a button to test focus object policy
-   test_bt = elm_button_add(bx);
-   elm_object_text_set(test_bt, "Test Button(MOUSE CLICK or KEY)");
-   evas_object_size_hint_weight_set(test_bt, EVAS_HINT_EXPAND, 
EVAS_HINT_EXPAND);
-   evas_object_size_hint_align_set(test_bt, EVAS_HINT_FILL, EVAS_HINT_FILL);
-   elm_box_pack_end(bx, test_bt);
-   evas_object_show(test_bt);
-   elm_object_focus_move_policy_set(bt, ELM_FOCUS_MOVE_POLICY_CLICK);
-
-   bt = elm_button_add(bx);
-   elm_object_text_set(bt, "Button 4");
-   evas_object_size_hint_weight_set(bt, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
-   evas_object_size_hint_align_set(bt, EVAS_HINT_FILL, EVAS_HINT_FILL);
-   elm_box_pack_end(bx, bt);
-   evas_object_show(bt);
-
-   // radios to select focus object policy
-   rd = elm_radio_add(bx);
-   elm_radio_state_value_set(rd, 0);
-   evas_object_size_hint_align_set(rd, 0.0, 0.5);
-   elm_object_text_set(rd, "Focus Move Pollicy Mouse Click");
-   elm_box_pack_end(bx, rd);
-   evas_object_show(rd);
-   evas_object_smart_callback_add(rd, "changed", _rdg_changed_cb, test_bt);
-
-   rdg = rd;
-
-   rd = elm_radio_add(bx);
-   elm_radio_state_value_set(rd, 1);
-   elm_radio_group_add(rd, rdg);
-   evas_object_size_hint_align_set(rd, 0.0, 0.5);
-   elm_object_text_set(rd, "Focus Move Policy Mouse In");
-   elm_box_pack_end(bx, rd);
-   evas_object_show(rd);
-   evas_object_smart_callback_add(rd, "changed", _rdg_changed_cb, test_bt);
-
-   rd = elm_radio_add(bx);
-   elm_radio_state_value_set(rd, 2);
-   elm_radio_group_add(rd, rdg);
-   evas_object_size_hint_align_set(rd, 0.0, 0.5);
-   elm_object_text_set(rd, "Focus Move Pollicy Key Only");
-   elm_box_pack_end(bx, rd);
-   evas_object_show(rd);
-   evas_object_smart_callback_add(rd, "changed", _rdg_changed_cb, test_bt);
+   /* frame 1 for normal buttons */
+     {
+        fr2 = elm_frame_add(bx);
+        evas_object_size_hint_weight_set(fr2, EVAS_HINT_EXPAND, 0);
+        evas_object_size_hint_align_set(fr2, EVAS_HINT_FILL, EVAS_HINT_FILL);
+        elm_object_text_set(fr2, "Focusable Buttons");
+        elm_box_pack_end(bx, fr2);
+        evas_object_show(fr2);
+
+        fr_bx = elm_box_add(fr2);
+        elm_object_content_set(fr2, fr_bx);
+        evas_object_show(fr_bx);
+
+        bt = elm_button_add(fr_bx);
+        elm_object_text_set(bt, "Button 1");
+        evas_object_size_hint_weight_set(bt, EVAS_HINT_EXPAND, 
EVAS_HINT_EXPAND);
+        evas_object_size_hint_align_set(bt, EVAS_HINT_FILL, EVAS_HINT_FILL);
+        elm_box_pack_end(fr_bx, bt);
+        evas_object_show(bt);
+        elm_object_focus_set(bt, EINA_TRUE);
+
+        bt = elm_button_add(fr_bx);
+        elm_object_text_set(bt, "Button 2");
+        evas_object_size_hint_weight_set(bt, EVAS_HINT_EXPAND, 
EVAS_HINT_EXPAND);
+        evas_object_size_hint_align_set(bt, EVAS_HINT_FILL, EVAS_HINT_FILL);
+        elm_box_pack_end(fr_bx, bt);
+        evas_object_show(bt);
+
+        // a button to test focus object policy
+        test_bt = elm_button_add(fr_bx);
+        elm_object_text_set(test_bt, "Test Button (MOUSE CLICK or KEY)");
+        evas_object_size_hint_weight_set(test_bt, EVAS_HINT_EXPAND, 
EVAS_HINT_EXPAND);
+        evas_object_size_hint_align_set(test_bt, EVAS_HINT_FILL, 
EVAS_HINT_FILL);
+        elm_box_pack_end(fr_bx, test_bt);
+        evas_object_show(test_bt);
+
+        elm_object_focus_move_policy_set(bt, ELM_FOCUS_MOVE_POLICY_CLICK);
+        bt = elm_button_add(fr_bx);
+        elm_object_text_set(bt, "Button 4");
+        evas_object_size_hint_weight_set(bt, EVAS_HINT_EXPAND, 
EVAS_HINT_EXPAND);
+        evas_object_size_hint_align_set(bt, EVAS_HINT_FILL, EVAS_HINT_FILL);
+        elm_box_pack_end(fr_bx, bt);
+        evas_object_show(bt);
+     }
+
+   /* a frame 2 for the test button */
+     {
+        fr2 = elm_frame_add(bx);
+        evas_object_size_hint_weight_set(fr2, EVAS_HINT_EXPAND, 0);
+        evas_object_size_hint_align_set(fr2, EVAS_HINT_FILL, EVAS_HINT_FILL);
+        elm_object_text_set(fr2, "Focus Options for a TEST button");
+        elm_box_pack_end(bx, fr2);
+        evas_object_show(fr2);
+
+        fr_bx = elm_box_add(fr2);
+        elm_object_content_set(fr2, fr_bx);
+        evas_object_show(fr_bx);
+
+        lbl = elm_label_add(fr_bx);
+        evas_object_size_hint_weight_set(lbl, EVAS_HINT_EXPAND, 0);
+        elm_object_text_set(lbl, "This focus option will be applied only for a 
TEST button. <br/>The focus policies of other buttons will be remain in MOUSE 
CLICK status.");
+        elm_box_pack_end(fr_bx, lbl);
+        evas_object_show(lbl);
+
+        // radios to select focus object policy
+        rd = elm_radio_add(fr_bx);
+        elm_radio_state_value_set(rd, 0);
+        evas_object_size_hint_align_set(rd, 0.0, 0.5);
+        elm_object_text_set(rd, "Focus Move Pollicy Mouse Click");
+        elm_box_pack_end(fr_bx, rd);
+        evas_object_show(rd);
+        evas_object_smart_callback_add(rd, "changed", _rdg_changed_cb, 
test_bt);
+
+        rdg = rd;
+
+        rd = elm_radio_add(fr_bx);
+        elm_radio_state_value_set(rd, 1);
+        elm_radio_group_add(rd, rdg);
+        evas_object_size_hint_align_set(rd, 0.0, 0.5);
+        elm_object_text_set(rd, "Focus Move Policy Mouse In");
+        elm_box_pack_end(fr_bx, rd);
+        evas_object_show(rd);
+        evas_object_smart_callback_add(rd, "changed", _rdg_changed_cb, 
test_bt);
+
+        rd = elm_radio_add(fr_bx);
+        elm_radio_state_value_set(rd, 2);
+        elm_radio_group_add(rd, rdg);
+        evas_object_size_hint_align_set(rd, 0.0, 0.5);
+        elm_object_text_set(rd, "Focus Move Pollicy Key Only");
+        elm_box_pack_end(fr_bx, rd);
+        evas_object_show(rd);
+        evas_object_smart_callback_add(rd, "changed", _rdg_changed_cb, 
test_bt);
+     }
 
    evas_object_resize(win, 320, 320);
    evas_object_show(win);

-- 


Reply via email to