libpurple/prpl.h

Thu, 15 May 2014 23:02:22 +0200

author
Tomasz Wasilczyk <twasilczyk@pidgin.im>
date
Thu, 15 May 2014 23:02:22 +0200
changeset 36047
2d7d55acd82c
parent 36039
9725f7b50000
child 36055
33978dc8ef6f
permissions
-rw-r--r--

Coverity: fix null pointer dereferences

20147
66f05a854eee applied changes from 8a731bbd0197fbcc91a705c2d8f528154216defa
Richard Laager <rlaager@pidgin.im>
parents: 19907
diff changeset
1 /* purple
981
00723c9a507c [gaim-migrate @ 991]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
2 *
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15588
diff changeset
3 * Purple is the legal property of its developers, whose names are too numerous
8046
c581b20a47d6 [gaim-migrate @ 8730]
Sean Egan <seanegan@pidgin.im>
parents: 7999
diff changeset
4 * to list here. Please refer to the COPYRIGHT file distributed with this
c581b20a47d6 [gaim-migrate @ 8730]
Sean Egan <seanegan@pidgin.im>
parents: 7999
diff changeset
5 * source distribution.
6451
2ff17ce330d8 [gaim-migrate @ 6960]
Christian Hammond <chipx86@chipx86.com>
parents: 6418
diff changeset
6 *
981
00723c9a507c [gaim-migrate @ 991]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
7 * This program is free software; you can redistribute it and/or modify
00723c9a507c [gaim-migrate @ 991]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
8 * it under the terms of the GNU General Public License as published by
00723c9a507c [gaim-migrate @ 991]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
9 * the Free Software Foundation; either version 2 of the License, or
00723c9a507c [gaim-migrate @ 991]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
10 * (at your option) any later version.
00723c9a507c [gaim-migrate @ 991]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
11 *
00723c9a507c [gaim-migrate @ 991]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
12 * This program is distributed in the hope that it will be useful,
00723c9a507c [gaim-migrate @ 991]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
13 * but WITHOUT ANY WARRANTY; without even the implied warranty of
00723c9a507c [gaim-migrate @ 991]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
14 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
00723c9a507c [gaim-migrate @ 991]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
15 * GNU General Public License for more details.
00723c9a507c [gaim-migrate @ 991]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
16 *
00723c9a507c [gaim-migrate @ 991]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
17 * You should have received a copy of the GNU General Public License
00723c9a507c [gaim-migrate @ 991]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
18 * along with this program; if not, write to the Free Software
19859
71d37b57eff2 The FSF changed its address a while ago; our files were out of date.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 19641
diff changeset
19 * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA
981
00723c9a507c [gaim-migrate @ 991]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
20 */
00723c9a507c [gaim-migrate @ 991]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
21
35487
494f09f7f331 Move section blocks inside inclusion guards -- otherwise g-ir-scanner yells
Ankit Vani <a@nevitus.org>
parents: 35486
diff changeset
22 #ifndef _PURPLE_PRPL_H_
494f09f7f331 Move section blocks inside inclusion guards -- otherwise g-ir-scanner yells
Ankit Vani <a@nevitus.org>
parents: 35486
diff changeset
23 #define _PURPLE_PRPL_H_
35440
467bb21b82a1 Add section blocks for debug.h to prpl.h
Ankit Vani <a@nevitus.org>
parents: 35419
diff changeset
24 /**
467bb21b82a1 Add section blocks for debug.h to prpl.h
Ankit Vani <a@nevitus.org>
parents: 35419
diff changeset
25 * SECTION:prpl
467bb21b82a1 Add section blocks for debug.h to prpl.h
Ankit Vani <a@nevitus.org>
parents: 35419
diff changeset
26 * @section_id: libpurple-prpl
467bb21b82a1 Add section blocks for debug.h to prpl.h
Ankit Vani <a@nevitus.org>
parents: 35419
diff changeset
27 * @short_description: <filename>prpl.h</filename>
467bb21b82a1 Add section blocks for debug.h to prpl.h
Ankit Vani <a@nevitus.org>
parents: 35419
diff changeset
28 * @title: Protocol Plugin functions
467bb21b82a1 Add section blocks for debug.h to prpl.h
Ankit Vani <a@nevitus.org>
parents: 35419
diff changeset
29 */
981
00723c9a507c [gaim-migrate @ 991]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
30
2417
7751d1269b09 [gaim-migrate @ 2430]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 2411
diff changeset
31 /* this file should be all that prpls need to include. therefore, by including
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15588
diff changeset
32 * this file, they should get glib, proxy, purple_connection, prpl, etc. */
981
00723c9a507c [gaim-migrate @ 991]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
33
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15588
diff changeset
34 typedef struct _PurplePluginProtocolInfo PurplePluginProtocolInfo;
2417
7751d1269b09 [gaim-migrate @ 2430]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 2411
diff changeset
35
35399
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
36 /**
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
37 * PurpleAttentionType:
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
38 *
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
39 * Represents "nudges" and "buzzes" that you may send to a buddy to attract
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
40 * their attention (or vice-versa).
32554
0d844fac6679 Fix a bunch of tiny problems generating our doxygen documentation
Mark Doliner <markdoliner@pidgin.im>
parents: 32338
diff changeset
41 */
19604
ae3d7cc7063d Attention API for nudges/buzzes/zaps of various protocols.
Jeff Connelly <jeff2@soc.pidgin.im>
parents: 19401
diff changeset
42 typedef struct _PurpleAttentionType PurpleAttentionType;
5205
242b8aa81328 [gaim-migrate @ 5573]
Christian Hammond <chipx86@chipx86.com>
parents: 5148
diff changeset
43
4557
40c90b1671cf [gaim-migrate @ 4837]
Christian Hammond <chipx86@chipx86.com>
parents: 4514
diff changeset
44 /**************************************************************************/
35472
474e26199560 Removed @name
Ankit Vani <a@nevitus.org>
parents: 35471
diff changeset
45 /* Basic Protocol Information */
4557
40c90b1671cf [gaim-migrate @ 4837]
Christian Hammond <chipx86@chipx86.com>
parents: 4514
diff changeset
46 /**************************************************************************/
40c90b1671cf [gaim-migrate @ 4837]
Christian Hammond <chipx86@chipx86.com>
parents: 4514
diff changeset
47
35399
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
48 /**
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
49 * PurpleIconScaleRules:
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
50 * @PURPLE_ICON_SCALE_DISPLAY: We scale the icon when we display it
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
51 * @PURPLE_ICON_SCALE_SEND: We scale the icon before we send it to the server
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
52 */
9318
9d1c6820a588 [gaim-migrate @ 10126]
Nathan Walp <nwalp@pidgin.im>
parents: 9316
diff changeset
53 typedef enum {
35399
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
54 PURPLE_ICON_SCALE_DISPLAY = 0x01,
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
55 PURPLE_ICON_SCALE_SEND = 0x02
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15588
diff changeset
56 } PurpleIconScaleRules;
9318
9d1c6820a588 [gaim-migrate @ 10126]
Nathan Walp <nwalp@pidgin.im>
parents: 9316
diff changeset
57
9d1c6820a588 [gaim-migrate @ 10126]
Nathan Walp <nwalp@pidgin.im>
parents: 9316
diff changeset
58
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15588
diff changeset
59 typedef struct _PurpleBuddyIconSpec PurpleBuddyIconSpec;
9308
4ea759d72d37 [gaim-migrate @ 10116]
Sean Egan <seanegan@pidgin.im>
parents: 9301
diff changeset
60
9999
86e89e1dee10 [gaim-migrate @ 10913]
Mark Doliner <markdoliner@pidgin.im>
parents: 9971
diff changeset
61 /**
35399
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
62 * PurpleThumbnailSpec:
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
63 *
30113
f60cbf3b3ca9 Allow PRPLs to specify the image formats acceptable for thumbnails (in
Marcus Lundblad <malu@pidgin.im>
parents: 29815
diff changeset
64 * A description of a file transfer thumbnail specification.
f60cbf3b3ca9 Allow PRPLs to specify the image formats acceptable for thumbnails (in
Marcus Lundblad <malu@pidgin.im>
parents: 29815
diff changeset
65 * This tells the UI if and what image formats the prpl support for file
f60cbf3b3ca9 Allow PRPLs to specify the image formats acceptable for thumbnails (in
Marcus Lundblad <malu@pidgin.im>
parents: 29815
diff changeset
66 * transfer thumbnails.
f60cbf3b3ca9 Allow PRPLs to specify the image formats acceptable for thumbnails (in
Marcus Lundblad <malu@pidgin.im>
parents: 29815
diff changeset
67 */
f60cbf3b3ca9 Allow PRPLs to specify the image formats acceptable for thumbnails (in
Marcus Lundblad <malu@pidgin.im>
parents: 29815
diff changeset
68 typedef struct _PurpleThumbnailSpec PurpleThumbnailSpec;
f60cbf3b3ca9 Allow PRPLs to specify the image formats acceptable for thumbnails (in
Marcus Lundblad <malu@pidgin.im>
parents: 29815
diff changeset
69
f60cbf3b3ca9 Allow PRPLs to specify the image formats acceptable for thumbnails (in
Marcus Lundblad <malu@pidgin.im>
parents: 29815
diff changeset
70 /**
35399
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
71 * NO_BUDDY_ICONS:
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
72 *
11035
c10c382f4896 [gaim-migrate @ 12922]
Gary Kramlich <grim@reaperworld.com>
parents: 10870
diff changeset
73 * This \#define exists just to make it easier to fill out the buddy icon
9999
86e89e1dee10 [gaim-migrate @ 10913]
Mark Doliner <markdoliner@pidgin.im>
parents: 9971
diff changeset
74 * field in the prpl info struct for protocols that couldn't care less.
86e89e1dee10 [gaim-migrate @ 10913]
Mark Doliner <markdoliner@pidgin.im>
parents: 9971
diff changeset
75 */
15281
5c0b8a2f6b3e [gaim-migrate @ 18009]
Mark Doliner <markdoliner@pidgin.im>
parents: 15205
diff changeset
76 #define NO_BUDDY_ICONS {NULL, 0, 0, 0, 0, 0, 0}
5c0b8a2f6b3e [gaim-migrate @ 18009]
Mark Doliner <markdoliner@pidgin.im>
parents: 15205
diff changeset
77
17392
e88a54874d37 Don't include unistd.h if HAVE_UNISTD_H isn't defined.
Daniel Atallah <datallah@pidgin.im>
parents: 16961
diff changeset
78 #ifdef HAVE_UNISTD_H
15281
5c0b8a2f6b3e [gaim-migrate @ 18009]
Mark Doliner <markdoliner@pidgin.im>
parents: 15205
diff changeset
79 #include <unistd.h>
17392
e88a54874d37 Don't include unistd.h if HAVE_UNISTD_H isn't defined.
Daniel Atallah <datallah@pidgin.im>
parents: 16961
diff changeset
80 #endif
9308
4ea759d72d37 [gaim-migrate @ 10116]
Sean Egan <seanegan@pidgin.im>
parents: 9301
diff changeset
81
34706
02cb08146888 Renamed blist.[ch] to buddylist.[ch]
Ankit Vani <a@nevitus.org>
parents: 34699
diff changeset
82 #include "buddylist.h"
34605
89e6c5346d63 Begun refactoring for PurpleConversation
Ankit Vani <a@nevitus.org>
parents: 33880
diff changeset
83 #include "conversations.h"
34910
60502558e400 Replacements for the GObject Xfer API
Ankit Vani <a@nevitus.org>
parents: 34904
diff changeset
84 #include "xfer.h"
35811
f86e09b6ed33 Small imgstore cleanup
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 35692
diff changeset
85 #include "image.h"
19882
d8c2a2fc1fbf Basic Google Talk voice call support. No UI; receiving a call auto-accepts it.
Sean Egan <seanegan@pidgin.im>
parents: 19641
diff changeset
86 #include "media.h"
15205
f642029b2f97 [gaim-migrate @ 17929]
Evan Schoenberg <evands@pidgin.im>
parents: 15185
diff changeset
87 #include "notify.h"
8573
3f37bd7005c8 [gaim-migrate @ 9321]
Ka-Hing Cheung <khc@pidgin.im>
parents: 8568
diff changeset
88 #include "proxy.h"
3f37bd7005c8 [gaim-migrate @ 9321]
Ka-Hing Cheung <khc@pidgin.im>
parents: 8568
diff changeset
89 #include "plugin.h"
9999
86e89e1dee10 [gaim-migrate @ 10913]
Mark Doliner <markdoliner@pidgin.im>
parents: 9971
diff changeset
90 #include "roomlist.h"
9944
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 9943
diff changeset
91 #include "status.h"
11475
1e222e6e52a0 [gaim-migrate @ 13717]
Gary Kramlich <grim@reaperworld.com>
parents: 11462
diff changeset
92 #include "whiteboard.h"
8573
3f37bd7005c8 [gaim-migrate @ 9321]
Ka-Hing Cheung <khc@pidgin.im>
parents: 8568
diff changeset
93
23337
2643da079f95 Add doxycomment for PurpleBuddyIcon; tweak that of PurpleBuddyIconSpec.
Will Thompson <resiak@pidgin.im>
parents: 23281
diff changeset
94
35399
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
95 /**
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
96 * PurpleBuddyIconSpec:
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
97 * @format: This is a comma-delimited list of image formats or %NULL if
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
98 * icons are not supported. Neither the core nor the prpl will
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
99 * actually check to see if the data it's given matches this;
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
100 * it's entirely up to the UI to do what it wants
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
101 * @min_width: Minimum width of this icon
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
102 * @min_height: Minimum height of this icon
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
103 * @max_width: Maximum width of this icon
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
104 * @max_height: Maximum height of this icon
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
105 * @max_filesize: Maximum size in bytes
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
106 * @scale_rules: How to stretch this icon
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
107 *
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
108 * A description of a Buddy Icon specification. This tells Purple what kind of
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
109 * image file it should give this prpl, and what kind of image file it should
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
110 * expect back. Dimensions less than 1 should be ignored and the image not
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
111 * scaled.
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
112 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15588
diff changeset
113 struct _PurpleBuddyIconSpec {
23337
2643da079f95 Add doxycomment for PurpleBuddyIcon; tweak that of PurpleBuddyIconSpec.
Will Thompson <resiak@pidgin.im>
parents: 23281
diff changeset
114 char *format;
35399
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
115 int min_width;
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
116 int min_height;
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
117 int max_width;
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
118 int max_height;
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
119 size_t max_filesize;
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
120 PurpleIconScaleRules scale_rules;
15281
5c0b8a2f6b3e [gaim-migrate @ 18009]
Mark Doliner <markdoliner@pidgin.im>
parents: 15205
diff changeset
121 };
30125
e28699c46311 Whitespace trim.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 30114
diff changeset
122
35399
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
123 /**
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
124 * proto_chat_entry:
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
125 * @label: User-friendly name of the entry
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
126 * @identifier: Used by the PRPL to identify the option
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
127 * @required: True if it's required
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
128 * @is_int: True if the entry expects an integer
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
129 * @min: Minimum value in case of integer
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
130 * @max: Maximum value in case of integer
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
131 * @secret: True if the entry is secret (password)
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
132 *
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
133 * Represents an entry containing information that must be supplied by the
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
134 * user when joining a chat.
28684
b4c337df39a1 Documented chat API. References #10605
Felix Kerekes <sttwister@soc.pidgin.im>
parents: 27132
diff changeset
135 */
9713
bb37562302a1 [gaim-migrate @ 10574]
Mark Doliner <markdoliner@pidgin.im>
parents: 9584
diff changeset
136 struct proto_chat_entry {
35399
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
137 const char *label;
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
138 const char *identifier;
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
139 gboolean required;
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
140 gboolean is_int;
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
141 int min;
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
142 int max;
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
143 gboolean secret;
19604
ae3d7cc7063d Attention API for nudges/buzzes/zaps of various protocols.
Jeff Connelly <jeff2@soc.pidgin.im>
parents: 19401
diff changeset
144 };
ae3d7cc7063d Attention API for nudges/buzzes/zaps of various protocols.
Jeff Connelly <jeff2@soc.pidgin.im>
parents: 19401
diff changeset
145
6622
277eb0b14653 [gaim-migrate @ 7146]
Robert McQueen <robot101@debian.org>
parents: 6451
diff changeset
146 /**
35399
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
147 * PurpleProtocolOptions:
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
148 * @OPT_PROTO_UNIQUE_CHATNAME: User names are unique to a chat and are not
35468
65e7b4566de4 Fix HTML generation warnings by using DocBook tags
Ankit Vani <a@nevitus.org>
parents: 35464
diff changeset
149 * shared between rooms.<sbr/>
35399
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
150 * XMPP lets you choose what name you want in chats, so it shouldn't
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
151 * be pulling the aliases from the buddy list for the chat list; it
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
152 * gets annoying.
35468
65e7b4566de4 Fix HTML generation warnings by using DocBook tags
Ankit Vani <a@nevitus.org>
parents: 35464
diff changeset
153 * @OPT_PROTO_CHAT_TOPIC: Chat rooms have topics.<sbr/>
35399
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
154 * IRC and XMPP support this.
35468
65e7b4566de4 Fix HTML generation warnings by using DocBook tags
Ankit Vani <a@nevitus.org>
parents: 35464
diff changeset
155 * @OPT_PROTO_NO_PASSWORD: Don't require passwords for sign-in.<sbr/>
35399
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
156 * Zephyr doesn't require passwords, so there's no need for a
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
157 * password prompt.
35468
65e7b4566de4 Fix HTML generation warnings by using DocBook tags
Ankit Vani <a@nevitus.org>
parents: 35464
diff changeset
158 * @OPT_PROTO_MAIL_CHECK: Notify on new mail.<sbr/>
35399
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
159 * MSN and Yahoo notify you when you have new mail.
35468
65e7b4566de4 Fix HTML generation warnings by using DocBook tags
Ankit Vani <a@nevitus.org>
parents: 35464
diff changeset
160 * @OPT_PROTO_IM_IMAGE: Images in IMs.<sbr/>
35399
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
161 * Oscar lets you send images in direct IMs.
35468
65e7b4566de4 Fix HTML generation warnings by using DocBook tags
Ankit Vani <a@nevitus.org>
parents: 35464
diff changeset
162 * @OPT_PROTO_PASSWORD_OPTIONAL: Allow passwords to be optional.<sbr/>
35399
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
163 * Passwords in IRC are optional, and are needed for certain
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
164 * functionality.
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
165 * @OPT_PROTO_USE_POINTSIZE: Allows font size to be specified in sane point
35468
65e7b4566de4 Fix HTML generation warnings by using DocBook tags
Ankit Vani <a@nevitus.org>
parents: 35464
diff changeset
166 * size.<sbr/>
35399
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
167 * Probably just XMPP and Y!M
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
168 * @OPT_PROTO_REGISTER_NOSCREENNAME: Set the Register button active even when
35468
65e7b4566de4 Fix HTML generation warnings by using DocBook tags
Ankit Vani <a@nevitus.org>
parents: 35464
diff changeset
169 * the username has not been specified.<sbr/>
35399
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
170 * Gadu-Gadu doesn't need a username to register new account (because
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
171 * usernames are assigned by the server).
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
172 * @OPT_PROTO_SLASH_COMMANDS_NATIVE: Indicates that slash commands are native
35468
65e7b4566de4 Fix HTML generation warnings by using DocBook tags
Ankit Vani <a@nevitus.org>
parents: 35464
diff changeset
173 * to this protocol.<sbr/>
35399
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
174 * Used as a hint that unknown commands should not be sent as
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
175 * messages.
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
176 * @OPT_PROTO_INVITE_MESSAGE: Indicates that this protocol supports sending a
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
177 * user-supplied message along with an invitation.
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
178 * @OPT_PROTO_AUTHORIZATION_GRANTED_MESSAGE: Indicates that this protocol
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
179 * supports sending a user-supplied message along with an
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
180 * authorization acceptance.
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
181 * @OPT_PROTO_AUTHORIZATION_DENIED_MESSAGE: Indicates that this protocol
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
182 * supports sending a user-supplied message along with an
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
183 * authorization denial.
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
184 *
4557
40c90b1671cf [gaim-migrate @ 4837]
Christian Hammond <chipx86@chipx86.com>
parents: 4514
diff changeset
185 * Protocol options
40c90b1671cf [gaim-migrate @ 4837]
Christian Hammond <chipx86@chipx86.com>
parents: 4514
diff changeset
186 *
35399
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
187 * These should all be stuff that some protocols can do and others can't.
4557
40c90b1671cf [gaim-migrate @ 4837]
Christian Hammond <chipx86@chipx86.com>
parents: 4514
diff changeset
188 */
35399
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
189 typedef enum /*< flags >*/
4557
40c90b1671cf [gaim-migrate @ 4837]
Christian Hammond <chipx86@chipx86.com>
parents: 4514
diff changeset
190 {
35399
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
191 OPT_PROTO_UNIQUE_CHATNAME = 0x00000004,
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
192 OPT_PROTO_CHAT_TOPIC = 0x00000008,
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
193 OPT_PROTO_NO_PASSWORD = 0x00000010,
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
194 OPT_PROTO_MAIL_CHECK = 0x00000020,
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
195 OPT_PROTO_IM_IMAGE = 0x00000040,
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
196 OPT_PROTO_PASSWORD_OPTIONAL = 0x00000080,
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
197 OPT_PROTO_USE_POINTSIZE = 0x00000100,
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
198 OPT_PROTO_REGISTER_NOSCREENNAME = 0x00000200,
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
199 OPT_PROTO_SLASH_COMMANDS_NATIVE = 0x00000400,
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
200 OPT_PROTO_INVITE_MESSAGE = 0x00000800,
33696
b210b3afb63d Add some prpl flags to indicate support for auth response messages.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 33568
diff changeset
201 OPT_PROTO_AUTHORIZATION_GRANTED_MESSAGE = 0x00001000,
35399
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
202 OPT_PROTO_AUTHORIZATION_DENIED_MESSAGE = 0x00002000
18092
1a2362194473 Mostly taken from the patch on ticket #410, don't send unknown slash
Stu Tomlinson <nosnilmot@pidgin.im>
parents: 17392
diff changeset
203
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15588
diff changeset
204 } PurpleProtocolOptions;
4557
40c90b1671cf [gaim-migrate @ 4837]
Christian Hammond <chipx86@chipx86.com>
parents: 4514
diff changeset
205
40c90b1671cf [gaim-migrate @ 4837]
Christian Hammond <chipx86@chipx86.com>
parents: 4514
diff changeset
206 /**
35399
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
207 * PurplePluginProtocolInfo:
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
208 *
5205
242b8aa81328 [gaim-migrate @ 5573]
Christian Hammond <chipx86@chipx86.com>
parents: 5148
diff changeset
209 * A protocol plugin information structure.
4557
40c90b1671cf [gaim-migrate @ 4837]
Christian Hammond <chipx86@chipx86.com>
parents: 4514
diff changeset
210 *
40c90b1671cf [gaim-migrate @ 4837]
Christian Hammond <chipx86@chipx86.com>
parents: 4514
diff changeset
211 * Every protocol plugin initializes this structure. It is the gateway
22906
26919a723b1e Fix a typo in a doc comment.
Richard Laager <rlaager@pidgin.im>
parents: 22251
diff changeset
212 * between purple and the protocol plugin. Many of these callbacks can be
35464
1dde6f706947 Print the entire PurpleProtocolInfo struct in docs instead of documenting each member.
Ankit Vani <a@nevitus.org>
parents: 35440
diff changeset
213 * %NULL. If a callback must be implemented, it has a comment indicating so.
4557
40c90b1671cf [gaim-migrate @ 4837]
Christian Hammond <chipx86@chipx86.com>
parents: 4514
diff changeset
214 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15588
diff changeset
215 struct _PurplePluginProtocolInfo
4557
40c90b1671cf [gaim-migrate @ 4837]
Christian Hammond <chipx86@chipx86.com>
parents: 4514
diff changeset
216 {
35464
1dde6f706947 Print the entire PurpleProtocolInfo struct in docs instead of documenting each member.
Ankit Vani <a@nevitus.org>
parents: 35440
diff changeset
217 /*
23276
f4944cfaa1ff Use up the last padding for PurplePluginProtocolInfo in a way that allows
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 23272
diff changeset
218 * The size of the PurplePluginProtocolInfo. This should always be sizeof(PurplePluginProtocolInfo).
f4944cfaa1ff Use up the last padding for PurplePluginProtocolInfo in a way that allows
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 23272
diff changeset
219 * This allows adding more functions to this struct without requiring a major version bump.
f4944cfaa1ff Use up the last padding for PurplePluginProtocolInfo in a way that allows
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 23272
diff changeset
220 */
f4944cfaa1ff Use up the last padding for PurplePluginProtocolInfo in a way that allows
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 23272
diff changeset
221 unsigned long struct_size;
f4944cfaa1ff Use up the last padding for PurplePluginProtocolInfo in a way that allows
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 23272
diff changeset
222
f4944cfaa1ff Use up the last padding for PurplePluginProtocolInfo in a way that allows
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 23272
diff changeset
223 /* NOTE:
f4944cfaa1ff Use up the last padding for PurplePluginProtocolInfo in a way that allows
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 23272
diff changeset
224 * If more functions are added, they should accessed using the following syntax:
f4944cfaa1ff Use up the last padding for PurplePluginProtocolInfo in a way that allows
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 23272
diff changeset
225 *
f4944cfaa1ff Use up the last padding for PurplePluginProtocolInfo in a way that allows
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 23272
diff changeset
226 * if (PURPLE_PROTOCOL_PLUGIN_HAS_FUNC(prpl, new_function))
f4944cfaa1ff Use up the last padding for PurplePluginProtocolInfo in a way that allows
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 23272
diff changeset
227 * prpl->new_function(...);
f4944cfaa1ff Use up the last padding for PurplePluginProtocolInfo in a way that allows
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 23272
diff changeset
228 *
f4944cfaa1ff Use up the last padding for PurplePluginProtocolInfo in a way that allows
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 23272
diff changeset
229 * instead of
f4944cfaa1ff Use up the last padding for PurplePluginProtocolInfo in a way that allows
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 23272
diff changeset
230 *
f4944cfaa1ff Use up the last padding for PurplePluginProtocolInfo in a way that allows
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 23272
diff changeset
231 * if (prpl->new_function != NULL)
f4944cfaa1ff Use up the last padding for PurplePluginProtocolInfo in a way that allows
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 23272
diff changeset
232 * prpl->new_function(...);
f4944cfaa1ff Use up the last padding for PurplePluginProtocolInfo in a way that allows
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 23272
diff changeset
233 *
f4944cfaa1ff Use up the last padding for PurplePluginProtocolInfo in a way that allows
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 23272
diff changeset
234 * The PURPLE_PROTOCOL_PLUGIN_HAS_FUNC macro can be used for the older member
f4944cfaa1ff Use up the last padding for PurplePluginProtocolInfo in a way that allows
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 23272
diff changeset
235 * functions (e.g. login, send_im etc.) too.
f4944cfaa1ff Use up the last padding for PurplePluginProtocolInfo in a way that allows
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 23272
diff changeset
236 */
23277
ea315a8d5bad Patch from Jaywalker to let prpls add some helpful text for some account
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 23276
diff changeset
237
35464
1dde6f706947 Print the entire PurpleProtocolInfo struct in docs instead of documenting each member.
Ankit Vani <a@nevitus.org>
parents: 35440
diff changeset
238 PurpleProtocolOptions options; /* Protocol options. */
5205
242b8aa81328 [gaim-migrate @ 5573]
Christian Hammond <chipx86@chipx86.com>
parents: 5148
diff changeset
239
35464
1dde6f706947 Print the entire PurpleProtocolInfo struct in docs instead of documenting each member.
Ankit Vani <a@nevitus.org>
parents: 35440
diff changeset
240 GList *user_splits; /* A GList of PurpleAccountUserSplit */
1dde6f706947 Print the entire PurpleProtocolInfo struct in docs instead of documenting each member.
Ankit Vani <a@nevitus.org>
parents: 35440
diff changeset
241 GList *protocol_options; /* A GList of PurpleAccountOption */
10160
90f207810143 [gaim-migrate @ 11243]
Mark Doliner <markdoliner@pidgin.im>
parents: 10104
diff changeset
242
35464
1dde6f706947 Print the entire PurpleProtocolInfo struct in docs instead of documenting each member.
Ankit Vani <a@nevitus.org>
parents: 35440
diff changeset
243 PurpleBuddyIconSpec icon_spec; /* The icon spec. */
10160
90f207810143 [gaim-migrate @ 11243]
Mark Doliner <markdoliner@pidgin.im>
parents: 10104
diff changeset
244
35464
1dde6f706947 Print the entire PurpleProtocolInfo struct in docs instead of documenting each member.
Ankit Vani <a@nevitus.org>
parents: 35440
diff changeset
245 /*
6451
2ff17ce330d8 [gaim-migrate @ 6960]
Christian Hammond <chipx86@chipx86.com>
parents: 6418
diff changeset
246 * Returns the base icon name for the given buddy and account.
25888
d0fdd378a635 Remove trailing whitespace
Mark Doliner <markdoliner@pidgin.im>
parents: 25231
diff changeset
247 * If buddy is NULL and the account is non-NULL, it will return the
16320
eec8b2bed22e Document prpl_info->list_icon(NULL, NULL), and add my name to COPYRIGHT.
Jeff Connelly <jeff2@soc.pidgin.im>
parents: 15884
diff changeset
248 * name to use for the account's icon. If both are NULL, it will
eec8b2bed22e Document prpl_info->list_icon(NULL, NULL), and add my name to COPYRIGHT.
Jeff Connelly <jeff2@soc.pidgin.im>
parents: 15884
diff changeset
249 * return the name to use for the protocol's icon.
23277
ea315a8d5bad Patch from Jaywalker to let prpls add some helpful text for some account
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 23276
diff changeset
250 *
16320
eec8b2bed22e Document prpl_info->list_icon(NULL, NULL), and add my name to COPYRIGHT.
Jeff Connelly <jeff2@soc.pidgin.im>
parents: 15884
diff changeset
251 * This must be implemented.
23277
ea315a8d5bad Patch from Jaywalker to let prpls add some helpful text for some account
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 23276
diff changeset
252 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15588
diff changeset
253 const char *(*list_icon)(PurpleAccount *account, PurpleBuddy *buddy);
24912
9ae8349f0353 Move the mood UI for ICQ into Pidgin. It still uses the new request API
Richard Laager <rlaager@pidgin.im>
parents: 23875
diff changeset
254
35464
1dde6f706947 Print the entire PurpleProtocolInfo struct in docs instead of documenting each member.
Ankit Vani <a@nevitus.org>
parents: 35440
diff changeset
255 /*
5205
242b8aa81328 [gaim-migrate @ 5573]
Christian Hammond <chipx86@chipx86.com>
parents: 5148
diff changeset
256 * Fills the four char**'s with string identifiers for "emblems"
242b8aa81328 [gaim-migrate @ 5573]
Christian Hammond <chipx86@chipx86.com>
parents: 5148
diff changeset
257 * that the UI will interpret and display as relevant
4687
91ad36873636 [gaim-migrate @ 4998]
Sean Egan <seanegan@pidgin.im>
parents: 4668
diff changeset
258 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15588
diff changeset
259 const char *(*list_emblem)(PurpleBuddy *buddy);
4722
f834a9a217c4 [gaim-migrate @ 5034]
Sean Egan <seanegan@pidgin.im>
parents: 4687
diff changeset
260
35464
1dde6f706947 Print the entire PurpleProtocolInfo struct in docs instead of documenting each member.
Ankit Vani <a@nevitus.org>
parents: 35440
diff changeset
261 /*
5205
242b8aa81328 [gaim-migrate @ 5573]
Christian Hammond <chipx86@chipx86.com>
parents: 5148
diff changeset
262 * Gets a short string representing this buddy's status. This will
242b8aa81328 [gaim-migrate @ 5573]
Christian Hammond <chipx86@chipx86.com>
parents: 5148
diff changeset
263 * be shown on the buddy list.
26107
3f03e67b89ba Fixed up media functions in prpl.c and prpl.h, adding more documentation and
Michael Ruprecht <maiku@pidgin.im>
parents: 26106
diff changeset
264 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15588
diff changeset
265 char *(*status_text)(PurpleBuddy *buddy);
23707
480f94157418 propagate from branch 'im.pidgin.pidgin' (head bd5f7f61d9349053ee4738efc0d17453f0574057)
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 23337 22648
diff changeset
266
35464
1dde6f706947 Print the entire PurpleProtocolInfo struct in docs instead of documenting each member.
Ankit Vani <a@nevitus.org>
parents: 35440
diff changeset
267 /*
12970
c2f3b4dcf711 [gaim-migrate @ 15323]
Richard Laager <rlaager@pidgin.im>
parents: 12943
diff changeset
268 * Allows the prpl to add text to a buddy's tooltip.
4724
2c7fae3847c8 [gaim-migrate @ 5037]
Sean Egan <seanegan@pidgin.im>
parents: 4722
diff changeset
269 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15588
diff changeset
270 void (*tooltip_text)(PurpleBuddy *buddy, PurpleNotifyUserInfo *user_info, gboolean full);
6451
2ff17ce330d8 [gaim-migrate @ 6960]
Christian Hammond <chipx86@chipx86.com>
parents: 6418
diff changeset
271
35464
1dde6f706947 Print the entire PurpleProtocolInfo struct in docs instead of documenting each member.
Ankit Vani <a@nevitus.org>
parents: 35440
diff changeset
272 /*
20978
f6aededb6700 Add some (but not much!) documentation to PurplePluginProtocolInfo.
Will Thompson <resiak@pidgin.im>
parents: 20147
diff changeset
273 * Returns a list of #PurpleStatusType which exist for this account;
f6aededb6700 Add some (but not much!) documentation to PurplePluginProtocolInfo.
Will Thompson <resiak@pidgin.im>
parents: 20147
diff changeset
274 * this must be implemented, and must add at least the offline and
f6aededb6700 Add some (but not much!) documentation to PurplePluginProtocolInfo.
Will Thompson <resiak@pidgin.im>
parents: 20147
diff changeset
275 * online states.
26107
3f03e67b89ba Fixed up media functions in prpl.c and prpl.h, adding more documentation and
Michael Ruprecht <maiku@pidgin.im>
parents: 26106
diff changeset
276 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15588
diff changeset
277 GList *(*status_types)(PurpleAccount *account);
5205
242b8aa81328 [gaim-migrate @ 5573]
Christian Hammond <chipx86@chipx86.com>
parents: 5148
diff changeset
278
35464
1dde6f706947 Print the entire PurpleProtocolInfo struct in docs instead of documenting each member.
Ankit Vani <a@nevitus.org>
parents: 35440
diff changeset
279 /*
20978
f6aededb6700 Add some (but not much!) documentation to PurplePluginProtocolInfo.
Will Thompson <resiak@pidgin.im>
parents: 20147
diff changeset
280 * Returns a list of #PurpleMenuAction structs, which represent extra
35399
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
281 * actions to be shown in (for example) the right-click menu for @node.
20978
f6aededb6700 Add some (but not much!) documentation to PurplePluginProtocolInfo.
Will Thompson <resiak@pidgin.im>
parents: 20147
diff changeset
282 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15588
diff changeset
283 GList *(*blist_node_menu)(PurpleBlistNode *node);
26657
1067482b6de1 propagate from branch 'im.pidgin.pidgin' (head 69f29e0c8111a1c5b6270f7924a468b75f6b5aa9)
Richard Laager <rlaager@pidgin.im>
parents: 26611 24912
diff changeset
284
35464
1dde6f706947 Print the entire PurpleProtocolInfo struct in docs instead of documenting each member.
Ankit Vani <a@nevitus.org>
parents: 35440
diff changeset
285 /*
28684
b4c337df39a1 Documented chat API. References #10605
Felix Kerekes <sttwister@soc.pidgin.im>
parents: 27132
diff changeset
286 * Returns a list of #proto_chat_entry structs, which represent
b4c337df39a1 Documented chat API. References #10605
Felix Kerekes <sttwister@soc.pidgin.im>
parents: 27132
diff changeset
287 * information required by the PRPL to join a chat. libpurple will
b4c337df39a1 Documented chat API. References #10605
Felix Kerekes <sttwister@soc.pidgin.im>
parents: 27132
diff changeset
288 * call join_chat along with the information filled by the user.
b4c337df39a1 Documented chat API. References #10605
Felix Kerekes <sttwister@soc.pidgin.im>
parents: 27132
diff changeset
289 *
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 34940
diff changeset
290 * Returns: A list of #proto_chat_entry structs
24912
9ae8349f0353 Move the mood UI for ICQ into Pidgin. It still uses the new request API
Richard Laager <rlaager@pidgin.im>
parents: 23875
diff changeset
291 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15588
diff changeset
292 GList *(*chat_info)(PurpleConnection *);
30138
cca9685df785 Add purple_account_[gs]et_public_alias functions, per discussion in d@cpi
Paul Aurich <darkrain42@pidgin.im>
parents: 30125
diff changeset
293
35464
1dde6f706947 Print the entire PurpleProtocolInfo struct in docs instead of documenting each member.
Ankit Vani <a@nevitus.org>
parents: 35440
diff changeset
294 /*
28684
b4c337df39a1 Documented chat API. References #10605
Felix Kerekes <sttwister@soc.pidgin.im>
parents: 27132
diff changeset
295 * Returns a hashtable which maps #proto_chat_entry struct identifiers
31293
169eeb43b52c Remove trailing whitespace
Richard Laager <rlaager@pidgin.im>
parents: 30195
diff changeset
296 * to default options as strings based on chat_name. The resulting
28684
b4c337df39a1 Documented chat API. References #10605
Felix Kerekes <sttwister@soc.pidgin.im>
parents: 27132
diff changeset
297 * hashtable should be created with g_hash_table_new_full(g_str_hash,
b4c337df39a1 Documented chat API. References #10605
Felix Kerekes <sttwister@soc.pidgin.im>
parents: 27132
diff changeset
298 * g_str_equal, NULL, g_free);. Use #get_chat_name if you instead need
b4c337df39a1 Documented chat API. References #10605
Felix Kerekes <sttwister@soc.pidgin.im>
parents: 27132
diff changeset
299 * to extract a chat name from a hashtable.
30138
cca9685df785 Add purple_account_[gs]et_public_alias functions, per discussion in d@cpi
Paul Aurich <darkrain42@pidgin.im>
parents: 30125
diff changeset
300 *
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 34940
diff changeset
301 * @chat_name: The chat name to be turned into components
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 34940
diff changeset
302 * Returns: Hashtable containing the information extracted from chat_name
30138
cca9685df785 Add purple_account_[gs]et_public_alias functions, per discussion in d@cpi
Paul Aurich <darkrain42@pidgin.im>
parents: 30125
diff changeset
303 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15588
diff changeset
304 GHashTable *(*chat_info_defaults)(PurpleConnection *, const char *chat_name);
1333
bbd54f86976f [gaim-migrate @ 1343]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 1318
diff changeset
305
4557
40c90b1671cf [gaim-migrate @ 4837]
Christian Hammond <chipx86@chipx86.com>
parents: 4514
diff changeset
306 /* All the server-related functions */
10160
90f207810143 [gaim-migrate @ 11243]
Mark Doliner <markdoliner@pidgin.im>
parents: 10104
diff changeset
307
35464
1dde6f706947 Print the entire PurpleProtocolInfo struct in docs instead of documenting each member.
Ankit Vani <a@nevitus.org>
parents: 35440
diff changeset
308 /* This must be implemented. */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15588
diff changeset
309 void (*login)(PurpleAccount *);
10160
90f207810143 [gaim-migrate @ 11243]
Mark Doliner <markdoliner@pidgin.im>
parents: 10104
diff changeset
310
35464
1dde6f706947 Print the entire PurpleProtocolInfo struct in docs instead of documenting each member.
Ankit Vani <a@nevitus.org>
parents: 35440
diff changeset
311 /* This must be implemented. */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15588
diff changeset
312 void (*close)(PurpleConnection *);
11693
1a42a66ca0f8 [gaim-migrate @ 13979]
Mark Doliner <markdoliner@pidgin.im>
parents: 11500
diff changeset
313
35464
1dde6f706947 Print the entire PurpleProtocolInfo struct in docs instead of documenting each member.
Ankit Vani <a@nevitus.org>
parents: 35440
diff changeset
314 /*
11693
1a42a66ca0f8 [gaim-migrate @ 13979]
Mark Doliner <markdoliner@pidgin.im>
parents: 11500
diff changeset
315 * This PRPL function should return a positive value on success.
1a42a66ca0f8 [gaim-migrate @ 13979]
Mark Doliner <markdoliner@pidgin.im>
parents: 11500
diff changeset
316 * If the message is too big to be sent, return -E2BIG. If
1a42a66ca0f8 [gaim-migrate @ 13979]
Mark Doliner <markdoliner@pidgin.im>
parents: 11500
diff changeset
317 * the account is not connected, return -ENOTCONN. If the
1a42a66ca0f8 [gaim-migrate @ 13979]
Mark Doliner <markdoliner@pidgin.im>
parents: 11500
diff changeset
318 * PRPL is unable to send the message for another reason, return
1a42a66ca0f8 [gaim-migrate @ 13979]
Mark Doliner <markdoliner@pidgin.im>
parents: 11500
diff changeset
319 * some other negative value. You can use one of the valid
1a42a66ca0f8 [gaim-migrate @ 13979]
Mark Doliner <markdoliner@pidgin.im>
parents: 11500
diff changeset
320 * errno values, or just big something. If the message should
1a42a66ca0f8 [gaim-migrate @ 13979]
Mark Doliner <markdoliner@pidgin.im>
parents: 11500
diff changeset
321 * not be echoed to the conversation window, return 0.
30138
cca9685df785 Add purple_account_[gs]et_public_alias functions, per discussion in d@cpi
Paul Aurich <darkrain42@pidgin.im>
parents: 30125
diff changeset
322 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15588
diff changeset
323 int (*send_im)(PurpleConnection *, const char *who,
6982
12f08de92674 [gaim-migrate @ 7538]
Mark Doliner <markdoliner@pidgin.im>
parents: 6885
diff changeset
324 const char *message,
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15588
diff changeset
325 PurpleMessageFlags flags);
11693
1a42a66ca0f8 [gaim-migrate @ 13979]
Mark Doliner <markdoliner@pidgin.im>
parents: 11500
diff changeset
326
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15588
diff changeset
327 void (*set_info)(PurpleConnection *, const char *info);
31594
ec0856af6477 Add new functions for adding buddies with an invite message. If the
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 31293
diff changeset
328
35464
1dde6f706947 Print the entire PurpleProtocolInfo struct in docs instead of documenting each member.
Ankit Vani <a@nevitus.org>
parents: 35440
diff changeset
329 /*
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 34940
diff changeset
330 * Returns: If this protocol requires the PURPLE_IM_TYPING message to
35464
1dde6f706947 Print the entire PurpleProtocolInfo struct in docs instead of documenting each member.
Ankit Vani <a@nevitus.org>
parents: 35440
diff changeset
331 * be sent repeatedly to signify that the user is still
1dde6f706947 Print the entire PurpleProtocolInfo struct in docs instead of documenting each member.
Ankit Vani <a@nevitus.org>
parents: 35440
diff changeset
332 * typing, then the PRPL should return the number of
1dde6f706947 Print the entire PurpleProtocolInfo struct in docs instead of documenting each member.
Ankit Vani <a@nevitus.org>
parents: 35440
diff changeset
333 * seconds to wait before sending a subsequent notification.
1dde6f706947 Print the entire PurpleProtocolInfo struct in docs instead of documenting each member.
Ankit Vani <a@nevitus.org>
parents: 35440
diff changeset
334 * Otherwise the PRPL should return 0.
24853
12c7cef2f980 Add a comment for the meaning of the return value of this function,
Mark Doliner <markdoliner@pidgin.im>
parents: 23875
diff changeset
335 */
34670
9bd5bd903dc7 Renamed chat buddies to chat users, and IM conversation typing state to IM typing state.
Ankit Vani <a@nevitus.org>
parents: 34622
diff changeset
336 unsigned int (*send_typing)(PurpleConnection *, const char *name, PurpleIMTypingState state);
24853
12c7cef2f980 Add a comment for the meaning of the return value of this function,
Mark Doliner <markdoliner@pidgin.im>
parents: 23875
diff changeset
337
35464
1dde6f706947 Print the entire PurpleProtocolInfo struct in docs instead of documenting each member.
Ankit Vani <a@nevitus.org>
parents: 35440
diff changeset
338 /*
20978
f6aededb6700 Add some (but not much!) documentation to PurplePluginProtocolInfo.
Will Thompson <resiak@pidgin.im>
parents: 20147
diff changeset
339 * Should arrange for purple_notify_userinfo() to be called with
35399
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
340 * @who 's user info.
20978
f6aededb6700 Add some (but not much!) documentation to PurplePluginProtocolInfo.
Will Thompson <resiak@pidgin.im>
parents: 20147
diff changeset
341 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15588
diff changeset
342 void (*get_info)(PurpleConnection *, const char *who);
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15588
diff changeset
343 void (*set_status)(PurpleAccount *account, PurpleStatus *status);
9949
377cd65fab3d [gaim-migrate @ 10845]
Daniel Atallah <datallah@pidgin.im>
parents: 9944
diff changeset
344
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15588
diff changeset
345 void (*set_idle)(PurpleConnection *, int idletime);
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15588
diff changeset
346 void (*change_passwd)(PurpleConnection *, const char *old_pass,
5946
ebabcd2b4637 [gaim-migrate @ 6387]
Christian Hammond <chipx86@chipx86.com>
parents: 5944
diff changeset
347 const char *new_pass);
32315
2550a39e0285 Rename the _with_invite functions to their counterparts.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 32302
diff changeset
348
35464
1dde6f706947 Print the entire PurpleProtocolInfo struct in docs instead of documenting each member.
Ankit Vani <a@nevitus.org>
parents: 35440
diff changeset
349 /*
31594
ec0856af6477 Add new functions for adding buddies with an invite message. If the
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 31293
diff changeset
350 * Add a buddy to a group on the server.
ec0856af6477 Add new functions for adding buddies with an invite message. If the
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 31293
diff changeset
351 *
ec0856af6477 Add new functions for adding buddies with an invite message. If the
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 31293
diff changeset
352 * This PRPL function may be called in situations in which the buddy is
ec0856af6477 Add new functions for adding buddies with an invite message. If the
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 31293
diff changeset
353 * already in the specified group. If the protocol supports
ec0856af6477 Add new functions for adding buddies with an invite message. If the
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 31293
diff changeset
354 * authorization and the user is not already authorized to see the
ec0856af6477 Add new functions for adding buddies with an invite message. If the
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 31293
diff changeset
355 * status of \a buddy, \a add_buddy should request authorization.
ec0856af6477 Add new functions for adding buddies with an invite message. If the
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 31293
diff changeset
356 *
ec0856af6477 Add new functions for adding buddies with an invite message. If the
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 31293
diff changeset
357 * If authorization is required, then use the supplied invite message.
25505
42fc74ce0064 Update the comment for add_buddy in prpl.h to note it may be called to mean 'request authorization'
Paul Aurich <darkrain42@pidgin.im>
parents: 25231
diff changeset
358 */
32315
2550a39e0285 Rename the _with_invite functions to their counterparts.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 32302
diff changeset
359 void (*add_buddy)(PurpleConnection *pc, PurpleBuddy *buddy, PurpleGroup *group, const char *message);
2550a39e0285 Rename the _with_invite functions to their counterparts.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 32302
diff changeset
360 void (*add_buddies)(PurpleConnection *pc, GList *buddies, GList *groups, const char *message);
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15588
diff changeset
361 void (*remove_buddy)(PurpleConnection *, PurpleBuddy *buddy, PurpleGroup *group);
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15588
diff changeset
362 void (*remove_buddies)(PurpleConnection *, GList *buddies, GList *groups);
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15588
diff changeset
363 void (*add_permit)(PurpleConnection *, const char *name);
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15588
diff changeset
364 void (*add_deny)(PurpleConnection *, const char *name);
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15588
diff changeset
365 void (*rem_permit)(PurpleConnection *, const char *name);
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15588
diff changeset
366 void (*rem_deny)(PurpleConnection *, const char *name);
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15588
diff changeset
367 void (*set_permit_deny)(PurpleConnection *);
28684
b4c337df39a1 Documented chat API. References #10605
Felix Kerekes <sttwister@soc.pidgin.im>
parents: 27132
diff changeset
368
35464
1dde6f706947 Print the entire PurpleProtocolInfo struct in docs instead of documenting each member.
Ankit Vani <a@nevitus.org>
parents: 35440
diff changeset
369 /*
28684
b4c337df39a1 Documented chat API. References #10605
Felix Kerekes <sttwister@soc.pidgin.im>
parents: 27132
diff changeset
370 * Called when the user requests joining a chat. Should arrange for
35499
c4c5e0a670b1 Fix namespaces issues in libpurple.
Ankit Vani <a@nevitus.org>
parents: 35491
diff changeset
371 * #purple_serv_got_joined_chat to be called.
31594
ec0856af6477 Add new functions for adding buddies with an invite message. If the
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 31293
diff changeset
372 *
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 34940
diff changeset
373 * @components: A hashtable containing information required to
35464
1dde6f706947 Print the entire PurpleProtocolInfo struct in docs instead of documenting each member.
Ankit Vani <a@nevitus.org>
parents: 35440
diff changeset
374 * join the chat as described by the entries returned
1dde6f706947 Print the entire PurpleProtocolInfo struct in docs instead of documenting each member.
Ankit Vani <a@nevitus.org>
parents: 35440
diff changeset
375 * by #chat_info. It may also be called when accepting
1dde6f706947 Print the entire PurpleProtocolInfo struct in docs instead of documenting each member.
Ankit Vani <a@nevitus.org>
parents: 35440
diff changeset
376 * an invitation, in which case this matches the
35501
602747bb4af9 Fix duplicate prefixes
Ankit Vani <a@nevitus.org>
parents: 35499
diff changeset
377 * data parameter passed to #purple_serv_got_chat_invite.
28684
b4c337df39a1 Documented chat API. References #10605
Felix Kerekes <sttwister@soc.pidgin.im>
parents: 27132
diff changeset
378 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15588
diff changeset
379 void (*join_chat)(PurpleConnection *, GHashTable *components);
28684
b4c337df39a1 Documented chat API. References #10605
Felix Kerekes <sttwister@soc.pidgin.im>
parents: 27132
diff changeset
380
35464
1dde6f706947 Print the entire PurpleProtocolInfo struct in docs instead of documenting each member.
Ankit Vani <a@nevitus.org>
parents: 35440
diff changeset
381 /*
28684
b4c337df39a1 Documented chat API. References #10605
Felix Kerekes <sttwister@soc.pidgin.im>
parents: 27132
diff changeset
382 * Called when the user refuses a chat invitation.
b4c337df39a1 Documented chat API. References #10605
Felix Kerekes <sttwister@soc.pidgin.im>
parents: 27132
diff changeset
383 *
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 34940
diff changeset
384 * @components: A hashtable containing information required to
35501
602747bb4af9 Fix duplicate prefixes
Ankit Vani <a@nevitus.org>
parents: 35499
diff changeset
385 * join the chat as passed to #purple_serv_got_chat_invite.
28684
b4c337df39a1 Documented chat API. References #10605
Felix Kerekes <sttwister@soc.pidgin.im>
parents: 27132
diff changeset
386 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15588
diff changeset
387 void (*reject_chat)(PurpleConnection *, GHashTable *components);
28684
b4c337df39a1 Documented chat API. References #10605
Felix Kerekes <sttwister@soc.pidgin.im>
parents: 27132
diff changeset
388
35464
1dde6f706947 Print the entire PurpleProtocolInfo struct in docs instead of documenting each member.
Ankit Vani <a@nevitus.org>
parents: 35440
diff changeset
389 /*
28684
b4c337df39a1 Documented chat API. References #10605
Felix Kerekes <sttwister@soc.pidgin.im>
parents: 27132
diff changeset
390 * Returns a chat name based on the information in components. Use
31293
169eeb43b52c Remove trailing whitespace
Richard Laager <rlaager@pidgin.im>
parents: 30195
diff changeset
391 * #chat_info_defaults if you instead need to generate a hashtable
28684
b4c337df39a1 Documented chat API. References #10605
Felix Kerekes <sttwister@soc.pidgin.im>
parents: 27132
diff changeset
392 * from a chat name.
b4c337df39a1 Documented chat API. References #10605
Felix Kerekes <sttwister@soc.pidgin.im>
parents: 27132
diff changeset
393 *
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 34940
diff changeset
394 * @components: A hashtable containing information about the chat.
28684
b4c337df39a1 Documented chat API. References #10605
Felix Kerekes <sttwister@soc.pidgin.im>
parents: 27132
diff changeset
395 */
9917
2fbb3c9fab2b [gaim-migrate @ 10809]
Daniel Atallah <datallah@pidgin.im>
parents: 9770
diff changeset
396 char *(*get_chat_name)(GHashTable *components);
28684
b4c337df39a1 Documented chat API. References #10605
Felix Kerekes <sttwister@soc.pidgin.im>
parents: 27132
diff changeset
397
35464
1dde6f706947 Print the entire PurpleProtocolInfo struct in docs instead of documenting each member.
Ankit Vani <a@nevitus.org>
parents: 35440
diff changeset
398 /*
28684
b4c337df39a1 Documented chat API. References #10605
Felix Kerekes <sttwister@soc.pidgin.im>
parents: 27132
diff changeset
399 * Invite a user to join a chat.
b4c337df39a1 Documented chat API. References #10605
Felix Kerekes <sttwister@soc.pidgin.im>
parents: 27132
diff changeset
400 *
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 34940
diff changeset
401 * @id: The id of the chat to invite the user to.
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 34940
diff changeset
402 * @message: A message displayed to the user when the invitation
35464
1dde6f706947 Print the entire PurpleProtocolInfo struct in docs instead of documenting each member.
Ankit Vani <a@nevitus.org>
parents: 35440
diff changeset
403 * is received.
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 34940
diff changeset
404 * @who: The name of the user to send the invation to.
28684
b4c337df39a1 Documented chat API. References #10605
Felix Kerekes <sttwister@soc.pidgin.im>
parents: 27132
diff changeset
405 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15588
diff changeset
406 void (*chat_invite)(PurpleConnection *, int id,
15036
2580e926104d [gaim-migrate @ 17753]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 15002
diff changeset
407 const char *message, const char *who);
35464
1dde6f706947 Print the entire PurpleProtocolInfo struct in docs instead of documenting each member.
Ankit Vani <a@nevitus.org>
parents: 35440
diff changeset
408 /*
28684
b4c337df39a1 Documented chat API. References #10605
Felix Kerekes <sttwister@soc.pidgin.im>
parents: 27132
diff changeset
409 * Called when the user requests leaving a chat.
b4c337df39a1 Documented chat API. References #10605
Felix Kerekes <sttwister@soc.pidgin.im>
parents: 27132
diff changeset
410 *
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 34940
diff changeset
411 * @id: The id of the chat to leave
28684
b4c337df39a1 Documented chat API. References #10605
Felix Kerekes <sttwister@soc.pidgin.im>
parents: 27132
diff changeset
412 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15588
diff changeset
413 void (*chat_leave)(PurpleConnection *, int id);
28684
b4c337df39a1 Documented chat API. References #10605
Felix Kerekes <sttwister@soc.pidgin.im>
parents: 27132
diff changeset
414
35464
1dde6f706947 Print the entire PurpleProtocolInfo struct in docs instead of documenting each member.
Ankit Vani <a@nevitus.org>
parents: 35440
diff changeset
415 /*
28684
b4c337df39a1 Documented chat API. References #10605
Felix Kerekes <sttwister@soc.pidgin.im>
parents: 27132
diff changeset
416 * Send a whisper to a user in a chat.
b4c337df39a1 Documented chat API. References #10605
Felix Kerekes <sttwister@soc.pidgin.im>
parents: 27132
diff changeset
417 *
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 34940
diff changeset
418 * @id: The id of the chat.
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 34940
diff changeset
419 * @who: The name of the user to send the whisper to.
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 34940
diff changeset
420 * @message: The message of the whisper.
28684
b4c337df39a1 Documented chat API. References #10605
Felix Kerekes <sttwister@soc.pidgin.im>
parents: 27132
diff changeset
421 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15588
diff changeset
422 void (*chat_whisper)(PurpleConnection *, int id,
6059
9934c862ca14 [gaim-migrate @ 6509]
John Silvestri <john.silvestri@gmail.com>
parents: 5954
diff changeset
423 const char *who, const char *message);
28684
b4c337df39a1 Documented chat API. References #10605
Felix Kerekes <sttwister@soc.pidgin.im>
parents: 27132
diff changeset
424
35464
1dde6f706947 Print the entire PurpleProtocolInfo struct in docs instead of documenting each member.
Ankit Vani <a@nevitus.org>
parents: 35440
diff changeset
425 /*
28684
b4c337df39a1 Documented chat API. References #10605
Felix Kerekes <sttwister@soc.pidgin.im>
parents: 27132
diff changeset
426 * Send a message to a chat.
b4c337df39a1 Documented chat API. References #10605
Felix Kerekes <sttwister@soc.pidgin.im>
parents: 27132
diff changeset
427 * This PRPL function should return a positive value on success.
b4c337df39a1 Documented chat API. References #10605
Felix Kerekes <sttwister@soc.pidgin.im>
parents: 27132
diff changeset
428 * If the message is too big to be sent, return -E2BIG. If
b4c337df39a1 Documented chat API. References #10605
Felix Kerekes <sttwister@soc.pidgin.im>
parents: 27132
diff changeset
429 * the account is not connected, return -ENOTCONN. If the
b4c337df39a1 Documented chat API. References #10605
Felix Kerekes <sttwister@soc.pidgin.im>
parents: 27132
diff changeset
430 * PRPL is unable to send the message for another reason, return
b4c337df39a1 Documented chat API. References #10605
Felix Kerekes <sttwister@soc.pidgin.im>
parents: 27132
diff changeset
431 * some other negative value. You can use one of the valid
33856
a694b89708c3 Fix incorrect documentation for the prpl chat_send function.
Daniel Atallah <datallah@pidgin.im>
parents: 31597
diff changeset
432 * errno values, or just big something.
28684
b4c337df39a1 Documented chat API. References #10605
Felix Kerekes <sttwister@soc.pidgin.im>
parents: 27132
diff changeset
433 *
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 34940
diff changeset
434 * @id: The id of the chat to send the message to.
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 34940
diff changeset
435 * @message: The message to send to the chat.
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 34940
diff changeset
436 * @flags: A bitwise OR of #PurpleMessageFlags representing
35464
1dde6f706947 Print the entire PurpleProtocolInfo struct in docs instead of documenting each member.
Ankit Vani <a@nevitus.org>
parents: 35440
diff changeset
437 * message flags.
1dde6f706947 Print the entire PurpleProtocolInfo struct in docs instead of documenting each member.
Ankit Vani <a@nevitus.org>
parents: 35440
diff changeset
438 *
1dde6f706947 Print the entire PurpleProtocolInfo struct in docs instead of documenting each member.
Ankit Vani <a@nevitus.org>
parents: 35440
diff changeset
439 * Returns: A positive number or 0 in case of success,
1dde6f706947 Print the entire PurpleProtocolInfo struct in docs instead of documenting each member.
Ankit Vani <a@nevitus.org>
parents: 35440
diff changeset
440 * a negative error number in case of failure.
28684
b4c337df39a1 Documented chat API. References #10605
Felix Kerekes <sttwister@soc.pidgin.im>
parents: 27132
diff changeset
441 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15588
diff changeset
442 int (*chat_send)(PurpleConnection *, int id, const char *message, PurpleMessageFlags flags);
21865
59b1c56633d1 De-magic number the prpl_info->keepalive interval, and document it.
Will Thompson <resiak@pidgin.im>
parents: 21552
diff changeset
443
35464
1dde6f706947 Print the entire PurpleProtocolInfo struct in docs instead of documenting each member.
Ankit Vani <a@nevitus.org>
parents: 35440
diff changeset
444 /* If implemented, this will be called regularly for this prpl's
1dde6f706947 Print the entire PurpleProtocolInfo struct in docs instead of documenting each member.
Ankit Vani <a@nevitus.org>
parents: 35440
diff changeset
445 * active connections. You'd want to do this if you need to repeatedly
1dde6f706947 Print the entire PurpleProtocolInfo struct in docs instead of documenting each member.
Ankit Vani <a@nevitus.org>
parents: 35440
diff changeset
446 * send some kind of keepalive packet to the server to avoid being
1dde6f706947 Print the entire PurpleProtocolInfo struct in docs instead of documenting each member.
Ankit Vani <a@nevitus.org>
parents: 35440
diff changeset
447 * disconnected. ("Regularly" is defined by
1dde6f706947 Print the entire PurpleProtocolInfo struct in docs instead of documenting each member.
Ankit Vani <a@nevitus.org>
parents: 35440
diff changeset
448 * KEEPALIVE_INTERVAL in libpurple/connection.c.)
21865
59b1c56633d1 De-magic number the prpl_info->keepalive interval, and document it.
Will Thompson <resiak@pidgin.im>
parents: 21552
diff changeset
449 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15588
diff changeset
450 void (*keepalive)(PurpleConnection *);
1713
3e0138242a5b [gaim-migrate @ 1723]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 1626
diff changeset
451
35464
1dde6f706947 Print the entire PurpleProtocolInfo struct in docs instead of documenting each member.
Ankit Vani <a@nevitus.org>
parents: 35440
diff changeset
452 /* new user registration */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15588
diff changeset
453 void (*register_user)(PurpleAccount *);
2956
1836bfe768df [gaim-migrate @ 2969]
Rob Flynn <gaim@robflynn.com>
parents: 2827
diff changeset
454
35464
1dde6f706947 Print the entire PurpleProtocolInfo struct in docs instead of documenting each member.
Ankit Vani <a@nevitus.org>
parents: 35440
diff changeset
455 /*
1dde6f706947 Print the entire PurpleProtocolInfo struct in docs instead of documenting each member.
Ankit Vani <a@nevitus.org>
parents: 35440
diff changeset
456 * Deprecated: Use PurplePluginProtocolInfo.get_info instead.
20978
f6aededb6700 Add some (but not much!) documentation to PurplePluginProtocolInfo.
Will Thompson <resiak@pidgin.im>
parents: 20147
diff changeset
457 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15588
diff changeset
458 void (*get_cb_info)(PurpleConnection *, int, const char *who);
2827
e3d10df95e74 [gaim-migrate @ 2840]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 2773
diff changeset
459
35464
1dde6f706947 Print the entire PurpleProtocolInfo struct in docs instead of documenting each member.
Ankit Vani <a@nevitus.org>
parents: 35440
diff changeset
460 /* save/store buddy's alias on server list/roster */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15588
diff changeset
461 void (*alias_buddy)(PurpleConnection *, const char *who,
5205
242b8aa81328 [gaim-migrate @ 5573]
Christian Hammond <chipx86@chipx86.com>
parents: 5148
diff changeset
462 const char *alias);
3136
8d988a6d2f4c [gaim-migrate @ 3151]
Rob Flynn <gaim@robflynn.com>
parents: 3044
diff changeset
463
35464
1dde6f706947 Print the entire PurpleProtocolInfo struct in docs instead of documenting each member.
Ankit Vani <a@nevitus.org>
parents: 35440
diff changeset
464 /* change a buddy's group on a server list/roster */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15588
diff changeset
465 void (*group_buddy)(PurpleConnection *, const char *who,
5205
242b8aa81328 [gaim-migrate @ 5573]
Christian Hammond <chipx86@chipx86.com>
parents: 5148
diff changeset
466 const char *old_group, const char *new_group);
3136
8d988a6d2f4c [gaim-migrate @ 3151]
Rob Flynn <gaim@robflynn.com>
parents: 3044
diff changeset
467
35464
1dde6f706947 Print the entire PurpleProtocolInfo struct in docs instead of documenting each member.
Ankit Vani <a@nevitus.org>
parents: 35440
diff changeset
468 /* rename a group on a server list/roster */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15588
diff changeset
469 void (*rename_group)(PurpleConnection *, const char *old_name,
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15588
diff changeset
470 PurpleGroup *group, GList *moved_buddies);
3348
57ed471963ba [gaim-migrate @ 3367]
Mark Doliner <markdoliner@pidgin.im>
parents: 3313
diff changeset
471
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15588
diff changeset
472 void (*buddy_free)(PurpleBuddy *);
2607
7bcd3ea48df3 [gaim-migrate @ 2620]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 2582
diff changeset
473
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15588
diff changeset
474 void (*convo_closed)(PurpleConnection *, const char *who);
5205
242b8aa81328 [gaim-migrate @ 5573]
Christian Hammond <chipx86@chipx86.com>
parents: 5148
diff changeset
475
35464
1dde6f706947 Print the entire PurpleProtocolInfo struct in docs instead of documenting each member.
Ankit Vani <a@nevitus.org>
parents: 35440
diff changeset
476 /*
35399
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
477 * Convert the username @who to its canonical form. Also checks for
33087
182da0516150 Libpurple: username validation support; Pidgin: use it in account setup dialog
Tomasz Wasilczyk <tomkiewicz@cpw.pidgin.im>
parents: 32787
diff changeset
478 * validity.
182da0516150 Libpurple: username validation support; Pidgin: use it in account setup dialog
Tomasz Wasilczyk <tomkiewicz@cpw.pidgin.im>
parents: 32787
diff changeset
479 *
182da0516150 Libpurple: username validation support; Pidgin: use it in account setup dialog
Tomasz Wasilczyk <tomkiewicz@cpw.pidgin.im>
parents: 32787
diff changeset
480 * For example, AIM treats "fOo BaR" and "foobar" as the same user; this
182da0516150 Libpurple: username validation support; Pidgin: use it in account setup dialog
Tomasz Wasilczyk <tomkiewicz@cpw.pidgin.im>
parents: 32787
diff changeset
481 * function should return the same normalized string for both of those.
182da0516150 Libpurple: username validation support; Pidgin: use it in account setup dialog
Tomasz Wasilczyk <tomkiewicz@cpw.pidgin.im>
parents: 32787
diff changeset
482 * On the other hand, both of these are invalid for protocols with
182da0516150 Libpurple: username validation support; Pidgin: use it in account setup dialog
Tomasz Wasilczyk <tomkiewicz@cpw.pidgin.im>
parents: 32787
diff changeset
483 * number-based usernames, so function should return NULL in such case.
182da0516150 Libpurple: username validation support; Pidgin: use it in account setup dialog
Tomasz Wasilczyk <tomkiewicz@cpw.pidgin.im>
parents: 32787
diff changeset
484 *
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 34940
diff changeset
485 * @account: The account the username is related to. Can
35464
1dde6f706947 Print the entire PurpleProtocolInfo struct in docs instead of documenting each member.
Ankit Vani <a@nevitus.org>
parents: 35440
diff changeset
486 * be NULL.
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 34940
diff changeset
487 * @who: The username to convert.
35464
1dde6f706947 Print the entire PurpleProtocolInfo struct in docs instead of documenting each member.
Ankit Vani <a@nevitus.org>
parents: 35440
diff changeset
488 * Returns: Normalized username, or NULL, if it's invalid.
19401
012a56cd0484 Add marginally better doxygen magic to PurplePluginProtocolInfo
Will Thompson <resiak@pidgin.im>
parents: 18243
diff changeset
489 */
33087
182da0516150 Libpurple: username validation support; Pidgin: use it in account setup dialog
Tomasz Wasilczyk <tomkiewicz@cpw.pidgin.im>
parents: 32787
diff changeset
490 const char *(*normalize)(const PurpleAccount *account, const char *who);
6451
2ff17ce330d8 [gaim-migrate @ 6960]
Christian Hammond <chipx86@chipx86.com>
parents: 6418
diff changeset
491
35464
1dde6f706947 Print the entire PurpleProtocolInfo struct in docs instead of documenting each member.
Ankit Vani <a@nevitus.org>
parents: 35440
diff changeset
492 /*
35399
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
493 * Set the buddy icon for the given connection to @img. The prpl
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
494 * does NOT own a reference to @img; if it needs one, it must
35811
f86e09b6ed33 Small imgstore cleanup
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 35692
diff changeset
495 * #g_object_ref(@img) itself.
31594
ec0856af6477 Add new functions for adding buddies with an invite message. If the
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 31293
diff changeset
496 */
35811
f86e09b6ed33 Small imgstore cleanup
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 35692
diff changeset
497 void (*set_buddy_icon)(PurpleConnection *, PurpleImage *img);
6885
65132ebfc662 [gaim-migrate @ 7431]
Christian Hammond <chipx86@chipx86.com>
parents: 6846
diff changeset
498
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15588
diff changeset
499 void (*remove_group)(PurpleConnection *gc, PurpleGroup *group);
7398
90663d97aa6a [gaim-migrate @ 7994]
Nathan Walp <nwalp@pidgin.im>
parents: 7322
diff changeset
500
35464
1dde6f706947 Print the entire PurpleProtocolInfo struct in docs instead of documenting each member.
Ankit Vani <a@nevitus.org>
parents: 35440
diff changeset
501 /* Gets the real name of a participant in a chat. For example, on
1dde6f706947 Print the entire PurpleProtocolInfo struct in docs instead of documenting each member.
Ankit Vani <a@nevitus.org>
parents: 35440
diff changeset
502 * XMPP this turns a chat room nick foo into room\@server/foo
1dde6f706947 Print the entire PurpleProtocolInfo struct in docs instead of documenting each member.
Ankit Vani <a@nevitus.org>
parents: 35440
diff changeset
503 *
1dde6f706947 Print the entire PurpleProtocolInfo struct in docs instead of documenting each member.
Ankit Vani <a@nevitus.org>
parents: 35440
diff changeset
504 * @gc: the connection on which the room is.
1dde6f706947 Print the entire PurpleProtocolInfo struct in docs instead of documenting each member.
Ankit Vani <a@nevitus.org>
parents: 35440
diff changeset
505 * @id: the ID of the chat room.
1dde6f706947 Print the entire PurpleProtocolInfo struct in docs instead of documenting each member.
Ankit Vani <a@nevitus.org>
parents: 35440
diff changeset
506 * @who: the nickname of the chat participant.
1dde6f706947 Print the entire PurpleProtocolInfo struct in docs instead of documenting each member.
Ankit Vani <a@nevitus.org>
parents: 35440
diff changeset
507 *
1dde6f706947 Print the entire PurpleProtocolInfo struct in docs instead of documenting each member.
Ankit Vani <a@nevitus.org>
parents: 35440
diff changeset
508 * Returns: the real name of the participant. This string must be
21110
7628fe7a7c6e Document PurplePluginProtocolInfo.get_cb_real_name
Will Thompson <resiak@pidgin.im>
parents: 21099
diff changeset
509 * freed by the caller.
7628fe7a7c6e Document PurplePluginProtocolInfo.get_cb_real_name
Will Thompson <resiak@pidgin.im>
parents: 21099
diff changeset
510 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15588
diff changeset
511 char *(*get_cb_real_name)(PurpleConnection *gc, int id, const char *who);
7971
a9309feca3c8 [gaim-migrate @ 8648]
Nathan Walp <nwalp@pidgin.im>
parents: 7956
diff changeset
512
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15588
diff changeset
513 void (*set_chat_topic)(PurpleConnection *gc, int id, const char *topic);
7999
f3f95e0c956a [gaim-migrate @ 8676]
Nathan Walp <nwalp@pidgin.im>
parents: 7971
diff changeset
514
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15588
diff changeset
515 PurpleChat *(*find_blist_chat)(PurpleAccount *account, const char *name);
8113
6a2ffc66c022 [gaim-migrate @ 8817]
Tim Ringenbach <marv@pidgin.im>
parents: 8046
diff changeset
516
6a2ffc66c022 [gaim-migrate @ 8817]
Tim Ringenbach <marv@pidgin.im>
parents: 8046
diff changeset
517 /* room listing prpl callbacks */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15588
diff changeset
518 PurpleRoomlist *(*roomlist_get_list)(PurpleConnection *gc);
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15588
diff changeset
519 void (*roomlist_cancel)(PurpleRoomlist *list);
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15588
diff changeset
520 void (*roomlist_expand_category)(PurpleRoomlist *list, PurpleRoomlistRoom *category);
9466
b6425eab60ca [gaim-migrate @ 10291]
Daniel Atallah <datallah@pidgin.im>
parents: 9460
diff changeset
521
b6425eab60ca [gaim-migrate @ 10291]
Daniel Atallah <datallah@pidgin.im>
parents: 9460
diff changeset
522 /* file transfer callbacks */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15588
diff changeset
523 gboolean (*can_receive_file)(PurpleConnection *, const char *who);
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15588
diff changeset
524 void (*send_file)(PurpleConnection *, const char *who, const char *filename);
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15588
diff changeset
525 PurpleXfer *(*new_xfer)(PurpleConnection *, const char *who);
21099
584da62ea174 Documentation tweaks for the write_conv uiop and for prpl_info.offline_message.
Will Thompson <resiak@pidgin.im>
parents: 21003
diff changeset
526
35464
1dde6f706947 Print the entire PurpleProtocolInfo struct in docs instead of documenting each member.
Ankit Vani <a@nevitus.org>
parents: 35440
diff changeset
527 /* Checks whether offline messages to @buddy are supported.
1dde6f706947 Print the entire PurpleProtocolInfo struct in docs instead of documenting each member.
Ankit Vani <a@nevitus.org>
parents: 35440
diff changeset
528 * Returns: TRUE if @buddy can be sent messages while they are
1dde6f706947 Print the entire PurpleProtocolInfo struct in docs instead of documenting each member.
Ankit Vani <a@nevitus.org>
parents: 35440
diff changeset
529 * offline, or FALSE if not.
21099
584da62ea174 Documentation tweaks for the write_conv uiop and for prpl_info.offline_message.
Will Thompson <resiak@pidgin.im>
parents: 21003
diff changeset
530 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15588
diff changeset
531 gboolean (*offline_message)(const PurpleBuddy *buddy);
12143
09f216663302 [gaim-migrate @ 14444]
Evan Schoenberg <evands@pidgin.im>
parents: 12024
diff changeset
532
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15588
diff changeset
533 PurpleWhiteboardPrplOps *whiteboard_prpl_ops;
14604
67a7c42a8654 [gaim-migrate @ 17263]
Sean Egan <seanegan@pidgin.im>
parents: 14254
diff changeset
534
35464
1dde6f706947 Print the entire PurpleProtocolInfo struct in docs instead of documenting each member.
Ankit Vani <a@nevitus.org>
parents: 35440
diff changeset
535 /* For use in plugins that may understand the underlying protocol */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15588
diff changeset
536 int (*send_raw)(PurpleConnection *gc, const char *buf, int len);
15185
74b689a74430 [gaim-migrate @ 17909]
Nathan Walp <nwalp@pidgin.im>
parents: 15132
diff changeset
537
74b689a74430 [gaim-migrate @ 17909]
Nathan Walp <nwalp@pidgin.im>
parents: 15132
diff changeset
538 /* room list serialize */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15588
diff changeset
539 char *(*roomlist_room_serialize)(PurpleRoomlistRoom *room);
16743
1ce5ffe12e2a Initial addition of padding for ui_ops and other class-like structs
Gary Kramlich <grim@reaperworld.com>
parents: 16541
diff changeset
540
35464
1dde6f706947 Print the entire PurpleProtocolInfo struct in docs instead of documenting each member.
Ankit Vani <a@nevitus.org>
parents: 35440
diff changeset
541 /* Remove the user from the server. The account can either be
20978
f6aededb6700 Add some (but not much!) documentation to PurplePluginProtocolInfo.
Will Thompson <resiak@pidgin.im>
parents: 20147
diff changeset
542 * connected or disconnected. After the removal is finished, the
f6aededb6700 Add some (but not much!) documentation to PurplePluginProtocolInfo.
Will Thompson <resiak@pidgin.im>
parents: 20147
diff changeset
543 * connection will stay open and has to be closed!
f6aededb6700 Add some (but not much!) documentation to PurplePluginProtocolInfo.
Will Thompson <resiak@pidgin.im>
parents: 20147
diff changeset
544 */
f6aededb6700 Add some (but not much!) documentation to PurplePluginProtocolInfo.
Will Thompson <resiak@pidgin.im>
parents: 20147
diff changeset
545 /* This is here rather than next to register_user for API compatibility
f6aededb6700 Add some (but not much!) documentation to PurplePluginProtocolInfo.
Will Thompson <resiak@pidgin.im>
parents: 20147
diff changeset
546 * reasons.
18912
606597744812 Added unregistering XMPP accounts. This requires a new prpl-struct entry, but I got an ok for that on the mailing list.
Andreas Monitzer <am@adiumx.com>
parents: 18718
diff changeset
547 */
18994
310e9d853e2b 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 <am@adiumx.com>
parents: 18912
diff changeset
548 void (*unregister_user)(PurpleAccount *, PurpleAccountUnregistrationCb cb, void *user_data);
25888
d0fdd378a635 Remove trailing whitespace
Mark Doliner <markdoliner@pidgin.im>
parents: 25231
diff changeset
549
19604
ae3d7cc7063d Attention API for nudges/buzzes/zaps of various protocols.
Jeff Connelly <jeff2@soc.pidgin.im>
parents: 19401
diff changeset
550 /* Attention API for sending & receiving zaps/nudges/buzzes etc. */
19641
4a93c044199c Change serv_send_attention() to call prpl_info->send_attention(), and
Jeff Connelly <jeff2@soc.pidgin.im>
parents: 19639
diff changeset
551 gboolean (*send_attention)(PurpleConnection *gc, const char *username, guint type);
19907
39d8855e8344 - Rename attention_types to get_attention_types, which seems more standard.
Richard Laager <rlaager@pidgin.im>
parents: 19897
diff changeset
552 GList *(*get_attention_types)(PurpleAccount *acct);
19641
4a93c044199c Change serv_send_attention() to call prpl_info->send_attention(), and
Jeff Connelly <jeff2@soc.pidgin.im>
parents: 19639
diff changeset
553
35464
1dde6f706947 Print the entire PurpleProtocolInfo struct in docs instead of documenting each member.
Ankit Vani <a@nevitus.org>
parents: 35440
diff changeset
554 /* This allows protocols to specify additional strings to be used for
23277
ea315a8d5bad Patch from Jaywalker to let prpls add some helpful text for some account
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 23276
diff changeset
555 * various purposes. The idea is to stuff a bunch of strings in this hash
ea315a8d5bad Patch from Jaywalker to let prpls add some helpful text for some account
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 23276
diff changeset
556 * table instead of expanding the struct for every addition. This hash
ea315a8d5bad Patch from Jaywalker to let prpls add some helpful text for some account
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 23276
diff changeset
557 * table is allocated every call and MUST be unrefed by the caller.
ea315a8d5bad Patch from Jaywalker to let prpls add some helpful text for some account
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 23276
diff changeset
558 *
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 34940
diff changeset
559 * @account: The account to specify. This can be NULL.
35464
1dde6f706947 Print the entire PurpleProtocolInfo struct in docs instead of documenting each member.
Ankit Vani <a@nevitus.org>
parents: 35440
diff changeset
560 *
1dde6f706947 Print the entire PurpleProtocolInfo struct in docs instead of documenting each member.
Ankit Vani <a@nevitus.org>
parents: 35440
diff changeset
561 * Returns : The protocol's string hash table. The hash table should be
1dde6f706947 Print the entire PurpleProtocolInfo struct in docs instead of documenting each member.
Ankit Vani <a@nevitus.org>
parents: 35440
diff changeset
562 * destroyed by the caller when it's no longer needed.
23277
ea315a8d5bad Patch from Jaywalker to let prpls add some helpful text for some account
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 23276
diff changeset
563 */
ea315a8d5bad Patch from Jaywalker to let prpls add some helpful text for some account
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 23276
diff changeset
564 GHashTable *(*get_account_text_table)(PurpleAccount *account);
24912
9ae8349f0353 Move the mood UI for ICQ into Pidgin. It still uses the new request API
Richard Laager <rlaager@pidgin.im>
parents: 23875
diff changeset
565
35464
1dde6f706947 Print the entire PurpleProtocolInfo struct in docs instead of documenting each member.
Ankit Vani <a@nevitus.org>
parents: 35440
diff changeset
566 /*
26107
3f03e67b89ba Fixed up media functions in prpl.c and prpl.h, adding more documentation and
Michael Ruprecht <maiku@pidgin.im>
parents: 26106
diff changeset
567 * Initiate a media session with the given contact.
3f03e67b89ba Fixed up media functions in prpl.c and prpl.h, adding more documentation and
Michael Ruprecht <maiku@pidgin.im>
parents: 26106
diff changeset
568 *
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 34940
diff changeset
569 * @account: The account to initiate the media session on.
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 34940
diff changeset
570 * @who: The remote user to initiate the session with.
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 34940
diff changeset
571 * @type: The type of media session to initiate.
35464
1dde6f706947 Print the entire PurpleProtocolInfo struct in docs instead of documenting each member.
Ankit Vani <a@nevitus.org>
parents: 35440
diff changeset
572 *
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 34940
diff changeset
573 * Returns: TRUE if the call succeeded else FALSE. (Doesn't imply the media session or stream will be successfully created)
26107
3f03e67b89ba Fixed up media functions in prpl.c and prpl.h, adding more documentation and
Michael Ruprecht <maiku@pidgin.im>
parents: 26106
diff changeset
574 */
26746
2a2d45ac9774 Switch media to store accounts rather than connections.
Michael Ruprecht <maiku@pidgin.im>
parents: 26611
diff changeset
575 gboolean (*initiate_media)(PurpleAccount *account, const char *who,
26108
8d0fd2f195aa Changed PurpleMediaStreamType to PurpleMediaSessionType.
Michael Ruprecht <maiku@pidgin.im>
parents: 26107
diff changeset
576 PurpleMediaSessionType type);
23707
480f94157418 propagate from branch 'im.pidgin.pidgin' (head bd5f7f61d9349053ee4738efc0d17453f0574057)
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 23337 22648
diff changeset
577
35464
1dde6f706947 Print the entire PurpleProtocolInfo struct in docs instead of documenting each member.
Ankit Vani <a@nevitus.org>
parents: 35440
diff changeset
578 /*
26107
3f03e67b89ba Fixed up media functions in prpl.c and prpl.h, adding more documentation and
Michael Ruprecht <maiku@pidgin.im>
parents: 26106
diff changeset
579 * Checks to see if the given contact supports the given type of media session.
3f03e67b89ba Fixed up media functions in prpl.c and prpl.h, adding more documentation and
Michael Ruprecht <maiku@pidgin.im>
parents: 26106
diff changeset
580 *
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 34940
diff changeset
581 * @account: The account the contact is on.
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 34940
diff changeset
582 * @who: The remote user to check for media capability with.
35464
1dde6f706947 Print the entire PurpleProtocolInfo struct in docs instead of documenting each member.
Ankit Vani <a@nevitus.org>
parents: 35440
diff changeset
583 *
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 34940
diff changeset
584 * Returns: The media caps the contact supports.
26107
3f03e67b89ba Fixed up media functions in prpl.c and prpl.h, adding more documentation and
Michael Ruprecht <maiku@pidgin.im>
parents: 26106
diff changeset
585 */
26746
2a2d45ac9774 Switch media to store accounts rather than connections.
Michael Ruprecht <maiku@pidgin.im>
parents: 26611
diff changeset
586 PurpleMediaCaps (*get_media_caps)(PurpleAccount *account,
26316
950c0d491c0d Change purple_prpl_can_do_media to purple_prpl_get_media_caps.
Michael Ruprecht <maiku@pidgin.im>
parents: 26186
diff changeset
587 const char *who);
26657
1067482b6de1 propagate from branch 'im.pidgin.pidgin' (head 69f29e0c8111a1c5b6270f7924a468b75f6b5aa9)
Richard Laager <rlaager@pidgin.im>
parents: 26611 24912
diff changeset
588
35464
1dde6f706947 Print the entire PurpleProtocolInfo struct in docs instead of documenting each member.
Ankit Vani <a@nevitus.org>
parents: 35440
diff changeset
589 /*
24912
9ae8349f0353 Move the mood UI for ICQ into Pidgin. It still uses the new request API
Richard Laager <rlaager@pidgin.im>
parents: 23875
diff changeset
590 * Returns an array of "PurpleMood"s, with the last one having
35464
1dde6f706947 Print the entire PurpleProtocolInfo struct in docs instead of documenting each member.
Ankit Vani <a@nevitus.org>
parents: 35440
diff changeset
591 * "mood" set to NULL.
24912
9ae8349f0353 Move the mood UI for ICQ into Pidgin. It still uses the new request API
Richard Laager <rlaager@pidgin.im>
parents: 23875
diff changeset
592 */
9ae8349f0353 Move the mood UI for ICQ into Pidgin. It still uses the new request API
Richard Laager <rlaager@pidgin.im>
parents: 23875
diff changeset
593 PurpleMood *(*get_moods)(PurpleAccount *account);
30138
cca9685df785 Add purple_account_[gs]et_public_alias functions, per discussion in d@cpi
Paul Aurich <darkrain42@pidgin.im>
parents: 30125
diff changeset
594
35464
1dde6f706947 Print the entire PurpleProtocolInfo struct in docs instead of documenting each member.
Ankit Vani <a@nevitus.org>
parents: 35440
diff changeset
595 /*
30138
cca9685df785 Add purple_account_[gs]et_public_alias functions, per discussion in d@cpi
Paul Aurich <darkrain42@pidgin.im>
parents: 30125
diff changeset
596 * Set the user's "friendly name" (or alias or nickname or
cca9685df785 Add purple_account_[gs]et_public_alias functions, per discussion in d@cpi
Paul Aurich <darkrain42@pidgin.im>
parents: 30125
diff changeset
597 * whatever term you want to call it) on the server. The
cca9685df785 Add purple_account_[gs]et_public_alias functions, per discussion in d@cpi
Paul Aurich <darkrain42@pidgin.im>
parents: 30125
diff changeset
598 * protocol plugin should call success_cb or failure_cb
cca9685df785 Add purple_account_[gs]et_public_alias functions, per discussion in d@cpi
Paul Aurich <darkrain42@pidgin.im>
parents: 30125
diff changeset
599 * *asynchronously* (if it knows immediately that the set will fail,
cca9685df785 Add purple_account_[gs]et_public_alias functions, per discussion in d@cpi
Paul Aurich <darkrain42@pidgin.im>
parents: 30125
diff changeset
600 * call one of the callbacks from an idle/0-second timeout) depending
cca9685df785 Add purple_account_[gs]et_public_alias functions, per discussion in d@cpi
Paul Aurich <darkrain42@pidgin.im>
parents: 30125
diff changeset
601 * on if the nickname is set successfully.
cca9685df785 Add purple_account_[gs]et_public_alias functions, per discussion in d@cpi
Paul Aurich <darkrain42@pidgin.im>
parents: 30125
diff changeset
602 *
35464
1dde6f706947 Print the entire PurpleProtocolInfo struct in docs instead of documenting each member.
Ankit Vani <a@nevitus.org>
parents: 35440
diff changeset
603 * See purple_account_set_public_alias().
1dde6f706947 Print the entire PurpleProtocolInfo struct in docs instead of documenting each member.
Ankit Vani <a@nevitus.org>
parents: 35440
diff changeset
604 *
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 34940
diff changeset
605 * @gc: The connection for which to set an alias
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 34940
diff changeset
606 * @alias: The new server-side alias/nickname for this account,
30138
cca9685df785 Add purple_account_[gs]et_public_alias functions, per discussion in d@cpi
Paul Aurich <darkrain42@pidgin.im>
parents: 30125
diff changeset
607 * or NULL to unset the alias/nickname (or return it to
cca9685df785 Add purple_account_[gs]et_public_alias functions, per discussion in d@cpi
Paul Aurich <darkrain42@pidgin.im>
parents: 30125
diff changeset
608 * a protocol-specific "default").
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 34940
diff changeset
609 * @success_cb: Callback to be called if the public alias is set
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 34940
diff changeset
610 * @failure_cb: Callback to be called if setting the public alias
30138
cca9685df785 Add purple_account_[gs]et_public_alias functions, per discussion in d@cpi
Paul Aurich <darkrain42@pidgin.im>
parents: 30125
diff changeset
611 * fails
cca9685df785 Add purple_account_[gs]et_public_alias functions, per discussion in d@cpi
Paul Aurich <darkrain42@pidgin.im>
parents: 30125
diff changeset
612 */
cca9685df785 Add purple_account_[gs]et_public_alias functions, per discussion in d@cpi
Paul Aurich <darkrain42@pidgin.im>
parents: 30125
diff changeset
613 void (*set_public_alias)(PurpleConnection *gc, const char *alias,
cca9685df785 Add purple_account_[gs]et_public_alias functions, per discussion in d@cpi
Paul Aurich <darkrain42@pidgin.im>
parents: 30125
diff changeset
614 PurpleSetPublicAliasSuccessCallback success_cb,
cca9685df785 Add purple_account_[gs]et_public_alias functions, per discussion in d@cpi
Paul Aurich <darkrain42@pidgin.im>
parents: 30125
diff changeset
615 PurpleSetPublicAliasFailureCallback failure_cb);
35464
1dde6f706947 Print the entire PurpleProtocolInfo struct in docs instead of documenting each member.
Ankit Vani <a@nevitus.org>
parents: 35440
diff changeset
616 /*
30138
cca9685df785 Add purple_account_[gs]et_public_alias functions, per discussion in d@cpi
Paul Aurich <darkrain42@pidgin.im>
parents: 30125
diff changeset
617 * Retrieve the user's "friendly name" as set on the server.
cca9685df785 Add purple_account_[gs]et_public_alias functions, per discussion in d@cpi
Paul Aurich <darkrain42@pidgin.im>
parents: 30125
diff changeset
618 * The protocol plugin should call success_cb or failure_cb
30195
c292bad63d91 Fix copy&paste typos.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 30138
diff changeset
619 * *asynchronously* (even if it knows immediately that the get will fail,
30138
cca9685df785 Add purple_account_[gs]et_public_alias functions, per discussion in d@cpi
Paul Aurich <darkrain42@pidgin.im>
parents: 30125
diff changeset
620 * call one of the callbacks from an idle/0-second timeout) depending
cca9685df785 Add purple_account_[gs]et_public_alias functions, per discussion in d@cpi
Paul Aurich <darkrain42@pidgin.im>
parents: 30125
diff changeset
621 * on if the nickname is retrieved.
cca9685df785 Add purple_account_[gs]et_public_alias functions, per discussion in d@cpi
Paul Aurich <darkrain42@pidgin.im>
parents: 30125
diff changeset
622 *
35464
1dde6f706947 Print the entire PurpleProtocolInfo struct in docs instead of documenting each member.
Ankit Vani <a@nevitus.org>
parents: 35440
diff changeset
623 * See purple_account_get_public_alias().
1dde6f706947 Print the entire PurpleProtocolInfo struct in docs instead of documenting each member.
Ankit Vani <a@nevitus.org>
parents: 35440
diff changeset
624 *
1dde6f706947 Print the entire PurpleProtocolInfo struct in docs instead of documenting each member.
Ankit Vani <a@nevitus.org>
parents: 35440
diff changeset
625 * @gc: The connection for which to retireve the alias
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 34940
diff changeset
626 * @success_cb: Callback to be called with the retrieved alias
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 34940
diff changeset
627 * @failure_cb: Callback to be called if the prpl is unable to
35464
1dde6f706947 Print the entire PurpleProtocolInfo struct in docs instead of documenting each member.
Ankit Vani <a@nevitus.org>
parents: 35440
diff changeset
628 * retrieve the alias
30138
cca9685df785 Add purple_account_[gs]et_public_alias functions, per discussion in d@cpi
Paul Aurich <darkrain42@pidgin.im>
parents: 30125
diff changeset
629 */
cca9685df785 Add purple_account_[gs]et_public_alias functions, per discussion in d@cpi
Paul Aurich <darkrain42@pidgin.im>
parents: 30125
diff changeset
630 void (*get_public_alias)(PurpleConnection *gc,
30195
c292bad63d91 Fix copy&paste typos.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 30138
diff changeset
631 PurpleGetPublicAliasSuccessCallback success_cb,
c292bad63d91 Fix copy&paste typos.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 30138
diff changeset
632 PurpleGetPublicAliasFailureCallback failure_cb);
34312
4461d5c1e61c Extend prpl with max message length callback
Tomasz Wasilczyk <tomkiewicz@cpw.pidgin.im>
parents: 33880
diff changeset
633
35464
1dde6f706947 Print the entire PurpleProtocolInfo struct in docs instead of documenting each member.
Ankit Vani <a@nevitus.org>
parents: 35440
diff changeset
634 /*
34321
f60fcab02bd4 Reconsidered characters count callback for prpl API: make it per-conversation and distinguish infinite from undefined
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 34317
diff changeset
635 * Gets the maximum message size in bytes for the conversation.
f60fcab02bd4 Reconsidered characters count callback for prpl API: make it per-conversation and distinguish infinite from undefined
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 34317
diff changeset
636 *
f60fcab02bd4 Reconsidered characters count callback for prpl API: make it per-conversation and distinguish infinite from undefined
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 34317
diff changeset
637 * It may depend on connection-specific or conversation-specific
f60fcab02bd4 Reconsidered characters count callback for prpl API: make it per-conversation and distinguish infinite from undefined
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 34317
diff changeset
638 * variables, like channel or buddy's name length.
34312
4461d5c1e61c Extend prpl with max message length callback
Tomasz Wasilczyk <tomkiewicz@cpw.pidgin.im>
parents: 33880
diff changeset
639 *
4461d5c1e61c Extend prpl with max message length callback
Tomasz Wasilczyk <tomkiewicz@cpw.pidgin.im>
parents: 33880
diff changeset
640 * This value is intended for plaintext message, the exact value may be
4461d5c1e61c Extend prpl with max message length callback
Tomasz Wasilczyk <tomkiewicz@cpw.pidgin.im>
parents: 33880
diff changeset
641 * lower because of:
4461d5c1e61c Extend prpl with max message length callback
Tomasz Wasilczyk <tomkiewicz@cpw.pidgin.im>
parents: 33880
diff changeset
642 * - used newlines (some protocols count them as more than one byte),
4461d5c1e61c Extend prpl with max message length callback
Tomasz Wasilczyk <tomkiewicz@cpw.pidgin.im>
parents: 33880
diff changeset
643 * - formatting,
4461d5c1e61c Extend prpl with max message length callback
Tomasz Wasilczyk <tomkiewicz@cpw.pidgin.im>
parents: 33880
diff changeset
644 * - used special characters.
4461d5c1e61c Extend prpl with max message length callback
Tomasz Wasilczyk <tomkiewicz@cpw.pidgin.im>
parents: 33880
diff changeset
645 *
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 34940
diff changeset
646 * @conv: The conversation to query, or NULL to get safe minimum
35464
1dde6f706947 Print the entire PurpleProtocolInfo struct in docs instead of documenting each member.
Ankit Vani <a@nevitus.org>
parents: 35440
diff changeset
647 * for the protocol.
34321
f60fcab02bd4 Reconsidered characters count callback for prpl API: make it per-conversation and distinguish infinite from undefined
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 34317
diff changeset
648 *
35464
1dde6f706947 Print the entire PurpleProtocolInfo struct in docs instead of documenting each member.
Ankit Vani <a@nevitus.org>
parents: 35440
diff changeset
649 * Returns: Maximum message size, 0 if unspecified, -1 for infinite.
34312
4461d5c1e61c Extend prpl with max message length callback
Tomasz Wasilczyk <tomkiewicz@cpw.pidgin.im>
parents: 33880
diff changeset
650 */
34321
f60fcab02bd4 Reconsidered characters count callback for prpl API: make it per-conversation and distinguish infinite from undefined
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 34317
diff changeset
651 gssize (*get_max_message_size)(PurpleConversation *conv);
5205
242b8aa81328 [gaim-migrate @ 5573]
Christian Hammond <chipx86@chipx86.com>
parents: 5148
diff changeset
652 };
2246
8ade8b7421af [gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 2232
diff changeset
653
23276
f4944cfaa1ff Use up the last padding for PurplePluginProtocolInfo in a way that allows
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 23272
diff changeset
654 #define PURPLE_PROTOCOL_PLUGIN_HAS_FUNC(prpl, member) \
35692
adeb081c2224 Fix rest of clang scan-build warnings
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 35581
diff changeset
655 ((prpl != NULL) && (G_STRUCT_OFFSET(PurplePluginProtocolInfo, member) < \
adeb081c2224 Fix rest of clang scan-build warnings
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 35581
diff changeset
656 prpl->struct_size && prpl->member != NULL))
23276
f4944cfaa1ff Use up the last padding for PurplePluginProtocolInfo in a way that allows
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 23272
diff changeset
657
f4944cfaa1ff Use up the last padding for PurplePluginProtocolInfo in a way that allows
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 23272
diff changeset
658
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15588
diff changeset
659 #define PURPLE_IS_PROTOCOL_PLUGIN(plugin) \
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15588
diff changeset
660 ((plugin)->info->type == PURPLE_PLUGIN_PROTOCOL)
5205
242b8aa81328 [gaim-migrate @ 5573]
Christian Hammond <chipx86@chipx86.com>
parents: 5148
diff changeset
661
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15588
diff changeset
662 #define PURPLE_PLUGIN_PROTOCOL_INFO(plugin) \
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15588
diff changeset
663 ((PurplePluginProtocolInfo *)(plugin)->info->extra_info)
981
00723c9a507c [gaim-migrate @ 991]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
664
32787
7072f190d6ad Use G_BEGIN/END_DECLS in public libpurple files. This was
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 32604
diff changeset
665 G_BEGIN_DECLS
5944
f19df037ac58 [gaim-migrate @ 6385]
Christian Hammond <chipx86@chipx86.com>
parents: 5943
diff changeset
666
9944
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 9943
diff changeset
667 /**************************************************************************/
35472
474e26199560 Removed @name
Ankit Vani <a@nevitus.org>
parents: 35471
diff changeset
668 /* Attention Type API */
22225
6cd802a8c5ad This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 21865
diff changeset
669 /**************************************************************************/
6cd802a8c5ad This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 21865
diff changeset
670
6cd802a8c5ad This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 21865
diff changeset
671 /**
35399
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
672 * purple_attention_type_new:
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 34940
diff changeset
673 * @ulname: A non-localized string that can be used by UIs in need of such
35399
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
674 * non-localized strings. This should be the same as @name,
22225
6cd802a8c5ad This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 21865
diff changeset
675 * without localization.
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 34940
diff changeset
676 * @name: A localized string that the UI may display for the event. This
35399
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
677 * should be the same string as @ulname, with localization.
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 34940
diff changeset
678 * @inc_desc: A localized description shown when the event is received.
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 34940
diff changeset
679 * @out_desc: A localized description shown when the event is sent.
32302
8d7ae15354e1 Hide PurpleAttentionType struct and remove attention @since tags.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 31597
diff changeset
680 *
22225
6cd802a8c5ad This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 21865
diff changeset
681 * Creates a new #PurpleAttentionType object and sets its mandatory parameters.
6cd802a8c5ad This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 21865
diff changeset
682 *
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 34940
diff changeset
683 * Returns: A pointer to the new object.
22225
6cd802a8c5ad This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 21865
diff changeset
684 */
6cd802a8c5ad This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 21865
diff changeset
685 PurpleAttentionType *purple_attention_type_new(const char *ulname, const char *name,
6cd802a8c5ad This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 21865
diff changeset
686 const char *inc_desc, const char *out_desc);
6cd802a8c5ad This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 21865
diff changeset
687
6cd802a8c5ad This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 21865
diff changeset
688 /**
35399
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
689 * purple_attention_type_set_name:
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 34940
diff changeset
690 * @type: The attention type.
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 34940
diff changeset
691 * @name: The localized name that will be displayed by UIs. This should be
22225
6cd802a8c5ad This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 21865
diff changeset
692 * the same string given as the unlocalized name, but with
6cd802a8c5ad This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 21865
diff changeset
693 * localization.
35399
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
694 *
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
695 * Sets the displayed name of the attention-demanding event.
22225
6cd802a8c5ad This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 21865
diff changeset
696 */
6cd802a8c5ad This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 21865
diff changeset
697 void purple_attention_type_set_name(PurpleAttentionType *type, const char *name);
6cd802a8c5ad This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 21865
diff changeset
698
6cd802a8c5ad This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 21865
diff changeset
699 /**
35399
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
700 * purple_attention_type_set_incoming_desc:
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
701 * @type: The attention type.
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
702 * @desc: The localized description for incoming events.
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
703 *
22225
6cd802a8c5ad This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 21865
diff changeset
704 * Sets the description of the attention-demanding event shown in conversations
6cd802a8c5ad This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 21865
diff changeset
705 * when the event is received.
6cd802a8c5ad This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 21865
diff changeset
706 */
6cd802a8c5ad This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 21865
diff changeset
707 void purple_attention_type_set_incoming_desc(PurpleAttentionType *type, const char *desc);
6cd802a8c5ad This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 21865
diff changeset
708
6cd802a8c5ad This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 21865
diff changeset
709 /**
35399
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
710 * purple_attention_type_set_outgoing_desc:
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
711 * @type: The attention type.
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
712 * @desc: The localized description for outgoing events.
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
713 *
22225
6cd802a8c5ad This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 21865
diff changeset
714 * Sets the description of the attention-demanding event shown in conversations
6cd802a8c5ad This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 21865
diff changeset
715 * when the event is sent.
6cd802a8c5ad This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 21865
diff changeset
716 */
6cd802a8c5ad This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 21865
diff changeset
717 void purple_attention_type_set_outgoing_desc(PurpleAttentionType *type, const char *desc);
6cd802a8c5ad This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 21865
diff changeset
718
6cd802a8c5ad This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 21865
diff changeset
719 /**
35399
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
720 * purple_attention_type_set_icon_name:
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
721 * @type: The attention type.
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
722 * @name: The icon's name.
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
723 *
22225
6cd802a8c5ad This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 21865
diff changeset
724 * Sets the name of the icon to display for the attention event; this is optional.
6cd802a8c5ad This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 21865
diff changeset
725 *
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 34940
diff changeset
726 * Note: Icons are optional for attention events.
22225
6cd802a8c5ad This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 21865
diff changeset
727 */
6cd802a8c5ad This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 21865
diff changeset
728 void purple_attention_type_set_icon_name(PurpleAttentionType *type, const char *name);
6cd802a8c5ad This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 21865
diff changeset
729
6cd802a8c5ad This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 21865
diff changeset
730 /**
35399
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
731 * purple_attention_type_set_unlocalized_name:
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 34940
diff changeset
732 * @type: The attention type.
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 34940
diff changeset
733 * @ulname: The unlocalized name. This should be the same string given as
22225
6cd802a8c5ad This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 21865
diff changeset
734 * the localized name, but without localization.
35399
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
735 *
22225
6cd802a8c5ad This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 21865
diff changeset
736 * Sets the unlocalized name of the attention event; some UIs may need this,
6cd802a8c5ad This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 21865
diff changeset
737 * thus it is required.
6cd802a8c5ad This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 21865
diff changeset
738 */
6cd802a8c5ad This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 21865
diff changeset
739 void purple_attention_type_set_unlocalized_name(PurpleAttentionType *type, const char *ulname);
6cd802a8c5ad This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 21865
diff changeset
740
6cd802a8c5ad This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 21865
diff changeset
741 /**
35399
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
742 * purple_attention_type_get_name:
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
743 * @type: The attention type.
22225
6cd802a8c5ad This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 21865
diff changeset
744 *
6cd802a8c5ad This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 21865
diff changeset
745 * Get the attention type's name as displayed by the UI.
6cd802a8c5ad This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 21865
diff changeset
746 *
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 34940
diff changeset
747 * Returns: The name.
22225
6cd802a8c5ad This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 21865
diff changeset
748 */
22251
a7c65a128467 const-ify paramteters to some of the new API I added. I thought I did this already.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 22225
diff changeset
749 const char *purple_attention_type_get_name(const PurpleAttentionType *type);
22225
6cd802a8c5ad This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 21865
diff changeset
750
6cd802a8c5ad This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 21865
diff changeset
751 /**
35399
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
752 * purple_attention_type_get_incoming_desc:
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
753 * @type: The attention type.
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
754 *
22225
6cd802a8c5ad This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 21865
diff changeset
755 * Get the attention type's description shown when the event is received.
6cd802a8c5ad This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 21865
diff changeset
756 *
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 34940
diff changeset
757 * Returns: The description.
22225
6cd802a8c5ad This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 21865
diff changeset
758 */
22251
a7c65a128467 const-ify paramteters to some of the new API I added. I thought I did this already.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 22225
diff changeset
759 const char *purple_attention_type_get_incoming_desc(const PurpleAttentionType *type);
22225
6cd802a8c5ad This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 21865
diff changeset
760
6cd802a8c5ad This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 21865
diff changeset
761 /**
35399
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
762 * purple_attention_type_get_outgoing_desc:
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
763 * @type: The attention type.
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
764 *
22225
6cd802a8c5ad This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 21865
diff changeset
765 * Get the attention type's description shown when the event is sent.
6cd802a8c5ad This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 21865
diff changeset
766 *
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 34940
diff changeset
767 * Returns: The description.
22225
6cd802a8c5ad This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 21865
diff changeset
768 */
22251
a7c65a128467 const-ify paramteters to some of the new API I added. I thought I did this already.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 22225
diff changeset
769 const char *purple_attention_type_get_outgoing_desc(const PurpleAttentionType *type);
22225
6cd802a8c5ad This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 21865
diff changeset
770
6cd802a8c5ad This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 21865
diff changeset
771 /**
35399
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
772 * purple_attention_type_get_icon_name:
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
773 * @type: The attention type.
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
774 *
22225
6cd802a8c5ad This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 21865
diff changeset
775 * Get the attention type's icon name.
6cd802a8c5ad This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 21865
diff changeset
776 *
35399
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
777 * Note: Icons are optional for attention events.
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
778 *
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 34940
diff changeset
779 * Returns: The icon name or %NULL if unset/empty.
22225
6cd802a8c5ad This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 21865
diff changeset
780 */
22251
a7c65a128467 const-ify paramteters to some of the new API I added. I thought I did this already.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 22225
diff changeset
781 const char *purple_attention_type_get_icon_name(const PurpleAttentionType *type);
22225
6cd802a8c5ad This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 21865
diff changeset
782
6cd802a8c5ad This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 21865
diff changeset
783 /**
35399
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
784 * purple_attention_type_get_unlocalized_name:
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
785 * @type: The attention type
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
786 *
22225
6cd802a8c5ad This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 21865
diff changeset
787 * Get the attention type's unlocalized name; this is useful for some UIs.
6cd802a8c5ad This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 21865
diff changeset
788 *
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 34940
diff changeset
789 * Returns: The unlocalized name.
22225
6cd802a8c5ad This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 21865
diff changeset
790 */
22251
a7c65a128467 const-ify paramteters to some of the new API I added. I thought I did this already.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 22225
diff changeset
791 const char *purple_attention_type_get_unlocalized_name(const PurpleAttentionType *type);
22225
6cd802a8c5ad This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 21865
diff changeset
792
6cd802a8c5ad This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents: 21865
diff changeset
793 /**************************************************************************/
35472
474e26199560 Removed @name
Ankit Vani <a@nevitus.org>
parents: 35471
diff changeset
794 /* Protocol Plugin API */
9944
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 9943
diff changeset
795 /**************************************************************************/
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 9943
diff changeset
796
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 9943
diff changeset
797 /**
35399
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
798 * purple_prpl_got_account_idle:
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
799 * @account: The account.
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
800 * @idle: The user's idle state.
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
801 * @idle_time: The user's idle time.
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
802 *
25889
26d9ca30335c Change "screen name" to "username" or "buddy name" in a whole bunch of
Mark Doliner <markdoliner@pidgin.im>
parents: 25888
diff changeset
803 * Notifies Purple that our account's idle state and time have changed.
9944
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 9943
diff changeset
804 *
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 9943
diff changeset
805 * This is meant to be called from protocol plugins.
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 9943
diff changeset
806 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15588
diff changeset
807 void purple_prpl_got_account_idle(PurpleAccount *account, gboolean idle,
9944
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 9943
diff changeset
808 time_t idle_time);
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 9943
diff changeset
809
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 9943
diff changeset
810 /**
35399
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
811 * purple_prpl_got_account_login_time:
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
812 * @account: The account the user is on.
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
813 * @login_time: The user's log-in time.
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
814 *
25889
26d9ca30335c Change "screen name" to "username" or "buddy name" in a whole bunch of
Mark Doliner <markdoliner@pidgin.im>
parents: 25888
diff changeset
815 * Notifies Purple of our account's log-in time.
9944
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 9943
diff changeset
816 *
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 9943
diff changeset
817 * This is meant to be called from protocol plugins.
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 9943
diff changeset
818 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15588
diff changeset
819 void purple_prpl_got_account_login_time(PurpleAccount *account, time_t login_time);
9944
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 9943
diff changeset
820
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 9943
diff changeset
821 /**
35399
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
822 * purple_prpl_got_account_status:
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
823 * @account: The account the user is on.
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
824 * @status_id: The status ID.
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
825 * @...: A NULL-terminated list of attribute IDs and values,
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
826 * beginning with the value for @attr_id.
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
827 *
25889
26d9ca30335c Change "screen name" to "username" or "buddy name" in a whole bunch of
Mark Doliner <markdoliner@pidgin.im>
parents: 25888
diff changeset
828 * Notifies Purple that our account's status has changed.
9944
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 9943
diff changeset
829 *
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 9943
diff changeset
830 * This is meant to be called from protocol plugins.
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 9943
diff changeset
831 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15588
diff changeset
832 void purple_prpl_got_account_status(PurpleAccount *account,
18243
c68ce32c3449 Add G_GNUC_NULL_TERMINATED to a few functions that expect a NULL terminated
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 18092
diff changeset
833 const char *status_id, ...) G_GNUC_NULL_TERMINATED;
25889
26d9ca30335c Change "screen name" to "username" or "buddy name" in a whole bunch of
Mark Doliner <markdoliner@pidgin.im>
parents: 25888
diff changeset
834
9944
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 9943
diff changeset
835 /**
35399
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
836 * purple_prpl_got_account_actions:
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
837 * @account: The account.
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
838 *
26871
d62964222795 Add a new signal which is emitted (after the account is connected) if the
Paul Aurich <darkrain42@pidgin.im>
parents: 26746
diff changeset
839 * Notifies Purple that our account's actions have changed. This is only
d62964222795 Add a new signal which is emitted (after the account is connected) if the
Paul Aurich <darkrain42@pidgin.im>
parents: 26746
diff changeset
840 * called after the initial connection. Emits the account-actions-changed
d62964222795 Add a new signal which is emitted (after the account is connected) if the
Paul Aurich <darkrain42@pidgin.im>
parents: 26746
diff changeset
841 * signal.
d62964222795 Add a new signal which is emitted (after the account is connected) if the
Paul Aurich <darkrain42@pidgin.im>
parents: 26746
diff changeset
842 *
d62964222795 Add a new signal which is emitted (after the account is connected) if the
Paul Aurich <darkrain42@pidgin.im>
parents: 26746
diff changeset
843 * This is meant to be called from protocol plugins.
d62964222795 Add a new signal which is emitted (after the account is connected) if the
Paul Aurich <darkrain42@pidgin.im>
parents: 26746
diff changeset
844 *
35471
a23769351b31 Remove @see
Ankit Vani <a@nevitus.org>
parents: 35468
diff changeset
845 * See <link linkend="accounts-account-actions-changed"><literal>"account-actions-changed"</literal></link>
26871
d62964222795 Add a new signal which is emitted (after the account is connected) if the
Paul Aurich <darkrain42@pidgin.im>
parents: 26746
diff changeset
846 */
d62964222795 Add a new signal which is emitted (after the account is connected) if the
Paul Aurich <darkrain42@pidgin.im>
parents: 26746
diff changeset
847 void purple_prpl_got_account_actions(PurpleAccount *account);
d62964222795 Add a new signal which is emitted (after the account is connected) if the
Paul Aurich <darkrain42@pidgin.im>
parents: 26746
diff changeset
848
d62964222795 Add a new signal which is emitted (after the account is connected) if the
Paul Aurich <darkrain42@pidgin.im>
parents: 26746
diff changeset
849 /**
35399
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
850 * purple_prpl_got_user_idle:
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 34940
diff changeset
851 * @account: The account the user is on.
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 34940
diff changeset
852 * @name: The name of the buddy.
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 34940
diff changeset
853 * @idle: The user's idle state.
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 34940
diff changeset
854 * @idle_time: The user's idle time. This is the time at
10860
8f600347b9e4 [gaim-migrate @ 12543]
Palmer Cox <enix@users.sourceforge.net>
parents: 10475
diff changeset
855 * which the user became idle, in seconds since
25231
099746be0c86 Add a comment that 0 should be used when a buddies idle time is unknown
Mark Doliner <markdoliner@pidgin.im>
parents: 25105
diff changeset
856 * the epoch. If the PRPL does not know this value
099746be0c86 Add a comment that 0 should be used when a buddies idle time is unknown
Mark Doliner <markdoliner@pidgin.im>
parents: 25105
diff changeset
857 * then it should pass 0.
35399
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
858 *
25889
26d9ca30335c Change "screen name" to "username" or "buddy name" in a whole bunch of
Mark Doliner <markdoliner@pidgin.im>
parents: 25888
diff changeset
859 * Notifies Purple that a buddy's idle state and time have changed.
9944
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 9943
diff changeset
860 *
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 9943
diff changeset
861 * This is meant to be called from protocol plugins.
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 9943
diff changeset
862 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15588
diff changeset
863 void purple_prpl_got_user_idle(PurpleAccount *account, const char *name,
9944
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 9943
diff changeset
864 gboolean idle, time_t idle_time);
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 9943
diff changeset
865
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 9943
diff changeset
866 /**
35399
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
867 * purple_prpl_got_user_login_time:
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
868 * @account: The account the user is on.
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
869 * @name: The name of the buddy.
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
870 * @login_time: The user's log-in time.
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
871 *
25889
26d9ca30335c Change "screen name" to "username" or "buddy name" in a whole bunch of
Mark Doliner <markdoliner@pidgin.im>
parents: 25888
diff changeset
872 * Notifies Purple of a buddy's log-in time.
9944
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 9943
diff changeset
873 *
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 9943
diff changeset
874 * This is meant to be called from protocol plugins.
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 9943
diff changeset
875 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15588
diff changeset
876 void purple_prpl_got_user_login_time(PurpleAccount *account, const char *name,
9944
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 9943
diff changeset
877 time_t login_time);
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 9943
diff changeset
878
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 9943
diff changeset
879 /**
35399
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
880 * purple_prpl_got_user_status:
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 34940
diff changeset
881 * @account: The account the user is on.
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 34940
diff changeset
882 * @name: The name of the buddy.
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 34940
diff changeset
883 * @status_id: The status ID.
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 34940
diff changeset
884 * @...: A NULL-terminated list of attribute IDs and values,
35399
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
885 * beginning with the value for @attr_id.
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
886 *
25889
26d9ca30335c Change "screen name" to "username" or "buddy name" in a whole bunch of
Mark Doliner <markdoliner@pidgin.im>
parents: 25888
diff changeset
887 * Notifies Purple that a buddy's status has been activated.
9944
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 9943
diff changeset
888 *
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 9943
diff changeset
889 * This is meant to be called from protocol plugins.
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 9943
diff changeset
890 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15588
diff changeset
891 void purple_prpl_got_user_status(PurpleAccount *account, const char *name,
18243
c68ce32c3449 Add G_GNUC_NULL_TERMINATED to a few functions that expect a NULL terminated
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents: 18092
diff changeset
892 const char *status_id, ...) G_GNUC_NULL_TERMINATED;
15588
e6e89a427ed5 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@pidgin.im>
parents: 15524
diff changeset
893
e6e89a427ed5 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@pidgin.im>
parents: 15524
diff changeset
894 /**
35399
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
895 * purple_prpl_got_user_status_deactive:
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
896 * @account: The account the user is on.
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
897 * @name: The name of the buddy.
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
898 * @status_id: The status ID.
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
899 *
25889
26d9ca30335c Change "screen name" to "username" or "buddy name" in a whole bunch of
Mark Doliner <markdoliner@pidgin.im>
parents: 25888
diff changeset
900 * Notifies libpurple that a buddy's status has been deactivated
15588
e6e89a427ed5 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@pidgin.im>
parents: 15524
diff changeset
901 *
e6e89a427ed5 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@pidgin.im>
parents: 15524
diff changeset
902 * This is meant to be called from protocol plugins.
e6e89a427ed5 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@pidgin.im>
parents: 15524
diff changeset
903 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15588
diff changeset
904 void purple_prpl_got_user_status_deactive(PurpleAccount *account, const char *name,
15588
e6e89a427ed5 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@pidgin.im>
parents: 15524
diff changeset
905 const char *status_id);
25888
d0fdd378a635 Remove trailing whitespace
Mark Doliner <markdoliner@pidgin.im>
parents: 25231
diff changeset
906
9944
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 9943
diff changeset
907 /**
35399
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
908 * purple_prpl_change_account_status:
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 34940
diff changeset
909 * @account: The account the user is on.
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 34940
diff changeset
910 * @old_status: The previous status.
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 34940
diff changeset
911 * @new_status: The status that was activated, or deactivated
10447
887380ec66f5 [gaim-migrate @ 11712]
Mark Doliner <markdoliner@pidgin.im>
parents: 10400
diff changeset
912 * (in the case of independent statuses).
9944
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 9943
diff changeset
913 *
35399
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
914 * Informs the server that our account's status changed.
9944
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 9943
diff changeset
915 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15588
diff changeset
916 void purple_prpl_change_account_status(PurpleAccount *account,
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15588
diff changeset
917 PurpleStatus *old_status,
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15588
diff changeset
918 PurpleStatus *new_status);
9944
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 9943
diff changeset
919
10006
800a81666868 [gaim-migrate @ 10923]
Dave West <kat@users.sourceforge.net>
parents: 9999
diff changeset
920 /**
35399
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
921 * purple_prpl_get_statuses:
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 34940
diff changeset
922 * @account: The account the user is on.
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 34940
diff changeset
923 * @presence: The presence for which we're going to get statuses
10006
800a81666868 [gaim-migrate @ 10923]
Dave West <kat@users.sourceforge.net>
parents: 9999
diff changeset
924 *
800a81666868 [gaim-migrate @ 10923]
Dave West <kat@users.sourceforge.net>
parents: 9999
diff changeset
925 * Retrieves the list of stock status types from a prpl.
800a81666868 [gaim-migrate @ 10923]
Dave West <kat@users.sourceforge.net>
parents: 9999
diff changeset
926 *
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 34940
diff changeset
927 * Returns: List of statuses
10006
800a81666868 [gaim-migrate @ 10923]
Dave West <kat@users.sourceforge.net>
parents: 9999
diff changeset
928 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15588
diff changeset
929 GList *purple_prpl_get_statuses(PurpleAccount *account, PurplePresence *presence);
10006
800a81666868 [gaim-migrate @ 10923]
Dave West <kat@users.sourceforge.net>
parents: 9999
diff changeset
930
25889
26d9ca30335c Change "screen name" to "username" or "buddy name" in a whole bunch of
Mark Doliner <markdoliner@pidgin.im>
parents: 25888
diff changeset
931 /**
35399
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
932 * purple_prpl_send_attention:
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 34940
diff changeset
933 * @gc: The connection to send the message on.
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 34940
diff changeset
934 * @who: Whose attention to request.
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 34940
diff changeset
935 * @type_code: An index into the prpl's attention_types list determining the type
25889
26d9ca30335c Change "screen name" to "username" or "buddy name" in a whole bunch of
Mark Doliner <markdoliner@pidgin.im>
parents: 25888
diff changeset
936 * of the attention request command to send. 0 if prpl only defines one
35581
2638707f038e Remove MySpace PRPL.
Mark Doliner <mark@kingant.net>
parents: 35501
diff changeset
937 * (for example, Yahoo and MSN), but protocols are allowed to define more.
23875
d7e5f66cbfc9 Add purple_prpl_got_attention_in_chat, then deprecate
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 23513
diff changeset
938 *
35399
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
939 * Send an attention request message.
23875
d7e5f66cbfc9 Add purple_prpl_got_attention_in_chat, then deprecate
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 23513
diff changeset
940 *
d7e5f66cbfc9 Add purple_prpl_got_attention_in_chat, then deprecate
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 23513
diff changeset
941 * Note that you can't send arbitrary PurpleAttentionType's, because there is
d7e5f66cbfc9 Add purple_prpl_got_attention_in_chat, then deprecate
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 23513
diff changeset
942 * only a fixed set of attention commands.
d7e5f66cbfc9 Add purple_prpl_got_attention_in_chat, then deprecate
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 23513
diff changeset
943 */
d7e5f66cbfc9 Add purple_prpl_got_attention_in_chat, then deprecate
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 23513
diff changeset
944 void purple_prpl_send_attention(PurpleConnection *gc, const char *who, guint type_code);
d7e5f66cbfc9 Add purple_prpl_got_attention_in_chat, then deprecate
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 23513
diff changeset
945
25889
26d9ca30335c Change "screen name" to "username" or "buddy name" in a whole bunch of
Mark Doliner <markdoliner@pidgin.im>
parents: 25888
diff changeset
946 /**
35399
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
947 * purple_prpl_got_attention:
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 34940
diff changeset
948 * @gc: The connection that received the attention message.
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 34940
diff changeset
949 * @who: Who requested your attention.
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 34940
diff changeset
950 * @type_code: An index into the prpl's attention_types list determining the type
25889
26d9ca30335c Change "screen name" to "username" or "buddy name" in a whole bunch of
Mark Doliner <markdoliner@pidgin.im>
parents: 25888
diff changeset
951 * of the attention request command to send.
26d9ca30335c Change "screen name" to "username" or "buddy name" in a whole bunch of
Mark Doliner <markdoliner@pidgin.im>
parents: 25888
diff changeset
952 *
35399
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
953 * Process an incoming attention message.
23875
d7e5f66cbfc9 Add purple_prpl_got_attention_in_chat, then deprecate
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 23513
diff changeset
954 */
d7e5f66cbfc9 Add purple_prpl_got_attention_in_chat, then deprecate
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 23513
diff changeset
955 void purple_prpl_got_attention(PurpleConnection *gc, const char *who, guint type_code);
d7e5f66cbfc9 Add purple_prpl_got_attention_in_chat, then deprecate
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 23513
diff changeset
956
25889
26d9ca30335c Change "screen name" to "username" or "buddy name" in a whole bunch of
Mark Doliner <markdoliner@pidgin.im>
parents: 25888
diff changeset
957 /**
35399
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
958 * purple_prpl_got_attention_in_chat:
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 34940
diff changeset
959 * @gc: The connection that received the attention message.
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 34940
diff changeset
960 * @id: The chat id.
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 34940
diff changeset
961 * @who: Who requested your attention.
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 34940
diff changeset
962 * @type_code: An index into the prpl's attention_types list determining the type
25889
26d9ca30335c Change "screen name" to "username" or "buddy name" in a whole bunch of
Mark Doliner <markdoliner@pidgin.im>
parents: 25888
diff changeset
963 * of the attention request command to send.
26d9ca30335c Change "screen name" to "username" or "buddy name" in a whole bunch of
Mark Doliner <markdoliner@pidgin.im>
parents: 25888
diff changeset
964 *
35399
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
965 * Process an incoming attention message in a chat.
23875
d7e5f66cbfc9 Add purple_prpl_got_attention_in_chat, then deprecate
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 23513
diff changeset
966 */
d7e5f66cbfc9 Add purple_prpl_got_attention_in_chat, then deprecate
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 23513
diff changeset
967 void purple_prpl_got_attention_in_chat(PurpleConnection *gc, int id, const char *who, guint type_code);
d7e5f66cbfc9 Add purple_prpl_got_attention_in_chat, then deprecate
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 23513
diff changeset
968
26099
2ba28e840a95 Convert serv_* media functions to purple_prpl_* functions.
Michael Ruprecht <maiku@pidgin.im>
parents: 23740
diff changeset
969 /**
35399
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
970 * purple_prpl_get_media_caps:
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 34940
diff changeset
971 * @account: The account the user is on.
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 34940
diff changeset
972 * @who: The name of the contact to check capabilities for.
26099
2ba28e840a95 Convert serv_* media functions to purple_prpl_* functions.
Michael Ruprecht <maiku@pidgin.im>
parents: 23740
diff changeset
973 *
2ba28e840a95 Convert serv_* media functions to purple_prpl_* functions.
Michael Ruprecht <maiku@pidgin.im>
parents: 23740
diff changeset
974 * Determines if the contact supports the given media session type.
2ba28e840a95 Convert serv_* media functions to purple_prpl_* functions.
Michael Ruprecht <maiku@pidgin.im>
parents: 23740
diff changeset
975 *
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 34940
diff changeset
976 * Returns: The media caps the contact supports.
26099
2ba28e840a95 Convert serv_* media functions to purple_prpl_* functions.
Michael Ruprecht <maiku@pidgin.im>
parents: 23740
diff changeset
977 */
26316
950c0d491c0d Change purple_prpl_can_do_media to purple_prpl_get_media_caps.
Michael Ruprecht <maiku@pidgin.im>
parents: 26186
diff changeset
978 PurpleMediaCaps purple_prpl_get_media_caps(PurpleAccount *account,
950c0d491c0d Change purple_prpl_can_do_media to purple_prpl_get_media_caps.
Michael Ruprecht <maiku@pidgin.im>
parents: 26186
diff changeset
979 const char *who);
26099
2ba28e840a95 Convert serv_* media functions to purple_prpl_* functions.
Michael Ruprecht <maiku@pidgin.im>
parents: 23740
diff changeset
980
2ba28e840a95 Convert serv_* media functions to purple_prpl_* functions.
Michael Ruprecht <maiku@pidgin.im>
parents: 23740
diff changeset
981 /**
35399
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
982 * purple_prpl_initiate_media:
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 34940
diff changeset
983 * @account: The account the user is on.
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 34940
diff changeset
984 * @who: The name of the contact to start a session with.
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 34940
diff changeset
985 * @type: The type of media session to start.
26099
2ba28e840a95 Convert serv_* media functions to purple_prpl_* functions.
Michael Ruprecht <maiku@pidgin.im>
parents: 23740
diff changeset
986 *
2ba28e840a95 Convert serv_* media functions to purple_prpl_* functions.
Michael Ruprecht <maiku@pidgin.im>
parents: 23740
diff changeset
987 * Initiates a media session with the given contact.
2ba28e840a95 Convert serv_* media functions to purple_prpl_* functions.
Michael Ruprecht <maiku@pidgin.im>
parents: 23740
diff changeset
988 *
35399
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
989 * Returns: TRUE if the call succeeded else FALSE. (Doesn't imply the media
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
990 * session or stream will be successfully created)
26099
2ba28e840a95 Convert serv_* media functions to purple_prpl_* functions.
Michael Ruprecht <maiku@pidgin.im>
parents: 23740
diff changeset
991 */
26495
52846ebe1c7d Don't assume a PurpleMedia instance will be created immediately.
Michael Ruprecht <maiku@pidgin.im>
parents: 26482
diff changeset
992 gboolean purple_prpl_initiate_media(PurpleAccount *account,
26099
2ba28e840a95 Convert serv_* media functions to purple_prpl_* functions.
Michael Ruprecht <maiku@pidgin.im>
parents: 23740
diff changeset
993 const char *who,
26108
8d0fd2f195aa Changed PurpleMediaStreamType to PurpleMediaSessionType.
Michael Ruprecht <maiku@pidgin.im>
parents: 26107
diff changeset
994 PurpleMediaSessionType type);
26099
2ba28e840a95 Convert serv_* media functions to purple_prpl_* functions.
Michael Ruprecht <maiku@pidgin.im>
parents: 23740
diff changeset
995
29543
4e38799c741e Add the purple_media_got_media_caps function in order to signal when a prpl
Michael Ruprecht <maiku@pidgin.im>
parents: 27132
diff changeset
996 /**
35399
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
997 * purple_prpl_got_media_caps:
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
998 * @account: The account the user is on.
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
999 * @who: The name of the contact for which capabilities have been received.
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
1000 *
29543
4e38799c741e Add the purple_media_got_media_caps function in order to signal when a prpl
Michael Ruprecht <maiku@pidgin.im>
parents: 27132
diff changeset
1001 * Signals that the prpl received capabilities for the given contact.
4e38799c741e Add the purple_media_got_media_caps function in order to signal when a prpl
Michael Ruprecht <maiku@pidgin.im>
parents: 27132
diff changeset
1002 *
4e38799c741e Add the purple_media_got_media_caps function in order to signal when a prpl
Michael Ruprecht <maiku@pidgin.im>
parents: 27132
diff changeset
1003 * This function is intended to be used only by prpls.
4e38799c741e Add the purple_media_got_media_caps function in order to signal when a prpl
Michael Ruprecht <maiku@pidgin.im>
parents: 27132
diff changeset
1004 */
4e38799c741e Add the purple_media_got_media_caps function in order to signal when a prpl
Michael Ruprecht <maiku@pidgin.im>
parents: 27132
diff changeset
1005 void purple_prpl_got_media_caps(PurpleAccount *account, const char *who);
4e38799c741e Add the purple_media_got_media_caps function in order to signal when a prpl
Michael Ruprecht <maiku@pidgin.im>
parents: 27132
diff changeset
1006
34327
a899fa8f95d5 Implement purple_prpl_get_max_message_size
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 34321
diff changeset
1007 /**
35399
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
1008 * purple_prpl_get_max_message_size:
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
1009 * @prpl: The protocol plugin to query.
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
1010 *
34327
a899fa8f95d5 Implement purple_prpl_get_max_message_size
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 34321
diff changeset
1011 * Gets the safe maximum message size in bytes for the protocol plugin.
a899fa8f95d5 Implement purple_prpl_get_max_message_size
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 34321
diff changeset
1012 *
35491
e8e97152eaf5 Fix a cross-referencing warning
Ankit Vani <a@nevitus.org>
parents: 35487
diff changeset
1013 * See #PurplePluginProtocolInfo's #get_max_message_size
34327
a899fa8f95d5 Implement purple_prpl_get_max_message_size
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 34321
diff changeset
1014 *
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 34940
diff changeset
1015 * Returns: Maximum message size, 0 if unspecified, -1 for infinite.
34327
a899fa8f95d5 Implement purple_prpl_get_max_message_size
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 34321
diff changeset
1016 */
a899fa8f95d5 Implement purple_prpl_get_max_message_size
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 34321
diff changeset
1017 gssize
a899fa8f95d5 Implement purple_prpl_get_max_message_size
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 34321
diff changeset
1018 purple_prpl_get_max_message_size(PurplePlugin *prpl);
9944
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 9943
diff changeset
1019
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 9943
diff changeset
1020 /**************************************************************************/
35472
474e26199560 Removed @name
Ankit Vani <a@nevitus.org>
parents: 35471
diff changeset
1021 /* Protocol Plugin Subsystem API */
9944
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 9943
diff changeset
1022 /**************************************************************************/
71ef020ec4b0 [gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents: 9943
diff changeset
1023
4557
40c90b1671cf [gaim-migrate @ 4837]
Christian Hammond <chipx86@chipx86.com>
parents: 4514
diff changeset
1024 /**
35399
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
1025 * purple_find_prpl:
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
1026 * @id: The protocol plugin;
4557
40c90b1671cf [gaim-migrate @ 4837]
Christian Hammond <chipx86@chipx86.com>
parents: 4514
diff changeset
1027 *
35399
570b35d804de Convert docs from doxygen to gtk-doc format for old plugin.h, prpl.h
Ankit Vani <a@nevitus.org>
parents: 35393
diff changeset
1028 * Finds a protocol plugin structure of the specified type.
4557
40c90b1671cf [gaim-migrate @ 4837]
Christian Hammond <chipx86@chipx86.com>
parents: 4514
diff changeset
1029 */
15884
4de1981757fc sed -ie 's/gaim/purple/g'
Sean Egan <seanegan@pidgin.im>
parents: 15588
diff changeset
1030 PurplePlugin *purple_find_prpl(const char *id);
981
00723c9a507c [gaim-migrate @ 991]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
diff changeset
1031
32787
7072f190d6ad Use G_BEGIN/END_DECLS in public libpurple files. This was
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 32604
diff changeset
1032 G_END_DECLS
5944
f19df037ac58 [gaim-migrate @ 6385]
Christian Hammond <chipx86@chipx86.com>
parents: 5943
diff changeset
1033
36038
c986b1e3fa1d Silence a result_independent_of_operands coverity false positive
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 33856
diff changeset
1034 #ifdef __COVERITY__
c986b1e3fa1d Silence a result_independent_of_operands coverity false positive
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 33856
diff changeset
1035 #undef PURPLE_PROTOCOL_PLUGIN_HAS_FUNC
c986b1e3fa1d Silence a result_independent_of_operands coverity false positive
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 33856
diff changeset
1036 #define PURPLE_PROTOCOL_PLUGIN_HAS_FUNC(prpl, member) (prpl->member != NULL)
c986b1e3fa1d Silence a result_independent_of_operands coverity false positive
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 33856
diff changeset
1037 #endif
c986b1e3fa1d Silence a result_independent_of_operands coverity false positive
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 33856
diff changeset
1038
2417
7751d1269b09 [gaim-migrate @ 2430]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents: 2411
diff changeset
1039 #endif /* _PRPL_H_ */

mercurial