diff --git a/src/bin/e_entry.c b/src/bin/e_entry.c index 5160bb40a..19bbc3e2c 100644 --- a/src/bin/e_entry.c +++ b/src/bin/e_entry.c @@ -128,10 +128,10 @@ e_editable_text_insert(Evas_Object *object, const char *text) if ((!object) || !(sd = evas_object_smart_data_get(object))) return; - if ((!text) || ((strlen(text) <= 1) && (*text < 0x20))) + if ((!text) || ((strlen(text) <= 1) && (text[0] < 0x20))) return; - printf("Insert: \"%s\", %c\n", text, *text); + printf("Insert: \"%s\"\n", text); cursor = (Evas_Textblock_Cursor *)evas_object_textblock_cursor_get(sd->text_object); if (sd->cursor_at_the_end) @@ -489,7 +489,6 @@ e_entry_unfocus(Evas_Object *entry) edje_object_signal_emit(sd->edje_object, "focus_out", ""); } - /************************** * @@ -613,6 +612,7 @@ _e_editable_text_cursor_visibility_update(Evas_Object *object) } /* Make the cursor blink */ +// FIXME: cursor should not be a rect - shoudl be an edje. timers not needed then static int _e_editable_text_cursor_timer_cb(void *data) { @@ -667,6 +667,7 @@ _e_editable_text_smart_add(Evas_Object *object) e_editable_text_style_use_count++; evas_object_smart_member_add(sd->text_object, object); + // FIXME: cursor should not be a rect - shoudl be an edje. sd->clip = evas_object_rectangle_add(evas); evas_object_clip_set(sd->text_object, sd->clip); evas_object_smart_member_add(sd->clip, object); @@ -773,35 +774,45 @@ _e_entry_key_down_cb(void *data, Evas *e, Evas_Object *obj, void *event) obj = sd->entry_object; - if (strcmp(key_event->keyname, "BackSpace") == 0) + if ((!strcmp(key_event->keyname, "BackSpace")) || + ((key_event->string) && (strlen(key_event->string) == 1) && + (key_event->string[0] == 0x8))) { e_editable_text_delete_char_before(obj); - if(sd->change_func) + if (sd->change_func) sd->change_func(sd->change_data, obj, ""); } - else if (strcmp(key_event->keyname, "Delete") == 0) + else if ((!strcmp(key_event->keyname, "Delete")) || + ((key_event->string) && (strlen(key_event->string) == 1) && + (key_event->string[0] == 0x4))) { e_editable_text_delete_char_after(obj); - if(sd->change_func) + if (sd->change_func) sd->change_func(sd->change_data, obj, ""); } - else if (strcmp(key_event->keyname, "Left") == 0) + else if (!strcmp(key_event->keyname, "Left")) e_editable_text_cursor_move_left(obj); - else if (strcmp(key_event->keyname, "Right") == 0) + else if (!strcmp(key_event->keyname, "Right")) e_editable_text_cursor_move_right(obj); - else if (strcmp(key_event->keyname, "Home") == 0) + else if ((!strcmp(key_event->keyname, "Home")) || + ((key_event->string) && (strlen(key_event->string) == 1) && + (key_event->string[0] == 0x1))) e_editable_text_cursor_move_at_start(obj); - else if (strcmp(key_event->keyname, "End") == 0) + else if ((!strcmp(key_event->keyname, "End")) || + ((key_event->string) && (strlen(key_event->string) == 1) && + (key_event->string[0] == 0x5))) e_editable_text_cursor_move_at_end(obj); else { e_editable_text_insert(obj, key_event->string); - - if(key_event->string && strcmp(key_event->keyname, "Escape")) + if ((key_event->string) && (strcmp(key_event->keyname, "Escape"))) { - if(*(key_event->string) >= 32 && *(key_event->string) <= 126) - if(sd->change_func) - sd->change_func(sd->change_data, obj, (char *)key_event->string); + if (*(key_event->string) >= 0x20) + { + if (sd->change_func) + sd->change_func(sd->change_data, obj, + (char *)key_event->string); + } } } } @@ -917,4 +928,3 @@ _e_entry_smart_hide(Evas_Object *object) evas_object_hide(sd->edje_object); } - diff --git a/src/bin/e_entry.h b/src/bin/e_entry.h index c4c4e218c..9d788fdb0 100644 --- a/src/bin/e_entry.h +++ b/src/bin/e_entry.h @@ -47,6 +47,7 @@ EAPI void e_entry_cursor_hide(Evas_Object *object); EAPI void e_entry_change_handler_set(Evas_Object *object, void (*func)(void *data, Evas_Object *entry, char *key), void *data); EAPI void e_entry_focus(Evas_Object *object); EAPI void e_entry_unfocus(Evas_Object *object); - +EAPI void e_entry_password_set(Evas_Object *object, int pw); + #endif #endif diff --git a/src/bin/e_gadcon.c b/src/bin/e_gadcon.c index bc404f963..86aab99ef 100644 --- a/src/bin/e_gadcon.c +++ b/src/bin/e_gadcon.c @@ -291,7 +291,9 @@ e_gadcon_populate_class(E_Gadcon *gc, const E_Gadcon_Client_Class *cc) for (l = e_config->gadcons; l; l = l->next) { cf_gc = l->data; - if ((!strcmp(cf_gc->name, gc->name)) && + if ((cf_gc->name) && (gc->name) && + (cf_gc->id) && (gc->id) && + (!strcmp(cf_gc->name, gc->name)) && (!strcmp(cf_gc->id, gc->id))) { ok = 1; @@ -303,7 +305,8 @@ e_gadcon_populate_class(E_Gadcon *gc, const E_Gadcon_Client_Class *cc) for (l = cf_gc->clients; l; l = l->next) { cf_gcc = l->data; - if (!strcmp(cf_gcc->name, cc->name)) + if ((cf_gcc->name) && (cc->name) && + (!strcmp(cf_gcc->name, cc->name))) { E_Gadcon_Client *gcc; diff --git a/src/bin/e_int_config_desklock.c b/src/bin/e_int_config_desklock.c index 26ea489cf..5d98b2059 100644 --- a/src/bin/e_int_config_desklock.c +++ b/src/bin/e_int_config_desklock.c @@ -28,26 +28,15 @@ static Evas_Object *_advanced_create_widgets(E_Config_Dialog *cfd, Evas *evas, /******************************************************************************************/ -static void _e_desklock_passwd_cb_change(void *data, Evas_Object *obj); -static void _e_desklock_cb_show_passwd(void *data, Evas_Object *obj, const char *emission, - const char *source); -static int _e_desklock_zone_num_get(); - +static int _e_desklock_zone_num_get(void); static void _load_bgs(E_Config_Dialog_Data *cfdata); static void _ibg_list_cb_bg_selected(void *data); -static void _e_desklock_cb_lb_show_on_all_screens(void *data, Evas_Object *obj, - const char *emission, const char *source); -static void _e_desklock_cb_lb_show_on_current_screen(void *data, Evas_Object *obj, - const char *emission, const char *source); -static void _e_desklock_cb_lb_show_on_specific_screen(void *data, Evas_Object *obj, - const char *emission, const char *source); - +static void _e_desklock_passwd_cb_change(void *data, Evas_Object *obj); +static void _e_desklock_cb_show_passwd(void *data, Evas_Object *obj); +static void _e_desklock_cb_lb_show_change(void *data, Evas_Object *obj); #ifdef HAVE_PAM -static void _e_desklock_cb_syswide_auth_method(void *data, Evas_Object *obj, - const char *emission, const char *source); -static void _e_desklock_cb_personalized_auth_method(void *data, Evas_Object *obj, - const char *emission, const char *source); +static void _e_desklock_cb_auth_method_change(void *data, Evas_Object *obj); #endif /*******************************************************************************************/ @@ -93,40 +82,6 @@ struct _E_Config_Dialog_Data } gui; }; -typedef struct _E_Widget_Entry_Data E_Widget_Entry_Data; -typedef struct _E_Widget_Check_Data E_Widget_Check_Data; -typedef struct _E_Widget_Radio_Data E_Widget_Radio_Data; -typedef struct _E_Widget_Slider_Data E_Widget_Slider_Data; - -struct _E_Widget_Entry_Data -{ - Evas_Object *o_entry; - Evas_Object *obj; - char **valptr; - void (*on_change_func) (void *data, Evas_Object *obj); - void *on_change_data; -}; - -struct _E_Widget_Check_Data -{ - Evas_Object *o_check; - int *valptr; -}; - -struct _E_Widget_Radio_Data -{ - E_Radio_Group *group; - Evas_Object *o_radio; - int valnum; -}; - -struct _E_Widget_Slider_Data -{ - Evas_Object *o_widget, *o_slider; - double *dval; - int *ival; -}; - EAPI E_Config_Dialog * e_int_config_desklock(E_Container *con) { @@ -251,35 +206,27 @@ static Evas_Object * _basic_create_widgets(E_Config_Dialog *cfd, Evas *evas, E_Config_Dialog_Data *cfdata) { Evas_Object *o, *of, *ob; - E_Widget_Check_Data *wd; - #ifdef HAVE_PAM E_Radio_Group *rg_auth; Evas_Object *oc; #endif //_fill_desklock_data(cfdata); - o = e_widget_list_add(evas, 0, 0); #ifdef HAVE_PAM of = e_widget_framelist_add(evas, _("Password Type"), 0); - { - rg_auth = e_widget_radio_group_new((int*)(&cfdata->auth_method)); - oc = e_widget_radio_add(evas, _("Use my login password"), 0, rg_auth); - e_widget_framelist_object_append(of, oc); - - rwd = e_widget_data_get(oc); - edje_object_signal_callback_add(rwd->o_radio, "toggle_on", "", - _e_desklock_cb_syswide_auth_method, cfdata); - - oc = e_widget_radio_add(evas, _("Personalized password"), 1, rg_auth); - e_widget_framelist_object_append(of,oc); - - rwd = e_widget_data_get(oc); - edje_object_signal_callback_add(rwd->o_radio, "toggle_on", "", - _e_desklock_cb_personalized_auth_method, cfdata); - } + + rg_auth = e_widget_radio_group_new((int*)(&cfdata->auth_method)); + + oc = e_widget_radio_add(evas, _("Use my login password"), 0, rg_auth); + e_widget_on_change_hook_set(oc, _e_desklock_cb_auth_method_change, cfdata); + e_widget_framelist_object_append(of, oc); + + oc = e_widget_radio_add(evas, _("Personalized password"), 1, rg_auth); + e_widget_on_change_hook_set(oc, _e_desklock_cb_auth_method_change, cfdata); + e_widget_framelist_object_append(of, oc); + e_widget_list_object_append(o, of, 1, 1, 0.5); #endif @@ -287,8 +234,7 @@ _basic_create_widgets(E_Config_Dialog *cfd, Evas *evas, E_Config_Dialog_Data *cf cfdata->gui.passwd_field = ob = e_widget_entry_add(evas, &(cfdata->desklock_passwd)); #ifdef HAVE_PAM - if (cfdata->auth_method == 0) - e_widget_disabled_set(ob, 1); + if (cfdata->auth_method == 0) e_widget_disabled_set(ob, 1); #endif _e_desklock_passwd_cb_change(cfdata, ob); e_widget_entry_on_change_callback_set(ob, _e_desklock_passwd_cb_change, cfdata); @@ -296,16 +242,13 @@ _basic_create_widgets(E_Config_Dialog *cfd, Evas *evas, E_Config_Dialog_Data *cf e_widget_framelist_object_append(of, ob); ob = e_widget_check_add(evas, _("Show password"), &(cfdata->show_password)); + e_widget_on_change_hook_set(ob, _e_desklock_cb_show_passwd, cfdata); cfdata->gui.show_passwd_check = ob; #ifdef HAVE_PAM - if (cfdata->auth_method == 0) - e_widget_disabled_set(ob, 1); + if (cfdata->auth_method == 0) e_widget_disabled_set(ob, 1); #endif e_widget_framelist_object_append(of, ob); - wd = (E_Widget_Check_Data*)e_widget_data_get(ob); - edje_object_signal_callback_add(wd->o_check,"toggle_on", "", _e_desklock_cb_show_passwd, cfdata); - edje_object_signal_callback_add(wd->o_check,"toggle_off", "", _e_desklock_cb_show_passwd, cfdata); e_widget_list_object_append(o, of, 1, 1, 0.5); of = e_widget_framelist_add(evas, _("Automatic Locking"), 0); @@ -374,9 +317,7 @@ _advanced_apply_data(E_Config_Dialog *cfd, E_Config_Dialog_Data *cfdata) #endif if (e_config->desklock_use_timeout) - { - ecore_x_screensaver_timeout_set(e_config->desklock_timeout); - } + ecore_x_screensaver_timeout_set(e_config->desklock_timeout); e_config_save_queue(); return 1; @@ -385,405 +326,317 @@ _advanced_apply_data(E_Config_Dialog *cfd, E_Config_Dialog_Data *cfdata) static Evas_Object * _advanced_create_widgets(E_Config_Dialog *cfd, Evas *evas, E_Config_Dialog_Data *cfdata) { - Evas_Object *of, *ob; - E_Widget_Radio_Data *wd; - - E_Radio_Group *rg; - Evas_Object *ot; - - E_Widget_Check_Data *cwd; - - cfdata->evas = evas; - - ot = e_widget_table_add(evas, 0); - { - /* start: bkg list */ - cfdata->gui.bg_list = e_widget_ilist_add(evas, BG_LIST_ICON_SIZE_W, - BG_LIST_ICON_SIZE_H, &(cfdata->cur_bg)); - { - e_widget_ilist_selector_set(cfdata->gui.bg_list, 1); - e_widget_min_size_set(cfdata->gui.bg_list, 180, 200); - - _load_bgs(cfdata); - - e_widget_focus_set(cfdata->gui.bg_list, 1); - e_widget_ilist_go(cfdata->gui.bg_list); - } - e_widget_table_object_append(ot, cfdata->gui.bg_list, 0, 0, 1, 2, 1, 1, 1, 1); - /* end: bkg list */ - - /* start: Desk Lock Window Preview */ - - e_widget_table_object_append(ot, cfdata->preview_image, 1, 0, 1, 1, 1, 1, 1, 1); - /* end: Desk Lock Window Preview */ - - /* start: login box options */ - - /* Actually I do not know if I have to enable this if. However, if it is enabled - * this options will be seen only for those peoples who has xinerama. - * Otherwise, all the other world will not even know about them. - * Let the world know about them. Maybe in the feature somebody will turn this if - */ - - if (1 || _e_desklock_zone_num_get() > 1) - { - of = e_widget_framelist_add(evas, _("Login Box Settings"), 0); - { - rg = e_widget_radio_group_new((int *)(&(cfdata->login_box_zone))); - - ob = e_widget_radio_add(evas, _("Show on all screen zones"), LOGINBOX_SHOW_ALL_SCREENS, - rg); - cfdata->gui.loginbox_obj.show_all_screens = ob; - if (cfdata->zone_count == 1) e_widget_disabled_set(ob, 1); - e_widget_framelist_object_append(of, ob); - - ob = e_widget_radio_add(evas, _("Show on current screen zone"), - LOGINBOX_SHOW_CURRENT_SCREENS, rg); - cfdata->gui.loginbox_obj.show_current_screen = ob; - if (cfdata->zone_count == 1) e_widget_disabled_set(ob, 1); - e_widget_framelist_object_append(of, ob); - - ob = e_widget_radio_add(evas, _("Show on screen zone #:"), LOGINBOX_SHOW_SPECIFIC_SCREEN, - rg); - cfdata->gui.loginbox_obj.show_specific_screen = ob; - if (cfdata->zone_count == 1) e_widget_disabled_set(ob, 1); - e_widget_framelist_object_append(of, ob); - - ob = e_widget_slider_add(evas, 1, 0, _("%1.0f"), 0.0, (double)(cfdata->zone_count - 1), - 1.0, 0, NULL, &(cfdata->specific_lb_zone), 100); - cfdata->gui.loginbox_obj.screen_slider = ob; - if (cfdata->zone_count == 1 || cfdata->login_box_zone == LOGINBOX_SHOW_ALL_SCREENS) - e_widget_disabled_set(ob, 1); - e_widget_framelist_object_append(of, ob); - } - e_widget_table_object_append(ot, of, 1, 1, 1, 1, 1, 1, 1, 1); - } - /* end: login box options */ - + Evas_Object *of, *ob, *oc; + E_Radio_Group *rg; + Evas_Object *ot; #ifdef HAVE_PAM - of = e_widget_framelist_add(evas, _("Password Type"), 0); - { - rg_auth = e_widget_radio_group_new((int*)(&cfdata->auth_method)); - oc = e_widget_radio_add(evas, _("Use my login password"), 0, rg_auth); - e_widget_framelist_object_append(of, oc); - - wd = e_widget_data_get(oc); - edje_object_signal_callback_add(wd->o_radio, "toggle_on", "", - _e_desklock_cb_syswide_auth_method, cfdata); - - oc = e_widget_radio_add(evas, _("Personalized password"), 1, rg_auth); - e_widget_framelist_object_append(of,oc); - - wd = e_widget_data_get(oc); - edje_object_signal_callback_add(wd->o_radio, "toggle_on", "", - _e_desklock_cb_personalized_auth_method, cfdata); - } - e_widget_table_object_append(ot, of, 0, 2, 1, 1, 1, 1, 1, 1); + E_Radio_Group *rg_auth; #endif - - of = e_widget_framelist_add(evas, _("Personalized Password:"), 0); - { - cfdata->gui.passwd_field = ob = e_widget_entry_add(evas, &(cfdata->desklock_passwd)); -#ifdef HAVE_PAM - if (cfdata->auth_method == 0) - e_widget_disabled_set(ob, 1); -#endif - - _e_desklock_passwd_cb_change(cfdata, ob); - e_widget_entry_on_change_callback_set(ob, _e_desklock_passwd_cb_change, cfdata); - e_widget_min_size_set(ob, 200, 25); - e_widget_framelist_object_append(of, ob); - - ob = e_widget_check_add(evas, _("Show password"), &(cfdata->show_password)); - cfdata->gui.show_passwd_check = ob; - -#ifdef HAVE_PAM - if (cfdata->auth_method == 0) - e_widget_disabled_set(ob, 1); -#endif - e_widget_framelist_object_append(of, ob); - - cwd = (E_Widget_Check_Data*)e_widget_data_get(ob); - edje_object_signal_callback_add(cwd->o_check,"toggle_on", "", - _e_desklock_cb_show_passwd, cfdata); - edje_object_signal_callback_add(cwd->o_check,"toggle_off", "", - _e_desklock_cb_show_passwd, cfdata); - } -#ifdef HAVE_PAM - e_widget_table_object_append(ot, of, 0, 3, 1, 1, 1, 1, 1, 1); -#else - e_widget_table_object_append(ot, of, 0, 2, 1, 1, 1, 1, 1, 1); -#endif - - of = e_widget_framelist_add(evas, _("Automatic Locking"), 0); - { - e_widget_disabled_set(of, !ecore_x_screensaver_event_available_get()); - ob = e_widget_check_add(evas, _("Enable screensaver"), &(cfdata->use_timeout)); - e_widget_disabled_set(ob, !ecore_x_screensaver_event_available_get()); - e_widget_framelist_object_append(of, ob); + cfdata->evas = evas; - ob = e_widget_check_add(evas, _("Lock when the screensaver starts"), &(cfdata->autolock)); - e_widget_disabled_set(ob, !ecore_x_screensaver_event_available_get()); + ot = e_widget_table_add(evas, 0); + + /* start: bkg list */ + cfdata->gui.bg_list = e_widget_ilist_add(evas, BG_LIST_ICON_SIZE_W, + BG_LIST_ICON_SIZE_H, &(cfdata->cur_bg)); + + e_widget_ilist_selector_set(cfdata->gui.bg_list, 1); + e_widget_min_size_set(cfdata->gui.bg_list, 180, 200); + + _load_bgs(cfdata); + + e_widget_focus_set(cfdata->gui.bg_list, 1); + e_widget_ilist_go(cfdata->gui.bg_list); + + e_widget_table_object_append(ot, cfdata->gui.bg_list, 0, 0, 1, 2, 1, 1, 1, 1); + /* end: bkg list */ + + /* start: Desk Lock Window Preview */ + + e_widget_table_object_append(ot, cfdata->preview_image, 1, 0, 1, 1, 1, 1, 1, 1); + /* end: Desk Lock Window Preview */ + + /* start: login box options */ + + /* Actually I do not know if I have to enable this if. However, if it is enabled + * this options will be seen only for those peoples who has xinerama. + * Otherwise, all the other world will not even know about them. + * Let the world know about them. Maybe in the feature somebody will turn this if + */ + + if (1 || _e_desklock_zone_num_get() > 1) + { + of = e_widget_framelist_add(evas, _("Login Box Settings"), 0); + rg = e_widget_radio_group_new((int *)(&(cfdata->login_box_zone))); + + ob = e_widget_radio_add(evas, _("Show on all screen zones"), LOGINBOX_SHOW_ALL_SCREENS, + rg); + e_widget_on_change_hook_set(ob, _e_desklock_cb_lb_show_change, cfdata); + cfdata->gui.loginbox_obj.show_all_screens = ob; + if (cfdata->zone_count == 1) e_widget_disabled_set(ob, 1); e_widget_framelist_object_append(of, ob); - - ob = e_widget_label_add(evas, _("Time until screensaver starts")); - e_widget_disabled_set(ob, !ecore_x_screensaver_event_available_get()); + + ob = e_widget_radio_add(evas, _("Show on current screen zone"), + LOGINBOX_SHOW_CURRENT_SCREENS, rg); + e_widget_on_change_hook_set(ob, _e_desklock_cb_lb_show_change, cfdata); + cfdata->gui.loginbox_obj.show_current_screen = ob; + if (cfdata->zone_count == 1) e_widget_disabled_set(ob, 1); e_widget_framelist_object_append(of, ob); - ob = e_widget_slider_add(evas, 1, 0, _("%1.0f seconds"), - 1.0, 600.0, - 1.0, 0, &(cfdata->timeout), NULL, - 200); + + ob = e_widget_radio_add(evas, _("Show on screen zone #:"), LOGINBOX_SHOW_SPECIFIC_SCREEN, + rg); + e_widget_on_change_hook_set(ob, _e_desklock_cb_lb_show_change, cfdata); + cfdata->gui.loginbox_obj.show_specific_screen = ob; + if (cfdata->zone_count == 1) e_widget_disabled_set(ob, 1); e_widget_framelist_object_append(of, ob); - } + + ob = e_widget_slider_add(evas, 1, 0, _("%1.0f"), 0.0, (double)(cfdata->zone_count - 1), + 1.0, 0, NULL, &(cfdata->specific_lb_zone), 100); + cfdata->gui.loginbox_obj.screen_slider = ob; + if (cfdata->zone_count == 1 || cfdata->login_box_zone == LOGINBOX_SHOW_ALL_SCREENS) + e_widget_disabled_set(ob, 1); + e_widget_framelist_object_append(of, ob); + e_widget_table_object_append(ot, of, 1, 1, 1, 1, 1, 1, 1, 1); + } + /* end: login box options */ + #ifdef HAVE_PAM - e_widget_table_object_append(ot, of, 1, 2, 1, 2 ,1 ,1 ,1 ,1); -#else - e_widget_table_object_append(ot, of, 1, 2, 1, 1 ,1 ,1 ,1 ,1); + of = e_widget_framelist_add(evas, _("Password Type"), 0); + + rg_auth = e_widget_radio_group_new((int*)(&cfdata->auth_method)); + + oc = e_widget_radio_add(evas, _("Use my login password"), 0, rg_auth); + e_widget_on_change_hook_set(oc, _e_desklock_cb_auth_method_change, cfdata); + e_widget_framelist_object_append(of, oc); + + oc = e_widget_radio_add(evas, _("Personalized password"), 1, rg_auth); + e_widget_on_change_hook_set(oc, _e_desklock_cb_auth_method_change, cfdata); + e_widget_framelist_object_append(of,oc); + + e_widget_table_object_append(ot, of, 0, 2, 1, 1, 1, 1, 1, 1); #endif - } - - /* register callbacks for the radios in login box options - * in order to propertly update interface - */ - - wd = e_widget_data_get(cfdata->gui.loginbox_obj.show_all_screens); - edje_object_signal_callback_add(wd->o_radio, "toggle_on", "", - _e_desklock_cb_lb_show_on_all_screens, cfdata); - - wd = e_widget_data_get(cfdata->gui.loginbox_obj.show_current_screen); - edje_object_signal_callback_add(wd->o_radio, "toggle_on", "", - _e_desklock_cb_lb_show_on_current_screen, cfdata); - - wd = e_widget_data_get(cfdata->gui.loginbox_obj.show_specific_screen); - edje_object_signal_callback_add(wd->o_radio, "toggle_on", "", - _e_desklock_cb_lb_show_on_specific_screen, cfdata); - - - e_dialog_resizable_set(cfd->dia, 0); - return ot; + + of = e_widget_framelist_add(evas, _("Personalized Password:"), 0); + cfdata->gui.passwd_field = ob = e_widget_entry_add(evas, &(cfdata->desklock_passwd)); +#ifdef HAVE_PAM + if (cfdata->auth_method == 0) e_widget_disabled_set(ob, 1); +#endif + + _e_desklock_passwd_cb_change(cfdata, ob); + e_widget_entry_on_change_callback_set(ob, _e_desklock_passwd_cb_change, cfdata); + e_widget_min_size_set(ob, 200, 25); + e_widget_framelist_object_append(of, ob); + + ob = e_widget_check_add(evas, _("Show password"), &(cfdata->show_password)); + e_widget_on_change_hook_set(ob, _e_desklock_cb_show_passwd, cfdata); + cfdata->gui.show_passwd_check = ob; +#ifdef HAVE_PAM + if (cfdata->auth_method == 0) e_widget_disabled_set(ob, 1); +#endif + e_widget_framelist_object_append(of, ob); + +#ifdef HAVE_PAM + e_widget_table_object_append(ot, of, 0, 3, 1, 1, 1, 1, 1, 1); +#else + e_widget_table_object_append(ot, of, 0, 2, 1, 1, 1, 1, 1, 1); +#endif + + of = e_widget_framelist_add(evas, _("Automatic Locking"), 0); + + e_widget_disabled_set(of, !ecore_x_screensaver_event_available_get()); + + ob = e_widget_check_add(evas, _("Enable screensaver"), &(cfdata->use_timeout)); + e_widget_disabled_set(ob, !ecore_x_screensaver_event_available_get()); + e_widget_framelist_object_append(of, ob); + + ob = e_widget_check_add(evas, _("Lock when the screensaver starts"), &(cfdata->autolock)); + e_widget_disabled_set(ob, !ecore_x_screensaver_event_available_get()); + e_widget_framelist_object_append(of, ob); + + ob = e_widget_label_add(evas, _("Time until screensaver starts")); + e_widget_disabled_set(ob, !ecore_x_screensaver_event_available_get()); + e_widget_framelist_object_append(of, ob); + ob = e_widget_slider_add(evas, 1, 0, _("%1.0f seconds"), + 1.0, 600.0, + 1.0, 0, &(cfdata->timeout), NULL, + 200); + e_widget_framelist_object_append(of, ob); +#ifdef HAVE_PAM + e_widget_table_object_append(ot, of, 1, 2, 1, 2 ,1 ,1 ,1 ,1); +#else + e_widget_table_object_append(ot, of, 1, 2, 1, 1 ,1 ,1 ,1 ,1); +#endif + + e_dialog_resizable_set(cfd->dia, 0); + return ot; } /* general functionality/callbacks */ static void -_e_desklock_passwd_cb_change(void *data, Evas_Object *obj) +_e_desklock_cb_show_passwd(void *data, Evas_Object *obj) { - E_Widget_Entry_Data *wd; - E_Config_Dialog_Data *cfdata; - char *ptr; - int i; - - cfdata = data; - - // here goes the hack to have e_widget_entry look like - // password entry. However, I think, this should be implemented - // at least on the e_widget_entry level. The best would be - // e_entry. - if (!cfdata->desklock_passwd[0]) - { - E_FREE(cfdata->desklock_passwd_cp); - cfdata->desklock_passwd_cp = strdup(""); - return; - } - - if (strlen(cfdata->desklock_passwd) > strlen(cfdata->desklock_passwd_cp)) - { - for (i = 0; i < strlen(cfdata->desklock_passwd_cp); i++) - cfdata->desklock_passwd[i] = cfdata->desklock_passwd_cp[i]; - E_FREE(cfdata->desklock_passwd_cp); - cfdata->desklock_passwd_cp = strdup(cfdata->desklock_passwd); - } - else if (strlen(cfdata->desklock_passwd) < strlen(cfdata->desklock_passwd_cp)) - { - cfdata->desklock_passwd_cp[strlen(cfdata->desklock_passwd)] = 0; - E_FREE(cfdata->desklock_passwd); - cfdata->desklock_passwd = strdup(cfdata->desklock_passwd_cp); - } - else - { - E_FREE(cfdata->desklock_passwd); - cfdata->desklock_passwd = strdup(cfdata->desklock_passwd_cp); - } - - wd = e_widget_data_get(obj); - - if (cfdata->show_password) - { - e_entry_text_set(wd->o_entry, cfdata->desklock_passwd); - return; - } - - for (ptr = cfdata->desklock_passwd; *ptr; ptr++) *ptr = '*'; - e_entry_text_set(wd->o_entry, cfdata->desklock_passwd); -} - -static void -_e_desklock_cb_show_passwd(void *data, Evas_Object *obj, const char *emission, const char *source) -{ - E_Config_Dialog_Data *cfdata; - - cfdata = data; - _e_desklock_passwd_cb_change(cfdata, cfdata->gui.passwd_field); + E_Config_Dialog_Data *cfdata; + + cfdata = data; + _e_desklock_passwd_cb_change(cfdata, cfdata->gui.passwd_field); } static int -_e_desklock_zone_num_get() +_e_desklock_zone_num_get(void) { - int num; - Evas_List *l, *l2; - - num = 0; - for (l = e_manager_list(); l; l = l->next) - { - E_Manager *man = l->data; - - for (l2 = man->containers; l2; l2 = l2->next) - { - E_Container *con = l2->data; - - num += evas_list_count(con->zones); - } - } - - return num; + int num; + Evas_List *l, *l2; + + num = 0; + for (l = e_manager_list(); l; l = l->next) + { + E_Manager *man = l->data; + + for (l2 = man->containers; l2; l2 = l2->next) + { + E_Container *con = l2->data; + + num += evas_list_count(con->zones); + } + } + return num; } static void _load_bgs(E_Config_Dialog_Data *cfdata) { - E_Config_Dialog *cfd; - Evas_Object *o, *ic, *im; - Ecore_Evas *eebuf; - Evas *evasbuf; - Evas_List *bg_dirs, *bg; - const char *f, *f1; - char *c; - - if (!cfdata || !cfdata->gui.bg_list) - return; - - cfd = cfdata->cfd; - eebuf = ecore_evas_buffer_new(1, 1); - evasbuf = ecore_evas_get(eebuf); - - /* Desklock background */ - o = edje_object_add(evasbuf); - f1 = e_theme_edje_file_get("base/theme/desklock", "desklock/background"); - c = strdup(f1); - - e_widget_ilist_header_append(cfdata->gui.bg_list, NULL, ("Theme Backgrounds")); - if (edje_object_file_set(o, f1, "desklock/background")) - { - if (!e_thumb_exists(c)) - ic = e_thumb_generate_begin(c, BG_LIST_ICON_SIZE_W, BG_LIST_ICON_SIZE_H, - cfdata->evas, &ic, NULL, NULL); - else - ic = e_thumb_evas_object_get(c, cfdata->evas, BG_LIST_ICON_SIZE_W, BG_LIST_ICON_SIZE_H, 1); - - - e_widget_ilist_append(cfdata->gui.bg_list, ic, _("Theme Desklock Background"), - _ibg_list_cb_bg_selected, cfdata, DEF_DESKLOCK_BACKGROUND); - } - - if ((!e_config->desklock_background) || - (!strcmp(e_config->desklock_background, DEF_DESKLOCK_BACKGROUND))) - e_widget_ilist_selected_set(cfdata->gui.bg_list, 0); - + E_Config_Dialog *cfd; + Evas_Object *o, *ic, *im; + Ecore_Evas *eebuf; + Evas *evasbuf; + Evas_List *bg_dirs, *bg; + const char *f, *f1; + char *c; + + if (!cfdata || !cfdata->gui.bg_list) + return; + + cfd = cfdata->cfd; + eebuf = ecore_evas_buffer_new(1, 1); + evasbuf = ecore_evas_get(eebuf); + + /* Desklock background */ + o = edje_object_add(evasbuf); + f1 = e_theme_edje_file_get("base/theme/desklock", "desklock/background"); + c = strdup(f1); + + e_widget_ilist_header_append(cfdata->gui.bg_list, NULL, ("Theme Backgrounds")); + if (edje_object_file_set(o, f1, "desklock/background")) + { + if (!e_thumb_exists(c)) + ic = e_thumb_generate_begin(c, BG_LIST_ICON_SIZE_W, BG_LIST_ICON_SIZE_H, + cfdata->evas, &ic, NULL, NULL); + else + ic = e_thumb_evas_object_get(c, cfdata->evas, BG_LIST_ICON_SIZE_W, BG_LIST_ICON_SIZE_H, 1); + + + e_widget_ilist_append(cfdata->gui.bg_list, ic, _("Theme Desklock Background"), + _ibg_list_cb_bg_selected, cfdata, DEF_DESKLOCK_BACKGROUND); + } + + if ((!e_config->desklock_background) || + (!strcmp(e_config->desklock_background, DEF_DESKLOCK_BACKGROUND))) + e_widget_ilist_selected_set(cfdata->gui.bg_list, 0); + im = e_widget_preview_add(cfdata->evas, BG_PREVIEW_W, BG_PREVIEW_H); e_widget_preview_edje_set(im, c, "desktop/background"); - - evas_object_del(o); - ecore_evas_free(eebuf); - free(c); - /* end: Desklock background */ - - /* Theme Background */ - - - eebuf = ecore_evas_buffer_new(1, 1); - evasbuf = ecore_evas_get(eebuf); - - o = edje_object_add(evasbuf); - f = e_theme_edje_file_get("base/theme/backgrounds", "desktop/background"); - c = strdup(f); - if (edje_object_file_set(o, f, "desktop/background")) - { - if (!e_thumb_exists(c)) - ic = e_thumb_generate_begin(c, BG_LIST_ICON_SIZE_W, BG_LIST_ICON_SIZE_H, - cfdata->evas, &ic, NULL, NULL); - else - ic = e_thumb_evas_object_get(c, cfdata->evas, BG_LIST_ICON_SIZE_W, BG_LIST_ICON_SIZE_H, 1); - - e_widget_ilist_append(cfdata->gui.bg_list, ic, _("Theme Background"), _ibg_list_cb_bg_selected, - cfdata, DEF_THEME_BACKGROUND); - } - - if ((e_config->desklock_background) && - (!strcmp(e_config->desklock_background, DEF_THEME_BACKGROUND))) - { - e_widget_ilist_selected_set(cfdata->gui.bg_list, 1); - im = e_widget_preview_add(cfdata->evas, BG_PREVIEW_W, BG_PREVIEW_H); - e_widget_preview_edje_set(im, c, "desktop/background"); - } - - evas_object_del(o); - ecore_evas_free(eebuf); - free(c); - - e_widget_ilist_header_append(cfdata->gui.bg_list, NULL, _("Personal")); - bg_dirs = e_path_dir_list_get(path_backgrounds); - for (bg = bg_dirs; bg; bg = bg->next) - { - E_Path_Dir *d; - - d = bg->data; - if (ecore_file_is_dir(d->dir)) - { - char *bg_file; - Ecore_List *bgs; - int i = e_widget_ilist_count(cfdata->gui.bg_list); - - bgs = ecore_file_ls(d->dir); - if (!bgs) continue; - while ((bg_file = ecore_list_next(bgs))) - { - char full_path[4096]; - - snprintf(full_path, sizeof(full_path), "%s/%s", d->dir, bg_file); - if (ecore_file_is_dir(full_path)) continue; - if (!e_util_edje_collection_exists(full_path, "desktop/background")) continue; - - if (!e_thumb_exists(full_path)) - ic = e_thumb_generate_begin(full_path, BG_LIST_ICON_SIZE_W, BG_LIST_ICON_SIZE_H, - cfdata->evas, &ic, NULL, NULL); - else - ic = e_thumb_evas_object_get(full_path, cfdata->evas, BG_LIST_ICON_SIZE_W, - BG_LIST_ICON_SIZE_H, 1); - - e_widget_ilist_append(cfdata->gui.bg_list, ic, ecore_file_strip_ext(bg_file), - _ibg_list_cb_bg_selected, cfdata, full_path); - - if ((e_config->desklock_background) && - (!strcmp(e_config->desklock_background, full_path))) - { - e_widget_ilist_selected_set(cfdata->gui.bg_list, i); - evas_object_del(im); - im = e_widget_preview_add(cfdata->evas, BG_PREVIEW_W, BG_PREVIEW_H); - e_widget_preview_edje_set(im, full_path, "desktop/background"); - } - i++; - } - free(bg_file); - ecore_list_destroy(bgs); - } - free(d); - } - evas_list_free(bg); - evas_list_free(bg_dirs); - - cfdata->preview_image = im; + + evas_object_del(o); + ecore_evas_free(eebuf); + free(c); + /* end: Desklock background */ + + /* Theme Background */ + eebuf = ecore_evas_buffer_new(1, 1); + evasbuf = ecore_evas_get(eebuf); + + o = edje_object_add(evasbuf); + f = e_theme_edje_file_get("base/theme/backgrounds", "desktop/background"); + c = strdup(f); + if (edje_object_file_set(o, f, "desktop/background")) + { + if (!e_thumb_exists(c)) + ic = e_thumb_generate_begin(c, BG_LIST_ICON_SIZE_W, BG_LIST_ICON_SIZE_H, + cfdata->evas, &ic, NULL, NULL); + else + ic = e_thumb_evas_object_get(c, cfdata->evas, BG_LIST_ICON_SIZE_W, BG_LIST_ICON_SIZE_H, 1); + + e_widget_ilist_append(cfdata->gui.bg_list, ic, _("Theme Background"), _ibg_list_cb_bg_selected, + cfdata, DEF_THEME_BACKGROUND); + } + + if ((e_config->desklock_background) && + (!strcmp(e_config->desklock_background, DEF_THEME_BACKGROUND))) + { + e_widget_ilist_selected_set(cfdata->gui.bg_list, 1); + im = e_widget_preview_add(cfdata->evas, BG_PREVIEW_W, BG_PREVIEW_H); + e_widget_preview_edje_set(im, c, "desktop/background"); + } + + evas_object_del(o); + ecore_evas_free(eebuf); + free(c); + + e_widget_ilist_header_append(cfdata->gui.bg_list, NULL, _("Personal")); + bg_dirs = e_path_dir_list_get(path_backgrounds); + for (bg = bg_dirs; bg; bg = bg->next) + { + E_Path_Dir *d; + + d = bg->data; + if (ecore_file_is_dir(d->dir)) + { + char *bg_file; + Ecore_List *bgs; + int i = e_widget_ilist_count(cfdata->gui.bg_list); + + bgs = ecore_file_ls(d->dir); + if (!bgs) continue; + while ((bg_file = ecore_list_next(bgs))) + { + char full_path[4096]; + + snprintf(full_path, sizeof(full_path), "%s/%s", d->dir, bg_file); + if (ecore_file_is_dir(full_path)) continue; + if (!e_util_edje_collection_exists(full_path, "desktop/background")) continue; + + if (!e_thumb_exists(full_path)) + ic = e_thumb_generate_begin(full_path, BG_LIST_ICON_SIZE_W, BG_LIST_ICON_SIZE_H, + cfdata->evas, &ic, NULL, NULL); + else + ic = e_thumb_evas_object_get(full_path, cfdata->evas, BG_LIST_ICON_SIZE_W, + BG_LIST_ICON_SIZE_H, 1); + + e_widget_ilist_append(cfdata->gui.bg_list, ic, ecore_file_strip_ext(bg_file), + _ibg_list_cb_bg_selected, cfdata, full_path); + + if ((e_config->desklock_background) && + (!strcmp(e_config->desklock_background, full_path))) + { + e_widget_ilist_selected_set(cfdata->gui.bg_list, i); + evas_object_del(im); + im = e_widget_preview_add(cfdata->evas, BG_PREVIEW_W, BG_PREVIEW_H); + e_widget_preview_edje_set(im, full_path, "desktop/background"); + } + i++; + } + free(bg_file); + ecore_list_destroy(bgs); + } + free(d); + } + evas_list_free(bg); + evas_list_free(bg_dirs); + + cfdata->preview_image = im; } static void @@ -792,17 +645,16 @@ _ibg_list_cb_bg_selected(void *data) E_Config_Dialog_Data *cfdata; cfdata = data; - if (cfdata->cur_bg[0]) { - if (strcmp(cfdata->cur_bg, DEF_DESKLOCK_BACKGROUND) == 0) + if (!strcmp(cfdata->cur_bg, DEF_DESKLOCK_BACKGROUND)) { const char *theme; theme = e_theme_edje_file_get("base/theme/desklock", "desklock/background"); e_widget_preview_edje_set(cfdata->preview_image, theme, "desktop/background"); } - else if (strcmp(cfdata->cur_bg, DEF_THEME_BACKGROUND) == 0) + else if (!strcmp(cfdata->cur_bg, DEF_THEME_BACKGROUND)) { const char *theme; @@ -810,9 +662,7 @@ _ibg_list_cb_bg_selected(void *data) e_widget_preview_edje_set(cfdata->preview_image, theme, "desktop/background"); } else - { - e_widget_preview_edje_set(cfdata->preview_image, cfdata->cur_bg, "desktop/background"); - } + e_widget_preview_edje_set(cfdata->preview_image, cfdata->cur_bg, "desktop/background"); } else { @@ -824,65 +674,94 @@ _ibg_list_cb_bg_selected(void *data) } static void -_e_desklock_cb_lb_show_on_all_screens(void *data, Evas_Object *obj, const char *emission, - const char *source) +_e_desklock_passwd_cb_change(void *data, Evas_Object *obj) { - E_Config_Dialog_Data *cfdata; - - if (!(cfdata = data)) return; - - cfdata->specific_lb_zone_backup = cfdata->specific_lb_zone; - - e_widget_disabled_set(cfdata->gui.loginbox_obj.screen_slider, 1); + E_Config_Dialog_Data *cfdata; + char *ptr; + int i; + + cfdata = data; + + // here goes the hack to have e_widget_entry look like + // password entry. However, I think, this should be implemented + // at least on the e_widget_entry level. The best would be + // e_entry. + if (!cfdata->desklock_passwd[0]) + { + E_FREE(cfdata->desklock_passwd_cp); + cfdata->desklock_passwd_cp = strdup(""); + return; + } + + if (strlen(cfdata->desklock_passwd) > strlen(cfdata->desklock_passwd_cp)) + { + for (i = 0; i < strlen(cfdata->desklock_passwd_cp); i++) + cfdata->desklock_passwd[i] = cfdata->desklock_passwd_cp[i]; + E_FREE(cfdata->desklock_passwd_cp); + cfdata->desklock_passwd_cp = strdup(cfdata->desklock_passwd); + } + else if (strlen(cfdata->desklock_passwd) < strlen(cfdata->desklock_passwd_cp)) + { + cfdata->desklock_passwd_cp[strlen(cfdata->desklock_passwd)] = 0; + E_FREE(cfdata->desklock_passwd); + cfdata->desklock_passwd = strdup(cfdata->desklock_passwd_cp); + } + else + { + E_FREE(cfdata->desklock_passwd); + cfdata->desklock_passwd = strdup(cfdata->desklock_passwd_cp); + } + + if (cfdata->show_password) + { + e_widget_entry_text_set(obj, cfdata->desklock_passwd); + return; + } + +// FIXME: this is a hack. disable. see e_widget_entry.c for doing this right. +// for (ptr = cfdata->desklock_passwd; *ptr; ptr++) *ptr = '*'; +// e_widget_entry_text_set(obj, cfdata->desklock_passwd); } static void -_e_desklock_cb_lb_show_on_current_screen(void *data, Evas_Object *obj, const char *emission, - const char *source) +_e_desklock_cb_lb_show_change(void *data, Evas_Object *obj) { - _e_desklock_cb_lb_show_on_all_screens(data, obj, emission, source); -} + E_Config_Dialog_Data *cfdata; -static void -_e_desklock_cb_lb_show_on_specific_screen(void *data, Evas_Object *obj, const char *emission, - const char *source) -{ - E_Widget_Slider_Data *wd; - E_Config_Dialog_Data *cfdata; - - if (!(cfdata = data)) return; - - wd = e_widget_data_get(cfdata->gui.loginbox_obj.screen_slider); - e_slider_value_set(wd->o_slider, cfdata->specific_lb_zone_backup); - cfdata->specific_lb_zone = cfdata->specific_lb_zone_backup; - - e_widget_disabled_set(wd->o_widget, 0); + cfdata = data; + if (cfdata->login_box_zone == LOGINBOX_SHOW_ALL_SCREENS) + { + cfdata->specific_lb_zone_backup = cfdata->specific_lb_zone; + e_widget_disabled_set(cfdata->gui.loginbox_obj.screen_slider, 1); + } + else if (cfdata->login_box_zone == LOGINBOX_SHOW_CURRENT_SCREENS) + { + cfdata->specific_lb_zone_backup = cfdata->specific_lb_zone; + e_widget_disabled_set(cfdata->gui.loginbox_obj.screen_slider, 1); + } + else if (cfdata->login_box_zone == LOGINBOX_SHOW_SPECIFIC_SCREEN) + { + e_widget_slider_value_int_set(cfdata->gui.loginbox_obj.screen_slider, cfdata->specific_lb_zone_backup); + e_widget_disabled_set(cfdata->gui.loginbox_obj.screen_slider, 0); + } } #ifdef HAVE_PAM static void -_e_desklock_cb_syswide_auth_method(void *data, Evas_Object *obj, const char *emission, - const char *source) +_e_desklock_cb_auth_method_change(void *data, Evas_Object *obj) { - E_Widget_Entry_Data *ewd; - E_Widget_Check_Data *cwd; - E_Config_Dialog_Data *cfdata; + E_Config_Dialog_Data *cfdata; - if (!(cfdata = data)) return; - - e_widget_disabled_set(cfdata->gui.passwd_field, 1); - e_widget_disabled_set(cfdata->gui.show_passwd_check, 1); -} - -static void -_e_desklock_cb_personalized_auth_method(void *data, Evas_Object *obj, const char *emission, - const char *source) -{ - E_Config_Dialog_Data *cfdata; - - if (!(cfdata = data)) return; - - e_widget_disabled_set(cfdata->gui.passwd_field, 0); - e_widget_disabled_set(cfdata->gui.show_passwd_check, 0); + cfdata = data; + if (cfdata->auth_method == 0) + { + e_widget_disabled_set(cfdata->gui.passwd_field, 1); + e_widget_disabled_set(cfdata->gui.show_passwd_check, 1); + } + else if (cfdata->auth_method == 1) + { + e_widget_disabled_set(cfdata->gui.passwd_field, 0); + e_widget_disabled_set(cfdata->gui.show_passwd_check, 0); + } } #endif diff --git a/src/bin/e_widget_entry.c b/src/bin/e_widget_entry.c index 407b36cd1..3450074a7 100644 --- a/src/bin/e_widget_entry.c +++ b/src/bin/e_widget_entry.c @@ -139,16 +139,6 @@ e_widget_entry_add(Evas *evas, char **val) return obj; } -EAPI void -e_widget_entry_on_change_callback_set(Evas_Object *obj, void (*func) (void *data, Evas_Object *obj), void *data) -{ - E_Widget_Data *wd; - - wd = e_widget_data_get(obj); - wd->on_change_func = func; - wd->on_change_data = data; -} - void e_widget_entry_text_set(Evas_Object *entry, const char *text) { @@ -160,64 +150,22 @@ e_widget_entry_text_set(Evas_Object *entry, const char *text) *(wd->valptr) = strdup(text); } -#if 0 -const char * -e_widget_entry_text_get(Evas_Object *entry) +EAPI void +e_widget_entry_on_change_callback_set(Evas_Object *obj, void (*func) (void *data, Evas_Object *obj), void *data) { - return e_entry_text_get(entry); + E_Widget_Data *wd; + + wd = e_widget_data_get(obj); + wd->on_change_func = func; + wd->on_change_data = data; } -void -e_widget_entry_text_insert(Evas_Object *entry, const char *text) +EAPI void +e_widget_entry_password_set(Evas_Object *obj, int pw) { - e_entry_text_insert(entry, text); + E_Widget_Data *wd; + + wd = e_widget_data_get(obj); +// FIXME: need password mode for entry. +// e_entry_password_set(wd->o_entry, pw); } - -void -e_widget_entry_delete_char_before(Evas_Object *entry) -{ - e_entry_delete_char_before(entry); -} - -void -e_widget_entry_delete_char_after(Evas_Object *entry) -{ - e_entry_delete_char_after(entry); -} - -void -e_widget_entry_cursor_move_at_start(Evas_Object *entry) -{ - e_entry_cursor_move_at_start(entry); -} - -void -e_widget_entry_cursor_move_at_end(Evas_Object *entry) -{ - e_entry_cursor_move_at_end(entry); -} - -void -e_widget_entry_cursor_move_left(Evas_Object *entry) -{ - e_entry_cursor_move_left(entry); -} - -void -e_widget_entry_cursor_move_right(Evas_Object *entry) -{ - e_entry_cursor_move_right(entry); -} - -void -e_widget_entry_cursor_show(Evas_Object *entry) -{ - e_entry_cursor_show(entry); -} - -void -e_widget_entry_cursor_hide(Evas_Object *entry) -{ - e_entry_cursor_hide(entry); -} -#endif diff --git a/src/bin/e_widget_entry.h b/src/bin/e_widget_entry.h index dd62b4eb2..8fa78eb73 100644 --- a/src/bin/e_widget_entry.h +++ b/src/bin/e_widget_entry.h @@ -7,18 +7,9 @@ #define E_WIDGET_ENTRY_H EAPI Evas_Object *e_widget_entry_add(Evas *evas, char **val); -EAPI void e_widget_entry_text_set (Evas_Object *entry, const char *text); -EAPI const char *e_editable_text_text_get(Evas_Object *entry); +EAPI void e_widget_entry_text_set(Evas_Object *entry, const char *text); EAPI void e_widget_entry_text_insert (Evas_Object *entry, const char *text); -EAPI void e_widget_entry_delete_char_before(Evas_Object *entry); -EAPI void e_widget_entry_delete_char_after(Evas_Object *entry); -EAPI void e_widget_entry_cursor_move_at_start(Evas_Object *entry); -EAPI void e_widget_entry_cursor_move_at_end(Evas_Object *entry); -EAPI void e_widget_entry_cursor_move_left(Evas_Object *entry); -EAPI void e_widget_entry_cursor_move_right(Evas_Object *entry); -EAPI void e_widget_entry_cursor_show(Evas_Object *entry); -EAPI void e_widget_entry_cursor_hide(Evas_Object *entry); EAPI void e_widget_entry_on_change_callback_set(Evas_Object *obj, void (*func) (void *data, Evas_Object *obj), void *data); - +EAPI void e_widget_entry_password_set(Evas_Object *obj, int pw); #endif #endif