X-Git-Url: http://git.wpitchoune.net/gitweb/?a=blobdiff_plain;f=src%2Fui_sensorpref.c;h=78fb551db1f66fdb0c46442fbc052018b4c08069;hb=9d77e6ab0ca102b9d42072df4fd9d2378897a5ca;hp=e71492c0a43c6466ac9c50adabbd5a560074ceed;hpb=fd0d4300a0cd2459ae71a410d59db154d07a2ab2;p=psensor.git diff --git a/src/ui_sensorpref.c b/src/ui_sensorpref.c index e71492c..78fb551 100644 --- a/src/ui_sensorpref.c +++ b/src/ui_sensorpref.c @@ -22,14 +22,12 @@ #include #include +#include #include #include #include #include -#if defined(HAVE_APPINDICATOR) -#include -#endif enum { COL_NAME = 0, @@ -44,7 +42,7 @@ struct sensor_pref { int alarm_enabled; int alarm_high_threshold; int alarm_low_threshold; - unsigned int appindicator_enabled; + bool appindicator_enabled; unsigned int appindicator_label_enabled; unsigned int display_enabled; }; @@ -63,8 +61,8 @@ sensor_pref_new(struct psensor *s, struct config *cfg) p->sensor = s; p->name = strdup(s->name); - p->graph_enabled = s->graph_enabled; - p->alarm_enabled = s->alarm_enabled; + p->graph_enabled = config_is_sensor_graph_enabled(s->id); + p->alarm_enabled = config_get_sensor_alarm_enabled(s->id); p->color = color_dup(s->color); p->display_enabled = config_is_sensor_enabled(s->id); @@ -78,7 +76,7 @@ sensor_pref_new(struct psensor *s, struct config *cfg) = celsius_to_fahrenheit(s->alarm_low_threshold); } - p->appindicator_enabled = s->appindicator_enabled; + p->appindicator_enabled = config_is_appindicator_enabled(s->id); p->appindicator_label_enabled = config_is_appindicator_label_enabled(s->id); @@ -290,18 +288,21 @@ update_pref(struct sensor_pref *p, struct config *cfg, GtkBuilder *builder) (gtk_builder_get_object(builder, "indicator_label_checkbox")); -#if !HAVE_APPINDICATOR - gtk_widget_set_sensitive(GTK_WIDGET(w_appindicator_label_enabled), - FALSE); - gtk_widget_set_sensitive(GTK_WIDGET(w_appindicator_enabled), FALSE); - gtk_widget_set_has_tooltip(GTK_WIDGET(w_appindicator_label_enabled), - TRUE); - gtk_widget_set_has_tooltip(GTK_WIDGET(w_appindicator_enabled), TRUE); -#else - gtk_widget_set_has_tooltip(GTK_WIDGET(w_appindicator_label_enabled), - FALSE); - gtk_widget_set_has_tooltip(GTK_WIDGET(w_appindicator_enabled), FALSE); -#endif + if (is_appindicator_supported()) { + gtk_widget_set_has_tooltip + (GTK_WIDGET(w_appindicator_label_enabled), FALSE); + gtk_widget_set_has_tooltip + (GTK_WIDGET(w_appindicator_enabled), FALSE); + } else { + gtk_widget_set_sensitive + (GTK_WIDGET(w_appindicator_label_enabled), FALSE); + gtk_widget_set_has_tooltip + (GTK_WIDGET(w_appindicator_label_enabled), TRUE); + gtk_widget_set_sensitive + (GTK_WIDGET(w_appindicator_enabled), FALSE); + gtk_widget_set_has_tooltip + (GTK_WIDGET(w_appindicator_enabled), TRUE); + } gtk_toggle_button_set_active(w_alarm, p->alarm_enabled); gtk_spin_button_set_value(w_high_threshold, p->alarm_high_threshold); @@ -365,10 +366,7 @@ static void apply_pref(struct sensor_pref *p, int pos, struct config *cfg) config_set_sensor_name(s->id, s->name); } - if (s->graph_enabled != p->graph_enabled) { - s->graph_enabled = p->graph_enabled; - config_set_sensor_graph_enabled(s->id, s->graph_enabled); - } + config_set_sensor_graph_enabled(s->id, p->graph_enabled); if (is_temp_type(s->type) && cfg->temperature_unit == FAHRENHEIT) { s->alarm_high_threshold @@ -383,10 +381,7 @@ static void apply_pref(struct sensor_pref *p, int pos, struct config *cfg) 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); - } + config_set_sensor_alarm_enabled(s->id, p->alarm_enabled); color_set(s->color, p->color->red, @@ -394,10 +389,7 @@ static void apply_pref(struct sensor_pref *p, int pos, struct config *cfg) 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); - } + config_set_appindicator_enabled(s->id, p->appindicator_enabled); config_set_appindicator_label_enabled(s->id, p->appindicator_label_enabled);