Sat, 07 Mar 2009 01:23:51 +0000
propagate from branch 'im.pidgin.pidgin' (head b4bbfacd7f2050d87deeda12ea7bb3adc3608cb7)
to branch 'im.pidgin.cpw.darkrain42.buddy-add' (head b8cb9d0bdbd0fe9236740d6fade2c66d7499e8e6)
|
4557
40c90b1671cf
[gaim-migrate @ 4837]
Christian Hammond <chipx86@chipx86.com>
parents:
4514
diff
changeset
|
1 | /** |
|
40c90b1671cf
[gaim-migrate @ 4837]
Christian Hammond <chipx86@chipx86.com>
parents:
4514
diff
changeset
|
2 | * @file prpl.h Protocol Plugin functions |
|
5034
077678f7b048
[gaim-migrate @ 5377]
Christian Hammond <chipx86@chipx86.com>
parents:
4966
diff
changeset
|
3 | * @ingroup core |
|
20147
66f05a854eee
applied changes from 8a731bbd0197fbcc91a705c2d8f528154216defa
Richard Laager <rlaager@pidgin.im>
parents:
19907
diff
changeset
|
4 | */ |
|
66f05a854eee
applied changes from 8a731bbd0197fbcc91a705c2d8f528154216defa
Richard Laager <rlaager@pidgin.im>
parents:
19907
diff
changeset
|
5 | |
|
66f05a854eee
applied changes from 8a731bbd0197fbcc91a705c2d8f528154216defa
Richard Laager <rlaager@pidgin.im>
parents:
19907
diff
changeset
|
6 | /* purple |
| 981 | 7 | * |
| 15884 | 8 | * Purple is the legal property of its developers, whose names are too numerous |
| 8046 | 9 | * to list here. Please refer to the COPYRIGHT file distributed with this |
| 10 | * source distribution. | |
|
6451
2ff17ce330d8
[gaim-migrate @ 6960]
Christian Hammond <chipx86@chipx86.com>
parents:
6418
diff
changeset
|
11 | * |
| 981 | 12 | * This program is free software; you can redistribute it and/or modify |
| 13 | * it under the terms of the GNU General Public License as published by | |
| 14 | * the Free Software Foundation; either version 2 of the License, or | |
| 15 | * (at your option) any later version. | |
| 16 | * | |
| 17 | * This program is distributed in the hope that it will be useful, | |
| 18 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | |
| 19 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
| 20 | * GNU General Public License for more details. | |
| 21 | * | |
| 22 | * You should have received a copy of the GNU General Public License | |
| 23 | * along with this program; if not, write to the Free Software | |
|
19859
71d37b57eff2
The FSF changed its address a while ago; our files were out of date.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
19641
diff
changeset
|
24 | * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA |
| 981 | 25 | */ |
| 26 | ||
|
2417
7751d1269b09
[gaim-migrate @ 2430]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2411
diff
changeset
|
27 | /* this file should be all that prpls need to include. therefore, by including |
| 15884 | 28 | * this file, they should get glib, proxy, purple_connection, prpl, etc. */ |
| 981 | 29 | |
| 15884 | 30 | #ifndef _PURPLE_PRPL_H_ |
| 31 | #define _PURPLE_PRPL_H_ | |
|
2417
7751d1269b09
[gaim-migrate @ 2430]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2411
diff
changeset
|
32 | |
| 15884 | 33 | typedef struct _PurplePluginProtocolInfo PurplePluginProtocolInfo; |
|
23513
35c08771d011
document PurpleAttentionType slightly
Will Thompson <resiak@pidgin.im>
parents:
23337
diff
changeset
|
34 | /** @copydoc _PurpleAttentionType */ |
|
19604
ae3d7cc7063d
Attention API for nudges/buzzes/zaps of various protocols.
Jeff Connelly <jeff2@soc.pidgin.im>
parents:
19401
diff
changeset
|
35 | typedef struct _PurpleAttentionType PurpleAttentionType; |
|
5205
242b8aa81328
[gaim-migrate @ 5573]
Christian Hammond <chipx86@chipx86.com>
parents:
5148
diff
changeset
|
36 | |
|
4557
40c90b1671cf
[gaim-migrate @ 4837]
Christian Hammond <chipx86@chipx86.com>
parents:
4514
diff
changeset
|
37 | /**************************************************************************/ |
|
40c90b1671cf
[gaim-migrate @ 4837]
Christian Hammond <chipx86@chipx86.com>
parents:
4514
diff
changeset
|
38 | /** @name Basic Protocol Information */ |
|
40c90b1671cf
[gaim-migrate @ 4837]
Christian Hammond <chipx86@chipx86.com>
parents:
4514
diff
changeset
|
39 | /**************************************************************************/ |
|
40c90b1671cf
[gaim-migrate @ 4837]
Christian Hammond <chipx86@chipx86.com>
parents:
4514
diff
changeset
|
40 | |
| 9318 | 41 | typedef enum { |
| 15884 | 42 | PURPLE_ICON_SCALE_DISPLAY = 0x01, /**< We scale the icon when we display it */ |
| 43 | PURPLE_ICON_SCALE_SEND = 0x02 /**< We scale the icon before we send it to the server */ | |
| 44 | } PurpleIconScaleRules; | |
| 9318 | 45 | |
| 46 | ||
| 9308 | 47 | /** |
| 15884 | 48 | * A description of a Buddy Icon specification. This tells Purple what kind of image file |
| 9308 | 49 | * it should give this prpl, and what kind of image file it should expect back. |
| 9316 | 50 | * Dimensions less than 1 should be ignored and the image not scaled. |
| 9308 | 51 | */ |
| 15884 | 52 | typedef struct _PurpleBuddyIconSpec PurpleBuddyIconSpec; |
| 9308 | 53 | |
|
9999
86e89e1dee10
[gaim-migrate @ 10913]
Mark Doliner <markdoliner@pidgin.im>
parents:
9971
diff
changeset
|
54 | /** |
|
11035
c10c382f4896
[gaim-migrate @ 12922]
Gary Kramlich <grim@reaperworld.com>
parents:
10870
diff
changeset
|
55 | * 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
|
56 | * 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
|
57 | */ |
|
15281
5c0b8a2f6b3e
[gaim-migrate @ 18009]
Mark Doliner <markdoliner@pidgin.im>
parents:
15205
diff
changeset
|
58 | #define NO_BUDDY_ICONS {NULL, 0, 0, 0, 0, 0, 0} |
|
5c0b8a2f6b3e
[gaim-migrate @ 18009]
Mark Doliner <markdoliner@pidgin.im>
parents:
15205
diff
changeset
|
59 | |
|
17392
e88a54874d37
Don't include unistd.h if HAVE_UNISTD_H isn't defined.
Daniel Atallah <datallah@pidgin.im>
parents:
16961
diff
changeset
|
60 | #ifdef HAVE_UNISTD_H |
|
15281
5c0b8a2f6b3e
[gaim-migrate @ 18009]
Mark Doliner <markdoliner@pidgin.im>
parents:
15205
diff
changeset
|
61 | #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
|
62 | #endif |
| 9308 | 63 | |
| 8573 | 64 | #include "blist.h" |
|
12216
d80739091a63
[gaim-migrate @ 14518]
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
12143
diff
changeset
|
65 | #include "conversation.h" |
|
12143
09f216663302
[gaim-migrate @ 14444]
Evan Schoenberg <evands@pidgin.im>
parents:
12024
diff
changeset
|
66 | #include "ft.h" |
|
16538
c7e61e2917c9
Updates for the account buddy icon stuff. This doesn't yet work fully (and maybe not even partly), but it compiles.
Richard Laager <rlaager@pidgin.im>
parents:
15884
diff
changeset
|
67 | #include "imgstore.h" |
|
15205
f642029b2f97
[gaim-migrate @ 17929]
Evan Schoenberg <evands@pidgin.im>
parents:
15185
diff
changeset
|
68 | #include "notify.h" |
| 8573 | 69 | #include "proxy.h" |
| 70 | #include "plugin.h" | |
|
9999
86e89e1dee10
[gaim-migrate @ 10913]
Mark Doliner <markdoliner@pidgin.im>
parents:
9971
diff
changeset
|
71 | #include "roomlist.h" |
|
9944
71ef020ec4b0
[gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents:
9943
diff
changeset
|
72 | #include "status.h" |
|
11475
1e222e6e52a0
[gaim-migrate @ 13717]
Gary Kramlich <grim@reaperworld.com>
parents:
11462
diff
changeset
|
73 | #include "whiteboard.h" |
| 8573 | 74 | |
|
23337
2643da079f95
Add doxycomment for PurpleBuddyIcon; tweak that of PurpleBuddyIconSpec.
Will Thompson <resiak@pidgin.im>
parents:
23281
diff
changeset
|
75 | |
|
2643da079f95
Add doxycomment for PurpleBuddyIcon; tweak that of PurpleBuddyIconSpec.
Will Thompson <resiak@pidgin.im>
parents:
23281
diff
changeset
|
76 | /** @copydoc PurpleBuddyIconSpec */ |
| 15884 | 77 | struct _PurpleBuddyIconSpec { |
|
23337
2643da079f95
Add doxycomment for PurpleBuddyIcon; tweak that of PurpleBuddyIconSpec.
Will Thompson <resiak@pidgin.im>
parents:
23281
diff
changeset
|
78 | /** This is a comma-delimited list of image formats or @c NULL if icons |
|
2643da079f95
Add doxycomment for PurpleBuddyIcon; tweak that of PurpleBuddyIconSpec.
Will Thompson <resiak@pidgin.im>
parents:
23281
diff
changeset
|
79 | * are not supported. Neither the core nor the prpl will actually |
|
2643da079f95
Add doxycomment for PurpleBuddyIcon; tweak that of PurpleBuddyIconSpec.
Will Thompson <resiak@pidgin.im>
parents:
23281
diff
changeset
|
80 | * check to see if the data it's given matches this; it's entirely up |
|
2643da079f95
Add doxycomment for PurpleBuddyIcon; tweak that of PurpleBuddyIconSpec.
Will Thompson <resiak@pidgin.im>
parents:
23281
diff
changeset
|
81 | * to the UI to do what it wants |
|
2643da079f95
Add doxycomment for PurpleBuddyIcon; tweak that of PurpleBuddyIconSpec.
Will Thompson <resiak@pidgin.im>
parents:
23281
diff
changeset
|
82 | */ |
|
2643da079f95
Add doxycomment for PurpleBuddyIcon; tweak that of PurpleBuddyIconSpec.
Will Thompson <resiak@pidgin.im>
parents:
23281
diff
changeset
|
83 | char *format; |
|
2643da079f95
Add doxycomment for PurpleBuddyIcon; tweak that of PurpleBuddyIconSpec.
Will Thompson <resiak@pidgin.im>
parents:
23281
diff
changeset
|
84 | |
|
2643da079f95
Add doxycomment for PurpleBuddyIcon; tweak that of PurpleBuddyIconSpec.
Will Thompson <resiak@pidgin.im>
parents:
23281
diff
changeset
|
85 | int min_width; /**< Minimum width of this icon */ |
|
2643da079f95
Add doxycomment for PurpleBuddyIcon; tweak that of PurpleBuddyIconSpec.
Will Thompson <resiak@pidgin.im>
parents:
23281
diff
changeset
|
86 | int min_height; /**< Minimum height of this icon */ |
|
2643da079f95
Add doxycomment for PurpleBuddyIcon; tweak that of PurpleBuddyIconSpec.
Will Thompson <resiak@pidgin.im>
parents:
23281
diff
changeset
|
87 | int max_width; /**< Maximum width of this icon */ |
|
2643da079f95
Add doxycomment for PurpleBuddyIcon; tweak that of PurpleBuddyIconSpec.
Will Thompson <resiak@pidgin.im>
parents:
23281
diff
changeset
|
88 | int max_height; /**< Maximum height of this icon */ |
|
2643da079f95
Add doxycomment for PurpleBuddyIcon; tweak that of PurpleBuddyIconSpec.
Will Thompson <resiak@pidgin.im>
parents:
23281
diff
changeset
|
89 | size_t max_filesize; /**< Maximum size in bytes */ |
|
2643da079f95
Add doxycomment for PurpleBuddyIcon; tweak that of PurpleBuddyIconSpec.
Will Thompson <resiak@pidgin.im>
parents:
23281
diff
changeset
|
90 | PurpleIconScaleRules scale_rules; /**< How to stretch this icon */ |
|
15281
5c0b8a2f6b3e
[gaim-migrate @ 18009]
Mark Doliner <markdoliner@pidgin.im>
parents:
15205
diff
changeset
|
91 | }; |
|
5c0b8a2f6b3e
[gaim-migrate @ 18009]
Mark Doliner <markdoliner@pidgin.im>
parents:
15205
diff
changeset
|
92 | |
|
9713
bb37562302a1
[gaim-migrate @ 10574]
Mark Doliner <markdoliner@pidgin.im>
parents:
9584
diff
changeset
|
93 | struct proto_chat_entry { |
|
13107
704041197f4d
[gaim-migrate @ 15468]
Richard Laager <rlaager@pidgin.im>
parents:
12970
diff
changeset
|
94 | const char *label; |
|
704041197f4d
[gaim-migrate @ 15468]
Richard Laager <rlaager@pidgin.im>
parents:
12970
diff
changeset
|
95 | const char *identifier; |
|
10475
1b7fe16233f3
[gaim-migrate @ 11762]
Richard Laager <rlaager@pidgin.im>
parents:
10447
diff
changeset
|
96 | gboolean required; |
|
9713
bb37562302a1
[gaim-migrate @ 10574]
Mark Doliner <markdoliner@pidgin.im>
parents:
9584
diff
changeset
|
97 | gboolean is_int; |
|
bb37562302a1
[gaim-migrate @ 10574]
Mark Doliner <markdoliner@pidgin.im>
parents:
9584
diff
changeset
|
98 | int min; |
|
bb37562302a1
[gaim-migrate @ 10574]
Mark Doliner <markdoliner@pidgin.im>
parents:
9584
diff
changeset
|
99 | int max; |
|
bb37562302a1
[gaim-migrate @ 10574]
Mark Doliner <markdoliner@pidgin.im>
parents:
9584
diff
changeset
|
100 | gboolean secret; |
|
bb37562302a1
[gaim-migrate @ 10574]
Mark Doliner <markdoliner@pidgin.im>
parents:
9584
diff
changeset
|
101 | }; |
|
bb37562302a1
[gaim-migrate @ 10574]
Mark Doliner <markdoliner@pidgin.im>
parents:
9584
diff
changeset
|
102 | |
|
23513
35c08771d011
document PurpleAttentionType slightly
Will Thompson <resiak@pidgin.im>
parents:
23337
diff
changeset
|
103 | /** Represents "nudges" and "buzzes" that you may send to a buddy to attract |
|
35c08771d011
document PurpleAttentionType slightly
Will Thompson <resiak@pidgin.im>
parents:
23337
diff
changeset
|
104 | * their attention (or vice-versa). |
|
35c08771d011
document PurpleAttentionType slightly
Will Thompson <resiak@pidgin.im>
parents:
23337
diff
changeset
|
105 | */ |
|
19604
ae3d7cc7063d
Attention API for nudges/buzzes/zaps of various protocols.
Jeff Connelly <jeff2@soc.pidgin.im>
parents:
19401
diff
changeset
|
106 | struct _PurpleAttentionType |
|
ae3d7cc7063d
Attention API for nudges/buzzes/zaps of various protocols.
Jeff Connelly <jeff2@soc.pidgin.im>
parents:
19401
diff
changeset
|
107 | { |
|
ae3d7cc7063d
Attention API for nudges/buzzes/zaps of various protocols.
Jeff Connelly <jeff2@soc.pidgin.im>
parents:
19401
diff
changeset
|
108 | const char *name; /**< Shown in GUI elements */ |
|
ae3d7cc7063d
Attention API for nudges/buzzes/zaps of various protocols.
Jeff Connelly <jeff2@soc.pidgin.im>
parents:
19401
diff
changeset
|
109 | const char *incoming_description; /**< Shown when sent */ |
|
ae3d7cc7063d
Attention API for nudges/buzzes/zaps of various protocols.
Jeff Connelly <jeff2@soc.pidgin.im>
parents:
19401
diff
changeset
|
110 | const char *outgoing_description; /**< Shown when receied */ |
|
19639
93a56951f439
In the attention API, use the PURPLE_NOTIFY_MESSAGE flag to serv_got_im()
Jeff Connelly <jeff2@soc.pidgin.im>
parents:
19604
diff
changeset
|
111 | const char *icon_name; /**< Icon to display (optional) */ |
|
22225
6cd802a8c5ad
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21865
diff
changeset
|
112 | const char *unlocalized_name; /**< Unlocalized name for UIs needing it */ |
|
19639
93a56951f439
In the attention API, use the PURPLE_NOTIFY_MESSAGE flag to serv_got_im()
Jeff Connelly <jeff2@soc.pidgin.im>
parents:
19604
diff
changeset
|
113 | |
|
93a56951f439
In the attention API, use the PURPLE_NOTIFY_MESSAGE flag to serv_got_im()
Jeff Connelly <jeff2@soc.pidgin.im>
parents:
19604
diff
changeset
|
114 | /* Reserved fields for future purposes */ |
|
93a56951f439
In the attention API, use the PURPLE_NOTIFY_MESSAGE flag to serv_got_im()
Jeff Connelly <jeff2@soc.pidgin.im>
parents:
19604
diff
changeset
|
115 | gpointer _reserved2; |
|
93a56951f439
In the attention API, use the PURPLE_NOTIFY_MESSAGE flag to serv_got_im()
Jeff Connelly <jeff2@soc.pidgin.im>
parents:
19604
diff
changeset
|
116 | gpointer _reserved3; |
|
93a56951f439
In the attention API, use the PURPLE_NOTIFY_MESSAGE flag to serv_got_im()
Jeff Connelly <jeff2@soc.pidgin.im>
parents:
19604
diff
changeset
|
117 | gpointer _reserved4; |
|
19604
ae3d7cc7063d
Attention API for nudges/buzzes/zaps of various protocols.
Jeff Connelly <jeff2@soc.pidgin.im>
parents:
19401
diff
changeset
|
118 | }; |
|
ae3d7cc7063d
Attention API for nudges/buzzes/zaps of various protocols.
Jeff Connelly <jeff2@soc.pidgin.im>
parents:
19401
diff
changeset
|
119 | |
|
6622
277eb0b14653
[gaim-migrate @ 7146]
Robert McQueen <robot101@debian.org>
parents:
6451
diff
changeset
|
120 | /** |
|
4557
40c90b1671cf
[gaim-migrate @ 4837]
Christian Hammond <chipx86@chipx86.com>
parents:
4514
diff
changeset
|
121 | * Protocol options |
|
40c90b1671cf
[gaim-migrate @ 4837]
Christian Hammond <chipx86@chipx86.com>
parents:
4514
diff
changeset
|
122 | * |
|
40c90b1671cf
[gaim-migrate @ 4837]
Christian Hammond <chipx86@chipx86.com>
parents:
4514
diff
changeset
|
123 | * These should all be stuff that some plugins can do and others can't. |
|
40c90b1671cf
[gaim-migrate @ 4837]
Christian Hammond <chipx86@chipx86.com>
parents:
4514
diff
changeset
|
124 | */ |
|
40c90b1671cf
[gaim-migrate @ 4837]
Christian Hammond <chipx86@chipx86.com>
parents:
4514
diff
changeset
|
125 | typedef enum |
|
40c90b1671cf
[gaim-migrate @ 4837]
Christian Hammond <chipx86@chipx86.com>
parents:
4514
diff
changeset
|
126 | { |
|
40c90b1671cf
[gaim-migrate @ 4837]
Christian Hammond <chipx86@chipx86.com>
parents:
4514
diff
changeset
|
127 | /** |
|
40c90b1671cf
[gaim-migrate @ 4837]
Christian Hammond <chipx86@chipx86.com>
parents:
4514
diff
changeset
|
128 | * Use a unique name, not an alias, for chat rooms. |
|
40c90b1671cf
[gaim-migrate @ 4837]
Christian Hammond <chipx86@chipx86.com>
parents:
4514
diff
changeset
|
129 | * |
|
16961
b6955f946f8f
s/Jabber/XMPP in user-visible places.
Richard Laager <rlaager@pidgin.im>
parents:
16799
diff
changeset
|
130 | * XMPP lets you choose what name you want for chat. |
|
4557
40c90b1671cf
[gaim-migrate @ 4837]
Christian Hammond <chipx86@chipx86.com>
parents:
4514
diff
changeset
|
131 | * So it shouldn't be pulling the alias for when you're in chat; |
|
40c90b1671cf
[gaim-migrate @ 4837]
Christian Hammond <chipx86@chipx86.com>
parents:
4514
diff
changeset
|
132 | * it gets annoying. |
|
40c90b1671cf
[gaim-migrate @ 4837]
Christian Hammond <chipx86@chipx86.com>
parents:
4514
diff
changeset
|
133 | */ |
|
40c90b1671cf
[gaim-migrate @ 4837]
Christian Hammond <chipx86@chipx86.com>
parents:
4514
diff
changeset
|
134 | OPT_PROTO_UNIQUE_CHATNAME = 0x00000004, |
|
40c90b1671cf
[gaim-migrate @ 4837]
Christian Hammond <chipx86@chipx86.com>
parents:
4514
diff
changeset
|
135 | |
|
40c90b1671cf
[gaim-migrate @ 4837]
Christian Hammond <chipx86@chipx86.com>
parents:
4514
diff
changeset
|
136 | /** |
|
40c90b1671cf
[gaim-migrate @ 4837]
Christian Hammond <chipx86@chipx86.com>
parents:
4514
diff
changeset
|
137 | * Chat rooms have topics. |
|
40c90b1671cf
[gaim-migrate @ 4837]
Christian Hammond <chipx86@chipx86.com>
parents:
4514
diff
changeset
|
138 | * |
|
16961
b6955f946f8f
s/Jabber/XMPP in user-visible places.
Richard Laager <rlaager@pidgin.im>
parents:
16799
diff
changeset
|
139 | * IRC and XMPP support this. |
|
4557
40c90b1671cf
[gaim-migrate @ 4837]
Christian Hammond <chipx86@chipx86.com>
parents:
4514
diff
changeset
|
140 | */ |
|
40c90b1671cf
[gaim-migrate @ 4837]
Christian Hammond <chipx86@chipx86.com>
parents:
4514
diff
changeset
|
141 | OPT_PROTO_CHAT_TOPIC = 0x00000008, |
|
1370
de786e8d0146
[gaim-migrate @ 1380]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1355
diff
changeset
|
142 | |
|
4557
40c90b1671cf
[gaim-migrate @ 4837]
Christian Hammond <chipx86@chipx86.com>
parents:
4514
diff
changeset
|
143 | /** |
|
40c90b1671cf
[gaim-migrate @ 4837]
Christian Hammond <chipx86@chipx86.com>
parents:
4514
diff
changeset
|
144 | * Don't require passwords for sign-in. |
|
40c90b1671cf
[gaim-migrate @ 4837]
Christian Hammond <chipx86@chipx86.com>
parents:
4514
diff
changeset
|
145 | * |
|
9999
86e89e1dee10
[gaim-migrate @ 10913]
Mark Doliner <markdoliner@pidgin.im>
parents:
9971
diff
changeset
|
146 | * Zephyr doesn't require passwords, so there's no |
|
86e89e1dee10
[gaim-migrate @ 10913]
Mark Doliner <markdoliner@pidgin.im>
parents:
9971
diff
changeset
|
147 | * need for a password prompt. |
|
4557
40c90b1671cf
[gaim-migrate @ 4837]
Christian Hammond <chipx86@chipx86.com>
parents:
4514
diff
changeset
|
148 | */ |
|
40c90b1671cf
[gaim-migrate @ 4837]
Christian Hammond <chipx86@chipx86.com>
parents:
4514
diff
changeset
|
149 | OPT_PROTO_NO_PASSWORD = 0x00000010, |
|
40c90b1671cf
[gaim-migrate @ 4837]
Christian Hammond <chipx86@chipx86.com>
parents:
4514
diff
changeset
|
150 | |
|
40c90b1671cf
[gaim-migrate @ 4837]
Christian Hammond <chipx86@chipx86.com>
parents:
4514
diff
changeset
|
151 | /** |
|
40c90b1671cf
[gaim-migrate @ 4837]
Christian Hammond <chipx86@chipx86.com>
parents:
4514
diff
changeset
|
152 | * Notify on new mail. |
|
40c90b1671cf
[gaim-migrate @ 4837]
Christian Hammond <chipx86@chipx86.com>
parents:
4514
diff
changeset
|
153 | * |
|
40c90b1671cf
[gaim-migrate @ 4837]
Christian Hammond <chipx86@chipx86.com>
parents:
4514
diff
changeset
|
154 | * MSN and Yahoo notify you when you have new mail. |
|
40c90b1671cf
[gaim-migrate @ 4837]
Christian Hammond <chipx86@chipx86.com>
parents:
4514
diff
changeset
|
155 | */ |
|
40c90b1671cf
[gaim-migrate @ 4837]
Christian Hammond <chipx86@chipx86.com>
parents:
4514
diff
changeset
|
156 | OPT_PROTO_MAIL_CHECK = 0x00000020, |
|
40c90b1671cf
[gaim-migrate @ 4837]
Christian Hammond <chipx86@chipx86.com>
parents:
4514
diff
changeset
|
157 | |
|
40c90b1671cf
[gaim-migrate @ 4837]
Christian Hammond <chipx86@chipx86.com>
parents:
4514
diff
changeset
|
158 | /** |
|
40c90b1671cf
[gaim-migrate @ 4837]
Christian Hammond <chipx86@chipx86.com>
parents:
4514
diff
changeset
|
159 | * Images in IMs. |
|
40c90b1671cf
[gaim-migrate @ 4837]
Christian Hammond <chipx86@chipx86.com>
parents:
4514
diff
changeset
|
160 | * |
|
40c90b1671cf
[gaim-migrate @ 4837]
Christian Hammond <chipx86@chipx86.com>
parents:
4514
diff
changeset
|
161 | * Oscar lets you send images in direct IMs. |
|
40c90b1671cf
[gaim-migrate @ 4837]
Christian Hammond <chipx86@chipx86.com>
parents:
4514
diff
changeset
|
162 | */ |
|
9999
86e89e1dee10
[gaim-migrate @ 10913]
Mark Doliner <markdoliner@pidgin.im>
parents:
9971
diff
changeset
|
163 | OPT_PROTO_IM_IMAGE = 0x00000040, |
|
4557
40c90b1671cf
[gaim-migrate @ 4837]
Christian Hammond <chipx86@chipx86.com>
parents:
4514
diff
changeset
|
164 | |
|
40c90b1671cf
[gaim-migrate @ 4837]
Christian Hammond <chipx86@chipx86.com>
parents:
4514
diff
changeset
|
165 | /** |
|
40c90b1671cf
[gaim-migrate @ 4837]
Christian Hammond <chipx86@chipx86.com>
parents:
4514
diff
changeset
|
166 | * Allow passwords to be optional. |
|
40c90b1671cf
[gaim-migrate @ 4837]
Christian Hammond <chipx86@chipx86.com>
parents:
4514
diff
changeset
|
167 | * |
|
40c90b1671cf
[gaim-migrate @ 4837]
Christian Hammond <chipx86@chipx86.com>
parents:
4514
diff
changeset
|
168 | * Passwords in IRC are optional, and are needed for certain |
|
40c90b1671cf
[gaim-migrate @ 4837]
Christian Hammond <chipx86@chipx86.com>
parents:
4514
diff
changeset
|
169 | * functionality. |
|
40c90b1671cf
[gaim-migrate @ 4837]
Christian Hammond <chipx86@chipx86.com>
parents:
4514
diff
changeset
|
170 | */ |
|
9999
86e89e1dee10
[gaim-migrate @ 10913]
Mark Doliner <markdoliner@pidgin.im>
parents:
9971
diff
changeset
|
171 | OPT_PROTO_PASSWORD_OPTIONAL = 0x00000080, |
|
4557
40c90b1671cf
[gaim-migrate @ 4837]
Christian Hammond <chipx86@chipx86.com>
parents:
4514
diff
changeset
|
172 | |
| 5367 | 173 | /** |
| 174 | * Allows font size to be specified in sane point size | |
| 175 | * | |
|
16961
b6955f946f8f
s/Jabber/XMPP in user-visible places.
Richard Laager <rlaager@pidgin.im>
parents:
16799
diff
changeset
|
176 | * Probably just XMPP and Y!M |
| 5367 | 177 | */ |
| 11358 | 178 | OPT_PROTO_USE_POINTSIZE = 0x00000100, |
| 179 | ||
| 180 | /** | |
|
25889
26d9ca30335c
Change "screen name" to "username" or "buddy name" in a whole bunch of
Mark Doliner <markdoliner@pidgin.im>
parents:
25888
diff
changeset
|
181 | * Set the Register button active even when the username has not |
|
26d9ca30335c
Change "screen name" to "username" or "buddy name" in a whole bunch of
Mark Doliner <markdoliner@pidgin.im>
parents:
25888
diff
changeset
|
182 | * been specified. |
| 11358 | 183 | * |
|
25889
26d9ca30335c
Change "screen name" to "username" or "buddy name" in a whole bunch of
Mark Doliner <markdoliner@pidgin.im>
parents:
25888
diff
changeset
|
184 | * Gadu-Gadu doesn't need a username to register new account (because |
|
26d9ca30335c
Change "screen name" to "username" or "buddy name" in a whole bunch of
Mark Doliner <markdoliner@pidgin.im>
parents:
25888
diff
changeset
|
185 | * usernames are assigned by the server). |
| 11358 | 186 | */ |
| 187 | OPT_PROTO_REGISTER_NOSCREENNAME = 0x00000200, | |
| 5367 | 188 | |
|
18092
1a2362194473
Mostly taken from the patch on ticket #410, don't send unknown slash
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
17392
diff
changeset
|
189 | /** |
|
1a2362194473
Mostly taken from the patch on ticket #410, don't send unknown slash
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
17392
diff
changeset
|
190 | * Indicates that slash commands are native to this protocol. |
|
1a2362194473
Mostly taken from the patch on ticket #410, don't send unknown slash
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
17392
diff
changeset
|
191 | * Used as a hint that unknown commands should not be sent as messages. |
|
23063
9458eafda32c
Assorted cleanups, mostly to the Doxygen comments. I added a few missing
Richard Laager <rlaager@pidgin.im>
parents:
22906
diff
changeset
|
192 | * @since 2.1.0 |
|
18092
1a2362194473
Mostly taken from the patch on ticket #410, don't send unknown slash
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
17392
diff
changeset
|
193 | */ |
|
25105
fe13c190ca13
Remove the commas at the end of enumerator lists. This resolves warnings
Florian Quèze <florian@instantbird.org>
parents:
24854
diff
changeset
|
194 | OPT_PROTO_SLASH_COMMANDS_NATIVE = 0x00000400 |
|
18092
1a2362194473
Mostly taken from the patch on ticket #410, don't send unknown slash
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
17392
diff
changeset
|
195 | |
| 15884 | 196 | } PurpleProtocolOptions; |
|
4557
40c90b1671cf
[gaim-migrate @ 4837]
Christian Hammond <chipx86@chipx86.com>
parents:
4514
diff
changeset
|
197 | |
|
40c90b1671cf
[gaim-migrate @ 4837]
Christian Hammond <chipx86@chipx86.com>
parents:
4514
diff
changeset
|
198 | /** |
|
5205
242b8aa81328
[gaim-migrate @ 5573]
Christian Hammond <chipx86@chipx86.com>
parents:
5148
diff
changeset
|
199 | * A protocol plugin information structure. |
|
4557
40c90b1671cf
[gaim-migrate @ 4837]
Christian Hammond <chipx86@chipx86.com>
parents:
4514
diff
changeset
|
200 | * |
|
40c90b1671cf
[gaim-migrate @ 4837]
Christian Hammond <chipx86@chipx86.com>
parents:
4514
diff
changeset
|
201 | * 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
|
202 | * between purple and the protocol plugin. Many of these callbacks can be |
|
10162
432a7a659518
[gaim-migrate @ 11248]
Jonathan Champ <royanee@users.sourceforge.net>
parents:
10160
diff
changeset
|
203 | * 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
|
204 | */ |
| 15884 | 205 | struct _PurplePluginProtocolInfo |
|
4557
40c90b1671cf
[gaim-migrate @ 4837]
Christian Hammond <chipx86@chipx86.com>
parents:
4514
diff
changeset
|
206 | { |
| 15884 | 207 | PurpleProtocolOptions options; /**< Protocol options. */ |
|
5205
242b8aa81328
[gaim-migrate @ 5573]
Christian Hammond <chipx86@chipx86.com>
parents:
5148
diff
changeset
|
208 | |
|
19401
012a56cd0484
Add marginally better doxygen magic to PurplePluginProtocolInfo
Will Thompson <resiak@pidgin.im>
parents:
18243
diff
changeset
|
209 | GList *user_splits; /**< A GList of PurpleAccountUserSplit */ |
|
012a56cd0484
Add marginally better doxygen magic to PurplePluginProtocolInfo
Will Thompson <resiak@pidgin.im>
parents:
18243
diff
changeset
|
210 | GList *protocol_options; /**< A GList of PurpleAccountOption */ |
|
10160
90f207810143
[gaim-migrate @ 11243]
Mark Doliner <markdoliner@pidgin.im>
parents:
10104
diff
changeset
|
211 | |
|
19401
012a56cd0484
Add marginally better doxygen magic to PurplePluginProtocolInfo
Will Thompson <resiak@pidgin.im>
parents:
18243
diff
changeset
|
212 | PurpleBuddyIconSpec icon_spec; /**< The icon spec. */ |
|
10160
90f207810143
[gaim-migrate @ 11243]
Mark Doliner <markdoliner@pidgin.im>
parents:
10104
diff
changeset
|
213 | |
|
6451
2ff17ce330d8
[gaim-migrate @ 6960]
Christian Hammond <chipx86@chipx86.com>
parents:
6418
diff
changeset
|
214 | /** |
|
2ff17ce330d8
[gaim-migrate @ 6960]
Christian Hammond <chipx86@chipx86.com>
parents:
6418
diff
changeset
|
215 | * 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
|
216 | * 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
|
217 | * 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
|
218 | * return the name to use for the protocol's icon. |
|
eec8b2bed22e
Document prpl_info->list_icon(NULL, NULL), and add my name to COPYRIGHT.
Jeff Connelly <jeff2@soc.pidgin.im>
parents:
15884
diff
changeset
|
219 | * |
|
eec8b2bed22e
Document prpl_info->list_icon(NULL, NULL), and add my name to COPYRIGHT.
Jeff Connelly <jeff2@soc.pidgin.im>
parents:
15884
diff
changeset
|
220 | * This must be implemented. |
| 4687 | 221 | */ |
| 15884 | 222 | const char *(*list_icon)(PurpleAccount *account, PurpleBuddy *buddy); |
| 4687 | 223 | |
| 224 | /** | |
|
5205
242b8aa81328
[gaim-migrate @ 5573]
Christian Hammond <chipx86@chipx86.com>
parents:
5148
diff
changeset
|
225 | * Fills the four char**'s with string identifiers for "emblems" |
|
242b8aa81328
[gaim-migrate @ 5573]
Christian Hammond <chipx86@chipx86.com>
parents:
5148
diff
changeset
|
226 | * that the UI will interpret and display as relevant |
| 4687 | 227 | */ |
| 15884 | 228 | const char *(*list_emblem)(PurpleBuddy *buddy); |
| 4722 | 229 | |
| 230 | /** | |
|
5205
242b8aa81328
[gaim-migrate @ 5573]
Christian Hammond <chipx86@chipx86.com>
parents:
5148
diff
changeset
|
231 | * Gets a short string representing this buddy's status. This will |
|
242b8aa81328
[gaim-migrate @ 5573]
Christian Hammond <chipx86@chipx86.com>
parents:
5148
diff
changeset
|
232 | * be shown on the buddy list. |
| 4722 | 233 | */ |
| 15884 | 234 | char *(*status_text)(PurpleBuddy *buddy); |
|
6451
2ff17ce330d8
[gaim-migrate @ 6960]
Christian Hammond <chipx86@chipx86.com>
parents:
6418
diff
changeset
|
235 | |
| 4724 | 236 | /** |
|
12970
c2f3b4dcf711
[gaim-migrate @ 15323]
Richard Laager <rlaager@pidgin.im>
parents:
12943
diff
changeset
|
237 | * Allows the prpl to add text to a buddy's tooltip. |
| 4724 | 238 | */ |
| 15884 | 239 | void (*tooltip_text)(PurpleBuddy *buddy, PurpleNotifyUserInfo *user_info, gboolean full); |
|
6451
2ff17ce330d8
[gaim-migrate @ 6960]
Christian Hammond <chipx86@chipx86.com>
parents:
6418
diff
changeset
|
240 | |
|
10200
33c21db946e7
[gaim-migrate @ 11317]
Mark Doliner <markdoliner@pidgin.im>
parents:
10162
diff
changeset
|
241 | /** |
|
20978
f6aededb6700
Add some (but not much!) documentation to PurplePluginProtocolInfo.
Will Thompson <resiak@pidgin.im>
parents:
20147
diff
changeset
|
242 | * 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
|
243 | * 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
|
244 | * online states. |
|
10200
33c21db946e7
[gaim-migrate @ 11317]
Mark Doliner <markdoliner@pidgin.im>
parents:
10162
diff
changeset
|
245 | */ |
| 15884 | 246 | GList *(*status_types)(PurpleAccount *account); |
|
5205
242b8aa81328
[gaim-migrate @ 5573]
Christian Hammond <chipx86@chipx86.com>
parents:
5148
diff
changeset
|
247 | |
|
20978
f6aededb6700
Add some (but not much!) documentation to PurplePluginProtocolInfo.
Will Thompson <resiak@pidgin.im>
parents:
20147
diff
changeset
|
248 | /** |
|
f6aededb6700
Add some (but not much!) documentation to PurplePluginProtocolInfo.
Will Thompson <resiak@pidgin.im>
parents:
20147
diff
changeset
|
249 | * Returns a list of #PurpleMenuAction structs, which represent extra |
|
f6aededb6700
Add some (but not much!) documentation to PurplePluginProtocolInfo.
Will Thompson <resiak@pidgin.im>
parents:
20147
diff
changeset
|
250 | * actions to be shown in (for example) the right-click menu for @a |
|
f6aededb6700
Add some (but not much!) documentation to PurplePluginProtocolInfo.
Will Thompson <resiak@pidgin.im>
parents:
20147
diff
changeset
|
251 | * node. |
|
f6aededb6700
Add some (but not much!) documentation to PurplePluginProtocolInfo.
Will Thompson <resiak@pidgin.im>
parents:
20147
diff
changeset
|
252 | */ |
| 15884 | 253 | GList *(*blist_node_menu)(PurpleBlistNode *node); |
| 254 | GList *(*chat_info)(PurpleConnection *); | |
| 255 | GHashTable *(*chat_info_defaults)(PurpleConnection *, const char *chat_name); | |
|
1333
bbd54f86976f
[gaim-migrate @ 1343]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1318
diff
changeset
|
256 | |
|
4557
40c90b1671cf
[gaim-migrate @ 4837]
Christian Hammond <chipx86@chipx86.com>
parents:
4514
diff
changeset
|
257 | /* All the server-related functions */ |
|
10160
90f207810143
[gaim-migrate @ 11243]
Mark Doliner <markdoliner@pidgin.im>
parents:
10104
diff
changeset
|
258 | |
|
90f207810143
[gaim-migrate @ 11243]
Mark Doliner <markdoliner@pidgin.im>
parents:
10104
diff
changeset
|
259 | /** This must be implemented. */ |
| 15884 | 260 | void (*login)(PurpleAccount *); |
|
10160
90f207810143
[gaim-migrate @ 11243]
Mark Doliner <markdoliner@pidgin.im>
parents:
10104
diff
changeset
|
261 | |
|
90f207810143
[gaim-migrate @ 11243]
Mark Doliner <markdoliner@pidgin.im>
parents:
10104
diff
changeset
|
262 | /** This must be implemented. */ |
| 15884 | 263 | void (*close)(PurpleConnection *); |
|
11693
1a42a66ca0f8
[gaim-migrate @ 13979]
Mark Doliner <markdoliner@pidgin.im>
parents:
11500
diff
changeset
|
264 | |
|
1a42a66ca0f8
[gaim-migrate @ 13979]
Mark Doliner <markdoliner@pidgin.im>
parents:
11500
diff
changeset
|
265 | /** |
|
1a42a66ca0f8
[gaim-migrate @ 13979]
Mark Doliner <markdoliner@pidgin.im>
parents:
11500
diff
changeset
|
266 | * This PRPL function should return a positive value on success. |
|
1a42a66ca0f8
[gaim-migrate @ 13979]
Mark Doliner <markdoliner@pidgin.im>
parents:
11500
diff
changeset
|
267 | * 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
|
268 | * the account is not connected, return -ENOTCONN. If the |
|
1a42a66ca0f8
[gaim-migrate @ 13979]
Mark Doliner <markdoliner@pidgin.im>
parents:
11500
diff
changeset
|
269 | * PRPL is unable to send the message for another reason, return |
|
1a42a66ca0f8
[gaim-migrate @ 13979]
Mark Doliner <markdoliner@pidgin.im>
parents:
11500
diff
changeset
|
270 | * some other negative value. You can use one of the valid |
|
1a42a66ca0f8
[gaim-migrate @ 13979]
Mark Doliner <markdoliner@pidgin.im>
parents:
11500
diff
changeset
|
271 | * errno values, or just big something. If the message should |
|
1a42a66ca0f8
[gaim-migrate @ 13979]
Mark Doliner <markdoliner@pidgin.im>
parents:
11500
diff
changeset
|
272 | * not be echoed to the conversation window, return 0. |
|
1a42a66ca0f8
[gaim-migrate @ 13979]
Mark Doliner <markdoliner@pidgin.im>
parents:
11500
diff
changeset
|
273 | */ |
| 15884 | 274 | int (*send_im)(PurpleConnection *, const char *who, |
|
6982
12f08de92674
[gaim-migrate @ 7538]
Mark Doliner <markdoliner@pidgin.im>
parents:
6885
diff
changeset
|
275 | const char *message, |
| 15884 | 276 | PurpleMessageFlags flags); |
|
11693
1a42a66ca0f8
[gaim-migrate @ 13979]
Mark Doliner <markdoliner@pidgin.im>
parents:
11500
diff
changeset
|
277 | |
| 15884 | 278 | void (*set_info)(PurpleConnection *, const char *info); |
|
24853
12c7cef2f980
Add a comment for the meaning of the return value of this function,
Mark Doliner <markdoliner@pidgin.im>
parents:
23875
diff
changeset
|
279 | |
|
12c7cef2f980
Add a comment for the meaning of the return value of this function,
Mark Doliner <markdoliner@pidgin.im>
parents:
23875
diff
changeset
|
280 | /** |
|
12c7cef2f980
Add a comment for the meaning of the return value of this function,
Mark Doliner <markdoliner@pidgin.im>
parents:
23875
diff
changeset
|
281 | * @return If this protocol requires the PURPLE_TYPING message to |
|
24854
876efbc05a4a
Fix a typo in Mark's new comment.
Richard Laager <rlaager@pidgin.im>
parents:
24853
diff
changeset
|
282 | * be sent repeatedly to signify that the user is still |
|
24853
12c7cef2f980
Add a comment for the meaning of the return value of this function,
Mark Doliner <markdoliner@pidgin.im>
parents:
23875
diff
changeset
|
283 | * typing, then the PRPL should return the number of |
|
12c7cef2f980
Add a comment for the meaning of the return value of this function,
Mark Doliner <markdoliner@pidgin.im>
parents:
23875
diff
changeset
|
284 | * seconds to wait before sending a subsequent notification. |
|
12c7cef2f980
Add a comment for the meaning of the return value of this function,
Mark Doliner <markdoliner@pidgin.im>
parents:
23875
diff
changeset
|
285 | * Otherwise the PRPL should return 0. |
|
12c7cef2f980
Add a comment for the meaning of the return value of this function,
Mark Doliner <markdoliner@pidgin.im>
parents:
23875
diff
changeset
|
286 | */ |
| 15884 | 287 | unsigned int (*send_typing)(PurpleConnection *, const char *name, PurpleTypingState 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
|
288 | |
|
20978
f6aededb6700
Add some (but not much!) documentation to PurplePluginProtocolInfo.
Will Thompson <resiak@pidgin.im>
parents:
20147
diff
changeset
|
289 | /** |
|
f6aededb6700
Add some (but not much!) documentation to PurplePluginProtocolInfo.
Will Thompson <resiak@pidgin.im>
parents:
20147
diff
changeset
|
290 | * Should arrange for purple_notify_userinfo() to be called with |
|
f6aededb6700
Add some (but not much!) documentation to PurplePluginProtocolInfo.
Will Thompson <resiak@pidgin.im>
parents:
20147
diff
changeset
|
291 | * @a who's user info. |
|
f6aededb6700
Add some (but not much!) documentation to PurplePluginProtocolInfo.
Will Thompson <resiak@pidgin.im>
parents:
20147
diff
changeset
|
292 | */ |
| 15884 | 293 | void (*get_info)(PurpleConnection *, const char *who); |
| 294 | void (*set_status)(PurpleAccount *account, PurpleStatus *status); | |
|
9949
377cd65fab3d
[gaim-migrate @ 10845]
Daniel Atallah <datallah@pidgin.im>
parents:
9944
diff
changeset
|
295 | |
| 15884 | 296 | void (*set_idle)(PurpleConnection *, int idletime); |
| 297 | void (*change_passwd)(PurpleConnection *, const char *old_pass, | |
|
5946
ebabcd2b4637
[gaim-migrate @ 6387]
Christian Hammond <chipx86@chipx86.com>
parents:
5944
diff
changeset
|
298 | const char *new_pass); |
|
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
|
299 | /** |
|
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
|
300 | * Add a buddy to a group on the server. |
|
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
|
301 | * |
|
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
|
302 | * This PRPL function may be called in situations in which the buddy is |
|
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
|
303 | * already in the specified group. If the protocol supports |
|
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
|
304 | * authorization and the user is not already authorized to see the |
|
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
|
305 | * status of \a buddy, \a add_buddy should request authorization. |
|
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
|
306 | */ |
| 15884 | 307 | void (*add_buddy)(PurpleConnection *, PurpleBuddy *buddy, PurpleGroup *group); |
| 308 | void (*add_buddies)(PurpleConnection *, GList *buddies, GList *groups); | |
| 309 | void (*remove_buddy)(PurpleConnection *, PurpleBuddy *buddy, PurpleGroup *group); | |
| 310 | void (*remove_buddies)(PurpleConnection *, GList *buddies, GList *groups); | |
| 311 | void (*add_permit)(PurpleConnection *, const char *name); | |
| 312 | void (*add_deny)(PurpleConnection *, const char *name); | |
| 313 | void (*rem_permit)(PurpleConnection *, const char *name); | |
| 314 | void (*rem_deny)(PurpleConnection *, const char *name); | |
| 315 | void (*set_permit_deny)(PurpleConnection *); | |
| 316 | void (*join_chat)(PurpleConnection *, GHashTable *components); | |
| 317 | void (*reject_chat)(PurpleConnection *, GHashTable *components); | |
|
9917
2fbb3c9fab2b
[gaim-migrate @ 10809]
Daniel Atallah <datallah@pidgin.im>
parents:
9770
diff
changeset
|
318 | char *(*get_chat_name)(GHashTable *components); |
| 15884 | 319 | void (*chat_invite)(PurpleConnection *, int id, |
|
15036
2580e926104d
[gaim-migrate @ 17753]
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
15002
diff
changeset
|
320 | const char *message, const char *who); |
| 15884 | 321 | void (*chat_leave)(PurpleConnection *, int id); |
| 322 | void (*chat_whisper)(PurpleConnection *, int id, | |
|
6059
9934c862ca14
[gaim-migrate @ 6509]
John Silvestri <john.silvestri@gmail.com>
parents:
5954
diff
changeset
|
323 | const char *who, const char *message); |
| 15884 | 324 | 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
|
325 | |
|
59b1c56633d1
De-magic number the prpl_info->keepalive interval, and document it.
Will Thompson <resiak@pidgin.im>
parents:
21552
diff
changeset
|
326 | /** If implemented, this will be called regularly for this prpl's |
|
59b1c56633d1
De-magic number the prpl_info->keepalive interval, and document it.
Will Thompson <resiak@pidgin.im>
parents:
21552
diff
changeset
|
327 | * active connections. You'd want to do this if you need to repeatedly |
|
59b1c56633d1
De-magic number the prpl_info->keepalive interval, and document it.
Will Thompson <resiak@pidgin.im>
parents:
21552
diff
changeset
|
328 | * send some kind of keepalive packet to the server to avoid being |
|
59b1c56633d1
De-magic number the prpl_info->keepalive interval, and document it.
Will Thompson <resiak@pidgin.im>
parents:
21552
diff
changeset
|
329 | * disconnected. ("Regularly" is defined by |
|
59b1c56633d1
De-magic number the prpl_info->keepalive interval, and document it.
Will Thompson <resiak@pidgin.im>
parents:
21552
diff
changeset
|
330 | * <code>KEEPALIVE_INTERVAL</code> in <tt>libpurple/connection.c</tt>.) |
|
59b1c56633d1
De-magic number the prpl_info->keepalive interval, and document it.
Will Thompson <resiak@pidgin.im>
parents:
21552
diff
changeset
|
331 | */ |
| 15884 | 332 | void (*keepalive)(PurpleConnection *); |
|
1713
3e0138242a5b
[gaim-migrate @ 1723]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1626
diff
changeset
|
333 | |
|
19401
012a56cd0484
Add marginally better doxygen magic to PurplePluginProtocolInfo
Will Thompson <resiak@pidgin.im>
parents:
18243
diff
changeset
|
334 | /** new user registration */ |
| 15884 | 335 | void (*register_user)(PurpleAccount *); |
| 2956 | 336 | |
|
21003
8f3cc6e40d2e
Try my hardest to get rid of some Doxygen warnings. One is left and I don't know why.
Richard Laager <rlaager@pidgin.im>
parents:
20978
diff
changeset
|
337 | /** |
|
8f3cc6e40d2e
Try my hardest to get rid of some Doxygen warnings. One is left and I don't know why.
Richard Laager <rlaager@pidgin.im>
parents:
20978
diff
changeset
|
338 | * @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
|
339 | */ |
| 15884 | 340 | void (*get_cb_info)(PurpleConnection *, int, const char *who); |
|
21003
8f3cc6e40d2e
Try my hardest to get rid of some Doxygen warnings. One is left and I don't know why.
Richard Laager <rlaager@pidgin.im>
parents:
20978
diff
changeset
|
341 | /** |
|
8f3cc6e40d2e
Try my hardest to get rid of some Doxygen warnings. One is left and I don't know why.
Richard Laager <rlaager@pidgin.im>
parents:
20978
diff
changeset
|
342 | * @deprecated Use #PurplePluginProtocolInfo.get_cb_real_name and |
|
8f3cc6e40d2e
Try my hardest to get rid of some Doxygen warnings. One is left and I don't know why.
Richard Laager <rlaager@pidgin.im>
parents:
20978
diff
changeset
|
343 | * #PurplePluginProtocolInfo.status_text instead. |
|
20978
f6aededb6700
Add some (but not much!) documentation to PurplePluginProtocolInfo.
Will Thompson <resiak@pidgin.im>
parents:
20147
diff
changeset
|
344 | */ |
| 15884 | 345 | void (*get_cb_away)(PurpleConnection *, int, const char *who); |
|
2827
e3d10df95e74
[gaim-migrate @ 2840]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2773
diff
changeset
|
346 | |
|
19401
012a56cd0484
Add marginally better doxygen magic to PurplePluginProtocolInfo
Will Thompson <resiak@pidgin.im>
parents:
18243
diff
changeset
|
347 | /** save/store buddy's alias on server list/roster */ |
| 15884 | 348 | void (*alias_buddy)(PurpleConnection *, const char *who, |
|
5205
242b8aa81328
[gaim-migrate @ 5573]
Christian Hammond <chipx86@chipx86.com>
parents:
5148
diff
changeset
|
349 | const char *alias); |
| 3136 | 350 | |
|
19401
012a56cd0484
Add marginally better doxygen magic to PurplePluginProtocolInfo
Will Thompson <resiak@pidgin.im>
parents:
18243
diff
changeset
|
351 | /** change a buddy's group on a server list/roster */ |
| 15884 | 352 | void (*group_buddy)(PurpleConnection *, const char *who, |
|
5205
242b8aa81328
[gaim-migrate @ 5573]
Christian Hammond <chipx86@chipx86.com>
parents:
5148
diff
changeset
|
353 | const char *old_group, const char *new_group); |
| 3136 | 354 | |
|
19401
012a56cd0484
Add marginally better doxygen magic to PurplePluginProtocolInfo
Will Thompson <resiak@pidgin.im>
parents:
18243
diff
changeset
|
355 | /** rename a group on a server list/roster */ |
| 15884 | 356 | void (*rename_group)(PurpleConnection *, const char *old_name, |
| 357 | PurpleGroup *group, GList *moved_buddies); | |
|
3348
57ed471963ba
[gaim-migrate @ 3367]
Mark Doliner <markdoliner@pidgin.im>
parents:
3313
diff
changeset
|
358 | |
| 15884 | 359 | void (*buddy_free)(PurpleBuddy *); |
|
2607
7bcd3ea48df3
[gaim-migrate @ 2620]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2582
diff
changeset
|
360 | |
| 15884 | 361 | void (*convo_closed)(PurpleConnection *, const char *who); |
|
5205
242b8aa81328
[gaim-migrate @ 5573]
Christian Hammond <chipx86@chipx86.com>
parents:
5148
diff
changeset
|
362 | |
|
19401
012a56cd0484
Add marginally better doxygen magic to PurplePluginProtocolInfo
Will Thompson <resiak@pidgin.im>
parents:
18243
diff
changeset
|
363 | /** |
|
012a56cd0484
Add marginally better doxygen magic to PurplePluginProtocolInfo
Will Thompson <resiak@pidgin.im>
parents:
18243
diff
changeset
|
364 | * Convert the username @a who to its canonical form. (For example, |
|
012a56cd0484
Add marginally better doxygen magic to PurplePluginProtocolInfo
Will Thompson <resiak@pidgin.im>
parents:
18243
diff
changeset
|
365 | * AIM treats "fOo BaR" and "foobar" as the same user; this function |
|
012a56cd0484
Add marginally better doxygen magic to PurplePluginProtocolInfo
Will Thompson <resiak@pidgin.im>
parents:
18243
diff
changeset
|
366 | * should return the same normalized string for both of those.) |
|
012a56cd0484
Add marginally better doxygen magic to PurplePluginProtocolInfo
Will Thompson <resiak@pidgin.im>
parents:
18243
diff
changeset
|
367 | */ |
|
012a56cd0484
Add marginally better doxygen magic to PurplePluginProtocolInfo
Will Thompson <resiak@pidgin.im>
parents:
18243
diff
changeset
|
368 | const char *(*normalize)(const PurpleAccount *, const char *who); |
|
6451
2ff17ce330d8
[gaim-migrate @ 6960]
Christian Hammond <chipx86@chipx86.com>
parents:
6418
diff
changeset
|
369 | |
|
19401
012a56cd0484
Add marginally better doxygen magic to PurplePluginProtocolInfo
Will Thompson <resiak@pidgin.im>
parents:
18243
diff
changeset
|
370 | /** |
|
012a56cd0484
Add marginally better doxygen magic to PurplePluginProtocolInfo
Will Thompson <resiak@pidgin.im>
parents:
18243
diff
changeset
|
371 | * Set the buddy icon for the given connection to @a img. The prpl |
|
012a56cd0484
Add marginally better doxygen magic to PurplePluginProtocolInfo
Will Thompson <resiak@pidgin.im>
parents:
18243
diff
changeset
|
372 | * does NOT own a reference to @a img; if it needs one, it must |
|
012a56cd0484
Add marginally better doxygen magic to PurplePluginProtocolInfo
Will Thompson <resiak@pidgin.im>
parents:
18243
diff
changeset
|
373 | * #purple_imgstore_ref(@a img) itself. |
|
012a56cd0484
Add marginally better doxygen magic to PurplePluginProtocolInfo
Will Thompson <resiak@pidgin.im>
parents:
18243
diff
changeset
|
374 | */ |
|
16538
c7e61e2917c9
Updates for the account buddy icon stuff. This doesn't yet work fully (and maybe not even partly), but it compiles.
Richard Laager <rlaager@pidgin.im>
parents:
15884
diff
changeset
|
375 | void (*set_buddy_icon)(PurpleConnection *, PurpleStoredImage *img); |
|
6885
65132ebfc662
[gaim-migrate @ 7431]
Christian Hammond <chipx86@chipx86.com>
parents:
6846
diff
changeset
|
376 | |
| 15884 | 377 | void (*remove_group)(PurpleConnection *gc, PurpleGroup *group); |
| 7398 | 378 | |
|
21110
7628fe7a7c6e
Document PurplePluginProtocolInfo.get_cb_real_name
Will Thompson <resiak@pidgin.im>
parents:
21099
diff
changeset
|
379 | /** Gets the real name of a participant in a chat. For example, on |
|
7628fe7a7c6e
Document PurplePluginProtocolInfo.get_cb_real_name
Will Thompson <resiak@pidgin.im>
parents:
21099
diff
changeset
|
380 | * XMPP this turns a chat room nick <tt>foo</tt> into |
|
21552
6920e51d8f27
Get rid of a few silly doxygen warnings
Mark Doliner <markdoliner@pidgin.im>
parents:
21110
diff
changeset
|
381 | * <tt>room\@server/foo</tt> |
|
21110
7628fe7a7c6e
Document PurplePluginProtocolInfo.get_cb_real_name
Will Thompson <resiak@pidgin.im>
parents:
21099
diff
changeset
|
382 | * @param gc the connection on which the room is. |
|
7628fe7a7c6e
Document PurplePluginProtocolInfo.get_cb_real_name
Will Thompson <resiak@pidgin.im>
parents:
21099
diff
changeset
|
383 | * @param id the ID of the chat room. |
|
7628fe7a7c6e
Document PurplePluginProtocolInfo.get_cb_real_name
Will Thompson <resiak@pidgin.im>
parents:
21099
diff
changeset
|
384 | * @param who the nickname of the chat participant. |
|
7628fe7a7c6e
Document PurplePluginProtocolInfo.get_cb_real_name
Will Thompson <resiak@pidgin.im>
parents:
21099
diff
changeset
|
385 | * @return the real name of the participant. This string must be |
|
7628fe7a7c6e
Document PurplePluginProtocolInfo.get_cb_real_name
Will Thompson <resiak@pidgin.im>
parents:
21099
diff
changeset
|
386 | * freed by the caller. |
|
7628fe7a7c6e
Document PurplePluginProtocolInfo.get_cb_real_name
Will Thompson <resiak@pidgin.im>
parents:
21099
diff
changeset
|
387 | */ |
| 15884 | 388 | char *(*get_cb_real_name)(PurpleConnection *gc, int id, const char *who); |
| 7971 | 389 | |
| 15884 | 390 | void (*set_chat_topic)(PurpleConnection *gc, int id, const char *topic); |
| 7999 | 391 | |
| 15884 | 392 | PurpleChat *(*find_blist_chat)(PurpleAccount *account, const char *name); |
| 8113 | 393 | |
| 394 | /* room listing prpl callbacks */ | |
| 15884 | 395 | PurpleRoomlist *(*roomlist_get_list)(PurpleConnection *gc); |
| 396 | void (*roomlist_cancel)(PurpleRoomlist *list); | |
| 397 | void (*roomlist_expand_category)(PurpleRoomlist *list, PurpleRoomlistRoom *category); | |
|
9466
b6425eab60ca
[gaim-migrate @ 10291]
Daniel Atallah <datallah@pidgin.im>
parents:
9460
diff
changeset
|
398 | |
|
b6425eab60ca
[gaim-migrate @ 10291]
Daniel Atallah <datallah@pidgin.im>
parents:
9460
diff
changeset
|
399 | /* file transfer callbacks */ |
| 15884 | 400 | gboolean (*can_receive_file)(PurpleConnection *, const char *who); |
| 401 | void (*send_file)(PurpleConnection *, const char *who, const char *filename); | |
| 402 | 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
|
403 | |
|
584da62ea174
Documentation tweaks for the write_conv uiop and for prpl_info.offline_message.
Will Thompson <resiak@pidgin.im>
parents:
21003
diff
changeset
|
404 | /** Checks whether offline messages to @a buddy are supported. |
|
584da62ea174
Documentation tweaks for the write_conv uiop and for prpl_info.offline_message.
Will Thompson <resiak@pidgin.im>
parents:
21003
diff
changeset
|
405 | * @return @c TRUE if @a buddy can be sent messages while they are |
|
584da62ea174
Documentation tweaks for the write_conv uiop and for prpl_info.offline_message.
Will Thompson <resiak@pidgin.im>
parents:
21003
diff
changeset
|
406 | * offline, or @c FALSE if not. |
|
584da62ea174
Documentation tweaks for the write_conv uiop and for prpl_info.offline_message.
Will Thompson <resiak@pidgin.im>
parents:
21003
diff
changeset
|
407 | */ |
| 15884 | 408 | gboolean (*offline_message)(const PurpleBuddy *buddy); |
|
12143
09f216663302
[gaim-migrate @ 14444]
Evan Schoenberg <evands@pidgin.im>
parents:
12024
diff
changeset
|
409 | |
| 15884 | 410 | PurpleWhiteboardPrplOps *whiteboard_prpl_ops; |
| 14604 | 411 | |
|
19401
012a56cd0484
Add marginally better doxygen magic to PurplePluginProtocolInfo
Will Thompson <resiak@pidgin.im>
parents:
18243
diff
changeset
|
412 | /** For use in plugins that may understand the underlying protocol */ |
| 15884 | 413 | int (*send_raw)(PurpleConnection *gc, const char *buf, int len); |
| 15185 | 414 | |
| 415 | /* room list serialize */ | |
| 15884 | 416 | 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
|
417 | |
|
20978
f6aededb6700
Add some (but not much!) documentation to PurplePluginProtocolInfo.
Will Thompson <resiak@pidgin.im>
parents:
20147
diff
changeset
|
418 | /** Remove the user from the server. The account can either be |
|
f6aededb6700
Add some (but not much!) documentation to PurplePluginProtocolInfo.
Will Thompson <resiak@pidgin.im>
parents:
20147
diff
changeset
|
419 | * 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
|
420 | * 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
|
421 | */ |
|
f6aededb6700
Add some (but not much!) documentation to PurplePluginProtocolInfo.
Will Thompson <resiak@pidgin.im>
parents:
20147
diff
changeset
|
422 | /* 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
|
423 | * 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
|
424 | */ |
|
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
|
425 | void (*unregister_user)(PurpleAccount *, PurpleAccountUnregistrationCb cb, void *user_data); |
|
25888
d0fdd378a635
Remove trailing whitespace
Mark Doliner <markdoliner@pidgin.im>
parents:
25231
diff
changeset
|
426 | |
|
19604
ae3d7cc7063d
Attention API for nudges/buzzes/zaps of various protocols.
Jeff Connelly <jeff2@soc.pidgin.im>
parents:
19401
diff
changeset
|
427 | /* 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
|
428 | 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
|
429 | 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
|
430 | |
|
23276
f4944cfaa1ff
Use up the last padding for PurplePluginProtocolInfo in a way that allows
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
23272
diff
changeset
|
431 | /** |
|
f4944cfaa1ff
Use up the last padding for PurplePluginProtocolInfo in a way that allows
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
23272
diff
changeset
|
432 | * 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
|
433 | * 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
|
434 | */ |
|
f4944cfaa1ff
Use up the last padding for PurplePluginProtocolInfo in a way that allows
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
23272
diff
changeset
|
435 | 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
|
436 | |
|
f4944cfaa1ff
Use up the last padding for PurplePluginProtocolInfo in a way that allows
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
23272
diff
changeset
|
437 | /* NOTE: |
|
f4944cfaa1ff
Use up the last padding for PurplePluginProtocolInfo in a way that allows
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
23272
diff
changeset
|
438 | * 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
|
439 | * |
|
f4944cfaa1ff
Use up the last padding for PurplePluginProtocolInfo in a way that allows
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
23272
diff
changeset
|
440 | * 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
|
441 | * 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
|
442 | * |
|
f4944cfaa1ff
Use up the last padding for PurplePluginProtocolInfo in a way that allows
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
23272
diff
changeset
|
443 | * 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
|
444 | * |
|
f4944cfaa1ff
Use up the last padding for PurplePluginProtocolInfo in a way that allows
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
23272
diff
changeset
|
445 | * 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
|
446 | * 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
|
447 | * |
|
f4944cfaa1ff
Use up the last padding for PurplePluginProtocolInfo in a way that allows
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
23272
diff
changeset
|
448 | * 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
|
449 | * 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
|
450 | */ |
|
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
|
451 | |
|
ea315a8d5bad
Patch from Jaywalker to let prpls add some helpful text for some account
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
23276
diff
changeset
|
452 | /** This allows protocols to specify additional strings to be used for |
|
ea315a8d5bad
Patch from Jaywalker to let prpls add some helpful text for some account
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
23276
diff
changeset
|
453 | * 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
|
454 | * 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
|
455 | * 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
|
456 | * |
|
ea315a8d5bad
Patch from Jaywalker to let prpls add some helpful text for some account
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
23276
diff
changeset
|
457 | * @param account The account to specify. This can be NULL. |
|
ea315a8d5bad
Patch from Jaywalker to let prpls add some helpful text for some account
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
23276
diff
changeset
|
458 | * @return The protocol's string hash table. The hash table should be |
|
ea315a8d5bad
Patch from Jaywalker to let prpls add some helpful text for some account
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
23276
diff
changeset
|
459 | * destroyed by the caller when it's no longer needed. |
|
ea315a8d5bad
Patch from Jaywalker to let prpls add some helpful text for some account
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
23276
diff
changeset
|
460 | */ |
|
ea315a8d5bad
Patch from Jaywalker to let prpls add some helpful text for some account
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
23276
diff
changeset
|
461 | GHashTable *(*get_account_text_table)(PurpleAccount *account); |
|
5205
242b8aa81328
[gaim-migrate @ 5573]
Christian Hammond <chipx86@chipx86.com>
parents:
5148
diff
changeset
|
462 | }; |
|
2246
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2232
diff
changeset
|
463 | |
|
23276
f4944cfaa1ff
Use up the last padding for PurplePluginProtocolInfo in a way that allows
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
23272
diff
changeset
|
464 | #define PURPLE_PROTOCOL_PLUGIN_HAS_FUNC(prpl, member) \ |
|
f4944cfaa1ff
Use up the last padding for PurplePluginProtocolInfo in a way that allows
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
23272
diff
changeset
|
465 | (((G_STRUCT_OFFSET(PurplePluginProtocolInfo, member) < G_STRUCT_OFFSET(PurplePluginProtocolInfo, 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
|
466 | || (G_STRUCT_OFFSET(PurplePluginProtocolInfo, member) < prpl->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
|
467 | prpl->member != NULL) |
|
f4944cfaa1ff
Use up the last padding for PurplePluginProtocolInfo in a way that allows
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
23272
diff
changeset
|
468 | |
|
f4944cfaa1ff
Use up the last padding for PurplePluginProtocolInfo in a way that allows
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
23272
diff
changeset
|
469 | |
| 15884 | 470 | #define PURPLE_IS_PROTOCOL_PLUGIN(plugin) \ |
| 471 | ((plugin)->info->type == PURPLE_PLUGIN_PROTOCOL) | |
|
5205
242b8aa81328
[gaim-migrate @ 5573]
Christian Hammond <chipx86@chipx86.com>
parents:
5148
diff
changeset
|
472 | |
| 15884 | 473 | #define PURPLE_PLUGIN_PROTOCOL_INFO(plugin) \ |
| 474 | ((PurplePluginProtocolInfo *)(plugin)->info->extra_info) | |
| 981 | 475 | |
|
5944
f19df037ac58
[gaim-migrate @ 6385]
Christian Hammond <chipx86@chipx86.com>
parents:
5943
diff
changeset
|
476 | #ifdef __cplusplus |
|
f19df037ac58
[gaim-migrate @ 6385]
Christian Hammond <chipx86@chipx86.com>
parents:
5943
diff
changeset
|
477 | extern "C" { |
|
f19df037ac58
[gaim-migrate @ 6385]
Christian Hammond <chipx86@chipx86.com>
parents:
5943
diff
changeset
|
478 | #endif |
|
f19df037ac58
[gaim-migrate @ 6385]
Christian Hammond <chipx86@chipx86.com>
parents:
5943
diff
changeset
|
479 | |
|
9944
71ef020ec4b0
[gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents:
9943
diff
changeset
|
480 | /**************************************************************************/ |
|
22225
6cd802a8c5ad
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21865
diff
changeset
|
481 | /** @name Attention Type API */ |
|
6cd802a8c5ad
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21865
diff
changeset
|
482 | /**************************************************************************/ |
|
6cd802a8c5ad
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21865
diff
changeset
|
483 | /*@{*/ |
|
6cd802a8c5ad
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21865
diff
changeset
|
484 | |
|
6cd802a8c5ad
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21865
diff
changeset
|
485 | /** |
|
6cd802a8c5ad
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21865
diff
changeset
|
486 | * 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
|
487 | * |
|
6cd802a8c5ad
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21865
diff
changeset
|
488 | * @param ulname A non-localized string that can be used by UIs in need of such |
|
6cd802a8c5ad
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21865
diff
changeset
|
489 | * non-localized strings. This should be the same as @a name, |
|
6cd802a8c5ad
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21865
diff
changeset
|
490 | * without localization. |
|
6cd802a8c5ad
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21865
diff
changeset
|
491 | * @param name A localized string that the UI may display for the event. This |
|
6cd802a8c5ad
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21865
diff
changeset
|
492 | * should be the same string as @a ulname, with localization. |
|
6cd802a8c5ad
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21865
diff
changeset
|
493 | * @param inc_desc A localized 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
|
494 | * @param out_desc A localized 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
|
495 | * @return A pointer to the new object. |
|
6cd802a8c5ad
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21865
diff
changeset
|
496 | * @since 2.4.0 |
|
6cd802a8c5ad
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21865
diff
changeset
|
497 | */ |
|
6cd802a8c5ad
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21865
diff
changeset
|
498 | 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
|
499 | 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
|
500 | |
|
6cd802a8c5ad
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21865
diff
changeset
|
501 | /** |
|
6cd802a8c5ad
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21865
diff
changeset
|
502 | * Sets the displayed name of the attention-demanding event. |
|
6cd802a8c5ad
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21865
diff
changeset
|
503 | * |
|
6cd802a8c5ad
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21865
diff
changeset
|
504 | * @param type The attention type. |
|
6cd802a8c5ad
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21865
diff
changeset
|
505 | * @param name The localized name that will be displayed by UIs. This should be |
|
6cd802a8c5ad
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21865
diff
changeset
|
506 | * 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
|
507 | * localization. |
|
6cd802a8c5ad
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21865
diff
changeset
|
508 | * @since 2.4.0 |
|
6cd802a8c5ad
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21865
diff
changeset
|
509 | */ |
|
6cd802a8c5ad
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21865
diff
changeset
|
510 | 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
|
511 | |
|
6cd802a8c5ad
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21865
diff
changeset
|
512 | /** |
|
6cd802a8c5ad
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21865
diff
changeset
|
513 | * 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
|
514 | * 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
|
515 | * |
|
6cd802a8c5ad
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21865
diff
changeset
|
516 | * @param type The attention type. |
|
6cd802a8c5ad
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21865
diff
changeset
|
517 | * @param desc The localized description for incoming events. |
|
6cd802a8c5ad
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21865
diff
changeset
|
518 | * @since 2.4.0 |
|
6cd802a8c5ad
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21865
diff
changeset
|
519 | */ |
|
6cd802a8c5ad
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21865
diff
changeset
|
520 | 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
|
521 | |
|
6cd802a8c5ad
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21865
diff
changeset
|
522 | /** |
|
6cd802a8c5ad
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21865
diff
changeset
|
523 | * 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
|
524 | * 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
|
525 | * |
|
6cd802a8c5ad
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21865
diff
changeset
|
526 | * @param type The attention type. |
|
6cd802a8c5ad
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21865
diff
changeset
|
527 | * @param desc The localized description for outgoing events. |
|
6cd802a8c5ad
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21865
diff
changeset
|
528 | * @since 2.4.0 |
|
6cd802a8c5ad
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21865
diff
changeset
|
529 | */ |
|
6cd802a8c5ad
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21865
diff
changeset
|
530 | 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
|
531 | |
|
6cd802a8c5ad
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21865
diff
changeset
|
532 | /** |
|
6cd802a8c5ad
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21865
diff
changeset
|
533 | * 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
|
534 | * |
|
6cd802a8c5ad
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21865
diff
changeset
|
535 | * @param type The attention type. |
|
6cd802a8c5ad
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21865
diff
changeset
|
536 | * @param name The icon's name. |
|
6cd802a8c5ad
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21865
diff
changeset
|
537 | * @note Icons are optional for attention events. |
|
6cd802a8c5ad
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21865
diff
changeset
|
538 | * @since 2.4.0 |
|
6cd802a8c5ad
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21865
diff
changeset
|
539 | */ |
|
6cd802a8c5ad
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21865
diff
changeset
|
540 | 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
|
541 | |
|
6cd802a8c5ad
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21865
diff
changeset
|
542 | /** |
|
6cd802a8c5ad
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21865
diff
changeset
|
543 | * 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
|
544 | * thus it is required. |
|
6cd802a8c5ad
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21865
diff
changeset
|
545 | * |
|
6cd802a8c5ad
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21865
diff
changeset
|
546 | * @param type The attention type. |
|
6cd802a8c5ad
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21865
diff
changeset
|
547 | * @param ulname The unlocalized name. This should be the same string given as |
|
6cd802a8c5ad
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21865
diff
changeset
|
548 | * the localized name, but without localization. |
|
6cd802a8c5ad
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21865
diff
changeset
|
549 | * @since 2.4.0 |
|
6cd802a8c5ad
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21865
diff
changeset
|
550 | */ |
|
6cd802a8c5ad
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21865
diff
changeset
|
551 | 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
|
552 | |
|
6cd802a8c5ad
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21865
diff
changeset
|
553 | /** |
|
6cd802a8c5ad
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21865
diff
changeset
|
554 | * 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
|
555 | * |
|
6cd802a8c5ad
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21865
diff
changeset
|
556 | * @param type The attention type. |
|
6cd802a8c5ad
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21865
diff
changeset
|
557 | * @return The name. |
|
6cd802a8c5ad
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21865
diff
changeset
|
558 | * @since 2.4.0 |
|
6cd802a8c5ad
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21865
diff
changeset
|
559 | */ |
|
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
|
560 | 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
|
561 | |
|
6cd802a8c5ad
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21865
diff
changeset
|
562 | /** |
|
6cd802a8c5ad
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21865
diff
changeset
|
563 | * 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
|
564 | * |
|
6cd802a8c5ad
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21865
diff
changeset
|
565 | * @param type The attention type. |
|
6cd802a8c5ad
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21865
diff
changeset
|
566 | * @return The description. |
|
6cd802a8c5ad
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21865
diff
changeset
|
567 | * @since 2.4.0 |
|
6cd802a8c5ad
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21865
diff
changeset
|
568 | */ |
|
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
|
569 | 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
|
570 | |
|
6cd802a8c5ad
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21865
diff
changeset
|
571 | /** |
|
6cd802a8c5ad
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21865
diff
changeset
|
572 | * 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
|
573 | * |
|
6cd802a8c5ad
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21865
diff
changeset
|
574 | * @param type The attention type. |
|
6cd802a8c5ad
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21865
diff
changeset
|
575 | * @return The description. |
|
6cd802a8c5ad
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21865
diff
changeset
|
576 | * @since 2.4.0 |
|
6cd802a8c5ad
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21865
diff
changeset
|
577 | */ |
|
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
|
578 | 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
|
579 | |
|
6cd802a8c5ad
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21865
diff
changeset
|
580 | /** |
|
6cd802a8c5ad
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21865
diff
changeset
|
581 | * 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
|
582 | * |
|
6cd802a8c5ad
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21865
diff
changeset
|
583 | * @param type The attention type. |
|
6cd802a8c5ad
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21865
diff
changeset
|
584 | * @return The icon name or @c NULL if unset/empty. |
|
6cd802a8c5ad
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21865
diff
changeset
|
585 | * @note Icons are optional for attention events. |
|
6cd802a8c5ad
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21865
diff
changeset
|
586 | * @since 2.4.0 |
|
6cd802a8c5ad
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21865
diff
changeset
|
587 | */ |
|
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
|
588 | 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
|
589 | |
|
6cd802a8c5ad
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21865
diff
changeset
|
590 | /** |
|
6cd802a8c5ad
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21865
diff
changeset
|
591 | * 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
|
592 | * |
|
6cd802a8c5ad
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21865
diff
changeset
|
593 | * @param type The attention type |
|
6cd802a8c5ad
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21865
diff
changeset
|
594 | * @return The unlocalized name. |
|
6cd802a8c5ad
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21865
diff
changeset
|
595 | * @since 2.4.0 |
|
6cd802a8c5ad
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21865
diff
changeset
|
596 | */ |
|
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
|
597 | 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
|
598 | |
|
6cd802a8c5ad
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21865
diff
changeset
|
599 | /*@}*/ |
|
6cd802a8c5ad
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21865
diff
changeset
|
600 | |
|
6cd802a8c5ad
This adds accessor and mutator API for the PurpleAttentionType struct.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
21865
diff
changeset
|
601 | /**************************************************************************/ |
|
9944
71ef020ec4b0
[gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents:
9943
diff
changeset
|
602 | /** @name Protocol Plugin API */ |
|
71ef020ec4b0
[gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents:
9943
diff
changeset
|
603 | /**************************************************************************/ |
|
71ef020ec4b0
[gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents:
9943
diff
changeset
|
604 | /*@{*/ |
|
71ef020ec4b0
[gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents:
9943
diff
changeset
|
605 | |
|
71ef020ec4b0
[gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents:
9943
diff
changeset
|
606 | /** |
|
25889
26d9ca30335c
Change "screen name" to "username" or "buddy name" in a whole bunch of
Mark Doliner <markdoliner@pidgin.im>
parents:
25888
diff
changeset
|
607 | * 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
|
608 | * |
|
71ef020ec4b0
[gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents:
9943
diff
changeset
|
609 | * This is meant to be called from protocol plugins. |
|
71ef020ec4b0
[gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents:
9943
diff
changeset
|
610 | * |
|
71ef020ec4b0
[gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents:
9943
diff
changeset
|
611 | * @param account The account. |
|
71ef020ec4b0
[gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents:
9943
diff
changeset
|
612 | * @param idle The user's idle state. |
|
71ef020ec4b0
[gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents:
9943
diff
changeset
|
613 | * @param idle_time The user's idle time. |
|
71ef020ec4b0
[gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents:
9943
diff
changeset
|
614 | */ |
| 15884 | 615 | void purple_prpl_got_account_idle(PurpleAccount *account, gboolean idle, |
|
9944
71ef020ec4b0
[gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents:
9943
diff
changeset
|
616 | time_t idle_time); |
|
71ef020ec4b0
[gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents:
9943
diff
changeset
|
617 | |
|
71ef020ec4b0
[gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents:
9943
diff
changeset
|
618 | /** |
|
25889
26d9ca30335c
Change "screen name" to "username" or "buddy name" in a whole bunch of
Mark Doliner <markdoliner@pidgin.im>
parents:
25888
diff
changeset
|
619 | * Notifies Purple of our account's log-in time. |
|
9944
71ef020ec4b0
[gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents:
9943
diff
changeset
|
620 | * |
|
71ef020ec4b0
[gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents:
9943
diff
changeset
|
621 | * This is meant to be called from protocol plugins. |
|
71ef020ec4b0
[gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents:
9943
diff
changeset
|
622 | * |
|
71ef020ec4b0
[gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents:
9943
diff
changeset
|
623 | * @param account The account the user is on. |
|
71ef020ec4b0
[gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents:
9943
diff
changeset
|
624 | * @param login_time The user's log-in time. |
|
71ef020ec4b0
[gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents:
9943
diff
changeset
|
625 | */ |
| 15884 | 626 | 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
|
627 | |
|
71ef020ec4b0
[gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents:
9943
diff
changeset
|
628 | /** |
|
25889
26d9ca30335c
Change "screen name" to "username" or "buddy name" in a whole bunch of
Mark Doliner <markdoliner@pidgin.im>
parents:
25888
diff
changeset
|
629 | * Notifies Purple that our account's status has changed. |
|
9944
71ef020ec4b0
[gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents:
9943
diff
changeset
|
630 | * |
|
71ef020ec4b0
[gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents:
9943
diff
changeset
|
631 | * This is meant to be called from protocol plugins. |
|
71ef020ec4b0
[gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents:
9943
diff
changeset
|
632 | * |
|
71ef020ec4b0
[gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents:
9943
diff
changeset
|
633 | * @param account The account the user is on. |
|
71ef020ec4b0
[gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents:
9943
diff
changeset
|
634 | * @param status_id The status ID. |
|
71ef020ec4b0
[gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents:
9943
diff
changeset
|
635 | * @param ... A NULL-terminated list of attribute IDs and values, |
|
71ef020ec4b0
[gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents:
9943
diff
changeset
|
636 | * beginning with the value for @a attr_id. |
|
71ef020ec4b0
[gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents:
9943
diff
changeset
|
637 | */ |
| 15884 | 638 | 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
|
639 | 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
|
640 | |
|
9944
71ef020ec4b0
[gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents:
9943
diff
changeset
|
641 | /** |
|
25889
26d9ca30335c
Change "screen name" to "username" or "buddy name" in a whole bunch of
Mark Doliner <markdoliner@pidgin.im>
parents:
25888
diff
changeset
|
642 | * 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
|
643 | * |
|
71ef020ec4b0
[gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents:
9943
diff
changeset
|
644 | * This is meant to be called from protocol plugins. |
|
71ef020ec4b0
[gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents:
9943
diff
changeset
|
645 | * |
|
71ef020ec4b0
[gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents:
9943
diff
changeset
|
646 | * @param account The account the user is on. |
|
25889
26d9ca30335c
Change "screen name" to "username" or "buddy name" in a whole bunch of
Mark Doliner <markdoliner@pidgin.im>
parents:
25888
diff
changeset
|
647 | * @param name The name of the buddy. |
|
9944
71ef020ec4b0
[gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents:
9943
diff
changeset
|
648 | * @param idle The user's idle state. |
|
10860
8f600347b9e4
[gaim-migrate @ 12543]
Palmer Cox <enix@users.sourceforge.net>
parents:
10475
diff
changeset
|
649 | * @param idle_time The user's idle time. This is the time at |
|
8f600347b9e4
[gaim-migrate @ 12543]
Palmer Cox <enix@users.sourceforge.net>
parents:
10475
diff
changeset
|
650 | * 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
|
651 | * 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
|
652 | * then it should pass 0. |
|
9944
71ef020ec4b0
[gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents:
9943
diff
changeset
|
653 | */ |
| 15884 | 654 | 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
|
655 | gboolean idle, time_t idle_time); |
|
71ef020ec4b0
[gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents:
9943
diff
changeset
|
656 | |
|
71ef020ec4b0
[gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents:
9943
diff
changeset
|
657 | /** |
|
25889
26d9ca30335c
Change "screen name" to "username" or "buddy name" in a whole bunch of
Mark Doliner <markdoliner@pidgin.im>
parents:
25888
diff
changeset
|
658 | * Notifies Purple of a buddy's log-in time. |
|
9944
71ef020ec4b0
[gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents:
9943
diff
changeset
|
659 | * |
|
71ef020ec4b0
[gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents:
9943
diff
changeset
|
660 | * This is meant to be called from protocol plugins. |
|
71ef020ec4b0
[gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents:
9943
diff
changeset
|
661 | * |
|
71ef020ec4b0
[gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents:
9943
diff
changeset
|
662 | * @param account The account the user is on. |
|
25889
26d9ca30335c
Change "screen name" to "username" or "buddy name" in a whole bunch of
Mark Doliner <markdoliner@pidgin.im>
parents:
25888
diff
changeset
|
663 | * @param name The name of the buddy. |
|
9944
71ef020ec4b0
[gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents:
9943
diff
changeset
|
664 | * @param login_time The user's log-in time. |
|
71ef020ec4b0
[gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents:
9943
diff
changeset
|
665 | */ |
| 15884 | 666 | 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
|
667 | time_t login_time); |
|
71ef020ec4b0
[gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents:
9943
diff
changeset
|
668 | |
|
71ef020ec4b0
[gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents:
9943
diff
changeset
|
669 | /** |
|
25889
26d9ca30335c
Change "screen name" to "username" or "buddy name" in a whole bunch of
Mark Doliner <markdoliner@pidgin.im>
parents:
25888
diff
changeset
|
670 | * Notifies Purple that a buddy's status has been activated. |
|
9944
71ef020ec4b0
[gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents:
9943
diff
changeset
|
671 | * |
|
71ef020ec4b0
[gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents:
9943
diff
changeset
|
672 | * This is meant to be called from protocol plugins. |
|
71ef020ec4b0
[gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents:
9943
diff
changeset
|
673 | * |
|
71ef020ec4b0
[gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents:
9943
diff
changeset
|
674 | * @param account The account the user is on. |
|
25889
26d9ca30335c
Change "screen name" to "username" or "buddy name" in a whole bunch of
Mark Doliner <markdoliner@pidgin.im>
parents:
25888
diff
changeset
|
675 | * @param name The name of the buddy. |
|
9944
71ef020ec4b0
[gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents:
9943
diff
changeset
|
676 | * @param status_id The status ID. |
|
71ef020ec4b0
[gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents:
9943
diff
changeset
|
677 | * @param ... A NULL-terminated list of attribute IDs and values, |
|
71ef020ec4b0
[gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents:
9943
diff
changeset
|
678 | * beginning with the value for @a attr_id. |
|
71ef020ec4b0
[gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents:
9943
diff
changeset
|
679 | */ |
| 15884 | 680 | 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
|
681 | 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
|
682 | |
|
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
|
683 | /** |
|
25889
26d9ca30335c
Change "screen name" to "username" or "buddy name" in a whole bunch of
Mark Doliner <markdoliner@pidgin.im>
parents:
25888
diff
changeset
|
684 | * 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
|
685 | * |
|
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
|
686 | * 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
|
687 | * |
|
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
|
688 | * @param account The account the user is on. |
|
25889
26d9ca30335c
Change "screen name" to "username" or "buddy name" in a whole bunch of
Mark Doliner <markdoliner@pidgin.im>
parents:
25888
diff
changeset
|
689 | * @param name The name of the buddy. |
|
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
|
690 | * @param status_id The status ID. |
|
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
|
691 | */ |
| 15884 | 692 | 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
|
693 | const char *status_id); |
|
25888
d0fdd378a635
Remove trailing whitespace
Mark Doliner <markdoliner@pidgin.im>
parents:
25231
diff
changeset
|
694 | |
|
9944
71ef020ec4b0
[gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents:
9943
diff
changeset
|
695 | /** |
|
25889
26d9ca30335c
Change "screen name" to "username" or "buddy name" in a whole bunch of
Mark Doliner <markdoliner@pidgin.im>
parents:
25888
diff
changeset
|
696 | * Informs the server that our account's status changed. |
|
9944
71ef020ec4b0
[gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents:
9943
diff
changeset
|
697 | * |
|
10447
887380ec66f5
[gaim-migrate @ 11712]
Mark Doliner <markdoliner@pidgin.im>
parents:
10400
diff
changeset
|
698 | * @param account The account the user is on. |
|
887380ec66f5
[gaim-migrate @ 11712]
Mark Doliner <markdoliner@pidgin.im>
parents:
10400
diff
changeset
|
699 | * @param old_status The previous status. |
|
887380ec66f5
[gaim-migrate @ 11712]
Mark Doliner <markdoliner@pidgin.im>
parents:
10400
diff
changeset
|
700 | * @param new_status The status that was activated, or deactivated |
|
887380ec66f5
[gaim-migrate @ 11712]
Mark Doliner <markdoliner@pidgin.im>
parents:
10400
diff
changeset
|
701 | * (in the case of independent statuses). |
|
9944
71ef020ec4b0
[gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents:
9943
diff
changeset
|
702 | */ |
| 15884 | 703 | void purple_prpl_change_account_status(PurpleAccount *account, |
| 704 | PurpleStatus *old_status, | |
| 705 | PurpleStatus *new_status); | |
|
9944
71ef020ec4b0
[gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents:
9943
diff
changeset
|
706 | |
|
10006
800a81666868
[gaim-migrate @ 10923]
Dave West <kat@users.sourceforge.net>
parents:
9999
diff
changeset
|
707 | /** |
|
800a81666868
[gaim-migrate @ 10923]
Dave West <kat@users.sourceforge.net>
parents:
9999
diff
changeset
|
708 | * Retrieves the list of stock status types from a prpl. |
|
800a81666868
[gaim-migrate @ 10923]
Dave West <kat@users.sourceforge.net>
parents:
9999
diff
changeset
|
709 | * |
|
800a81666868
[gaim-migrate @ 10923]
Dave West <kat@users.sourceforge.net>
parents:
9999
diff
changeset
|
710 | * @param account The account the user is on. |
|
800a81666868
[gaim-migrate @ 10923]
Dave West <kat@users.sourceforge.net>
parents:
9999
diff
changeset
|
711 | * @param presence The presence for which we're going to get statuses |
|
800a81666868
[gaim-migrate @ 10923]
Dave West <kat@users.sourceforge.net>
parents:
9999
diff
changeset
|
712 | * |
|
800a81666868
[gaim-migrate @ 10923]
Dave West <kat@users.sourceforge.net>
parents:
9999
diff
changeset
|
713 | * @return List of statuses |
|
800a81666868
[gaim-migrate @ 10923]
Dave West <kat@users.sourceforge.net>
parents:
9999
diff
changeset
|
714 | */ |
| 15884 | 715 | GList *purple_prpl_get_statuses(PurpleAccount *account, PurplePresence *presence); |
|
10006
800a81666868
[gaim-migrate @ 10923]
Dave West <kat@users.sourceforge.net>
parents:
9999
diff
changeset
|
716 | |
|
25889
26d9ca30335c
Change "screen name" to "username" or "buddy name" in a whole bunch of
Mark Doliner <markdoliner@pidgin.im>
parents:
25888
diff
changeset
|
717 | /** |
|
26d9ca30335c
Change "screen name" to "username" or "buddy name" in a whole bunch of
Mark Doliner <markdoliner@pidgin.im>
parents:
25888
diff
changeset
|
718 | * 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
|
719 | * |
|
d7e5f66cbfc9
Add purple_prpl_got_attention_in_chat, then deprecate
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23513
diff
changeset
|
720 | * @param gc The connection to send the message on. |
|
d7e5f66cbfc9
Add purple_prpl_got_attention_in_chat, then deprecate
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23513
diff
changeset
|
721 | * @param who Whose attention to request. |
|
d7e5f66cbfc9
Add purple_prpl_got_attention_in_chat, then deprecate
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23513
diff
changeset
|
722 | * @param 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
|
723 | * of the attention request command to send. 0 if prpl only defines one |
|
26d9ca30335c
Change "screen name" to "username" or "buddy name" in a whole bunch of
Mark Doliner <markdoliner@pidgin.im>
parents:
25888
diff
changeset
|
724 | * (for example, Yahoo and MSN), but some protocols define more (MySpaceIM). |
|
23875
d7e5f66cbfc9
Add purple_prpl_got_attention_in_chat, then deprecate
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23513
diff
changeset
|
725 | * |
|
d7e5f66cbfc9
Add purple_prpl_got_attention_in_chat, then deprecate
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23513
diff
changeset
|
726 | * 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
|
727 | * only a fixed set of attention commands. |
|
25889
26d9ca30335c
Change "screen name" to "username" or "buddy name" in a whole bunch of
Mark Doliner <markdoliner@pidgin.im>
parents:
25888
diff
changeset
|
728 | * |
|
23875
d7e5f66cbfc9
Add purple_prpl_got_attention_in_chat, then deprecate
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23513
diff
changeset
|
729 | * @since 2.5.0 |
|
d7e5f66cbfc9
Add purple_prpl_got_attention_in_chat, then deprecate
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23513
diff
changeset
|
730 | */ |
|
d7e5f66cbfc9
Add purple_prpl_got_attention_in_chat, then deprecate
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23513
diff
changeset
|
731 | 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
|
732 | |
|
25889
26d9ca30335c
Change "screen name" to "username" or "buddy name" in a whole bunch of
Mark Doliner <markdoliner@pidgin.im>
parents:
25888
diff
changeset
|
733 | /** |
|
26d9ca30335c
Change "screen name" to "username" or "buddy name" in a whole bunch of
Mark Doliner <markdoliner@pidgin.im>
parents:
25888
diff
changeset
|
734 | * 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
|
735 | * |
|
d7e5f66cbfc9
Add purple_prpl_got_attention_in_chat, then deprecate
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23513
diff
changeset
|
736 | * @param gc The connection that received the attention message. |
|
d7e5f66cbfc9
Add purple_prpl_got_attention_in_chat, then deprecate
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23513
diff
changeset
|
737 | * @param who Who requested your attention. |
|
d7e5f66cbfc9
Add purple_prpl_got_attention_in_chat, then deprecate
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23513
diff
changeset
|
738 | * @param 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
|
739 | * 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
|
740 | * |
|
23875
d7e5f66cbfc9
Add purple_prpl_got_attention_in_chat, then deprecate
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23513
diff
changeset
|
741 | * @since 2.5.0 |
|
d7e5f66cbfc9
Add purple_prpl_got_attention_in_chat, then deprecate
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23513
diff
changeset
|
742 | */ |
|
d7e5f66cbfc9
Add purple_prpl_got_attention_in_chat, then deprecate
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23513
diff
changeset
|
743 | 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
|
744 | |
|
25889
26d9ca30335c
Change "screen name" to "username" or "buddy name" in a whole bunch of
Mark Doliner <markdoliner@pidgin.im>
parents:
25888
diff
changeset
|
745 | /** |
|
26d9ca30335c
Change "screen name" to "username" or "buddy name" in a whole bunch of
Mark Doliner <markdoliner@pidgin.im>
parents:
25888
diff
changeset
|
746 | * 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
|
747 | * |
|
d7e5f66cbfc9
Add purple_prpl_got_attention_in_chat, then deprecate
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23513
diff
changeset
|
748 | * @param gc The connection that received the attention message. |
|
d7e5f66cbfc9
Add purple_prpl_got_attention_in_chat, then deprecate
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23513
diff
changeset
|
749 | * @param id The chat id. |
|
d7e5f66cbfc9
Add purple_prpl_got_attention_in_chat, then deprecate
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23513
diff
changeset
|
750 | * @param who Who requested your attention. |
|
d7e5f66cbfc9
Add purple_prpl_got_attention_in_chat, then deprecate
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23513
diff
changeset
|
751 | * @param 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
|
752 | * 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
|
753 | * |
|
23875
d7e5f66cbfc9
Add purple_prpl_got_attention_in_chat, then deprecate
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23513
diff
changeset
|
754 | * @since 2.5.0 |
|
d7e5f66cbfc9
Add purple_prpl_got_attention_in_chat, then deprecate
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23513
diff
changeset
|
755 | */ |
|
d7e5f66cbfc9
Add purple_prpl_got_attention_in_chat, then deprecate
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
23513
diff
changeset
|
756 | 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
|
757 | |
|
9944
71ef020ec4b0
[gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents:
9943
diff
changeset
|
758 | /*@}*/ |
|
71ef020ec4b0
[gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents:
9943
diff
changeset
|
759 | |
|
71ef020ec4b0
[gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents:
9943
diff
changeset
|
760 | /**************************************************************************/ |
|
71ef020ec4b0
[gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents:
9943
diff
changeset
|
761 | /** @name Protocol Plugin Subsystem API */ |
|
71ef020ec4b0
[gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents:
9943
diff
changeset
|
762 | /**************************************************************************/ |
|
71ef020ec4b0
[gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents:
9943
diff
changeset
|
763 | /*@{*/ |
|
71ef020ec4b0
[gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents:
9943
diff
changeset
|
764 | |
|
4557
40c90b1671cf
[gaim-migrate @ 4837]
Christian Hammond <chipx86@chipx86.com>
parents:
4514
diff
changeset
|
765 | /** |
|
40c90b1671cf
[gaim-migrate @ 4837]
Christian Hammond <chipx86@chipx86.com>
parents:
4514
diff
changeset
|
766 | * Finds a protocol plugin structure of the specified type. |
|
40c90b1671cf
[gaim-migrate @ 4837]
Christian Hammond <chipx86@chipx86.com>
parents:
4514
diff
changeset
|
767 | * |
| 9000 | 768 | * @param id The protocol plugin; |
|
4557
40c90b1671cf
[gaim-migrate @ 4837]
Christian Hammond <chipx86@chipx86.com>
parents:
4514
diff
changeset
|
769 | */ |
| 15884 | 770 | PurplePlugin *purple_find_prpl(const char *id); |
| 981 | 771 | |
|
9944
71ef020ec4b0
[gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents:
9943
diff
changeset
|
772 | /*@}*/ |
|
71ef020ec4b0
[gaim-migrate @ 10838]
Christian Hammond <chipx86@chipx86.com>
parents:
9943
diff
changeset
|
773 | |
|
5944
f19df037ac58
[gaim-migrate @ 6385]
Christian Hammond <chipx86@chipx86.com>
parents:
5943
diff
changeset
|
774 | #ifdef __cplusplus |
|
f19df037ac58
[gaim-migrate @ 6385]
Christian Hammond <chipx86@chipx86.com>
parents:
5943
diff
changeset
|
775 | } |
|
f19df037ac58
[gaim-migrate @ 6385]
Christian Hammond <chipx86@chipx86.com>
parents:
5943
diff
changeset
|
776 | #endif |
|
f19df037ac58
[gaim-migrate @ 6385]
Christian Hammond <chipx86@chipx86.com>
parents:
5943
diff
changeset
|
777 | |
|
2417
7751d1269b09
[gaim-migrate @ 2430]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2411
diff
changeset
|
778 | #endif /* _PRPL_H_ */ |