annotate plugins/perl/common/Status.xs @ 13294:8cecf7929eb3

[gaim-migrate @ 15660] Sean apparently doesn't build with dbus. committer: Tailor Script <tailor@pidgin.im>
author Etan Reisner <pidgin@unreliablesource.net>
date Thu, 16 Feb 2006 01:41:52 +0000
parents 622110272ed9
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
11118
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
1 #include "module.h"
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
2
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
3 /* TODO
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
4
12819
622110272ed9 [gaim-migrate @ 15167]
Etan Reisner <pidgin@unreliablesource.net>
parents: 11589
diff changeset
5 void
11118
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
6 gaim_status_type_add_attrs(status_type, id, name, value, gaim_status_type_add_attrs)
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
7 Gaim::StatusType status_type
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
8 const char *id
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
9 const char *name
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
10 Gaim::Value value
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
11 ...
12819
622110272ed9 [gaim-migrate @ 15167]
Etan Reisner <pidgin@unreliablesource.net>
parents: 11589
diff changeset
12
11118
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
13 Gaim::StatusType
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
14 gaim_status_type_new_with_attrs(primitive, id, name, saveable, user_settable, independent, attr_id, attr_name, attr_value, gaim_status_type_new_with_attrs)
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
15 Gaim::StatusPrimitive primitive
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
16 const char *id
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
17 const char *name
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
18 gboolean saveable
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
19 gboolean user_settable
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
20 gboolean independent
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
21 const char *attr_id
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
22 const char *attr_name
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
23 Gaim::Value attr_value
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
24 ...
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
25
11290
b284c703d398 [gaim-migrate @ 13490]
John H. Kelm <johnkelm@gmail.com>
parents: 11262
diff changeset
26 */
b284c703d398 [gaim-migrate @ 13490]
John H. Kelm <johnkelm@gmail.com>
parents: 11262
diff changeset
27
11589
30947631262d [gaim-migrate @ 13859]
Nathan Walp <nwalp@pidgin.im>
parents: 11290
diff changeset
28 /* These break on faceprint's amd64 box
30947631262d [gaim-migrate @ 13859]
Nathan Walp <nwalp@pidgin.im>
parents: 11290
diff changeset
29 void
30947631262d [gaim-migrate @ 13859]
Nathan Walp <nwalp@pidgin.im>
parents: 11290
diff changeset
30 gaim_status_type_add_attrs_vargs(status_type, args)
30947631262d [gaim-migrate @ 13859]
Nathan Walp <nwalp@pidgin.im>
parents: 11290
diff changeset
31 Gaim::StatusType status_type
30947631262d [gaim-migrate @ 13859]
Nathan Walp <nwalp@pidgin.im>
parents: 11290
diff changeset
32 va_list args
30947631262d [gaim-migrate @ 13859]
Nathan Walp <nwalp@pidgin.im>
parents: 11290
diff changeset
33
30947631262d [gaim-migrate @ 13859]
Nathan Walp <nwalp@pidgin.im>
parents: 11290
diff changeset
34 void
30947631262d [gaim-migrate @ 13859]
Nathan Walp <nwalp@pidgin.im>
parents: 11290
diff changeset
35 gaim_status_set_active_with_attrs(status, active, args)
30947631262d [gaim-migrate @ 13859]
Nathan Walp <nwalp@pidgin.im>
parents: 11290
diff changeset
36 Gaim::Status status
30947631262d [gaim-migrate @ 13859]
Nathan Walp <nwalp@pidgin.im>
parents: 11290
diff changeset
37 gboolean active
30947631262d [gaim-migrate @ 13859]
Nathan Walp <nwalp@pidgin.im>
parents: 11290
diff changeset
38 va_list args
30947631262d [gaim-migrate @ 13859]
Nathan Walp <nwalp@pidgin.im>
parents: 11290
diff changeset
39
30947631262d [gaim-migrate @ 13859]
Nathan Walp <nwalp@pidgin.im>
parents: 11290
diff changeset
40 */
30947631262d [gaim-migrate @ 13859]
Nathan Walp <nwalp@pidgin.im>
parents: 11290
diff changeset
41
11290
b284c703d398 [gaim-migrate @ 13490]
John H. Kelm <johnkelm@gmail.com>
parents: 11262
diff changeset
42 MODULE = Gaim::Status PACKAGE = Gaim::Presence PREFIX = gaim_presence_
b284c703d398 [gaim-migrate @ 13490]
John H. Kelm <johnkelm@gmail.com>
parents: 11262
diff changeset
43 PROTOTYPES: ENABLE
b284c703d398 [gaim-migrate @ 13490]
John H. Kelm <johnkelm@gmail.com>
parents: 11262
diff changeset
44
12819
622110272ed9 [gaim-migrate @ 15167]
Etan Reisner <pidgin@unreliablesource.net>
parents: 11589
diff changeset
45 void
11118
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
46 gaim_presence_add_list(presence, source_list)
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
47 Gaim::Presence presence
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
48 SV *source_list
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
49 PREINIT:
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
50 GList *t_GL;
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
51 int i, t_len;
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
52 PPCODE:
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
53 t_GL = NULL;
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
54 t_len = av_len((AV *)SvRV(source_list));
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
55
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
56 for (i = 0; i < t_len; i++) {
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
57 STRLEN t_sl;
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
58 t_GL = g_list_append(t_GL, SvPV(*av_fetch((AV *)SvRV(source_list), i, 0), t_sl));
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
59 }
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
60 gaim_presence_add_list(presence, t_GL);
12819
622110272ed9 [gaim-migrate @ 15167]
Etan Reisner <pidgin@unreliablesource.net>
parents: 11589
diff changeset
61
622110272ed9 [gaim-migrate @ 15167]
Etan Reisner <pidgin@unreliablesource.net>
parents: 11589
diff changeset
62 void
11118
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
63 gaim_presence_add_status(presence, status)
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
64 Gaim::Presence presence
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
65 Gaim::Status status
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
66
12819
622110272ed9 [gaim-migrate @ 15167]
Etan Reisner <pidgin@unreliablesource.net>
parents: 11589
diff changeset
67 gint
11118
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
68 gaim_presence_compare(presence1, presence2)
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
69 Gaim::Presence presence1
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
70 Gaim::Presence presence2
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
71
12819
622110272ed9 [gaim-migrate @ 15167]
Etan Reisner <pidgin@unreliablesource.net>
parents: 11589
diff changeset
72 void
11118
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
73 gaim_presence_destroy(presence)
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
74 Gaim::Presence presence
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
75
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
76 Gaim::Account
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
77 gaim_presence_get_account(presence)
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
78 Gaim::Presence presence
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
79
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
80 Gaim::Status
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
81 gaim_presence_get_active_status(presence)
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
82 Gaim::Presence presence
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
83
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
84 void
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
85 gaim_presence_get_buddies(presence)
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
86 Gaim::Presence presence
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
87 PREINIT:
11130
3f3bc7f1b6bf [gaim-migrate @ 13186]
John H. Kelm <johnkelm@gmail.com>
parents: 11118
diff changeset
88 const GList *l;
11118
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
89 PPCODE:
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
90 for (l = gaim_presence_get_buddies(presence); l != NULL; l = l->next) {
12819
622110272ed9 [gaim-migrate @ 15167]
Etan Reisner <pidgin@unreliablesource.net>
parents: 11589
diff changeset
91 XPUSHs(sv_2mortal(gaim_perl_bless_object(l->data, "Gaim::BuddyList::Buddy")));
11118
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
92 }
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
93
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
94 const char *
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
95 gaim_presence_get_chat_user(presence)
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
96 Gaim::Presence presence
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
97
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
98 Gaim::PresenceContext
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
99 gaim_presence_get_context(presence)
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
100 Gaim::Presence presence
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
101
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
102 Gaim::Conversation
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
103 gaim_presence_get_conversation(presence)
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
104 Gaim::Presence presence
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
105
12819
622110272ed9 [gaim-migrate @ 15167]
Etan Reisner <pidgin@unreliablesource.net>
parents: 11589
diff changeset
106 time_t
11118
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
107 gaim_presence_get_idle_time(presence)
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
108 Gaim::Presence presence
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
109
12819
622110272ed9 [gaim-migrate @ 15167]
Etan Reisner <pidgin@unreliablesource.net>
parents: 11589
diff changeset
110 time_t
11118
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
111 gaim_presence_get_login_time(presence)
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
112 Gaim::Presence presence
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
113
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
114 Gaim::Status
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
115 gaim_presence_get_status(presence, status_id)
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
116 Gaim::Presence presence
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
117 const char *status_id
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
118
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
119 void
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
120 gaim_presence_get_statuses(presence)
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
121 Gaim::Presence presence
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
122 PREINIT:
11130
3f3bc7f1b6bf [gaim-migrate @ 13186]
John H. Kelm <johnkelm@gmail.com>
parents: 11118
diff changeset
123 const GList *l;
11118
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
124 PPCODE:
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
125 for (l = gaim_presence_get_statuses(presence); l != NULL; l = l->next) {
12819
622110272ed9 [gaim-migrate @ 15167]
Etan Reisner <pidgin@unreliablesource.net>
parents: 11589
diff changeset
126 XPUSHs(sv_2mortal(gaim_perl_bless_object(l->data, "Gaim::Status")));
11118
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
127 }
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
128
12819
622110272ed9 [gaim-migrate @ 15167]
Etan Reisner <pidgin@unreliablesource.net>
parents: 11589
diff changeset
129 gboolean
11118
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
130 gaim_presence_is_available(presence)
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
131 Gaim::Presence presence
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
132
12819
622110272ed9 [gaim-migrate @ 15167]
Etan Reisner <pidgin@unreliablesource.net>
parents: 11589
diff changeset
133 gboolean
11118
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
134 gaim_presence_is_idle(presence)
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
135 Gaim::Presence presence
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
136
12819
622110272ed9 [gaim-migrate @ 15167]
Etan Reisner <pidgin@unreliablesource.net>
parents: 11589
diff changeset
137 gboolean
11118
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
138 gaim_presence_is_online(presence)
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
139 Gaim::Presence presence
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
140
12819
622110272ed9 [gaim-migrate @ 15167]
Etan Reisner <pidgin@unreliablesource.net>
parents: 11589
diff changeset
141 gboolean
11118
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
142 gaim_presence_is_status_active(presence, status_id)
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
143 Gaim::Presence presence
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
144 const char *status_id
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
145
12819
622110272ed9 [gaim-migrate @ 15167]
Etan Reisner <pidgin@unreliablesource.net>
parents: 11589
diff changeset
146 gboolean
11118
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
147 gaim_presence_is_status_primitive_active(presence, primitive)
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
148 Gaim::Presence presence
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
149 Gaim::StatusPrimitive primitive
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
150
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
151 Gaim::Presence
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
152 gaim_presence_new(context)
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
153 Gaim::PresenceContext context
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
154
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
155 Gaim::Presence
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
156 gaim_presence_new_for_account(account)
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
157 Gaim::Account account
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
158
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
159 Gaim::Presence
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
160 gaim_presence_new_for_buddy(buddy)
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
161 Gaim::BuddyList::Buddy buddy
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
162
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
163 Gaim::Presence
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
164 gaim_presence_new_for_conv(conv)
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
165 Gaim::Conversation conv
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
166
12819
622110272ed9 [gaim-migrate @ 15167]
Etan Reisner <pidgin@unreliablesource.net>
parents: 11589
diff changeset
167 void
11118
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
168 gaim_presence_remove_buddy(presence, buddy)
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
169 Gaim::Presence presence
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
170 Gaim::BuddyList::Buddy buddy
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
171
12819
622110272ed9 [gaim-migrate @ 15167]
Etan Reisner <pidgin@unreliablesource.net>
parents: 11589
diff changeset
172 void
11118
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
173 gaim_presence_set_idle(presence, idle, idle_time)
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
174 Gaim::Presence presence
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
175 gboolean idle
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
176 time_t idle_time
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
177
12819
622110272ed9 [gaim-migrate @ 15167]
Etan Reisner <pidgin@unreliablesource.net>
parents: 11589
diff changeset
178 void
11118
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
179 gaim_presence_set_login_time(presence, login_time)
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
180 Gaim::Presence presence
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
181 time_t login_time
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
182
12819
622110272ed9 [gaim-migrate @ 15167]
Etan Reisner <pidgin@unreliablesource.net>
parents: 11589
diff changeset
183 void
11118
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
184 gaim_presence_set_status_active(presence, status_id, active)
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
185 Gaim::Presence presence
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
186 const char *status_id
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
187 gboolean active
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
188
12819
622110272ed9 [gaim-migrate @ 15167]
Etan Reisner <pidgin@unreliablesource.net>
parents: 11589
diff changeset
189 void
11118
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
190 gaim_presence_switch_status(presence, status_id)
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
191 Gaim::Presence presence
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
192 const char *status_id
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
193
12819
622110272ed9 [gaim-migrate @ 15167]
Etan Reisner <pidgin@unreliablesource.net>
parents: 11589
diff changeset
194 MODULE = Gaim::Status PACKAGE = Gaim::Primitive PREFIX = gaim_primitive_
622110272ed9 [gaim-migrate @ 15167]
Etan Reisner <pidgin@unreliablesource.net>
parents: 11589
diff changeset
195 PROTOTYPES: ENABLE
622110272ed9 [gaim-migrate @ 15167]
Etan Reisner <pidgin@unreliablesource.net>
parents: 11589
diff changeset
196
11118
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
197 const char *
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
198 gaim_primitive_get_id_from_type(type)
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
199 Gaim::StatusPrimitive type
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
200
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
201 const char *
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
202 gaim_primitive_get_name_from_type(type)
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
203 Gaim::StatusPrimitive type
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
204
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
205 Gaim::StatusPrimitive
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
206 gaim_primitive_get_type_from_id(id)
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
207 const char *id
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
208
12819
622110272ed9 [gaim-migrate @ 15167]
Etan Reisner <pidgin@unreliablesource.net>
parents: 11589
diff changeset
209 MODULE = Gaim::Status PACKAGE = Gaim::StatusAttr PREFIX = gaim_status_attr_
11118
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
210 PROTOTYPES: ENABLE
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
211
12819
622110272ed9 [gaim-migrate @ 15167]
Etan Reisner <pidgin@unreliablesource.net>
parents: 11589
diff changeset
212 void
11118
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
213 gaim_status_attr_destroy(attr)
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
214 Gaim::StatusAttr attr
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
215
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
216 const char *
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
217 gaim_status_attr_get_id(attr)
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
218 Gaim::StatusAttr attr
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
219
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
220 const char *
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
221 gaim_status_attr_get_name(attr)
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
222 Gaim::StatusAttr attr
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
223
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
224 Gaim::Value
11249
b4b1be482b4e [gaim-migrate @ 13418]
Mark Doliner <mark@kingant.net>
parents: 11170
diff changeset
225 gaim_status_attr_get_value(attr)
11118
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
226 Gaim::StatusAttr attr
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
227
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
228 Gaim::StatusAttr
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
229 gaim_status_attr_new(id, name, value_type)
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
230 const char *id
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
231 const char *name
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
232 Gaim::Value value_type
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
233
12819
622110272ed9 [gaim-migrate @ 15167]
Etan Reisner <pidgin@unreliablesource.net>
parents: 11589
diff changeset
234 MODULE = Gaim::Status PACKAGE = Gaim::Status PREFIX = gaim_status_
622110272ed9 [gaim-migrate @ 15167]
Etan Reisner <pidgin@unreliablesource.net>
parents: 11589
diff changeset
235 PROTOTYPES: ENABLE
622110272ed9 [gaim-migrate @ 15167]
Etan Reisner <pidgin@unreliablesource.net>
parents: 11589
diff changeset
236
622110272ed9 [gaim-migrate @ 15167]
Etan Reisner <pidgin@unreliablesource.net>
parents: 11589
diff changeset
237 gint
11118
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
238 gaim_status_compare(status1, status2)
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
239 Gaim::Status status1
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
240 Gaim::Status status2
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
241
12819
622110272ed9 [gaim-migrate @ 15167]
Etan Reisner <pidgin@unreliablesource.net>
parents: 11589
diff changeset
242 void
11118
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
243 gaim_status_destroy(status)
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
244 Gaim::Status status
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
245
12819
622110272ed9 [gaim-migrate @ 15167]
Etan Reisner <pidgin@unreliablesource.net>
parents: 11589
diff changeset
246 gboolean
11118
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
247 gaim_status_get_attr_boolean(status, id)
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
248 Gaim::Status status
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
249 const char *id
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
250
12819
622110272ed9 [gaim-migrate @ 15167]
Etan Reisner <pidgin@unreliablesource.net>
parents: 11589
diff changeset
251 int
11118
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
252 gaim_status_get_attr_int(status, id)
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
253 Gaim::Status status
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
254 const char *id
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
255
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
256 const char *
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
257 gaim_status_get_attr_string(status, id)
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
258 Gaim::Status status
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
259 const char *id
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
260
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
261 Gaim::Value
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
262 gaim_status_get_attr_value(status, id)
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
263 Gaim::Status status
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
264 const char *id
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
265
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
266 void *
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
267 gaim_status_get_handle()
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
268
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
269 const char *
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
270 gaim_status_get_id(status)
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
271 Gaim::Status status
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
272
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
273 const char *
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
274 gaim_status_get_name(status)
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
275 Gaim::Status status
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
276
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
277 Gaim::Presence
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
278 gaim_status_get_presence(status)
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
279 Gaim::Status status
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
280
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
281 Gaim::StatusType
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
282 gaim_status_get_type(status)
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
283 Gaim::Status status
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
284
12819
622110272ed9 [gaim-migrate @ 15167]
Etan Reisner <pidgin@unreliablesource.net>
parents: 11589
diff changeset
285 gboolean
11118
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
286 gaim_status_is_active(status)
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
287 Gaim::Status status
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
288
12819
622110272ed9 [gaim-migrate @ 15167]
Etan Reisner <pidgin@unreliablesource.net>
parents: 11589
diff changeset
289 gboolean
11118
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
290 gaim_status_is_available(status)
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
291 Gaim::Status status
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
292
12819
622110272ed9 [gaim-migrate @ 15167]
Etan Reisner <pidgin@unreliablesource.net>
parents: 11589
diff changeset
293 gboolean
11118
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
294 gaim_status_is_exclusive(status)
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
295 Gaim::Status status
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
296
12819
622110272ed9 [gaim-migrate @ 15167]
Etan Reisner <pidgin@unreliablesource.net>
parents: 11589
diff changeset
297 gboolean
11118
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
298 gaim_status_is_independent(status)
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
299 Gaim::Status status
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
300
12819
622110272ed9 [gaim-migrate @ 15167]
Etan Reisner <pidgin@unreliablesource.net>
parents: 11589
diff changeset
301 gboolean
11118
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
302 gaim_status_is_online(status)
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
303 Gaim::Status status
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
304
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
305 Gaim::Status
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
306 gaim_status_new(status_type, presence)
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
307 Gaim::StatusType status_type
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
308 Gaim::Presence presence
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
309
12819
622110272ed9 [gaim-migrate @ 15167]
Etan Reisner <pidgin@unreliablesource.net>
parents: 11589
diff changeset
310 void
11118
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
311 gaim_status_set_active(status, active)
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
312 Gaim::Status status
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
313 gboolean active
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
314
12819
622110272ed9 [gaim-migrate @ 15167]
Etan Reisner <pidgin@unreliablesource.net>
parents: 11589
diff changeset
315 void
11118
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
316 gaim_status_set_attr_boolean(status, id, value)
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
317 Gaim::Status status
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
318 const char *id
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
319 gboolean value
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
320
12819
622110272ed9 [gaim-migrate @ 15167]
Etan Reisner <pidgin@unreliablesource.net>
parents: 11589
diff changeset
321 void
11118
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
322 gaim_status_set_attr_string(status, id, value)
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
323 Gaim::Status status
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
324 const char *id
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
325 const char *value
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
326
12819
622110272ed9 [gaim-migrate @ 15167]
Etan Reisner <pidgin@unreliablesource.net>
parents: 11589
diff changeset
327 void
622110272ed9 [gaim-migrate @ 15167]
Etan Reisner <pidgin@unreliablesource.net>
parents: 11589
diff changeset
328 gaim_status_init()
622110272ed9 [gaim-migrate @ 15167]
Etan Reisner <pidgin@unreliablesource.net>
parents: 11589
diff changeset
329
622110272ed9 [gaim-migrate @ 15167]
Etan Reisner <pidgin@unreliablesource.net>
parents: 11589
diff changeset
330 void
622110272ed9 [gaim-migrate @ 15167]
Etan Reisner <pidgin@unreliablesource.net>
parents: 11589
diff changeset
331 gaim_status_uninit()
622110272ed9 [gaim-migrate @ 15167]
Etan Reisner <pidgin@unreliablesource.net>
parents: 11589
diff changeset
332
622110272ed9 [gaim-migrate @ 15167]
Etan Reisner <pidgin@unreliablesource.net>
parents: 11589
diff changeset
333 MODULE = Gaim::Status PACKAGE = Gaim::StatusType PREFIX = gaim_status_type_
622110272ed9 [gaim-migrate @ 15167]
Etan Reisner <pidgin@unreliablesource.net>
parents: 11589
diff changeset
334 PROTOTYPES: ENABLE
622110272ed9 [gaim-migrate @ 15167]
Etan Reisner <pidgin@unreliablesource.net>
parents: 11589
diff changeset
335
622110272ed9 [gaim-migrate @ 15167]
Etan Reisner <pidgin@unreliablesource.net>
parents: 11589
diff changeset
336 void
11118
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
337 gaim_status_type_add_attr(status_type, id, name, value)
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
338 Gaim::StatusType status_type
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
339 const char *id
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
340 const char *name
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
341 Gaim::Value value
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
342
12819
622110272ed9 [gaim-migrate @ 15167]
Etan Reisner <pidgin@unreliablesource.net>
parents: 11589
diff changeset
343 void
11118
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
344 gaim_status_type_destroy(status_type)
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
345 Gaim::StatusType status_type
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
346
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
347 Gaim::StatusType
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
348 gaim_status_type_find_with_id(status_types, id)
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
349 SV *status_types
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
350 const char *id
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
351 PREINIT:
12819
622110272ed9 [gaim-migrate @ 15167]
Etan Reisner <pidgin@unreliablesource.net>
parents: 11589
diff changeset
352 /* XXX Check that this function actually works, I think it might need a */
622110272ed9 [gaim-migrate @ 15167]
Etan Reisner <pidgin@unreliablesource.net>
parents: 11589
diff changeset
353 /* status_type as it's first argument to work as $status_type->find_with_id */
622110272ed9 [gaim-migrate @ 15167]
Etan Reisner <pidgin@unreliablesource.net>
parents: 11589
diff changeset
354 /* properly. */
11118
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
355 GList *t_GL;
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
356 int i, t_len;
11131
ece127d56c14 [gaim-migrate @ 13187]
John H. Kelm <johnkelm@gmail.com>
parents: 11130
diff changeset
357 CODE:
11118
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
358 t_GL = NULL;
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
359 t_len = av_len((AV *)SvRV(status_types));
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
360
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
361 for (i = 0; i < t_len; i++) {
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
362 STRLEN t_sl;
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
363 t_GL = g_list_append(t_GL, SvPV(*av_fetch((AV *)SvRV(status_types), i, 0), t_sl));
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
364 }
11170
0e9e2b923d09 [gaim-migrate @ 13271]
John H. Kelm <johnkelm@gmail.com>
parents: 11131
diff changeset
365 RETVAL = (GaimStatusType *)gaim_status_type_find_with_id(t_GL, id);
0e9e2b923d09 [gaim-migrate @ 13271]
John H. Kelm <johnkelm@gmail.com>
parents: 11131
diff changeset
366 OUTPUT:
0e9e2b923d09 [gaim-migrate @ 13271]
John H. Kelm <johnkelm@gmail.com>
parents: 11131
diff changeset
367 RETVAL
12819
622110272ed9 [gaim-migrate @ 15167]
Etan Reisner <pidgin@unreliablesource.net>
parents: 11589
diff changeset
368
11118
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
369 Gaim::StatusAttr
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
370 gaim_status_type_get_attr(status_type, id)
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
371 Gaim::StatusType status_type
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
372 const char *id
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
373
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
374 void
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
375 gaim_status_type_get_attrs(status_type)
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
376 Gaim::StatusType status_type
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
377 PREINIT:
11130
3f3bc7f1b6bf [gaim-migrate @ 13186]
John H. Kelm <johnkelm@gmail.com>
parents: 11118
diff changeset
378 const GList *l;
11118
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
379 PPCODE:
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
380 for (l = gaim_status_type_get_attrs(status_type); l != NULL; l = l->next) {
12819
622110272ed9 [gaim-migrate @ 15167]
Etan Reisner <pidgin@unreliablesource.net>
parents: 11589
diff changeset
381 XPUSHs(sv_2mortal(gaim_perl_bless_object(l->data, "Gaim::StatusAttr")));
11118
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
382 }
12819
622110272ed9 [gaim-migrate @ 15167]
Etan Reisner <pidgin@unreliablesource.net>
parents: 11589
diff changeset
383
11118
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
384 const char *
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
385 gaim_status_type_get_id(status_type)
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
386 Gaim::StatusType status_type
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
387
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
388 const char *
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
389 gaim_status_type_get_name(status_type)
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
390 Gaim::StatusType status_type
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
391
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
392 const char *
12819
622110272ed9 [gaim-migrate @ 15167]
Etan Reisner <pidgin@unreliablesource.net>
parents: 11589
diff changeset
393 gaim_status_type_get_primary_attr(status_type)
622110272ed9 [gaim-migrate @ 15167]
Etan Reisner <pidgin@unreliablesource.net>
parents: 11589
diff changeset
394 Gaim::StatusType status_type
11118
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
395
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
396 Gaim::StatusPrimitive
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
397 gaim_status_type_get_primitive(status_type)
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
398 Gaim::StatusType status_type
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
399
12819
622110272ed9 [gaim-migrate @ 15167]
Etan Reisner <pidgin@unreliablesource.net>
parents: 11589
diff changeset
400 gboolean
11118
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
401 gaim_status_type_is_available(status_type)
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
402 Gaim::StatusType status_type
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
403
12819
622110272ed9 [gaim-migrate @ 15167]
Etan Reisner <pidgin@unreliablesource.net>
parents: 11589
diff changeset
404 gboolean
11118
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
405 gaim_status_type_is_exclusive(status_type)
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
406 Gaim::StatusType status_type
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
407
12819
622110272ed9 [gaim-migrate @ 15167]
Etan Reisner <pidgin@unreliablesource.net>
parents: 11589
diff changeset
408 gboolean
11118
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
409 gaim_status_type_is_independent(status_type)
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
410 Gaim::StatusType status_type
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
411
12819
622110272ed9 [gaim-migrate @ 15167]
Etan Reisner <pidgin@unreliablesource.net>
parents: 11589
diff changeset
412 gboolean
11118
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
413 gaim_status_type_is_saveable(status_type)
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
414 Gaim::StatusType status_type
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
415
12819
622110272ed9 [gaim-migrate @ 15167]
Etan Reisner <pidgin@unreliablesource.net>
parents: 11589
diff changeset
416 gboolean
11118
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
417 gaim_status_type_is_user_settable(status_type)
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
418 Gaim::StatusType status_type
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
419
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
420 Gaim::StatusType
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
421 gaim_status_type_new(primitive, id, name, user_settable)
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
422 Gaim::StatusPrimitive primitive
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
423 const char *id
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
424 const char *name
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
425 gboolean user_settable
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
426
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
427 Gaim::StatusType
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
428 gaim_status_type_new_full(primitive, id, name, saveable, user_settable, independent)
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
429 Gaim::StatusPrimitive primitive
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
430 const char *id
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
431 const char *name
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
432 gboolean saveable
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
433 gboolean user_settable
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
434 gboolean independent
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
435
12819
622110272ed9 [gaim-migrate @ 15167]
Etan Reisner <pidgin@unreliablesource.net>
parents: 11589
diff changeset
436 void
11118
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
437 gaim_status_type_set_primary_attr(status_type, attr_id)
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
438 Gaim::StatusType status_type
134d0001983d [gaim-migrate @ 13174]
John H. Kelm <johnkelm@gmail.com>
parents:
diff changeset
439 const char *attr_id