libpurple/privacy.h

Wed, 13 May 2009 20:29:03 +0000

author
Marcus Lundblad <malu@pidgin.im>
date
Wed, 13 May 2009 20:29:03 +0000
changeset 27110
05ca719b901b
parent 25888
d0fdd378a635
child 27793
4b1ecaad64e2
permissions
-rw-r--r--

Support custom smileys in MUCs (when all participants support BoB and a maximum
of 10 participants are in the chat).
Always announce support for BoB, since disable custom smileys will still turn
off fetching them, and BoB can be used for other purposes further on.

6371
e92b66ee5518 [gaim-migrate @ 6876]
Christian Hammond <chipx86@chipx86.com>
parents: 5944
diff changeset
1 /**
e92b66ee5518 [gaim-migrate @ 6876]
Christian Hammond <chipx86@chipx86.com>
parents: 5944
diff changeset
2 * @file privacy.h Privacy API
e92b66ee5518 [gaim-migrate @ 6876]
Christian Hammond <chipx86@chipx86.com>
parents: 5944
diff changeset
3 * @ingroup core
20147
66f05a854eee applied changes from 8a731bbd0197fbcc91a705c2d8f528154216defa
Richard Laager <rlaager@pidgin.im>
parents: 19859
diff changeset
4 */
66f05a854eee applied changes from 8a731bbd0197fbcc91a705c2d8f528154216defa
Richard Laager <rlaager@pidgin.im>
parents: 19859
diff changeset
5
66f05a854eee applied changes from 8a731bbd0197fbcc91a705c2d8f528154216defa
Richard Laager <rlaager@pidgin.im>
parents: 19859
diff changeset
6 /* purple
4687
91ad36873636 [gaim-migrate @ 4998]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
7 *
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
8 * Purple is the legal property of its developers, whose names are too numerous
8046
c581b20a47d6 [gaim-migrate @ 8730]
Sean Egan <seanegan@pidgin.im>
parents: 7035
diff changeset
9 * to list here. Please refer to the COPYRIGHT file distributed with this
c581b20a47d6 [gaim-migrate @ 8730]
Sean Egan <seanegan@pidgin.im>
parents: 7035
diff changeset
10 * source distribution.
8307
8663aff7b973 [gaim-migrate @ 9031]
Christian Hammond <chipx86@chipx86.com>
parents: 8175
diff changeset
11 *
4687
91ad36873636 [gaim-migrate @ 4998]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
12 * This program is free software; you can redistribute it and/or modify
91ad36873636 [gaim-migrate @ 4998]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
13 * it under the terms of the GNU General Public License as published by
91ad36873636 [gaim-migrate @ 4998]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
14 * the Free Software Foundation; either version 2 of the License, or
91ad36873636 [gaim-migrate @ 4998]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
15 * (at your option) any later version.
91ad36873636 [gaim-migrate @ 4998]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
16 *
91ad36873636 [gaim-migrate @ 4998]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
17 * This program is distributed in the hope that it will be useful,
91ad36873636 [gaim-migrate @ 4998]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
18 * but WITHOUT ANY WARRANTY; without even the implied warranty of
91ad36873636 [gaim-migrate @ 4998]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
19 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
91ad36873636 [gaim-migrate @ 4998]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
20 * GNU General Public License for more details.
91ad36873636 [gaim-migrate @ 4998]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
21 *
91ad36873636 [gaim-migrate @ 4998]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
22 * You should have received a copy of the GNU General Public License
91ad36873636 [gaim-migrate @ 4998]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
23 * along with this program; if not, write to the Free Software
19859
71d37b57eff2 The FSF changed its address a while ago; our files were out of date.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 16743
diff changeset
24 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA
4687
91ad36873636 [gaim-migrate @ 4998]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
25 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
26 #ifndef _PURPLE_PRIVACY_H_
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
27 #define _PURPLE_PRIVACY_H_
5944
f19df037ac58 [gaim-migrate @ 6385]
Christian Hammond <chipx86@chipx86.com>
parents: 5872
diff changeset
28
6371
e92b66ee5518 [gaim-migrate @ 6876]
Christian Hammond <chipx86@chipx86.com>
parents: 5944
diff changeset
29 #include "account.h"
e92b66ee5518 [gaim-migrate @ 6876]
Christian Hammond <chipx86@chipx86.com>
parents: 5944
diff changeset
30
8175
4e79974d452c [gaim-migrate @ 8889]
Mark Doliner <markdoliner@pidgin.im>
parents: 8046
diff changeset
31 /**
4e79974d452c [gaim-migrate @ 8889]
Mark Doliner <markdoliner@pidgin.im>
parents: 8046
diff changeset
32 * Privacy data types.
4e79974d452c [gaim-migrate @ 8889]
Mark Doliner <markdoliner@pidgin.im>
parents: 8046
diff changeset
33 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
34 typedef enum _PurplePrivacyType
8175
4e79974d452c [gaim-migrate @ 8889]
Mark Doliner <markdoliner@pidgin.im>
parents: 8046
diff changeset
35 {
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
36 PURPLE_PRIVACY_ALLOW_ALL = 1,
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
37 PURPLE_PRIVACY_DENY_ALL,
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
38 PURPLE_PRIVACY_ALLOW_USERS,
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
39 PURPLE_PRIVACY_DENY_USERS,
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
40 PURPLE_PRIVACY_ALLOW_BUDDYLIST
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
41 } PurplePrivacyType;
8175
4e79974d452c [gaim-migrate @ 8889]
Mark Doliner <markdoliner@pidgin.im>
parents: 8046
diff changeset
42
5944
f19df037ac58 [gaim-migrate @ 6385]
Christian Hammond <chipx86@chipx86.com>
parents: 5872
diff changeset
43 #ifdef __cplusplus
f19df037ac58 [gaim-migrate @ 6385]
Christian Hammond <chipx86@chipx86.com>
parents: 5872
diff changeset
44 extern "C" {
f19df037ac58 [gaim-migrate @ 6385]
Christian Hammond <chipx86@chipx86.com>
parents: 5872
diff changeset
45 #endif
4687
91ad36873636 [gaim-migrate @ 4998]
Sean Egan <seanegan@pidgin.im>
parents:
diff changeset
46
6371
e92b66ee5518 [gaim-migrate @ 6876]
Christian Hammond <chipx86@chipx86.com>
parents: 5944
diff changeset
47 /**
e92b66ee5518 [gaim-migrate @ 6876]
Christian Hammond <chipx86@chipx86.com>
parents: 5944
diff changeset
48 * Privacy core/UI operations.
e92b66ee5518 [gaim-migrate @ 6876]
Christian Hammond <chipx86@chipx86.com>
parents: 5944
diff changeset
49 */
e92b66ee5518 [gaim-migrate @ 6876]
Christian Hammond <chipx86@chipx86.com>
parents: 5944
diff changeset
50 typedef struct
e92b66ee5518 [gaim-migrate @ 6876]
Christian Hammond <chipx86@chipx86.com>
parents: 5944
diff changeset
51 {
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
52 void (*permit_added)(PurpleAccount *account, const char *name);
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
53 void (*permit_removed)(PurpleAccount *account, const char *name);
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
54 void (*deny_added)(PurpleAccount *account, const char *name);
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
55 void (*deny_removed)(PurpleAccount *account, const char *name);
6371
e92b66ee5518 [gaim-migrate @ 6876]
Christian Hammond <chipx86@chipx86.com>
parents: 5944
diff changeset
56
16743
1ce5ffe12e2a Initial addition of padding for ui_ops and other class-like structs
Gary Kramlich <grim@reaperworld.com>
parents: 15884
diff changeset
57 void (*_purple_reserved1)(void);
1ce5ffe12e2a Initial addition of padding for ui_ops and other class-like structs
Gary Kramlich <grim@reaperworld.com>
parents: 15884
diff changeset
58 void (*_purple_reserved2)(void);
1ce5ffe12e2a Initial addition of padding for ui_ops and other class-like structs
Gary Kramlich <grim@reaperworld.com>
parents: 15884
diff changeset
59 void (*_purple_reserved3)(void);
1ce5ffe12e2a Initial addition of padding for ui_ops and other class-like structs
Gary Kramlich <grim@reaperworld.com>
parents: 15884
diff changeset
60 void (*_purple_reserved4)(void);
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
61 } PurplePrivacyUiOps;
6371
e92b66ee5518 [gaim-migrate @ 6876]
Christian Hammond <chipx86@chipx86.com>
parents: 5944
diff changeset
62
e92b66ee5518 [gaim-migrate @ 6876]
Christian Hammond <chipx86@chipx86.com>
parents: 5944
diff changeset
63 /**
e92b66ee5518 [gaim-migrate @ 6876]
Christian Hammond <chipx86@chipx86.com>
parents: 5944
diff changeset
64 * Adds a user to the account's permit list.
e92b66ee5518 [gaim-migrate @ 6876]
Christian Hammond <chipx86@chipx86.com>
parents: 5944
diff changeset
65 *
6378
233d1294508f [gaim-migrate @ 6883]
Christian Hammond <chipx86@chipx86.com>
parents: 6371
diff changeset
66 * @param account The account.
6720
cdc5348dd848 [gaim-migrate @ 7247]
Christian Hammond <chipx86@chipx86.com>
parents: 6379
diff changeset
67 * @param name The name of the user to add to the list.
6378
233d1294508f [gaim-migrate @ 6883]
Christian Hammond <chipx86@chipx86.com>
parents: 6371
diff changeset
68 * @param local_only If TRUE, only the local list is updated, and not
233d1294508f [gaim-migrate @ 6883]
Christian Hammond <chipx86@chipx86.com>
parents: 6371
diff changeset
69 * the server.
6371
e92b66ee5518 [gaim-migrate @ 6876]
Christian Hammond <chipx86@chipx86.com>
parents: 5944
diff changeset
70 *
e92b66ee5518 [gaim-migrate @ 6876]
Christian Hammond <chipx86@chipx86.com>
parents: 5944
diff changeset
71 * @return TRUE if the user was added successfully, or @c FALSE otherwise.
e92b66ee5518 [gaim-migrate @ 6876]
Christian Hammond <chipx86@chipx86.com>
parents: 5944
diff changeset
72 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
73 gboolean purple_privacy_permit_add(PurpleAccount *account, const char *name,
6378
233d1294508f [gaim-migrate @ 6883]
Christian Hammond <chipx86@chipx86.com>
parents: 6371
diff changeset
74 gboolean local_only);
6371
e92b66ee5518 [gaim-migrate @ 6876]
Christian Hammond <chipx86@chipx86.com>
parents: 5944
diff changeset
75
e92b66ee5518 [gaim-migrate @ 6876]
Christian Hammond <chipx86@chipx86.com>
parents: 5944
diff changeset
76 /**
e92b66ee5518 [gaim-migrate @ 6876]
Christian Hammond <chipx86@chipx86.com>
parents: 5944
diff changeset
77 * Removes a user from the account's permit list.
e92b66ee5518 [gaim-migrate @ 6876]
Christian Hammond <chipx86@chipx86.com>
parents: 5944
diff changeset
78 *
6378
233d1294508f [gaim-migrate @ 6883]
Christian Hammond <chipx86@chipx86.com>
parents: 6371
diff changeset
79 * @param account The account.
6720
cdc5348dd848 [gaim-migrate @ 7247]
Christian Hammond <chipx86@chipx86.com>
parents: 6379
diff changeset
80 * @param name The name of the user to add to the list.
6378
233d1294508f [gaim-migrate @ 6883]
Christian Hammond <chipx86@chipx86.com>
parents: 6371
diff changeset
81 * @param local_only If TRUE, only the local list is updated, and not
233d1294508f [gaim-migrate @ 6883]
Christian Hammond <chipx86@chipx86.com>
parents: 6371
diff changeset
82 * the server.
6371
e92b66ee5518 [gaim-migrate @ 6876]
Christian Hammond <chipx86@chipx86.com>
parents: 5944
diff changeset
83 *
e92b66ee5518 [gaim-migrate @ 6876]
Christian Hammond <chipx86@chipx86.com>
parents: 5944
diff changeset
84 * @return TRUE if the user was removed successfully, or @c FALSE otherwise.
e92b66ee5518 [gaim-migrate @ 6876]
Christian Hammond <chipx86@chipx86.com>
parents: 5944
diff changeset
85 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
86 gboolean purple_privacy_permit_remove(PurpleAccount *account, const char *name,
6379
60e805354d1e [gaim-migrate @ 6884]
Christian Hammond <chipx86@chipx86.com>
parents: 6378
diff changeset
87 gboolean local_only);
6371
e92b66ee5518 [gaim-migrate @ 6876]
Christian Hammond <chipx86@chipx86.com>
parents: 5944
diff changeset
88
e92b66ee5518 [gaim-migrate @ 6876]
Christian Hammond <chipx86@chipx86.com>
parents: 5944
diff changeset
89 /**
e92b66ee5518 [gaim-migrate @ 6876]
Christian Hammond <chipx86@chipx86.com>
parents: 5944
diff changeset
90 * Adds a user to the account's deny list.
e92b66ee5518 [gaim-migrate @ 6876]
Christian Hammond <chipx86@chipx86.com>
parents: 5944
diff changeset
91 *
6378
233d1294508f [gaim-migrate @ 6883]
Christian Hammond <chipx86@chipx86.com>
parents: 6371
diff changeset
92 * @param account The account.
6720
cdc5348dd848 [gaim-migrate @ 7247]
Christian Hammond <chipx86@chipx86.com>
parents: 6379
diff changeset
93 * @param name The name of the user to add to the list.
6378
233d1294508f [gaim-migrate @ 6883]
Christian Hammond <chipx86@chipx86.com>
parents: 6371
diff changeset
94 * @param local_only If TRUE, only the local list is updated, and not
233d1294508f [gaim-migrate @ 6883]
Christian Hammond <chipx86@chipx86.com>
parents: 6371
diff changeset
95 * the server.
6371
e92b66ee5518 [gaim-migrate @ 6876]
Christian Hammond <chipx86@chipx86.com>
parents: 5944
diff changeset
96 *
e92b66ee5518 [gaim-migrate @ 6876]
Christian Hammond <chipx86@chipx86.com>
parents: 5944
diff changeset
97 * @return TRUE if the user was added successfully, or @c FALSE otherwise.
e92b66ee5518 [gaim-migrate @ 6876]
Christian Hammond <chipx86@chipx86.com>
parents: 5944
diff changeset
98 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
99 gboolean purple_privacy_deny_add(PurpleAccount *account, const char *name,
6379
60e805354d1e [gaim-migrate @ 6884]
Christian Hammond <chipx86@chipx86.com>
parents: 6378
diff changeset
100 gboolean local_only);
6371
e92b66ee5518 [gaim-migrate @ 6876]
Christian Hammond <chipx86@chipx86.com>
parents: 5944
diff changeset
101
e92b66ee5518 [gaim-migrate @ 6876]
Christian Hammond <chipx86@chipx86.com>
parents: 5944
diff changeset
102 /**
e92b66ee5518 [gaim-migrate @ 6876]
Christian Hammond <chipx86@chipx86.com>
parents: 5944
diff changeset
103 * Removes a user from the account's deny list.
e92b66ee5518 [gaim-migrate @ 6876]
Christian Hammond <chipx86@chipx86.com>
parents: 5944
diff changeset
104 *
6378
233d1294508f [gaim-migrate @ 6883]
Christian Hammond <chipx86@chipx86.com>
parents: 6371
diff changeset
105 * @param account The account.
6720
cdc5348dd848 [gaim-migrate @ 7247]
Christian Hammond <chipx86@chipx86.com>
parents: 6379
diff changeset
106 * @param name The name of the user to add to the list.
6378
233d1294508f [gaim-migrate @ 6883]
Christian Hammond <chipx86@chipx86.com>
parents: 6371
diff changeset
107 * @param local_only If TRUE, only the local list is updated, and not
233d1294508f [gaim-migrate @ 6883]
Christian Hammond <chipx86@chipx86.com>
parents: 6371
diff changeset
108 * the server.
6371
e92b66ee5518 [gaim-migrate @ 6876]
Christian Hammond <chipx86@chipx86.com>
parents: 5944
diff changeset
109 *
e92b66ee5518 [gaim-migrate @ 6876]
Christian Hammond <chipx86@chipx86.com>
parents: 5944
diff changeset
110 * @return TRUE if the user was removed successfully, or @c FALSE otherwise.
e92b66ee5518 [gaim-migrate @ 6876]
Christian Hammond <chipx86@chipx86.com>
parents: 5944
diff changeset
111 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
112 gboolean purple_privacy_deny_remove(PurpleAccount *account, const char *name,
6379
60e805354d1e [gaim-migrate @ 6884]
Christian Hammond <chipx86@chipx86.com>
parents: 6378
diff changeset
113 gboolean local_only);
6371
e92b66ee5518 [gaim-migrate @ 6876]
Christian Hammond <chipx86@chipx86.com>
parents: 5944
diff changeset
114
15380
1171796358b3 [gaim-migrate @ 18109]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14254
diff changeset
115 /**
1171796358b3 [gaim-migrate @ 18109]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14254
diff changeset
116 * Allow a user to send messages. If current privacy setting for the account is:
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
117 * PURPLE_PRIVACY_ALLOW_USERS: The user is added to the allow-list.
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
118 * PURPLE_PRIVACY_DENY_USERS : The user is removed from the deny-list.
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
119 * PURPLE_PRIVACY_ALLOW_ALL : No changes made.
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
120 * PURPLE_PRIVACY_DENY_ALL : The privacy setting is changed to
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
121 * PURPLE_PRIVACY_ALLOW_USERS and the user
15380
1171796358b3 [gaim-migrate @ 18109]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14254
diff changeset
122 * is added to the allow-list.
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
123 * PURPLE_PRIVACY_ALLOW_BUDDYLIST: No changes made if the user is already in
15380
1171796358b3 [gaim-migrate @ 18109]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14254
diff changeset
124 * the buddy-list. Otherwise the setting is
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
125 * changed to PURPLE_PRIVACY_ALLOW_USERS, all the
15380
1171796358b3 [gaim-migrate @ 18109]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14254
diff changeset
126 * buddies are added to the allow-list, and the
1171796358b3 [gaim-migrate @ 18109]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14254
diff changeset
127 * user is also added to the allow-list.
25888
d0fdd378a635 Remove trailing whitespace
Mark Doliner <markdoliner@pidgin.im>
parents: 20147
diff changeset
128 *
15380
1171796358b3 [gaim-migrate @ 18109]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14254
diff changeset
129 * @param account The account.
1171796358b3 [gaim-migrate @ 18109]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14254
diff changeset
130 * @param who The name of the user.
1171796358b3 [gaim-migrate @ 18109]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14254
diff changeset
131 * @param local Whether the change is local-only.
1171796358b3 [gaim-migrate @ 18109]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14254
diff changeset
132 * @param restore Should the previous allow/deny list be restored if the
1171796358b3 [gaim-migrate @ 18109]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14254
diff changeset
133 * privacy setting is changed.
1171796358b3 [gaim-migrate @ 18109]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14254
diff changeset
134 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
135 void purple_privacy_allow(PurpleAccount *account, const char *who, gboolean local,
15380
1171796358b3 [gaim-migrate @ 18109]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14254
diff changeset
136 gboolean restore);
1171796358b3 [gaim-migrate @ 18109]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14254
diff changeset
137
1171796358b3 [gaim-migrate @ 18109]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14254
diff changeset
138 /**
1171796358b3 [gaim-migrate @ 18109]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14254
diff changeset
139 * Block messages from a user. If current privacy setting for the account is:
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
140 * PURPLE_PRIVACY_ALLOW_USERS: The user is removed from the allow-list.
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
141 * PURPLE_PRIVACY_DENY_USERS : The user is added to the deny-list.
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
142 * PURPLE_PRIVACY_DENY_ALL : No changes made.
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
143 * PURPLE_PRIVACY_ALLOW_ALL : The privacy setting is changed to
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
144 * PURPLE_PRIVACY_DENY_USERS and the user is
15380
1171796358b3 [gaim-migrate @ 18109]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14254
diff changeset
145 * added to the deny-list.
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
146 * PURPLE_PRIVACY_ALLOW_BUDDYLIST: If the user is not in the buddy-list,
15380
1171796358b3 [gaim-migrate @ 18109]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14254
diff changeset
147 * then no changes made. Otherwise, the setting
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
148 * is changed to PURPLE_PRIVACY_ALLOW_USERS, all
15380
1171796358b3 [gaim-migrate @ 18109]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14254
diff changeset
149 * the buddies are added to the allow-list, and
1171796358b3 [gaim-migrate @ 18109]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14254
diff changeset
150 * this user is removed from the list.
1171796358b3 [gaim-migrate @ 18109]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14254
diff changeset
151 *
1171796358b3 [gaim-migrate @ 18109]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14254
diff changeset
152 * @param account The account.
1171796358b3 [gaim-migrate @ 18109]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14254
diff changeset
153 * @param who The name of the user.
1171796358b3 [gaim-migrate @ 18109]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14254
diff changeset
154 * @param local Whether the change is local-only.
1171796358b3 [gaim-migrate @ 18109]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14254
diff changeset
155 * @param restore Should the previous allow/deny list be restored if the
1171796358b3 [gaim-migrate @ 18109]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14254
diff changeset
156 * privacy setting is changed.
1171796358b3 [gaim-migrate @ 18109]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14254
diff changeset
157 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
158 void purple_privacy_deny(PurpleAccount *account, const char *who, gboolean local,
15380
1171796358b3 [gaim-migrate @ 18109]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 14254
diff changeset
159 gboolean restore);
11111
4621d9b973a4 [gaim-migrate @ 13163]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 8307
diff changeset
160
4621d9b973a4 [gaim-migrate @ 13163]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 8307
diff changeset
161 /**
4621d9b973a4 [gaim-migrate @ 13163]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 8307
diff changeset
162 * Check the privacy-setting for a user.
4621d9b973a4 [gaim-migrate @ 13163]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 8307
diff changeset
163 *
4621d9b973a4 [gaim-migrate @ 13163]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 8307
diff changeset
164 * @param account The account.
4621d9b973a4 [gaim-migrate @ 13163]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 8307
diff changeset
165 * @param who The name of the user.
4621d9b973a4 [gaim-migrate @ 13163]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 8307
diff changeset
166 *
11122
28eadeadf52a [gaim-migrate @ 13178]
Richard Laager <rlaager@pidgin.im>
parents: 11111
diff changeset
167 * @return @c FALSE if the specified account's privacy settings block the user or @c TRUE otherwise. The meaning of "block" is protocol-dependent and generally relates to status and/or sending of messages.
11111
4621d9b973a4 [gaim-migrate @ 13163]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 8307
diff changeset
168 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
169 gboolean purple_privacy_check(PurpleAccount *account, const char *who);
11111
4621d9b973a4 [gaim-migrate @ 13163]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 8307
diff changeset
170
6371
e92b66ee5518 [gaim-migrate @ 6876]
Christian Hammond <chipx86@chipx86.com>
parents: 5944
diff changeset
171 /**
e92b66ee5518 [gaim-migrate @ 6876]
Christian Hammond <chipx86@chipx86.com>
parents: 5944
diff changeset
172 * Sets the UI operations structure for the privacy subsystem.
e92b66ee5518 [gaim-migrate @ 6876]
Christian Hammond <chipx86@chipx86.com>
parents: 5944
diff changeset
173 *
e92b66ee5518 [gaim-migrate @ 6876]
Christian Hammond <chipx86@chipx86.com>
parents: 5944
diff changeset
174 * @param ops The UI operations structure.
e92b66ee5518 [gaim-migrate @ 6876]
Christian Hammond <chipx86@chipx86.com>
parents: 5944
diff changeset
175 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
176 void purple_privacy_set_ui_ops(PurplePrivacyUiOps *ops);
6371
e92b66ee5518 [gaim-migrate @ 6876]
Christian Hammond <chipx86@chipx86.com>
parents: 5944
diff changeset
177
e92b66ee5518 [gaim-migrate @ 6876]
Christian Hammond <chipx86@chipx86.com>
parents: 5944
diff changeset
178 /**
e92b66ee5518 [gaim-migrate @ 6876]
Christian Hammond <chipx86@chipx86.com>
parents: 5944
diff changeset
179 * Returns the UI operations structure for the privacy subsystem.
e92b66ee5518 [gaim-migrate @ 6876]
Christian Hammond <chipx86@chipx86.com>
parents: 5944
diff changeset
180 *
e92b66ee5518 [gaim-migrate @ 6876]
Christian Hammond <chipx86@chipx86.com>
parents: 5944
diff changeset
181 * @return The UI operations structure.
e92b66ee5518 [gaim-migrate @ 6876]
Christian Hammond <chipx86@chipx86.com>
parents: 5944
diff changeset
182 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
183 PurplePrivacyUiOps *purple_privacy_get_ui_ops(void);
6371
e92b66ee5518 [gaim-migrate @ 6876]
Christian Hammond <chipx86@chipx86.com>
parents: 5944
diff changeset
184
e92b66ee5518 [gaim-migrate @ 6876]
Christian Hammond <chipx86@chipx86.com>
parents: 5944
diff changeset
185 /**
e92b66ee5518 [gaim-migrate @ 6876]
Christian Hammond <chipx86@chipx86.com>
parents: 5944
diff changeset
186 * Initializes the privacy subsystem.
e92b66ee5518 [gaim-migrate @ 6876]
Christian Hammond <chipx86@chipx86.com>
parents: 5944
diff changeset
187 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
188 void purple_privacy_init(void);
5944
f19df037ac58 [gaim-migrate @ 6385]
Christian Hammond <chipx86@chipx86.com>
parents: 5872
diff changeset
189
f19df037ac58 [gaim-migrate @ 6385]
Christian Hammond <chipx86@chipx86.com>
parents: 5872
diff changeset
190 #ifdef __cplusplus
f19df037ac58 [gaim-migrate @ 6385]
Christian Hammond <chipx86@chipx86.com>
parents: 5872
diff changeset
191 }
f19df037ac58 [gaim-migrate @ 6385]
Christian Hammond <chipx86@chipx86.com>
parents: 5872
diff changeset
192 #endif
f19df037ac58 [gaim-migrate @ 6385]
Christian Hammond <chipx86@chipx86.com>
parents: 5872
diff changeset
193
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15435
diff changeset
194 #endif /* _PURPLE_PRIVACY_H_ */

mercurial