libpurple/purplechatconversation.h

Fri, 20 Oct 2023 01:09:45 -0500

author
Gary Kramlich <grim@reaperworld.com>
date
Fri, 20 Oct 2023 01:09:45 -0500
changeset 42375
8e61249e9b10
parent 42313
54c80ed7364b
child 42391
090b03385984
permissions
-rw-r--r--

Implement ProtocolFileTransfer

Testing Done:
Ran the unit tests under valgrind.

Bugs closed: PIDGIN-17833

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

40838
73407e00ec5d Modernizing PurpleChatConversation.
Gary Kramlich <grim@reaperworld.com>
parents: 40517
diff changeset
1 /*
73407e00ec5d Modernizing PurpleChatConversation.
Gary Kramlich <grim@reaperworld.com>
parents: 40517
diff changeset
2 * purple
73407e00ec5d Modernizing PurpleChatConversation.
Gary Kramlich <grim@reaperworld.com>
parents: 40517
diff changeset
3 * Copyright (C) Pidgin Developers <devel@pidgin.im>
34602
dbe6ee43aaa7 Created conversationtypes.[ch] for PurpleChatConversation and PurpleIMConversation
Ankit Vani <a@nevitus.org>
parents:
diff changeset
4 *
dbe6ee43aaa7 Created conversationtypes.[ch] for PurpleChatConversation and PurpleIMConversation
Ankit Vani <a@nevitus.org>
parents:
diff changeset
5 * Purple is the legal property of its developers, whose names are too numerous
dbe6ee43aaa7 Created conversationtypes.[ch] for PurpleChatConversation and PurpleIMConversation
Ankit Vani <a@nevitus.org>
parents:
diff changeset
6 * to list here. Please refer to the COPYRIGHT file distributed with this
dbe6ee43aaa7 Created conversationtypes.[ch] for PurpleChatConversation and PurpleIMConversation
Ankit Vani <a@nevitus.org>
parents:
diff changeset
7 * source distribution.
dbe6ee43aaa7 Created conversationtypes.[ch] for PurpleChatConversation and PurpleIMConversation
Ankit Vani <a@nevitus.org>
parents:
diff changeset
8 *
dbe6ee43aaa7 Created conversationtypes.[ch] for PurpleChatConversation and PurpleIMConversation
Ankit Vani <a@nevitus.org>
parents:
diff changeset
9 * This program is free software; you can redistribute it and/or modify
dbe6ee43aaa7 Created conversationtypes.[ch] for PurpleChatConversation and PurpleIMConversation
Ankit Vani <a@nevitus.org>
parents:
diff changeset
10 * it under the terms of the GNU General Public License as published by
dbe6ee43aaa7 Created conversationtypes.[ch] for PurpleChatConversation and PurpleIMConversation
Ankit Vani <a@nevitus.org>
parents:
diff changeset
11 * the Free Software Foundation; either version 2 of the License, or
dbe6ee43aaa7 Created conversationtypes.[ch] for PurpleChatConversation and PurpleIMConversation
Ankit Vani <a@nevitus.org>
parents:
diff changeset
12 * (at your option) any later version.
dbe6ee43aaa7 Created conversationtypes.[ch] for PurpleChatConversation and PurpleIMConversation
Ankit Vani <a@nevitus.org>
parents:
diff changeset
13 *
dbe6ee43aaa7 Created conversationtypes.[ch] for PurpleChatConversation and PurpleIMConversation
Ankit Vani <a@nevitus.org>
parents:
diff changeset
14 * This program is distributed in the hope that it will be useful,
dbe6ee43aaa7 Created conversationtypes.[ch] for PurpleChatConversation and PurpleIMConversation
Ankit Vani <a@nevitus.org>
parents:
diff changeset
15 * but WITHOUT ANY WARRANTY; without even the implied warranty of
dbe6ee43aaa7 Created conversationtypes.[ch] for PurpleChatConversation and PurpleIMConversation
Ankit Vani <a@nevitus.org>
parents:
diff changeset
16 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
dbe6ee43aaa7 Created conversationtypes.[ch] for PurpleChatConversation and PurpleIMConversation
Ankit Vani <a@nevitus.org>
parents:
diff changeset
17 * GNU General Public License for more details.
dbe6ee43aaa7 Created conversationtypes.[ch] for PurpleChatConversation and PurpleIMConversation
Ankit Vani <a@nevitus.org>
parents:
diff changeset
18 *
dbe6ee43aaa7 Created conversationtypes.[ch] for PurpleChatConversation and PurpleIMConversation
Ankit Vani <a@nevitus.org>
parents:
diff changeset
19 * You should have received a copy of the GNU General Public License
40838
73407e00ec5d Modernizing PurpleChatConversation.
Gary Kramlich <grim@reaperworld.com>
parents: 40517
diff changeset
20 * along with this program; if not, see <https://www.gnu.org/licenses/>.
34602
dbe6ee43aaa7 Created conversationtypes.[ch] for PurpleChatConversation and PurpleIMConversation
Ankit Vani <a@nevitus.org>
parents:
diff changeset
21 */
35487
494f09f7f331 Move section blocks inside inclusion guards -- otherwise g-ir-scanner yells
Ankit Vani <a@nevitus.org>
parents: 35486
diff changeset
22
40474
1341be8e3402 Make it so only libpurple can directly include libpurple header files.
Gary Kramlich <grim@reaperworld.com>
parents: 40215
diff changeset
23 #if !defined(PURPLE_GLOBAL_HEADER_INSIDE) && !defined(PURPLE_COMPILATION)
1341be8e3402 Make it so only libpurple can directly include libpurple header files.
Gary Kramlich <grim@reaperworld.com>
parents: 40215
diff changeset
24 # error "only <purple.h> may be included directly"
1341be8e3402 Make it so only libpurple can directly include libpurple header files.
Gary Kramlich <grim@reaperworld.com>
parents: 40215
diff changeset
25 #endif
1341be8e3402 Make it so only libpurple can directly include libpurple header files.
Gary Kramlich <grim@reaperworld.com>
parents: 40215
diff changeset
26
40838
73407e00ec5d Modernizing PurpleChatConversation.
Gary Kramlich <grim@reaperworld.com>
parents: 40517
diff changeset
27 #ifndef PURPLE_CHAT_CONVERSATION_H
73407e00ec5d Modernizing PurpleChatConversation.
Gary Kramlich <grim@reaperworld.com>
parents: 40517
diff changeset
28 #define PURPLE_CHAT_CONVERSATION_H
40506
cb26b9c6d4d0 Move PurpleIMConversation to its own file
Gary Kramlich <grim@reaperworld.com>
parents: 40474
diff changeset
29
34671
ca9b45be7a63 Renamed chat buddy to chat user in a few more places
Ankit Vani <a@nevitus.org>
parents: 34670
diff changeset
30 #define PURPLE_TYPE_CHAT_CONVERSATION (purple_chat_conversation_get_type())
ca9b45be7a63 Renamed chat buddy to chat user in a few more places
Ankit Vani <a@nevitus.org>
parents: 34670
diff changeset
31 #define PURPLE_CHAT_CONVERSATION(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), PURPLE_TYPE_CHAT_CONVERSATION, PurpleChatConversation))
ca9b45be7a63 Renamed chat buddy to chat user in a few more places
Ankit Vani <a@nevitus.org>
parents: 34670
diff changeset
32 #define PURPLE_CHAT_CONVERSATION_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass), PURPLE_TYPE_CHAT_CONVERSATION, PurpleChatConversationClass))
ca9b45be7a63 Renamed chat buddy to chat user in a few more places
Ankit Vani <a@nevitus.org>
parents: 34670
diff changeset
33 #define PURPLE_IS_CHAT_CONVERSATION(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), PURPLE_TYPE_CHAT_CONVERSATION))
ca9b45be7a63 Renamed chat buddy to chat user in a few more places
Ankit Vani <a@nevitus.org>
parents: 34670
diff changeset
34 #define PURPLE_IS_CHAT_CONVERSATION_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass), PURPLE_TYPE_CHAT_CONVERSATION))
ca9b45be7a63 Renamed chat buddy to chat user in a few more places
Ankit Vani <a@nevitus.org>
parents: 34670
diff changeset
35 #define PURPLE_CHAT_CONVERSATION_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS((obj), PURPLE_TYPE_CHAT_CONVERSATION, PurpleChatConversationClass))
34609
28b0f26f011f Added GObject boilerplate code for headers, also _new() and _get_type() functions.
Ankit Vani <a@nevitus.org>
parents: 34608
diff changeset
36
40838
73407e00ec5d Modernizing PurpleChatConversation.
Gary Kramlich <grim@reaperworld.com>
parents: 40517
diff changeset
37 typedef struct _PurpleChatConversation PurpleChatConversation;
73407e00ec5d Modernizing PurpleChatConversation.
Gary Kramlich <grim@reaperworld.com>
parents: 40517
diff changeset
38 typedef struct _PurpleChatConversationClass PurpleChatConversationClass;
34602
dbe6ee43aaa7 Created conversationtypes.[ch] for PurpleChatConversation and PurpleIMConversation
Ankit Vani <a@nevitus.org>
parents:
diff changeset
39
40517
5211982886af Move PurpleChatUser to it's own file and fix a few issues with the docs and translations
Gary Kramlich <grim@reaperworld.com>
parents: 40506
diff changeset
40 #include "purplechatuser.h"
40853
d3518ff99fa7 rename conversation.[ch] to purpleconversation.[ch] and split PurpleConversationUiOps out to its own file to avoid circular include issues.
Gary Kramlich <grim@reaperworld.com>
parents: 40838
diff changeset
41 #include "purpleconversation.h"
40506
cb26b9c6d4d0 Move PurpleIMConversation to its own file
Gary Kramlich <grim@reaperworld.com>
parents: 40474
diff changeset
42 #include "purpleimconversation.h"
34602
dbe6ee43aaa7 Created conversationtypes.[ch] for PurpleChatConversation and PurpleIMConversation
Ankit Vani <a@nevitus.org>
parents:
diff changeset
43
40838
73407e00ec5d Modernizing PurpleChatConversation.
Gary Kramlich <grim@reaperworld.com>
parents: 40517
diff changeset
44 G_BEGIN_DECLS
73407e00ec5d Modernizing PurpleChatConversation.
Gary Kramlich <grim@reaperworld.com>
parents: 40517
diff changeset
45
35397
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
46 /**
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
47 * PurpleChatConversation:
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
48 *
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
49 * Structure representing a chat conversation instance.
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
50 */
40838
73407e00ec5d Modernizing PurpleChatConversation.
Gary Kramlich <grim@reaperworld.com>
parents: 40517
diff changeset
51 struct _PurpleChatConversation {
34602
dbe6ee43aaa7 Created conversationtypes.[ch] for PurpleChatConversation and PurpleIMConversation
Ankit Vani <a@nevitus.org>
parents:
diff changeset
52 PurpleConversation parent_object;
dbe6ee43aaa7 Created conversationtypes.[ch] for PurpleChatConversation and PurpleIMConversation
Ankit Vani <a@nevitus.org>
parents:
diff changeset
53 };
dbe6ee43aaa7 Created conversationtypes.[ch] for PurpleChatConversation and PurpleIMConversation
Ankit Vani <a@nevitus.org>
parents:
diff changeset
54
35397
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
55 /**
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
56 * PurpleChatConversationClass:
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
57 *
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
58 * Base class for all #PurpleChatConversation's
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
59 */
34602
dbe6ee43aaa7 Created conversationtypes.[ch] for PurpleChatConversation and PurpleIMConversation
Ankit Vani <a@nevitus.org>
parents:
diff changeset
60 struct _PurpleChatConversationClass {
dbe6ee43aaa7 Created conversationtypes.[ch] for PurpleChatConversation and PurpleIMConversation
Ankit Vani <a@nevitus.org>
parents:
diff changeset
61 PurpleConversationClass parent_class;
dbe6ee43aaa7 Created conversationtypes.[ch] for PurpleChatConversation and PurpleIMConversation
Ankit Vani <a@nevitus.org>
parents:
diff changeset
62
35024
eb3afb7643ce Added /*< private >*/ for padding members, clean them up and add missing ones
Ankit Vani <a@nevitus.org>
parents: 35012
diff changeset
63 /*< private >*/
40838
73407e00ec5d Modernizing PurpleChatConversation.
Gary Kramlich <grim@reaperworld.com>
parents: 40517
diff changeset
64 gpointer reserved[4];
34602
dbe6ee43aaa7 Created conversationtypes.[ch] for PurpleChatConversation and PurpleIMConversation
Ankit Vani <a@nevitus.org>
parents:
diff changeset
65 };
dbe6ee43aaa7 Created conversationtypes.[ch] for PurpleChatConversation and PurpleIMConversation
Ankit Vani <a@nevitus.org>
parents:
diff changeset
66
34648
a6587d8cf907 Added missing API implementations to PurpleConversation and subclasses
Ankit Vani <a@nevitus.org>
parents: 34646
diff changeset
67 /**
35397
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
68 * purple_chat_conversation_get_type:
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
69 *
35460
96946e21fce5 Fix some more gtk-doc warnings till dnssrv
Ankit Vani <a@nevitus.org>
parents: 35444
diff changeset
70 * Returns: The #GType for the ChatConversation object.
34609
28b0f26f011f Added GObject boilerplate code for headers, also _new() and _get_type() functions.
Ankit Vani <a@nevitus.org>
parents: 34608
diff changeset
71 */
28b0f26f011f Added GObject boilerplate code for headers, also _new() and _get_type() functions.
Ankit Vani <a@nevitus.org>
parents: 34608
diff changeset
72 GType purple_chat_conversation_get_type(void);
28b0f26f011f Added GObject boilerplate code for headers, also _new() and _get_type() functions.
Ankit Vani <a@nevitus.org>
parents: 34608
diff changeset
73
34648
a6587d8cf907 Added missing API implementations to PurpleConversation and subclasses
Ankit Vani <a@nevitus.org>
parents: 34646
diff changeset
74 /**
35397
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
75 * purple_chat_conversation_new:
40838
73407e00ec5d Modernizing PurpleChatConversation.
Gary Kramlich <grim@reaperworld.com>
parents: 40517
diff changeset
76 * @account: The account opening the conversation window on the purple user's
73407e00ec5d Modernizing PurpleChatConversation.
Gary Kramlich <grim@reaperworld.com>
parents: 40517
diff changeset
77 * end.
73407e00ec5d Modernizing PurpleChatConversation.
Gary Kramlich <grim@reaperworld.com>
parents: 40517
diff changeset
78 * @name: The name of the conversation.
34609
28b0f26f011f Added GObject boilerplate code for headers, also _new() and _get_type() functions.
Ankit Vani <a@nevitus.org>
parents: 34608
diff changeset
79 *
35397
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
80 * Creates a new chat conversation.
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
81 *
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35095
diff changeset
82 * Returns: The new conversation.
34609
28b0f26f011f Added GObject boilerplate code for headers, also _new() and _get_type() functions.
Ankit Vani <a@nevitus.org>
parents: 34608
diff changeset
83 */
40885
87f6241da196 Update purple_conversations_find_* to return PurpleConversations instead of subclasses
Gary Kramlich <grim@reaperworld.com>
parents: 40853
diff changeset
84 PurpleConversation *purple_chat_conversation_new(PurpleAccount *account, const gchar *name);
34609
28b0f26f011f Added GObject boilerplate code for headers, also _new() and _get_type() functions.
Ankit Vani <a@nevitus.org>
parents: 34608
diff changeset
85
34602
dbe6ee43aaa7 Created conversationtypes.[ch] for PurpleChatConversation and PurpleIMConversation
Ankit Vani <a@nevitus.org>
parents:
diff changeset
86 /**
35397
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
87 * purple_chat_conversation_get_users:
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
88 * @chat: The chat.
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
89 *
34602
dbe6ee43aaa7 Created conversationtypes.[ch] for PurpleChatConversation and PurpleIMConversation
Ankit Vani <a@nevitus.org>
parents:
diff changeset
90 * Returns a list of users in the chat room. The members of the list
34670
9bd5bd903dc7 Renamed chat buddies to chat users, and IM conversation typing state to IM typing state.
Ankit Vani <a@nevitus.org>
parents: 34651
diff changeset
91 * are PurpleChatUser objects.
34602
dbe6ee43aaa7 Created conversationtypes.[ch] for PurpleChatConversation and PurpleIMConversation
Ankit Vani <a@nevitus.org>
parents:
diff changeset
92 *
37404
5f45ba259934 Improve GIntrospection annotations for Chat and IM
Jorge Villaseñor <salinasv@pidgin.im>
parents: 37128
diff changeset
93 * Returns: (element-type PurpleChatUser) (transfer container):
5f45ba259934 Improve GIntrospection annotations for Chat and IM
Jorge Villaseñor <salinasv@pidgin.im>
parents: 37128
diff changeset
94 * The list of users. Use g_list_free() when done
35639
7391a9c98a1d Remove _PurpleChatConversationPrivate->in_room
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 35638
diff changeset
95 * using the list.
34602
dbe6ee43aaa7 Created conversationtypes.[ch] for PurpleChatConversation and PurpleIMConversation
Ankit Vani <a@nevitus.org>
parents:
diff changeset
96 */
39380
3088866c22f4 libpurple: Port almost self-contained code from g_type_class_add_private()
Mike Ruprecht <cmaiku@gmail.com>
parents: 37404
diff changeset
97 GList *purple_chat_conversation_get_users(PurpleChatConversation *chat);
34602
dbe6ee43aaa7 Created conversationtypes.[ch] for PurpleChatConversation and PurpleIMConversation
Ankit Vani <a@nevitus.org>
parents:
diff changeset
98
dbe6ee43aaa7 Created conversationtypes.[ch] for PurpleChatConversation and PurpleIMConversation
Ankit Vani <a@nevitus.org>
parents:
diff changeset
99 /**
35638
1ae6f7c41db3 Implement purple_chat_conversation_get_users_count and use it instead of counting the list
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 35499
diff changeset
100 * purple_chat_conversation_get_users_count:
1ae6f7c41db3 Implement purple_chat_conversation_get_users_count and use it instead of counting the list
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 35499
diff changeset
101 * @chat: The chat.
1ae6f7c41db3 Implement purple_chat_conversation_get_users_count and use it instead of counting the list
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 35499
diff changeset
102 *
1ae6f7c41db3 Implement purple_chat_conversation_get_users_count and use it instead of counting the list
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 35499
diff changeset
103 * Returns count of users in the chat room.
1ae6f7c41db3 Implement purple_chat_conversation_get_users_count and use it instead of counting the list
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 35499
diff changeset
104 *
1ae6f7c41db3 Implement purple_chat_conversation_get_users_count and use it instead of counting the list
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 35499
diff changeset
105 * Returns: The count of users in the chat room.
1ae6f7c41db3 Implement purple_chat_conversation_get_users_count and use it instead of counting the list
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 35499
diff changeset
106 */
40838
73407e00ec5d Modernizing PurpleChatConversation.
Gary Kramlich <grim@reaperworld.com>
parents: 40517
diff changeset
107 guint purple_chat_conversation_get_users_count(PurpleChatConversation *chat);
35638
1ae6f7c41db3 Implement purple_chat_conversation_get_users_count and use it instead of counting the list
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 35499
diff changeset
108
1ae6f7c41db3 Implement purple_chat_conversation_get_users_count and use it instead of counting the list
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 35499
diff changeset
109 /**
35397
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
110 * purple_chat_conversation_set_topic:
40838
73407e00ec5d Modernizing PurpleChatConversation.
Gary Kramlich <grim@reaperworld.com>
parents: 40517
diff changeset
111 * @chat: The chat.
73407e00ec5d Modernizing PurpleChatConversation.
Gary Kramlich <grim@reaperworld.com>
parents: 40517
diff changeset
112 * @who: The user that set the topic.
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35095
diff changeset
113 * @topic: The topic.
35397
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
114 *
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
115 * Sets the chat room's topic.
34602
dbe6ee43aaa7 Created conversationtypes.[ch] for PurpleChatConversation and PurpleIMConversation
Ankit Vani <a@nevitus.org>
parents:
diff changeset
116 */
40838
73407e00ec5d Modernizing PurpleChatConversation.
Gary Kramlich <grim@reaperworld.com>
parents: 40517
diff changeset
117 void purple_chat_conversation_set_topic(PurpleChatConversation *chat, const gchar *who, const gchar *topic);
34602
dbe6ee43aaa7 Created conversationtypes.[ch] for PurpleChatConversation and PurpleIMConversation
Ankit Vani <a@nevitus.org>
parents:
diff changeset
118
dbe6ee43aaa7 Created conversationtypes.[ch] for PurpleChatConversation and PurpleIMConversation
Ankit Vani <a@nevitus.org>
parents:
diff changeset
119 /**
35397
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
120 * purple_chat_conversation_get_topic:
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
121 * @chat: The chat.
34602
dbe6ee43aaa7 Created conversationtypes.[ch] for PurpleChatConversation and PurpleIMConversation
Ankit Vani <a@nevitus.org>
parents:
diff changeset
122 *
35397
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
123 * Returns the chat room's topic.
34602
dbe6ee43aaa7 Created conversationtypes.[ch] for PurpleChatConversation and PurpleIMConversation
Ankit Vani <a@nevitus.org>
parents:
diff changeset
124 *
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35095
diff changeset
125 * Returns: The chat's topic.
34602
dbe6ee43aaa7 Created conversationtypes.[ch] for PurpleChatConversation and PurpleIMConversation
Ankit Vani <a@nevitus.org>
parents:
diff changeset
126 */
40838
73407e00ec5d Modernizing PurpleChatConversation.
Gary Kramlich <grim@reaperworld.com>
parents: 40517
diff changeset
127 const gchar *purple_chat_conversation_get_topic(PurpleChatConversation *chat);
34602
dbe6ee43aaa7 Created conversationtypes.[ch] for PurpleChatConversation and PurpleIMConversation
Ankit Vani <a@nevitus.org>
parents:
diff changeset
128
34648
a6587d8cf907 Added missing API implementations to PurpleConversation and subclasses
Ankit Vani <a@nevitus.org>
parents: 34646
diff changeset
129 /**
35397
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
130 * purple_chat_conversation_get_topic_who:
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
131 * @chat: The chat.
34646
e7f4631e93f7 Begun adding GObject code to conversation sources
Ankit Vani <a@nevitus.org>
parents: 34632
diff changeset
132 *
35397
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
133 * Returns who set the chat room's topic.
34646
e7f4631e93f7 Begun adding GObject code to conversation sources
Ankit Vani <a@nevitus.org>
parents: 34632
diff changeset
134 *
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35095
diff changeset
135 * Returns: Who set the topic.
34646
e7f4631e93f7 Begun adding GObject code to conversation sources
Ankit Vani <a@nevitus.org>
parents: 34632
diff changeset
136 */
40838
73407e00ec5d Modernizing PurpleChatConversation.
Gary Kramlich <grim@reaperworld.com>
parents: 40517
diff changeset
137 const gchar *purple_chat_conversation_get_topic_who(PurpleChatConversation *chat);
34646
e7f4631e93f7 Begun adding GObject code to conversation sources
Ankit Vani <a@nevitus.org>
parents: 34632
diff changeset
138
34602
dbe6ee43aaa7 Created conversationtypes.[ch] for PurpleChatConversation and PurpleIMConversation
Ankit Vani <a@nevitus.org>
parents:
diff changeset
139 /**
35397
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
140 * purple_chat_conversation_set_id:
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35095
diff changeset
141 * @chat: The chat.
40838
73407e00ec5d Modernizing PurpleChatConversation.
Gary Kramlich <grim@reaperworld.com>
parents: 40517
diff changeset
142 * @id: The ID.
35397
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
143 *
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
144 * Sets the chat room's ID.
34602
dbe6ee43aaa7 Created conversationtypes.[ch] for PurpleChatConversation and PurpleIMConversation
Ankit Vani <a@nevitus.org>
parents:
diff changeset
145 */
40838
73407e00ec5d Modernizing PurpleChatConversation.
Gary Kramlich <grim@reaperworld.com>
parents: 40517
diff changeset
146 void purple_chat_conversation_set_id(PurpleChatConversation *chat, gint id);
34602
dbe6ee43aaa7 Created conversationtypes.[ch] for PurpleChatConversation and PurpleIMConversation
Ankit Vani <a@nevitus.org>
parents:
diff changeset
147
dbe6ee43aaa7 Created conversationtypes.[ch] for PurpleChatConversation and PurpleIMConversation
Ankit Vani <a@nevitus.org>
parents:
diff changeset
148 /**
35397
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
149 * purple_chat_conversation_get_id:
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
150 * @chat: The chat.
34602
dbe6ee43aaa7 Created conversationtypes.[ch] for PurpleChatConversation and PurpleIMConversation
Ankit Vani <a@nevitus.org>
parents:
diff changeset
151 *
40838
73407e00ec5d Modernizing PurpleChatConversation.
Gary Kramlich <grim@reaperworld.com>
parents: 40517
diff changeset
152 * Gets the chat room's ID.
34602
dbe6ee43aaa7 Created conversationtypes.[ch] for PurpleChatConversation and PurpleIMConversation
Ankit Vani <a@nevitus.org>
parents:
diff changeset
153 *
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35095
diff changeset
154 * Returns: The ID.
34602
dbe6ee43aaa7 Created conversationtypes.[ch] for PurpleChatConversation and PurpleIMConversation
Ankit Vani <a@nevitus.org>
parents:
diff changeset
155 */
40838
73407e00ec5d Modernizing PurpleChatConversation.
Gary Kramlich <grim@reaperworld.com>
parents: 40517
diff changeset
156 gint purple_chat_conversation_get_id(PurpleChatConversation *chat);
34602
dbe6ee43aaa7 Created conversationtypes.[ch] for PurpleChatConversation and PurpleIMConversation
Ankit Vani <a@nevitus.org>
parents:
diff changeset
157
dbe6ee43aaa7 Created conversationtypes.[ch] for PurpleChatConversation and PurpleIMConversation
Ankit Vani <a@nevitus.org>
parents:
diff changeset
158 /**
35397
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
159 * purple_chat_conversation_add_user:
40838
73407e00ec5d Modernizing PurpleChatConversation.
Gary Kramlich <grim@reaperworld.com>
parents: 40517
diff changeset
160 * @chat: The chat.
73407e00ec5d Modernizing PurpleChatConversation.
Gary Kramlich <grim@reaperworld.com>
parents: 40517
diff changeset
161 * @user: The user to add.
73407e00ec5d Modernizing PurpleChatConversation.
Gary Kramlich <grim@reaperworld.com>
parents: 40517
diff changeset
162 * @extra_msg: An extra message to display with the join message.
73407e00ec5d Modernizing PurpleChatConversation.
Gary Kramlich <grim@reaperworld.com>
parents: 40517
diff changeset
163 * @flags: The users flags
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35095
diff changeset
164 * @new_arrival: Decides whether or not to show a join notice.
35397
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
165 *
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
166 * Adds a user to a chat.
34602
dbe6ee43aaa7 Created conversationtypes.[ch] for PurpleChatConversation and PurpleIMConversation
Ankit Vani <a@nevitus.org>
parents:
diff changeset
167 */
40838
73407e00ec5d Modernizing PurpleChatConversation.
Gary Kramlich <grim@reaperworld.com>
parents: 40517
diff changeset
168 void purple_chat_conversation_add_user(PurpleChatConversation *chat, const gchar *user, const gchar *extra_msg, PurpleChatUserFlags flags, gboolean new_arrival);
34602
dbe6ee43aaa7 Created conversationtypes.[ch] for PurpleChatConversation and PurpleIMConversation
Ankit Vani <a@nevitus.org>
parents:
diff changeset
169
dbe6ee43aaa7 Created conversationtypes.[ch] for PurpleChatConversation and PurpleIMConversation
Ankit Vani <a@nevitus.org>
parents:
diff changeset
170 /**
35397
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
171 * purple_chat_conversation_add_users:
39891
1f924c6c4786 DOC: Set some element types to utf8.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 39659
diff changeset
172 * @chat: The chat.
1f924c6c4786 DOC: Set some element types to utf8.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 39659
diff changeset
173 * @users: (element-type utf8): The list of users to add.
1f924c6c4786 DOC: Set some element types to utf8.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 39659
diff changeset
174 * @extra_msgs: (element-type utf8) (nullable): An extra message to display
1f924c6c4786 DOC: Set some element types to utf8.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 39659
diff changeset
175 * with the join message for each user. This list may be shorter
1f924c6c4786 DOC: Set some element types to utf8.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 39659
diff changeset
176 * than @users, in which case, the users after the end of
1f924c6c4786 DOC: Set some element types to utf8.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 39659
diff changeset
177 * extra_msgs will not have an extra message. By extension, this
1f924c6c4786 DOC: Set some element types to utf8.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 39659
diff changeset
178 * means that extra_msgs can simply be %NULL and none of the users
1f924c6c4786 DOC: Set some element types to utf8.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 39659
diff changeset
179 * will have an extra message.
1f924c6c4786 DOC: Set some element types to utf8.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 39659
diff changeset
180 * @flags: (element-type PurpleChatUserFlags): The list of flags for each user.
1f924c6c4786 DOC: Set some element types to utf8.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 39659
diff changeset
181 * This list data should be an int converted to pointer using
1f924c6c4786 DOC: Set some element types to utf8.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 39659
diff changeset
182 * GINT_TO_POINTER(flag)
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35095
diff changeset
183 * @new_arrivals: Decides whether or not to show join notices.
35397
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
184 *
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
185 * Adds a list of users to a chat.
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
186 *
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
187 * The data is copied from @users, @extra_msgs, and @flags, so it is up to
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
188 * the caller to free this list after calling this function.
34602
dbe6ee43aaa7 Created conversationtypes.[ch] for PurpleChatConversation and PurpleIMConversation
Ankit Vani <a@nevitus.org>
parents:
diff changeset
189 */
40838
73407e00ec5d Modernizing PurpleChatConversation.
Gary Kramlich <grim@reaperworld.com>
parents: 40517
diff changeset
190 void purple_chat_conversation_add_users(PurpleChatConversation *chat, GList *users, GList *extra_msgs, GList *flags, gboolean new_arrivals);
34602
dbe6ee43aaa7 Created conversationtypes.[ch] for PurpleChatConversation and PurpleIMConversation
Ankit Vani <a@nevitus.org>
parents:
diff changeset
191
dbe6ee43aaa7 Created conversationtypes.[ch] for PurpleChatConversation and PurpleIMConversation
Ankit Vani <a@nevitus.org>
parents:
diff changeset
192 /**
35397
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
193 * purple_chat_conversation_rename_user:
40838
73407e00ec5d Modernizing PurpleChatConversation.
Gary Kramlich <grim@reaperworld.com>
parents: 40517
diff changeset
194 * @chat: The chat.
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35095
diff changeset
195 * @old_user: The old username.
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35095
diff changeset
196 * @new_user: The new username.
35397
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
197 *
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
198 * Renames a user in a chat.
34602
dbe6ee43aaa7 Created conversationtypes.[ch] for PurpleChatConversation and PurpleIMConversation
Ankit Vani <a@nevitus.org>
parents:
diff changeset
199 */
40838
73407e00ec5d Modernizing PurpleChatConversation.
Gary Kramlich <grim@reaperworld.com>
parents: 40517
diff changeset
200 void purple_chat_conversation_rename_user(PurpleChatConversation *chat, const gchar *old_user, const gchar *new_user);
34602
dbe6ee43aaa7 Created conversationtypes.[ch] for PurpleChatConversation and PurpleIMConversation
Ankit Vani <a@nevitus.org>
parents:
diff changeset
201
dbe6ee43aaa7 Created conversationtypes.[ch] for PurpleChatConversation and PurpleIMConversation
Ankit Vani <a@nevitus.org>
parents:
diff changeset
202 /**
35397
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
203 * purple_chat_conversation_remove_user:
40838
73407e00ec5d Modernizing PurpleChatConversation.
Gary Kramlich <grim@reaperworld.com>
parents: 40517
diff changeset
204 * @chat: The chat.
73407e00ec5d Modernizing PurpleChatConversation.
Gary Kramlich <grim@reaperworld.com>
parents: 40517
diff changeset
205 * @user: The user that is being removed.
35397
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
206 * @reason: The optional reason given for the removal. Can be %NULL.
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
207 *
34602
dbe6ee43aaa7 Created conversationtypes.[ch] for PurpleChatConversation and PurpleIMConversation
Ankit Vani <a@nevitus.org>
parents:
diff changeset
208 * Removes a user from a chat, optionally with a reason.
dbe6ee43aaa7 Created conversationtypes.[ch] for PurpleChatConversation and PurpleIMConversation
Ankit Vani <a@nevitus.org>
parents:
diff changeset
209 *
dbe6ee43aaa7 Created conversationtypes.[ch] for PurpleChatConversation and PurpleIMConversation
Ankit Vani <a@nevitus.org>
parents:
diff changeset
210 * It is up to the developer to free this list after calling this function.
dbe6ee43aaa7 Created conversationtypes.[ch] for PurpleChatConversation and PurpleIMConversation
Ankit Vani <a@nevitus.org>
parents:
diff changeset
211 */
40838
73407e00ec5d Modernizing PurpleChatConversation.
Gary Kramlich <grim@reaperworld.com>
parents: 40517
diff changeset
212 void purple_chat_conversation_remove_user(PurpleChatConversation *chat, const gchar *user, const gchar *reason);
34602
dbe6ee43aaa7 Created conversationtypes.[ch] for PurpleChatConversation and PurpleIMConversation
Ankit Vani <a@nevitus.org>
parents:
diff changeset
213
dbe6ee43aaa7 Created conversationtypes.[ch] for PurpleChatConversation and PurpleIMConversation
Ankit Vani <a@nevitus.org>
parents:
diff changeset
214 /**
35397
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
215 * purple_chat_conversation_remove_users:
40838
73407e00ec5d Modernizing PurpleChatConversation.
Gary Kramlich <grim@reaperworld.com>
parents: 40517
diff changeset
216 * @chat: The chat.
39891
1f924c6c4786 DOC: Set some element types to utf8.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 39659
diff changeset
217 * @users: (element-type utf8): The users that are being removed.
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35095
diff changeset
218 * @reason: The optional reason given for the removal. Can be %NULL.
35397
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
219 *
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
220 * Removes a list of users from a chat, optionally with a single reason.
34602
dbe6ee43aaa7 Created conversationtypes.[ch] for PurpleChatConversation and PurpleIMConversation
Ankit Vani <a@nevitus.org>
parents:
diff changeset
221 */
40838
73407e00ec5d Modernizing PurpleChatConversation.
Gary Kramlich <grim@reaperworld.com>
parents: 40517
diff changeset
222 void purple_chat_conversation_remove_users(PurpleChatConversation *chat, GList *users, const gchar *reason);
34602
dbe6ee43aaa7 Created conversationtypes.[ch] for PurpleChatConversation and PurpleIMConversation
Ankit Vani <a@nevitus.org>
parents:
diff changeset
223
dbe6ee43aaa7 Created conversationtypes.[ch] for PurpleChatConversation and PurpleIMConversation
Ankit Vani <a@nevitus.org>
parents:
diff changeset
224 /**
35397
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
225 * purple_chat_conversation_has_user:
40838
73407e00ec5d Modernizing PurpleChatConversation.
Gary Kramlich <grim@reaperworld.com>
parents: 40517
diff changeset
226 * @chat: The chat.
73407e00ec5d Modernizing PurpleChatConversation.
Gary Kramlich <grim@reaperworld.com>
parents: 40517
diff changeset
227 * @user: The user to look for.
34602
dbe6ee43aaa7 Created conversationtypes.[ch] for PurpleChatConversation and PurpleIMConversation
Ankit Vani <a@nevitus.org>
parents:
diff changeset
228 *
35397
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
229 * Checks if a user is in a chat
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
230 *
40838
73407e00ec5d Modernizing PurpleChatConversation.
Gary Kramlich <grim@reaperworld.com>
parents: 40517
diff changeset
231 * Returns: %TRUE if the user is in the chat, %FALSE if not
34602
dbe6ee43aaa7 Created conversationtypes.[ch] for PurpleChatConversation and PurpleIMConversation
Ankit Vani <a@nevitus.org>
parents:
diff changeset
232 */
40838
73407e00ec5d Modernizing PurpleChatConversation.
Gary Kramlich <grim@reaperworld.com>
parents: 40517
diff changeset
233 gboolean purple_chat_conversation_has_user(PurpleChatConversation *chat, const gchar *user);
34602
dbe6ee43aaa7 Created conversationtypes.[ch] for PurpleChatConversation and PurpleIMConversation
Ankit Vani <a@nevitus.org>
parents:
diff changeset
234
dbe6ee43aaa7 Created conversationtypes.[ch] for PurpleChatConversation and PurpleIMConversation
Ankit Vani <a@nevitus.org>
parents:
diff changeset
235 /**
35397
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
236 * purple_chat_conversation_clear_users:
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
237 * @chat: The chat.
34602
dbe6ee43aaa7 Created conversationtypes.[ch] for PurpleChatConversation and PurpleIMConversation
Ankit Vani <a@nevitus.org>
parents:
diff changeset
238 *
35397
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
239 * Clears all users from a chat.
34602
dbe6ee43aaa7 Created conversationtypes.[ch] for PurpleChatConversation and PurpleIMConversation
Ankit Vani <a@nevitus.org>
parents:
diff changeset
240 */
dbe6ee43aaa7 Created conversationtypes.[ch] for PurpleChatConversation and PurpleIMConversation
Ankit Vani <a@nevitus.org>
parents:
diff changeset
241 void purple_chat_conversation_clear_users(PurpleChatConversation *chat);
dbe6ee43aaa7 Created conversationtypes.[ch] for PurpleChatConversation and PurpleIMConversation
Ankit Vani <a@nevitus.org>
parents:
diff changeset
242
dbe6ee43aaa7 Created conversationtypes.[ch] for PurpleChatConversation and PurpleIMConversation
Ankit Vani <a@nevitus.org>
parents:
diff changeset
243 /**
35397
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
244 * purple_chat_conversation_set_nick:
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35095
diff changeset
245 * @chat: The chat.
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35095
diff changeset
246 * @nick: The nick.
35397
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
247 *
41083
590d533cf290 Fix several typos in libpurple
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents: 40885
diff changeset
248 * Sets your nickname (used for highlighting) for a chat.
34602
dbe6ee43aaa7 Created conversationtypes.[ch] for PurpleChatConversation and PurpleIMConversation
Ankit Vani <a@nevitus.org>
parents:
diff changeset
249 */
40838
73407e00ec5d Modernizing PurpleChatConversation.
Gary Kramlich <grim@reaperworld.com>
parents: 40517
diff changeset
250 void purple_chat_conversation_set_nick(PurpleChatConversation *chat, const gchar *nick);
34602
dbe6ee43aaa7 Created conversationtypes.[ch] for PurpleChatConversation and PurpleIMConversation
Ankit Vani <a@nevitus.org>
parents:
diff changeset
251
dbe6ee43aaa7 Created conversationtypes.[ch] for PurpleChatConversation and PurpleIMConversation
Ankit Vani <a@nevitus.org>
parents:
diff changeset
252 /**
35397
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
253 * purple_chat_conversation_get_nick:
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
254 * @chat: The chat.
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
255 *
41083
590d533cf290 Fix several typos in libpurple
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents: 40885
diff changeset
256 * Gets your nickname (used for highlighting) for a chat.
34602
dbe6ee43aaa7 Created conversationtypes.[ch] for PurpleChatConversation and PurpleIMConversation
Ankit Vani <a@nevitus.org>
parents:
diff changeset
257 *
40838
73407e00ec5d Modernizing PurpleChatConversation.
Gary Kramlich <grim@reaperworld.com>
parents: 40517
diff changeset
258 * Returns: The nick.
34602
dbe6ee43aaa7 Created conversationtypes.[ch] for PurpleChatConversation and PurpleIMConversation
Ankit Vani <a@nevitus.org>
parents:
diff changeset
259 */
40838
73407e00ec5d Modernizing PurpleChatConversation.
Gary Kramlich <grim@reaperworld.com>
parents: 40517
diff changeset
260 const gchar *purple_chat_conversation_get_nick(PurpleChatConversation *chat);
34602
dbe6ee43aaa7 Created conversationtypes.[ch] for PurpleChatConversation and PurpleIMConversation
Ankit Vani <a@nevitus.org>
parents:
diff changeset
261
dbe6ee43aaa7 Created conversationtypes.[ch] for PurpleChatConversation and PurpleIMConversation
Ankit Vani <a@nevitus.org>
parents:
diff changeset
262 /**
35397
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
263 * purple_chat_conversation_leave:
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
264 * @chat: The chat.
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
265 *
34602
dbe6ee43aaa7 Created conversationtypes.[ch] for PurpleChatConversation and PurpleIMConversation
Ankit Vani <a@nevitus.org>
parents:
diff changeset
266 * Lets the core know we left a chat, without destroying it.
35499
c4c5e0a670b1 Fix namespaces issues in libpurple.
Ankit Vani <a@nevitus.org>
parents: 35487
diff changeset
267 * Called from purple_serv_got_chat_left().
34602
dbe6ee43aaa7 Created conversationtypes.[ch] for PurpleChatConversation and PurpleIMConversation
Ankit Vani <a@nevitus.org>
parents:
diff changeset
268 */
dbe6ee43aaa7 Created conversationtypes.[ch] for PurpleChatConversation and PurpleIMConversation
Ankit Vani <a@nevitus.org>
parents:
diff changeset
269 void purple_chat_conversation_leave(PurpleChatConversation *chat);
dbe6ee43aaa7 Created conversationtypes.[ch] for PurpleChatConversation and PurpleIMConversation
Ankit Vani <a@nevitus.org>
parents:
diff changeset
270
dbe6ee43aaa7 Created conversationtypes.[ch] for PurpleChatConversation and PurpleIMConversation
Ankit Vani <a@nevitus.org>
parents:
diff changeset
271 /**
35397
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
272 * purple_chat_conversation_find_user:
35393
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35095
diff changeset
273 * @chat: The chat.
00f876b129bc Initial replacements for gtk-doc style comments
Ankit Vani <a@nevitus.org>
parents: 35095
diff changeset
274 * @name: The name of the chat user to find.
35397
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
275 *
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
276 * Find a chat user in a chat
37404
5f45ba259934 Improve GIntrospection annotations for Chat and IM
Jorge Villaseñor <salinasv@pidgin.im>
parents: 37128
diff changeset
277 *
40838
73407e00ec5d Modernizing PurpleChatConversation.
Gary Kramlich <grim@reaperworld.com>
parents: 40517
diff changeset
278 * Returns: (transfer none): The #PurpleChatUser with the name referred by
73407e00ec5d Modernizing PurpleChatConversation.
Gary Kramlich <grim@reaperworld.com>
parents: 40517
diff changeset
279 * @name.
34602
dbe6ee43aaa7 Created conversationtypes.[ch] for PurpleChatConversation and PurpleIMConversation
Ankit Vani <a@nevitus.org>
parents:
diff changeset
280 */
40838
73407e00ec5d Modernizing PurpleChatConversation.
Gary Kramlich <grim@reaperworld.com>
parents: 40517
diff changeset
281 PurpleChatUser *purple_chat_conversation_find_user(PurpleChatConversation *chat, const gchar *name);
34602
dbe6ee43aaa7 Created conversationtypes.[ch] for PurpleChatConversation and PurpleIMConversation
Ankit Vani <a@nevitus.org>
parents:
diff changeset
282
dbe6ee43aaa7 Created conversationtypes.[ch] for PurpleChatConversation and PurpleIMConversation
Ankit Vani <a@nevitus.org>
parents:
diff changeset
283 /**
35397
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
284 * purple_chat_conversation_invite_user:
40838
73407e00ec5d Modernizing PurpleChatConversation.
Gary Kramlich <grim@reaperworld.com>
parents: 40517
diff changeset
285 * @chat: The chat.
73407e00ec5d Modernizing PurpleChatConversation.
Gary Kramlich <grim@reaperworld.com>
parents: 40517
diff changeset
286 * @user: The user to invite to the chat.
73407e00ec5d Modernizing PurpleChatConversation.
Gary Kramlich <grim@reaperworld.com>
parents: 40517
diff changeset
287 * @message: The message to send with the invitation.
73407e00ec5d Modernizing PurpleChatConversation.
Gary Kramlich <grim@reaperworld.com>
parents: 40517
diff changeset
288 * @confirm: Prompt before sending the invitation. The user is always prompted
73407e00ec5d Modernizing PurpleChatConversation.
Gary Kramlich <grim@reaperworld.com>
parents: 40517
diff changeset
289 * if either @user or @message is %NULL.
35397
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
290 *
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
291 * Invite a user to a chat.
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
292 * The user will be prompted to enter the user's name or a message if one is
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
293 * not given.
34602
dbe6ee43aaa7 Created conversationtypes.[ch] for PurpleChatConversation and PurpleIMConversation
Ankit Vani <a@nevitus.org>
parents:
diff changeset
294 */
40838
73407e00ec5d Modernizing PurpleChatConversation.
Gary Kramlich <grim@reaperworld.com>
parents: 40517
diff changeset
295 void purple_chat_conversation_invite_user(PurpleChatConversation *chat, const gchar *user, const gchar *message, gboolean confirm);
34602
dbe6ee43aaa7 Created conversationtypes.[ch] for PurpleChatConversation and PurpleIMConversation
Ankit Vani <a@nevitus.org>
parents:
diff changeset
296
dbe6ee43aaa7 Created conversationtypes.[ch] for PurpleChatConversation and PurpleIMConversation
Ankit Vani <a@nevitus.org>
parents:
diff changeset
297 /**
35397
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
298 * purple_chat_conversation_has_left:
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
299 * @chat: The chat.
31fa3a1aeff5 Move changes from soc.2013.gobjectification.gtkdoc to this branch
Ankit Vani <a@nevitus.org>
parents: 35394
diff changeset
300 *
40838
73407e00ec5d Modernizing PurpleChatConversation.
Gary Kramlich <grim@reaperworld.com>
parents: 40517
diff changeset
301 * Gets whether we're no longer in this chat, and just left the window open.
34602
dbe6ee43aaa7 Created conversationtypes.[ch] for PurpleChatConversation and PurpleIMConversation
Ankit Vani <a@nevitus.org>
parents:
diff changeset
302 *
40838
73407e00ec5d Modernizing PurpleChatConversation.
Gary Kramlich <grim@reaperworld.com>
parents: 40517
diff changeset
303 * Returns: %TRUE if we left the chat already, %FALSE if we're still there.
34602
dbe6ee43aaa7 Created conversationtypes.[ch] for PurpleChatConversation and PurpleIMConversation
Ankit Vani <a@nevitus.org>
parents:
diff changeset
304 */
dbe6ee43aaa7 Created conversationtypes.[ch] for PurpleChatConversation and PurpleIMConversation
Ankit Vani <a@nevitus.org>
parents:
diff changeset
305 gboolean purple_chat_conversation_has_left(PurpleChatConversation *chat);
dbe6ee43aaa7 Created conversationtypes.[ch] for PurpleChatConversation and PurpleIMConversation
Ankit Vani <a@nevitus.org>
parents:
diff changeset
306
dbe6ee43aaa7 Created conversationtypes.[ch] for PurpleChatConversation and PurpleIMConversation
Ankit Vani <a@nevitus.org>
parents:
diff changeset
307 G_END_DECLS
dbe6ee43aaa7 Created conversationtypes.[ch] for PurpleChatConversation and PurpleIMConversation
Ankit Vani <a@nevitus.org>
parents:
diff changeset
308
40838
73407e00ec5d Modernizing PurpleChatConversation.
Gary Kramlich <grim@reaperworld.com>
parents: 40517
diff changeset
309 #endif /* PURPLE_CHAT_CONVERSATION_H */

mercurial