libpurple/purpleprotocolconversation.h

Mon, 12 May 2025 20:25:16 -0500

author
Gary Kramlich <grim@reaperworld.com>
date
Mon, 12 May 2025 20:25:16 -0500
changeset 43246
0e9bbe9b4da8
parent 43235
42e7b89033fe
child 43301
0e43dc8462e8
permissions
-rw-r--r--

Handle formatting in server messages

Testing Done:
Used the default motd on my local ergo server to verify that formatting was working.

Reviewed at https://reviews.imfreedom.org/r/3991/

42319
98931e2d3ca2 Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
1 /*
98931e2d3ca2 Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
2 * Purple - Internet Messaging Library
98931e2d3ca2 Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
3 * Copyright (C) Pidgin Developers <devel@pidgin.im>
98931e2d3ca2 Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
4 *
98931e2d3ca2 Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
5 * Purple is the legal property of its developers, whose names are too numerous
42594
eddde70cedd8 Create a test for verifying license headers and correct the ones that were wrong
Gary Kramlich <grim@reaperworld.com>
parents: 42387
diff changeset
6 * to list here. Please refer to the COPYRIGHT file distributed with this
42319
98931e2d3ca2 Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
7 * source distribution.
98931e2d3ca2 Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
8 *
42594
eddde70cedd8 Create a test for verifying license headers and correct the ones that were wrong
Gary Kramlich <grim@reaperworld.com>
parents: 42387
diff changeset
9 * This library is free software; you can redistribute it and/or modify it
eddde70cedd8 Create a test for verifying license headers and correct the ones that were wrong
Gary Kramlich <grim@reaperworld.com>
parents: 42387
diff changeset
10 * under the terms of the GNU General Public License as published by the Free
eddde70cedd8 Create a test for verifying license headers and correct the ones that were wrong
Gary Kramlich <grim@reaperworld.com>
parents: 42387
diff changeset
11 * Software Foundation; either version 2 of the License, or (at your option)
eddde70cedd8 Create a test for verifying license headers and correct the ones that were wrong
Gary Kramlich <grim@reaperworld.com>
parents: 42387
diff changeset
12 * any later version.
42319
98931e2d3ca2 Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
13 *
42594
eddde70cedd8 Create a test for verifying license headers and correct the ones that were wrong
Gary Kramlich <grim@reaperworld.com>
parents: 42387
diff changeset
14 * This library is distributed in the hope that it will be useful, but WITHOUT
eddde70cedd8 Create a test for verifying license headers and correct the ones that were wrong
Gary Kramlich <grim@reaperworld.com>
parents: 42387
diff changeset
15 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
eddde70cedd8 Create a test for verifying license headers and correct the ones that were wrong
Gary Kramlich <grim@reaperworld.com>
parents: 42387
diff changeset
16 * FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for
eddde70cedd8 Create a test for verifying license headers and correct the ones that were wrong
Gary Kramlich <grim@reaperworld.com>
parents: 42387
diff changeset
17 * more details.
42319
98931e2d3ca2 Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
18 *
42594
eddde70cedd8 Create a test for verifying license headers and correct the ones that were wrong
Gary Kramlich <grim@reaperworld.com>
parents: 42387
diff changeset
19 * You should have received a copy of the GNU General Public License along with
eddde70cedd8 Create a test for verifying license headers and correct the ones that were wrong
Gary Kramlich <grim@reaperworld.com>
parents: 42387
diff changeset
20 * this library; if not, see <https://www.gnu.org/licenses/>.
42319
98931e2d3ca2 Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
21 */
98931e2d3ca2 Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
22
98931e2d3ca2 Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
23 #if !defined(PURPLE_GLOBAL_HEADER_INSIDE) && !defined(PURPLE_COMPILATION)
98931e2d3ca2 Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
24 # error "only <purple.h> may be included directly"
98931e2d3ca2 Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
25 #endif
98931e2d3ca2 Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
26
98931e2d3ca2 Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
27 #ifndef PURPLE_PROTOCOL_CONVERSATION_H
98931e2d3ca2 Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
28 #define PURPLE_PROTOCOL_CONVERSATION_H
98931e2d3ca2 Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
29
98931e2d3ca2 Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
30 #include <glib.h>
98931e2d3ca2 Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
31 #include <glib-object.h>
98931e2d3ca2 Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
32
42344
c51d37734155 Rename account.[ch] to purpleaccount.[ch]
Gary Kramlich <grim@reaperworld.com>
parents: 42332
diff changeset
33 #include "purpleaccount.h"
42354
b5caf6b7705a Add set_avatar_async and set_avatar_finish to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42344
diff changeset
34 #include "purpleavatar.h"
42332
0de4f569ccf3 Add the ability to join channels to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42325
diff changeset
35 #include "purplechanneljoindetails.h"
42319
98931e2d3ca2 Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
36 #include "purpleconversation.h"
42673
a9e988314724 Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42656
diff changeset
37 #include "purplecreateconversationdetails.h"
42319
98931e2d3ca2 Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
38 #include "purplemessage.h"
98931e2d3ca2 Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
39 #include "purpleprotocol.h"
42368
2630a8a2d64d Add a send_typing vfunc to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42354
diff changeset
40 #include "purpletyping.h"
42387
d9350cda1556 Export symbols added for 3.0.0
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents: 42368
diff changeset
41 #include "purpleversion.h"
42319
98931e2d3ca2 Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
42
98931e2d3ca2 Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
43 G_BEGIN_DECLS
98931e2d3ca2 Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
44
42673
a9e988314724 Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42656
diff changeset
45 /**
a9e988314724 Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42656
diff changeset
46 * PURPLE_PROTOCOL_CONVERSATION_DOMAIN:
a9e988314724 Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42656
diff changeset
47 *
a9e988314724 Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42656
diff changeset
48 * An error domain for [iface@ProtocolConversation] errors.
a9e988314724 Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42656
diff changeset
49 *
a9e988314724 Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42656
diff changeset
50 * Since: 3.0
a9e988314724 Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42656
diff changeset
51 */
a9e988314724 Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42656
diff changeset
52 #define PURPLE_PROTOCOL_CONVERSATION_DOMAIN \
a9e988314724 Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42656
diff changeset
53 (g_quark_from_static_string("purple-protocol-conversation")) \
a9e988314724 Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42656
diff changeset
54 PURPLE_AVAILABLE_MACRO_IN_3_0
a9e988314724 Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42656
diff changeset
55
42319
98931e2d3ca2 Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
56 #define PURPLE_TYPE_PROTOCOL_CONVERSATION (purple_protocol_conversation_get_type())
42387
d9350cda1556 Export symbols added for 3.0.0
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents: 42368
diff changeset
57
d9350cda1556 Export symbols added for 3.0.0
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents: 42368
diff changeset
58 PURPLE_AVAILABLE_IN_3_0
42319
98931e2d3ca2 Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
59 G_DECLARE_INTERFACE(PurpleProtocolConversation, purple_protocol_conversation,
98931e2d3ca2 Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
60 PURPLE, PROTOCOL_CONVERSATION, PurpleProtocol)
98931e2d3ca2 Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
61
98931e2d3ca2 Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
62 /**
42656
df9aafbae930 Add a doc-check unit test to libpurple and fix the issues it has found
Gary Kramlich <grim@reaperworld.com>
parents: 42615
diff changeset
63 * PurpleProtocolConversation:
42319
98931e2d3ca2 Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
64 *
98931e2d3ca2 Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
65 * This interface defines the behavior for interacting with conversations at
98931e2d3ca2 Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
66 * the protocol layer. These methods will primarily be called by the user
98931e2d3ca2 Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
67 * interface.
98931e2d3ca2 Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
68 *
42615
2f3308794a8f Remove the micro version from since tags for libpurple part 4
Gary Kramlich <grim@reaperworld.com>
parents: 42594
diff changeset
69 * Since: 3.0
42319
98931e2d3ca2 Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
70 */
98931e2d3ca2 Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
71 struct _PurpleProtocolConversationInterface {
98931e2d3ca2 Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
72 /*< private >*/
98931e2d3ca2 Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
73 GTypeInterface parent;
98931e2d3ca2 Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
74
98931e2d3ca2 Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
75 /*< public >*/
42673
a9e988314724 Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42656
diff changeset
76 PurpleCreateConversationDetails *(*get_create_conversation_details)(PurpleProtocolConversation *protocol, PurpleAccount *account);
a9e988314724 Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42656
diff changeset
77 void (*create_conversation_async)(PurpleProtocolConversation *protocol, PurpleAccount *account, PurpleCreateConversationDetails *details, GCancellable *cancellable, GAsyncReadyCallback callback, gpointer data);
a9e988314724 Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42656
diff changeset
78 PurpleConversation *(*create_conversation_finish)(PurpleProtocolConversation *protocol, GAsyncResult *result, GError **error);
a9e988314724 Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42656
diff changeset
79
42778
4aa4ab7b24a7 Add the ability to leave conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42673
diff changeset
80 void (*leave_conversation_async)(PurpleProtocolConversation *protocol, PurpleConversation *conversation, GCancellable *cancellable, GAsyncReadyCallback callback, gpointer data);
4aa4ab7b24a7 Add the ability to leave conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42673
diff changeset
81 gboolean (*leave_conversation_finish)(PurpleProtocolConversation *protocol, GAsyncResult *result, GError **error);
4aa4ab7b24a7 Add the ability to leave conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42673
diff changeset
82
42319
98931e2d3ca2 Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
83 void (*send_message_async)(PurpleProtocolConversation *protocol, PurpleConversation *conversation, PurpleMessage *message, GCancellable *cancellable, GAsyncReadyCallback callback, gpointer data);
98931e2d3ca2 Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
84 gboolean (*send_message_finish)(PurpleProtocolConversation *protocol, GAsyncResult *result, GError **error);
98931e2d3ca2 Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
85
42325
9e5c583e13de Add PurpleProtocolConversation->set_topic_async and _finish
Gary Kramlich <grim@reaperworld.com>
parents: 42319
diff changeset
86 void (*set_topic_async)(PurpleProtocolConversation *protocol, PurpleConversation *conversation, const char *topic, GCancellable *cancellable, GAsyncReadyCallback callback, gpointer data);
9e5c583e13de Add PurpleProtocolConversation->set_topic_async and _finish
Gary Kramlich <grim@reaperworld.com>
parents: 42319
diff changeset
87 gboolean (*set_topic_finish)(PurpleProtocolConversation *protocol, GAsyncResult *result, GError **error);
9e5c583e13de Add PurpleProtocolConversation->set_topic_async and _finish
Gary Kramlich <grim@reaperworld.com>
parents: 42319
diff changeset
88
42332
0de4f569ccf3 Add the ability to join channels to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42325
diff changeset
89 PurpleChannelJoinDetails *(*get_channel_join_details)(PurpleProtocolConversation *protocol, PurpleAccount *account);
0de4f569ccf3 Add the ability to join channels to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42325
diff changeset
90 void (*join_channel_async)(PurpleProtocolConversation *protocol, PurpleAccount *account, PurpleChannelJoinDetails *details, GCancellable *cancellable, GAsyncReadyCallback callback, gpointer data);
43235
42e7b89033fe Make Purple.ProtocolConversation.join_channel_finish return a conversation
Gary Kramlich <grim@reaperworld.com>
parents: 43136
diff changeset
91 PurpleConversation *(*join_channel_finish)(PurpleProtocolConversation *protocol, GAsyncResult *result, GError **error);
42332
0de4f569ccf3 Add the ability to join channels to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42325
diff changeset
92
42354
b5caf6b7705a Add set_avatar_async and set_avatar_finish to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42344
diff changeset
93 void (*set_avatar_async)(PurpleProtocolConversation *protocol, PurpleConversation *conversation, PurpleAvatar *avatar, GCancellable *cancellable, GAsyncReadyCallback callback, gpointer data);
b5caf6b7705a Add set_avatar_async and set_avatar_finish to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42344
diff changeset
94 gboolean (*set_avatar_finish)(PurpleProtocolConversation *protocol, GAsyncResult *result, GError **error);
b5caf6b7705a Add set_avatar_async and set_avatar_finish to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42344
diff changeset
95
42368
2630a8a2d64d Add a send_typing vfunc to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42354
diff changeset
96 void (*send_typing)(PurpleProtocolConversation *protocol, PurpleConversation *conversation, PurpleTypingState state);
2630a8a2d64d Add a send_typing vfunc to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42354
diff changeset
97
43104
f87ae4effec7 Add Purple.ProtocolConversation.refresh
Gary Kramlich <grim@reaperworld.com>
parents: 43056
diff changeset
98 void (*refresh)(PurpleProtocolConversation *protocol, PurpleConversation *conversation);
f87ae4effec7 Add Purple.ProtocolConversation.refresh
Gary Kramlich <grim@reaperworld.com>
parents: 43056
diff changeset
99
43136
36eba703e2b9 Add some additional methods to Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 43104
diff changeset
100 void (*set_title_async)(PurpleProtocolConversation *protocol, PurpleConversation *conversation, const char *title, GCancellable *cancellable, GAsyncReadyCallback callback, gpointer data);
36eba703e2b9 Add some additional methods to Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 43104
diff changeset
101 gboolean (*set_title_finish)(PurpleProtocolConversation *protocol, GAsyncResult *result, GError **error);
36eba703e2b9 Add some additional methods to Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 43104
diff changeset
102
36eba703e2b9 Add some additional methods to Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 43104
diff changeset
103 void (*set_description_async)(PurpleProtocolConversation *protocol, PurpleConversation *conversation, const char *description, GCancellable *cancellable, GAsyncReadyCallback callback, gpointer data);
36eba703e2b9 Add some additional methods to Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 43104
diff changeset
104 gboolean (*set_description_finish)(PurpleProtocolConversation *protocol, GAsyncResult *result, GError **error);
36eba703e2b9 Add some additional methods to Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 43104
diff changeset
105
42319
98931e2d3ca2 Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
106 /*< private >*/
98931e2d3ca2 Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
107 gpointer reserved[8];
98931e2d3ca2 Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
108 };
98931e2d3ca2 Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
109
98931e2d3ca2 Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
110 /**
42673
a9e988314724 Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42656
diff changeset
111 * purple_protocol_conversation_implements_create_conversation:
a9e988314724 Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42656
diff changeset
112 * @protocol: The instance.
a9e988314724 Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42656
diff changeset
113 *
a9e988314724 Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42656
diff changeset
114 * Checks if @protocol implements
a9e988314724 Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42656
diff changeset
115 * [vfunc@ProtocolConversation.get_create_conversation_details],
a9e988314724 Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42656
diff changeset
116 * [vfunc@ProtocolConversation.create_conversation_async], and
a9e988314724 Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42656
diff changeset
117 * [vfunc@ProtocolConversation.create_conversation_finish].
a9e988314724 Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42656
diff changeset
118 *
a9e988314724 Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42656
diff changeset
119 * Returns: %TRUE if everything is implemented, otherwise %FALSE.
a9e988314724 Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42656
diff changeset
120 *
a9e988314724 Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42656
diff changeset
121 * Since: 3.0
a9e988314724 Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42656
diff changeset
122 */
a9e988314724 Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42656
diff changeset
123 PURPLE_AVAILABLE_IN_3_0
a9e988314724 Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42656
diff changeset
124 gboolean purple_protocol_conversation_implements_create_conversation(PurpleProtocolConversation *protocol);
a9e988314724 Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42656
diff changeset
125
a9e988314724 Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42656
diff changeset
126 /**
a9e988314724 Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42656
diff changeset
127 * purple_protocol_conversation_get_create_conversation_details:
a9e988314724 Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42656
diff changeset
128 * @protocol: The instance.
a9e988314724 Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42656
diff changeset
129 * @account: The account.
a9e988314724 Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42656
diff changeset
130 *
a9e988314724 Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42656
diff changeset
131 * Gets a [class@CreateConversationDetails] from @protocol for @account.
a9e988314724 Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42656
diff changeset
132 *
a9e988314724 Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42656
diff changeset
133 * This can then be used in calls to
a9e988314724 Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42656
diff changeset
134 * [method@ProtocolConversation.create_conversation_async] to create the
a9e988314724 Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42656
diff changeset
135 * conversation.
a9e988314724 Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42656
diff changeset
136 *
a9e988314724 Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42656
diff changeset
137 * Returns: (transfer full): The details to create a conversation with
a9e988314724 Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42656
diff changeset
138 * @account.
a9e988314724 Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42656
diff changeset
139 *
a9e988314724 Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42656
diff changeset
140 * Since: 3.0
a9e988314724 Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42656
diff changeset
141 */
a9e988314724 Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42656
diff changeset
142 PURPLE_AVAILABLE_IN_3_0
a9e988314724 Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42656
diff changeset
143 PurpleCreateConversationDetails *purple_protocol_conversation_get_create_conversation_details(PurpleProtocolConversation *protocol, PurpleAccount *account);
a9e988314724 Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42656
diff changeset
144
a9e988314724 Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42656
diff changeset
145 /**
a9e988314724 Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42656
diff changeset
146 * purple_protocol_conversation_create_conversation_async:
a9e988314724 Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42656
diff changeset
147 * @protocol: The instance.
a9e988314724 Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42656
diff changeset
148 * @account: The account.
a9e988314724 Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42656
diff changeset
149 * @details: (transfer full): The create conversation details.
a9e988314724 Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42656
diff changeset
150 * @cancellable: (nullable): optional GCancellable object, %NULL to ignore.
a9e988314724 Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42656
diff changeset
151 * @callback: (nullable) (scope async): The callback to call after the
a9e988314724 Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42656
diff changeset
152 * conversation has been created.
a9e988314724 Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42656
diff changeset
153 * @data: (nullable): Optional user data to pass to @callback.
a9e988314724 Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42656
diff changeset
154 *
a9e988314724 Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42656
diff changeset
155 * Starts the process of creating a dm or group dm conversation on @account.
a9e988314724 Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42656
diff changeset
156 *
a9e988314724 Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42656
diff changeset
157 * Since: 3.0
a9e988314724 Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42656
diff changeset
158 */
a9e988314724 Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42656
diff changeset
159 PURPLE_AVAILABLE_IN_3_0
a9e988314724 Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42656
diff changeset
160 void purple_protocol_conversation_create_conversation_async(PurpleProtocolConversation *protocol, PurpleAccount *account, PurpleCreateConversationDetails *details, GCancellable *cancellable, GAsyncReadyCallback callback, gpointer data);
a9e988314724 Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42656
diff changeset
161
a9e988314724 Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42656
diff changeset
162 /**
a9e988314724 Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42656
diff changeset
163 * purple_protocol_conversation_create_conversation_finish:
a9e988314724 Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42656
diff changeset
164 * @protocol: The instance.
a9e988314724 Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42656
diff changeset
165 * @result: The [iface@Gio.AsyncResult] from the previous
a9e988314724 Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42656
diff changeset
166 * [method@ProtocolConversation.create_conversation_async] call.
a9e988314724 Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42656
diff changeset
167 * @error: Return address for a #GError, or %NULL.
a9e988314724 Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42656
diff changeset
168 *
a9e988314724 Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42656
diff changeset
169 * Finishes a previous call to
a9e988314724 Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42656
diff changeset
170 * [method@ProtocolConversation.create_conversation_async]. This should be
a9e988314724 Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42656
diff changeset
171 * called from the callback of that function to get the result of whether or
a9e988314724 Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42656
diff changeset
172 * not the conversation was created successfully.
a9e988314724 Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42656
diff changeset
173 *
a9e988314724 Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42656
diff changeset
174 * It is the responsibility of the protocol to register the conversation with
a9e988314724 Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42656
diff changeset
175 * the default [class@ConversationManager].
a9e988314724 Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42656
diff changeset
176 *
a9e988314724 Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42656
diff changeset
177 * Returns: (transfer full): The new conversation if successful, otherwise
a9e988314724 Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42656
diff changeset
178 * %NULL with @error possibly set.
a9e988314724 Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42656
diff changeset
179 *
a9e988314724 Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42656
diff changeset
180 * Since: 3.0
a9e988314724 Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42656
diff changeset
181 */
a9e988314724 Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42656
diff changeset
182 PURPLE_AVAILABLE_IN_3_0
a9e988314724 Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42656
diff changeset
183 PurpleConversation *purple_protocol_conversation_create_conversation_finish(PurpleProtocolConversation *protocol, GAsyncResult *result, GError **error);
a9e988314724 Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42656
diff changeset
184
a9e988314724 Add the ability to create conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42656
diff changeset
185 /**
42778
4aa4ab7b24a7 Add the ability to leave conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42673
diff changeset
186 * purple_protocol_conversation_implements_leave_conversation:
4aa4ab7b24a7 Add the ability to leave conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42673
diff changeset
187 * @protocol: The instance.
4aa4ab7b24a7 Add the ability to leave conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42673
diff changeset
188 *
4aa4ab7b24a7 Add the ability to leave conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42673
diff changeset
189 * Checks if @protocol implements
4aa4ab7b24a7 Add the ability to leave conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42673
diff changeset
190 * [vfunc@ProtocolConversation.leave_conversation_async] and
4aa4ab7b24a7 Add the ability to leave conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42673
diff changeset
191 * [vfunc@ProtocolConversation.leave_conversation_finish].
4aa4ab7b24a7 Add the ability to leave conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42673
diff changeset
192 *
4aa4ab7b24a7 Add the ability to leave conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42673
diff changeset
193 * Returns: %TRUE if everything is implemented, otherwise %FALSE.
4aa4ab7b24a7 Add the ability to leave conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42673
diff changeset
194 *
4aa4ab7b24a7 Add the ability to leave conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42673
diff changeset
195 * Since: 3.0
4aa4ab7b24a7 Add the ability to leave conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42673
diff changeset
196 */
4aa4ab7b24a7 Add the ability to leave conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42673
diff changeset
197 PURPLE_AVAILABLE_IN_3_0
4aa4ab7b24a7 Add the ability to leave conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42673
diff changeset
198 gboolean purple_protocol_conversation_implements_leave_conversation(PurpleProtocolConversation *protocol);
4aa4ab7b24a7 Add the ability to leave conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42673
diff changeset
199
4aa4ab7b24a7 Add the ability to leave conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42673
diff changeset
200 /**
4aa4ab7b24a7 Add the ability to leave conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42673
diff changeset
201 * purple_protocol_conversation_leave_conversation_async:
4aa4ab7b24a7 Add the ability to leave conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42673
diff changeset
202 * @protocol: The instance.
4aa4ab7b24a7 Add the ability to leave conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42673
diff changeset
203 * @conversation: The conversation to leave.
4aa4ab7b24a7 Add the ability to leave conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42673
diff changeset
204 * @cancellable: (nullable): optional GCancellable object, %NULL to ignore.
4aa4ab7b24a7 Add the ability to leave conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42673
diff changeset
205 * @callback: (nullable) (scope async): The callback to call after the
4aa4ab7b24a7 Add the ability to leave conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42673
diff changeset
206 * conversation has been created.
4aa4ab7b24a7 Add the ability to leave conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42673
diff changeset
207 * @data: (nullable): Optional user data to pass to @callback.
4aa4ab7b24a7 Add the ability to leave conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42673
diff changeset
208 *
4aa4ab7b24a7 Add the ability to leave conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42673
diff changeset
209 * Attempts to leave @conversation.
4aa4ab7b24a7 Add the ability to leave conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42673
diff changeset
210 *
4aa4ab7b24a7 Add the ability to leave conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42673
diff changeset
211 * This needs to support all conversation types that @protocol supports.
4aa4ab7b24a7 Add the ability to leave conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42673
diff changeset
212 *
4aa4ab7b24a7 Add the ability to leave conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42673
diff changeset
213 * Call [method@ProtocolConversation.leave_conversation_finish] from @callback
4aa4ab7b24a7 Add the ability to leave conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42673
diff changeset
214 * to determine whether or not leaving was successful.
4aa4ab7b24a7 Add the ability to leave conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42673
diff changeset
215 *
4aa4ab7b24a7 Add the ability to leave conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42673
diff changeset
216 * Since: 3.0
4aa4ab7b24a7 Add the ability to leave conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42673
diff changeset
217 */
4aa4ab7b24a7 Add the ability to leave conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42673
diff changeset
218 PURPLE_AVAILABLE_IN_3_0
4aa4ab7b24a7 Add the ability to leave conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42673
diff changeset
219 void purple_protocol_conversation_leave_conversation_async(PurpleProtocolConversation *protocol, PurpleConversation *conversation, GCancellable *cancellable, GAsyncReadyCallback callback, gpointer data);
4aa4ab7b24a7 Add the ability to leave conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42673
diff changeset
220
4aa4ab7b24a7 Add the ability to leave conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42673
diff changeset
221 /**
4aa4ab7b24a7 Add the ability to leave conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42673
diff changeset
222 * purple_protocol_conversation_leave_conversation_finish:
4aa4ab7b24a7 Add the ability to leave conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42673
diff changeset
223 * @protocol: The instance.
4aa4ab7b24a7 Add the ability to leave conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42673
diff changeset
224 * @result: The result that was passed to the callback.
4aa4ab7b24a7 Add the ability to leave conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42673
diff changeset
225 * @error: A return address for a #GError.
4aa4ab7b24a7 Add the ability to leave conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42673
diff changeset
226 *
4aa4ab7b24a7 Add the ability to leave conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42673
diff changeset
227 * Finishes a previous call to
4aa4ab7b24a7 Add the ability to leave conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42673
diff changeset
228 * [method@ProtocolConversation.leave_conversation_async].
4aa4ab7b24a7 Add the ability to leave conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42673
diff changeset
229 *
4aa4ab7b24a7 Add the ability to leave conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42673
diff changeset
230 * Returns: %TRUE if the conversation was left successfully, otherwise %FALSE
4aa4ab7b24a7 Add the ability to leave conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42673
diff changeset
231 * with @error set.
4aa4ab7b24a7 Add the ability to leave conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42673
diff changeset
232 *
4aa4ab7b24a7 Add the ability to leave conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42673
diff changeset
233 * Since: 3.0
4aa4ab7b24a7 Add the ability to leave conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42673
diff changeset
234 */
4aa4ab7b24a7 Add the ability to leave conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42673
diff changeset
235 PURPLE_AVAILABLE_IN_3_0
4aa4ab7b24a7 Add the ability to leave conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42673
diff changeset
236 gboolean purple_protocol_conversation_leave_conversation_finish(PurpleProtocolConversation *protocol, GAsyncResult *result, GError **error);
4aa4ab7b24a7 Add the ability to leave conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42673
diff changeset
237
4aa4ab7b24a7 Add the ability to leave conversations to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42673
diff changeset
238 /**
43056
49358391e695 Add Purple.ProtocolConversation.implements_send_message
Gary Kramlich <grim@reaperworld.com>
parents: 42884
diff changeset
239 * purple_protocol_conversation_implements_send_message:
49358391e695 Add Purple.ProtocolConversation.implements_send_message
Gary Kramlich <grim@reaperworld.com>
parents: 42884
diff changeset
240 * @protocol: The instance.
49358391e695 Add Purple.ProtocolConversation.implements_send_message
Gary Kramlich <grim@reaperworld.com>
parents: 42884
diff changeset
241 *
49358391e695 Add Purple.ProtocolConversation.implements_send_message
Gary Kramlich <grim@reaperworld.com>
parents: 42884
diff changeset
242 * Checks if a protocol implements all of the send message virtual functions.
49358391e695 Add Purple.ProtocolConversation.implements_send_message
Gary Kramlich <grim@reaperworld.com>
parents: 42884
diff changeset
243 *
49358391e695 Add Purple.ProtocolConversation.implements_send_message
Gary Kramlich <grim@reaperworld.com>
parents: 42884
diff changeset
244 * This checks if the [vfunc@ProtocolConversation.send_message_async] and
49358391e695 Add Purple.ProtocolConversation.implements_send_message
Gary Kramlich <grim@reaperworld.com>
parents: 42884
diff changeset
245 * [vfunc@ProtocolConversation.send_message_finish] functions are implemented.
49358391e695 Add Purple.ProtocolConversation.implements_send_message
Gary Kramlich <grim@reaperworld.com>
parents: 42884
diff changeset
246 *
49358391e695 Add Purple.ProtocolConversation.implements_send_message
Gary Kramlich <grim@reaperworld.com>
parents: 42884
diff changeset
247 * Returns: %TRUE if @protocol implements all of the virtual functions for
49358391e695 Add Purple.ProtocolConversation.implements_send_message
Gary Kramlich <grim@reaperworld.com>
parents: 42884
diff changeset
248 * sending messages, otherwise %FALSE.
49358391e695 Add Purple.ProtocolConversation.implements_send_message
Gary Kramlich <grim@reaperworld.com>
parents: 42884
diff changeset
249 *
49358391e695 Add Purple.ProtocolConversation.implements_send_message
Gary Kramlich <grim@reaperworld.com>
parents: 42884
diff changeset
250 * Since: 3.0
49358391e695 Add Purple.ProtocolConversation.implements_send_message
Gary Kramlich <grim@reaperworld.com>
parents: 42884
diff changeset
251 */
49358391e695 Add Purple.ProtocolConversation.implements_send_message
Gary Kramlich <grim@reaperworld.com>
parents: 42884
diff changeset
252 PURPLE_AVAILABLE_IN_3_0
49358391e695 Add Purple.ProtocolConversation.implements_send_message
Gary Kramlich <grim@reaperworld.com>
parents: 42884
diff changeset
253 gboolean purple_protocol_conversation_implements_send_message(PurpleProtocolConversation *protocol);
49358391e695 Add Purple.ProtocolConversation.implements_send_message
Gary Kramlich <grim@reaperworld.com>
parents: 42884
diff changeset
254
49358391e695 Add Purple.ProtocolConversation.implements_send_message
Gary Kramlich <grim@reaperworld.com>
parents: 42884
diff changeset
255 /**
42319
98931e2d3ca2 Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
256 * purple_protocol_conversation_send_message_async:
98931e2d3ca2 Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
257 * @protocol: The instance.
98931e2d3ca2 Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
258 * @conversation: The conversation to send a message to.
98931e2d3ca2 Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
259 * @message: The message to send.
98931e2d3ca2 Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
260 * @cancellable: (nullable): optional GCancellable object, %NULL to ignore.
98931e2d3ca2 Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
261 * @callback: (nullable) (scope async): The callback to call after the message
98931e2d3ca2 Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
262 * has been sent.
98931e2d3ca2 Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
263 * @data: (nullable): Optional user data to pass to @callback.
98931e2d3ca2 Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
264 *
98931e2d3ca2 Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
265 * Starts the process of sending @message to @conversation.
98931e2d3ca2 Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
266 *
42615
2f3308794a8f Remove the micro version from since tags for libpurple part 4
Gary Kramlich <grim@reaperworld.com>
parents: 42594
diff changeset
267 * Since: 3.0
42319
98931e2d3ca2 Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
268 */
42387
d9350cda1556 Export symbols added for 3.0.0
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents: 42368
diff changeset
269 PURPLE_AVAILABLE_IN_3_0
42319
98931e2d3ca2 Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
270 void purple_protocol_conversation_send_message_async(PurpleProtocolConversation *protocol, PurpleConversation *conversation, PurpleMessage *message, GCancellable *cancellable, GAsyncReadyCallback callback, gpointer data);
98931e2d3ca2 Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
271
98931e2d3ca2 Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
272 /**
98931e2d3ca2 Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
273 * purple_protocol_conversation_send_message_finish:
98931e2d3ca2 Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
274 * @protocol: The instance.
98931e2d3ca2 Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
275 * @result: The [iface@Gio.AsyncResult] from the previous
98931e2d3ca2 Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
276 * [method@ProtocolConversation.send_message_async] call.
98931e2d3ca2 Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
277 * @error: Return address for a #GError, or %NULL.
98931e2d3ca2 Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
278 *
98931e2d3ca2 Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
279 * Finishes a previous call to
98931e2d3ca2 Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
280 * [method@ProtocolConversation.send_message_async]. This should be called from
98931e2d3ca2 Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
281 * the callback of that function to get the result of whether or not the
98931e2d3ca2 Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
282 * message was sent successfully.
98931e2d3ca2 Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
283 *
98931e2d3ca2 Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
284 * Returns: %TRUE if the message was sent successfully, otherwise %FALSE with
98931e2d3ca2 Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
285 * @error possibly set.
98931e2d3ca2 Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
286 *
42615
2f3308794a8f Remove the micro version from since tags for libpurple part 4
Gary Kramlich <grim@reaperworld.com>
parents: 42594
diff changeset
287 * Since: 3.0
42319
98931e2d3ca2 Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
288 */
42387
d9350cda1556 Export symbols added for 3.0.0
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents: 42368
diff changeset
289 PURPLE_AVAILABLE_IN_3_0
42319
98931e2d3ca2 Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
290 gboolean purple_protocol_conversation_send_message_finish(PurpleProtocolConversation *protocol, GAsyncResult *result, GError **error);
98931e2d3ca2 Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
291
42325
9e5c583e13de Add PurpleProtocolConversation->set_topic_async and _finish
Gary Kramlich <grim@reaperworld.com>
parents: 42319
diff changeset
292 /**
43136
36eba703e2b9 Add some additional methods to Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 43104
diff changeset
293 * purple_protocol_conversation_implements_set_topic:
36eba703e2b9 Add some additional methods to Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 43104
diff changeset
294 * @protocol: the instance
36eba703e2b9 Add some additional methods to Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 43104
diff changeset
295 *
36eba703e2b9 Add some additional methods to Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 43104
diff changeset
296 * Checks if a protocol implements setting topics.
36eba703e2b9 Add some additional methods to Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 43104
diff changeset
297 *
36eba703e2b9 Add some additional methods to Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 43104
diff changeset
298 * Checks if @protocol implements [vfunc@ProtocolConversation.set_topic_async]
36eba703e2b9 Add some additional methods to Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 43104
diff changeset
299 * and [vfunc@ProtocolConversation.set_topic_finish].
36eba703e2b9 Add some additional methods to Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 43104
diff changeset
300 *
36eba703e2b9 Add some additional methods to Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 43104
diff changeset
301 * Returns: true if everything is implemented; otherwise false.
36eba703e2b9 Add some additional methods to Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 43104
diff changeset
302 *
36eba703e2b9 Add some additional methods to Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 43104
diff changeset
303 * Since: 3.0
36eba703e2b9 Add some additional methods to Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 43104
diff changeset
304 */
36eba703e2b9 Add some additional methods to Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 43104
diff changeset
305 PURPLE_AVAILABLE_IN_3_0
36eba703e2b9 Add some additional methods to Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 43104
diff changeset
306 gboolean purple_protocol_conversation_implements_set_topic(PurpleProtocolConversation *protocol);
36eba703e2b9 Add some additional methods to Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 43104
diff changeset
307
36eba703e2b9 Add some additional methods to Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 43104
diff changeset
308 /**
42325
9e5c583e13de Add PurpleProtocolConversation->set_topic_async and _finish
Gary Kramlich <grim@reaperworld.com>
parents: 42319
diff changeset
309 * purple_protocol_conversation_set_topic_async:
9e5c583e13de Add PurpleProtocolConversation->set_topic_async and _finish
Gary Kramlich <grim@reaperworld.com>
parents: 42319
diff changeset
310 * @protocol: The instance.
9e5c583e13de Add PurpleProtocolConversation->set_topic_async and _finish
Gary Kramlich <grim@reaperworld.com>
parents: 42319
diff changeset
311 * @conversation: The conversation whose topic to set.
9e5c583e13de Add PurpleProtocolConversation->set_topic_async and _finish
Gary Kramlich <grim@reaperworld.com>
parents: 42319
diff changeset
312 * @topic: (nullable): The new topic to set.
9e5c583e13de Add PurpleProtocolConversation->set_topic_async and _finish
Gary Kramlich <grim@reaperworld.com>
parents: 42319
diff changeset
313 * @cancellable: (nullable): optional GCancellable object, %NULL to ignore.
9e5c583e13de Add PurpleProtocolConversation->set_topic_async and _finish
Gary Kramlich <grim@reaperworld.com>
parents: 42319
diff changeset
314 * @callback: (nullable) (scope async): The callback to call after the message
9e5c583e13de Add PurpleProtocolConversation->set_topic_async and _finish
Gary Kramlich <grim@reaperworld.com>
parents: 42319
diff changeset
315 * has been sent.
9e5c583e13de Add PurpleProtocolConversation->set_topic_async and _finish
Gary Kramlich <grim@reaperworld.com>
parents: 42319
diff changeset
316 * @data: (nullable): Optional user data to pass to @callback.
9e5c583e13de Add PurpleProtocolConversation->set_topic_async and _finish
Gary Kramlich <grim@reaperworld.com>
parents: 42319
diff changeset
317 *
9e5c583e13de Add PurpleProtocolConversation->set_topic_async and _finish
Gary Kramlich <grim@reaperworld.com>
parents: 42319
diff changeset
318 * Starts the process of setting the topic of @conversation to @topic.
9e5c583e13de Add PurpleProtocolConversation->set_topic_async and _finish
Gary Kramlich <grim@reaperworld.com>
parents: 42319
diff changeset
319 *
9e5c583e13de Add PurpleProtocolConversation->set_topic_async and _finish
Gary Kramlich <grim@reaperworld.com>
parents: 42319
diff changeset
320 * It is up to the protocol to define how [property@Conversation:topic] is
9e5c583e13de Add PurpleProtocolConversation->set_topic_async and _finish
Gary Kramlich <grim@reaperworld.com>
parents: 42319
diff changeset
321 * updated. It may be able to do this immediately based on a result from the
9e5c583e13de Add PurpleProtocolConversation->set_topic_async and _finish
Gary Kramlich <grim@reaperworld.com>
parents: 42319
diff changeset
322 * other end, or it might have to wait until another event comes in telling it
9e5c583e13de Add PurpleProtocolConversation->set_topic_async and _finish
Gary Kramlich <grim@reaperworld.com>
parents: 42319
diff changeset
323 * to update it. Regardless, user interfaces should not be updating the topic
9e5c583e13de Add PurpleProtocolConversation->set_topic_async and _finish
Gary Kramlich <grim@reaperworld.com>
parents: 42319
diff changeset
324 * directly.
9e5c583e13de Add PurpleProtocolConversation->set_topic_async and _finish
Gary Kramlich <grim@reaperworld.com>
parents: 42319
diff changeset
325 *
42615
2f3308794a8f Remove the micro version from since tags for libpurple part 4
Gary Kramlich <grim@reaperworld.com>
parents: 42594
diff changeset
326 * Since: 3.0
42325
9e5c583e13de Add PurpleProtocolConversation->set_topic_async and _finish
Gary Kramlich <grim@reaperworld.com>
parents: 42319
diff changeset
327 */
42387
d9350cda1556 Export symbols added for 3.0.0
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents: 42368
diff changeset
328 PURPLE_AVAILABLE_IN_3_0
42325
9e5c583e13de Add PurpleProtocolConversation->set_topic_async and _finish
Gary Kramlich <grim@reaperworld.com>
parents: 42319
diff changeset
329 void purple_protocol_conversation_set_topic_async(PurpleProtocolConversation *protocol, PurpleConversation *conversation, const char *topic, GCancellable *cancellable, GAsyncReadyCallback callback, gpointer data);
9e5c583e13de Add PurpleProtocolConversation->set_topic_async and _finish
Gary Kramlich <grim@reaperworld.com>
parents: 42319
diff changeset
330
9e5c583e13de Add PurpleProtocolConversation->set_topic_async and _finish
Gary Kramlich <grim@reaperworld.com>
parents: 42319
diff changeset
331 /**
9e5c583e13de Add PurpleProtocolConversation->set_topic_async and _finish
Gary Kramlich <grim@reaperworld.com>
parents: 42319
diff changeset
332 * purple_protocol_conversation_set_topic_finish:
9e5c583e13de Add PurpleProtocolConversation->set_topic_async and _finish
Gary Kramlich <grim@reaperworld.com>
parents: 42319
diff changeset
333 * @protocol: The instance.
9e5c583e13de Add PurpleProtocolConversation->set_topic_async and _finish
Gary Kramlich <grim@reaperworld.com>
parents: 42319
diff changeset
334 * @result: The [iface@Gio.AsyncResult] from the previous
9e5c583e13de Add PurpleProtocolConversation->set_topic_async and _finish
Gary Kramlich <grim@reaperworld.com>
parents: 42319
diff changeset
335 * [method@ProtocolConversation.set_topic_async] call.
9e5c583e13de Add PurpleProtocolConversation->set_topic_async and _finish
Gary Kramlich <grim@reaperworld.com>
parents: 42319
diff changeset
336 * @error: Return address for a #GError, or %NULL.
9e5c583e13de Add PurpleProtocolConversation->set_topic_async and _finish
Gary Kramlich <grim@reaperworld.com>
parents: 42319
diff changeset
337 *
9e5c583e13de Add PurpleProtocolConversation->set_topic_async and _finish
Gary Kramlich <grim@reaperworld.com>
parents: 42319
diff changeset
338 * Finishes a previous call to
9e5c583e13de Add PurpleProtocolConversation->set_topic_async and _finish
Gary Kramlich <grim@reaperworld.com>
parents: 42319
diff changeset
339 * [method@ProtocolConversation.set_topic_async]. This should be called from
9e5c583e13de Add PurpleProtocolConversation->set_topic_async and _finish
Gary Kramlich <grim@reaperworld.com>
parents: 42319
diff changeset
340 * the callback of that function to get the result of whether or not the
9e5c583e13de Add PurpleProtocolConversation->set_topic_async and _finish
Gary Kramlich <grim@reaperworld.com>
parents: 42319
diff changeset
341 * message was sent successfully.
9e5c583e13de Add PurpleProtocolConversation->set_topic_async and _finish
Gary Kramlich <grim@reaperworld.com>
parents: 42319
diff changeset
342 *
9e5c583e13de Add PurpleProtocolConversation->set_topic_async and _finish
Gary Kramlich <grim@reaperworld.com>
parents: 42319
diff changeset
343 * Returns: %TRUE if the message was sent successfully, otherwise %FALSE with
9e5c583e13de Add PurpleProtocolConversation->set_topic_async and _finish
Gary Kramlich <grim@reaperworld.com>
parents: 42319
diff changeset
344 * @error possibly set.
9e5c583e13de Add PurpleProtocolConversation->set_topic_async and _finish
Gary Kramlich <grim@reaperworld.com>
parents: 42319
diff changeset
345 *
42615
2f3308794a8f Remove the micro version from since tags for libpurple part 4
Gary Kramlich <grim@reaperworld.com>
parents: 42594
diff changeset
346 * Since: 3.0
42325
9e5c583e13de Add PurpleProtocolConversation->set_topic_async and _finish
Gary Kramlich <grim@reaperworld.com>
parents: 42319
diff changeset
347 */
42387
d9350cda1556 Export symbols added for 3.0.0
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents: 42368
diff changeset
348 PURPLE_AVAILABLE_IN_3_0
42325
9e5c583e13de Add PurpleProtocolConversation->set_topic_async and _finish
Gary Kramlich <grim@reaperworld.com>
parents: 42319
diff changeset
349 gboolean purple_protocol_conversation_set_topic_finish(PurpleProtocolConversation *protocol, GAsyncResult *result, GError **error);
9e5c583e13de Add PurpleProtocolConversation->set_topic_async and _finish
Gary Kramlich <grim@reaperworld.com>
parents: 42319
diff changeset
350
42332
0de4f569ccf3 Add the ability to join channels to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42325
diff changeset
351 /**
0de4f569ccf3 Add the ability to join channels to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42325
diff changeset
352 * purple_protocol_conversation_get_channel_join_details:
0de4f569ccf3 Add the ability to join channels to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42325
diff changeset
353 * @protocol: The instance.
0de4f569ccf3 Add the ability to join channels to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42325
diff changeset
354 * @account: The account that will be joining a channel.
0de4f569ccf3 Add the ability to join channels to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42325
diff changeset
355 *
0de4f569ccf3 Add the ability to join channels to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42325
diff changeset
356 * User interfaces will use this function to get an instance of
0de4f569ccf3 Add the ability to join channels to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42325
diff changeset
357 * [class@ChannelJoinDetails] that can be presented to a user for them to edit.
0de4f569ccf3 Add the ability to join channels to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42325
diff changeset
358 *
0de4f569ccf3 Add the ability to join channels to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42325
diff changeset
359 * Returns: (transfer full): The new join channel details.
0de4f569ccf3 Add the ability to join channels to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42325
diff changeset
360 *
42615
2f3308794a8f Remove the micro version from since tags for libpurple part 4
Gary Kramlich <grim@reaperworld.com>
parents: 42594
diff changeset
361 * Since: 3.0
42332
0de4f569ccf3 Add the ability to join channels to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42325
diff changeset
362 */
42387
d9350cda1556 Export symbols added for 3.0.0
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents: 42368
diff changeset
363 PURPLE_AVAILABLE_IN_3_0
42332
0de4f569ccf3 Add the ability to join channels to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42325
diff changeset
364 PurpleChannelJoinDetails *purple_protocol_conversation_get_channel_join_details(PurpleProtocolConversation *protocol, PurpleAccount *account);
0de4f569ccf3 Add the ability to join channels to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42325
diff changeset
365
0de4f569ccf3 Add the ability to join channels to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42325
diff changeset
366 /**
0de4f569ccf3 Add the ability to join channels to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42325
diff changeset
367 * purple_protocol_conversation_join_channel_async:
0de4f569ccf3 Add the ability to join channels to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42325
diff changeset
368 * @protocol: The instance.
0de4f569ccf3 Add the ability to join channels to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42325
diff changeset
369 * @account: The account that's joining the channel.
0de4f569ccf3 Add the ability to join channels to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42325
diff changeset
370 * @details: The details of the channel that's being joined.
0de4f569ccf3 Add the ability to join channels to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42325
diff changeset
371 * @cancellable: (nullable): optional GCancellable object, %NULL to ignore.
0de4f569ccf3 Add the ability to join channels to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42325
diff changeset
372 * @callback: (nullable) (scope async): The callback to call after the message
0de4f569ccf3 Add the ability to join channels to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42325
diff changeset
373 * has been sent.
0de4f569ccf3 Add the ability to join channels to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42325
diff changeset
374 * @data: (nullable): Optional user data to pass to @callback.
0de4f569ccf3 Add the ability to join channels to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42325
diff changeset
375 *
0de4f569ccf3 Add the ability to join channels to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42325
diff changeset
376 * Attempts to join the channel identified by @details using @account.
0de4f569ccf3 Add the ability to join channels to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42325
diff changeset
377 *
0de4f569ccf3 Add the ability to join channels to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42325
diff changeset
378 * If the channel is joined successfully, it is the responsibility of
0de4f569ccf3 Add the ability to join channels to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42325
diff changeset
379 * @protocol to add the conversation to the [class@ConversationManager] during
0de4f569ccf3 Add the ability to join channels to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42325
diff changeset
380 * this process.
0de4f569ccf3 Add the ability to join channels to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42325
diff changeset
381 *
42615
2f3308794a8f Remove the micro version from since tags for libpurple part 4
Gary Kramlich <grim@reaperworld.com>
parents: 42594
diff changeset
382 * Since: 3.0
42332
0de4f569ccf3 Add the ability to join channels to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42325
diff changeset
383 */
42387
d9350cda1556 Export symbols added for 3.0.0
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents: 42368
diff changeset
384 PURPLE_AVAILABLE_IN_3_0
42332
0de4f569ccf3 Add the ability to join channels to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42325
diff changeset
385 void purple_protocol_conversation_join_channel_async(PurpleProtocolConversation *protocol, PurpleAccount *account, PurpleChannelJoinDetails *details, GCancellable *cancellable, GAsyncReadyCallback callback, gpointer data);
0de4f569ccf3 Add the ability to join channels to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42325
diff changeset
386
0de4f569ccf3 Add the ability to join channels to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42325
diff changeset
387 /**
0de4f569ccf3 Add the ability to join channels to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42325
diff changeset
388 * purple_protocol_conversation_join_channel_finish:
0de4f569ccf3 Add the ability to join channels to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42325
diff changeset
389 * @protocol: The instance.
0de4f569ccf3 Add the ability to join channels to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42325
diff changeset
390 * @result: The [iface@Gio.AsyncResult] from the previous
0de4f569ccf3 Add the ability to join channels to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42325
diff changeset
391 * [method@ProtocolConversation.join_channel_async] call.
0de4f569ccf3 Add the ability to join channels to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42325
diff changeset
392 * @error: Return address for a #GError, or %NULL.
0de4f569ccf3 Add the ability to join channels to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42325
diff changeset
393 *
0de4f569ccf3 Add the ability to join channels to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42325
diff changeset
394 * Finishes a previous call to
0de4f569ccf3 Add the ability to join channels to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42325
diff changeset
395 * [method@ProtocolConversation.join_channel_async]. This should be called from
0de4f569ccf3 Add the ability to join channels to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42325
diff changeset
396 * the callback of that function to get the result of whether or not the
0de4f569ccf3 Add the ability to join channels to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42325
diff changeset
397 * channel was joined successfully.
0de4f569ccf3 Add the ability to join channels to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42325
diff changeset
398 *
43235
42e7b89033fe Make Purple.ProtocolConversation.join_channel_finish return a conversation
Gary Kramlich <grim@reaperworld.com>
parents: 43136
diff changeset
399 * Returns: (transfer full) (nullable): The conversation if one was joined,
42e7b89033fe Make Purple.ProtocolConversation.join_channel_finish return a conversation
Gary Kramlich <grim@reaperworld.com>
parents: 43136
diff changeset
400 * otherwise %NULL with @error possibly set.
42332
0de4f569ccf3 Add the ability to join channels to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42325
diff changeset
401 *
42615
2f3308794a8f Remove the micro version from since tags for libpurple part 4
Gary Kramlich <grim@reaperworld.com>
parents: 42594
diff changeset
402 * Since: 3.0
42332
0de4f569ccf3 Add the ability to join channels to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42325
diff changeset
403 */
42387
d9350cda1556 Export symbols added for 3.0.0
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents: 42368
diff changeset
404 PURPLE_AVAILABLE_IN_3_0
43235
42e7b89033fe Make Purple.ProtocolConversation.join_channel_finish return a conversation
Gary Kramlich <grim@reaperworld.com>
parents: 43136
diff changeset
405 PurpleConversation *purple_protocol_conversation_join_channel_finish(PurpleProtocolConversation *protocol, GAsyncResult *result, GError **error);
42332
0de4f569ccf3 Add the ability to join channels to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42325
diff changeset
406
42354
b5caf6b7705a Add set_avatar_async and set_avatar_finish to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42344
diff changeset
407 /**
43136
36eba703e2b9 Add some additional methods to Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 43104
diff changeset
408 * purple_protocol_conversation_implements_set_avatar:
36eba703e2b9 Add some additional methods to Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 43104
diff changeset
409 * @protocol: the instance
36eba703e2b9 Add some additional methods to Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 43104
diff changeset
410 *
36eba703e2b9 Add some additional methods to Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 43104
diff changeset
411 * Checks if a protocol implements setting avatars.
36eba703e2b9 Add some additional methods to Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 43104
diff changeset
412 *
36eba703e2b9 Add some additional methods to Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 43104
diff changeset
413 * Checks if @protocol implements
36eba703e2b9 Add some additional methods to Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 43104
diff changeset
414 * [vfunc@ProtocolConversation.set_avatar_async] and
36eba703e2b9 Add some additional methods to Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 43104
diff changeset
415 * [vfunc@ProtocolConversation.set_avatar_finish].
36eba703e2b9 Add some additional methods to Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 43104
diff changeset
416 *
36eba703e2b9 Add some additional methods to Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 43104
diff changeset
417 * Returns: true if everything is implemented; otherwise false.
36eba703e2b9 Add some additional methods to Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 43104
diff changeset
418 *
36eba703e2b9 Add some additional methods to Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 43104
diff changeset
419 * Since: 3.0
36eba703e2b9 Add some additional methods to Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 43104
diff changeset
420 */
36eba703e2b9 Add some additional methods to Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 43104
diff changeset
421 PURPLE_AVAILABLE_IN_3_0
36eba703e2b9 Add some additional methods to Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 43104
diff changeset
422 gboolean purple_protocol_conversation_implements_set_avatar(PurpleProtocolConversation *protocol);
36eba703e2b9 Add some additional methods to Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 43104
diff changeset
423
36eba703e2b9 Add some additional methods to Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 43104
diff changeset
424 /**
42354
b5caf6b7705a Add set_avatar_async and set_avatar_finish to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42344
diff changeset
425 * purple_protocol_conversation_set_avatar_async:
b5caf6b7705a Add set_avatar_async and set_avatar_finish to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42344
diff changeset
426 * @protocol: The instance.
b5caf6b7705a Add set_avatar_async and set_avatar_finish to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42344
diff changeset
427 * @conversation: The conversation instance.
b5caf6b7705a Add set_avatar_async and set_avatar_finish to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42344
diff changeset
428 * @avatar: (nullable): The new avatar.
b5caf6b7705a Add set_avatar_async and set_avatar_finish to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42344
diff changeset
429 * @cancellable: (nullable): optional GCancellable object, %NULL to ignore.
b5caf6b7705a Add set_avatar_async and set_avatar_finish to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42344
diff changeset
430 * @callback: (nullable) (scope async): The callback to call after the message
b5caf6b7705a Add set_avatar_async and set_avatar_finish to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42344
diff changeset
431 * has been sent.
b5caf6b7705a Add set_avatar_async and set_avatar_finish to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42344
diff changeset
432 * @data: (nullable): Optional user data to pass to @callback.
b5caf6b7705a Add set_avatar_async and set_avatar_finish to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42344
diff changeset
433 *
b5caf6b7705a Add set_avatar_async and set_avatar_finish to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42344
diff changeset
434 * Sets the avatar for @conversation to @pixbuf. Pass %NULL to clear the
b5caf6b7705a Add set_avatar_async and set_avatar_finish to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42344
diff changeset
435 * current avatar.
b5caf6b7705a Add set_avatar_async and set_avatar_finish to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42344
diff changeset
436 *
42615
2f3308794a8f Remove the micro version from since tags for libpurple part 4
Gary Kramlich <grim@reaperworld.com>
parents: 42594
diff changeset
437 * Since: 3.0
42354
b5caf6b7705a Add set_avatar_async and set_avatar_finish to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42344
diff changeset
438 */
42387
d9350cda1556 Export symbols added for 3.0.0
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents: 42368
diff changeset
439 PURPLE_AVAILABLE_IN_3_0
42354
b5caf6b7705a Add set_avatar_async and set_avatar_finish to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42344
diff changeset
440 void purple_protocol_conversation_set_avatar_async(PurpleProtocolConversation *protocol, PurpleConversation *conversation, PurpleAvatar *avatar, GCancellable *cancellable, GAsyncReadyCallback callback, gpointer data);
b5caf6b7705a Add set_avatar_async and set_avatar_finish to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42344
diff changeset
441
b5caf6b7705a Add set_avatar_async and set_avatar_finish to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42344
diff changeset
442 /**
b5caf6b7705a Add set_avatar_async and set_avatar_finish to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42344
diff changeset
443 * purple_protocol_conversation_set_avatar_finish:
b5caf6b7705a Add set_avatar_async and set_avatar_finish to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42344
diff changeset
444 * @protocol: The instance.
b5caf6b7705a Add set_avatar_async and set_avatar_finish to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42344
diff changeset
445 * @result: The [iface@Gio.AsyncResult] from the previous
b5caf6b7705a Add set_avatar_async and set_avatar_finish to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42344
diff changeset
446 * [method@ProtocolConversation.set_avatar_async] call.
b5caf6b7705a Add set_avatar_async and set_avatar_finish to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42344
diff changeset
447 * @error: Return address for a #GError, or %NULL.
b5caf6b7705a Add set_avatar_async and set_avatar_finish to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42344
diff changeset
448 *
b5caf6b7705a Add set_avatar_async and set_avatar_finish to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42344
diff changeset
449 * Finishes a previous call to
b5caf6b7705a Add set_avatar_async and set_avatar_finish to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42344
diff changeset
450 * [method@ProtocolConversation.set_avatar_async]. This should be called from
b5caf6b7705a Add set_avatar_async and set_avatar_finish to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42344
diff changeset
451 * the callback of that function to get the result of whether or not the
b5caf6b7705a Add set_avatar_async and set_avatar_finish to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42344
diff changeset
452 * avatar was set successfully.
b5caf6b7705a Add set_avatar_async and set_avatar_finish to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42344
diff changeset
453 *
b5caf6b7705a Add set_avatar_async and set_avatar_finish to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42344
diff changeset
454 * Returns: %TRUE if the avatar was set successfully, otherwise %FALSE with
b5caf6b7705a Add set_avatar_async and set_avatar_finish to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42344
diff changeset
455 * @error possibly set.
b5caf6b7705a Add set_avatar_async and set_avatar_finish to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42344
diff changeset
456 *
42615
2f3308794a8f Remove the micro version from since tags for libpurple part 4
Gary Kramlich <grim@reaperworld.com>
parents: 42594
diff changeset
457 * Since: 3.0
42354
b5caf6b7705a Add set_avatar_async and set_avatar_finish to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42344
diff changeset
458 */
42387
d9350cda1556 Export symbols added for 3.0.0
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents: 42368
diff changeset
459 PURPLE_AVAILABLE_IN_3_0
42354
b5caf6b7705a Add set_avatar_async and set_avatar_finish to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42344
diff changeset
460 gboolean purple_protocol_conversation_set_avatar_finish(PurpleProtocolConversation *protocol, GAsyncResult *result, GError **error);
b5caf6b7705a Add set_avatar_async and set_avatar_finish to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42344
diff changeset
461
42368
2630a8a2d64d Add a send_typing vfunc to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42354
diff changeset
462 /**
42884
5a7d425c9d1b Add a typing-state property to Purple.Conversation
Gary Kramlich <grim@reaperworld.com>
parents: 42778
diff changeset
463 * purple_protocol_conversation_implements_send_typing:
5a7d425c9d1b Add a typing-state property to Purple.Conversation
Gary Kramlich <grim@reaperworld.com>
parents: 42778
diff changeset
464 * @protocol: The instance.
5a7d425c9d1b Add a typing-state property to Purple.Conversation
Gary Kramlich <grim@reaperworld.com>
parents: 42778
diff changeset
465 *
5a7d425c9d1b Add a typing-state property to Purple.Conversation
Gary Kramlich <grim@reaperworld.com>
parents: 42778
diff changeset
466 * Checks if @protocol implements [vfunc@ProtocolConversation.send_typing].
5a7d425c9d1b Add a typing-state property to Purple.Conversation
Gary Kramlich <grim@reaperworld.com>
parents: 42778
diff changeset
467 *
5a7d425c9d1b Add a typing-state property to Purple.Conversation
Gary Kramlich <grim@reaperworld.com>
parents: 42778
diff changeset
468 * Returns: %TRUE if everything is implemented, otherwise %FALSE.
5a7d425c9d1b Add a typing-state property to Purple.Conversation
Gary Kramlich <grim@reaperworld.com>
parents: 42778
diff changeset
469 *
5a7d425c9d1b Add a typing-state property to Purple.Conversation
Gary Kramlich <grim@reaperworld.com>
parents: 42778
diff changeset
470 * Since: 3.0
5a7d425c9d1b Add a typing-state property to Purple.Conversation
Gary Kramlich <grim@reaperworld.com>
parents: 42778
diff changeset
471 */
5a7d425c9d1b Add a typing-state property to Purple.Conversation
Gary Kramlich <grim@reaperworld.com>
parents: 42778
diff changeset
472 PURPLE_AVAILABLE_IN_3_0
5a7d425c9d1b Add a typing-state property to Purple.Conversation
Gary Kramlich <grim@reaperworld.com>
parents: 42778
diff changeset
473 gboolean purple_protocol_conversation_implements_send_typing(PurpleProtocolConversation *protocol);
5a7d425c9d1b Add a typing-state property to Purple.Conversation
Gary Kramlich <grim@reaperworld.com>
parents: 42778
diff changeset
474
5a7d425c9d1b Add a typing-state property to Purple.Conversation
Gary Kramlich <grim@reaperworld.com>
parents: 42778
diff changeset
475 /**
42656
df9aafbae930 Add a doc-check unit test to libpurple and fix the issues it has found
Gary Kramlich <grim@reaperworld.com>
parents: 42615
diff changeset
476 * purple_protocol_conversation_send_typing:
42368
2630a8a2d64d Add a send_typing vfunc to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42354
diff changeset
477 * @protocol: The instance.
2630a8a2d64d Add a send_typing vfunc to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42354
diff changeset
478 * @conversation: The conversation.
2630a8a2d64d Add a send_typing vfunc to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42354
diff changeset
479 * @state: The new typing state.
2630a8a2d64d Add a send_typing vfunc to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42354
diff changeset
480 *
2630a8a2d64d Add a send_typing vfunc to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42354
diff changeset
481 * Sends the libpurple user's typing state for the conversation.
2630a8a2d64d Add a send_typing vfunc to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42354
diff changeset
482 *
2630a8a2d64d Add a send_typing vfunc to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42354
diff changeset
483 * This should primarily be called by the user interface.
2630a8a2d64d Add a send_typing vfunc to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42354
diff changeset
484 *
42615
2f3308794a8f Remove the micro version from since tags for libpurple part 4
Gary Kramlich <grim@reaperworld.com>
parents: 42594
diff changeset
485 * Since: 3.0
42368
2630a8a2d64d Add a send_typing vfunc to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42354
diff changeset
486 */
42387
d9350cda1556 Export symbols added for 3.0.0
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents: 42368
diff changeset
487 PURPLE_AVAILABLE_IN_3_0
42368
2630a8a2d64d Add a send_typing vfunc to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42354
diff changeset
488 void purple_protocol_conversation_send_typing(PurpleProtocolConversation *protocol, PurpleConversation *conversation, PurpleTypingState state);
2630a8a2d64d Add a send_typing vfunc to PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 42354
diff changeset
489
43104
f87ae4effec7 Add Purple.ProtocolConversation.refresh
Gary Kramlich <grim@reaperworld.com>
parents: 43056
diff changeset
490 /**
f87ae4effec7 Add Purple.ProtocolConversation.refresh
Gary Kramlich <grim@reaperworld.com>
parents: 43056
diff changeset
491 * purple_protocol_conversation_implements_refresh:
f87ae4effec7 Add Purple.ProtocolConversation.refresh
Gary Kramlich <grim@reaperworld.com>
parents: 43056
diff changeset
492 *
f87ae4effec7 Add Purple.ProtocolConversation.refresh
Gary Kramlich <grim@reaperworld.com>
parents: 43056
diff changeset
493 * Checks if @protocol implements [vfunc@ProtocolConversation.refresh].
f87ae4effec7 Add Purple.ProtocolConversation.refresh
Gary Kramlich <grim@reaperworld.com>
parents: 43056
diff changeset
494 *
f87ae4effec7 Add Purple.ProtocolConversation.refresh
Gary Kramlich <grim@reaperworld.com>
parents: 43056
diff changeset
495 * Returns: true if everything is implemented; false otherwise.
f87ae4effec7 Add Purple.ProtocolConversation.refresh
Gary Kramlich <grim@reaperworld.com>
parents: 43056
diff changeset
496 *
f87ae4effec7 Add Purple.ProtocolConversation.refresh
Gary Kramlich <grim@reaperworld.com>
parents: 43056
diff changeset
497 * Since: 3.0
f87ae4effec7 Add Purple.ProtocolConversation.refresh
Gary Kramlich <grim@reaperworld.com>
parents: 43056
diff changeset
498 */
f87ae4effec7 Add Purple.ProtocolConversation.refresh
Gary Kramlich <grim@reaperworld.com>
parents: 43056
diff changeset
499 PURPLE_AVAILABLE_IN_3_0
f87ae4effec7 Add Purple.ProtocolConversation.refresh
Gary Kramlich <grim@reaperworld.com>
parents: 43056
diff changeset
500 gboolean purple_protocol_conversation_implements_refresh(PurpleProtocolConversation *protocol);
f87ae4effec7 Add Purple.ProtocolConversation.refresh
Gary Kramlich <grim@reaperworld.com>
parents: 43056
diff changeset
501
f87ae4effec7 Add Purple.ProtocolConversation.refresh
Gary Kramlich <grim@reaperworld.com>
parents: 43056
diff changeset
502 /**
f87ae4effec7 Add Purple.ProtocolConversation.refresh
Gary Kramlich <grim@reaperworld.com>
parents: 43056
diff changeset
503 * purple_protocol_conversation_refresh:
f87ae4effec7 Add Purple.ProtocolConversation.refresh
Gary Kramlich <grim@reaperworld.com>
parents: 43056
diff changeset
504 * @conversation: the conversation
f87ae4effec7 Add Purple.ProtocolConversation.refresh
Gary Kramlich <grim@reaperworld.com>
parents: 43056
diff changeset
505 *
f87ae4effec7 Add Purple.ProtocolConversation.refresh
Gary Kramlich <grim@reaperworld.com>
parents: 43056
diff changeset
506 * Asks the protocol to refresh a conversation.
f87ae4effec7 Add Purple.ProtocolConversation.refresh
Gary Kramlich <grim@reaperworld.com>
parents: 43056
diff changeset
507 *
f87ae4effec7 Add Purple.ProtocolConversation.refresh
Gary Kramlich <grim@reaperworld.com>
parents: 43056
diff changeset
508 * A conversation could need to be refreshed for any number of reasons, but the
f87ae4effec7 Add Purple.ProtocolConversation.refresh
Gary Kramlich <grim@reaperworld.com>
parents: 43056
diff changeset
509 * primary case is to help restore conversations when user interfaces restart.
f87ae4effec7 Add Purple.ProtocolConversation.refresh
Gary Kramlich <grim@reaperworld.com>
parents: 43056
diff changeset
510 *
f87ae4effec7 Add Purple.ProtocolConversation.refresh
Gary Kramlich <grim@reaperworld.com>
parents: 43056
diff changeset
511 * This allows the user interface to recreate a conversation and then have the
f87ae4effec7 Add Purple.ProtocolConversation.refresh
Gary Kramlich <grim@reaperworld.com>
parents: 43056
diff changeset
512 * protocol do whatever is necessary to bring the conversation back up to date
f87ae4effec7 Add Purple.ProtocolConversation.refresh
Gary Kramlich <grim@reaperworld.com>
parents: 43056
diff changeset
513 * and online.
f87ae4effec7 Add Purple.ProtocolConversation.refresh
Gary Kramlich <grim@reaperworld.com>
parents: 43056
diff changeset
514 *
f87ae4effec7 Add Purple.ProtocolConversation.refresh
Gary Kramlich <grim@reaperworld.com>
parents: 43056
diff changeset
515 * Since: 3.0
f87ae4effec7 Add Purple.ProtocolConversation.refresh
Gary Kramlich <grim@reaperworld.com>
parents: 43056
diff changeset
516 */
f87ae4effec7 Add Purple.ProtocolConversation.refresh
Gary Kramlich <grim@reaperworld.com>
parents: 43056
diff changeset
517 PURPLE_AVAILABLE_IN_3_0
f87ae4effec7 Add Purple.ProtocolConversation.refresh
Gary Kramlich <grim@reaperworld.com>
parents: 43056
diff changeset
518 void purple_protocol_conversation_refresh(PurpleProtocolConversation *protocol, PurpleConversation *conversation);
f87ae4effec7 Add Purple.ProtocolConversation.refresh
Gary Kramlich <grim@reaperworld.com>
parents: 43056
diff changeset
519
43136
36eba703e2b9 Add some additional methods to Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 43104
diff changeset
520 /**
36eba703e2b9 Add some additional methods to Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 43104
diff changeset
521 * purple_protocol_conversation_implements_set_title:
36eba703e2b9 Add some additional methods to Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 43104
diff changeset
522 * @protocol: The instance.
36eba703e2b9 Add some additional methods to Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 43104
diff changeset
523 *
36eba703e2b9 Add some additional methods to Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 43104
diff changeset
524 * Checks if a protocol implements setting conversation titles.
36eba703e2b9 Add some additional methods to Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 43104
diff changeset
525 *
36eba703e2b9 Add some additional methods to Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 43104
diff changeset
526 * Checks if @protocol implements [vfunc@ProtocolConversation.set_title_async]
36eba703e2b9 Add some additional methods to Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 43104
diff changeset
527 * and [vfunc@ProtocolConversation.set_title_finish].
36eba703e2b9 Add some additional methods to Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 43104
diff changeset
528 *
36eba703e2b9 Add some additional methods to Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 43104
diff changeset
529 * Returns: true if everything is implemented; otherwise false.
36eba703e2b9 Add some additional methods to Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 43104
diff changeset
530 *
36eba703e2b9 Add some additional methods to Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 43104
diff changeset
531 * Since: 3.0
36eba703e2b9 Add some additional methods to Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 43104
diff changeset
532 */
36eba703e2b9 Add some additional methods to Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 43104
diff changeset
533 PURPLE_AVAILABLE_IN_3_0
36eba703e2b9 Add some additional methods to Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 43104
diff changeset
534 gboolean purple_protocol_conversation_implements_set_title(PurpleProtocolConversation *protocol);
36eba703e2b9 Add some additional methods to Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 43104
diff changeset
535
36eba703e2b9 Add some additional methods to Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 43104
diff changeset
536 /**
36eba703e2b9 Add some additional methods to Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 43104
diff changeset
537 * purple_protocol_conversation_set_title_async:
36eba703e2b9 Add some additional methods to Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 43104
diff changeset
538 * @protocol: the instance
36eba703e2b9 Add some additional methods to Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 43104
diff changeset
539 * @conversation: the conversation instance
36eba703e2b9 Add some additional methods to Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 43104
diff changeset
540 * @title: (nullable): the new title
36eba703e2b9 Add some additional methods to Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 43104
diff changeset
541 * @cancellable: (nullable): optional GCancellable object
36eba703e2b9 Add some additional methods to Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 43104
diff changeset
542 * @callback: (nullable) (scope async): callback to call after the title has
36eba703e2b9 Add some additional methods to Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 43104
diff changeset
543 * been set
36eba703e2b9 Add some additional methods to Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 43104
diff changeset
544 * @data: (nullable): optional user data to pass to @callback.
36eba703e2b9 Add some additional methods to Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 43104
diff changeset
545 *
36eba703e2b9 Add some additional methods to Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 43104
diff changeset
546 * Sets the title of a conversation.
36eba703e2b9 Add some additional methods to Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 43104
diff changeset
547 *
36eba703e2b9 Add some additional methods to Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 43104
diff changeset
548 * Since: 3.0
36eba703e2b9 Add some additional methods to Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 43104
diff changeset
549 */
36eba703e2b9 Add some additional methods to Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 43104
diff changeset
550 PURPLE_AVAILABLE_IN_3_0
36eba703e2b9 Add some additional methods to Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 43104
diff changeset
551 void purple_protocol_conversation_set_title_async(PurpleProtocolConversation *protocol, PurpleConversation *conversation, const char *title, GCancellable *cancellable, GAsyncReadyCallback callback, gpointer data);
36eba703e2b9 Add some additional methods to Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 43104
diff changeset
552
36eba703e2b9 Add some additional methods to Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 43104
diff changeset
553 /**
36eba703e2b9 Add some additional methods to Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 43104
diff changeset
554 * purple_protocol_conversation_set_title_finish:
36eba703e2b9 Add some additional methods to Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 43104
diff changeset
555 * @protocol: the instance
36eba703e2b9 Add some additional methods to Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 43104
diff changeset
556 * @result: the [iface@Gio.AsyncResult] from the previous
36eba703e2b9 Add some additional methods to Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 43104
diff changeset
557 * [method@ProtocolConversation.set_title_async] call
36eba703e2b9 Add some additional methods to Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 43104
diff changeset
558 * @error: Return address for a #GError, or %NULL
36eba703e2b9 Add some additional methods to Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 43104
diff changeset
559 *
36eba703e2b9 Add some additional methods to Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 43104
diff changeset
560 * Finishes a previous call to
36eba703e2b9 Add some additional methods to Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 43104
diff changeset
561 * [method@ProtocolConversation.set_title_async]. This should be called from
36eba703e2b9 Add some additional methods to Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 43104
diff changeset
562 * the callback of that function to get the result of whether or not the title
36eba703e2b9 Add some additional methods to Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 43104
diff changeset
563 * was set successfully.
36eba703e2b9 Add some additional methods to Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 43104
diff changeset
564 *
36eba703e2b9 Add some additional methods to Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 43104
diff changeset
565 * Returns: true if the title was set successfully, otherwise false with
36eba703e2b9 Add some additional methods to Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 43104
diff changeset
566 * @error possibly set.
36eba703e2b9 Add some additional methods to Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 43104
diff changeset
567 *
36eba703e2b9 Add some additional methods to Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 43104
diff changeset
568 * Since: 3.0
36eba703e2b9 Add some additional methods to Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 43104
diff changeset
569 */
36eba703e2b9 Add some additional methods to Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 43104
diff changeset
570 PURPLE_AVAILABLE_IN_3_0
36eba703e2b9 Add some additional methods to Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 43104
diff changeset
571 gboolean purple_protocol_conversation_set_title_finish(PurpleProtocolConversation *protocol, GAsyncResult *result, GError **error);
36eba703e2b9 Add some additional methods to Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 43104
diff changeset
572
36eba703e2b9 Add some additional methods to Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 43104
diff changeset
573 /**
36eba703e2b9 Add some additional methods to Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 43104
diff changeset
574 * purple_protocol_conversation_implements_set_description:
36eba703e2b9 Add some additional methods to Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 43104
diff changeset
575 * @protocol: The instance.
36eba703e2b9 Add some additional methods to Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 43104
diff changeset
576 *
36eba703e2b9 Add some additional methods to Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 43104
diff changeset
577 * Checks if a protocol implements setting the description of conversations.
36eba703e2b9 Add some additional methods to Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 43104
diff changeset
578 *
36eba703e2b9 Add some additional methods to Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 43104
diff changeset
579 * Checks if @protocol implements
36eba703e2b9 Add some additional methods to Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 43104
diff changeset
580 * [vfunc@ProtocolConversation.set_description_async] and
36eba703e2b9 Add some additional methods to Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 43104
diff changeset
581 * [vfunc@ProtocolConversation.set_description_finish].
36eba703e2b9 Add some additional methods to Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 43104
diff changeset
582 *
36eba703e2b9 Add some additional methods to Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 43104
diff changeset
583 * Returns: true if everything is implemented; otherwise false.
36eba703e2b9 Add some additional methods to Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 43104
diff changeset
584 *
36eba703e2b9 Add some additional methods to Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 43104
diff changeset
585 * Since: 3.0
36eba703e2b9 Add some additional methods to Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 43104
diff changeset
586 */
36eba703e2b9 Add some additional methods to Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 43104
diff changeset
587 PURPLE_AVAILABLE_IN_3_0
36eba703e2b9 Add some additional methods to Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 43104
diff changeset
588 gboolean purple_protocol_conversation_implements_set_description(PurpleProtocolConversation *protocol);
36eba703e2b9 Add some additional methods to Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 43104
diff changeset
589
36eba703e2b9 Add some additional methods to Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 43104
diff changeset
590 /**
36eba703e2b9 Add some additional methods to Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 43104
diff changeset
591 * purple_protocol_conversation_set_description_async:
36eba703e2b9 Add some additional methods to Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 43104
diff changeset
592 * @protocol: the instance
36eba703e2b9 Add some additional methods to Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 43104
diff changeset
593 * @conversation: the conversation instance
36eba703e2b9 Add some additional methods to Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 43104
diff changeset
594 * @description: (nullable): the new description
36eba703e2b9 Add some additional methods to Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 43104
diff changeset
595 * @cancellable: (nullable): optional GCancellable object
36eba703e2b9 Add some additional methods to Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 43104
diff changeset
596 * @callback: (nullable) (scope async): callback to call after the description
36eba703e2b9 Add some additional methods to Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 43104
diff changeset
597 * has been set
36eba703e2b9 Add some additional methods to Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 43104
diff changeset
598 * @data: (nullable): optional user data to pass to @callback.
36eba703e2b9 Add some additional methods to Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 43104
diff changeset
599 *
36eba703e2b9 Add some additional methods to Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 43104
diff changeset
600 * Sets the description of a conversation.
36eba703e2b9 Add some additional methods to Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 43104
diff changeset
601 *
36eba703e2b9 Add some additional methods to Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 43104
diff changeset
602 * Since: 3.0
36eba703e2b9 Add some additional methods to Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 43104
diff changeset
603 */
36eba703e2b9 Add some additional methods to Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 43104
diff changeset
604 PURPLE_AVAILABLE_IN_3_0
36eba703e2b9 Add some additional methods to Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 43104
diff changeset
605 void purple_protocol_conversation_set_description_async(PurpleProtocolConversation *protocol, PurpleConversation *conversation, const char *description, GCancellable *cancellable, GAsyncReadyCallback callback, gpointer data);
36eba703e2b9 Add some additional methods to Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 43104
diff changeset
606
36eba703e2b9 Add some additional methods to Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 43104
diff changeset
607 /**
36eba703e2b9 Add some additional methods to Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 43104
diff changeset
608 * purple_protocol_conversation_set_description_finish:
36eba703e2b9 Add some additional methods to Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 43104
diff changeset
609 * @protocol: the instance
36eba703e2b9 Add some additional methods to Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 43104
diff changeset
610 * @result: the [iface@Gio.AsyncResult] from the previous
36eba703e2b9 Add some additional methods to Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 43104
diff changeset
611 * [method@ProtocolConversation.set_description_async] call
36eba703e2b9 Add some additional methods to Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 43104
diff changeset
612 * @error: Return address for a #GError, or %NULL
36eba703e2b9 Add some additional methods to Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 43104
diff changeset
613 *
36eba703e2b9 Add some additional methods to Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 43104
diff changeset
614 * Finishes a previous call to
36eba703e2b9 Add some additional methods to Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 43104
diff changeset
615 * [method@ProtocolConversation.set_description_async]. This should be called
36eba703e2b9 Add some additional methods to Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 43104
diff changeset
616 * from the callback of that function to get the result of whether or not the
36eba703e2b9 Add some additional methods to Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 43104
diff changeset
617 * description was set successfully.
36eba703e2b9 Add some additional methods to Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 43104
diff changeset
618 *
36eba703e2b9 Add some additional methods to Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 43104
diff changeset
619 * Returns: true if the description was set successfully, otherwise false with
36eba703e2b9 Add some additional methods to Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 43104
diff changeset
620 * @error possibly set.
36eba703e2b9 Add some additional methods to Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 43104
diff changeset
621 *
36eba703e2b9 Add some additional methods to Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 43104
diff changeset
622 * Since: 3.0
36eba703e2b9 Add some additional methods to Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 43104
diff changeset
623 */
36eba703e2b9 Add some additional methods to Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 43104
diff changeset
624 PURPLE_AVAILABLE_IN_3_0
36eba703e2b9 Add some additional methods to Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 43104
diff changeset
625 gboolean purple_protocol_conversation_set_description_finish(PurpleProtocolConversation *protocol, GAsyncResult *result, GError **error);
36eba703e2b9 Add some additional methods to Purple.ProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents: 43104
diff changeset
626
42319
98931e2d3ca2 Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
627 G_END_DECLS
98931e2d3ca2 Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
628
98931e2d3ca2 Create the initial PurpleProtocolConversation
Gary Kramlich <grim@reaperworld.com>
parents:
diff changeset
629 #endif /* PURPLE_PROTOCOL_CONVERSATION_H */

mercurial