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->poll_time = b->conf->poll_time;
if (cfdata->alarm_time > 0)
{
cfdata->show_alert = 1;
}
cfdata->show_alert = 1;
else
{
cfdata->show_alert = 0;
}
cfdata->show_alert = 0;
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 *
_basic_create_widgets(E_Config_Dialog *cfd, Evas *evas, E_Config_Dialog_Data *cfdata)
{
Battery *b;
Evas_Object *o, *of, *ob;
b = cfd->data;
_fill_data(b, cfdata);
o = e_widget_list_add(evas, 0, 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));
@ -131,12 +123,8 @@ static Evas_Object *
_advanced_create_widgets(E_Config_Dialog *cfd, Evas *evas, E_Config_Dialog_Data *cfdata)
{
Evas_Object *o, *of, *ob;
Battery *b;
/* Use Sliders for both cfg options */
b = cfd->data;
_fill_data(b, cfdata);
o = e_widget_list_add(evas, 0, 0);
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;
if (cfdata->show_alert)
{
b->conf->alarm = cfdata->alarm_time;
}
b->conf->alarm = cfdata->alarm_time;
else
{
b->conf->alarm = 0;
}
b->conf->alarm = 0;
if (cfdata->allow_overlap && !b->conf->allow_overlap)
b->conf->allow_overlap = 1;

View File

@ -53,8 +53,11 @@ static void *
_create_data(E_Config_Dialog *cfd)
{
E_Config_Dialog_Data *cfdata;
Clock_Face *cf;
cf = cfd->data;
cfdata = E_NEW(E_Config_Dialog_Data, 1);
_fill_data(cf, 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;
E_Radio_Group *rg;
Clock_Face *c;
c = cfd->data;
_fill_data(c, cfdata);
o = e_widget_list_add(evas, 0, 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;
E_Radio_Group *rg;
Dropshadow *ds;
ds = cfd->data;
_fill_data(ds, cfdata);
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)
{
Evas_Object *o, *ob;
IBar *ib;
ib = cfd->data;
_fill_data(ib, cfdata);
o = e_widget_list_add(evas, 0, 0);
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)
{
Evas_Object *o, *of, *ob;
IBar *ib;
ib = cfd->data;
_fill_data(ib, cfdata);
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)
{
Evas_Object *o, *ob, *of;
ITray *ib;
ib = cfd->data;
_fill_data(ib, cfdata);
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)
{
Evas_Object *o, *of, *ob;
ITray *ib;
ib = cfd->data;
_fill_data(ib, cfdata);
o = e_widget_list_add(evas, 0, 0);
@ -143,9 +135,7 @@ _advanced_apply_data(E_Config_Dialog *cfd, CFData *cfdata)
ib = cfd->data;
e_border_button_bindings_ungrab_all();
if (cfdata->rowsize != ib->conf->rowsize)
{
ib->conf->rowsize = cfdata->rowsize;
}
ib->conf->rowsize = cfdata->rowsize;
if (cfdata->allow_overlap && !ib->conf->allow_overlap)
ib->conf->allow_overlap = 1;
else if (!cfdata->allow_overlap && ib->conf->allow_overlap)

View File

@ -71,8 +71,11 @@ static void *
_create_data(E_Config_Dialog *cfd)
{
E_Config_Dialog_Data *cfdata;
Pager *p;
p = cfd->data;
cfdata = E_NEW(E_Config_Dialog_Data, 1);
_fill_data(p, 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;
E_Radio_Group *rg;
Pager *p;
p = cfd->data;
_fill_data(p, cfdata);
o = e_widget_list_add(evas, 0, 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;
E_Radio_Group *rg;
Pager *p;
p = cfd->data;
_fill_data(p, cfdata);
o = e_widget_list_add(evas, 0, 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;
if (t->conf->units == CELCIUS)
{
cfdata->unit_method = 0;
}
cfdata->unit_method = 0;
else
{
cfdata->unit_method = 1;
}
cfdata->unit_method = 1;
p = t->conf->poll_time;
cfdata->poll_time = p;
if ((p >= 0) && (p <= 5))
{
cfdata->poll_method = 1; //Fast
}
cfdata->poll_method = 1; //Fast
else if ((p > 5) && (p <= 10))
{
cfdata->poll_method = 10; //Normal
}
cfdata->poll_method = 10; //Normal
else if ((p > 10) && (p <= 30))
{
cfdata->poll_method = 30; //Slow
}
cfdata->poll_method = 30; //Slow
else if (p > 30)
{
cfdata->poll_method = 60; //Very Slow
}
cfdata->poll_method = 60; //Very Slow
p = t->conf->low;
if (cfdata->units == FAHRENHEIT)
p = FAR_2_CEL(p - 1); // -1 so the conversion doesn't make mid go hi
cfdata->low_temp = p;
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))
{
cfdata->low_method = TEMP_LOW_MID;
}
cfdata->low_method = 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;
if (cfdata->units == FAHRENHEIT)
p = FAR_2_CEL(p - 1);
cfdata->high_temp = p;
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))
{
cfdata->high_method = TEMP_HIGH_MID;
}
cfdata->high_method = 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"))
{
cfdata->sensor = 0;
}
cfdata->sensor = 0;
else if (!strcmp(t->conf->sensor_name, "temp2"))
{
cfdata->sensor = 1;
}
cfdata->sensor = 1;
else if (!strcmp(t->conf->sensor_name, "temp3"))
{
cfdata->sensor = 2;
}
cfdata->sensor = 2;
cfdata->allow_overlap = t->conf->allow_overlap;
}
@ -150,8 +120,11 @@ static void *
_create_data(E_Config_Dialog *cfd)
{
E_Config_Dialog_Data *cfdata;
Temperature *t;
t = cfd->data;
cfdata = E_NEW(E_Config_Dialog_Data, 1);
_fill_data(t, 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;
E_Radio_Group *rg;
Temperature *t;
t = cfd->data;
_fill_data(t, cfdata);
o = e_widget_list_add(evas, 0, 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;
e_border_button_bindings_ungrab_all();
if (cfdata->unit_method == 0)
{
t->conf->units = CELCIUS;
}
t->conf->units = CELCIUS;
else
{
t->conf->units = FAHRENHEIT;
}
t->conf->units = FAHRENHEIT;
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;
t = cfd->data;
_fill_data(t, cfdata);
o = e_widget_list_add(evas, 0, 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)
{
t->conf->units = CELCIUS;
}
t->conf->units = CELCIUS;
else
{
t->conf->units = FAHRENHEIT;
}
t->conf->units = FAHRENHEIT;
t->conf->poll_time = cfdata->poll_time;