diff src/gtkimhtmltoolbar.c @ 8427:2e18099ded93

[gaim-migrate @ 9157] I'm going to start committing stuff rapidly. I've turned off rich-text cut and paste, as I have about an hour to finish everything I want finished and don't think I can fit that in. This adds the protocol-specific smileys to the toolbar, and I think that's about it. committer: Tailor Script <tailor@pidgin.im>
author Sean Egan <seanegan@gmail.com>
date Thu, 11 Mar 2004 20:02:00 +0000
parents c25c697525b7
children be4cf7c09ca3
line wrap: on
line diff
--- a/src/gtkimhtmltoolbar.c	Thu Mar 11 02:54:09 2004 +0000
+++ b/src/gtkimhtmltoolbar.c	Thu Mar 11 20:02:00 2004 +0000
@@ -538,14 +538,10 @@
 			return;
 		}
 
-		/*
-		  if(c->account)
-		  smileys = get_proto_smileys(
-		  gaim_account_get_protocol_id(gaim_conversation_get_account(c)));
+		if (toolbar->sml)
+			smileys = get_proto_smileys(toolbar->sml);
 		  else
-		*/
-
-		smileys = get_proto_smileys(GAIM_PROTO_DEFAULT);
+			  smileys = get_proto_smileys(GAIM_PROTO_DEFAULT);
 
 		while(smileys) {
 			GtkIMHtmlSmiley *smiley = smileys->data;
@@ -644,6 +640,11 @@
 	}
 }
 
+static void reset_buttons_cb(GtkIMHtml *imhtml, GtkIMHtmlToolbar *toolbar)
+{
+	printf("yo!\n");
+}
+
 enum {
 	LAST_SIGNAL
 };
@@ -654,6 +655,8 @@
 {
 	GtkIMHtmlToolbar *toolbar = GTK_IMHTMLTOOLBAR(object);
 
+	if (toolbar->sml)
+		free(toolbar->sml);
 	gtk_object_sink(GTK_OBJECT(toolbar->tooltips));
 
 	G_OBJECT_CLASS(parent_class)->finalize (object);
@@ -847,11 +850,7 @@
 	sep = gtk_hseparator_new();
 	gtk_box_pack_start(GTK_BOX(toolbar), sep, FALSE, FALSE, 0);
 	gtk_widget_show(sep);
-
-
-//if (!gaim_prefs_get_bool("/gaim/gtk/conversations/show_formatting_toolbar"))
-//	gtk_widget_hide(vbox);
-
+	toolbar->sml = NULL;
 	gtk_widget_show_all(hbox);
 }
 
@@ -895,4 +894,13 @@
 	toolbar->imhtml = imhtml;
 	g_signal_connect(G_OBJECT(imhtml), "format_functions_update", G_CALLBACK(update_buttons_cb), toolbar);
 	g_signal_connect(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);
 }
+
+void gtk_imhtmltoolbar_associate_smileys(GtkIMHtmlToolbar *toolbar, const char *proto_id)
+{
+	if (toolbar->sml)
+		g_free(toolbar->sml);
+	
+	toolbar->sml = g_strdup(proto_id);
+}