static void gimp_text_style_editor_color_changed (GimpColorButton *button, GimpTextStyleEditor *editor) { GtkTextBuffer *buffer = GTK_TEXT_BUFFER (editor->buffer); GtkTextIter start, end; GimpRGB color; if (! gtk_text_buffer_get_selection_bounds (buffer, &start, &end)) { return; } gimp_color_button_get_color (button, &color); gimp_text_buffer_set_color (editor->buffer, &start, &end, &color); }
static void gimp_text_style_editor_color_changed (GimpColorButton *button, GimpTextStyleEditor *editor) { GtkTextBuffer *buffer = GTK_TEXT_BUFFER (editor->buffer); GList *insert_tags; GList *remove_tags; if (gtk_text_buffer_get_has_selection (buffer)) { GtkTextIter start, end; GimpRGB color; gtk_text_buffer_get_selection_bounds (buffer, &start, &end); gimp_color_button_get_color (button, &color); gimp_text_buffer_set_color (editor->buffer, &start, &end, &color); } insert_tags = gimp_text_style_editor_list_tags (editor, &remove_tags); gimp_text_buffer_set_insert_tags (editor->buffer, insert_tags, remove_tags); }