annotate plugins/perl/common/BuddyList.xs @ 6543:4d45f1eb0a7b

[gaim-migrate @ 7065] Crashes are bad. committer: Tailor Script <tailor@pidgin.im>
author Christian Hammond <chipx86@chipx86.com>
date Thu, 21 Aug 2003 03:29:33 +0000
parents fe0294504602
children a87b9c7d199e
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
6531
7c42b8ca3222 [gaim-migrate @ 7048]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1 #include "module.h"
7c42b8ca3222 [gaim-migrate @ 7048]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
2
7c42b8ca3222 [gaim-migrate @ 7048]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
3 MODULE = Gaim::BuddyList PACKAGE = Gaim::BuddyList PREFIX = gaim_blist_
7c42b8ca3222 [gaim-migrate @ 7048]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
4 PROTOTYPES: ENABLE
7c42b8ca3222 [gaim-migrate @ 7048]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
5
7c42b8ca3222 [gaim-migrate @ 7048]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
6 void
7c42b8ca3222 [gaim-migrate @ 7048]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
7 gaim_blist_set_visible(show)
7c42b8ca3222 [gaim-migrate @ 7048]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
8 gboolean show
7c42b8ca3222 [gaim-migrate @ 7048]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
9
7c42b8ca3222 [gaim-migrate @ 7048]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
10 void
7c42b8ca3222 [gaim-migrate @ 7048]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
11 add_buddy(buddy, group)
7c42b8ca3222 [gaim-migrate @ 7048]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
12 Gaim::BuddyList::Buddy buddy
7c42b8ca3222 [gaim-migrate @ 7048]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
13 Gaim::BuddyList::Group group
7c42b8ca3222 [gaim-migrate @ 7048]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
14 CODE:
7c42b8ca3222 [gaim-migrate @ 7048]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
15 gaim_blist_add_buddy(buddy, group, NULL);
7c42b8ca3222 [gaim-migrate @ 7048]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
16
7c42b8ca3222 [gaim-migrate @ 7048]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
17 void
7c42b8ca3222 [gaim-migrate @ 7048]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
18 add_group(group)
7c42b8ca3222 [gaim-migrate @ 7048]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
19 Gaim::BuddyList::Group group
7c42b8ca3222 [gaim-migrate @ 7048]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
20 CODE:
7c42b8ca3222 [gaim-migrate @ 7048]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
21 gaim_blist_add_group(group, NULL);
7c42b8ca3222 [gaim-migrate @ 7048]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
22
7c42b8ca3222 [gaim-migrate @ 7048]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
23 void
7c42b8ca3222 [gaim-migrate @ 7048]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
24 add_chat(chat, group)
7c42b8ca3222 [gaim-migrate @ 7048]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
25 Gaim::BuddyList::Chat chat
7c42b8ca3222 [gaim-migrate @ 7048]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
26 Gaim::BuddyList::Group group
7c42b8ca3222 [gaim-migrate @ 7048]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
27 CODE:
7c42b8ca3222 [gaim-migrate @ 7048]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
28 gaim_blist_add_chat(chat, group, NULL);
7c42b8ca3222 [gaim-migrate @ 7048]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
29
7c42b8ca3222 [gaim-migrate @ 7048]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
30 void
7c42b8ca3222 [gaim-migrate @ 7048]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
31 gaim_blist_remove_buddy(buddy)
7c42b8ca3222 [gaim-migrate @ 7048]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
32 Gaim::BuddyList::Buddy buddy
7c42b8ca3222 [gaim-migrate @ 7048]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
33
7c42b8ca3222 [gaim-migrate @ 7048]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
34 void
7c42b8ca3222 [gaim-migrate @ 7048]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
35 gaim_blist_remove_group(group)
7c42b8ca3222 [gaim-migrate @ 7048]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
36 Gaim::BuddyList::Group group
7c42b8ca3222 [gaim-migrate @ 7048]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
37
7c42b8ca3222 [gaim-migrate @ 7048]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
38 void
7c42b8ca3222 [gaim-migrate @ 7048]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
39 gaim_blist_remove_chat(chat)
7c42b8ca3222 [gaim-migrate @ 7048]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
40 Gaim::BuddyList::Chat chat
7c42b8ca3222 [gaim-migrate @ 7048]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
41
7c42b8ca3222 [gaim-migrate @ 7048]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
42 Gaim::BuddyList::Buddy
7c42b8ca3222 [gaim-migrate @ 7048]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
43 find_buddy(account, name)
7c42b8ca3222 [gaim-migrate @ 7048]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
44 Gaim::Account account
7c42b8ca3222 [gaim-migrate @ 7048]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
45 const char *name
7c42b8ca3222 [gaim-migrate @ 7048]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
46 CODE:
7c42b8ca3222 [gaim-migrate @ 7048]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
47 RETVAL = gaim_find_buddy(account, name);
7c42b8ca3222 [gaim-migrate @ 7048]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
48 OUTPUT:
7c42b8ca3222 [gaim-migrate @ 7048]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
49 RETVAL
7c42b8ca3222 [gaim-migrate @ 7048]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
50
7c42b8ca3222 [gaim-migrate @ 7048]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
51 void
7c42b8ca3222 [gaim-migrate @ 7048]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
52 find_buddies(account, name)
7c42b8ca3222 [gaim-migrate @ 7048]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
53 Gaim::Account account
7c42b8ca3222 [gaim-migrate @ 7048]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
54 const char *name
7c42b8ca3222 [gaim-migrate @ 7048]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
55 PREINIT:
7c42b8ca3222 [gaim-migrate @ 7048]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
56 GSList *l;
7c42b8ca3222 [gaim-migrate @ 7048]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
57 PPCODE:
7c42b8ca3222 [gaim-migrate @ 7048]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
58 for (l = gaim_find_buddies(account, name); l != NULL; l = l->next)
7c42b8ca3222 [gaim-migrate @ 7048]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
59 {
7c42b8ca3222 [gaim-migrate @ 7048]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
60 XPUSHs(sv_2mortal(gaim_perl_bless_object(l->data,
7c42b8ca3222 [gaim-migrate @ 7048]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
61 "Gaim::BuddyList::Buddy")));
7c42b8ca3222 [gaim-migrate @ 7048]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
62 }
7c42b8ca3222 [gaim-migrate @ 7048]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
63
7c42b8ca3222 [gaim-migrate @ 7048]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
64 g_slist_free(l);
7c42b8ca3222 [gaim-migrate @ 7048]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
65
7c42b8ca3222 [gaim-migrate @ 7048]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
66 Gaim::BuddyList::Group
7c42b8ca3222 [gaim-migrate @ 7048]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
67 find_group(name)
7c42b8ca3222 [gaim-migrate @ 7048]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
68 const char *name
7c42b8ca3222 [gaim-migrate @ 7048]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
69 CODE:
7c42b8ca3222 [gaim-migrate @ 7048]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
70 RETVAL = gaim_find_group(name);
7c42b8ca3222 [gaim-migrate @ 7048]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
71 OUTPUT:
7c42b8ca3222 [gaim-migrate @ 7048]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
72 RETVAL
7c42b8ca3222 [gaim-migrate @ 7048]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
73
7c42b8ca3222 [gaim-migrate @ 7048]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
74 Gaim::BuddyList::Chat
7c42b8ca3222 [gaim-migrate @ 7048]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
75 gaim_blist_find_chat(account, name)
7c42b8ca3222 [gaim-migrate @ 7048]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
76 Gaim::Account account
7c42b8ca3222 [gaim-migrate @ 7048]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
77 const char *name
7c42b8ca3222 [gaim-migrate @ 7048]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
78
6540
eae61831e596 [gaim-migrate @ 7062]
Christian Hammond <chipx86@chipx86.com>
parents: 6531
diff changeset
79 void
eae61831e596 [gaim-migrate @ 7062]
Christian Hammond <chipx86@chipx86.com>
parents: 6531
diff changeset
80 groups()
eae61831e596 [gaim-migrate @ 7062]
Christian Hammond <chipx86@chipx86.com>
parents: 6531
diff changeset
81 PREINIT:
eae61831e596 [gaim-migrate @ 7062]
Christian Hammond <chipx86@chipx86.com>
parents: 6531
diff changeset
82 GaimBlistNode *node;
eae61831e596 [gaim-migrate @ 7062]
Christian Hammond <chipx86@chipx86.com>
parents: 6531
diff changeset
83 CODE:
6543
4d45f1eb0a7b [gaim-migrate @ 7065]
Christian Hammond <chipx86@chipx86.com>
parents: 6542
diff changeset
84 if (gaim_get_blist() != NULL)
6540
eae61831e596 [gaim-migrate @ 7062]
Christian Hammond <chipx86@chipx86.com>
parents: 6531
diff changeset
85 {
6543
4d45f1eb0a7b [gaim-migrate @ 7065]
Christian Hammond <chipx86@chipx86.com>
parents: 6542
diff changeset
86 for (node = gaim_get_blist()->root; node != NULL; node = node->next)
4d45f1eb0a7b [gaim-migrate @ 7065]
Christian Hammond <chipx86@chipx86.com>
parents: 6542
diff changeset
87 {
4d45f1eb0a7b [gaim-migrate @ 7065]
Christian Hammond <chipx86@chipx86.com>
parents: 6542
diff changeset
88 XPUSHs(sv_2mortal(gaim_perl_bless_object(node,
4d45f1eb0a7b [gaim-migrate @ 7065]
Christian Hammond <chipx86@chipx86.com>
parents: 6542
diff changeset
89 "Gaim::BuddyList::Group")));
4d45f1eb0a7b [gaim-migrate @ 7065]
Christian Hammond <chipx86@chipx86.com>
parents: 6542
diff changeset
90 }
6540
eae61831e596 [gaim-migrate @ 7062]
Christian Hammond <chipx86@chipx86.com>
parents: 6531
diff changeset
91 }