[*][Scroller] merge from upstream revision 64051, but didn't accept data/theme/widget...
[framework/uifw/elementary.git] / src / bin / config.c
index cbd2b4e..a88cc64 100644 (file)
@@ -80,7 +80,7 @@ struct _Fonts_Data
        lb = elm_label_add(win);                                     \
        evas_object_size_hint_weight_set(lb, EVAS_HINT_EXPAND, 0.0); \
        evas_object_size_hint_align_set(lb, EVAS_HINT_FILL, 0.5);    \
-       elm_label_label_set(lb, label);                              \
+       elm_object_text_set(lb, label);                              \
        elm_frame_content_set(pd, lb);                               \
        evas_object_show(lb);                                        \
     }                                                               \
@@ -257,7 +257,7 @@ ts_change(void *data       __UNUSED__,
           void *event_info __UNUSED__)
 {
    Eina_Bool val = elm_check_state_get(obj);
-   Eina_Bool sb = elm_scroll_bounce_enabled_get();
+   Eina_Bool sb = elm_scroll_thumbscroll_enabled_get();
 
    if (val == sb) return;
    elm_scroll_thumbscroll_enabled_all_set(val);
@@ -362,6 +362,30 @@ tsbf_change(void *data       __UNUSED__,
 }
 
 static void
+tssf_round(void *data       __UNUSED__,
+           Evas_Object     *obj,
+           void *event_info __UNUSED__)
+{
+   double val = elm_slider_value_get(obj);
+   double v;
+
+   v = ((double)((int)(val * 20.0))) / 20.0;
+   if (v != val) elm_slider_value_set(obj, v);
+}
+
+static void
+tssf_change(void *data       __UNUSED__,
+            Evas_Object     *obj,
+            void *event_info __UNUSED__)
+{
+   double tssf = elm_scroll_thumbscroll_sensitivity_friction_get();
+   double val = elm_slider_value_get(obj);
+
+   if (tssf == val) return;
+   elm_scroll_thumbscroll_sensitivity_friction_all_set(val);
+}
+
+static void
 cf_enable(void *data,
           Evas_Object     *obj,
           void *event_info __UNUSED__)
@@ -550,12 +574,12 @@ _status_basic(Evas_Object *win,
 
    fr = elm_frame_add(win);
    evas_object_size_hint_weight_set(fr, 1.0, 1.0);
-   elm_frame_label_set(fr, "Information");
+   elm_object_text_set(fr, "Information");
    elm_box_pack_end(bx0, fr);
    evas_object_show(fr);
 
    lb = elm_label_add(win);
-   elm_label_label_set(lb,
+   elm_object_text_set(lb,
                        "Applying configuration change"
                        );
    elm_frame_content_set(fr, lb);
@@ -571,7 +595,7 @@ _status_config(Evas_Object *win,
    fr = elm_frame_add(win);
    evas_object_size_hint_weight_set(fr, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
    evas_object_size_hint_align_set(fr, EVAS_HINT_FILL, EVAS_HINT_FILL);
-   elm_frame_label_set(fr, "Sizing");
+   elm_object_text_set(fr, "Sizing");
    elm_box_pack_end(bx0, fr);
    evas_object_show(fr);
 
@@ -864,7 +888,7 @@ _profile_change_do(Evas_Object *win,
 {
    int flush_interval, font_c, image_c, edje_file_c, edje_col_c, ts_threshould;
    double scale, s_bounce_friction, ts_momentum_threshold, ts_friction,
-          ts_border_friction, page_friction, bring_in_friction, zoom_friction;
+          ts_border_friction, ts_sensitivity_friction, page_friction, bring_in_friction, zoom_friction;
    const char *curr_theme, *curr_engine;
    const Eina_List *l_items, *l;
    Eina_Bool s_bounce, ts;
@@ -889,6 +913,7 @@ _profile_change_do(Evas_Object *win,
    ts_momentum_threshold = elm_scroll_thumbscroll_momentum_threshold_get();
    ts_friction = elm_scroll_thumbscroll_friction_get();
    ts_border_friction = elm_scroll_thumbscroll_border_friction_get();
+   ts_sensitivity_friction = elm_scroll_thumbscroll_sensitivity_friction_get();
    page_friction = elm_scroll_page_scroll_friction_get();
    bring_in_friction = elm_scroll_bring_in_scroll_friction_get();
    zoom_friction = elm_scroll_zoom_friction_get();
@@ -940,6 +965,9 @@ _profile_change_do(Evas_Object *win,
    elm_scroll_thumbscroll_border_friction_all_set(ts_border_friction);
    elm_slider_value_set(evas_object_data_get(win, "ts_border_friction_slider"),
                         ts_border_friction);
+   elm_scroll_thumbscroll_sensitivity_friction_all_set(ts_sensitivity_friction);
+   elm_slider_value_set(evas_object_data_get(win, "ts_sensitivity_friction_slider"),
+                        ts_sensitivity_friction);
    elm_scroll_page_scroll_friction_all_set(page_friction);
    elm_slider_value_set(evas_object_data_get(win,
                                              "page_scroll_friction_slider"),
@@ -1202,20 +1230,20 @@ _sample_theme_new(Evas_Object *win)
 
    bt = elm_button_add(win);
    evas_object_size_hint_weight_set(bt, 1.0, 0.0);
-   elm_button_label_set(bt, "Button");
+   elm_object_text_set(bt, "Button");
    elm_table_pack(base, bt, 0, 0, 1, 1);
    evas_object_show(bt);
 
    ck = elm_check_add(win);
    evas_object_size_hint_weight_set(ck, 1.0, 0.0);
-   elm_check_label_set(ck, "Check");
+   elm_object_text_set(ck, "Check");
    elm_table_pack(base, ck, 0, 1, 1, 1);
    evas_object_show(ck);
 
    rd = elm_radio_add(win);
    evas_object_size_hint_weight_set(rd, 1.0, 0.0);
    elm_radio_state_value_set(rd, 0);
-   elm_radio_label_set(rd, "Radio 1");
+   elm_object_text_set(rd, "Radio 1");
    elm_table_pack(base, rd, 1, 0, 1, 1);
    evas_object_show(rd);
    rdg = rd;
@@ -1223,7 +1251,7 @@ _sample_theme_new(Evas_Object *win)
    rd = elm_radio_add(win);
    evas_object_size_hint_weight_set(rd, 1.0, 0.0);
    elm_radio_state_value_set(rd, 1);
-   elm_radio_label_set(rd, "Radio 2");
+   elm_object_text_set(rd, "Radio 2");
    elm_radio_group_add(rd, rdg);
    elm_table_pack(base, rd, 1, 1, 1, 1);
    evas_object_show(rd);
@@ -1236,7 +1264,7 @@ _sample_theme_new(Evas_Object *win)
    evas_object_show(sp);
 
    sl = elm_slider_add(win);
-   elm_slider_label_set(sl, "Slider");
+   elm_object_text_set(sl, "Slider");
    elm_slider_span_size_set(sl, 120);
    elm_slider_min_max_set(sl, 1, 10);
    elm_slider_value_set(sl, 4);
@@ -1246,7 +1274,7 @@ _sample_theme_new(Evas_Object *win)
    evas_object_show(sl);
 
    fr = elm_frame_add(win);
-   elm_frame_label_set(fr, "Frame");
+   elm_object_text_set(fr, "Frame");
    elm_table_pack(base, fr, 0, 4, 2, 1);
    evas_object_size_hint_weight_set(fr, 1.0, 1.0);
    evas_object_size_hint_align_set(fr, EVAS_HINT_FILL, EVAS_HINT_FILL);
@@ -1364,7 +1392,7 @@ _status_config_themes(Evas_Object *win,
    /* FIXME: not implemented yet
       bt = elm_button_add(win);
       evas_object_smart_callback_add(bt, "clicked", _theme_browse, win);
-      elm_button_label_set(bt, "Browse...");
+      elm_object_text_set(bt, "Browse...");
       evas_object_size_hint_weight_set(bt, 1.0, 1.0);
       evas_object_size_hint_align_set(bt, 0.9, 0.9);
       elm_frame_content_set(pd, bt);
@@ -1378,7 +1406,7 @@ _status_config_themes(Evas_Object *win,
    evas_object_show(pd);
 
    fr = elm_frame_add(win);
-   elm_frame_label_set(fr, "Preview");
+   elm_object_text_set(fr, "Preview");
    evas_object_size_hint_weight_set(fr, 1.0, 1.0);
    evas_object_size_hint_align_set(fr, EVAS_HINT_FILL, EVAS_HINT_FILL);
    elm_frame_content_set(pd, fr);
@@ -1413,7 +1441,7 @@ _status_config_themes(Evas_Object *win,
 
    bt = elm_button_add(win);
    evas_object_smart_callback_add(bt, "clicked", _theme_use, win);
-   elm_button_label_set(bt, "Use Theme");
+   elm_object_text_set(bt, "Use Theme");
    evas_object_size_hint_weight_set(bt, 1.0, 0.0);
    evas_object_size_hint_align_set(bt, 0.5, 0.5);
    elm_frame_content_set(pd, bt);
@@ -1893,7 +1921,7 @@ _status_config_fonts(Evas_Object *win,
    elm_table_pack(base, rc, 1, 0, 1, 1);
 
    fr = elm_frame_add(win);
-   elm_frame_label_set(fr, "Font Class");
+   elm_object_text_set(fr, "Font Class");
    elm_table_pack(base, fr, 0, 0, 1, 2);
    evas_object_size_hint_weight_set(fr, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
    evas_object_size_hint_align_set(fr, EVAS_HINT_FILL, EVAS_HINT_FILL);
@@ -1910,7 +1938,7 @@ _status_config_fonts(Evas_Object *win,
    _font_classes_list_load(li);
 
    fr = elm_frame_add(win);
-   elm_frame_label_set(fr, "Font");
+   elm_object_text_set(fr, "Font");
    elm_table_pack(base, fr, 1, 0, 1, 2);
    evas_object_size_hint_weight_set(fr, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
    evas_object_size_hint_align_set(fr, EVAS_HINT_FILL, EVAS_HINT_FILL);
@@ -1933,7 +1961,7 @@ _status_config_fonts(Evas_Object *win,
    elm_table_pack(base, rc, 1, 2, 1, 1);
 
    fr = elm_frame_add(win);
-   elm_frame_label_set(fr, "Style");
+   elm_object_text_set(fr, "Style");
    elm_table_pack(base, fr, 0, 2, 1, 1);
    evas_object_size_hint_weight_set(fr, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
    evas_object_size_hint_align_set(fr, EVAS_HINT_FILL, EVAS_HINT_FILL);
@@ -1951,7 +1979,7 @@ _status_config_fonts(Evas_Object *win,
                                   NULL);
 
    fr = elm_frame_add(win);
-   elm_frame_label_set(fr, "Size");
+   elm_object_text_set(fr, "Size");
    elm_table_pack(base, fr, 1, 2, 1, 1);
    evas_object_size_hint_weight_set(fr, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
    evas_object_size_hint_align_set(fr, EVAS_HINT_FILL, EVAS_HINT_FILL);
@@ -1977,7 +2005,7 @@ _status_config_fonts(Evas_Object *win,
    snprintf(buf, sizeof(buf), "%s/objects/font_preview.edj", PACKAGE_DATA_DIR);
    preview = elm_layout_add(win);
    elm_layout_file_set(preview, buf, "font_preview");
-   elm_layout_text_set(preview, "elm.text", "Preview Text — 我真的会写中文");
+   elm_object_text_part_set(preview, "elm.text", "Preview Text — 我真的会写中文");
    evas_object_size_hint_weight_set(preview, EVAS_HINT_EXPAND, 0.0);
    evas_object_size_hint_align_set(preview, EVAS_HINT_FILL, EVAS_HINT_FILL);
    evas_object_show(preview);
@@ -2008,7 +2036,7 @@ _status_config_fonts(Evas_Object *win,
 
    bt = elm_button_add(win);
    evas_object_smart_callback_add(bt, "clicked", _font_overlay_set_all, win);
-   elm_button_label_set(bt, "Set to All");
+   elm_object_text_set(bt, "Set to All");
    evas_object_size_hint_weight_set(bt, 0.0, 0.0);
    evas_object_size_hint_align_set(bt, 0.5, 0.5);
    elm_box_pack_end(bx, bt);
@@ -2016,7 +2044,7 @@ _status_config_fonts(Evas_Object *win,
 
    bt = elm_button_add(win);
    evas_object_smart_callback_add(bt, "clicked", _font_overlay_reset, win);
-   elm_button_label_set(bt, "Reset");
+   elm_object_text_set(bt, "Reset");
    evas_object_size_hint_weight_set(bt, 0.0, 0.0);
    evas_object_size_hint_align_set(bt, 0.5, 0.5);
    elm_box_pack_end(bx, bt);
@@ -2024,7 +2052,7 @@ _status_config_fonts(Evas_Object *win,
 
    bt = elm_button_add(win);
    evas_object_smart_callback_add(bt, "clicked", _font_overlay_reset_all, win);
-   elm_button_label_set(bt, "Reset All");
+   elm_object_text_set(bt, "Reset All");
    evas_object_size_hint_weight_set(bt, 0.0, 0.0);
    evas_object_size_hint_align_set(bt, 0.5, 0.5);
    elm_box_pack_end(bx, bt);
@@ -2032,7 +2060,7 @@ _status_config_fonts(Evas_Object *win,
 
    bt = elm_button_add(win);
    evas_object_smart_callback_add(bt, "clicked", _font_overlay_change, win);
-   elm_button_label_set(bt, "Apply");
+   elm_object_text_set(bt, "Apply");
    evas_object_size_hint_weight_set(bt, 0.0, 0.0);
    evas_object_size_hint_align_set(bt, 0.5, 0.5);
    elm_box_pack_end(bx, bt);
@@ -2108,14 +2136,14 @@ _profiles_list_selected_cb(void            *data,
 
    snprintf(buf, sizeof(buf), "<hilight>Selected profile: %s</><br>",
             prof_name);
-   elm_label_label_set(evas_object_data_get(obj, "prof_name_lbl"), buf);
+   elm_object_text_set(evas_object_data_get(obj, "prof_name_lbl"), buf);
 
    en = evas_object_data_get(obj, "prof_desc_entry");
 #ifdef ELM_EFREET
-   if (desk) elm_scrolled_entry_entry_set(en, desk->comment);
+   if (desk) elm_entry_entry_set(en, desk->comment);
    else
 #endif
-   elm_scrolled_entry_entry_set(en, "Unknown");
+   elm_entry_entry_set(en, "Unknown");
 
 #ifdef ELM_EFREET
    if (desk) efreet_desktop_free(desk);
@@ -2233,7 +2261,7 @@ _status_config_profiles(Evas_Object *win,
    evas_object_show(fr_bx2);
 
    fr = elm_frame_add(win);
-   elm_frame_label_set(fr, "Available Profiles");
+   elm_object_text_set(fr, "Available Profiles");
    evas_object_size_hint_weight_set(fr, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
    evas_object_size_hint_align_set(fr, EVAS_HINT_FILL, EVAS_HINT_FILL);
    elm_frame_content_set(fr, fr_bx1);
@@ -2257,8 +2285,9 @@ _status_config_profiles(Evas_Object *win,
 
    evas_object_show(lb);
 
-   en = elm_scrolled_entry_add(win);
-   elm_scrolled_entry_editable_set(en, EINA_FALSE);
+   en = elm_entry_add(win);
+   elm_entry_scrollable_set(en, EINA_TRUE);
+   elm_entry_editable_set(en, EINA_FALSE);
    evas_object_size_hint_weight_set(en, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
    evas_object_size_hint_align_set(en, EVAS_HINT_FILL, EVAS_HINT_FILL);
    evas_object_show(en);
@@ -2294,7 +2323,7 @@ _status_config_profiles(Evas_Object *win,
 
    bt = elm_button_add(win);
    evas_object_smart_callback_add(bt, "clicked", _profile_use, li);
-   elm_button_label_set(bt, "Use");
+   elm_object_text_set(bt, "Use");
    evas_object_size_hint_weight_set(bt, 0.0, 0.0);
    evas_object_size_hint_align_set(bt, 0.5, 0.5);
    elm_box_pack_end(btn_bx, bt);
@@ -2304,7 +2333,7 @@ _status_config_profiles(Evas_Object *win,
 
    bt = elm_button_add(win);
    evas_object_smart_callback_add(bt, "clicked", _btn_todo, NULL); /* TODO */
-   elm_button_label_set(bt, "Delete");
+   elm_object_text_set(bt, "Delete");
    evas_object_size_hint_weight_set(bt, 0.0, 0.0);
    evas_object_size_hint_align_set(bt, 0.5, 0.5);
    elm_box_pack_end(btn_bx, bt);
@@ -2314,7 +2343,7 @@ _status_config_profiles(Evas_Object *win,
 
    bt = elm_button_add(win);
    evas_object_smart_callback_add(bt, "clicked", _profile_reset, li);
-   elm_button_label_set(bt, "Reset");
+   elm_object_text_set(bt, "Reset");
    evas_object_size_hint_weight_set(bt, 0.0, 0.0);
    evas_object_size_hint_align_set(bt, 0.5, 0.5);
    elm_box_pack_end(btn_bx, bt);
@@ -2324,7 +2353,7 @@ _status_config_profiles(Evas_Object *win,
 
    bt = elm_button_add(win);
    evas_object_smart_callback_add(bt, "clicked", _btn_todo, NULL); /* TODO */
-   elm_button_label_set(bt, "Add new");
+   elm_object_text_set(bt, "Add new");
    evas_object_size_hint_weight_set(bt, 0.0, 0.0);
    evas_object_size_hint_align_set(bt, 0.5, 0.5);
    elm_box_pack_end(btn_bx, bt);
@@ -2368,7 +2397,7 @@ _status_config_scrolling(Evas_Object *win,
    elm_object_tooltip_text_set(ck, "Set whether scrollers should bounce<br>"
                                    "when they reach their viewport's edge<br>"
                                    "during a scroll");
-   elm_check_label_set(ck, "Enable scroll bounce");
+   elm_object_text_set(ck, "Enable scroll bounce");
    evas_object_data_set(win, "scroll_bounce_check", ck);
    evas_object_size_hint_weight_set(ck, EVAS_HINT_EXPAND, 0.0);
    evas_object_size_hint_align_set(ck, EVAS_HINT_FILL, 0.5);
@@ -2407,7 +2436,7 @@ _status_config_scrolling(Evas_Object *win,
    ck = elm_check_add(win);
    elm_object_tooltip_text_set(ck, "Set whether scrollers should be<br>"
                                    "draggable from any point in their views");
-   elm_check_label_set(ck, "Enable thumb scroll");
+   elm_object_text_set(ck, "Enable thumb scroll");
    evas_object_data_set(win, "thumbscroll_check", ck);
    evas_object_size_hint_weight_set(ck, EVAS_HINT_EXPAND, 0.0);
    evas_object_size_hint_align_set(ck, EVAS_HINT_FILL, 0.5);
@@ -2501,6 +2530,26 @@ _status_config_scrolling(Evas_Object *win,
    evas_object_smart_callback_add(sl, "changed", tsbf_round, NULL);
    evas_object_smart_callback_add(sl, "delay,changed", tsbf_change, NULL);
 
+   LABEL_FRAME_ADD("<hilight>Thumb scroll sensitivity friction</>");
+
+   sl = elm_slider_add(win);
+   elm_object_tooltip_text_set(sl, "This is the sensitivity amount which<br>"
+                                   "is be multiplied by the length of mouse<br>"
+                                   "dragging.");
+   evas_object_data_set(win, "ts_sensitivity_friction_slider", sl);
+   evas_object_size_hint_weight_set(sl, EVAS_HINT_EXPAND, 0.0);
+   evas_object_size_hint_align_set(sl, EVAS_HINT_FILL, 0.5);
+   elm_slider_span_size_set(sl, 120);
+   elm_slider_unit_format_set(sl, "%1.2f");
+   elm_slider_indicator_format_set(sl, "%1.2f");
+   elm_slider_min_max_set(sl, 0.1, 1.0);
+   elm_slider_value_set(sl, elm_scroll_thumbscroll_sensitivity_friction_get());
+   elm_box_pack_end(bx, sl);
+   evas_object_show(sl);
+
+   evas_object_smart_callback_add(sl, "changed", tssf_round, NULL);
+   evas_object_smart_callback_add(sl, "delay,changed", tssf_change, NULL);
+
    sp = elm_separator_add(win);
    elm_separator_horizontal_set(sp, EINA_TRUE);
    evas_object_size_hint_weight_set(sp, EVAS_HINT_EXPAND, 0.0);
@@ -2672,7 +2721,7 @@ _status_config_rendering(Evas_Object *win,
    evas_object_size_hint_align_set(bx, EVAS_HINT_FILL, EVAS_HINT_FILL);
 
    fr = elm_frame_add(win);
-   elm_frame_label_set(fr, "Available Engines");
+   elm_object_text_set(fr, "Available Engines");
    evas_object_size_hint_weight_set(fr, EVAS_HINT_EXPAND, EVAS_HINT_EXPAND);
    evas_object_size_hint_align_set(fr, EVAS_HINT_FILL, EVAS_HINT_FILL);
    elm_box_pack_end(bx, fr);
@@ -2707,7 +2756,7 @@ _status_config_rendering(Evas_Object *win,
 
    bt = elm_button_add(win);
    evas_object_smart_callback_add(bt, "clicked", _engine_use, li);
-   elm_button_label_set(bt, "Use Engine");
+   elm_object_text_set(bt, "Use Engine");
    evas_object_size_hint_weight_set(bt, 0.0, 0.0);
    evas_object_size_hint_align_set(bt, 0.5, 0.5);
    elm_frame_content_set(pd, bt);
@@ -2743,7 +2792,7 @@ _status_config_caches(Evas_Object *win,
    ck = elm_check_add(win);
    evas_object_size_hint_weight_set(ck, EVAS_HINT_EXPAND, 0.0);
    evas_object_size_hint_align_set(ck, EVAS_HINT_FILL, 0.5);
-   elm_check_label_set(ck, "Enable Flushing");
+   elm_object_text_set(ck, "Enable Flushing");
    elm_check_state_set(ck, elm_cache_flush_enabled_get());
    evas_object_smart_callback_add(ck, "changed", cf_enable, sl);
    elm_box_pack_end(bx, ck);