Fix bug where changing a config value then selecting a different page (Basic/Advanced) would reset the value to it's original state.

SVN revision: 20437
This commit is contained in:
Christopher Michael 2006-02-13 16:10:33 +00:00
parent 52a5ccaac5
commit 31541946e6
7 changed files with 34 additions and 118 deletions

View File

@ -52,13 +52,9 @@ _fill_data(Battery *b, E_Config_Dialog_Data *cfdata)
cfdata->alarm_time = b->conf->alarm; cfdata->alarm_time = b->conf->alarm;
cfdata->poll_time = b->conf->poll_time; cfdata->poll_time = b->conf->poll_time;
if (cfdata->alarm_time > 0) if (cfdata->alarm_time > 0)
{ cfdata->show_alert = 1;
cfdata->show_alert = 1;
}
else else
{ cfdata->show_alert = 0;
cfdata->show_alert = 0;
}
cfdata->allow_overlap = b->conf->allow_overlap; cfdata->allow_overlap = b->conf->allow_overlap;
} }
@ -87,12 +83,8 @@ _free_data(E_Config_Dialog *cfd, E_Config_Dialog_Data *cfdata)
static Evas_Object * static Evas_Object *
_basic_create_widgets(E_Config_Dialog *cfd, Evas *evas, E_Config_Dialog_Data *cfdata) _basic_create_widgets(E_Config_Dialog *cfd, Evas *evas, E_Config_Dialog_Data *cfdata)
{ {
Battery *b;
Evas_Object *o, *of, *ob; Evas_Object *o, *of, *ob;
b = cfd->data;
_fill_data(b, cfdata);
o = e_widget_list_add(evas, 0, 0); o = e_widget_list_add(evas, 0, 0);
of = e_widget_framelist_add(evas, _("Basic Settings"), 0); of = e_widget_framelist_add(evas, _("Basic Settings"), 0);
ob = e_widget_check_add(evas, _("Show alert when battery is low"), &(cfdata->show_alert)); ob = e_widget_check_add(evas, _("Show alert when battery is low"), &(cfdata->show_alert));
@ -131,12 +123,8 @@ static Evas_Object *
_advanced_create_widgets(E_Config_Dialog *cfd, Evas *evas, E_Config_Dialog_Data *cfdata) _advanced_create_widgets(E_Config_Dialog *cfd, Evas *evas, E_Config_Dialog_Data *cfdata)
{ {
Evas_Object *o, *of, *ob; Evas_Object *o, *of, *ob;
Battery *b;
/* Use Sliders for both cfg options */ /* Use Sliders for both cfg options */
b = cfd->data;
_fill_data(b, cfdata);
o = e_widget_list_add(evas, 0, 0); o = e_widget_list_add(evas, 0, 0);
of = e_widget_frametable_add(evas, _("Advanced Settings"), 1); of = e_widget_frametable_add(evas, _("Advanced Settings"), 1);
@ -174,13 +162,9 @@ _advanced_apply_data(E_Config_Dialog *cfd, E_Config_Dialog_Data *cfdata)
b->conf->poll_time = cfdata->poll_time; b->conf->poll_time = cfdata->poll_time;
if (cfdata->show_alert) if (cfdata->show_alert)
{ b->conf->alarm = cfdata->alarm_time;
b->conf->alarm = cfdata->alarm_time;
}
else else
{ b->conf->alarm = 0;
b->conf->alarm = 0;
}
if (cfdata->allow_overlap && !b->conf->allow_overlap) if (cfdata->allow_overlap && !b->conf->allow_overlap)
b->conf->allow_overlap = 1; b->conf->allow_overlap = 1;

View File

@ -53,8 +53,11 @@ static void *
_create_data(E_Config_Dialog *cfd) _create_data(E_Config_Dialog *cfd)
{ {
E_Config_Dialog_Data *cfdata; E_Config_Dialog_Data *cfdata;
Clock_Face *cf;
cf = cfd->data;
cfdata = E_NEW(E_Config_Dialog_Data, 1); cfdata = E_NEW(E_Config_Dialog_Data, 1);
_fill_data(cf, cfdata);
return cfdata; return cfdata;
} }
@ -73,10 +76,6 @@ _basic_create_widgets(E_Config_Dialog *cfd, Evas *evas, E_Config_Dialog_Data *cf
{ {
Evas_Object *o, *of, *ob; Evas_Object *o, *of, *ob;
E_Radio_Group *rg; E_Radio_Group *rg;
Clock_Face *c;
c = cfd->data;
_fill_data(c, cfdata);
o = e_widget_list_add(evas, 0, 0); o = e_widget_list_add(evas, 0, 0);
of = e_widget_framelist_add(evas, _("General Settings"), 0); of = e_widget_framelist_add(evas, _("General Settings"), 0);

View File

@ -112,10 +112,6 @@ _basic_create_widgets(E_Config_Dialog *cfd, Evas *evas, E_Config_Dialog_Data *cf
{ {
Evas_Object *o, *ob, *of; Evas_Object *o, *ob, *of;
E_Radio_Group *rg; E_Radio_Group *rg;
Dropshadow *ds;
ds = cfd->data;
_fill_data(ds, cfdata);
o = e_widget_list_add(evas, 0, 0); o = e_widget_list_add(evas, 0, 0);

View File

@ -87,10 +87,6 @@ static Evas_Object *
_basic_create_widgets(E_Config_Dialog *cfd, Evas *evas, E_Config_Dialog_Data *cfdata) _basic_create_widgets(E_Config_Dialog *cfd, Evas *evas, E_Config_Dialog_Data *cfdata)
{ {
Evas_Object *o, *ob; Evas_Object *o, *ob;
IBar *ib;
ib = cfd->data;
_fill_data(ib, cfdata);
o = e_widget_list_add(evas, 0, 0); o = e_widget_list_add(evas, 0, 0);
ob = e_widget_check_add(evas, _("Show Follower"), &(cfdata->follower)); ob = e_widget_check_add(evas, _("Show Follower"), &(cfdata->follower));
@ -143,10 +139,6 @@ static Evas_Object *
_advanced_create_widgets(E_Config_Dialog *cfd, Evas *evas, E_Config_Dialog_Data *cfdata) _advanced_create_widgets(E_Config_Dialog *cfd, Evas *evas, E_Config_Dialog_Data *cfdata)
{ {
Evas_Object *o, *of, *ob; Evas_Object *o, *of, *ob;
IBar *ib;
ib = cfd->data;
_fill_data(ib, cfdata);
o = e_widget_list_add(evas, 0, 0); o = e_widget_list_add(evas, 0, 0);

View File

@ -80,10 +80,6 @@ static Evas_Object *
_basic_create_widgets(E_Config_Dialog *cfd, Evas *evas, CFData *cfdata) _basic_create_widgets(E_Config_Dialog *cfd, Evas *evas, CFData *cfdata)
{ {
Evas_Object *o, *ob, *of; Evas_Object *o, *ob, *of;
ITray *ib;
ib = cfd->data;
_fill_data(ib, cfdata);
o = e_widget_list_add(evas, 0, 0); o = e_widget_list_add(evas, 0, 0);
@ -115,10 +111,6 @@ static Evas_Object *
_advanced_create_widgets(E_Config_Dialog *cfd, Evas *evas, CFData *cfdata) _advanced_create_widgets(E_Config_Dialog *cfd, Evas *evas, CFData *cfdata)
{ {
Evas_Object *o, *of, *ob; Evas_Object *o, *of, *ob;
ITray *ib;
ib = cfd->data;
_fill_data(ib, cfdata);
o = e_widget_list_add(evas, 0, 0); o = e_widget_list_add(evas, 0, 0);
@ -143,9 +135,7 @@ _advanced_apply_data(E_Config_Dialog *cfd, CFData *cfdata)
ib = cfd->data; ib = cfd->data;
e_border_button_bindings_ungrab_all(); e_border_button_bindings_ungrab_all();
if (cfdata->rowsize != ib->conf->rowsize) if (cfdata->rowsize != ib->conf->rowsize)
{ ib->conf->rowsize = cfdata->rowsize;
ib->conf->rowsize = cfdata->rowsize;
}
if (cfdata->allow_overlap && !ib->conf->allow_overlap) if (cfdata->allow_overlap && !ib->conf->allow_overlap)
ib->conf->allow_overlap = 1; ib->conf->allow_overlap = 1;
else if (!cfdata->allow_overlap && ib->conf->allow_overlap) else if (!cfdata->allow_overlap && ib->conf->allow_overlap)

View File

@ -71,8 +71,11 @@ static void *
_create_data(E_Config_Dialog *cfd) _create_data(E_Config_Dialog *cfd)
{ {
E_Config_Dialog_Data *cfdata; E_Config_Dialog_Data *cfdata;
Pager *p;
p = cfd->data;
cfdata = E_NEW(E_Config_Dialog_Data, 1); cfdata = E_NEW(E_Config_Dialog_Data, 1);
_fill_data(p, cfdata);
return cfdata; return cfdata;
} }
@ -91,10 +94,6 @@ _basic_create_widgets(E_Config_Dialog *cfd, Evas *evas, E_Config_Dialog_Data *cf
{ {
Evas_Object *o, *of, *ob; Evas_Object *o, *of, *ob;
E_Radio_Group *rg; E_Radio_Group *rg;
Pager *p;
p = cfd->data;
_fill_data(p, cfdata);
o = e_widget_list_add(evas, 0, 0); o = e_widget_list_add(evas, 0, 0);
of = e_widget_framelist_add(evas, _("General Settings"), 0); of = e_widget_framelist_add(evas, _("General Settings"), 0);
@ -154,10 +153,6 @@ _advanced_create_widgets(E_Config_Dialog *cfd, Evas *evas, E_Config_Dialog_Data
{ {
Evas_Object *o, *of, *ob; Evas_Object *o, *of, *ob;
E_Radio_Group *rg; E_Radio_Group *rg;
Pager *p;
p = cfd->data;
_fill_data(p, cfdata);
o = e_widget_list_add(evas, 0, 0); o = e_widget_list_add(evas, 0, 0);
of = e_widget_framelist_add(evas, _("General Settings"), 0); of = e_widget_framelist_add(evas, _("General Settings"), 0);

View File

@ -69,79 +69,49 @@ _fill_data(Temperature *t, E_Config_Dialog_Data *cfdata)
cfdata->units = t->conf->units; cfdata->units = t->conf->units;
if (t->conf->units == CELCIUS) if (t->conf->units == CELCIUS)
{ cfdata->unit_method = 0;
cfdata->unit_method = 0;
}
else else
{ cfdata->unit_method = 1;
cfdata->unit_method = 1;
}
p = t->conf->poll_time; p = t->conf->poll_time;
cfdata->poll_time = p; cfdata->poll_time = p;
if ((p >= 0) && (p <= 5)) if ((p >= 0) && (p <= 5))
{ cfdata->poll_method = 1; //Fast
cfdata->poll_method = 1; //Fast
}
else if ((p > 5) && (p <= 10)) else if ((p > 5) && (p <= 10))
{ cfdata->poll_method = 10; //Normal
cfdata->poll_method = 10; //Normal
}
else if ((p > 10) && (p <= 30)) else if ((p > 10) && (p <= 30))
{ cfdata->poll_method = 30; //Slow
cfdata->poll_method = 30; //Slow
}
else if (p > 30) else if (p > 30)
{ cfdata->poll_method = 60; //Very Slow
cfdata->poll_method = 60; //Very Slow
}
p = t->conf->low; p = t->conf->low;
if (cfdata->units == FAHRENHEIT) if (cfdata->units == FAHRENHEIT)
p = FAR_2_CEL(p - 1); // -1 so the conversion doesn't make mid go hi p = FAR_2_CEL(p - 1); // -1 so the conversion doesn't make mid go hi
cfdata->low_temp = p; cfdata->low_temp = p;
if ((p >= 0) && (p <= TEMP_LOW_LOW)) if ((p >= 0) && (p <= TEMP_LOW_LOW))
{ cfdata->low_method = TEMP_LOW_LOW;
cfdata->low_method = TEMP_LOW_LOW;
}
else if ((p > TEMP_LOW_LOW) && (p <= TEMP_LOW_MID)) else if ((p > TEMP_LOW_LOW) && (p <= TEMP_LOW_MID))
{ cfdata->low_method = TEMP_LOW_MID;
cfdata->low_method = TEMP_LOW_MID;
}
else if (p > TEMP_LOW_MID) else if (p > TEMP_LOW_MID)
{ cfdata->low_method = TEMP_LOW_HIGH;
cfdata->low_method = TEMP_LOW_HIGH;
}
p = t->conf->high; p = t->conf->high;
if (cfdata->units == FAHRENHEIT) if (cfdata->units == FAHRENHEIT)
p = FAR_2_CEL(p - 1); p = FAR_2_CEL(p - 1);
cfdata->high_temp = p; cfdata->high_temp = p;
if ((p >= 0) && (p <= TEMP_HIGH_LOW)) if ((p >= 0) && (p <= TEMP_HIGH_LOW))
{ cfdata->high_method = TEMP_HIGH_LOW;
cfdata->high_method = TEMP_HIGH_LOW;
}
else if ((p > TEMP_HIGH_LOW) && (p <= TEMP_HIGH_MID)) else if ((p > TEMP_HIGH_LOW) && (p <= TEMP_HIGH_MID))
{ cfdata->high_method = TEMP_HIGH_MID;
cfdata->high_method = TEMP_HIGH_MID;
}
else if (p > TEMP_HIGH_MID) else if (p > TEMP_HIGH_MID)
{ cfdata->high_method = TEMP_HIGH_HIGH;
cfdata->high_method = TEMP_HIGH_HIGH;
}
if (!strcmp(t->conf->sensor_name, "temp1")) if (!strcmp(t->conf->sensor_name, "temp1"))
{ cfdata->sensor = 0;
cfdata->sensor = 0;
}
else if (!strcmp(t->conf->sensor_name, "temp2")) else if (!strcmp(t->conf->sensor_name, "temp2"))
{ cfdata->sensor = 1;
cfdata->sensor = 1;
}
else if (!strcmp(t->conf->sensor_name, "temp3")) else if (!strcmp(t->conf->sensor_name, "temp3"))
{ cfdata->sensor = 2;
cfdata->sensor = 2;
}
cfdata->allow_overlap = t->conf->allow_overlap; cfdata->allow_overlap = t->conf->allow_overlap;
} }
@ -150,8 +120,11 @@ static void *
_create_data(E_Config_Dialog *cfd) _create_data(E_Config_Dialog *cfd)
{ {
E_Config_Dialog_Data *cfdata; E_Config_Dialog_Data *cfdata;
Temperature *t;
t = cfd->data;
cfdata = E_NEW(E_Config_Dialog_Data, 1); cfdata = E_NEW(E_Config_Dialog_Data, 1);
_fill_data(t, cfdata);
return cfdata; return cfdata;
} }
@ -170,10 +143,6 @@ _basic_create_widgets(E_Config_Dialog *cfd, Evas *evas, E_Config_Dialog_Data *cf
{ {
Evas_Object *o, *of, *ob; Evas_Object *o, *of, *ob;
E_Radio_Group *rg; E_Radio_Group *rg;
Temperature *t;
t = cfd->data;
_fill_data(t, cfdata);
o = e_widget_list_add(evas, 0, 0); o = e_widget_list_add(evas, 0, 0);
of = e_widget_framelist_add(evas, _("Display Units"), 0); of = e_widget_framelist_add(evas, _("Display Units"), 0);
@ -262,13 +231,9 @@ _basic_apply_data(E_Config_Dialog *cfd, E_Config_Dialog_Data *cfdata)
t = cfd->data; t = cfd->data;
e_border_button_bindings_ungrab_all(); e_border_button_bindings_ungrab_all();
if (cfdata->unit_method == 0) if (cfdata->unit_method == 0)
{ t->conf->units = CELCIUS;
t->conf->units = CELCIUS;
}
else else
{ t->conf->units = FAHRENHEIT;
t->conf->units = FAHRENHEIT;
}
t->conf->poll_time = (double)cfdata->poll_method; t->conf->poll_time = (double)cfdata->poll_method;
@ -304,7 +269,6 @@ _advanced_create_widgets(E_Config_Dialog *cfd, Evas *evas, E_Config_Dialog_Data
Temperature *t; Temperature *t;
t = cfd->data; t = cfd->data;
_fill_data(t, cfdata);
o = e_widget_list_add(evas, 0, 0); o = e_widget_list_add(evas, 0, 0);
of = e_widget_framelist_add(evas, _("Display Units"), 0); of = e_widget_framelist_add(evas, _("Display Units"), 0);
@ -434,13 +398,9 @@ _advanced_apply_data(E_Config_Dialog *cfd, E_Config_Dialog_Data *cfdata)
} }
if (cfdata->unit_method == 0) if (cfdata->unit_method == 0)
{ t->conf->units = CELCIUS;
t->conf->units = CELCIUS;
}
else else
{ t->conf->units = FAHRENHEIT;
t->conf->units = FAHRENHEIT;
}
t->conf->poll_time = cfdata->poll_time; t->conf->poll_time = cfdata->poll_time;