view plugins/perl/common/BuddyList_Group.xs @ 9627:8a540b8a5f70

[gaim-migrate @ 10471] A bug fix for away message tooltips and some more removing-gaim_notify_errors. Here's the thought: for errors associated with a buddy, check to see if there's already a window open for him, if so, print the error to the window and present the window to the user. If not, you can go ahead and gaim_notify_error. So, things like checking profiles in the buddy list might potentially print errors to conversations. I think this is good, but we'll try it out a bit. If it's really good, we won't even gaim_notify_error and instead create a new convo window just for the error. committer: Tailor Script <tailor@pidgin.im>
author Sean Egan <seanegan@gmail.com>
date Sun, 01 Aug 2004 00:31:45 +0000
parents 7a8aa87164ae
children
line wrap: on
line source

#include "module.h"

MODULE = Gaim::BuddyList::Group  PACKAGE = Gaim::BuddyList::Group  PREFIX = gaim_group_
PROTOTYPES: ENABLE

Gaim::BuddyList::Group
new(name)
	const char *name
CODE:
	RETVAL = gaim_group_new(name);
OUTPUT:
	RETVAL

void
rename(group, new_name)
	Gaim::BuddyList::Group group
	const char *new_name
CODE:
	gaim_blist_rename_group(group, new_name);

void
get_accounts(group)
	Gaim::BuddyList::Group group
PREINIT:
	GSList *l;
PPCODE:
	for (l = gaim_group_get_accounts(group); l != NULL; l = l->next)
		XPUSHs(sv_2mortal(gaim_perl_bless_object(l->data, "Gaim::Account")));

int
get_size(group, offline)
	Gaim::BuddyList::Group group
	gboolean offline
CODE:
	RETVAL = gaim_blist_get_group_size(group, offline);
OUTPUT:
	RETVAL

const char *
get_name(group)
	Gaim::BuddyList::Group group
CODE:
	RETVAL = group->name;
OUTPUT:
	RETVAL

int
get_online_count(group)
	Gaim::BuddyList::Group group
CODE:
	RETVAL = gaim_blist_get_group_online_count(group);
OUTPUT:
	RETVAL

void
buddies(group)
	Gaim::BuddyList::Group group
PREINIT:
	GaimBlistNode *node;
	GaimBlistNode *contact;
	GaimBlistNode *_group = (GaimBlistNode *)group;
PPCODE:
	for (contact = _group->child; contact != NULL; contact = contact->next)
	{
		for (node = contact->child; node != NULL; node = node->next)
		{
			XPUSHs(sv_2mortal(gaim_perl_bless_object(node,
				"Gaim::BuddyList::Buddy")));
		}
	}