On Fri, 03 Mar 2006 20:36:23 -0800 enlightenment-cvs@lists.sourceforge.net
babbled:

i'm not sure changing the label of a checkbox like this is a good idea - NO UI 
i have ever seen does this. if it was 2 radio options - sure, 2 labels, but 
here - what does it really mean? is the label what happens when it is checked 
or unchecked? generally the logic of a tickbox as in any form is if you 
tick/cross it you say "yes" to the label next to it. i believe this is commonly 
accepted as the way to go and understood. i am not sure this improves anything 
here - actually makes it more confusing due to the checkbox next to the label 
if there was no check i would definitely agree it should toggle the label 
displaying what the current state is...

> Enlightenment CVS committal
> 
> Author  : devilhorns
> Project : e17
> Module  : apps/e
> 
> Dir     : e17/apps/e/src/bin
> 
> 
> Modified Files:
>       e_int_config_cursor.c 
> 
> 
> Log Message:
> Update the checkbox label when it gets toggled. Trying to think like grandma
> here :)
> 
> ===================================================================
> RCS file: /cvsroot/enlightenment/e17/apps/e/src/bin/e_int_config_cursor.c,v
> retrieving revision 1.4
> retrieving revision 1.5
> diff -u -3 -r1.4 -r1.5
> --- e_int_config_cursor.c     15 Feb 2006 20:32:28 -0000      1.4
> +++ e_int_config_cursor.c     4 Mar 2006 04:36:23 -0000       1.5
> @@ -6,6 +6,7 @@
>  static Evas_Object *_basic_create_widgets(E_Config_Dialog *cfd, Evas *evas,
> E_Config_Dialog_Data *cfdata); static int         _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); +static void         _cursor_check_toggle(void
> *data, Evas_Object *obj, const char *emission, const char *source); struct
> _E_Config_Dialog_Data {
> @@ -15,6 +16,13 @@
>     int cursor_size;
>  };
>  
> +typedef struct _E_Widget_Check_Data E_Widget_Check_Data;
> +struct _E_Widget_Check_Data 
> +{
> +   Evas_Object *o_check;
> +   int *valptr;
> +};
> +
>  EAPI E_Config_Dialog *
>  e_int_config_cursor(E_Container *con) 
>  {
> @@ -88,11 +96,16 @@
>  _basic_create_widgets(E_Config_Dialog *cfd, Evas *evas, E_Config_Dialog_Data
> *cfdata) {
>     Evas_Object *o, *of, *ob;
> +   E_Widget_Check_Data *wd;
>     
>     o = e_widget_list_add(evas, 0, 0);
>        
>     of = e_widget_framelist_add(evas, _("Cursor Settings"), 0);
>     ob = e_widget_check_add(evas, _("Use Enlightenment Cursor"), &
> (cfdata->use_e_cursor));
> +   wd = e_widget_data_get(ob);
> +   edje_object_signal_callback_add(wd->o_check, "toggle_on", "",
> _cursor_check_toggle, ob);
> +   edje_object_signal_callback_add(wd->o_check, "toggle_off", "",
> _cursor_check_toggle, ob);
> +   
>     e_widget_framelist_object_append(of, ob);
>     e_widget_list_object_append(o, of, 1, 1, 0.5);   
>  
> @@ -134,11 +147,15 @@
>  _advanced_create_widgets(E_Config_Dialog *cfd, Evas *evas,
> E_Config_Dialog_Data *cfdata) {
>     Evas_Object *o, *ob, *of;
> +   E_Widget_Check_Data *wd;
>        
>     o = e_widget_list_add(evas, 0, 0);
>  
>     of = e_widget_framelist_add(evas, _("Cursor Settings"), 0);
>     ob = e_widget_check_add(evas, _("Use Enlightenment Cursor"), &
> (cfdata->use_e_cursor));
> +   wd = e_widget_data_get(ob);
> +   edje_object_signal_callback_add(wd->o_check, "toggle_on", "",
> _cursor_check_toggle, ob);
> +   edje_object_signal_callback_add(wd->o_check, "toggle_off", "",
> _cursor_check_toggle, ob); e_widget_framelist_object_append(of, ob);
>     ob = e_widget_label_add(evas, _("Cursor Size"));
>     e_widget_framelist_object_append(of, ob);
> @@ -147,3 +164,20 @@
>     e_widget_list_object_append(o, of, 1, 1, 0.5);   
>     return o;
>  }
> +
> +static void 
> +_cursor_check_toggle(void *data, Evas_Object *obj, const char *emission,
> const char *source) +{
> +   E_Widget_Check_Data *wd;
> +   Evas_Object *o;
> +   
> +   if (!(o = data)) return;
> +   wd = e_widget_data_get(o);
> +   if (!wd->valptr)
> +     return;
> +
> +   if (*(wd->valptr) == 0)
> +     edje_object_part_text_set(wd->o_check, "label", _("Use X Cursor"));
> +   else
> +     edje_object_part_text_set(wd->o_check, "label", _("Use Enlightenment
> Cursor")); +}
> 
> 
> 
> 
> -------------------------------------------------------
> This SF.Net email is sponsored by xPML, a groundbreaking scripting language
> that extends applications into web and mobile media. Attend the live webcast
> and join the prime developer group breaking into this new coding territory!
> http://sel.as-us.falkag.net/sel?cmd=lnk&kid=110944&bid=241720&dat=121642
> _______________________________________________
> enlightenment-cvs mailing list
> enlightenment-cvs@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/enlightenment-cvs
> 


-- 
------------- Codito, ergo sum - "I code, therefore I am" --------------
The Rasterman (Carsten Haitzler)    [EMAIL PROTECTED]
裸好多
Tokyo, Japan (東京 日本)


-------------------------------------------------------
This SF.Net email is sponsored by xPML, a groundbreaking scripting language
that extends applications into web and mobile media. Attend the live webcast
and join the prime developer group breaking into this new coding territory!
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=110944&bid=241720&dat=121642
_______________________________________________
enlightenment-devel mailing list
enlightenment-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/enlightenment-devel

Reply via email to