diff gtk/plugins/perl/common/GtkConv.xs @ 14416:eeca8be382a5

[gaim-migrate @ 17124] This is a Gaim::Gtk perl module for use by gaim plugins to get access to the gtkgaim interface functions. It isn't complete because anything dealing with Gtk widgets themselves doesn't work yet (I need to figure out the best way to do that). To use this a perl plugin just needs to include 'use Gaim::Gtk;' either on top of 'use Gaim;' or instead of it. I'm not done with this yet. At the moment you have to 'use Gaim;' or 'use Gaim::Gtk;' which loads all the parts, I'm planning to let you actually say 'use Gaim::Gtk::Debug;' to just get the gtkdebug.h functions. Though 'use Gaim' would work the same way as always. committer: Tailor Script <tailor@pidgin.im>
author Etan Reisner <pidgin@unreliablesource.net>
date Sat, 02 Sep 2006 05:31:10 +0000
parents
children e88aae4f4c40
line wrap: on
line diff
--- /dev/null	Thu Jan 01 00:00:00 1970 +0000
+++ b/gtk/plugins/perl/common/GtkConv.xs	Sat Sep 02 05:31:10 2006 +0000
@@ -0,0 +1,87 @@
+#include "gtkmodule.h"
+
+/* This can't work at the moment since I don't have a typemap for Gtk::Widget.
+ * I thought about using the one from libgtk2-perl but wasn't sure how to go
+ * about doing that.
+guint
+gaim_gtk_conversations_fill_menu(menu, convs)
+	Gtk::Widget menu
+	SV *convs
+PREINIT:
+	GList *t_GL;
+	int i, t_len;
+PPCODE:
+	t_GL = NULL;
+	t_len = av_len((AV *)SvRV(convs));
+
+	for (i = 0; i < t_len; i++) {
+		STRLEN t_sl;
+		t_GL = g_list_append(t_GL, SvPV(*av_fetch((AV *)SvRV(convs), i, 0), t_sl));
+	}
+	gaim_gtk_conversations_fill_menu(menu, t_GL);
+*/
+
+/* This can't work at the moment since I don't have a typemap for Gtk::Widget.
+ * I thought about using the one from libgtk2-perl but wasn't sure how to go
+ * about doing that.
+GdkPixbuf
+gaim_gtkconv_get_tab_icon(conv, small_icon)
+	Gaim::Conversation conv
+	gboolean small_icon
+*/
+
+/* This can't work at the moment since I don't have a typemap for gboolean *.
+int
+gaim_gtkconv_get_tab_at_xy(win, x, y, to_right)
+	Gaim::Gtk::Conversation::Window win
+	int x
+	int y
+	gboolean * to_right
+*/
+
+MODULE = Gaim::Gtk::Conversation  PACKAGE = Gaim::Gtk::Conversation  PREFIX = gaim_gtkconv_
+PROTOTYPES: ENABLE
+
+void
+gaim_gtkconv_update_buddy_icon(conv)
+	Gaim::Conversation conv
+
+void
+gaim_gtkconv_switch_active_conversation(conv)
+	Gaim::Conversation conv
+
+void
+gaim_gtkconv_update_tabs()
+
+void
+gaim_gtkconv_update_buttons_by_protocol(conv)
+	Gaim::Conversation conv
+
+void
+gaim_gtkconv_present_conversation(conv)
+	Gaim::Conversation conv
+
+Gaim::Gtk::Conversation::Window
+gaim_gtkconv_get_window(conv)
+	Gaim::Gtk::Conversation conv
+
+void
+gaim_gtkconv_new(conv)
+	Gaim::Conversation conv
+
+gboolean
+gaim_gtkconv_is_hidden(gtkconv)
+	Gaim::Gtk::Conversation gtkconv
+
+MODULE = Gaim::Gtk::Conversation  PACKAGE = Gaim::Gtk::Conversations  PREFIX = gaim_gtk_conversations_
+PROTOTYPES: ENABLE
+
+void
+gaim_gtk_conversations_find_unseen_list(type, min_state, hidden_only, max_count)
+	Gaim::ConversationType type
+	Gaim::UnseenState min_state
+	gboolean hidden_only
+	guint max_count
+
+void *
+gaim_gtk_conversations_get_handle()