-static void
-apply_prefs(struct sensor_pref **prefs,
- struct psensor **sensors,
- struct config *cfg)
-{
- int n = psensor_list_size(sensors);
- int i;
-
- for (i = 0; i < n; i++) {
- struct psensor *s = sensors[i];
- struct sensor_pref *p = prefs[i];
-
- if (strcmp(p->name, s->name)) {
- free(s->name);
- s->name = strdup(p->name);
- config_set_sensor_name(s->id, s->name);
- }
-
- if (s->enabled != p->enabled) {
- s->enabled = p->enabled;
- config_set_sensor_enabled(s->id, s->enabled);
- }
-
- if (is_temp_type(s->type)
- && cfg->temperature_unit == FAHRENHEIT) {
- s->alarm_high_threshold = fahrenheit_to_celcius
- (p->alarm_high_threshold);
- s->alarm_low_threshold = fahrenheit_to_celcius
- (p->alarm_low_threshold);
- } else {
- s->alarm_high_threshold = p->alarm_high_threshold;
- s->alarm_low_threshold = p->alarm_low_threshold;
- }
-
- config_set_sensor_alarm_high_threshold(s->id,
- s->alarm_high_threshold);
- config_set_sensor_alarm_low_threshold(s->id,
- s->alarm_low_threshold);
-
- if (s->alarm_enabled != p->alarm_enabled) {
- s->alarm_enabled = p->alarm_enabled;
- config_set_sensor_alarm_enabled(s->id,
- s->alarm_enabled);
- }
-
- color_set(s->color,
- p->color->red, p->color->green, p->color->blue);
- config_set_sensor_color(s->id, s->color);
-
- if (s->appindicator_enabled != p->appindicator_enabled) {
- s->appindicator_enabled = p->appindicator_enabled;
- config_set_appindicator_enabled
- (s->id, s->appindicator_enabled);
- }
- }
-}
-