Mercurial > pidgin.yaz
annotate libpurple/prpl.h @ 31699:a3bfd9439d37
merge of '974d79cf8eb22b7138c9a3d7313e89585fd8b443'
and 'a657534f694305a613db4946ca8ea9ab4c8f1c1d'
author | Evan Schoenberg <evan.s@dreskin.net> |
---|---|
date | Mon, 21 Feb 2011 22:56:48 +0000 |
parents | 44f53d3fc54f |
children | 1bd617f2c46a |
rev | line source |
---|---|
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
1 /** |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
2 * @file prpl.h Protocol Plugin functions |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
3 * @ingroup core |
20074
6bf32c9e15a7
remove gpl boilerplate from doxygen docs
Sean Egan <seanegan@gmail.com>
parents:
19702
diff
changeset
|
4 */ |
6bf32c9e15a7
remove gpl boilerplate from doxygen docs
Sean Egan <seanegan@gmail.com>
parents:
19702
diff
changeset
|
5 |
6bf32c9e15a7
remove gpl boilerplate from doxygen docs
Sean Egan <seanegan@gmail.com>
parents:
19702
diff
changeset
|
6 /* purple |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
7 * |
15823 | 8 * Purple is the legal property of its developers, whose names are too numerous |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
9 * to list here. Please refer to the COPYRIGHT file distributed with this |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
10 * source distribution. |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
11 * |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
12 * This program is free software; you can redistribute it and/or modify |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
13 * it under the terms of the GNU General Public License as published by |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
14 * the Free Software Foundation; either version 2 of the License, or |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
15 * (at your option) any later version. |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
16 * |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
17 * This program is distributed in the hope that it will be useful, |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
18 * but WITHOUT ANY WARRANTY; without even the implied warranty of |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
19 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
20 * GNU General Public License for more details. |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
21 * |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
22 * You should have received a copy of the GNU General Public License |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
23 * along with this program; if not, write to the Free Software |
19680
44b4e8bd759b
The FSF changed its address a while ago; our files were out of date.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
19463
diff
changeset
|
24 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
25 */ |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
26 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
27 /* this file should be all that prpls need to include. therefore, by including |
15823 | 28 * this file, they should get glib, proxy, purple_connection, prpl, etc. */ |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
29 |
15823 | 30 #ifndef _PURPLE_PRPL_H_ |
31 #define _PURPLE_PRPL_H_ | |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
32 |
15823 | 33 typedef struct _PurplePluginProtocolInfo PurplePluginProtocolInfo; |
23373
3f92fd48d19a
document PurpleAttentionType slightly
Will Thompson <will.thompson@collabora.co.uk>
parents:
23210
diff
changeset
|
34 /** @copydoc _PurpleAttentionType */ |
19426
6395c2e96bc2
Attention API for nudges/buzzes/zaps of various protocols.
Jeffrey Connelly <jaconnel@calpoly.edu>
parents:
19289
diff
changeset
|
35 typedef struct _PurpleAttentionType PurpleAttentionType; |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
36 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
37 /**************************************************************************/ |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
38 /** @name Basic Protocol Information */ |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
39 /**************************************************************************/ |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
40 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
41 typedef enum { |
15823 | 42 PURPLE_ICON_SCALE_DISPLAY = 0x01, /**< We scale the icon when we display it */ |
43 PURPLE_ICON_SCALE_SEND = 0x02 /**< We scale the icon before we send it to the server */ | |
44 } PurpleIconScaleRules; | |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
45 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
46 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
47 /** |
15823 | 48 * A description of a Buddy Icon specification. This tells Purple what kind of image file |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
49 * it should give this prpl, and what kind of image file it should expect back. |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
50 * Dimensions less than 1 should be ignored and the image not scaled. |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
51 */ |
15823 | 52 typedef struct _PurpleBuddyIconSpec PurpleBuddyIconSpec; |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
53 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
54 /** |
30237
25a53c299713
Allow PRPLs to specify the image formats acceptable for thumbnails (in
Marcus Lundblad <ml@update.uu.se>
parents:
29930
diff
changeset
|
55 * A description of a file transfer thumbnail specification. |
25a53c299713
Allow PRPLs to specify the image formats acceptable for thumbnails (in
Marcus Lundblad <ml@update.uu.se>
parents:
29930
diff
changeset
|
56 * This tells the UI if and what image formats the prpl support for file |
25a53c299713
Allow PRPLs to specify the image formats acceptable for thumbnails (in
Marcus Lundblad <ml@update.uu.se>
parents:
29930
diff
changeset
|
57 * transfer thumbnails. |
25a53c299713
Allow PRPLs to specify the image formats acceptable for thumbnails (in
Marcus Lundblad <ml@update.uu.se>
parents:
29930
diff
changeset
|
58 */ |
25a53c299713
Allow PRPLs to specify the image formats acceptable for thumbnails (in
Marcus Lundblad <ml@update.uu.se>
parents:
29930
diff
changeset
|
59 typedef struct _PurpleThumbnailSpec PurpleThumbnailSpec; |
25a53c299713
Allow PRPLs to specify the image formats acceptable for thumbnails (in
Marcus Lundblad <ml@update.uu.se>
parents:
29930
diff
changeset
|
60 |
25a53c299713
Allow PRPLs to specify the image formats acceptable for thumbnails (in
Marcus Lundblad <ml@update.uu.se>
parents:
29930
diff
changeset
|
61 /** |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
62 * This \#define exists just to make it easier to fill out the buddy icon |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
63 * field in the prpl info struct for protocols that couldn't care less. |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
64 */ |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
65 #define NO_BUDDY_ICONS {NULL, 0, 0, 0, 0, 0, 0} |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
66 |
17415
8c056932bcc2
Don't include unistd.h if HAVE_UNISTD_H isn't defined.
Daniel Atallah <daniel.atallah@gmail.com>
parents:
16915
diff
changeset
|
67 #ifdef HAVE_UNISTD_H |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
68 #include <unistd.h> |
17415
8c056932bcc2
Don't include unistd.h if HAVE_UNISTD_H isn't defined.
Daniel Atallah <daniel.atallah@gmail.com>
parents:
16915
diff
changeset
|
69 #endif |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
70 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
71 #include "blist.h" |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
72 #include "conversation.h" |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
73 #include "ft.h" |
16390
4fc51a87ce42
Updates for the account buddy icon stuff. This doesn't yet work fully (and maybe not even partly), but it compiles.
Richard Laager <rlaager@wiktel.com>
parents:
15823
diff
changeset
|
74 #include "imgstore.h" |
25545
315151da0dc6
Basic Google Talk voice call support. No UI; receiving a call auto-accepts it.
Sean Egan <seanegan@gmail.com>
parents:
19463
diff
changeset
|
75 #include "media.h" |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
76 #include "notify.h" |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
77 #include "proxy.h" |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
78 #include "plugin.h" |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
79 #include "roomlist.h" |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
80 #include "status.h" |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
81 #include "whiteboard.h" |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
82 |
23210
d3fb9d9b57e2
Add doxycomment for PurpleBuddyIcon; tweak that of PurpleBuddyIconSpec.
Will Thompson <will.thompson@collabora.co.uk>
parents:
23116
diff
changeset
|
83 |
d3fb9d9b57e2
Add doxycomment for PurpleBuddyIcon; tweak that of PurpleBuddyIconSpec.
Will Thompson <will.thompson@collabora.co.uk>
parents:
23116
diff
changeset
|
84 /** @copydoc PurpleBuddyIconSpec */ |
15823 | 85 struct _PurpleBuddyIconSpec { |
23210
d3fb9d9b57e2
Add doxycomment for PurpleBuddyIcon; tweak that of PurpleBuddyIconSpec.
Will Thompson <will.thompson@collabora.co.uk>
parents:
23116
diff
changeset
|
86 /** This is a comma-delimited list of image formats or @c NULL if icons |
d3fb9d9b57e2
Add doxycomment for PurpleBuddyIcon; tweak that of PurpleBuddyIconSpec.
Will Thompson <will.thompson@collabora.co.uk>
parents:
23116
diff
changeset
|
87 * are not supported. Neither the core nor the prpl will actually |
d3fb9d9b57e2
Add doxycomment for PurpleBuddyIcon; tweak that of PurpleBuddyIconSpec.
Will Thompson <will.thompson@collabora.co.uk>
parents:
23116
diff
changeset
|
88 * check to see if the data it's given matches this; it's entirely up |
d3fb9d9b57e2
Add doxycomment for PurpleBuddyIcon; tweak that of PurpleBuddyIconSpec.
Will Thompson <will.thompson@collabora.co.uk>
parents:
23116
diff
changeset
|
89 * to the UI to do what it wants |
d3fb9d9b57e2
Add doxycomment for PurpleBuddyIcon; tweak that of PurpleBuddyIconSpec.
Will Thompson <will.thompson@collabora.co.uk>
parents:
23116
diff
changeset
|
90 */ |
d3fb9d9b57e2
Add doxycomment for PurpleBuddyIcon; tweak that of PurpleBuddyIconSpec.
Will Thompson <will.thompson@collabora.co.uk>
parents:
23116
diff
changeset
|
91 char *format; |
d3fb9d9b57e2
Add doxycomment for PurpleBuddyIcon; tweak that of PurpleBuddyIconSpec.
Will Thompson <will.thompson@collabora.co.uk>
parents:
23116
diff
changeset
|
92 |
d3fb9d9b57e2
Add doxycomment for PurpleBuddyIcon; tweak that of PurpleBuddyIconSpec.
Will Thompson <will.thompson@collabora.co.uk>
parents:
23116
diff
changeset
|
93 int min_width; /**< Minimum width of this icon */ |
d3fb9d9b57e2
Add doxycomment for PurpleBuddyIcon; tweak that of PurpleBuddyIconSpec.
Will Thompson <will.thompson@collabora.co.uk>
parents:
23116
diff
changeset
|
94 int min_height; /**< Minimum height of this icon */ |
d3fb9d9b57e2
Add doxycomment for PurpleBuddyIcon; tweak that of PurpleBuddyIconSpec.
Will Thompson <will.thompson@collabora.co.uk>
parents:
23116
diff
changeset
|
95 int max_width; /**< Maximum width of this icon */ |
d3fb9d9b57e2
Add doxycomment for PurpleBuddyIcon; tweak that of PurpleBuddyIconSpec.
Will Thompson <will.thompson@collabora.co.uk>
parents:
23116
diff
changeset
|
96 int max_height; /**< Maximum height of this icon */ |
d3fb9d9b57e2
Add doxycomment for PurpleBuddyIcon; tweak that of PurpleBuddyIconSpec.
Will Thompson <will.thompson@collabora.co.uk>
parents:
23116
diff
changeset
|
97 size_t max_filesize; /**< Maximum size in bytes */ |
d3fb9d9b57e2
Add doxycomment for PurpleBuddyIcon; tweak that of PurpleBuddyIconSpec.
Will Thompson <will.thompson@collabora.co.uk>
parents:
23116
diff
changeset
|
98 PurpleIconScaleRules scale_rules; /**< How to stretch this icon */ |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
99 }; |
30249
905e291986bc
Whitespace trim.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30238
diff
changeset
|
100 |
28978
e37f85160784
Documented chat API. References #10605
sttwister@gmail.com
parents:
26985
diff
changeset
|
101 /** Represents an entry containing information that must be supplied by the |
e37f85160784
Documented chat API. References #10605
sttwister@gmail.com
parents:
26985
diff
changeset
|
102 * user when joining a chat. |
e37f85160784
Documented chat API. References #10605
sttwister@gmail.com
parents:
26985
diff
changeset
|
103 */ |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
104 struct proto_chat_entry { |
28978
e37f85160784
Documented chat API. References #10605
sttwister@gmail.com
parents:
26985
diff
changeset
|
105 const char *label; /**< User-friendly name of the entry */ |
e37f85160784
Documented chat API. References #10605
sttwister@gmail.com
parents:
26985
diff
changeset
|
106 const char *identifier; /**< Used by the PRPL to identify the option */ |
e37f85160784
Documented chat API. References #10605
sttwister@gmail.com
parents:
26985
diff
changeset
|
107 gboolean required; /**< True if it's required */ |
e37f85160784
Documented chat API. References #10605
sttwister@gmail.com
parents:
26985
diff
changeset
|
108 gboolean is_int; /**< True if the entry expects an integer */ |
e37f85160784
Documented chat API. References #10605
sttwister@gmail.com
parents:
26985
diff
changeset
|
109 int min; /**< Minimum value in case of integer */ |
e37f85160784
Documented chat API. References #10605
sttwister@gmail.com
parents:
26985
diff
changeset
|
110 int max; /**< Maximum value in case of integer */ |
e37f85160784
Documented chat API. References #10605
sttwister@gmail.com
parents:
26985
diff
changeset
|
111 gboolean secret; /**< True if the entry is secret (password) */ |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
112 }; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
113 |
23373
3f92fd48d19a
document PurpleAttentionType slightly
Will Thompson <will.thompson@collabora.co.uk>
parents:
23210
diff
changeset
|
114 /** Represents "nudges" and "buzzes" that you may send to a buddy to attract |
3f92fd48d19a
document PurpleAttentionType slightly
Will Thompson <will.thompson@collabora.co.uk>
parents:
23210
diff
changeset
|
115 * their attention (or vice-versa). |
3f92fd48d19a
document PurpleAttentionType slightly
Will Thompson <will.thompson@collabora.co.uk>
parents:
23210
diff
changeset
|
116 */ |
19426
6395c2e96bc2
Attention API for nudges/buzzes/zaps of various protocols.
Jeffrey Connelly <jaconnel@calpoly.edu>
parents:
19289
diff
changeset
|
117 struct _PurpleAttentionType |
6395c2e96bc2
Attention API for nudges/buzzes/zaps of various protocols.
Jeffrey Connelly <jaconnel@calpoly.edu>
parents:
19289
diff
changeset
|
118 { |
6395c2e96bc2
Attention API for nudges/buzzes/zaps of various protocols.
Jeffrey Connelly <jaconnel@calpoly.edu>
parents:
19289
diff
changeset
|
119 const char *name; /**< Shown in GUI elements */ |
6395c2e96bc2
Attention API for nudges/buzzes/zaps of various protocols.
Jeffrey Connelly <jaconnel@calpoly.edu>
parents:
19289
diff
changeset
|
120 const char *incoming_description; /**< Shown when sent */ |
6395c2e96bc2
Attention API for nudges/buzzes/zaps of various protocols.
Jeffrey Connelly <jaconnel@calpoly.edu>
parents:
19289
diff
changeset
|
121 const char *outgoing_description; /**< Shown when receied */ |
19461
1b5e786d137a
In the attention API, use the PURPLE_NOTIFY_MESSAGE flag to serv_got_im()
Jeffrey Connelly <jaconnel@calpoly.edu>
parents:
19426
diff
changeset
|
122 const char *icon_name; /**< Icon to display (optional) */ |
22097
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
123 const char *unlocalized_name; /**< Unlocalized name for UIs needing it */ |
19461
1b5e786d137a
In the attention API, use the PURPLE_NOTIFY_MESSAGE flag to serv_got_im()
Jeffrey Connelly <jaconnel@calpoly.edu>
parents:
19426
diff
changeset
|
124 |
1b5e786d137a
In the attention API, use the PURPLE_NOTIFY_MESSAGE flag to serv_got_im()
Jeffrey Connelly <jaconnel@calpoly.edu>
parents:
19426
diff
changeset
|
125 /* Reserved fields for future purposes */ |
1b5e786d137a
In the attention API, use the PURPLE_NOTIFY_MESSAGE flag to serv_got_im()
Jeffrey Connelly <jaconnel@calpoly.edu>
parents:
19426
diff
changeset
|
126 gpointer _reserved2; |
1b5e786d137a
In the attention API, use the PURPLE_NOTIFY_MESSAGE flag to serv_got_im()
Jeffrey Connelly <jaconnel@calpoly.edu>
parents:
19426
diff
changeset
|
127 gpointer _reserved3; |
1b5e786d137a
In the attention API, use the PURPLE_NOTIFY_MESSAGE flag to serv_got_im()
Jeffrey Connelly <jaconnel@calpoly.edu>
parents:
19426
diff
changeset
|
128 gpointer _reserved4; |
19426
6395c2e96bc2
Attention API for nudges/buzzes/zaps of various protocols.
Jeffrey Connelly <jaconnel@calpoly.edu>
parents:
19289
diff
changeset
|
129 }; |
6395c2e96bc2
Attention API for nudges/buzzes/zaps of various protocols.
Jeffrey Connelly <jaconnel@calpoly.edu>
parents:
19289
diff
changeset
|
130 |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
131 /** |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
132 * Protocol options |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
133 * |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
134 * These should all be stuff that some plugins can do and others can't. |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
135 */ |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
136 typedef enum |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
137 { |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
138 /** |
26985
cda10ae89918
Clarify (hopefully) the usage of OPT_PROTO_UNIQUE_CHATNAME; arose in a discussion in #pidgin.
Paul Aurich <paul@darkrain42.org>
parents:
26776
diff
changeset
|
139 * User names are unique to a chat and are not shared between rooms. |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
140 * |
26985
cda10ae89918
Clarify (hopefully) the usage of OPT_PROTO_UNIQUE_CHATNAME; arose in a discussion in #pidgin.
Paul Aurich <paul@darkrain42.org>
parents:
26776
diff
changeset
|
141 * XMPP lets you choose what name you want in chats, so it shouldn't |
cda10ae89918
Clarify (hopefully) the usage of OPT_PROTO_UNIQUE_CHATNAME; arose in a discussion in #pidgin.
Paul Aurich <paul@darkrain42.org>
parents:
26776
diff
changeset
|
142 * be pulling the aliases from the buddy list for the chat list; |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
143 * it gets annoying. |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
144 */ |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
145 OPT_PROTO_UNIQUE_CHATNAME = 0x00000004, |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
146 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
147 /** |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
148 * Chat rooms have topics. |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
149 * |
16915
56042b2f8b64
s/Jabber/XMPP in user-visible places.
Richard Laager <rlaager@wiktel.com>
parents:
16728
diff
changeset
|
150 * IRC and XMPP support this. |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
151 */ |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
152 OPT_PROTO_CHAT_TOPIC = 0x00000008, |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
153 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
154 /** |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
155 * Don't require passwords for sign-in. |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
156 * |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
157 * Zephyr doesn't require passwords, so there's no |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
158 * need for a password prompt. |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
159 */ |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
160 OPT_PROTO_NO_PASSWORD = 0x00000010, |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
161 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
162 /** |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
163 * Notify on new mail. |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
164 * |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
165 * MSN and Yahoo notify you when you have new mail. |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
166 */ |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
167 OPT_PROTO_MAIL_CHECK = 0x00000020, |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
168 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
169 /** |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
170 * Images in IMs. |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
171 * |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
172 * Oscar lets you send images in direct IMs. |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
173 */ |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
174 OPT_PROTO_IM_IMAGE = 0x00000040, |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
175 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
176 /** |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
177 * Allow passwords to be optional. |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
178 * |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
179 * Passwords in IRC are optional, and are needed for certain |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
180 * functionality. |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
181 */ |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
182 OPT_PROTO_PASSWORD_OPTIONAL = 0x00000080, |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
183 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
184 /** |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
185 * Allows font size to be specified in sane point size |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
186 * |
16915
56042b2f8b64
s/Jabber/XMPP in user-visible places.
Richard Laager <rlaager@wiktel.com>
parents:
16728
diff
changeset
|
187 * Probably just XMPP and Y!M |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
188 */ |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
189 OPT_PROTO_USE_POINTSIZE = 0x00000100, |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
190 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
191 /** |
25416
6e1967b0f90b
Change "screen name" to "username" or "buddy name" in a whole bunch of
Mark Doliner <mark@kingant.net>
parents:
25415
diff
changeset
|
192 * Set the Register button active even when the username has not |
6e1967b0f90b
Change "screen name" to "username" or "buddy name" in a whole bunch of
Mark Doliner <mark@kingant.net>
parents:
25415
diff
changeset
|
193 * been specified. |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
194 * |
25416
6e1967b0f90b
Change "screen name" to "username" or "buddy name" in a whole bunch of
Mark Doliner <mark@kingant.net>
parents:
25415
diff
changeset
|
195 * Gadu-Gadu doesn't need a username to register new account (because |
6e1967b0f90b
Change "screen name" to "username" or "buddy name" in a whole bunch of
Mark Doliner <mark@kingant.net>
parents:
25415
diff
changeset
|
196 * usernames are assigned by the server). |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
197 */ |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
198 OPT_PROTO_REGISTER_NOSCREENNAME = 0x00000200, |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
199 |
18030
62a71bb085ef
Mostly taken from the patch on ticket #410, don't send unknown slash
Stu Tomlinson <stu@nosnilmot.com>
parents:
17415
diff
changeset
|
200 /** |
62a71bb085ef
Mostly taken from the patch on ticket #410, don't send unknown slash
Stu Tomlinson <stu@nosnilmot.com>
parents:
17415
diff
changeset
|
201 * Indicates that slash commands are native to this protocol. |
62a71bb085ef
Mostly taken from the patch on ticket #410, don't send unknown slash
Stu Tomlinson <stu@nosnilmot.com>
parents:
17415
diff
changeset
|
202 * Used as a hint that unknown commands should not be sent as messages. |
22870
3d7e9eff04d0
Assorted cleanups, mostly to the Doxygen comments. I added a few missing
Richard Laager <rlaager@wiktel.com>
parents:
22745
diff
changeset
|
203 * @since 2.1.0 |
18030
62a71bb085ef
Mostly taken from the patch on ticket #410, don't send unknown slash
Stu Tomlinson <stu@nosnilmot.com>
parents:
17415
diff
changeset
|
204 */ |
24635
d8452c0bec7b
Remove the commas at the end of enumerator lists. This resolves warnings
Florian Quèze <florian@instantbird.org>
parents:
24535
diff
changeset
|
205 OPT_PROTO_SLASH_COMMANDS_NATIVE = 0x00000400 |
18030
62a71bb085ef
Mostly taken from the patch on ticket #410, don't send unknown slash
Stu Tomlinson <stu@nosnilmot.com>
parents:
17415
diff
changeset
|
206 |
15823 | 207 } PurpleProtocolOptions; |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
208 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
209 /** |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
210 * A protocol plugin information structure. |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
211 * |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
212 * Every protocol plugin initializes this structure. It is the gateway |
22745
20053e2484f8
Fix a typo in a doc comment.
Richard Laager <rlaager@wiktel.com>
parents:
22122
diff
changeset
|
213 * between purple and the protocol plugin. Many of these callbacks can be |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
214 * NULL. If a callback must be implemented, it has a comment indicating so. |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
215 */ |
15823 | 216 struct _PurplePluginProtocolInfo |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
217 { |
15823 | 218 PurpleProtocolOptions options; /**< Protocol options. */ |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
219 |
19289
f12bf92d64ec
Add marginally better doxygen magic to PurplePluginProtocolInfo
Will Thompson <will.thompson@collabora.co.uk>
parents:
18179
diff
changeset
|
220 GList *user_splits; /**< A GList of PurpleAccountUserSplit */ |
f12bf92d64ec
Add marginally better doxygen magic to PurplePluginProtocolInfo
Will Thompson <will.thompson@collabora.co.uk>
parents:
18179
diff
changeset
|
221 GList *protocol_options; /**< A GList of PurpleAccountOption */ |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
222 |
19289
f12bf92d64ec
Add marginally better doxygen magic to PurplePluginProtocolInfo
Will Thompson <will.thompson@collabora.co.uk>
parents:
18179
diff
changeset
|
223 PurpleBuddyIconSpec icon_spec; /**< The icon spec. */ |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
224 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
225 /** |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
226 * Returns the base icon name for the given buddy and account. |
25415
584063555949
Remove trailing whitespace
Mark Doliner <mark@kingant.net>
parents:
24762
diff
changeset
|
227 * If buddy is NULL and the account is non-NULL, it will return the |
16393
c85fa74f7e50
Document prpl_info->list_icon(NULL, NULL), and add my name to COPYRIGHT.
Jeffrey Connelly <jaconnel@calpoly.edu>
parents:
15823
diff
changeset
|
228 * name to use for the account's icon. If both are NULL, it will |
c85fa74f7e50
Document prpl_info->list_icon(NULL, NULL), and add my name to COPYRIGHT.
Jeffrey Connelly <jaconnel@calpoly.edu>
parents:
15823
diff
changeset
|
229 * return the name to use for the protocol's icon. |
c85fa74f7e50
Document prpl_info->list_icon(NULL, NULL), and add my name to COPYRIGHT.
Jeffrey Connelly <jaconnel@calpoly.edu>
parents:
15823
diff
changeset
|
230 * |
c85fa74f7e50
Document prpl_info->list_icon(NULL, NULL), and add my name to COPYRIGHT.
Jeffrey Connelly <jaconnel@calpoly.edu>
parents:
15823
diff
changeset
|
231 * This must be implemented. |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
232 */ |
15823 | 233 const char *(*list_icon)(PurpleAccount *account, PurpleBuddy *buddy); |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
234 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
235 /** |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
236 * Fills the four char**'s with string identifiers for "emblems" |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
237 * that the UI will interpret and display as relevant |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
238 */ |
15823 | 239 const char *(*list_emblem)(PurpleBuddy *buddy); |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
240 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
241 /** |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
242 * Gets a short string representing this buddy's status. This will |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
243 * be shown on the buddy list. |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
244 */ |
15823 | 245 char *(*status_text)(PurpleBuddy *buddy); |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
246 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
247 /** |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
248 * Allows the prpl to add text to a buddy's tooltip. |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
249 */ |
15823 | 250 void (*tooltip_text)(PurpleBuddy *buddy, PurpleNotifyUserInfo *user_info, gboolean full); |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
251 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
252 /** |
20903
3375d44ccad7
Add some (but not much!) documentation to PurplePluginProtocolInfo.
Will Thompson <will.thompson@collabora.co.uk>
parents:
20074
diff
changeset
|
253 * Returns a list of #PurpleStatusType which exist for this account; |
3375d44ccad7
Add some (but not much!) documentation to PurplePluginProtocolInfo.
Will Thompson <will.thompson@collabora.co.uk>
parents:
20074
diff
changeset
|
254 * this must be implemented, and must add at least the offline and |
3375d44ccad7
Add some (but not much!) documentation to PurplePluginProtocolInfo.
Will Thompson <will.thompson@collabora.co.uk>
parents:
20074
diff
changeset
|
255 * online states. |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
256 */ |
15823 | 257 GList *(*status_types)(PurpleAccount *account); |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
258 |
20903
3375d44ccad7
Add some (but not much!) documentation to PurplePluginProtocolInfo.
Will Thompson <will.thompson@collabora.co.uk>
parents:
20074
diff
changeset
|
259 /** |
3375d44ccad7
Add some (but not much!) documentation to PurplePluginProtocolInfo.
Will Thompson <will.thompson@collabora.co.uk>
parents:
20074
diff
changeset
|
260 * Returns a list of #PurpleMenuAction structs, which represent extra |
3375d44ccad7
Add some (but not much!) documentation to PurplePluginProtocolInfo.
Will Thompson <will.thompson@collabora.co.uk>
parents:
20074
diff
changeset
|
261 * actions to be shown in (for example) the right-click menu for @a |
3375d44ccad7
Add some (but not much!) documentation to PurplePluginProtocolInfo.
Will Thompson <will.thompson@collabora.co.uk>
parents:
20074
diff
changeset
|
262 * node. |
3375d44ccad7
Add some (but not much!) documentation to PurplePluginProtocolInfo.
Will Thompson <will.thompson@collabora.co.uk>
parents:
20074
diff
changeset
|
263 */ |
15823 | 264 GList *(*blist_node_menu)(PurpleBlistNode *node); |
28978
e37f85160784
Documented chat API. References #10605
sttwister@gmail.com
parents:
26985
diff
changeset
|
265 |
e37f85160784
Documented chat API. References #10605
sttwister@gmail.com
parents:
26985
diff
changeset
|
266 /** |
e37f85160784
Documented chat API. References #10605
sttwister@gmail.com
parents:
26985
diff
changeset
|
267 * Returns a list of #proto_chat_entry structs, which represent |
e37f85160784
Documented chat API. References #10605
sttwister@gmail.com
parents:
26985
diff
changeset
|
268 * information required by the PRPL to join a chat. libpurple will |
e37f85160784
Documented chat API. References #10605
sttwister@gmail.com
parents:
26985
diff
changeset
|
269 * call join_chat along with the information filled by the user. |
e37f85160784
Documented chat API. References #10605
sttwister@gmail.com
parents:
26985
diff
changeset
|
270 * |
e37f85160784
Documented chat API. References #10605
sttwister@gmail.com
parents:
26985
diff
changeset
|
271 * @return A list of #proto_chat_entry structs |
e37f85160784
Documented chat API. References #10605
sttwister@gmail.com
parents:
26985
diff
changeset
|
272 */ |
15823 | 273 GList *(*chat_info)(PurpleConnection *); |
28978
e37f85160784
Documented chat API. References #10605
sttwister@gmail.com
parents:
26985
diff
changeset
|
274 |
e37f85160784
Documented chat API. References #10605
sttwister@gmail.com
parents:
26985
diff
changeset
|
275 /** |
e37f85160784
Documented chat API. References #10605
sttwister@gmail.com
parents:
26985
diff
changeset
|
276 * Returns a hashtable which maps #proto_chat_entry struct identifiers |
31533
44f53d3fc54f
Remove trailing whitespace
Richard Laager <rlaager@wiktel.com>
parents:
30311
diff
changeset
|
277 * to default options as strings based on chat_name. The resulting |
28978
e37f85160784
Documented chat API. References #10605
sttwister@gmail.com
parents:
26985
diff
changeset
|
278 * hashtable should be created with g_hash_table_new_full(g_str_hash, |
e37f85160784
Documented chat API. References #10605
sttwister@gmail.com
parents:
26985
diff
changeset
|
279 * g_str_equal, NULL, g_free);. Use #get_chat_name if you instead need |
e37f85160784
Documented chat API. References #10605
sttwister@gmail.com
parents:
26985
diff
changeset
|
280 * to extract a chat name from a hashtable. |
e37f85160784
Documented chat API. References #10605
sttwister@gmail.com
parents:
26985
diff
changeset
|
281 * |
e37f85160784
Documented chat API. References #10605
sttwister@gmail.com
parents:
26985
diff
changeset
|
282 * @param chat_name The chat name to be turned into components |
e37f85160784
Documented chat API. References #10605
sttwister@gmail.com
parents:
26985
diff
changeset
|
283 * @return Hashtable containing the information extracted from chat_name |
e37f85160784
Documented chat API. References #10605
sttwister@gmail.com
parents:
26985
diff
changeset
|
284 */ |
15823 | 285 GHashTable *(*chat_info_defaults)(PurpleConnection *, const char *chat_name); |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
286 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
287 /* All the server-related functions */ |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
288 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
289 /** This must be implemented. */ |
15823 | 290 void (*login)(PurpleAccount *); |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
291 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
292 /** This must be implemented. */ |
15823 | 293 void (*close)(PurpleConnection *); |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
294 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
295 /** |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
296 * This PRPL function should return a positive value on success. |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
297 * If the message is too big to be sent, return -E2BIG. If |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
298 * the account is not connected, return -ENOTCONN. If the |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
299 * PRPL is unable to send the message for another reason, return |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
300 * some other negative value. You can use one of the valid |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
301 * errno values, or just big something. If the message should |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
302 * not be echoed to the conversation window, return 0. |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
303 */ |
15823 | 304 int (*send_im)(PurpleConnection *, const char *who, |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
305 const char *message, |
15823 | 306 PurpleMessageFlags flags); |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
307 |
15823 | 308 void (*set_info)(PurpleConnection *, const char *info); |
24534
23170794f9f5
Add a comment for the meaning of the return value of this function,
Mark Doliner <mark@kingant.net>
parents:
23616
diff
changeset
|
309 |
23170794f9f5
Add a comment for the meaning of the return value of this function,
Mark Doliner <mark@kingant.net>
parents:
23616
diff
changeset
|
310 /** |
23170794f9f5
Add a comment for the meaning of the return value of this function,
Mark Doliner <mark@kingant.net>
parents:
23616
diff
changeset
|
311 * @return If this protocol requires the PURPLE_TYPING message to |
24535
64c74659b6eb
Fix a typo in Mark's new comment.
Richard Laager <rlaager@wiktel.com>
parents:
24534
diff
changeset
|
312 * be sent repeatedly to signify that the user is still |
24534
23170794f9f5
Add a comment for the meaning of the return value of this function,
Mark Doliner <mark@kingant.net>
parents:
23616
diff
changeset
|
313 * typing, then the PRPL should return the number of |
23170794f9f5
Add a comment for the meaning of the return value of this function,
Mark Doliner <mark@kingant.net>
parents:
23616
diff
changeset
|
314 * seconds to wait before sending a subsequent notification. |
23170794f9f5
Add a comment for the meaning of the return value of this function,
Mark Doliner <mark@kingant.net>
parents:
23616
diff
changeset
|
315 * Otherwise the PRPL should return 0. |
23170794f9f5
Add a comment for the meaning of the return value of this function,
Mark Doliner <mark@kingant.net>
parents:
23616
diff
changeset
|
316 */ |
15823 | 317 unsigned int (*send_typing)(PurpleConnection *, const char *name, PurpleTypingState state); |
24534
23170794f9f5
Add a comment for the meaning of the return value of this function,
Mark Doliner <mark@kingant.net>
parents:
23616
diff
changeset
|
318 |
20903
3375d44ccad7
Add some (but not much!) documentation to PurplePluginProtocolInfo.
Will Thompson <will.thompson@collabora.co.uk>
parents:
20074
diff
changeset
|
319 /** |
3375d44ccad7
Add some (but not much!) documentation to PurplePluginProtocolInfo.
Will Thompson <will.thompson@collabora.co.uk>
parents:
20074
diff
changeset
|
320 * Should arrange for purple_notify_userinfo() to be called with |
3375d44ccad7
Add some (but not much!) documentation to PurplePluginProtocolInfo.
Will Thompson <will.thompson@collabora.co.uk>
parents:
20074
diff
changeset
|
321 * @a who's user info. |
3375d44ccad7
Add some (but not much!) documentation to PurplePluginProtocolInfo.
Will Thompson <will.thompson@collabora.co.uk>
parents:
20074
diff
changeset
|
322 */ |
15823 | 323 void (*get_info)(PurpleConnection *, const char *who); |
324 void (*set_status)(PurpleAccount *account, PurpleStatus *status); | |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
325 |
15823 | 326 void (*set_idle)(PurpleConnection *, int idletime); |
327 void (*change_passwd)(PurpleConnection *, const char *old_pass, | |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
328 const char *new_pass); |
25008
a4d6e2c1e73b
Update the comment for add_buddy in prpl.h to note it may be called to mean 'request authorization'
Paul Aurich <paul@darkrain42.org>
parents:
24762
diff
changeset
|
329 /** |
a4d6e2c1e73b
Update the comment for add_buddy in prpl.h to note it may be called to mean 'request authorization'
Paul Aurich <paul@darkrain42.org>
parents:
24762
diff
changeset
|
330 * Add a buddy to a group on the server. |
a4d6e2c1e73b
Update the comment for add_buddy in prpl.h to note it may be called to mean 'request authorization'
Paul Aurich <paul@darkrain42.org>
parents:
24762
diff
changeset
|
331 * |
a4d6e2c1e73b
Update the comment for add_buddy in prpl.h to note it may be called to mean 'request authorization'
Paul Aurich <paul@darkrain42.org>
parents:
24762
diff
changeset
|
332 * This PRPL function may be called in situations in which the buddy is |
a4d6e2c1e73b
Update the comment for add_buddy in prpl.h to note it may be called to mean 'request authorization'
Paul Aurich <paul@darkrain42.org>
parents:
24762
diff
changeset
|
333 * already in the specified group. If the protocol supports |
a4d6e2c1e73b
Update the comment for add_buddy in prpl.h to note it may be called to mean 'request authorization'
Paul Aurich <paul@darkrain42.org>
parents:
24762
diff
changeset
|
334 * authorization and the user is not already authorized to see the |
a4d6e2c1e73b
Update the comment for add_buddy in prpl.h to note it may be called to mean 'request authorization'
Paul Aurich <paul@darkrain42.org>
parents:
24762
diff
changeset
|
335 * status of \a buddy, \a add_buddy should request authorization. |
a4d6e2c1e73b
Update the comment for add_buddy in prpl.h to note it may be called to mean 'request authorization'
Paul Aurich <paul@darkrain42.org>
parents:
24762
diff
changeset
|
336 */ |
15823 | 337 void (*add_buddy)(PurpleConnection *, PurpleBuddy *buddy, PurpleGroup *group); |
338 void (*add_buddies)(PurpleConnection *, GList *buddies, GList *groups); | |
339 void (*remove_buddy)(PurpleConnection *, PurpleBuddy *buddy, PurpleGroup *group); | |
340 void (*remove_buddies)(PurpleConnection *, GList *buddies, GList *groups); | |
341 void (*add_permit)(PurpleConnection *, const char *name); | |
342 void (*add_deny)(PurpleConnection *, const char *name); | |
343 void (*rem_permit)(PurpleConnection *, const char *name); | |
344 void (*rem_deny)(PurpleConnection *, const char *name); | |
345 void (*set_permit_deny)(PurpleConnection *); | |
28978
e37f85160784
Documented chat API. References #10605
sttwister@gmail.com
parents:
26985
diff
changeset
|
346 |
e37f85160784
Documented chat API. References #10605
sttwister@gmail.com
parents:
26985
diff
changeset
|
347 /** |
e37f85160784
Documented chat API. References #10605
sttwister@gmail.com
parents:
26985
diff
changeset
|
348 * Called when the user requests joining a chat. Should arrange for |
e37f85160784
Documented chat API. References #10605
sttwister@gmail.com
parents:
26985
diff
changeset
|
349 * #serv_got_joined_chat to be called. |
e37f85160784
Documented chat API. References #10605
sttwister@gmail.com
parents:
26985
diff
changeset
|
350 * |
e37f85160784
Documented chat API. References #10605
sttwister@gmail.com
parents:
26985
diff
changeset
|
351 * @param components A hashtable containing information required to |
e37f85160784
Documented chat API. References #10605
sttwister@gmail.com
parents:
26985
diff
changeset
|
352 * join the chat as described by the entries returned |
e37f85160784
Documented chat API. References #10605
sttwister@gmail.com
parents:
26985
diff
changeset
|
353 * by #chat_info. It may also be called when accepting |
e37f85160784
Documented chat API. References #10605
sttwister@gmail.com
parents:
26985
diff
changeset
|
354 * an invitation, in which case this matches the |
e37f85160784
Documented chat API. References #10605
sttwister@gmail.com
parents:
26985
diff
changeset
|
355 * data parameter passed to #serv_got_chat_invite. |
e37f85160784
Documented chat API. References #10605
sttwister@gmail.com
parents:
26985
diff
changeset
|
356 */ |
15823 | 357 void (*join_chat)(PurpleConnection *, GHashTable *components); |
28978
e37f85160784
Documented chat API. References #10605
sttwister@gmail.com
parents:
26985
diff
changeset
|
358 |
e37f85160784
Documented chat API. References #10605
sttwister@gmail.com
parents:
26985
diff
changeset
|
359 /** |
e37f85160784
Documented chat API. References #10605
sttwister@gmail.com
parents:
26985
diff
changeset
|
360 * Called when the user refuses a chat invitation. |
e37f85160784
Documented chat API. References #10605
sttwister@gmail.com
parents:
26985
diff
changeset
|
361 * |
e37f85160784
Documented chat API. References #10605
sttwister@gmail.com
parents:
26985
diff
changeset
|
362 * @param components A hashtable containing information required to |
e37f85160784
Documented chat API. References #10605
sttwister@gmail.com
parents:
26985
diff
changeset
|
363 * join the chat as passed to #serv_got_chat_invite. |
e37f85160784
Documented chat API. References #10605
sttwister@gmail.com
parents:
26985
diff
changeset
|
364 */ |
15823 | 365 void (*reject_chat)(PurpleConnection *, GHashTable *components); |
28978
e37f85160784
Documented chat API. References #10605
sttwister@gmail.com
parents:
26985
diff
changeset
|
366 |
e37f85160784
Documented chat API. References #10605
sttwister@gmail.com
parents:
26985
diff
changeset
|
367 /** |
e37f85160784
Documented chat API. References #10605
sttwister@gmail.com
parents:
26985
diff
changeset
|
368 * Returns a chat name based on the information in components. Use |
31533
44f53d3fc54f
Remove trailing whitespace
Richard Laager <rlaager@wiktel.com>
parents:
30311
diff
changeset
|
369 * #chat_info_defaults if you instead need to generate a hashtable |
28978
e37f85160784
Documented chat API. References #10605
sttwister@gmail.com
parents:
26985
diff
changeset
|
370 * from a chat name. |
e37f85160784
Documented chat API. References #10605
sttwister@gmail.com
parents:
26985
diff
changeset
|
371 * |
e37f85160784
Documented chat API. References #10605
sttwister@gmail.com
parents:
26985
diff
changeset
|
372 * @param components A hashtable containing information about the chat. |
e37f85160784
Documented chat API. References #10605
sttwister@gmail.com
parents:
26985
diff
changeset
|
373 */ |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
374 char *(*get_chat_name)(GHashTable *components); |
28978
e37f85160784
Documented chat API. References #10605
sttwister@gmail.com
parents:
26985
diff
changeset
|
375 |
e37f85160784
Documented chat API. References #10605
sttwister@gmail.com
parents:
26985
diff
changeset
|
376 /** |
e37f85160784
Documented chat API. References #10605
sttwister@gmail.com
parents:
26985
diff
changeset
|
377 * Invite a user to join a chat. |
e37f85160784
Documented chat API. References #10605
sttwister@gmail.com
parents:
26985
diff
changeset
|
378 * |
e37f85160784
Documented chat API. References #10605
sttwister@gmail.com
parents:
26985
diff
changeset
|
379 * @param id The id of the chat to invite the user to. |
31533
44f53d3fc54f
Remove trailing whitespace
Richard Laager <rlaager@wiktel.com>
parents:
30311
diff
changeset
|
380 * @param message A message displayed to the user when the invitation |
28978
e37f85160784
Documented chat API. References #10605
sttwister@gmail.com
parents:
26985
diff
changeset
|
381 * is received. |
e37f85160784
Documented chat API. References #10605
sttwister@gmail.com
parents:
26985
diff
changeset
|
382 * @param who The name of the user to send the invation to. |
e37f85160784
Documented chat API. References #10605
sttwister@gmail.com
parents:
26985
diff
changeset
|
383 */ |
15823 | 384 void (*chat_invite)(PurpleConnection *, int id, |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
385 const char *message, const char *who); |
28978
e37f85160784
Documented chat API. References #10605
sttwister@gmail.com
parents:
26985
diff
changeset
|
386 /** |
e37f85160784
Documented chat API. References #10605
sttwister@gmail.com
parents:
26985
diff
changeset
|
387 * Called when the user requests leaving a chat. |
e37f85160784
Documented chat API. References #10605
sttwister@gmail.com
parents:
26985
diff
changeset
|
388 * |
e37f85160784
Documented chat API. References #10605
sttwister@gmail.com
parents:
26985
diff
changeset
|
389 * @param id The id of the chat to leave |
e37f85160784
Documented chat API. References #10605
sttwister@gmail.com
parents:
26985
diff
changeset
|
390 */ |
15823 | 391 void (*chat_leave)(PurpleConnection *, int id); |
28978
e37f85160784
Documented chat API. References #10605
sttwister@gmail.com
parents:
26985
diff
changeset
|
392 |
e37f85160784
Documented chat API. References #10605
sttwister@gmail.com
parents:
26985
diff
changeset
|
393 /** |
e37f85160784
Documented chat API. References #10605
sttwister@gmail.com
parents:
26985
diff
changeset
|
394 * Send a whisper to a user in a chat. |
e37f85160784
Documented chat API. References #10605
sttwister@gmail.com
parents:
26985
diff
changeset
|
395 * |
e37f85160784
Documented chat API. References #10605
sttwister@gmail.com
parents:
26985
diff
changeset
|
396 * @param id The id of the chat. |
e37f85160784
Documented chat API. References #10605
sttwister@gmail.com
parents:
26985
diff
changeset
|
397 * @param who The name of the user to send the whisper to. |
e37f85160784
Documented chat API. References #10605
sttwister@gmail.com
parents:
26985
diff
changeset
|
398 * @param message The message of the whisper. |
e37f85160784
Documented chat API. References #10605
sttwister@gmail.com
parents:
26985
diff
changeset
|
399 */ |
15823 | 400 void (*chat_whisper)(PurpleConnection *, int id, |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
401 const char *who, const char *message); |
28978
e37f85160784
Documented chat API. References #10605
sttwister@gmail.com
parents:
26985
diff
changeset
|
402 |
e37f85160784
Documented chat API. References #10605
sttwister@gmail.com
parents:
26985
diff
changeset
|
403 /** |
e37f85160784
Documented chat API. References #10605
sttwister@gmail.com
parents:
26985
diff
changeset
|
404 * Send a message to a chat. |
e37f85160784
Documented chat API. References #10605
sttwister@gmail.com
parents:
26985
diff
changeset
|
405 * This PRPL function should return a positive value on success. |
e37f85160784
Documented chat API. References #10605
sttwister@gmail.com
parents:
26985
diff
changeset
|
406 * If the message is too big to be sent, return -E2BIG. If |
e37f85160784
Documented chat API. References #10605
sttwister@gmail.com
parents:
26985
diff
changeset
|
407 * the account is not connected, return -ENOTCONN. If the |
e37f85160784
Documented chat API. References #10605
sttwister@gmail.com
parents:
26985
diff
changeset
|
408 * PRPL is unable to send the message for another reason, return |
e37f85160784
Documented chat API. References #10605
sttwister@gmail.com
parents:
26985
diff
changeset
|
409 * some other negative value. You can use one of the valid |
e37f85160784
Documented chat API. References #10605
sttwister@gmail.com
parents:
26985
diff
changeset
|
410 * errno values, or just big something. If the message should |
e37f85160784
Documented chat API. References #10605
sttwister@gmail.com
parents:
26985
diff
changeset
|
411 * not be echoed to the conversation window, return 0. |
e37f85160784
Documented chat API. References #10605
sttwister@gmail.com
parents:
26985
diff
changeset
|
412 * |
e37f85160784
Documented chat API. References #10605
sttwister@gmail.com
parents:
26985
diff
changeset
|
413 * @param id The id of the chat to send the message to. |
e37f85160784
Documented chat API. References #10605
sttwister@gmail.com
parents:
26985
diff
changeset
|
414 * @param message The message to send to the chat. |
e37f85160784
Documented chat API. References #10605
sttwister@gmail.com
parents:
26985
diff
changeset
|
415 * @param flags A bitwise OR of #PurpleMessageFlags representing |
e37f85160784
Documented chat API. References #10605
sttwister@gmail.com
parents:
26985
diff
changeset
|
416 * message flags. |
e37f85160784
Documented chat API. References #10605
sttwister@gmail.com
parents:
26985
diff
changeset
|
417 * @return A positive number or 0 in case of succes, |
e37f85160784
Documented chat API. References #10605
sttwister@gmail.com
parents:
26985
diff
changeset
|
418 * a negative error number in case of failure. |
e37f85160784
Documented chat API. References #10605
sttwister@gmail.com
parents:
26985
diff
changeset
|
419 */ |
15823 | 420 int (*chat_send)(PurpleConnection *, int id, const char *message, PurpleMessageFlags flags); |
21750
fb8ab2490ac4
De-magic number the prpl_info->keepalive interval, and document it.
Will Thompson <will.thompson@collabora.co.uk>
parents:
21457
diff
changeset
|
421 |
fb8ab2490ac4
De-magic number the prpl_info->keepalive interval, and document it.
Will Thompson <will.thompson@collabora.co.uk>
parents:
21457
diff
changeset
|
422 /** If implemented, this will be called regularly for this prpl's |
fb8ab2490ac4
De-magic number the prpl_info->keepalive interval, and document it.
Will Thompson <will.thompson@collabora.co.uk>
parents:
21457
diff
changeset
|
423 * active connections. You'd want to do this if you need to repeatedly |
fb8ab2490ac4
De-magic number the prpl_info->keepalive interval, and document it.
Will Thompson <will.thompson@collabora.co.uk>
parents:
21457
diff
changeset
|
424 * send some kind of keepalive packet to the server to avoid being |
fb8ab2490ac4
De-magic number the prpl_info->keepalive interval, and document it.
Will Thompson <will.thompson@collabora.co.uk>
parents:
21457
diff
changeset
|
425 * disconnected. ("Regularly" is defined by |
fb8ab2490ac4
De-magic number the prpl_info->keepalive interval, and document it.
Will Thompson <will.thompson@collabora.co.uk>
parents:
21457
diff
changeset
|
426 * <code>KEEPALIVE_INTERVAL</code> in <tt>libpurple/connection.c</tt>.) |
fb8ab2490ac4
De-magic number the prpl_info->keepalive interval, and document it.
Will Thompson <will.thompson@collabora.co.uk>
parents:
21457
diff
changeset
|
427 */ |
15823 | 428 void (*keepalive)(PurpleConnection *); |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
429 |
19289
f12bf92d64ec
Add marginally better doxygen magic to PurplePluginProtocolInfo
Will Thompson <will.thompson@collabora.co.uk>
parents:
18179
diff
changeset
|
430 /** new user registration */ |
15823 | 431 void (*register_user)(PurpleAccount *); |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
432 |
20928
ed40911613a0
Try my hardest to get rid of some Doxygen warnings. One is left and I don't know why.
Richard Laager <rlaager@wiktel.com>
parents:
20903
diff
changeset
|
433 /** |
ed40911613a0
Try my hardest to get rid of some Doxygen warnings. One is left and I don't know why.
Richard Laager <rlaager@wiktel.com>
parents:
20903
diff
changeset
|
434 * @deprecated Use #PurplePluginProtocolInfo.get_info instead. |
20903
3375d44ccad7
Add some (but not much!) documentation to PurplePluginProtocolInfo.
Will Thompson <will.thompson@collabora.co.uk>
parents:
20074
diff
changeset
|
435 */ |
15823 | 436 void (*get_cb_info)(PurpleConnection *, int, const char *who); |
20928
ed40911613a0
Try my hardest to get rid of some Doxygen warnings. One is left and I don't know why.
Richard Laager <rlaager@wiktel.com>
parents:
20903
diff
changeset
|
437 /** |
ed40911613a0
Try my hardest to get rid of some Doxygen warnings. One is left and I don't know why.
Richard Laager <rlaager@wiktel.com>
parents:
20903
diff
changeset
|
438 * @deprecated Use #PurplePluginProtocolInfo.get_cb_real_name and |
ed40911613a0
Try my hardest to get rid of some Doxygen warnings. One is left and I don't know why.
Richard Laager <rlaager@wiktel.com>
parents:
20903
diff
changeset
|
439 * #PurplePluginProtocolInfo.status_text instead. |
20903
3375d44ccad7
Add some (but not much!) documentation to PurplePluginProtocolInfo.
Will Thompson <will.thompson@collabora.co.uk>
parents:
20074
diff
changeset
|
440 */ |
15823 | 441 void (*get_cb_away)(PurpleConnection *, int, const char *who); |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
442 |
19289
f12bf92d64ec
Add marginally better doxygen magic to PurplePluginProtocolInfo
Will Thompson <will.thompson@collabora.co.uk>
parents:
18179
diff
changeset
|
443 /** save/store buddy's alias on server list/roster */ |
15823 | 444 void (*alias_buddy)(PurpleConnection *, const char *who, |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
445 const char *alias); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
446 |
19289
f12bf92d64ec
Add marginally better doxygen magic to PurplePluginProtocolInfo
Will Thompson <will.thompson@collabora.co.uk>
parents:
18179
diff
changeset
|
447 /** change a buddy's group on a server list/roster */ |
15823 | 448 void (*group_buddy)(PurpleConnection *, const char *who, |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
449 const char *old_group, const char *new_group); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
450 |
19289
f12bf92d64ec
Add marginally better doxygen magic to PurplePluginProtocolInfo
Will Thompson <will.thompson@collabora.co.uk>
parents:
18179
diff
changeset
|
451 /** rename a group on a server list/roster */ |
15823 | 452 void (*rename_group)(PurpleConnection *, const char *old_name, |
453 PurpleGroup *group, GList *moved_buddies); | |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
454 |
15823 | 455 void (*buddy_free)(PurpleBuddy *); |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
456 |
15823 | 457 void (*convo_closed)(PurpleConnection *, const char *who); |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
458 |
19289
f12bf92d64ec
Add marginally better doxygen magic to PurplePluginProtocolInfo
Will Thompson <will.thompson@collabora.co.uk>
parents:
18179
diff
changeset
|
459 /** |
f12bf92d64ec
Add marginally better doxygen magic to PurplePluginProtocolInfo
Will Thompson <will.thompson@collabora.co.uk>
parents:
18179
diff
changeset
|
460 * Convert the username @a who to its canonical form. (For example, |
f12bf92d64ec
Add marginally better doxygen magic to PurplePluginProtocolInfo
Will Thompson <will.thompson@collabora.co.uk>
parents:
18179
diff
changeset
|
461 * AIM treats "fOo BaR" and "foobar" as the same user; this function |
f12bf92d64ec
Add marginally better doxygen magic to PurplePluginProtocolInfo
Will Thompson <will.thompson@collabora.co.uk>
parents:
18179
diff
changeset
|
462 * should return the same normalized string for both of those.) |
f12bf92d64ec
Add marginally better doxygen magic to PurplePluginProtocolInfo
Will Thompson <will.thompson@collabora.co.uk>
parents:
18179
diff
changeset
|
463 */ |
f12bf92d64ec
Add marginally better doxygen magic to PurplePluginProtocolInfo
Will Thompson <will.thompson@collabora.co.uk>
parents:
18179
diff
changeset
|
464 const char *(*normalize)(const PurpleAccount *, const char *who); |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
465 |
19289
f12bf92d64ec
Add marginally better doxygen magic to PurplePluginProtocolInfo
Will Thompson <will.thompson@collabora.co.uk>
parents:
18179
diff
changeset
|
466 /** |
f12bf92d64ec
Add marginally better doxygen magic to PurplePluginProtocolInfo
Will Thompson <will.thompson@collabora.co.uk>
parents:
18179
diff
changeset
|
467 * Set the buddy icon for the given connection to @a img. The prpl |
f12bf92d64ec
Add marginally better doxygen magic to PurplePluginProtocolInfo
Will Thompson <will.thompson@collabora.co.uk>
parents:
18179
diff
changeset
|
468 * does NOT own a reference to @a img; if it needs one, it must |
f12bf92d64ec
Add marginally better doxygen magic to PurplePluginProtocolInfo
Will Thompson <will.thompson@collabora.co.uk>
parents:
18179
diff
changeset
|
469 * #purple_imgstore_ref(@a img) itself. |
f12bf92d64ec
Add marginally better doxygen magic to PurplePluginProtocolInfo
Will Thompson <will.thompson@collabora.co.uk>
parents:
18179
diff
changeset
|
470 */ |
16390
4fc51a87ce42
Updates for the account buddy icon stuff. This doesn't yet work fully (and maybe not even partly), but it compiles.
Richard Laager <rlaager@wiktel.com>
parents:
15823
diff
changeset
|
471 void (*set_buddy_icon)(PurpleConnection *, PurpleStoredImage *img); |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
472 |
15823 | 473 void (*remove_group)(PurpleConnection *gc, PurpleGroup *group); |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
474 |
21039
5af17c5a4a12
Document PurplePluginProtocolInfo.get_cb_real_name
Will Thompson <will.thompson@collabora.co.uk>
parents:
21023
diff
changeset
|
475 /** Gets the real name of a participant in a chat. For example, on |
5af17c5a4a12
Document PurplePluginProtocolInfo.get_cb_real_name
Will Thompson <will.thompson@collabora.co.uk>
parents:
21023
diff
changeset
|
476 * XMPP this turns a chat room nick <tt>foo</tt> into |
21457
eb0f36c3a58f
Get rid of a few silly doxygen warnings
Mark Doliner <mark@kingant.net>
parents:
21039
diff
changeset
|
477 * <tt>room\@server/foo</tt> |
21039
5af17c5a4a12
Document PurplePluginProtocolInfo.get_cb_real_name
Will Thompson <will.thompson@collabora.co.uk>
parents:
21023
diff
changeset
|
478 * @param gc the connection on which the room is. |
5af17c5a4a12
Document PurplePluginProtocolInfo.get_cb_real_name
Will Thompson <will.thompson@collabora.co.uk>
parents:
21023
diff
changeset
|
479 * @param id the ID of the chat room. |
5af17c5a4a12
Document PurplePluginProtocolInfo.get_cb_real_name
Will Thompson <will.thompson@collabora.co.uk>
parents:
21023
diff
changeset
|
480 * @param who the nickname of the chat participant. |
5af17c5a4a12
Document PurplePluginProtocolInfo.get_cb_real_name
Will Thompson <will.thompson@collabora.co.uk>
parents:
21023
diff
changeset
|
481 * @return the real name of the participant. This string must be |
5af17c5a4a12
Document PurplePluginProtocolInfo.get_cb_real_name
Will Thompson <will.thompson@collabora.co.uk>
parents:
21023
diff
changeset
|
482 * freed by the caller. |
5af17c5a4a12
Document PurplePluginProtocolInfo.get_cb_real_name
Will Thompson <will.thompson@collabora.co.uk>
parents:
21023
diff
changeset
|
483 */ |
15823 | 484 char *(*get_cb_real_name)(PurpleConnection *gc, int id, const char *who); |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
485 |
15823 | 486 void (*set_chat_topic)(PurpleConnection *gc, int id, const char *topic); |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
487 |
15823 | 488 PurpleChat *(*find_blist_chat)(PurpleAccount *account, const char *name); |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
489 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
490 /* room listing prpl callbacks */ |
15823 | 491 PurpleRoomlist *(*roomlist_get_list)(PurpleConnection *gc); |
492 void (*roomlist_cancel)(PurpleRoomlist *list); | |
493 void (*roomlist_expand_category)(PurpleRoomlist *list, PurpleRoomlistRoom *category); | |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
494 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
495 /* file transfer callbacks */ |
15823 | 496 gboolean (*can_receive_file)(PurpleConnection *, const char *who); |
497 void (*send_file)(PurpleConnection *, const char *who, const char *filename); | |
498 PurpleXfer *(*new_xfer)(PurpleConnection *, const char *who); | |
21023
42ecde230f91
Documentation tweaks for the write_conv uiop and for prpl_info.offline_message.
Will Thompson <will.thompson@collabora.co.uk>
parents:
20928
diff
changeset
|
499 |
42ecde230f91
Documentation tweaks for the write_conv uiop and for prpl_info.offline_message.
Will Thompson <will.thompson@collabora.co.uk>
parents:
20928
diff
changeset
|
500 /** Checks whether offline messages to @a buddy are supported. |
42ecde230f91
Documentation tweaks for the write_conv uiop and for prpl_info.offline_message.
Will Thompson <will.thompson@collabora.co.uk>
parents:
20928
diff
changeset
|
501 * @return @c TRUE if @a buddy can be sent messages while they are |
42ecde230f91
Documentation tweaks for the write_conv uiop and for prpl_info.offline_message.
Will Thompson <will.thompson@collabora.co.uk>
parents:
20928
diff
changeset
|
502 * offline, or @c FALSE if not. |
42ecde230f91
Documentation tweaks for the write_conv uiop and for prpl_info.offline_message.
Will Thompson <will.thompson@collabora.co.uk>
parents:
20928
diff
changeset
|
503 */ |
15823 | 504 gboolean (*offline_message)(const PurpleBuddy *buddy); |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
505 |
15823 | 506 PurpleWhiteboardPrplOps *whiteboard_prpl_ops; |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
507 |
19289
f12bf92d64ec
Add marginally better doxygen magic to PurplePluginProtocolInfo
Will Thompson <will.thompson@collabora.co.uk>
parents:
18179
diff
changeset
|
508 /** For use in plugins that may understand the underlying protocol */ |
15823 | 509 int (*send_raw)(PurpleConnection *gc, const char *buf, int len); |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
510 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
511 /* room list serialize */ |
15823 | 512 char *(*roomlist_room_serialize)(PurpleRoomlistRoom *room); |
16672
516f14bef90e
Initial addition of padding for ui_ops and other class-like structs
Gary Kramlich <grim@reaperworld.com>
parents:
16479
diff
changeset
|
513 |
20903
3375d44ccad7
Add some (but not much!) documentation to PurplePluginProtocolInfo.
Will Thompson <will.thompson@collabora.co.uk>
parents:
20074
diff
changeset
|
514 /** Remove the user from the server. The account can either be |
3375d44ccad7
Add some (but not much!) documentation to PurplePluginProtocolInfo.
Will Thompson <will.thompson@collabora.co.uk>
parents:
20074
diff
changeset
|
515 * connected or disconnected. After the removal is finished, the |
3375d44ccad7
Add some (but not much!) documentation to PurplePluginProtocolInfo.
Will Thompson <will.thompson@collabora.co.uk>
parents:
20074
diff
changeset
|
516 * connection will stay open and has to be closed! |
3375d44ccad7
Add some (but not much!) documentation to PurplePluginProtocolInfo.
Will Thompson <will.thompson@collabora.co.uk>
parents:
20074
diff
changeset
|
517 */ |
3375d44ccad7
Add some (but not much!) documentation to PurplePluginProtocolInfo.
Will Thompson <will.thompson@collabora.co.uk>
parents:
20074
diff
changeset
|
518 /* This is here rather than next to register_user for API compatibility |
3375d44ccad7
Add some (but not much!) documentation to PurplePluginProtocolInfo.
Will Thompson <will.thompson@collabora.co.uk>
parents:
20074
diff
changeset
|
519 * reasons. |
18703
033b128f7c21
Added unregistering XMPP accounts. This requires a new prpl-struct entry, but I got an ok for that on the mailing list.
Andreas Monitzer <pidgin@monitzer.com>
parents:
18684
diff
changeset
|
520 */ |
18920
2a9d60d7af82
Implemented a callback for unregistering, mirroring the registration callback. Since this is a new API, I can do it properly by passing it right in the unregister function call, instead of having a separate function for setting it.
Andreas Monitzer <pidgin@monitzer.com>
parents:
18703
diff
changeset
|
521 void (*unregister_user)(PurpleAccount *, PurpleAccountUnregistrationCb cb, void *user_data); |
25415
584063555949
Remove trailing whitespace
Mark Doliner <mark@kingant.net>
parents:
24762
diff
changeset
|
522 |
19426
6395c2e96bc2
Attention API for nudges/buzzes/zaps of various protocols.
Jeffrey Connelly <jaconnel@calpoly.edu>
parents:
19289
diff
changeset
|
523 /* Attention API for sending & receiving zaps/nudges/buzzes etc. */ |
19463
3f6f84d11ce2
Change serv_send_attention() to call prpl_info->send_attention(), and
Jeffrey Connelly <jaconnel@calpoly.edu>
parents:
19461
diff
changeset
|
524 gboolean (*send_attention)(PurpleConnection *gc, const char *username, guint type); |
19702
45d028a68774
- Rename attention_types to get_attention_types, which seems more standard.
Richard Laager <rlaager@wiktel.com>
parents:
19696
diff
changeset
|
525 GList *(*get_attention_types)(PurpleAccount *acct); |
19463
3f6f84d11ce2
Change serv_send_attention() to call prpl_info->send_attention(), and
Jeffrey Connelly <jaconnel@calpoly.edu>
parents:
19461
diff
changeset
|
526 |
23111
718a9c287839
Use up the last padding for PurplePluginProtocolInfo in a way that allows
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
23107
diff
changeset
|
527 /** |
718a9c287839
Use up the last padding for PurplePluginProtocolInfo in a way that allows
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
23107
diff
changeset
|
528 * The size of the PurplePluginProtocolInfo. This should always be sizeof(PurplePluginProtocolInfo). |
718a9c287839
Use up the last padding for PurplePluginProtocolInfo in a way that allows
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
23107
diff
changeset
|
529 * This allows adding more functions to this struct without requiring a major version bump. |
718a9c287839
Use up the last padding for PurplePluginProtocolInfo in a way that allows
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
23107
diff
changeset
|
530 */ |
718a9c287839
Use up the last padding for PurplePluginProtocolInfo in a way that allows
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
23107
diff
changeset
|
531 unsigned long struct_size; |
718a9c287839
Use up the last padding for PurplePluginProtocolInfo in a way that allows
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
23107
diff
changeset
|
532 |
718a9c287839
Use up the last padding for PurplePluginProtocolInfo in a way that allows
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
23107
diff
changeset
|
533 /* NOTE: |
718a9c287839
Use up the last padding for PurplePluginProtocolInfo in a way that allows
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
23107
diff
changeset
|
534 * If more functions are added, they should accessed using the following syntax: |
718a9c287839
Use up the last padding for PurplePluginProtocolInfo in a way that allows
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
23107
diff
changeset
|
535 * |
718a9c287839
Use up the last padding for PurplePluginProtocolInfo in a way that allows
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
23107
diff
changeset
|
536 * if (PURPLE_PROTOCOL_PLUGIN_HAS_FUNC(prpl, new_function)) |
718a9c287839
Use up the last padding for PurplePluginProtocolInfo in a way that allows
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
23107
diff
changeset
|
537 * prpl->new_function(...); |
718a9c287839
Use up the last padding for PurplePluginProtocolInfo in a way that allows
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
23107
diff
changeset
|
538 * |
718a9c287839
Use up the last padding for PurplePluginProtocolInfo in a way that allows
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
23107
diff
changeset
|
539 * instead of |
718a9c287839
Use up the last padding for PurplePluginProtocolInfo in a way that allows
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
23107
diff
changeset
|
540 * |
718a9c287839
Use up the last padding for PurplePluginProtocolInfo in a way that allows
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
23107
diff
changeset
|
541 * if (prpl->new_function != NULL) |
718a9c287839
Use up the last padding for PurplePluginProtocolInfo in a way that allows
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
23107
diff
changeset
|
542 * prpl->new_function(...); |
718a9c287839
Use up the last padding for PurplePluginProtocolInfo in a way that allows
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
23107
diff
changeset
|
543 * |
718a9c287839
Use up the last padding for PurplePluginProtocolInfo in a way that allows
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
23107
diff
changeset
|
544 * The PURPLE_PROTOCOL_PLUGIN_HAS_FUNC macro can be used for the older member |
718a9c287839
Use up the last padding for PurplePluginProtocolInfo in a way that allows
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
23107
diff
changeset
|
545 * functions (e.g. login, send_im etc.) too. |
718a9c287839
Use up the last padding for PurplePluginProtocolInfo in a way that allows
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
23107
diff
changeset
|
546 */ |
23112
bb41bdce8981
Patch from Jaywalker to let prpls add some helpful text for some account
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
23111
diff
changeset
|
547 |
bb41bdce8981
Patch from Jaywalker to let prpls add some helpful text for some account
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
23111
diff
changeset
|
548 /** This allows protocols to specify additional strings to be used for |
bb41bdce8981
Patch from Jaywalker to let prpls add some helpful text for some account
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
23111
diff
changeset
|
549 * various purposes. The idea is to stuff a bunch of strings in this hash |
bb41bdce8981
Patch from Jaywalker to let prpls add some helpful text for some account
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
23111
diff
changeset
|
550 * table instead of expanding the struct for every addition. This hash |
bb41bdce8981
Patch from Jaywalker to let prpls add some helpful text for some account
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
23111
diff
changeset
|
551 * table is allocated every call and MUST be unrefed by the caller. |
bb41bdce8981
Patch from Jaywalker to let prpls add some helpful text for some account
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
23111
diff
changeset
|
552 * |
bb41bdce8981
Patch from Jaywalker to let prpls add some helpful text for some account
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
23111
diff
changeset
|
553 * @param account The account to specify. This can be NULL. |
bb41bdce8981
Patch from Jaywalker to let prpls add some helpful text for some account
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
23111
diff
changeset
|
554 * @return The protocol's string hash table. The hash table should be |
bb41bdce8981
Patch from Jaywalker to let prpls add some helpful text for some account
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
23111
diff
changeset
|
555 * destroyed by the caller when it's no longer needed. |
bb41bdce8981
Patch from Jaywalker to let prpls add some helpful text for some account
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
23111
diff
changeset
|
556 */ |
bb41bdce8981
Patch from Jaywalker to let prpls add some helpful text for some account
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
23111
diff
changeset
|
557 GHashTable *(*get_account_text_table)(PurpleAccount *account); |
29834
1fb503adb2ae
Move the mood UI for ICQ into Pidgin. It still uses the new request API
Richard Laager <rlaager@wiktel.com>
parents:
23616
diff
changeset
|
558 |
1fb503adb2ae
Move the mood UI for ICQ into Pidgin. It still uses the new request API
Richard Laager <rlaager@wiktel.com>
parents:
23616
diff
changeset
|
559 /** |
25719
1aa383ee5fc8
Fixed up media functions in prpl.c and prpl.h, adding more documentation and
Mike Ruprecht <maiku@soc.pidgin.im>
parents:
25718
diff
changeset
|
560 * Initiate a media session with the given contact. |
1aa383ee5fc8
Fixed up media functions in prpl.c and prpl.h, adding more documentation and
Mike Ruprecht <maiku@soc.pidgin.im>
parents:
25718
diff
changeset
|
561 * |
26606
df9042312063
Switch media to store accounts rather than connections.
Mike Ruprecht <maiku@soc.pidgin.im>
parents:
26479
diff
changeset
|
562 * @param account The account to initiate the media session on. |
25719
1aa383ee5fc8
Fixed up media functions in prpl.c and prpl.h, adding more documentation and
Mike Ruprecht <maiku@soc.pidgin.im>
parents:
25718
diff
changeset
|
563 * @param who The remote user to initiate the session with. |
1aa383ee5fc8
Fixed up media functions in prpl.c and prpl.h, adding more documentation and
Mike Ruprecht <maiku@soc.pidgin.im>
parents:
25718
diff
changeset
|
564 * @param type The type of media session to initiate. |
26447
34eb898478b4
Don't assume a PurpleMedia instance will be created immediately.
Mike Ruprecht <maiku@soc.pidgin.im>
parents:
26434
diff
changeset
|
565 * @return TRUE if the call succeeded else FALSE. (Doesn't imply the media session or stream will be successfully created) |
25719
1aa383ee5fc8
Fixed up media functions in prpl.c and prpl.h, adding more documentation and
Mike Ruprecht <maiku@soc.pidgin.im>
parents:
25718
diff
changeset
|
566 */ |
26606
df9042312063
Switch media to store accounts rather than connections.
Mike Ruprecht <maiku@soc.pidgin.im>
parents:
26479
diff
changeset
|
567 gboolean (*initiate_media)(PurpleAccount *account, const char *who, |
25720
551a462b346a
Changed PurpleMediaStreamType to PurpleMediaSessionType.
Mike Ruprecht <maiku@soc.pidgin.im>
parents:
25719
diff
changeset
|
568 PurpleMediaSessionType type); |
25657
ff29208e03ef
propagate from branch 'im.pidgin.pidgin' (head 75f0460d3679231b61d572e76fe02534a597c6b5)
Sadrul Habib Chowdhury <imadil@gmail.com>
diff
changeset
|
569 |
25719
1aa383ee5fc8
Fixed up media functions in prpl.c and prpl.h, adding more documentation and
Mike Ruprecht <maiku@soc.pidgin.im>
parents:
25718
diff
changeset
|
570 /** |
1aa383ee5fc8
Fixed up media functions in prpl.c and prpl.h, adding more documentation and
Mike Ruprecht <maiku@soc.pidgin.im>
parents:
25718
diff
changeset
|
571 * Checks to see if the given contact supports the given type of media session. |
1aa383ee5fc8
Fixed up media functions in prpl.c and prpl.h, adding more documentation and
Mike Ruprecht <maiku@soc.pidgin.im>
parents:
25718
diff
changeset
|
572 * |
26606
df9042312063
Switch media to store accounts rather than connections.
Mike Ruprecht <maiku@soc.pidgin.im>
parents:
26479
diff
changeset
|
573 * @param account The account the contact is on. |
25719
1aa383ee5fc8
Fixed up media functions in prpl.c and prpl.h, adding more documentation and
Mike Ruprecht <maiku@soc.pidgin.im>
parents:
25718
diff
changeset
|
574 * @param who The remote user to check for media capability with. |
26190
d6e23439b77c
Change purple_prpl_can_do_media to purple_prpl_get_media_caps.
Mike Ruprecht <maiku@soc.pidgin.im>
parents:
26062
diff
changeset
|
575 * @return The media caps the contact supports. |
25719
1aa383ee5fc8
Fixed up media functions in prpl.c and prpl.h, adding more documentation and
Mike Ruprecht <maiku@soc.pidgin.im>
parents:
25718
diff
changeset
|
576 */ |
26606
df9042312063
Switch media to store accounts rather than connections.
Mike Ruprecht <maiku@soc.pidgin.im>
parents:
26479
diff
changeset
|
577 PurpleMediaCaps (*get_media_caps)(PurpleAccount *account, |
26190
d6e23439b77c
Change purple_prpl_can_do_media to purple_prpl_get_media_caps.
Mike Ruprecht <maiku@soc.pidgin.im>
parents:
26062
diff
changeset
|
578 const char *who); |
29851
5391094529c6
propagate from branch 'im.pidgin.pidgin' (head a59a573e3b9b2eb42ff728ba9ff56095f5c9e0d0)
Richard Laager <rlaager@wiktel.com>
diff
changeset
|
579 |
5391094529c6
propagate from branch 'im.pidgin.pidgin' (head a59a573e3b9b2eb42ff728ba9ff56095f5c9e0d0)
Richard Laager <rlaager@wiktel.com>
diff
changeset
|
580 /** |
29834
1fb503adb2ae
Move the mood UI for ICQ into Pidgin. It still uses the new request API
Richard Laager <rlaager@wiktel.com>
parents:
23616
diff
changeset
|
581 * Returns an array of "PurpleMood"s, with the last one having |
29930
9f6a657af957
Allow showing moods for buddies when signed on using an XMPP account not
Marcus Lundblad <ml@update.uu.se>
parents:
29916
diff
changeset
|
582 * "mood" set to @c NULL. |
30262
2a436e0ce977
Add purple_account_[gs]et_public_alias functions, per discussion in d@cpi
Paul Aurich <paul@darkrain42.org>
parents:
30249
diff
changeset
|
583 * @since 2.7.0 |
29834
1fb503adb2ae
Move the mood UI for ICQ into Pidgin. It still uses the new request API
Richard Laager <rlaager@wiktel.com>
parents:
23616
diff
changeset
|
584 */ |
1fb503adb2ae
Move the mood UI for ICQ into Pidgin. It still uses the new request API
Richard Laager <rlaager@wiktel.com>
parents:
23616
diff
changeset
|
585 PurpleMood *(*get_moods)(PurpleAccount *account); |
30262
2a436e0ce977
Add purple_account_[gs]et_public_alias functions, per discussion in d@cpi
Paul Aurich <paul@darkrain42.org>
parents:
30249
diff
changeset
|
586 |
2a436e0ce977
Add purple_account_[gs]et_public_alias functions, per discussion in d@cpi
Paul Aurich <paul@darkrain42.org>
parents:
30249
diff
changeset
|
587 /** |
2a436e0ce977
Add purple_account_[gs]et_public_alias functions, per discussion in d@cpi
Paul Aurich <paul@darkrain42.org>
parents:
30249
diff
changeset
|
588 * Set the user's "friendly name" (or alias or nickname or |
2a436e0ce977
Add purple_account_[gs]et_public_alias functions, per discussion in d@cpi
Paul Aurich <paul@darkrain42.org>
parents:
30249
diff
changeset
|
589 * whatever term you want to call it) on the server. The |
2a436e0ce977
Add purple_account_[gs]et_public_alias functions, per discussion in d@cpi
Paul Aurich <paul@darkrain42.org>
parents:
30249
diff
changeset
|
590 * protocol plugin should call success_cb or failure_cb |
2a436e0ce977
Add purple_account_[gs]et_public_alias functions, per discussion in d@cpi
Paul Aurich <paul@darkrain42.org>
parents:
30249
diff
changeset
|
591 * *asynchronously* (if it knows immediately that the set will fail, |
2a436e0ce977
Add purple_account_[gs]et_public_alias functions, per discussion in d@cpi
Paul Aurich <paul@darkrain42.org>
parents:
30249
diff
changeset
|
592 * call one of the callbacks from an idle/0-second timeout) depending |
2a436e0ce977
Add purple_account_[gs]et_public_alias functions, per discussion in d@cpi
Paul Aurich <paul@darkrain42.org>
parents:
30249
diff
changeset
|
593 * on if the nickname is set successfully. |
2a436e0ce977
Add purple_account_[gs]et_public_alias functions, per discussion in d@cpi
Paul Aurich <paul@darkrain42.org>
parents:
30249
diff
changeset
|
594 * |
2a436e0ce977
Add purple_account_[gs]et_public_alias functions, per discussion in d@cpi
Paul Aurich <paul@darkrain42.org>
parents:
30249
diff
changeset
|
595 * @param gc The connection for which to set an alias |
2a436e0ce977
Add purple_account_[gs]et_public_alias functions, per discussion in d@cpi
Paul Aurich <paul@darkrain42.org>
parents:
30249
diff
changeset
|
596 * @param alias The new server-side alias/nickname for this account, |
2a436e0ce977
Add purple_account_[gs]et_public_alias functions, per discussion in d@cpi
Paul Aurich <paul@darkrain42.org>
parents:
30249
diff
changeset
|
597 * or NULL to unset the alias/nickname (or return it to |
2a436e0ce977
Add purple_account_[gs]et_public_alias functions, per discussion in d@cpi
Paul Aurich <paul@darkrain42.org>
parents:
30249
diff
changeset
|
598 * a protocol-specific "default"). |
2a436e0ce977
Add purple_account_[gs]et_public_alias functions, per discussion in d@cpi
Paul Aurich <paul@darkrain42.org>
parents:
30249
diff
changeset
|
599 * @param success_cb Callback to be called if the public alias is set |
2a436e0ce977
Add purple_account_[gs]et_public_alias functions, per discussion in d@cpi
Paul Aurich <paul@darkrain42.org>
parents:
30249
diff
changeset
|
600 * @param failure_cb Callback to be called if setting the public alias |
2a436e0ce977
Add purple_account_[gs]et_public_alias functions, per discussion in d@cpi
Paul Aurich <paul@darkrain42.org>
parents:
30249
diff
changeset
|
601 * fails |
2a436e0ce977
Add purple_account_[gs]et_public_alias functions, per discussion in d@cpi
Paul Aurich <paul@darkrain42.org>
parents:
30249
diff
changeset
|
602 * @see purple_account_set_public_alias |
2a436e0ce977
Add purple_account_[gs]et_public_alias functions, per discussion in d@cpi
Paul Aurich <paul@darkrain42.org>
parents:
30249
diff
changeset
|
603 * @since 2.7.0 |
2a436e0ce977
Add purple_account_[gs]et_public_alias functions, per discussion in d@cpi
Paul Aurich <paul@darkrain42.org>
parents:
30249
diff
changeset
|
604 */ |
2a436e0ce977
Add purple_account_[gs]et_public_alias functions, per discussion in d@cpi
Paul Aurich <paul@darkrain42.org>
parents:
30249
diff
changeset
|
605 void (*set_public_alias)(PurpleConnection *gc, const char *alias, |
2a436e0ce977
Add purple_account_[gs]et_public_alias functions, per discussion in d@cpi
Paul Aurich <paul@darkrain42.org>
parents:
30249
diff
changeset
|
606 PurpleSetPublicAliasSuccessCallback success_cb, |
2a436e0ce977
Add purple_account_[gs]et_public_alias functions, per discussion in d@cpi
Paul Aurich <paul@darkrain42.org>
parents:
30249
diff
changeset
|
607 PurpleSetPublicAliasFailureCallback failure_cb); |
2a436e0ce977
Add purple_account_[gs]et_public_alias functions, per discussion in d@cpi
Paul Aurich <paul@darkrain42.org>
parents:
30249
diff
changeset
|
608 /** |
2a436e0ce977
Add purple_account_[gs]et_public_alias functions, per discussion in d@cpi
Paul Aurich <paul@darkrain42.org>
parents:
30249
diff
changeset
|
609 * Retrieve the user's "friendly name" as set on the server. |
2a436e0ce977
Add purple_account_[gs]et_public_alias functions, per discussion in d@cpi
Paul Aurich <paul@darkrain42.org>
parents:
30249
diff
changeset
|
610 * The protocol plugin should call success_cb or failure_cb |
30311
ba0571f18075
Fix copy&paste typos.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30262
diff
changeset
|
611 * *asynchronously* (even if it knows immediately that the get will fail, |
30262
2a436e0ce977
Add purple_account_[gs]et_public_alias functions, per discussion in d@cpi
Paul Aurich <paul@darkrain42.org>
parents:
30249
diff
changeset
|
612 * call one of the callbacks from an idle/0-second timeout) depending |
2a436e0ce977
Add purple_account_[gs]et_public_alias functions, per discussion in d@cpi
Paul Aurich <paul@darkrain42.org>
parents:
30249
diff
changeset
|
613 * on if the nickname is retrieved. |
2a436e0ce977
Add purple_account_[gs]et_public_alias functions, per discussion in d@cpi
Paul Aurich <paul@darkrain42.org>
parents:
30249
diff
changeset
|
614 * |
2a436e0ce977
Add purple_account_[gs]et_public_alias functions, per discussion in d@cpi
Paul Aurich <paul@darkrain42.org>
parents:
30249
diff
changeset
|
615 * @param gc The connection for which to retireve the alias |
2a436e0ce977
Add purple_account_[gs]et_public_alias functions, per discussion in d@cpi
Paul Aurich <paul@darkrain42.org>
parents:
30249
diff
changeset
|
616 * @param success_cb Callback to be called with the retrieved alias |
2a436e0ce977
Add purple_account_[gs]et_public_alias functions, per discussion in d@cpi
Paul Aurich <paul@darkrain42.org>
parents:
30249
diff
changeset
|
617 * @param failure_cb Callback to be called if the prpl is unable to |
2a436e0ce977
Add purple_account_[gs]et_public_alias functions, per discussion in d@cpi
Paul Aurich <paul@darkrain42.org>
parents:
30249
diff
changeset
|
618 * retrieve the alias |
2a436e0ce977
Add purple_account_[gs]et_public_alias functions, per discussion in d@cpi
Paul Aurich <paul@darkrain42.org>
parents:
30249
diff
changeset
|
619 * @see purple_account_get_public_alias |
2a436e0ce977
Add purple_account_[gs]et_public_alias functions, per discussion in d@cpi
Paul Aurich <paul@darkrain42.org>
parents:
30249
diff
changeset
|
620 * @since 2.7.0 |
2a436e0ce977
Add purple_account_[gs]et_public_alias functions, per discussion in d@cpi
Paul Aurich <paul@darkrain42.org>
parents:
30249
diff
changeset
|
621 */ |
2a436e0ce977
Add purple_account_[gs]et_public_alias functions, per discussion in d@cpi
Paul Aurich <paul@darkrain42.org>
parents:
30249
diff
changeset
|
622 void (*get_public_alias)(PurpleConnection *gc, |
30311
ba0571f18075
Fix copy&paste typos.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30262
diff
changeset
|
623 PurpleGetPublicAliasSuccessCallback success_cb, |
ba0571f18075
Fix copy&paste typos.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
30262
diff
changeset
|
624 PurpleGetPublicAliasFailureCallback failure_cb); |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
625 }; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
626 |
23111
718a9c287839
Use up the last padding for PurplePluginProtocolInfo in a way that allows
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
23107
diff
changeset
|
627 #define PURPLE_PROTOCOL_PLUGIN_HAS_FUNC(prpl, member) \ |
718a9c287839
Use up the last padding for PurplePluginProtocolInfo in a way that allows
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
23107
diff
changeset
|
628 (((G_STRUCT_OFFSET(PurplePluginProtocolInfo, member) < G_STRUCT_OFFSET(PurplePluginProtocolInfo, struct_size)) \ |
718a9c287839
Use up the last padding for PurplePluginProtocolInfo in a way that allows
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
23107
diff
changeset
|
629 || (G_STRUCT_OFFSET(PurplePluginProtocolInfo, member) < prpl->struct_size)) && \ |
718a9c287839
Use up the last padding for PurplePluginProtocolInfo in a way that allows
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
23107
diff
changeset
|
630 prpl->member != NULL) |
718a9c287839
Use up the last padding for PurplePluginProtocolInfo in a way that allows
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
23107
diff
changeset
|
631 |
718a9c287839
Use up the last padding for PurplePluginProtocolInfo in a way that allows
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
23107
diff
changeset
|
632 |
15823 | 633 #define PURPLE_IS_PROTOCOL_PLUGIN(plugin) \ |
634 ((plugin)->info->type == PURPLE_PLUGIN_PROTOCOL) | |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
635 |
15823 | 636 #define PURPLE_PLUGIN_PROTOCOL_INFO(plugin) \ |
637 ((PurplePluginProtocolInfo *)(plugin)->info->extra_info) | |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
638 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
639 #ifdef __cplusplus |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
640 extern "C" { |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
641 #endif |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
642 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
643 /**************************************************************************/ |
22097
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
644 /** @name Attention Type API */ |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
645 /**************************************************************************/ |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
646 /*@{*/ |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
647 |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
648 /** |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
649 * Creates a new #PurpleAttentionType object and sets its mandatory parameters. |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
650 * |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
651 * @param ulname A non-localized string that can be used by UIs in need of such |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
652 * non-localized strings. This should be the same as @a name, |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
653 * without localization. |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
654 * @param name A localized string that the UI may display for the event. This |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
655 * should be the same string as @a ulname, with localization. |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
656 * @param inc_desc A localized description shown when the event is received. |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
657 * @param out_desc A localized description shown when the event is sent. |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
658 * @return A pointer to the new object. |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
659 * @since 2.4.0 |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
660 */ |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
661 PurpleAttentionType *purple_attention_type_new(const char *ulname, const char *name, |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
662 const char *inc_desc, const char *out_desc); |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
663 |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
664 /** |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
665 * Sets the displayed name of the attention-demanding event. |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
666 * |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
667 * @param type The attention type. |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
668 * @param name The localized name that will be displayed by UIs. This should be |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
669 * the same string given as the unlocalized name, but with |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
670 * localization. |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
671 * @since 2.4.0 |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
672 */ |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
673 void purple_attention_type_set_name(PurpleAttentionType *type, const char *name); |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
674 |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
675 /** |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
676 * Sets the description of the attention-demanding event shown in conversations |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
677 * when the event is received. |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
678 * |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
679 * @param type The attention type. |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
680 * @param desc The localized description for incoming events. |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
681 * @since 2.4.0 |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
682 */ |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
683 void purple_attention_type_set_incoming_desc(PurpleAttentionType *type, const char *desc); |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
684 |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
685 /** |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
686 * Sets the description of the attention-demanding event shown in conversations |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
687 * when the event is sent. |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
688 * |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
689 * @param type The attention type. |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
690 * @param desc The localized description for outgoing events. |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
691 * @since 2.4.0 |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
692 */ |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
693 void purple_attention_type_set_outgoing_desc(PurpleAttentionType *type, const char *desc); |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
694 |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
695 /** |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
696 * Sets the name of the icon to display for the attention event; this is optional. |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
697 * |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
698 * @param type The attention type. |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
699 * @param name The icon's name. |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
700 * @note Icons are optional for attention events. |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
701 * @since 2.4.0 |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
702 */ |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
703 void purple_attention_type_set_icon_name(PurpleAttentionType *type, const char *name); |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
704 |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
705 /** |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
706 * Sets the unlocalized name of the attention event; some UIs may need this, |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
707 * thus it is required. |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
708 * |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
709 * @param type The attention type. |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
710 * @param ulname The unlocalized name. This should be the same string given as |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
711 * the localized name, but without localization. |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
712 * @since 2.4.0 |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
713 */ |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
714 void purple_attention_type_set_unlocalized_name(PurpleAttentionType *type, const char *ulname); |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
715 |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
716 /** |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
717 * Get the attention type's name as displayed by the UI. |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
718 * |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
719 * @param type The attention type. |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
720 * @return The name. |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
721 * @since 2.4.0 |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
722 */ |
22122
f55f84a1e3f7
const-ify paramteters to some of the new API I added. I thought I did this already.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
22097
diff
changeset
|
723 const char *purple_attention_type_get_name(const PurpleAttentionType *type); |
22097
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
724 |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
725 /** |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
726 * Get the attention type's description shown when the event is received. |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
727 * |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
728 * @param type The attention type. |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
729 * @return The description. |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
730 * @since 2.4.0 |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
731 */ |
22122
f55f84a1e3f7
const-ify paramteters to some of the new API I added. I thought I did this already.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
22097
diff
changeset
|
732 const char *purple_attention_type_get_incoming_desc(const PurpleAttentionType *type); |
22097
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
733 |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
734 /** |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
735 * Get the attention type's description shown when the event is sent. |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
736 * |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
737 * @param type The attention type. |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
738 * @return The description. |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
739 * @since 2.4.0 |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
740 */ |
22122
f55f84a1e3f7
const-ify paramteters to some of the new API I added. I thought I did this already.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
22097
diff
changeset
|
741 const char *purple_attention_type_get_outgoing_desc(const PurpleAttentionType *type); |
22097
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
742 |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
743 /** |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
744 * Get the attention type's icon name. |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
745 * |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
746 * @param type The attention type. |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
747 * @return The icon name or @c NULL if unset/empty. |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
748 * @note Icons are optional for attention events. |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
749 * @since 2.4.0 |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
750 */ |
22122
f55f84a1e3f7
const-ify paramteters to some of the new API I added. I thought I did this already.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
22097
diff
changeset
|
751 const char *purple_attention_type_get_icon_name(const PurpleAttentionType *type); |
22097
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
752 |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
753 /** |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
754 * Get the attention type's unlocalized name; this is useful for some UIs. |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
755 * |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
756 * @param type The attention type |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
757 * @return The unlocalized name. |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
758 * @since 2.4.0 |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
759 */ |
22122
f55f84a1e3f7
const-ify paramteters to some of the new API I added. I thought I did this already.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
22097
diff
changeset
|
760 const char *purple_attention_type_get_unlocalized_name(const PurpleAttentionType *type); |
22097
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
761 |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
762 /*@}*/ |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
763 |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
764 /**************************************************************************/ |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
765 /** @name Protocol Plugin API */ |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
766 /**************************************************************************/ |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
767 /*@{*/ |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
768 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
769 /** |
25416
6e1967b0f90b
Change "screen name" to "username" or "buddy name" in a whole bunch of
Mark Doliner <mark@kingant.net>
parents:
25415
diff
changeset
|
770 * Notifies Purple that our account's idle state and time have changed. |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
771 * |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
772 * This is meant to be called from protocol plugins. |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
773 * |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
774 * @param account The account. |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
775 * @param idle The user's idle state. |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
776 * @param idle_time The user's idle time. |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
777 */ |
15823 | 778 void purple_prpl_got_account_idle(PurpleAccount *account, gboolean idle, |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
779 time_t idle_time); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
780 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
781 /** |
25416
6e1967b0f90b
Change "screen name" to "username" or "buddy name" in a whole bunch of
Mark Doliner <mark@kingant.net>
parents:
25415
diff
changeset
|
782 * Notifies Purple of our account's log-in time. |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
783 * |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
784 * This is meant to be called from protocol plugins. |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
785 * |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
786 * @param account The account the user is on. |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
787 * @param login_time The user's log-in time. |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
788 */ |
15823 | 789 void purple_prpl_got_account_login_time(PurpleAccount *account, time_t login_time); |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
790 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
791 /** |
25416
6e1967b0f90b
Change "screen name" to "username" or "buddy name" in a whole bunch of
Mark Doliner <mark@kingant.net>
parents:
25415
diff
changeset
|
792 * Notifies Purple that our account's status has changed. |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
793 * |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
794 * This is meant to be called from protocol plugins. |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
795 * |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
796 * @param account The account the user is on. |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
797 * @param status_id The status ID. |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
798 * @param ... A NULL-terminated list of attribute IDs and values, |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
799 * beginning with the value for @a attr_id. |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
800 */ |
15823 | 801 void purple_prpl_got_account_status(PurpleAccount *account, |
18179
72906c5ac037
Add G_GNUC_NULL_TERMINATED to a few functions that expect a NULL terminated
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18030
diff
changeset
|
802 const char *status_id, ...) G_GNUC_NULL_TERMINATED; |
25416
6e1967b0f90b
Change "screen name" to "username" or "buddy name" in a whole bunch of
Mark Doliner <mark@kingant.net>
parents:
25415
diff
changeset
|
803 |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
804 /** |
26776
83e6e710cbf3
Add a new signal which is emitted (after the account is connected) if the
Paul Aurich <paul@darkrain42.org>
parents:
26606
diff
changeset
|
805 * Notifies Purple that our account's actions have changed. This is only |
83e6e710cbf3
Add a new signal which is emitted (after the account is connected) if the
Paul Aurich <paul@darkrain42.org>
parents:
26606
diff
changeset
|
806 * called after the initial connection. Emits the account-actions-changed |
83e6e710cbf3
Add a new signal which is emitted (after the account is connected) if the
Paul Aurich <paul@darkrain42.org>
parents:
26606
diff
changeset
|
807 * signal. |
83e6e710cbf3
Add a new signal which is emitted (after the account is connected) if the
Paul Aurich <paul@darkrain42.org>
parents:
26606
diff
changeset
|
808 * |
83e6e710cbf3
Add a new signal which is emitted (after the account is connected) if the
Paul Aurich <paul@darkrain42.org>
parents:
26606
diff
changeset
|
809 * This is meant to be called from protocol plugins. |
83e6e710cbf3
Add a new signal which is emitted (after the account is connected) if the
Paul Aurich <paul@darkrain42.org>
parents:
26606
diff
changeset
|
810 * |
83e6e710cbf3
Add a new signal which is emitted (after the account is connected) if the
Paul Aurich <paul@darkrain42.org>
parents:
26606
diff
changeset
|
811 * @param account The account. |
83e6e710cbf3
Add a new signal which is emitted (after the account is connected) if the
Paul Aurich <paul@darkrain42.org>
parents:
26606
diff
changeset
|
812 * |
83e6e710cbf3
Add a new signal which is emitted (after the account is connected) if the
Paul Aurich <paul@darkrain42.org>
parents:
26606
diff
changeset
|
813 * @see account-actions-changed |
83e6e710cbf3
Add a new signal which is emitted (after the account is connected) if the
Paul Aurich <paul@darkrain42.org>
parents:
26606
diff
changeset
|
814 * @since 2.6.0 |
83e6e710cbf3
Add a new signal which is emitted (after the account is connected) if the
Paul Aurich <paul@darkrain42.org>
parents:
26606
diff
changeset
|
815 */ |
83e6e710cbf3
Add a new signal which is emitted (after the account is connected) if the
Paul Aurich <paul@darkrain42.org>
parents:
26606
diff
changeset
|
816 void purple_prpl_got_account_actions(PurpleAccount *account); |
83e6e710cbf3
Add a new signal which is emitted (after the account is connected) if the
Paul Aurich <paul@darkrain42.org>
parents:
26606
diff
changeset
|
817 |
83e6e710cbf3
Add a new signal which is emitted (after the account is connected) if the
Paul Aurich <paul@darkrain42.org>
parents:
26606
diff
changeset
|
818 /** |
25416
6e1967b0f90b
Change "screen name" to "username" or "buddy name" in a whole bunch of
Mark Doliner <mark@kingant.net>
parents:
25415
diff
changeset
|
819 * Notifies Purple that a buddy's idle state and time have changed. |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
820 * |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
821 * This is meant to be called from protocol plugins. |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
822 * |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
823 * @param account The account the user is on. |
25416
6e1967b0f90b
Change "screen name" to "username" or "buddy name" in a whole bunch of
Mark Doliner <mark@kingant.net>
parents:
25415
diff
changeset
|
824 * @param name The name of the buddy. |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
825 * @param idle The user's idle state. |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
826 * @param idle_time The user's idle time. This is the time at |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
827 * which the user became idle, in seconds since |
24762
9216da5184a2
Add a comment that 0 should be used when a buddies idle time is unknown
Mark Doliner <mark@kingant.net>
parents:
24635
diff
changeset
|
828 * the epoch. If the PRPL does not know this value |
9216da5184a2
Add a comment that 0 should be used when a buddies idle time is unknown
Mark Doliner <mark@kingant.net>
parents:
24635
diff
changeset
|
829 * then it should pass 0. |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
830 */ |
15823 | 831 void purple_prpl_got_user_idle(PurpleAccount *account, const char *name, |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
832 gboolean idle, time_t idle_time); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
833 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
834 /** |
25416
6e1967b0f90b
Change "screen name" to "username" or "buddy name" in a whole bunch of
Mark Doliner <mark@kingant.net>
parents:
25415
diff
changeset
|
835 * Notifies Purple of a buddy's log-in time. |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
836 * |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
837 * This is meant to be called from protocol plugins. |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
838 * |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
839 * @param account The account the user is on. |
25416
6e1967b0f90b
Change "screen name" to "username" or "buddy name" in a whole bunch of
Mark Doliner <mark@kingant.net>
parents:
25415
diff
changeset
|
840 * @param name The name of the buddy. |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
841 * @param login_time The user's log-in time. |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
842 */ |
15823 | 843 void purple_prpl_got_user_login_time(PurpleAccount *account, const char *name, |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
844 time_t login_time); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
845 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
846 /** |
25416
6e1967b0f90b
Change "screen name" to "username" or "buddy name" in a whole bunch of
Mark Doliner <mark@kingant.net>
parents:
25415
diff
changeset
|
847 * Notifies Purple that a buddy's status has been activated. |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
848 * |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
849 * This is meant to be called from protocol plugins. |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
850 * |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
851 * @param account The account the user is on. |
25416
6e1967b0f90b
Change "screen name" to "username" or "buddy name" in a whole bunch of
Mark Doliner <mark@kingant.net>
parents:
25415
diff
changeset
|
852 * @param name The name of the buddy. |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
853 * @param status_id The status ID. |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
854 * @param ... A NULL-terminated list of attribute IDs and values, |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
855 * beginning with the value for @a attr_id. |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
856 */ |
15823 | 857 void purple_prpl_got_user_status(PurpleAccount *account, const char *name, |
18179
72906c5ac037
Add G_GNUC_NULL_TERMINATED to a few functions that expect a NULL terminated
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
18030
diff
changeset
|
858 const char *status_id, ...) G_GNUC_NULL_TERMINATED; |
15524
84b3ab83df35
Use the status API to handle mobileness, and convert AIM to use it. This makes mobile buddies prioritze lower in Perons, and ensures the UI is notified of changes in mobileness. Other protocols to follow.
Sean Egan <seanegan@gmail.com>
parents:
15463
diff
changeset
|
859 |
84b3ab83df35
Use the status API to handle mobileness, and convert AIM to use it. This makes mobile buddies prioritze lower in Perons, and ensures the UI is notified of changes in mobileness. Other protocols to follow.
Sean Egan <seanegan@gmail.com>
parents:
15463
diff
changeset
|
860 /** |
25416
6e1967b0f90b
Change "screen name" to "username" or "buddy name" in a whole bunch of
Mark Doliner <mark@kingant.net>
parents:
25415
diff
changeset
|
861 * Notifies libpurple that a buddy's status has been deactivated |
15524
84b3ab83df35
Use the status API to handle mobileness, and convert AIM to use it. This makes mobile buddies prioritze lower in Perons, and ensures the UI is notified of changes in mobileness. Other protocols to follow.
Sean Egan <seanegan@gmail.com>
parents:
15463
diff
changeset
|
862 * |
84b3ab83df35
Use the status API to handle mobileness, and convert AIM to use it. This makes mobile buddies prioritze lower in Perons, and ensures the UI is notified of changes in mobileness. Other protocols to follow.
Sean Egan <seanegan@gmail.com>
parents:
15463
diff
changeset
|
863 * This is meant to be called from protocol plugins. |
84b3ab83df35
Use the status API to handle mobileness, and convert AIM to use it. This makes mobile buddies prioritze lower in Perons, and ensures the UI is notified of changes in mobileness. Other protocols to follow.
Sean Egan <seanegan@gmail.com>
parents:
15463
diff
changeset
|
864 * |
84b3ab83df35
Use the status API to handle mobileness, and convert AIM to use it. This makes mobile buddies prioritze lower in Perons, and ensures the UI is notified of changes in mobileness. Other protocols to follow.
Sean Egan <seanegan@gmail.com>
parents:
15463
diff
changeset
|
865 * @param account The account the user is on. |
25416
6e1967b0f90b
Change "screen name" to "username" or "buddy name" in a whole bunch of
Mark Doliner <mark@kingant.net>
parents:
25415
diff
changeset
|
866 * @param name The name of the buddy. |
15524
84b3ab83df35
Use the status API to handle mobileness, and convert AIM to use it. This makes mobile buddies prioritze lower in Perons, and ensures the UI is notified of changes in mobileness. Other protocols to follow.
Sean Egan <seanegan@gmail.com>
parents:
15463
diff
changeset
|
867 * @param status_id The status ID. |
84b3ab83df35
Use the status API to handle mobileness, and convert AIM to use it. This makes mobile buddies prioritze lower in Perons, and ensures the UI is notified of changes in mobileness. Other protocols to follow.
Sean Egan <seanegan@gmail.com>
parents:
15463
diff
changeset
|
868 */ |
15823 | 869 void purple_prpl_got_user_status_deactive(PurpleAccount *account, const char *name, |
15524
84b3ab83df35
Use the status API to handle mobileness, and convert AIM to use it. This makes mobile buddies prioritze lower in Perons, and ensures the UI is notified of changes in mobileness. Other protocols to follow.
Sean Egan <seanegan@gmail.com>
parents:
15463
diff
changeset
|
870 const char *status_id); |
25415
584063555949
Remove trailing whitespace
Mark Doliner <mark@kingant.net>
parents:
24762
diff
changeset
|
871 |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
872 /** |
25416
6e1967b0f90b
Change "screen name" to "username" or "buddy name" in a whole bunch of
Mark Doliner <mark@kingant.net>
parents:
25415
diff
changeset
|
873 * Informs the server that our account's status changed. |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
874 * |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
875 * @param account The account the user is on. |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
876 * @param old_status The previous status. |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
877 * @param new_status The status that was activated, or deactivated |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
878 * (in the case of independent statuses). |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
879 */ |
15823 | 880 void purple_prpl_change_account_status(PurpleAccount *account, |
881 PurpleStatus *old_status, | |
882 PurpleStatus *new_status); | |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
883 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
884 /** |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
885 * Retrieves the list of stock status types from a prpl. |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
886 * |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
887 * @param account The account the user is on. |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
888 * @param presence The presence for which we're going to get statuses |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
889 * |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
890 * @return List of statuses |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
891 */ |
15823 | 892 GList *purple_prpl_get_statuses(PurpleAccount *account, PurplePresence *presence); |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
893 |
25416
6e1967b0f90b
Change "screen name" to "username" or "buddy name" in a whole bunch of
Mark Doliner <mark@kingant.net>
parents:
25415
diff
changeset
|
894 /** |
6e1967b0f90b
Change "screen name" to "username" or "buddy name" in a whole bunch of
Mark Doliner <mark@kingant.net>
parents:
25415
diff
changeset
|
895 * Send an attention request message. |
23616
49850f7ca393
Add purple_prpl_got_attention_in_chat, then deprecate
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23373
diff
changeset
|
896 * |
49850f7ca393
Add purple_prpl_got_attention_in_chat, then deprecate
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23373
diff
changeset
|
897 * @param gc The connection to send the message on. |
49850f7ca393
Add purple_prpl_got_attention_in_chat, then deprecate
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23373
diff
changeset
|
898 * @param who Whose attention to request. |
49850f7ca393
Add purple_prpl_got_attention_in_chat, then deprecate
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23373
diff
changeset
|
899 * @param type_code An index into the prpl's attention_types list determining the type |
25416
6e1967b0f90b
Change "screen name" to "username" or "buddy name" in a whole bunch of
Mark Doliner <mark@kingant.net>
parents:
25415
diff
changeset
|
900 * of the attention request command to send. 0 if prpl only defines one |
6e1967b0f90b
Change "screen name" to "username" or "buddy name" in a whole bunch of
Mark Doliner <mark@kingant.net>
parents:
25415
diff
changeset
|
901 * (for example, Yahoo and MSN), but some protocols define more (MySpaceIM). |
23616
49850f7ca393
Add purple_prpl_got_attention_in_chat, then deprecate
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23373
diff
changeset
|
902 * |
49850f7ca393
Add purple_prpl_got_attention_in_chat, then deprecate
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23373
diff
changeset
|
903 * Note that you can't send arbitrary PurpleAttentionType's, because there is |
49850f7ca393
Add purple_prpl_got_attention_in_chat, then deprecate
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23373
diff
changeset
|
904 * only a fixed set of attention commands. |
25416
6e1967b0f90b
Change "screen name" to "username" or "buddy name" in a whole bunch of
Mark Doliner <mark@kingant.net>
parents:
25415
diff
changeset
|
905 * |
23616
49850f7ca393
Add purple_prpl_got_attention_in_chat, then deprecate
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23373
diff
changeset
|
906 * @since 2.5.0 |
49850f7ca393
Add purple_prpl_got_attention_in_chat, then deprecate
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23373
diff
changeset
|
907 */ |
49850f7ca393
Add purple_prpl_got_attention_in_chat, then deprecate
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23373
diff
changeset
|
908 void purple_prpl_send_attention(PurpleConnection *gc, const char *who, guint type_code); |
49850f7ca393
Add purple_prpl_got_attention_in_chat, then deprecate
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23373
diff
changeset
|
909 |
25416
6e1967b0f90b
Change "screen name" to "username" or "buddy name" in a whole bunch of
Mark Doliner <mark@kingant.net>
parents:
25415
diff
changeset
|
910 /** |
6e1967b0f90b
Change "screen name" to "username" or "buddy name" in a whole bunch of
Mark Doliner <mark@kingant.net>
parents:
25415
diff
changeset
|
911 * Process an incoming attention message. |
23616
49850f7ca393
Add purple_prpl_got_attention_in_chat, then deprecate
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23373
diff
changeset
|
912 * |
49850f7ca393
Add purple_prpl_got_attention_in_chat, then deprecate
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23373
diff
changeset
|
913 * @param gc The connection that received the attention message. |
49850f7ca393
Add purple_prpl_got_attention_in_chat, then deprecate
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23373
diff
changeset
|
914 * @param who Who requested your attention. |
49850f7ca393
Add purple_prpl_got_attention_in_chat, then deprecate
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23373
diff
changeset
|
915 * @param type_code An index into the prpl's attention_types list determining the type |
25416
6e1967b0f90b
Change "screen name" to "username" or "buddy name" in a whole bunch of
Mark Doliner <mark@kingant.net>
parents:
25415
diff
changeset
|
916 * of the attention request command to send. |
6e1967b0f90b
Change "screen name" to "username" or "buddy name" in a whole bunch of
Mark Doliner <mark@kingant.net>
parents:
25415
diff
changeset
|
917 * |
23616
49850f7ca393
Add purple_prpl_got_attention_in_chat, then deprecate
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23373
diff
changeset
|
918 * @since 2.5.0 |
49850f7ca393
Add purple_prpl_got_attention_in_chat, then deprecate
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23373
diff
changeset
|
919 */ |
49850f7ca393
Add purple_prpl_got_attention_in_chat, then deprecate
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23373
diff
changeset
|
920 void purple_prpl_got_attention(PurpleConnection *gc, const char *who, guint type_code); |
49850f7ca393
Add purple_prpl_got_attention_in_chat, then deprecate
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23373
diff
changeset
|
921 |
25416
6e1967b0f90b
Change "screen name" to "username" or "buddy name" in a whole bunch of
Mark Doliner <mark@kingant.net>
parents:
25415
diff
changeset
|
922 /** |
6e1967b0f90b
Change "screen name" to "username" or "buddy name" in a whole bunch of
Mark Doliner <mark@kingant.net>
parents:
25415
diff
changeset
|
923 * Process an incoming attention message in a chat. |
23616
49850f7ca393
Add purple_prpl_got_attention_in_chat, then deprecate
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23373
diff
changeset
|
924 * |
49850f7ca393
Add purple_prpl_got_attention_in_chat, then deprecate
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23373
diff
changeset
|
925 * @param gc The connection that received the attention message. |
49850f7ca393
Add purple_prpl_got_attention_in_chat, then deprecate
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23373
diff
changeset
|
926 * @param id The chat id. |
49850f7ca393
Add purple_prpl_got_attention_in_chat, then deprecate
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23373
diff
changeset
|
927 * @param who Who requested your attention. |
49850f7ca393
Add purple_prpl_got_attention_in_chat, then deprecate
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23373
diff
changeset
|
928 * @param type_code An index into the prpl's attention_types list determining the type |
25416
6e1967b0f90b
Change "screen name" to "username" or "buddy name" in a whole bunch of
Mark Doliner <mark@kingant.net>
parents:
25415
diff
changeset
|
929 * of the attention request command to send. |
6e1967b0f90b
Change "screen name" to "username" or "buddy name" in a whole bunch of
Mark Doliner <mark@kingant.net>
parents:
25415
diff
changeset
|
930 * |
23616
49850f7ca393
Add purple_prpl_got_attention_in_chat, then deprecate
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23373
diff
changeset
|
931 * @since 2.5.0 |
49850f7ca393
Add purple_prpl_got_attention_in_chat, then deprecate
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23373
diff
changeset
|
932 */ |
49850f7ca393
Add purple_prpl_got_attention_in_chat, then deprecate
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23373
diff
changeset
|
933 void purple_prpl_got_attention_in_chat(PurpleConnection *gc, int id, const char *who, guint type_code); |
49850f7ca393
Add purple_prpl_got_attention_in_chat, then deprecate
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23373
diff
changeset
|
934 |
25709
eb8c8a926589
Convert serv_* media functions to purple_prpl_* functions.
Mike Ruprecht <maiku@soc.pidgin.im>
parents:
25690
diff
changeset
|
935 /** |
eb8c8a926589
Convert serv_* media functions to purple_prpl_* functions.
Mike Ruprecht <maiku@soc.pidgin.im>
parents:
25690
diff
changeset
|
936 * Determines if the contact supports the given media session type. |
eb8c8a926589
Convert serv_* media functions to purple_prpl_* functions.
Mike Ruprecht <maiku@soc.pidgin.im>
parents:
25690
diff
changeset
|
937 * |
eb8c8a926589
Convert serv_* media functions to purple_prpl_* functions.
Mike Ruprecht <maiku@soc.pidgin.im>
parents:
25690
diff
changeset
|
938 * @param account The account the user is on. |
eb8c8a926589
Convert serv_* media functions to purple_prpl_* functions.
Mike Ruprecht <maiku@soc.pidgin.im>
parents:
25690
diff
changeset
|
939 * @param who The name of the contact to check capabilities for. |
eb8c8a926589
Convert serv_* media functions to purple_prpl_* functions.
Mike Ruprecht <maiku@soc.pidgin.im>
parents:
25690
diff
changeset
|
940 * |
26190
d6e23439b77c
Change purple_prpl_can_do_media to purple_prpl_get_media_caps.
Mike Ruprecht <maiku@soc.pidgin.im>
parents:
26062
diff
changeset
|
941 * @return The media caps the contact supports. |
25709
eb8c8a926589
Convert serv_* media functions to purple_prpl_* functions.
Mike Ruprecht <maiku@soc.pidgin.im>
parents:
25690
diff
changeset
|
942 */ |
26190
d6e23439b77c
Change purple_prpl_can_do_media to purple_prpl_get_media_caps.
Mike Ruprecht <maiku@soc.pidgin.im>
parents:
26062
diff
changeset
|
943 PurpleMediaCaps purple_prpl_get_media_caps(PurpleAccount *account, |
d6e23439b77c
Change purple_prpl_can_do_media to purple_prpl_get_media_caps.
Mike Ruprecht <maiku@soc.pidgin.im>
parents:
26062
diff
changeset
|
944 const char *who); |
25709
eb8c8a926589
Convert serv_* media functions to purple_prpl_* functions.
Mike Ruprecht <maiku@soc.pidgin.im>
parents:
25690
diff
changeset
|
945 |
eb8c8a926589
Convert serv_* media functions to purple_prpl_* functions.
Mike Ruprecht <maiku@soc.pidgin.im>
parents:
25690
diff
changeset
|
946 /** |
eb8c8a926589
Convert serv_* media functions to purple_prpl_* functions.
Mike Ruprecht <maiku@soc.pidgin.im>
parents:
25690
diff
changeset
|
947 * Initiates a media session with the given contact. |
eb8c8a926589
Convert serv_* media functions to purple_prpl_* functions.
Mike Ruprecht <maiku@soc.pidgin.im>
parents:
25690
diff
changeset
|
948 * |
eb8c8a926589
Convert serv_* media functions to purple_prpl_* functions.
Mike Ruprecht <maiku@soc.pidgin.im>
parents:
25690
diff
changeset
|
949 * @param account The account the user is on. |
eb8c8a926589
Convert serv_* media functions to purple_prpl_* functions.
Mike Ruprecht <maiku@soc.pidgin.im>
parents:
25690
diff
changeset
|
950 * @param who The name of the contact to start a session with. |
eb8c8a926589
Convert serv_* media functions to purple_prpl_* functions.
Mike Ruprecht <maiku@soc.pidgin.im>
parents:
25690
diff
changeset
|
951 * @param type The type of media session to start. |
eb8c8a926589
Convert serv_* media functions to purple_prpl_* functions.
Mike Ruprecht <maiku@soc.pidgin.im>
parents:
25690
diff
changeset
|
952 * |
26447
34eb898478b4
Don't assume a PurpleMedia instance will be created immediately.
Mike Ruprecht <maiku@soc.pidgin.im>
parents:
26434
diff
changeset
|
953 * @return TRUE if the call succeeded else FALSE. (Doesn't imply the media session or stream will be successfully created) |
25709
eb8c8a926589
Convert serv_* media functions to purple_prpl_* functions.
Mike Ruprecht <maiku@soc.pidgin.im>
parents:
25690
diff
changeset
|
954 */ |
26447
34eb898478b4
Don't assume a PurpleMedia instance will be created immediately.
Mike Ruprecht <maiku@soc.pidgin.im>
parents:
26434
diff
changeset
|
955 gboolean purple_prpl_initiate_media(PurpleAccount *account, |
25709
eb8c8a926589
Convert serv_* media functions to purple_prpl_* functions.
Mike Ruprecht <maiku@soc.pidgin.im>
parents:
25690
diff
changeset
|
956 const char *who, |
25720
551a462b346a
Changed PurpleMediaStreamType to PurpleMediaSessionType.
Mike Ruprecht <maiku@soc.pidgin.im>
parents:
25719
diff
changeset
|
957 PurpleMediaSessionType type); |
25709
eb8c8a926589
Convert serv_* media functions to purple_prpl_* functions.
Mike Ruprecht <maiku@soc.pidgin.im>
parents:
25690
diff
changeset
|
958 |
29528
4f14b03a9d50
Add the purple_media_got_media_caps function in order to signal when a prpl
maiku@pidgin.im
parents:
26985
diff
changeset
|
959 /** |
4f14b03a9d50
Add the purple_media_got_media_caps function in order to signal when a prpl
maiku@pidgin.im
parents:
26985
diff
changeset
|
960 * Signals that the prpl received capabilities for the given contact. |
4f14b03a9d50
Add the purple_media_got_media_caps function in order to signal when a prpl
maiku@pidgin.im
parents:
26985
diff
changeset
|
961 * |
4f14b03a9d50
Add the purple_media_got_media_caps function in order to signal when a prpl
maiku@pidgin.im
parents:
26985
diff
changeset
|
962 * This function is intended to be used only by prpls. |
4f14b03a9d50
Add the purple_media_got_media_caps function in order to signal when a prpl
maiku@pidgin.im
parents:
26985
diff
changeset
|
963 * |
4f14b03a9d50
Add the purple_media_got_media_caps function in order to signal when a prpl
maiku@pidgin.im
parents:
26985
diff
changeset
|
964 * @param account The account the user is on. |
4f14b03a9d50
Add the purple_media_got_media_caps function in order to signal when a prpl
maiku@pidgin.im
parents:
26985
diff
changeset
|
965 * @param who The name of the contact for which capabilities have been received. |
4f14b03a9d50
Add the purple_media_got_media_caps function in order to signal when a prpl
maiku@pidgin.im
parents:
26985
diff
changeset
|
966 * @since 2.7.0 |
4f14b03a9d50
Add the purple_media_got_media_caps function in order to signal when a prpl
maiku@pidgin.im
parents:
26985
diff
changeset
|
967 */ |
4f14b03a9d50
Add the purple_media_got_media_caps function in order to signal when a prpl
maiku@pidgin.im
parents:
26985
diff
changeset
|
968 void purple_prpl_got_media_caps(PurpleAccount *account, const char *who); |
4f14b03a9d50
Add the purple_media_got_media_caps function in order to signal when a prpl
maiku@pidgin.im
parents:
26985
diff
changeset
|
969 |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
970 /*@}*/ |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
971 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
972 /**************************************************************************/ |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
973 /** @name Protocol Plugin Subsystem API */ |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
974 /**************************************************************************/ |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
975 /*@{*/ |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
976 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
977 /** |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
978 * Finds a protocol plugin structure of the specified type. |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
979 * |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
980 * @param id The protocol plugin; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
981 */ |
15823 | 982 PurplePlugin *purple_find_prpl(const char *id); |
15374
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
983 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
984 /*@}*/ |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
985 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
986 #ifdef __cplusplus |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
987 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
988 #endif |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
989 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
990 #endif /* _PRPL_H_ */ |