diff src/gtkimhtmltoolbar.c @ 11275:ffc86d9ad8b7

[gaim-migrate @ 13461] Make the new clear formatting button work. committer: Tailor Script <tailor@pidgin.im>
author Richard Laager <rlaager@wiktel.com>
date Mon, 15 Aug 2005 19:46:32 +0000
parents b33eccbc3a10
children 2934ab3a6c89
line wrap: on
line diff
--- a/src/gtkimhtmltoolbar.c	Mon Aug 15 16:22:25 2005 +0000
+++ b/src/gtkimhtmltoolbar.c	Mon Aug 15 19:46:32 2005 +0000
@@ -38,6 +38,11 @@
 
 static GtkHBoxClass *parent_class = NULL;
 
+static void toggle_button_set_active_block(GtkToggleButton *button,
+										   gboolean is_active,
+										   GtkIMHtmlToolbar *toolbar);
+
+
 static void do_bold(GtkWidget *bold, GtkIMHtmlToolbar *toolbar)
 {
 	g_return_if_fail(toolbar != NULL);
@@ -324,7 +329,7 @@
 static void
 clear_formatting_cb(GtkWidget *clear, GtkIMHtmlToolbar *toolbar)
 {
-	gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(toolbar->clear), FALSE);
+	toggle_button_set_active_block(GTK_TOGGLE_BUTTON(toolbar->clear), FALSE, toolbar);
 	gtk_imhtml_clear_formatting(GTK_IMHTML(toolbar->imhtml));
 }
 
@@ -772,21 +777,6 @@
 	g_object_unref(object);
 }
 
-static void reset_buttons_cb(GtkIMHtml *imhtml, GtkIMHtmlToolbar *toolbar)
-{
-	if(gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(toolbar->bold)))
-		toggle_button_set_active_block(GTK_TOGGLE_BUTTON(toolbar->bold), FALSE,
-									   toolbar);
-
-	if(gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(toolbar->italic)))
-		toggle_button_set_active_block(GTK_TOGGLE_BUTTON(toolbar->italic),
-									   FALSE, toolbar);
-
-	if(gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(toolbar->underline)))
-		toggle_button_set_active_block(GTK_TOGGLE_BUTTON(toolbar->underline),
-									   FALSE, toolbar);
-}
-
 static void update_buttons(GtkIMHtmlToolbar *toolbar) {
 	gboolean bold, italic, underline;
 	char *tmp;
@@ -1111,7 +1101,7 @@
 	toolbar->imhtml = imhtml;
 	g_signal_connect(G_OBJECT(imhtml), "format_buttons_update", G_CALLBACK(update_buttons_cb), toolbar);
 	g_signal_connect_after(G_OBJECT(imhtml), "format_function_toggle", G_CALLBACK(toggle_button_cb), toolbar);
-	g_signal_connect(G_OBJECT(imhtml), "format_function_clear", G_CALLBACK(reset_buttons_cb), toolbar);
+	g_signal_connect_after(G_OBJECT(imhtml), "format_function_clear", G_CALLBACK(update_format_cb), toolbar);
 	g_signal_connect(G_OBJECT(imhtml), "format_function_update", G_CALLBACK(update_format_cb), toolbar);
 	g_signal_connect_after(G_OBJECT(GTK_IMHTML(imhtml)->text_buffer), "mark-set", G_CALLBACK(mark_set_cb), toolbar);