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
{
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)
{
_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);
_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);
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"));
+}