static void sensor_config_dialog_alarm_command_edited(GtkEntry *command_entry, SensorConfigDialog *config_dialog, NotifType notif_type) { GtkTreeModel *model; GtkTreePath *path; GtkTreeIter iter; gchar *value; g_object_get(command_entry, "text", &value, NULL); gtk_tree_selection_get_selected(config_dialog->sensors_applet->selection, &model, &iter); path = gtk_tree_model_get_path(GTK_TREE_MODEL(config_dialog->sensors_applet->sensors), &iter); sensors_applet_alarm_off(config_dialog->sensors_applet, path, notif_type); gtk_tree_store_set(config_dialog->sensors_applet->sensors, &iter, (notif_type == LOW_ALARM ? LOW_ALARM_COMMAND_COLUMN : HIGH_ALARM_COMMAND_COLUMN), value, -1); g_free(value); sensors_applet_update_sensor(config_dialog->sensors_applet, path); gtk_tree_path_free(path); }
static void sensor_config_dialog_alarm_toggled(GtkToggleButton *button, SensorConfigDialog *config_dialog) { GtkTreeModel *model; GtkTreePath *path; GtkTreeIter iter; gboolean value; value = gtk_toggle_button_get_active(button); /* update state of alarm widgets */ gtk_widget_set_sensitive(GTK_WIDGET(config_dialog->alarm_timeout_label), value); gtk_widget_set_sensitive(GTK_WIDGET(config_dialog->alarm_timeout_spinbutton), value); gtk_widget_set_sensitive(GTK_WIDGET(config_dialog->low_alarm_command_label), value); gtk_widget_set_sensitive(GTK_WIDGET(config_dialog->low_alarm_command_entry), value); gtk_widget_set_sensitive(GTK_WIDGET(config_dialog->high_alarm_command_label), value); gtk_widget_set_sensitive(GTK_WIDGET(config_dialog->high_alarm_command_entry), value); gtk_tree_selection_get_selected(config_dialog->sensors_applet->selection, &model, &iter); path = gtk_tree_model_get_path(GTK_TREE_MODEL(config_dialog->sensors_applet->sensors), &iter); gtk_tree_store_set(config_dialog->sensors_applet->sensors, &iter, ALARM_ENABLE_COLUMN, value, -1); sensors_applet_update_sensor(config_dialog->sensors_applet, path); gtk_tree_path_free(path); }
static void sensor_config_dialog_graph_color_set(GtkColorButton *color_button, SensorConfigDialog *config_dialog) { GtkTreeModel *model; GtkTreePath *path; GtkTreeIter iter; GdkColor color; gchar *color_string; gtk_color_button_get_color(color_button, &color); color_string = g_strdup_printf("#%02X%02X%02X", color.red / 256, color.green / 256, color.blue / 256); gtk_tree_selection_get_selected(config_dialog->sensors_applet->selection, &model, &iter); gtk_tree_store_set(config_dialog->sensors_applet->sensors, &iter, GRAPH_COLOR_COLUMN, color_string, -1); g_free(color_string); path = gtk_tree_model_get_path(GTK_TREE_MODEL(config_dialog->sensors_applet->sensors), &iter); sensors_applet_update_sensor(config_dialog->sensors_applet, path); gtk_tree_path_free(path); }
static void prefs_dialog_sensor_name_changed(GtkCellRenderer *renderer, gchar *path_str, gchar *new_text, PrefsDialog *prefs_dialog) { GtkTreeIter iter; GtkTreePath *path = gtk_tree_path_new_from_string(path_str); gtk_tree_model_get_iter(GTK_TREE_MODEL(prefs_dialog->sensors_applet->sensors), &iter, path); gtk_tree_store_set(prefs_dialog->sensors_applet->sensors, &iter, LABEL_COLUMN, new_text, -1); sensors_applet_update_sensor(prefs_dialog->sensors_applet, path); gtk_tree_path_free(path); }
static void sensor_config_dialog_graph_color_set(GtkColorButton *color_button, SensorConfigDialog *config_dialog) { GtkTreeModel *model; GtkTreePath *path; GtkTreeIter iter; GtkWidget *content_area; gchar *color_string; #if GTK_CHECK_VERSION (3, 0, 0) GdkRGBA color; gtk_color_button_get_rgba(color_button, &color); color_string = g_strdup_printf ("#%02X%02X%02X", (int)(0.5 + CLAMP (color.red, 0., 1.) * 255.), (int)(0.5 + CLAMP (color.green, 0., 1.) * 255.), (int)(0.5 + CLAMP (color.blue, 0., 1.) * 255.)); #else GdkColor color; gtk_color_button_get_color(color_button, &color); color_string = g_strdup_printf("#%02X%02X%02X", color.red / 256, color.green / 256, color.blue / 256); #endif gtk_tree_selection_get_selected(config_dialog->sensors_applet->selection, &model, &iter); gtk_tree_store_set(config_dialog->sensors_applet->sensors, &iter, GRAPH_COLOR_COLUMN, color_string, -1); g_free(color_string); path = gtk_tree_model_get_path(GTK_TREE_MODEL(config_dialog->sensors_applet->sensors), &iter); sensors_applet_update_sensor(config_dialog->sensors_applet, path); gtk_tree_path_free(path); }
static void sensor_config_dialog_offset_changed(GtkSpinButton *spinbutton, SensorConfigDialog *config_dialog) { GtkTreeModel *model; GtkTreePath *path; GtkTreeIter iter; gdouble value; value = gtk_spin_button_get_value(spinbutton); gtk_tree_selection_get_selected(config_dialog->sensors_applet->selection, &model, &iter); path = gtk_tree_model_get_path(GTK_TREE_MODEL(config_dialog->sensors_applet->sensors), &iter); gtk_tree_store_set(config_dialog->sensors_applet->sensors, &iter, OFFSET_COLUMN, value, -1); sensors_applet_update_sensor(config_dialog->sensors_applet, path); gtk_tree_path_free(path); }
static void sensor_config_dialog_alarm_timeout_changed(GtkSpinButton *spinbutton, SensorConfigDialog *config_dialog) { GtkTreeModel *model; GtkTreePath *path; GtkTreeIter iter; gint value; value = gtk_spin_button_get_value_as_int(spinbutton); gtk_tree_selection_get_selected(config_dialog->sensors_applet->selection, &model, &iter); path = gtk_tree_model_get_path(GTK_TREE_MODEL(config_dialog->sensors_applet->sensors), &iter); sensors_applet_all_alarms_off(config_dialog->sensors_applet, path); gtk_tree_store_set(config_dialog->sensors_applet->sensors, &iter, ALARM_TIMEOUT_COLUMN, value, -1); sensors_applet_update_sensor(config_dialog->sensors_applet, path); gtk_tree_path_free(path); }