Mercurial > pidgin
annotate libpurple/prpl.h @ 26476:cd1f3a1750a1
And google session handling
(it turns out this workingdir was --disable-vv. whoops...)
author | Paul Aurich <paul@darkrain42.org> |
---|---|
date | Sat, 04 Apr 2009 08:02:52 +0000 |
parents | f5f08111da52 |
children | df9042312063 b290c7b9fc73 5391094529c6 |
rev | line source |
---|---|
15373
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:
19703
diff
changeset
|
4 */ |
6bf32c9e15a7
remove gpl boilerplate from doxygen docs
Sean Egan <seanegan@gmail.com>
parents:
19703
diff
changeset
|
5 |
6bf32c9e15a7
remove gpl boilerplate from doxygen docs
Sean Egan <seanegan@gmail.com>
parents:
19703
diff
changeset
|
6 /* purple |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
7 * |
15822 | 8 * Purple is the legal property of its developers, whose names are too numerous |
15373
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 |
19681
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 |
15373
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 |
15822 | 28 * this file, they should get glib, proxy, purple_connection, prpl, etc. */ |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
29 |
15822 | 30 #ifndef _PURPLE_PRPL_H_ |
31 #define _PURPLE_PRPL_H_ | |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
32 |
15822 | 33 typedef struct _PurplePluginProtocolInfo PurplePluginProtocolInfo; |
23371
3f92fd48d19a
document PurpleAttentionType slightly
Will Thompson <will.thompson@collabora.co.uk>
parents:
23208
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; |
15373
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 { |
15822 | 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; | |
15373
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 /** |
15822 | 48 * A description of a Buddy Icon specification. This tells Purple what kind of image file |
15373
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 */ |
15822 | 52 typedef struct _PurpleBuddyIconSpec PurpleBuddyIconSpec; |
15373
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 /** |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
55 * 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
|
56 * 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
|
57 */ |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
58 #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
|
59 |
17343
8c056932bcc2
Don't include unistd.h if HAVE_UNISTD_H isn't defined.
Daniel Atallah <daniel.atallah@gmail.com>
parents:
16904
diff
changeset
|
60 #ifdef HAVE_UNISTD_H |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
61 #include <unistd.h> |
17343
8c056932bcc2
Don't include unistd.h if HAVE_UNISTD_H isn't defined.
Daniel Atallah <daniel.atallah@gmail.com>
parents:
16904
diff
changeset
|
62 #endif |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
63 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
64 #include "blist.h" |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
65 #include "conversation.h" |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
66 #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:
15822
diff
changeset
|
67 #include "imgstore.h" |
23759
315151da0dc6
Basic Google Talk voice call support. No UI; receiving a call auto-accepts it.
Sean Egan <seanegan@gmail.com>
parents:
19463
diff
changeset
|
68 #include "media.h" |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
69 #include "notify.h" |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
70 #include "proxy.h" |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
71 #include "plugin.h" |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
72 #include "roomlist.h" |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
73 #include "status.h" |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
74 #include "whiteboard.h" |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
75 |
23208
d3fb9d9b57e2
Add doxycomment for PurpleBuddyIcon; tweak that of PurpleBuddyIconSpec.
Will Thompson <will.thompson@collabora.co.uk>
parents:
23114
diff
changeset
|
76 |
d3fb9d9b57e2
Add doxycomment for PurpleBuddyIcon; tweak that of PurpleBuddyIconSpec.
Will Thompson <will.thompson@collabora.co.uk>
parents:
23114
diff
changeset
|
77 /** @copydoc PurpleBuddyIconSpec */ |
15822 | 78 struct _PurpleBuddyIconSpec { |
23208
d3fb9d9b57e2
Add doxycomment for PurpleBuddyIcon; tweak that of PurpleBuddyIconSpec.
Will Thompson <will.thompson@collabora.co.uk>
parents:
23114
diff
changeset
|
79 /** 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:
23114
diff
changeset
|
80 * 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:
23114
diff
changeset
|
81 * 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:
23114
diff
changeset
|
82 * 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:
23114
diff
changeset
|
83 */ |
d3fb9d9b57e2
Add doxycomment for PurpleBuddyIcon; tweak that of PurpleBuddyIconSpec.
Will Thompson <will.thompson@collabora.co.uk>
parents:
23114
diff
changeset
|
84 char *format; |
d3fb9d9b57e2
Add doxycomment for PurpleBuddyIcon; tweak that of PurpleBuddyIconSpec.
Will Thompson <will.thompson@collabora.co.uk>
parents:
23114
diff
changeset
|
85 |
d3fb9d9b57e2
Add doxycomment for PurpleBuddyIcon; tweak that of PurpleBuddyIconSpec.
Will Thompson <will.thompson@collabora.co.uk>
parents:
23114
diff
changeset
|
86 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:
23114
diff
changeset
|
87 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:
23114
diff
changeset
|
88 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:
23114
diff
changeset
|
89 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:
23114
diff
changeset
|
90 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:
23114
diff
changeset
|
91 PurpleIconScaleRules scale_rules; /**< How to stretch this icon */ |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
92 }; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
93 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
94 struct proto_chat_entry { |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
95 const char *label; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
96 const char *identifier; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
97 gboolean required; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
98 gboolean is_int; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
99 int min; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
100 int max; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
101 gboolean secret; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
102 }; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
103 |
23371
3f92fd48d19a
document PurpleAttentionType slightly
Will Thompson <will.thompson@collabora.co.uk>
parents:
23208
diff
changeset
|
104 /** 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:
23208
diff
changeset
|
105 * their attention (or vice-versa). |
3f92fd48d19a
document PurpleAttentionType slightly
Will Thompson <will.thompson@collabora.co.uk>
parents:
23208
diff
changeset
|
106 */ |
19426
6395c2e96bc2
Attention API for nudges/buzzes/zaps of various protocols.
Jeffrey Connelly <jaconnel@calpoly.edu>
parents:
19289
diff
changeset
|
107 struct _PurpleAttentionType |
6395c2e96bc2
Attention API for nudges/buzzes/zaps of various protocols.
Jeffrey Connelly <jaconnel@calpoly.edu>
parents:
19289
diff
changeset
|
108 { |
6395c2e96bc2
Attention API for nudges/buzzes/zaps of various protocols.
Jeffrey Connelly <jaconnel@calpoly.edu>
parents:
19289
diff
changeset
|
109 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
|
110 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
|
111 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
|
112 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
|
113 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
|
114 |
1b5e786d137a
In the attention API, use the PURPLE_NOTIFY_MESSAGE flag to serv_got_im()
Jeffrey Connelly <jaconnel@calpoly.edu>
parents:
19426
diff
changeset
|
115 /* 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
|
116 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
|
117 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
|
118 gpointer _reserved4; |
19426
6395c2e96bc2
Attention API for nudges/buzzes/zaps of various protocols.
Jeffrey Connelly <jaconnel@calpoly.edu>
parents:
19289
diff
changeset
|
119 }; |
6395c2e96bc2
Attention API for nudges/buzzes/zaps of various protocols.
Jeffrey Connelly <jaconnel@calpoly.edu>
parents:
19289
diff
changeset
|
120 |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
121 /** |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
122 * Protocol options |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
123 * |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
124 * 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
|
125 */ |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
126 typedef enum |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
127 { |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
128 /** |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
129 * Use a unique name, not an alias, for chat rooms. |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
130 * |
16904
56042b2f8b64
s/Jabber/XMPP in user-visible places.
Richard Laager <rlaager@wiktel.com>
parents:
16719
diff
changeset
|
131 * XMPP lets you choose what name you want for chat. |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
132 * So it shouldn't be pulling the alias for when you're in chat; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
133 * it gets annoying. |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
134 */ |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
135 OPT_PROTO_UNIQUE_CHATNAME = 0x00000004, |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
136 |
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 * Chat rooms have topics. |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
139 * |
16904
56042b2f8b64
s/Jabber/XMPP in user-visible places.
Richard Laager <rlaager@wiktel.com>
parents:
16719
diff
changeset
|
140 * IRC and XMPP support this. |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
141 */ |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
142 OPT_PROTO_CHAT_TOPIC = 0x00000008, |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
143 |
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 * Don't require passwords for sign-in. |
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 * 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
|
148 * need for a password prompt. |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
149 */ |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
150 OPT_PROTO_NO_PASSWORD = 0x00000010, |
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 /** |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
153 * Notify on new mail. |
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 * 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
|
156 */ |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
157 OPT_PROTO_MAIL_CHECK = 0x00000020, |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
158 |
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 * Images in IMs. |
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 * 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
|
163 */ |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
164 OPT_PROTO_IM_IMAGE = 0x00000040, |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
165 |
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 * Allow passwords to be optional. |
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 * 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
|
170 * functionality. |
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 OPT_PROTO_PASSWORD_OPTIONAL = 0x00000080, |
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 /** |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
175 * 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
|
176 * |
16904
56042b2f8b64
s/Jabber/XMPP in user-visible places.
Richard Laager <rlaager@wiktel.com>
parents:
16719
diff
changeset
|
177 * Probably just XMPP and Y!M |
15373
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 OPT_PROTO_USE_POINTSIZE = 0x00000100, |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
180 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
181 /** |
25925
6e1967b0f90b
Change "screen name" to "username" or "buddy name" in a whole bunch of
Mark Doliner <mark@kingant.net>
parents:
25924
diff
changeset
|
182 * 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:
25924
diff
changeset
|
183 * been specified. |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
184 * |
25925
6e1967b0f90b
Change "screen name" to "username" or "buddy name" in a whole bunch of
Mark Doliner <mark@kingant.net>
parents:
25924
diff
changeset
|
185 * 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:
25924
diff
changeset
|
186 * usernames are assigned by the server). |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
187 */ |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
188 OPT_PROTO_REGISTER_NOSCREENNAME = 0x00000200, |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
189 |
18030
62a71bb085ef
Mostly taken from the patch on ticket #410, don't send unknown slash
Stu Tomlinson <stu@nosnilmot.com>
parents:
17343
diff
changeset
|
190 /** |
62a71bb085ef
Mostly taken from the patch on ticket #410, don't send unknown slash
Stu Tomlinson <stu@nosnilmot.com>
parents:
17343
diff
changeset
|
191 * 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:
17343
diff
changeset
|
192 * Used as a hint that unknown commands should not be sent as messages. |
22898
3d7e9eff04d0
Assorted cleanups, mostly to the Doxygen comments. I added a few missing
Richard Laager <rlaager@wiktel.com>
parents:
22762
diff
changeset
|
193 * @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:
17343
diff
changeset
|
194 */ |
24687
d8452c0bec7b
Remove the commas at the end of enumerator lists. This resolves warnings
Florian Quèze <florian@instantbird.org>
parents:
24589
diff
changeset
|
195 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:
17343
diff
changeset
|
196 |
15822 | 197 } PurpleProtocolOptions; |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
198 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
199 /** |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
200 * A protocol plugin information structure. |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
201 * |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
202 * Every protocol plugin initializes this structure. It is the gateway |
22762
20053e2484f8
Fix a typo in a doc comment.
Richard Laager <rlaager@wiktel.com>
parents:
22122
diff
changeset
|
203 * between purple and the protocol plugin. Many of these callbacks can be |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
204 * 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
|
205 */ |
15822 | 206 struct _PurplePluginProtocolInfo |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
207 { |
15822 | 208 PurpleProtocolOptions options; /**< Protocol options. */ |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
209 |
19289
f12bf92d64ec
Add marginally better doxygen magic to PurplePluginProtocolInfo
Will Thompson <will.thompson@collabora.co.uk>
parents:
18179
diff
changeset
|
210 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
|
211 GList *protocol_options; /**< A GList of PurpleAccountOption */ |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
212 |
19289
f12bf92d64ec
Add marginally better doxygen magic to PurplePluginProtocolInfo
Will Thompson <will.thompson@collabora.co.uk>
parents:
18179
diff
changeset
|
213 PurpleBuddyIconSpec icon_spec; /**< The icon spec. */ |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
214 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
215 /** |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
216 * Returns the base icon name for the given buddy and account. |
25924
584063555949
Remove trailing whitespace
Mark Doliner <mark@kingant.net>
parents:
24797
diff
changeset
|
217 * If buddy is NULL and the account is non-NULL, it will return the |
16392
c85fa74f7e50
Document prpl_info->list_icon(NULL, NULL), and add my name to COPYRIGHT.
Jeffrey Connelly <jaconnel@calpoly.edu>
parents:
15822
diff
changeset
|
218 * 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:
15822
diff
changeset
|
219 * 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:
15822
diff
changeset
|
220 * |
c85fa74f7e50
Document prpl_info->list_icon(NULL, NULL), and add my name to COPYRIGHT.
Jeffrey Connelly <jaconnel@calpoly.edu>
parents:
15822
diff
changeset
|
221 * This must be implemented. |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
222 */ |
15822 | 223 const char *(*list_icon)(PurpleAccount *account, PurpleBuddy *buddy); |
15373
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 * 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
|
227 * 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
|
228 */ |
15822 | 229 const char *(*list_emblem)(PurpleBuddy *buddy); |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
230 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
231 /** |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
232 * 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
|
233 * be shown on the buddy list. |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
234 */ |
15822 | 235 char *(*status_text)(PurpleBuddy *buddy); |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
236 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
237 /** |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
238 * 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
|
239 */ |
15822 | 240 void (*tooltip_text)(PurpleBuddy *buddy, PurpleNotifyUserInfo *user_info, gboolean full); |
15373
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 /** |
20903
3375d44ccad7
Add some (but not much!) documentation to PurplePluginProtocolInfo.
Will Thompson <will.thompson@collabora.co.uk>
parents:
20074
diff
changeset
|
243 * 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
|
244 * 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
|
245 * online states. |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
246 */ |
15822 | 247 GList *(*status_types)(PurpleAccount *account); |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
248 |
20903
3375d44ccad7
Add some (but not much!) documentation to PurplePluginProtocolInfo.
Will Thompson <will.thompson@collabora.co.uk>
parents:
20074
diff
changeset
|
249 /** |
3375d44ccad7
Add some (but not much!) documentation to PurplePluginProtocolInfo.
Will Thompson <will.thompson@collabora.co.uk>
parents:
20074
diff
changeset
|
250 * 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
|
251 * 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
|
252 * node. |
3375d44ccad7
Add some (but not much!) documentation to PurplePluginProtocolInfo.
Will Thompson <will.thompson@collabora.co.uk>
parents:
20074
diff
changeset
|
253 */ |
15822 | 254 GList *(*blist_node_menu)(PurpleBlistNode *node); |
255 GList *(*chat_info)(PurpleConnection *); | |
256 GHashTable *(*chat_info_defaults)(PurpleConnection *, const char *chat_name); | |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
257 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
258 /* All the server-related functions */ |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
259 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
260 /** This must be implemented. */ |
15822 | 261 void (*login)(PurpleAccount *); |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
262 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
263 /** This must be implemented. */ |
15822 | 264 void (*close)(PurpleConnection *); |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
265 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
266 /** |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
267 * 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
|
268 * 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
|
269 * 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
|
270 * 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
|
271 * 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
|
272 * 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
|
273 * 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
|
274 */ |
15822 | 275 int (*send_im)(PurpleConnection *, const char *who, |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
276 const char *message, |
15822 | 277 PurpleMessageFlags flags); |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
278 |
15822 | 279 void (*set_info)(PurpleConnection *, const char *info); |
24588
23170794f9f5
Add a comment for the meaning of the return value of this function,
Mark Doliner <mark@kingant.net>
parents:
23571
diff
changeset
|
280 |
23170794f9f5
Add a comment for the meaning of the return value of this function,
Mark Doliner <mark@kingant.net>
parents:
23571
diff
changeset
|
281 /** |
23170794f9f5
Add a comment for the meaning of the return value of this function,
Mark Doliner <mark@kingant.net>
parents:
23571
diff
changeset
|
282 * @return If this protocol requires the PURPLE_TYPING message to |
24589
64c74659b6eb
Fix a typo in Mark's new comment.
Richard Laager <rlaager@wiktel.com>
parents:
24588
diff
changeset
|
283 * be sent repeatedly to signify that the user is still |
24588
23170794f9f5
Add a comment for the meaning of the return value of this function,
Mark Doliner <mark@kingant.net>
parents:
23571
diff
changeset
|
284 * 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:
23571
diff
changeset
|
285 * 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:
23571
diff
changeset
|
286 * 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:
23571
diff
changeset
|
287 */ |
15822 | 288 unsigned int (*send_typing)(PurpleConnection *, const char *name, PurpleTypingState state); |
24588
23170794f9f5
Add a comment for the meaning of the return value of this function,
Mark Doliner <mark@kingant.net>
parents:
23571
diff
changeset
|
289 |
20903
3375d44ccad7
Add some (but not much!) documentation to PurplePluginProtocolInfo.
Will Thompson <will.thompson@collabora.co.uk>
parents:
20074
diff
changeset
|
290 /** |
3375d44ccad7
Add some (but not much!) documentation to PurplePluginProtocolInfo.
Will Thompson <will.thompson@collabora.co.uk>
parents:
20074
diff
changeset
|
291 * 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
|
292 * @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
|
293 */ |
15822 | 294 void (*get_info)(PurpleConnection *, const char *who); |
295 void (*set_status)(PurpleAccount *account, PurpleStatus *status); | |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
296 |
15822 | 297 void (*set_idle)(PurpleConnection *, int idletime); |
298 void (*change_passwd)(PurpleConnection *, const char *old_pass, | |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
299 const char *new_pass); |
25240
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:
24797
diff
changeset
|
300 /** |
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:
24797
diff
changeset
|
301 * 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:
24797
diff
changeset
|
302 * |
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:
24797
diff
changeset
|
303 * 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:
24797
diff
changeset
|
304 * 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:
24797
diff
changeset
|
305 * 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:
24797
diff
changeset
|
306 * 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:
24797
diff
changeset
|
307 */ |
15822 | 308 void (*add_buddy)(PurpleConnection *, PurpleBuddy *buddy, PurpleGroup *group); |
309 void (*add_buddies)(PurpleConnection *, GList *buddies, GList *groups); | |
310 void (*remove_buddy)(PurpleConnection *, PurpleBuddy *buddy, PurpleGroup *group); | |
311 void (*remove_buddies)(PurpleConnection *, GList *buddies, GList *groups); | |
312 void (*add_permit)(PurpleConnection *, const char *name); | |
313 void (*add_deny)(PurpleConnection *, const char *name); | |
314 void (*rem_permit)(PurpleConnection *, const char *name); | |
315 void (*rem_deny)(PurpleConnection *, const char *name); | |
316 void (*set_permit_deny)(PurpleConnection *); | |
317 void (*join_chat)(PurpleConnection *, GHashTable *components); | |
318 void (*reject_chat)(PurpleConnection *, GHashTable *components); | |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
319 char *(*get_chat_name)(GHashTable *components); |
15822 | 320 void (*chat_invite)(PurpleConnection *, int id, |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
321 const char *message, const char *who); |
15822 | 322 void (*chat_leave)(PurpleConnection *, int id); |
323 void (*chat_whisper)(PurpleConnection *, int id, | |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
324 const char *who, const char *message); |
15822 | 325 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
|
326 |
fb8ab2490ac4
De-magic number the prpl_info->keepalive interval, and document it.
Will Thompson <will.thompson@collabora.co.uk>
parents:
21457
diff
changeset
|
327 /** 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
|
328 * 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
|
329 * 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
|
330 * 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
|
331 * <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
|
332 */ |
15822 | 333 void (*keepalive)(PurpleConnection *); |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
334 |
19289
f12bf92d64ec
Add marginally better doxygen magic to PurplePluginProtocolInfo
Will Thompson <will.thompson@collabora.co.uk>
parents:
18179
diff
changeset
|
335 /** new user registration */ |
15822 | 336 void (*register_user)(PurpleAccount *); |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
337 |
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
|
338 /** |
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
|
339 * @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
|
340 */ |
15822 | 341 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
|
342 /** |
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
|
343 * @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
|
344 * #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
|
345 */ |
15822 | 346 void (*get_cb_away)(PurpleConnection *, int, const char *who); |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
347 |
19289
f12bf92d64ec
Add marginally better doxygen magic to PurplePluginProtocolInfo
Will Thompson <will.thompson@collabora.co.uk>
parents:
18179
diff
changeset
|
348 /** save/store buddy's alias on server list/roster */ |
15822 | 349 void (*alias_buddy)(PurpleConnection *, const char *who, |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
350 const char *alias); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
351 |
19289
f12bf92d64ec
Add marginally better doxygen magic to PurplePluginProtocolInfo
Will Thompson <will.thompson@collabora.co.uk>
parents:
18179
diff
changeset
|
352 /** change a buddy's group on a server list/roster */ |
15822 | 353 void (*group_buddy)(PurpleConnection *, const char *who, |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
354 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
|
355 |
19289
f12bf92d64ec
Add marginally better doxygen magic to PurplePluginProtocolInfo
Will Thompson <will.thompson@collabora.co.uk>
parents:
18179
diff
changeset
|
356 /** rename a group on a server list/roster */ |
15822 | 357 void (*rename_group)(PurpleConnection *, const char *old_name, |
358 PurpleGroup *group, GList *moved_buddies); | |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
359 |
15822 | 360 void (*buddy_free)(PurpleBuddy *); |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
361 |
15822 | 362 void (*convo_closed)(PurpleConnection *, const char *who); |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
363 |
19289
f12bf92d64ec
Add marginally better doxygen magic to PurplePluginProtocolInfo
Will Thompson <will.thompson@collabora.co.uk>
parents:
18179
diff
changeset
|
364 /** |
f12bf92d64ec
Add marginally better doxygen magic to PurplePluginProtocolInfo
Will Thompson <will.thompson@collabora.co.uk>
parents:
18179
diff
changeset
|
365 * 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
|
366 * 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
|
367 * 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
|
368 */ |
f12bf92d64ec
Add marginally better doxygen magic to PurplePluginProtocolInfo
Will Thompson <will.thompson@collabora.co.uk>
parents:
18179
diff
changeset
|
369 const char *(*normalize)(const PurpleAccount *, const char *who); |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
370 |
19289
f12bf92d64ec
Add marginally better doxygen magic to PurplePluginProtocolInfo
Will Thompson <will.thompson@collabora.co.uk>
parents:
18179
diff
changeset
|
371 /** |
f12bf92d64ec
Add marginally better doxygen magic to PurplePluginProtocolInfo
Will Thompson <will.thompson@collabora.co.uk>
parents:
18179
diff
changeset
|
372 * 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
|
373 * 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
|
374 * #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
|
375 */ |
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:
15822
diff
changeset
|
376 void (*set_buddy_icon)(PurpleConnection *, PurpleStoredImage *img); |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
377 |
15822 | 378 void (*remove_group)(PurpleConnection *gc, PurpleGroup *group); |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
379 |
21039
5af17c5a4a12
Document PurplePluginProtocolInfo.get_cb_real_name
Will Thompson <will.thompson@collabora.co.uk>
parents:
21023
diff
changeset
|
380 /** 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
|
381 * 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
|
382 * <tt>room\@server/foo</tt> |
21039
5af17c5a4a12
Document PurplePluginProtocolInfo.get_cb_real_name
Will Thompson <will.thompson@collabora.co.uk>
parents:
21023
diff
changeset
|
383 * @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
|
384 * @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
|
385 * @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
|
386 * @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
|
387 * freed by the caller. |
5af17c5a4a12
Document PurplePluginProtocolInfo.get_cb_real_name
Will Thompson <will.thompson@collabora.co.uk>
parents:
21023
diff
changeset
|
388 */ |
15822 | 389 char *(*get_cb_real_name)(PurpleConnection *gc, int id, const char *who); |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
390 |
15822 | 391 void (*set_chat_topic)(PurpleConnection *gc, int id, const char *topic); |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
392 |
15822 | 393 PurpleChat *(*find_blist_chat)(PurpleAccount *account, const char *name); |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
394 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
395 /* room listing prpl callbacks */ |
15822 | 396 PurpleRoomlist *(*roomlist_get_list)(PurpleConnection *gc); |
397 void (*roomlist_cancel)(PurpleRoomlist *list); | |
398 void (*roomlist_expand_category)(PurpleRoomlist *list, PurpleRoomlistRoom *category); | |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
399 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
400 /* file transfer callbacks */ |
15822 | 401 gboolean (*can_receive_file)(PurpleConnection *, const char *who); |
402 void (*send_file)(PurpleConnection *, const char *who, const char *filename); | |
403 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
|
404 |
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
|
405 /** 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
|
406 * @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
|
407 * 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
|
408 */ |
15822 | 409 gboolean (*offline_message)(const PurpleBuddy *buddy); |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
410 |
15822 | 411 PurpleWhiteboardPrplOps *whiteboard_prpl_ops; |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
412 |
19289
f12bf92d64ec
Add marginally better doxygen magic to PurplePluginProtocolInfo
Will Thompson <will.thompson@collabora.co.uk>
parents:
18179
diff
changeset
|
413 /** For use in plugins that may understand the underlying protocol */ |
15822 | 414 int (*send_raw)(PurpleConnection *gc, const char *buf, int len); |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
415 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
416 /* room list serialize */ |
15822 | 417 char *(*roomlist_room_serialize)(PurpleRoomlistRoom *room); |
16664
516f14bef90e
Initial addition of padding for ui_ops and other class-like structs
Gary Kramlich <grim@reaperworld.com>
parents:
16471
diff
changeset
|
418 |
20903
3375d44ccad7
Add some (but not much!) documentation to PurplePluginProtocolInfo.
Will Thompson <will.thompson@collabora.co.uk>
parents:
20074
diff
changeset
|
419 /** 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
|
420 * 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
|
421 * 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
|
422 */ |
3375d44ccad7
Add some (but not much!) documentation to PurplePluginProtocolInfo.
Will Thompson <will.thompson@collabora.co.uk>
parents:
20074
diff
changeset
|
423 /* 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
|
424 * 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
|
425 */ |
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
|
426 void (*unregister_user)(PurpleAccount *, PurpleAccountUnregistrationCb cb, void *user_data); |
25924
584063555949
Remove trailing whitespace
Mark Doliner <mark@kingant.net>
parents:
24797
diff
changeset
|
427 |
19426
6395c2e96bc2
Attention API for nudges/buzzes/zaps of various protocols.
Jeffrey Connelly <jaconnel@calpoly.edu>
parents:
19289
diff
changeset
|
428 /* 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
|
429 gboolean (*send_attention)(PurpleConnection *gc, const char *username, guint type); |
19703
45d028a68774
- Rename attention_types to get_attention_types, which seems more standard.
Richard Laager <rlaager@wiktel.com>
parents:
19697
diff
changeset
|
430 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
|
431 |
23109
718a9c287839
Use up the last padding for PurplePluginProtocolInfo in a way that allows
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
23105
diff
changeset
|
432 /** |
718a9c287839
Use up the last padding for PurplePluginProtocolInfo in a way that allows
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
23105
diff
changeset
|
433 * 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:
23105
diff
changeset
|
434 * 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:
23105
diff
changeset
|
435 */ |
718a9c287839
Use up the last padding for PurplePluginProtocolInfo in a way that allows
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
23105
diff
changeset
|
436 unsigned long struct_size; |
718a9c287839
Use up the last padding for PurplePluginProtocolInfo in a way that allows
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
23105
diff
changeset
|
437 |
718a9c287839
Use up the last padding for PurplePluginProtocolInfo in a way that allows
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
23105
diff
changeset
|
438 /* NOTE: |
718a9c287839
Use up the last padding for PurplePluginProtocolInfo in a way that allows
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
23105
diff
changeset
|
439 * 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:
23105
diff
changeset
|
440 * |
718a9c287839
Use up the last padding for PurplePluginProtocolInfo in a way that allows
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
23105
diff
changeset
|
441 * 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:
23105
diff
changeset
|
442 * prpl->new_function(...); |
718a9c287839
Use up the last padding for PurplePluginProtocolInfo in a way that allows
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
23105
diff
changeset
|
443 * |
718a9c287839
Use up the last padding for PurplePluginProtocolInfo in a way that allows
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
23105
diff
changeset
|
444 * instead of |
718a9c287839
Use up the last padding for PurplePluginProtocolInfo in a way that allows
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
23105
diff
changeset
|
445 * |
718a9c287839
Use up the last padding for PurplePluginProtocolInfo in a way that allows
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
23105
diff
changeset
|
446 * 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:
23105
diff
changeset
|
447 * prpl->new_function(...); |
718a9c287839
Use up the last padding for PurplePluginProtocolInfo in a way that allows
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
23105
diff
changeset
|
448 * |
718a9c287839
Use up the last padding for PurplePluginProtocolInfo in a way that allows
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
23105
diff
changeset
|
449 * 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:
23105
diff
changeset
|
450 * 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:
23105
diff
changeset
|
451 */ |
23110
bb41bdce8981
Patch from Jaywalker to let prpls add some helpful text for some account
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
23109
diff
changeset
|
452 |
bb41bdce8981
Patch from Jaywalker to let prpls add some helpful text for some account
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
23109
diff
changeset
|
453 /** 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:
23109
diff
changeset
|
454 * 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:
23109
diff
changeset
|
455 * 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:
23109
diff
changeset
|
456 * 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:
23109
diff
changeset
|
457 * |
bb41bdce8981
Patch from Jaywalker to let prpls add some helpful text for some account
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
23109
diff
changeset
|
458 * @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:
23109
diff
changeset
|
459 * @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:
23109
diff
changeset
|
460 * 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:
23109
diff
changeset
|
461 */ |
bb41bdce8981
Patch from Jaywalker to let prpls add some helpful text for some account
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
23109
diff
changeset
|
462 GHashTable *(*get_account_text_table)(PurpleAccount *account); |
23772
750d700098c1
Fix the prplinfo structs and get rid of some compile warnings.
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
23769
diff
changeset
|
463 |
23868
1aa383ee5fc8
Fixed up media functions in prpl.c and prpl.h, adding more documentation and
Mike Ruprecht <maiku@soc.pidgin.im>
parents:
23867
diff
changeset
|
464 /** |
1aa383ee5fc8
Fixed up media functions in prpl.c and prpl.h, adding more documentation and
Mike Ruprecht <maiku@soc.pidgin.im>
parents:
23867
diff
changeset
|
465 * 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:
23867
diff
changeset
|
466 * |
1aa383ee5fc8
Fixed up media functions in prpl.c and prpl.h, adding more documentation and
Mike Ruprecht <maiku@soc.pidgin.im>
parents:
23867
diff
changeset
|
467 * @param conn The connection to initiate the media session on. |
1aa383ee5fc8
Fixed up media functions in prpl.c and prpl.h, adding more documentation and
Mike Ruprecht <maiku@soc.pidgin.im>
parents:
23867
diff
changeset
|
468 * @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:
23867
diff
changeset
|
469 * @param type The type of media session to initiate. |
26365
34eb898478b4
Don't assume a PurpleMedia instance will be created immediately.
Mike Ruprecht <maiku@soc.pidgin.im>
parents:
26352
diff
changeset
|
470 * @return TRUE if the call succeeded else FALSE. (Doesn't imply the media session or stream will be successfully created) |
23868
1aa383ee5fc8
Fixed up media functions in prpl.c and prpl.h, adding more documentation and
Mike Ruprecht <maiku@soc.pidgin.im>
parents:
23867
diff
changeset
|
471 */ |
26365
34eb898478b4
Don't assume a PurpleMedia instance will be created immediately.
Mike Ruprecht <maiku@soc.pidgin.im>
parents:
26352
diff
changeset
|
472 gboolean (*initiate_media)(PurpleConnection *gc, const char *who, |
23869
551a462b346a
Changed PurpleMediaStreamType to PurpleMediaSessionType.
Mike Ruprecht <maiku@soc.pidgin.im>
parents:
23868
diff
changeset
|
473 PurpleMediaSessionType type); |
23807
ff29208e03ef
propagate from branch 'im.pidgin.pidgin' (head 75f0460d3679231b61d572e76fe02534a597c6b5)
Sadrul Habib Chowdhury <imadil@gmail.com>
diff
changeset
|
474 |
23868
1aa383ee5fc8
Fixed up media functions in prpl.c and prpl.h, adding more documentation and
Mike Ruprecht <maiku@soc.pidgin.im>
parents:
23867
diff
changeset
|
475 /** |
1aa383ee5fc8
Fixed up media functions in prpl.c and prpl.h, adding more documentation and
Mike Ruprecht <maiku@soc.pidgin.im>
parents:
23867
diff
changeset
|
476 * 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:
23867
diff
changeset
|
477 * |
1aa383ee5fc8
Fixed up media functions in prpl.c and prpl.h, adding more documentation and
Mike Ruprecht <maiku@soc.pidgin.im>
parents:
23867
diff
changeset
|
478 * @param conn The connection the contact is on. |
1aa383ee5fc8
Fixed up media functions in prpl.c and prpl.h, adding more documentation and
Mike Ruprecht <maiku@soc.pidgin.im>
parents:
23867
diff
changeset
|
479 * @param who The remote user to check for media capability with. |
26108
d6e23439b77c
Change purple_prpl_can_do_media to purple_prpl_get_media_caps.
Mike Ruprecht <maiku@soc.pidgin.im>
parents:
24986
diff
changeset
|
480 * @return The media caps the contact supports. |
23868
1aa383ee5fc8
Fixed up media functions in prpl.c and prpl.h, adding more documentation and
Mike Ruprecht <maiku@soc.pidgin.im>
parents:
23867
diff
changeset
|
481 */ |
26108
d6e23439b77c
Change purple_prpl_can_do_media to purple_prpl_get_media_caps.
Mike Ruprecht <maiku@soc.pidgin.im>
parents:
24986
diff
changeset
|
482 PurpleMediaCaps (*get_media_caps)(PurpleConnection *gc, |
d6e23439b77c
Change purple_prpl_can_do_media to purple_prpl_get_media_caps.
Mike Ruprecht <maiku@soc.pidgin.im>
parents:
24986
diff
changeset
|
483 const char *who); |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
484 }; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
485 |
23109
718a9c287839
Use up the last padding for PurplePluginProtocolInfo in a way that allows
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
23105
diff
changeset
|
486 #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:
23105
diff
changeset
|
487 (((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:
23105
diff
changeset
|
488 || (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:
23105
diff
changeset
|
489 prpl->member != NULL) |
718a9c287839
Use up the last padding for PurplePluginProtocolInfo in a way that allows
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
23105
diff
changeset
|
490 |
718a9c287839
Use up the last padding for PurplePluginProtocolInfo in a way that allows
Sadrul Habib Chowdhury <imadil@gmail.com>
parents:
23105
diff
changeset
|
491 |
15822 | 492 #define PURPLE_IS_PROTOCOL_PLUGIN(plugin) \ |
493 ((plugin)->info->type == PURPLE_PLUGIN_PROTOCOL) | |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
494 |
15822 | 495 #define PURPLE_PLUGIN_PROTOCOL_INFO(plugin) \ |
496 ((PurplePluginProtocolInfo *)(plugin)->info->extra_info) | |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
497 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
498 #ifdef __cplusplus |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
499 extern "C" { |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
500 #endif |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
501 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
502 /**************************************************************************/ |
22097
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
503 /** @name Attention Type API */ |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
504 /**************************************************************************/ |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
505 /*@{*/ |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
506 |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
507 /** |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
508 * 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
|
509 * |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
510 * @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
|
511 * 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
|
512 * without localization. |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
513 * @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
|
514 * 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
|
515 * @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
|
516 * @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
|
517 * @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
|
518 * @since 2.4.0 |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
519 */ |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
520 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
|
521 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
|
522 |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
523 /** |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
524 * 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
|
525 * |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
526 * @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
|
527 * @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
|
528 * 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
|
529 * localization. |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
530 * @since 2.4.0 |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
531 */ |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
532 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
|
533 |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
534 /** |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
535 * 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
|
536 * 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
|
537 * |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
538 * @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
|
539 * @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
|
540 * @since 2.4.0 |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
541 */ |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
542 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
|
543 |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
544 /** |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
545 * 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
|
546 * 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
|
547 * |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
548 * @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
|
549 * @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
|
550 * @since 2.4.0 |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
551 */ |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
552 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
|
553 |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
554 /** |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
555 * 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
|
556 * |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
557 * @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
|
558 * @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
|
559 * @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
|
560 * @since 2.4.0 |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
561 */ |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
562 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
|
563 |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
564 /** |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
565 * 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
|
566 * thus it is required. |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
567 * |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
568 * @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
|
569 * @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
|
570 * 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
|
571 * @since 2.4.0 |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
572 */ |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
573 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
|
574 |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
575 /** |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
576 * 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
|
577 * |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
578 * @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
|
579 * @return The name. |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
580 * @since 2.4.0 |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
581 */ |
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
|
582 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
|
583 |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
584 /** |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
585 * 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
|
586 * |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
587 * @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
|
588 * @return The description. |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
589 * @since 2.4.0 |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
590 */ |
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
|
591 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
|
592 |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
593 /** |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
594 * 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
|
595 * |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
596 * @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
|
597 * @return The description. |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
598 * @since 2.4.0 |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
599 */ |
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
|
600 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
|
601 |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
602 /** |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
603 * 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
|
604 * |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
605 * @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
|
606 * @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
|
607 * @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
|
608 * @since 2.4.0 |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
609 */ |
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
|
610 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
|
611 |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
612 /** |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
613 * 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
|
614 * |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
615 * @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
|
616 * @return The unlocalized name. |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
617 * @since 2.4.0 |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
618 */ |
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
|
619 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
|
620 |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
621 /*@}*/ |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
622 |
eab7d03edfcb
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21750
diff
changeset
|
623 /**************************************************************************/ |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
624 /** @name Protocol Plugin API */ |
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 /*@{*/ |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
627 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
628 /** |
25925
6e1967b0f90b
Change "screen name" to "username" or "buddy name" in a whole bunch of
Mark Doliner <mark@kingant.net>
parents:
25924
diff
changeset
|
629 * Notifies Purple that our account's idle state and time have changed. |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
630 * |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
631 * 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
|
632 * |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
633 * @param account The account. |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
634 * @param idle The user's idle state. |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
635 * @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
|
636 */ |
15822 | 637 void purple_prpl_got_account_idle(PurpleAccount *account, gboolean idle, |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
638 time_t idle_time); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
639 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
640 /** |
25925
6e1967b0f90b
Change "screen name" to "username" or "buddy name" in a whole bunch of
Mark Doliner <mark@kingant.net>
parents:
25924
diff
changeset
|
641 * Notifies Purple of our account's log-in time. |
15373
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 * 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
|
644 * |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
645 * @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
|
646 * @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
|
647 */ |
15822 | 648 void purple_prpl_got_account_login_time(PurpleAccount *account, time_t login_time); |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
649 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
650 /** |
25925
6e1967b0f90b
Change "screen name" to "username" or "buddy name" in a whole bunch of
Mark Doliner <mark@kingant.net>
parents:
25924
diff
changeset
|
651 * Notifies Purple that our account's status has changed. |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
652 * |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
653 * 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
|
654 * |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
655 * @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
|
656 * @param status_id The status ID. |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
657 * @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
|
658 * 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
|
659 */ |
15822 | 660 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
|
661 const char *status_id, ...) G_GNUC_NULL_TERMINATED; |
25925
6e1967b0f90b
Change "screen name" to "username" or "buddy name" in a whole bunch of
Mark Doliner <mark@kingant.net>
parents:
25924
diff
changeset
|
662 |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
663 /** |
25925
6e1967b0f90b
Change "screen name" to "username" or "buddy name" in a whole bunch of
Mark Doliner <mark@kingant.net>
parents:
25924
diff
changeset
|
664 * Notifies Purple that a buddy's idle state and time have changed. |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
665 * |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
666 * 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
|
667 * |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
668 * @param account The account the user is on. |
25925
6e1967b0f90b
Change "screen name" to "username" or "buddy name" in a whole bunch of
Mark Doliner <mark@kingant.net>
parents:
25924
diff
changeset
|
669 * @param name The name of the buddy. |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
670 * @param idle The user's idle state. |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
671 * @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
|
672 * which the user became idle, in seconds since |
24797
9216da5184a2
Add a comment that 0 should be used when a buddies idle time is unknown
Mark Doliner <mark@kingant.net>
parents:
24687
diff
changeset
|
673 * 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:
24687
diff
changeset
|
674 * then it should pass 0. |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
675 */ |
15822 | 676 void purple_prpl_got_user_idle(PurpleAccount *account, const char *name, |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
677 gboolean idle, time_t idle_time); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
678 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
679 /** |
25925
6e1967b0f90b
Change "screen name" to "username" or "buddy name" in a whole bunch of
Mark Doliner <mark@kingant.net>
parents:
25924
diff
changeset
|
680 * Notifies Purple of a buddy's log-in time. |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
681 * |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
682 * 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
|
683 * |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
684 * @param account The account the user is on. |
25925
6e1967b0f90b
Change "screen name" to "username" or "buddy name" in a whole bunch of
Mark Doliner <mark@kingant.net>
parents:
25924
diff
changeset
|
685 * @param name The name of the buddy. |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
686 * @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
|
687 */ |
15822 | 688 void purple_prpl_got_user_login_time(PurpleAccount *account, const char *name, |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
689 time_t login_time); |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
690 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
691 /** |
25925
6e1967b0f90b
Change "screen name" to "username" or "buddy name" in a whole bunch of
Mark Doliner <mark@kingant.net>
parents:
25924
diff
changeset
|
692 * Notifies Purple that a buddy's status has been activated. |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
693 * |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
694 * 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
|
695 * |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
696 * @param account The account the user is on. |
25925
6e1967b0f90b
Change "screen name" to "username" or "buddy name" in a whole bunch of
Mark Doliner <mark@kingant.net>
parents:
25924
diff
changeset
|
697 * @param name The name of the buddy. |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
698 * @param status_id The status ID. |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
699 * @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
|
700 * 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
|
701 */ |
15822 | 702 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
|
703 const char *status_id, ...) G_GNUC_NULL_TERMINATED; |
15523
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:
15462
diff
changeset
|
704 |
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:
15462
diff
changeset
|
705 /** |
25925
6e1967b0f90b
Change "screen name" to "username" or "buddy name" in a whole bunch of
Mark Doliner <mark@kingant.net>
parents:
25924
diff
changeset
|
706 * Notifies libpurple that a buddy's status has been deactivated |
15523
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:
15462
diff
changeset
|
707 * |
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:
15462
diff
changeset
|
708 * 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:
15462
diff
changeset
|
709 * |
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:
15462
diff
changeset
|
710 * @param account The account the user is on. |
25925
6e1967b0f90b
Change "screen name" to "username" or "buddy name" in a whole bunch of
Mark Doliner <mark@kingant.net>
parents:
25924
diff
changeset
|
711 * @param name The name of the buddy. |
15523
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:
15462
diff
changeset
|
712 * @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:
15462
diff
changeset
|
713 */ |
15822 | 714 void purple_prpl_got_user_status_deactive(PurpleAccount *account, const char *name, |
15523
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:
15462
diff
changeset
|
715 const char *status_id); |
25924
584063555949
Remove trailing whitespace
Mark Doliner <mark@kingant.net>
parents:
24797
diff
changeset
|
716 |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
717 /** |
25925
6e1967b0f90b
Change "screen name" to "username" or "buddy name" in a whole bunch of
Mark Doliner <mark@kingant.net>
parents:
25924
diff
changeset
|
718 * Informs the server that our account's status changed. |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
719 * |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
720 * @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
|
721 * @param old_status The previous status. |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
722 * @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
|
723 * (in the case of independent statuses). |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
724 */ |
15822 | 725 void purple_prpl_change_account_status(PurpleAccount *account, |
726 PurpleStatus *old_status, | |
727 PurpleStatus *new_status); | |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
728 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
729 /** |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
730 * 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
|
731 * |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
732 * @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
|
733 * @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
|
734 * |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
735 * @return List of statuses |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
736 */ |
15822 | 737 GList *purple_prpl_get_statuses(PurpleAccount *account, PurplePresence *presence); |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
738 |
25925
6e1967b0f90b
Change "screen name" to "username" or "buddy name" in a whole bunch of
Mark Doliner <mark@kingant.net>
parents:
25924
diff
changeset
|
739 /** |
6e1967b0f90b
Change "screen name" to "username" or "buddy name" in a whole bunch of
Mark Doliner <mark@kingant.net>
parents:
25924
diff
changeset
|
740 * Send an attention request message. |
23571
49850f7ca393
Add purple_prpl_got_attention_in_chat, then deprecate
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23371
diff
changeset
|
741 * |
49850f7ca393
Add purple_prpl_got_attention_in_chat, then deprecate
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23371
diff
changeset
|
742 * @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:
23371
diff
changeset
|
743 * @param who Whose attention to request. |
49850f7ca393
Add purple_prpl_got_attention_in_chat, then deprecate
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23371
diff
changeset
|
744 * @param type_code An index into the prpl's attention_types list determining the type |
25925
6e1967b0f90b
Change "screen name" to "username" or "buddy name" in a whole bunch of
Mark Doliner <mark@kingant.net>
parents:
25924
diff
changeset
|
745 * 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:
25924
diff
changeset
|
746 * (for example, Yahoo and MSN), but some protocols define more (MySpaceIM). |
23571
49850f7ca393
Add purple_prpl_got_attention_in_chat, then deprecate
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23371
diff
changeset
|
747 * |
49850f7ca393
Add purple_prpl_got_attention_in_chat, then deprecate
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23371
diff
changeset
|
748 * 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:
23371
diff
changeset
|
749 * only a fixed set of attention commands. |
25925
6e1967b0f90b
Change "screen name" to "username" or "buddy name" in a whole bunch of
Mark Doliner <mark@kingant.net>
parents:
25924
diff
changeset
|
750 * |
23571
49850f7ca393
Add purple_prpl_got_attention_in_chat, then deprecate
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23371
diff
changeset
|
751 * @since 2.5.0 |
49850f7ca393
Add purple_prpl_got_attention_in_chat, then deprecate
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23371
diff
changeset
|
752 */ |
49850f7ca393
Add purple_prpl_got_attention_in_chat, then deprecate
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23371
diff
changeset
|
753 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:
23371
diff
changeset
|
754 |
25925
6e1967b0f90b
Change "screen name" to "username" or "buddy name" in a whole bunch of
Mark Doliner <mark@kingant.net>
parents:
25924
diff
changeset
|
755 /** |
6e1967b0f90b
Change "screen name" to "username" or "buddy name" in a whole bunch of
Mark Doliner <mark@kingant.net>
parents:
25924
diff
changeset
|
756 * Process an incoming attention message. |
23571
49850f7ca393
Add purple_prpl_got_attention_in_chat, then deprecate
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23371
diff
changeset
|
757 * |
49850f7ca393
Add purple_prpl_got_attention_in_chat, then deprecate
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23371
diff
changeset
|
758 * @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:
23371
diff
changeset
|
759 * @param who Who requested your attention. |
49850f7ca393
Add purple_prpl_got_attention_in_chat, then deprecate
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23371
diff
changeset
|
760 * @param type_code An index into the prpl's attention_types list determining the type |
25925
6e1967b0f90b
Change "screen name" to "username" or "buddy name" in a whole bunch of
Mark Doliner <mark@kingant.net>
parents:
25924
diff
changeset
|
761 * 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:
25924
diff
changeset
|
762 * |
23571
49850f7ca393
Add purple_prpl_got_attention_in_chat, then deprecate
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23371
diff
changeset
|
763 * @since 2.5.0 |
49850f7ca393
Add purple_prpl_got_attention_in_chat, then deprecate
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23371
diff
changeset
|
764 */ |
49850f7ca393
Add purple_prpl_got_attention_in_chat, then deprecate
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23371
diff
changeset
|
765 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:
23371
diff
changeset
|
766 |
25925
6e1967b0f90b
Change "screen name" to "username" or "buddy name" in a whole bunch of
Mark Doliner <mark@kingant.net>
parents:
25924
diff
changeset
|
767 /** |
6e1967b0f90b
Change "screen name" to "username" or "buddy name" in a whole bunch of
Mark Doliner <mark@kingant.net>
parents:
25924
diff
changeset
|
768 * Process an incoming attention message in a chat. |
23571
49850f7ca393
Add purple_prpl_got_attention_in_chat, then deprecate
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23371
diff
changeset
|
769 * |
49850f7ca393
Add purple_prpl_got_attention_in_chat, then deprecate
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23371
diff
changeset
|
770 * @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:
23371
diff
changeset
|
771 * @param id The chat id. |
49850f7ca393
Add purple_prpl_got_attention_in_chat, then deprecate
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23371
diff
changeset
|
772 * @param who Who requested your attention. |
49850f7ca393
Add purple_prpl_got_attention_in_chat, then deprecate
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23371
diff
changeset
|
773 * @param type_code An index into the prpl's attention_types list determining the type |
25925
6e1967b0f90b
Change "screen name" to "username" or "buddy name" in a whole bunch of
Mark Doliner <mark@kingant.net>
parents:
25924
diff
changeset
|
774 * 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:
25924
diff
changeset
|
775 * |
23571
49850f7ca393
Add purple_prpl_got_attention_in_chat, then deprecate
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23371
diff
changeset
|
776 * @since 2.5.0 |
49850f7ca393
Add purple_prpl_got_attention_in_chat, then deprecate
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23371
diff
changeset
|
777 */ |
49850f7ca393
Add purple_prpl_got_attention_in_chat, then deprecate
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23371
diff
changeset
|
778 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:
23371
diff
changeset
|
779 |
23859
eb8c8a926589
Convert serv_* media functions to purple_prpl_* functions.
Mike Ruprecht <maiku@soc.pidgin.im>
parents:
23840
diff
changeset
|
780 /** |
eb8c8a926589
Convert serv_* media functions to purple_prpl_* functions.
Mike Ruprecht <maiku@soc.pidgin.im>
parents:
23840
diff
changeset
|
781 * 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:
23840
diff
changeset
|
782 * |
eb8c8a926589
Convert serv_* media functions to purple_prpl_* functions.
Mike Ruprecht <maiku@soc.pidgin.im>
parents:
23840
diff
changeset
|
783 * @param account The account the user is on. |
eb8c8a926589
Convert serv_* media functions to purple_prpl_* functions.
Mike Ruprecht <maiku@soc.pidgin.im>
parents:
23840
diff
changeset
|
784 * @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:
23840
diff
changeset
|
785 * |
26108
d6e23439b77c
Change purple_prpl_can_do_media to purple_prpl_get_media_caps.
Mike Ruprecht <maiku@soc.pidgin.im>
parents:
24986
diff
changeset
|
786 * @return The media caps the contact supports. |
23859
eb8c8a926589
Convert serv_* media functions to purple_prpl_* functions.
Mike Ruprecht <maiku@soc.pidgin.im>
parents:
23840
diff
changeset
|
787 */ |
26108
d6e23439b77c
Change purple_prpl_can_do_media to purple_prpl_get_media_caps.
Mike Ruprecht <maiku@soc.pidgin.im>
parents:
24986
diff
changeset
|
788 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:
24986
diff
changeset
|
789 const char *who); |
23859
eb8c8a926589
Convert serv_* media functions to purple_prpl_* functions.
Mike Ruprecht <maiku@soc.pidgin.im>
parents:
23840
diff
changeset
|
790 |
eb8c8a926589
Convert serv_* media functions to purple_prpl_* functions.
Mike Ruprecht <maiku@soc.pidgin.im>
parents:
23840
diff
changeset
|
791 /** |
eb8c8a926589
Convert serv_* media functions to purple_prpl_* functions.
Mike Ruprecht <maiku@soc.pidgin.im>
parents:
23840
diff
changeset
|
792 * Initiates a media session with the given contact. |
eb8c8a926589
Convert serv_* media functions to purple_prpl_* functions.
Mike Ruprecht <maiku@soc.pidgin.im>
parents:
23840
diff
changeset
|
793 * |
eb8c8a926589
Convert serv_* media functions to purple_prpl_* functions.
Mike Ruprecht <maiku@soc.pidgin.im>
parents:
23840
diff
changeset
|
794 * @param account The account the user is on. |
eb8c8a926589
Convert serv_* media functions to purple_prpl_* functions.
Mike Ruprecht <maiku@soc.pidgin.im>
parents:
23840
diff
changeset
|
795 * @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:
23840
diff
changeset
|
796 * @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:
23840
diff
changeset
|
797 * |
26365
34eb898478b4
Don't assume a PurpleMedia instance will be created immediately.
Mike Ruprecht <maiku@soc.pidgin.im>
parents:
26352
diff
changeset
|
798 * @return TRUE if the call succeeded else FALSE. (Doesn't imply the media session or stream will be successfully created) |
23859
eb8c8a926589
Convert serv_* media functions to purple_prpl_* functions.
Mike Ruprecht <maiku@soc.pidgin.im>
parents:
23840
diff
changeset
|
799 */ |
26365
34eb898478b4
Don't assume a PurpleMedia instance will be created immediately.
Mike Ruprecht <maiku@soc.pidgin.im>
parents:
26352
diff
changeset
|
800 gboolean purple_prpl_initiate_media(PurpleAccount *account, |
23859
eb8c8a926589
Convert serv_* media functions to purple_prpl_* functions.
Mike Ruprecht <maiku@soc.pidgin.im>
parents:
23840
diff
changeset
|
801 const char *who, |
23869
551a462b346a
Changed PurpleMediaStreamType to PurpleMediaSessionType.
Mike Ruprecht <maiku@soc.pidgin.im>
parents:
23868
diff
changeset
|
802 PurpleMediaSessionType type); |
23859
eb8c8a926589
Convert serv_* media functions to purple_prpl_* functions.
Mike Ruprecht <maiku@soc.pidgin.im>
parents:
23840
diff
changeset
|
803 |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
804 /*@}*/ |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
805 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
806 /**************************************************************************/ |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
807 /** @name Protocol Plugin Subsystem API */ |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
808 /**************************************************************************/ |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
809 /*@{*/ |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
810 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
811 /** |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
812 * 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
|
813 * |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
814 * @param id The protocol plugin; |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
815 */ |
15822 | 816 PurplePlugin *purple_find_prpl(const char *id); |
15373
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
817 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
818 /*@}*/ |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
819 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
820 #ifdef __cplusplus |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
821 } |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
822 #endif |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
823 |
5fe8042783c1
Rename gtk/ and libgaim/ to pidgin/ and libpurple/
Sean Egan <seanegan@gmail.com>
parents:
diff
changeset
|
824 #endif /* _PRPL_H_ */ |