view 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 source

#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()