diff src/protocols/irc/irc.c @ 2170:c24595d3c364

[gaim-migrate @ 2180] buddy_menu committer: Tailor Script <tailor@pidgin.im>
author Eric Warmenhoven <eric@warmenhoven.org>
date Mon, 27 Aug 2001 07:11:50 +0000
parents edf8c5a70e5b
children b51cd9350d65
line wrap: on
line diff
--- a/src/protocols/irc/irc.c	Mon Aug 27 04:53:19 2001 +0000
+++ b/src/protocols/irc/irc.c	Mon Aug 27 07:11:50 2001 +0000
@@ -24,7 +24,6 @@
 
 
 #include <netdb.h>
-#include <gtk/gtk.h>
 #include <unistd.h>
 #include <errno.h>
 #include <netinet/in.h>
@@ -1978,9 +1977,8 @@
 }
 
 /* Send out a ping request to the specified user */
-static void irc_send_ping(GtkObject *w, char *who)
+static void irc_send_ping(struct gaim_connection *gc, char *who)
 {
-	struct gaim_connection *gc = (struct gaim_connection *)gtk_object_get_user_data(w);
 	struct irc_data *idata = (struct irc_data *)gc->proto_data;
 	char buf[BUF_LEN];
 
@@ -2003,27 +2001,24 @@
 	write(idata->fd, buf, strlen(buf));
 }
 
-static void irc_send_whois(GtkObject *w, char *who)
-{
-	struct gaim_connection *gc = (struct gaim_connection *)gtk_object_get_user_data(w);
-	irc_get_info(gc, who);
-}
-
-static void irc_buddy_menu(GtkWidget *menu, struct gaim_connection *gc, char *who)
+static GList *irc_buddy_menu(struct gaim_connection *gc, char *who)
 {
-	GtkWidget *button;
-
-	button = gtk_menu_item_new_with_label("Ping");
-	gtk_signal_connect(GTK_OBJECT(button), "activate", GTK_SIGNAL_FUNC(irc_send_ping), who);
-	gtk_object_set_user_data(GTK_OBJECT(button), gc);
-	gtk_menu_append(GTK_MENU(menu), button);
-	gtk_widget_show(button);
-
-	button = gtk_menu_item_new_with_label("Whois");
-	gtk_signal_connect(GTK_OBJECT(button), "activate", GTK_SIGNAL_FUNC(irc_send_whois), who);
-	gtk_object_set_user_data(GTK_OBJECT(button), gc);
-	gtk_menu_append(GTK_MENU(menu), button);
-	gtk_widget_show(button);
+	GList *m = NULL;
+	struct proto_buddy_menu *pbm;
+
+	pbm = g_new0(struct proto_buddy_menu, 1);
+	pbm->label = _("Ping");
+	pbm->callback = irc_send_ping;
+	pbm->gc = gc;
+	m = g_list_append(m, pbm);
+
+	pbm = g_new0(struct proto_buddy_menu, 1);
+	pbm->label = _("Whois");
+	pbm->callback = irc_get_info;
+	pbm->gc = gc;
+	m = g_list_append(m, pbm);
+
+	return m;
 }