libpurple/purplemessage.h

Thu, 23 Feb 2023 01:01:07 -0600

author
Gary Kramlich <grim@reaperworld.com>
date
Thu, 23 Feb 2023 01:01:07 -0600
changeset 42078
979d202488d0
parent 42048
8d4a5f33faa8
child 42298
4671ff5c65d6
permissions
-rw-r--r--

Add an error property to PurpleMessage

There are a number of ways that an individual message can fail, and it would be
nice to let the user interface know that it failed, so that the user can attempt
to resend.

Testing Done:
Ran the unit tests (that I just added)

Bugs closed: PIDGIN-17757

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

40526
c8cc1a4c4a02 Add support for message attachments
Gary Kramlich <grim@reaperworld.com>
parents: 40524
diff changeset
1 /*
40696
cf58ec89b1e4 Rename message.[ch] to purplemessage.[ch]
Gary Kramlich <grim@reaperworld.com>
parents: 40541
diff changeset
2 * Purple - Internet Messaging Library
cf58ec89b1e4 Rename message.[ch] to purplemessage.[ch]
Gary Kramlich <grim@reaperworld.com>
parents: 40541
diff changeset
3 * Copyright (C) Pidgin Developers <devel@pidgin.im>
36074
4f7b1fea3cd3 Initial implementation for PurpleMessage class
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents:
diff changeset
4 *
4f7b1fea3cd3 Initial implementation for PurpleMessage class
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents:
diff changeset
5 * Purple is the legal property of its developers, whose names are too numerous
4f7b1fea3cd3 Initial implementation for PurpleMessage class
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents:
diff changeset
6 * to list here. Please refer to the COPYRIGHT file distributed with this
4f7b1fea3cd3 Initial implementation for PurpleMessage class
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents:
diff changeset
7 * source distribution.
4f7b1fea3cd3 Initial implementation for PurpleMessage class
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents:
diff changeset
8 *
4f7b1fea3cd3 Initial implementation for PurpleMessage class
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents:
diff changeset
9 * This program is free software; you can redistribute it and/or modify
4f7b1fea3cd3 Initial implementation for PurpleMessage class
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents:
diff changeset
10 * it under the terms of the GNU General Public License as published by
4f7b1fea3cd3 Initial implementation for PurpleMessage class
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents:
diff changeset
11 * the Free Software Foundation; either version 2 of the License, or
4f7b1fea3cd3 Initial implementation for PurpleMessage class
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents:
diff changeset
12 * (at your option) any later version.
4f7b1fea3cd3 Initial implementation for PurpleMessage class
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents:
diff changeset
13 *
4f7b1fea3cd3 Initial implementation for PurpleMessage class
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents:
diff changeset
14 * This program is distributed in the hope that it will be useful,
4f7b1fea3cd3 Initial implementation for PurpleMessage class
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents:
diff changeset
15 * but WITHOUT ANY WARRANTY; without even the implied warranty of
4f7b1fea3cd3 Initial implementation for PurpleMessage class
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents:
diff changeset
16 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
4f7b1fea3cd3 Initial implementation for PurpleMessage class
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents:
diff changeset
17 * GNU General Public License for more details.
4f7b1fea3cd3 Initial implementation for PurpleMessage class
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents:
diff changeset
18 *
40696
cf58ec89b1e4 Rename message.[ch] to purplemessage.[ch]
Gary Kramlich <grim@reaperworld.com>
parents: 40541
diff changeset
19 * You should have received a copy of the GNU General Public License
cf58ec89b1e4 Rename message.[ch] to purplemessage.[ch]
Gary Kramlich <grim@reaperworld.com>
parents: 40541
diff changeset
20 * along with this program; if not, see <https://www.gnu.org/licenses/>.
36074
4f7b1fea3cd3 Initial implementation for PurpleMessage class
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents:
diff changeset
21 */
4f7b1fea3cd3 Initial implementation for PurpleMessage class
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents:
diff changeset
22
40474
1341be8e3402 Make it so only libpurple can directly include libpurple header files.
Gary Kramlich <grim@reaperworld.com>
parents: 40439
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: 40439
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: 40439
diff changeset
25 #endif
1341be8e3402 Make it so only libpurple can directly include libpurple header files.
Gary Kramlich <grim@reaperworld.com>
parents: 40439
diff changeset
26
39659
e4dfb99b0cef Fix libpurple header guards using reserved names.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 39537
diff changeset
27 #ifndef PURPLE_MESSAGE_H
e4dfb99b0cef Fix libpurple header guards using reserved names.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 39537
diff changeset
28 #define PURPLE_MESSAGE_H
40526
c8cc1a4c4a02 Add support for message attachments
Gary Kramlich <grim@reaperworld.com>
parents: 40524
diff changeset
29
36074
4f7b1fea3cd3 Initial implementation for PurpleMessage class
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents:
diff changeset
30 #include <glib-object.h>
4f7b1fea3cd3 Initial implementation for PurpleMessage class
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents:
diff changeset
31
40526
c8cc1a4c4a02 Add support for message attachments
Gary Kramlich <grim@reaperworld.com>
parents: 40524
diff changeset
32 #include <libpurple/purpleattachment.h>
c8cc1a4c4a02 Add support for message attachments
Gary Kramlich <grim@reaperworld.com>
parents: 40524
diff changeset
33
39537
70abf152c2d9 Use G_DECLARE_FINAL_TYPE for PurpleMessage.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 39434
diff changeset
34 G_BEGIN_DECLS
36074
4f7b1fea3cd3 Initial implementation for PurpleMessage class
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents:
diff changeset
35
40696
cf58ec89b1e4 Rename message.[ch] to purplemessage.[ch]
Gary Kramlich <grim@reaperworld.com>
parents: 40541
diff changeset
36 #define PURPLE_TYPE_MESSAGE purple_message_get_type()
36074
4f7b1fea3cd3 Initial implementation for PurpleMessage class
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents:
diff changeset
37
4f7b1fea3cd3 Initial implementation for PurpleMessage class
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents:
diff changeset
38 /**
40526
c8cc1a4c4a02 Add support for message attachments
Gary Kramlich <grim@reaperworld.com>
parents: 40524
diff changeset
39 * PurpleMessageFlags:
40696
cf58ec89b1e4 Rename message.[ch] to purplemessage.[ch]
Gary Kramlich <grim@reaperworld.com>
parents: 40541
diff changeset
40 * @PURPLE_MESSAGE_SEND: Outgoing message.
cf58ec89b1e4 Rename message.[ch] to purplemessage.[ch]
Gary Kramlich <grim@reaperworld.com>
parents: 40541
diff changeset
41 * @PURPLE_MESSAGE_RECV: Incoming message.
cf58ec89b1e4 Rename message.[ch] to purplemessage.[ch]
Gary Kramlich <grim@reaperworld.com>
parents: 40541
diff changeset
42 * @PURPLE_MESSAGE_SYSTEM: System message.
cf58ec89b1e4 Rename message.[ch] to purplemessage.[ch]
Gary Kramlich <grim@reaperworld.com>
parents: 40541
diff changeset
43 * @PURPLE_MESSAGE_AUTO_RESP: Auto response.
40526
c8cc1a4c4a02 Add support for message attachments
Gary Kramlich <grim@reaperworld.com>
parents: 40524
diff changeset
44 * @PURPLE_MESSAGE_ACTIVE_ONLY: Hint to the UI that this message should not be
c8cc1a4c4a02 Add support for message attachments
Gary Kramlich <grim@reaperworld.com>
parents: 40524
diff changeset
45 * shown in conversations which are only open for
c8cc1a4c4a02 Add support for message attachments
Gary Kramlich <grim@reaperworld.com>
parents: 40524
diff changeset
46 * internal UI purposes (e.g. for contact-aware
c8cc1a4c4a02 Add support for message attachments
Gary Kramlich <grim@reaperworld.com>
parents: 40524
diff changeset
47 * conversations).
40696
cf58ec89b1e4 Rename message.[ch] to purplemessage.[ch]
Gary Kramlich <grim@reaperworld.com>
parents: 40541
diff changeset
48 * @PURPLE_MESSAGE_NICK: Contains your nick.
cf58ec89b1e4 Rename message.[ch] to purplemessage.[ch]
Gary Kramlich <grim@reaperworld.com>
parents: 40541
diff changeset
49 * @PURPLE_MESSAGE_NO_LOG: Do not log.
cf58ec89b1e4 Rename message.[ch] to purplemessage.[ch]
Gary Kramlich <grim@reaperworld.com>
parents: 40541
diff changeset
50 * @PURPLE_MESSAGE_ERROR: Error message.
cf58ec89b1e4 Rename message.[ch] to purplemessage.[ch]
Gary Kramlich <grim@reaperworld.com>
parents: 40541
diff changeset
51 * @PURPLE_MESSAGE_DELAYED: Delayed message.
cf58ec89b1e4 Rename message.[ch] to purplemessage.[ch]
Gary Kramlich <grim@reaperworld.com>
parents: 40541
diff changeset
52 * @PURPLE_MESSAGE_RAW: "Raw" message - don't apply formatting.
cf58ec89b1e4 Rename message.[ch] to purplemessage.[ch]
Gary Kramlich <grim@reaperworld.com>
parents: 40541
diff changeset
53 * @PURPLE_MESSAGE_IMAGES: Message contains images.
cf58ec89b1e4 Rename message.[ch] to purplemessage.[ch]
Gary Kramlich <grim@reaperworld.com>
parents: 40541
diff changeset
54 * @PURPLE_MESSAGE_NOTIFY: Message is a notification.
cf58ec89b1e4 Rename message.[ch] to purplemessage.[ch]
Gary Kramlich <grim@reaperworld.com>
parents: 40541
diff changeset
55 * @PURPLE_MESSAGE_NO_LINKIFY: Message should not be auto-linkified.
cf58ec89b1e4 Rename message.[ch] to purplemessage.[ch]
Gary Kramlich <grim@reaperworld.com>
parents: 40541
diff changeset
56 * @PURPLE_MESSAGE_INVISIBLE: Message should not be displayed.
cf58ec89b1e4 Rename message.[ch] to purplemessage.[ch]
Gary Kramlich <grim@reaperworld.com>
parents: 40541
diff changeset
57 * @PURPLE_MESSAGE_REMOTE_SEND: Message sent from another location, not an echo
cf58ec89b1e4 Rename message.[ch] to purplemessage.[ch]
Gary Kramlich <grim@reaperworld.com>
parents: 40541
diff changeset
58 * of a local one.
40526
c8cc1a4c4a02 Add support for message attachments
Gary Kramlich <grim@reaperworld.com>
parents: 40524
diff changeset
59 * Since: 2.12.0
41010
d0abbb616bea A bunch of random libpurple documentation fixes
Gary Kramlich <grim@reaperworld.com>
parents: 40951
diff changeset
60 * @PURPLE_MESSAGE_FORWARDED: The message has been forward to the recipient.
40526
c8cc1a4c4a02 Add support for message attachments
Gary Kramlich <grim@reaperworld.com>
parents: 40524
diff changeset
61 *
c8cc1a4c4a02 Add support for message attachments
Gary Kramlich <grim@reaperworld.com>
parents: 40524
diff changeset
62 * Flags applicable to a message. Most will have send, recv or system.
c8cc1a4c4a02 Add support for message attachments
Gary Kramlich <grim@reaperworld.com>
parents: 40524
diff changeset
63 */
c8cc1a4c4a02 Add support for message attachments
Gary Kramlich <grim@reaperworld.com>
parents: 40524
diff changeset
64 typedef enum /*< flags >*/
c8cc1a4c4a02 Add support for message attachments
Gary Kramlich <grim@reaperworld.com>
parents: 40524
diff changeset
65 {
c8cc1a4c4a02 Add support for message attachments
Gary Kramlich <grim@reaperworld.com>
parents: 40524
diff changeset
66 PURPLE_MESSAGE_SEND = 1 << 0,
c8cc1a4c4a02 Add support for message attachments
Gary Kramlich <grim@reaperworld.com>
parents: 40524
diff changeset
67 PURPLE_MESSAGE_RECV = 1 << 1,
c8cc1a4c4a02 Add support for message attachments
Gary Kramlich <grim@reaperworld.com>
parents: 40524
diff changeset
68 PURPLE_MESSAGE_SYSTEM = 1 << 2,
c8cc1a4c4a02 Add support for message attachments
Gary Kramlich <grim@reaperworld.com>
parents: 40524
diff changeset
69 PURPLE_MESSAGE_AUTO_RESP = 1 << 3,
c8cc1a4c4a02 Add support for message attachments
Gary Kramlich <grim@reaperworld.com>
parents: 40524
diff changeset
70 PURPLE_MESSAGE_ACTIVE_ONLY = 1 << 4,
c8cc1a4c4a02 Add support for message attachments
Gary Kramlich <grim@reaperworld.com>
parents: 40524
diff changeset
71 PURPLE_MESSAGE_NICK = 1 << 5,
c8cc1a4c4a02 Add support for message attachments
Gary Kramlich <grim@reaperworld.com>
parents: 40524
diff changeset
72 PURPLE_MESSAGE_NO_LOG = 1 << 6,
c8cc1a4c4a02 Add support for message attachments
Gary Kramlich <grim@reaperworld.com>
parents: 40524
diff changeset
73 PURPLE_MESSAGE_ERROR = 1 << 7,
c8cc1a4c4a02 Add support for message attachments
Gary Kramlich <grim@reaperworld.com>
parents: 40524
diff changeset
74 PURPLE_MESSAGE_DELAYED = 1 << 8,
c8cc1a4c4a02 Add support for message attachments
Gary Kramlich <grim@reaperworld.com>
parents: 40524
diff changeset
75 PURPLE_MESSAGE_RAW = 1 << 9,
c8cc1a4c4a02 Add support for message attachments
Gary Kramlich <grim@reaperworld.com>
parents: 40524
diff changeset
76 PURPLE_MESSAGE_IMAGES = 1 << 10,
c8cc1a4c4a02 Add support for message attachments
Gary Kramlich <grim@reaperworld.com>
parents: 40524
diff changeset
77 PURPLE_MESSAGE_NOTIFY = 1 << 11,
c8cc1a4c4a02 Add support for message attachments
Gary Kramlich <grim@reaperworld.com>
parents: 40524
diff changeset
78 PURPLE_MESSAGE_NO_LINKIFY = 1 << 12,
c8cc1a4c4a02 Add support for message attachments
Gary Kramlich <grim@reaperworld.com>
parents: 40524
diff changeset
79 PURPLE_MESSAGE_INVISIBLE = 1 << 13,
c8cc1a4c4a02 Add support for message attachments
Gary Kramlich <grim@reaperworld.com>
parents: 40524
diff changeset
80 PURPLE_MESSAGE_REMOTE_SEND = 1 << 14,
40742
2fc55152b79c Fix up the XEP-0280 carbons support.
Gary Kramlich <grim@reaperworld.com>
parents: 40696
diff changeset
81 PURPLE_MESSAGE_FORWARDED = 1 << 15,
40526
c8cc1a4c4a02 Add support for message attachments
Gary Kramlich <grim@reaperworld.com>
parents: 40524
diff changeset
82 } PurpleMessageFlags;
c8cc1a4c4a02 Add support for message attachments
Gary Kramlich <grim@reaperworld.com>
parents: 40524
diff changeset
83
c8cc1a4c4a02 Add support for message attachments
Gary Kramlich <grim@reaperworld.com>
parents: 40524
diff changeset
84 /**
40541
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
85 * PurpleMessageContentType:
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
86 * @PURPLE_MESSAGE_CONTENT_TYPE_PLAIN: The message has no formatting.
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
87 * @PURPLE_MESSAGE_CONTENT_TYPE_HTML: The message is formatted in HTML.
41083
590d533cf290 Fix several typos in libpurple
Elliott Sales de Andrade <quantum.analyst@gmail.com>
parents: 41019
diff changeset
88 * @PURPLE_MESSAGE_CONTENT_TYPE_XHTML: The message is formatted in XHTML.
40541
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
89 * @PURPLE_MESSAGE_CONTENT_TYPE_MARKDOWN: The message is formatted in Markdown.
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
90 *
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
91 * The message formatting for the message.
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
92 *
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
93 * Since: 3.0.0
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
94 */
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
95 typedef enum /*< prefix=PURPLE_MESSAGE_CONTENT_TYPE,underscore_name=PURPLE_MESSAGE_CONTENT_TYPE >*/
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
96 {
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
97 PURPLE_MESSAGE_CONTENT_TYPE_PLAIN = 0,
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
98 PURPLE_MESSAGE_CONTENT_TYPE_HTML,
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
99 PURPLE_MESSAGE_CONTENT_TYPE_XHTML,
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
100 PURPLE_MESSAGE_CONTENT_TYPE_MARKDOWN,
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
101 } PurpleMessageContentType;
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
102
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
103 /**
41207
d91e963b0a1c Remove unnecessary gtk-doc comments and move them where possible from libpurple/purple[a-n]*.h
Gary Kramlich <grim@reaperworld.com>
parents: 41083
diff changeset
104 * PurpleMessage:
d91e963b0a1c Remove unnecessary gtk-doc comments and move them where possible from libpurple/purple[a-n]*.h
Gary Kramlich <grim@reaperworld.com>
parents: 41083
diff changeset
105 *
d91e963b0a1c Remove unnecessary gtk-doc comments and move them where possible from libpurple/purple[a-n]*.h
Gary Kramlich <grim@reaperworld.com>
parents: 41083
diff changeset
106 * #PurpleMessage represents any message passed between users in libpurple.
d91e963b0a1c Remove unnecessary gtk-doc comments and move them where possible from libpurple/purple[a-n]*.h
Gary Kramlich <grim@reaperworld.com>
parents: 41083
diff changeset
107 */
d91e963b0a1c Remove unnecessary gtk-doc comments and move them where possible from libpurple/purple[a-n]*.h
Gary Kramlich <grim@reaperworld.com>
parents: 41083
diff changeset
108
39537
70abf152c2d9 Use G_DECLARE_FINAL_TYPE for PurpleMessage.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 39434
diff changeset
109 G_DECLARE_FINAL_TYPE(PurpleMessage, purple_message, PURPLE, MESSAGE, GObject)
36074
4f7b1fea3cd3 Initial implementation for PurpleMessage class
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents:
diff changeset
110
42048
8d4a5f33faa8 Add a PurpleAccount parameter to the PurpleMessage constructors
Gary Kramlich <grim@reaperworld.com>
parents: 41686
diff changeset
111 #include "account.h"
8d4a5f33faa8 Add a PurpleAccount parameter to the PurpleMessage constructors
Gary Kramlich <grim@reaperworld.com>
parents: 41686
diff changeset
112
36116
e1f9a50effbc Fill comments for PurpleMessage
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 36115
diff changeset
113 /**
e1f9a50effbc Fill comments for PurpleMessage
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 36115
diff changeset
114 * purple_message_new_outgoing:
42048
8d4a5f33faa8 Add a PurpleAccount parameter to the PurpleMessage constructors
Gary Kramlich <grim@reaperworld.com>
parents: 41686
diff changeset
115 * @account: The account for this message.
40541
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
116 * @author: The author.
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
117 * @recipient: The recipient.
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
118 * @contents: The contents.
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
119 * @flags: The #PurpleMessageFlags.
36116
e1f9a50effbc Fill comments for PurpleMessage
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 36115
diff changeset
120 *
40541
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
121 * Creates new outgoing message to @recipient.
36116
e1f9a50effbc Fill comments for PurpleMessage
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 36115
diff changeset
122 *
40541
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
123 * You don't need to set the #PURPLE_MESSAGE_SEND flag. If the message is not
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
124 * plain text be sure to call purple_message_set_content_type().
36116
e1f9a50effbc Fill comments for PurpleMessage
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 36115
diff changeset
125 *
40541
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
126 * Returns: (transfer full): The new #PurpleMessage instance.
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
127 *
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
128 * Since: 3.0.0
36116
e1f9a50effbc Fill comments for PurpleMessage
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 36115
diff changeset
129 */
42048
8d4a5f33faa8 Add a PurpleAccount parameter to the PurpleMessage constructors
Gary Kramlich <grim@reaperworld.com>
parents: 41686
diff changeset
130 PurpleMessage *purple_message_new_outgoing(PurpleAccount *account, const gchar *author, const gchar *recipient, const gchar *contents, PurpleMessageFlags flags);
36074
4f7b1fea3cd3 Initial implementation for PurpleMessage class
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents:
diff changeset
131
36116
e1f9a50effbc Fill comments for PurpleMessage
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 36115
diff changeset
132 /**
e1f9a50effbc Fill comments for PurpleMessage
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 36115
diff changeset
133 * purple_message_new_incoming:
42048
8d4a5f33faa8 Add a PurpleAccount parameter to the PurpleMessage constructors
Gary Kramlich <grim@reaperworld.com>
parents: 41686
diff changeset
134 * @account: The account for this message.
36116
e1f9a50effbc Fill comments for PurpleMessage
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 36115
diff changeset
135 * @who: Message's author.
e1f9a50effbc Fill comments for PurpleMessage
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 36115
diff changeset
136 * @contents: The contents of a message.
e1f9a50effbc Fill comments for PurpleMessage
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 36115
diff changeset
137 * @flags: The message flags.
38561
b18e711ce82f message: Remove % from literal in documentation string
Mike Ruprecht <cmaiku@gmail.com>
parents: 36116
diff changeset
138 * @timestamp: The time of transmitting a message. May be 0 for a current time.
36116
e1f9a50effbc Fill comments for PurpleMessage
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 36115
diff changeset
139 *
e1f9a50effbc Fill comments for PurpleMessage
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 36115
diff changeset
140 * Creates new incoming message (the user is the recipient).
e1f9a50effbc Fill comments for PurpleMessage
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 36115
diff changeset
141 *
e1f9a50effbc Fill comments for PurpleMessage
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 36115
diff changeset
142 * You don't need to set the #PURPLE_MESSAGE_RECV flag.
e1f9a50effbc Fill comments for PurpleMessage
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 36115
diff changeset
143 *
e1f9a50effbc Fill comments for PurpleMessage
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 36115
diff changeset
144 * Returns: the new #PurpleMessage.
40541
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
145 *
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
146 * Since: 3.0.0
36116
e1f9a50effbc Fill comments for PurpleMessage
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 36115
diff changeset
147 */
42048
8d4a5f33faa8 Add a PurpleAccount parameter to the PurpleMessage constructors
Gary Kramlich <grim@reaperworld.com>
parents: 41686
diff changeset
148 PurpleMessage *purple_message_new_incoming(PurpleAccount *account, const gchar *who, const gchar *contents, PurpleMessageFlags flags, guint64 timestamp);
36098
4951752ad038 Split PurpleMessage into incoming, outgoing and system
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 36094
diff changeset
149
36116
e1f9a50effbc Fill comments for PurpleMessage
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 36115
diff changeset
150 /**
e1f9a50effbc Fill comments for PurpleMessage
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 36115
diff changeset
151 * purple_message_new_system:
42048
8d4a5f33faa8 Add a PurpleAccount parameter to the PurpleMessage constructors
Gary Kramlich <grim@reaperworld.com>
parents: 41686
diff changeset
152 * @account: The account for this message.
36116
e1f9a50effbc Fill comments for PurpleMessage
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 36115
diff changeset
153 * @contents: The contents of a message.
e1f9a50effbc Fill comments for PurpleMessage
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 36115
diff changeset
154 * @flags: The message flags.
e1f9a50effbc Fill comments for PurpleMessage
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 36115
diff changeset
155 *
e1f9a50effbc Fill comments for PurpleMessage
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 36115
diff changeset
156 * Creates new system message.
e1f9a50effbc Fill comments for PurpleMessage
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 36115
diff changeset
157 *
e1f9a50effbc Fill comments for PurpleMessage
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 36115
diff changeset
158 * You don't need to set the #PURPLE_MESSAGE_SYSTEM flag.
e1f9a50effbc Fill comments for PurpleMessage
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 36115
diff changeset
159 *
e1f9a50effbc Fill comments for PurpleMessage
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 36115
diff changeset
160 * Returns: the new #PurpleMessage.
40541
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
161 *
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
162 * Since: 3.0.0
36116
e1f9a50effbc Fill comments for PurpleMessage
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 36115
diff changeset
163 */
42048
8d4a5f33faa8 Add a PurpleAccount parameter to the PurpleMessage constructors
Gary Kramlich <grim@reaperworld.com>
parents: 41686
diff changeset
164 PurpleMessage *purple_message_new_system(PurpleAccount *account, const gchar *contents, PurpleMessageFlags flags);
36098
4951752ad038 Split PurpleMessage into incoming, outgoing and system
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 36094
diff changeset
165
36116
e1f9a50effbc Fill comments for PurpleMessage
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 36115
diff changeset
166 /**
e1f9a50effbc Fill comments for PurpleMessage
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 36115
diff changeset
167 * purple_message_get_id:
40541
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
168 * @message: The message.
36116
e1f9a50effbc Fill comments for PurpleMessage
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 36115
diff changeset
169 *
e1f9a50effbc Fill comments for PurpleMessage
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 36115
diff changeset
170 * Returns the unique identifier of the message. These identifiers are not
e1f9a50effbc Fill comments for PurpleMessage
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 36115
diff changeset
171 * serialized - it's a per-session id.
e1f9a50effbc Fill comments for PurpleMessage
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 36115
diff changeset
172 *
40541
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
173 * Returns: the global identifier of @message.
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
174 *
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
175 * Since: 3.0.0
36116
e1f9a50effbc Fill comments for PurpleMessage
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 36115
diff changeset
176 */
41019
f1bdc43bf086 Change PurpleMessage:id to a string and add author-name-color to the property getter/setter.
Gary Kramlich <grim@reaperworld.com>
parents: 41010
diff changeset
177 const gchar *purple_message_get_id(PurpleMessage *message);
36075
dfb5988e053b PurpleMessage: implement IDs and storage-by-id
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 36074
diff changeset
178
36116
e1f9a50effbc Fill comments for PurpleMessage
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 36115
diff changeset
179 /**
e1f9a50effbc Fill comments for PurpleMessage
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 36115
diff changeset
180 * purple_message_get_author:
40541
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
181 * @message: The message.
36116
e1f9a50effbc Fill comments for PurpleMessage
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 36115
diff changeset
182 *
40541
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
183 * Returns the author of the message, not a local alias.
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
184 *
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
185 * Returns: the author of @message.
36116
e1f9a50effbc Fill comments for PurpleMessage
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 36115
diff changeset
186 *
40541
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
187 * Since: 3.0.0
36116
e1f9a50effbc Fill comments for PurpleMessage
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 36115
diff changeset
188 */
40541
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
189 const gchar *purple_message_get_author(PurpleMessage *message);
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
190
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
191 /**
40951
c83bf354d142 Add support for the author-name-color property to PidginMessage and wire it up in PurpleMessage as well
Gary Kramlich <grim@reaperworld.com>
parents: 40742
diff changeset
192 * purple_message_set_author_name_color:
c83bf354d142 Add support for the author-name-color property to PidginMessage and wire it up in PurpleMessage as well
Gary Kramlich <grim@reaperworld.com>
parents: 40742
diff changeset
193 * @message: The #PurpleMessage instance.
c83bf354d142 Add support for the author-name-color property to PidginMessage and wire it up in PurpleMessage as well
Gary Kramlich <grim@reaperworld.com>
parents: 40742
diff changeset
194 * @color: The hex color code for the author of @message.
c83bf354d142 Add support for the author-name-color property to PidginMessage and wire it up in PurpleMessage as well
Gary Kramlich <grim@reaperworld.com>
parents: 40742
diff changeset
195 *
c83bf354d142 Add support for the author-name-color property to PidginMessage and wire it up in PurpleMessage as well
Gary Kramlich <grim@reaperworld.com>
parents: 40742
diff changeset
196 * Sets the author's name color of @message to @color. This is the color that
c83bf354d142 Add support for the author-name-color property to PidginMessage and wire it up in PurpleMessage as well
Gary Kramlich <grim@reaperworld.com>
parents: 40742
diff changeset
197 * will be used to display the author's name in a user interface. The user
c83bf354d142 Add support for the author-name-color property to PidginMessage and wire it up in PurpleMessage as well
Gary Kramlich <grim@reaperworld.com>
parents: 40742
diff changeset
198 * interface might not use this exact color, as it might need to adapt for
c83bf354d142 Add support for the author-name-color property to PidginMessage and wire it up in PurpleMessage as well
Gary Kramlich <grim@reaperworld.com>
parents: 40742
diff changeset
199 * contrast or limits on the number of colors.
c83bf354d142 Add support for the author-name-color property to PidginMessage and wire it up in PurpleMessage as well
Gary Kramlich <grim@reaperworld.com>
parents: 40742
diff changeset
200 *
c83bf354d142 Add support for the author-name-color property to PidginMessage and wire it up in PurpleMessage as well
Gary Kramlich <grim@reaperworld.com>
parents: 40742
diff changeset
201 * Since: 3.0.0
c83bf354d142 Add support for the author-name-color property to PidginMessage and wire it up in PurpleMessage as well
Gary Kramlich <grim@reaperworld.com>
parents: 40742
diff changeset
202 */
c83bf354d142 Add support for the author-name-color property to PidginMessage and wire it up in PurpleMessage as well
Gary Kramlich <grim@reaperworld.com>
parents: 40742
diff changeset
203 void purple_message_set_author_name_color(PurpleMessage *message, const gchar *color);
c83bf354d142 Add support for the author-name-color property to PidginMessage and wire it up in PurpleMessage as well
Gary Kramlich <grim@reaperworld.com>
parents: 40742
diff changeset
204
c83bf354d142 Add support for the author-name-color property to PidginMessage and wire it up in PurpleMessage as well
Gary Kramlich <grim@reaperworld.com>
parents: 40742
diff changeset
205 /**
c83bf354d142 Add support for the author-name-color property to PidginMessage and wire it up in PurpleMessage as well
Gary Kramlich <grim@reaperworld.com>
parents: 40742
diff changeset
206 * purple_message_get_author_name_color:
c83bf354d142 Add support for the author-name-color property to PidginMessage and wire it up in PurpleMessage as well
Gary Kramlich <grim@reaperworld.com>
parents: 40742
diff changeset
207 * @message: The #PurpleMessage instance.
c83bf354d142 Add support for the author-name-color property to PidginMessage and wire it up in PurpleMessage as well
Gary Kramlich <grim@reaperworld.com>
parents: 40742
diff changeset
208 *
c83bf354d142 Add support for the author-name-color property to PidginMessage and wire it up in PurpleMessage as well
Gary Kramlich <grim@reaperworld.com>
parents: 40742
diff changeset
209 * Gets the author's name color for @message.
c83bf354d142 Add support for the author-name-color property to PidginMessage and wire it up in PurpleMessage as well
Gary Kramlich <grim@reaperworld.com>
parents: 40742
diff changeset
210 *
c83bf354d142 Add support for the author-name-color property to PidginMessage and wire it up in PurpleMessage as well
Gary Kramlich <grim@reaperworld.com>
parents: 40742
diff changeset
211 * Returns: (transfer none): The hex color for the author of @message's name.
c83bf354d142 Add support for the author-name-color property to PidginMessage and wire it up in PurpleMessage as well
Gary Kramlich <grim@reaperworld.com>
parents: 40742
diff changeset
212 *
c83bf354d142 Add support for the author-name-color property to PidginMessage and wire it up in PurpleMessage as well
Gary Kramlich <grim@reaperworld.com>
parents: 40742
diff changeset
213 * Since: 3.0.0
c83bf354d142 Add support for the author-name-color property to PidginMessage and wire it up in PurpleMessage as well
Gary Kramlich <grim@reaperworld.com>
parents: 40742
diff changeset
214 */
c83bf354d142 Add support for the author-name-color property to PidginMessage and wire it up in PurpleMessage as well
Gary Kramlich <grim@reaperworld.com>
parents: 40742
diff changeset
215 const gchar *purple_message_get_author_name_color(PurpleMessage *message);
c83bf354d142 Add support for the author-name-color property to PidginMessage and wire it up in PurpleMessage as well
Gary Kramlich <grim@reaperworld.com>
parents: 40742
diff changeset
216
c83bf354d142 Add support for the author-name-color property to PidginMessage and wire it up in PurpleMessage as well
Gary Kramlich <grim@reaperworld.com>
parents: 40742
diff changeset
217 /**
40541
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
218 * purple_message_set_recipient:
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
219 * @message: The #PurpleMessage instance.
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
220 * @recipient: The name of the recipient.
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
221 *
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
222 * Sets the recipient of @message to @recipient.
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
223 *
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
224 * Since: 3.0.0
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
225 */
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
226 void purple_message_set_recipient(PurpleMessage *message, const gchar *recipient);
36098
4951752ad038 Split PurpleMessage into incoming, outgoing and system
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 36094
diff changeset
227
36116
e1f9a50effbc Fill comments for PurpleMessage
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 36115
diff changeset
228 /**
e1f9a50effbc Fill comments for PurpleMessage
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 36115
diff changeset
229 * purple_message_get_recipient:
40541
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
230 * @message: The message.
36116
e1f9a50effbc Fill comments for PurpleMessage
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 36115
diff changeset
231 *
40541
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
232 * Returns the recipient of the message, not a local alias.
36116
e1f9a50effbc Fill comments for PurpleMessage
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 36115
diff changeset
233 *
40541
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
234 * Returns: the recipient of @message.
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
235 *
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
236 * Since: 3.0.0
36116
e1f9a50effbc Fill comments for PurpleMessage
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 36115
diff changeset
237 */
40541
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
238 const gchar *purple_message_get_recipient(PurpleMessage *message);
36076
a0e5b68ff4ef Switch purple_serv_send_im to PurpleMessage
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 36075
diff changeset
239
36116
e1f9a50effbc Fill comments for PurpleMessage
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 36115
diff changeset
240 /**
e1f9a50effbc Fill comments for PurpleMessage
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 36115
diff changeset
241 * purple_message_set_author_alias:
40541
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
242 * @message: The message.
36116
e1f9a50effbc Fill comments for PurpleMessage
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 36115
diff changeset
243 * @alias: The alias.
e1f9a50effbc Fill comments for PurpleMessage
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 36115
diff changeset
244 *
40541
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
245 * Sets the alias of @message's author. You don't normally need to call this.
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
246 *
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
247 * Since: 3.0.0
36116
e1f9a50effbc Fill comments for PurpleMessage
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 36115
diff changeset
248 */
40541
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
249 void purple_message_set_author_alias(PurpleMessage *message, const gchar *alias);
36094
dc5d15df3a88 PurpleMessage: add author's alias
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 36088
diff changeset
250
36116
e1f9a50effbc Fill comments for PurpleMessage
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 36115
diff changeset
251 /**
e1f9a50effbc Fill comments for PurpleMessage
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 36115
diff changeset
252 * purple_message_get_author_alias:
40541
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
253 * @message: The message.
36116
e1f9a50effbc Fill comments for PurpleMessage
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 36115
diff changeset
254 *
40541
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
255 * Returns the alias of @message author.
36116
e1f9a50effbc Fill comments for PurpleMessage
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 36115
diff changeset
256 *
40541
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
257 * Returns: the @message author's alias.
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
258 *
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
259 * Since: 3.0.0
36116
e1f9a50effbc Fill comments for PurpleMessage
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 36115
diff changeset
260 */
40541
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
261 const gchar *purple_message_get_author_alias(PurpleMessage *message);
36094
dc5d15df3a88 PurpleMessage: add author's alias
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 36088
diff changeset
262
36116
e1f9a50effbc Fill comments for PurpleMessage
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 36115
diff changeset
263 /**
e1f9a50effbc Fill comments for PurpleMessage
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 36115
diff changeset
264 * purple_message_set_contents:
40541
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
265 * @message: The message.
36116
e1f9a50effbc Fill comments for PurpleMessage
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 36115
diff changeset
266 * @cont: The contents.
e1f9a50effbc Fill comments for PurpleMessage
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 36115
diff changeset
267 *
40541
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
268 * Sets the contents of the @message. It might be HTML.
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
269 *
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
270 * Since: 3.0.0
36116
e1f9a50effbc Fill comments for PurpleMessage
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 36115
diff changeset
271 */
40541
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
272 void purple_message_set_contents(PurpleMessage *message, const gchar *cont);
36079
2e449140fe0b Switch sending-im-msg to PurpleMessage
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 36076
diff changeset
273
36116
e1f9a50effbc Fill comments for PurpleMessage
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 36115
diff changeset
274 /**
e1f9a50effbc Fill comments for PurpleMessage
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 36115
diff changeset
275 * purple_message_get_contents:
40541
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
276 * @message: The message.
36116
e1f9a50effbc Fill comments for PurpleMessage
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 36115
diff changeset
277 *
e1f9a50effbc Fill comments for PurpleMessage
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 36115
diff changeset
278 * Returns the contents of the message.
e1f9a50effbc Fill comments for PurpleMessage
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 36115
diff changeset
279 *
40541
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
280 * Returns: the contents of @message.
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
281 *
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
282 * Since: 3.0.0
36116
e1f9a50effbc Fill comments for PurpleMessage
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 36115
diff changeset
283 */
40541
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
284 const gchar *purple_message_get_contents(PurpleMessage *message);
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
285
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
286 /**
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
287 * purple_message_set_content_type:
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
288 * @message: The #PurpleMessage instance.
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
289 * @content_type: The #PurpleMessageContentType value.
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
290 *
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
291 * Sets the content-type of @message to @content_type.
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
292 *
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
293 * Since: 3.0.0
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
294 */
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
295 void purple_message_set_content_type(PurpleMessage *message, PurpleMessageContentType content_type);
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
296
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
297 /**
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
298 * purple_message_get_content_type:
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
299 * @message: The #PurpleMessage instance.
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
300 *
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
301 * Gets the content-type of @message.
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
302 *
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
303 * Returns: The #PurpleMessageContentType of @message.
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
304 *
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
305 * Since: 3.0.0
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
306 */
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
307 PurpleMessageContentType purple_message_get_content_type(PurpleMessage *message);
36076
a0e5b68ff4ef Switch purple_serv_send_im to PurpleMessage
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 36075
diff changeset
308
36116
e1f9a50effbc Fill comments for PurpleMessage
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 36115
diff changeset
309 /**
e1f9a50effbc Fill comments for PurpleMessage
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 36115
diff changeset
310 * purple_message_is_empty:
40541
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
311 * @message: The message.
36116
e1f9a50effbc Fill comments for PurpleMessage
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 36115
diff changeset
312 *
e1f9a50effbc Fill comments for PurpleMessage
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 36115
diff changeset
313 * Checks, if the message's body is empty.
e1f9a50effbc Fill comments for PurpleMessage
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 36115
diff changeset
314 *
40541
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
315 * Returns: %TRUE, if @message is empty.
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
316 *
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
317 * Since: 3.0.0
36116
e1f9a50effbc Fill comments for PurpleMessage
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 36115
diff changeset
318 */
40541
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
319 gboolean purple_message_is_empty(PurpleMessage *message);
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
320
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
321 /**
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
322 * purple_message_set_timestamp:
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
323 * @message: The #PurpleMessage instance.
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
324 * @timestamp: (nullable): The #GDateTime of the message.
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
325 *
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
326 * Sets the timestamp of @message.
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
327 *
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
328 * Since: 3.0.0
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
329 */
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
330 void purple_message_set_timestamp(PurpleMessage *message, GDateTime *timestamp);
36076
a0e5b68ff4ef Switch purple_serv_send_im to PurpleMessage
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 36075
diff changeset
331
36116
e1f9a50effbc Fill comments for PurpleMessage
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 36115
diff changeset
332 /**
40541
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
333 * purple_message_get_timestamp:
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
334 * @message: The message.
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
335 *
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
336 * Returns a @message's timestamp. If @message does not currently have a
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
337 * timestamp, the current time will be set as the time stamp and returned.
36116
e1f9a50effbc Fill comments for PurpleMessage
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 36115
diff changeset
338 *
40541
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
339 * Returns: (transfer none): The #GDateTime timestamp from @message.
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
340 *
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
341 * Since: 3.0.0
36116
e1f9a50effbc Fill comments for PurpleMessage
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 36115
diff changeset
342 */
40541
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
343 GDateTime *purple_message_get_timestamp(PurpleMessage *message);
36085
f4d353818589 Add time property to PurpleMessage
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 36079
diff changeset
344
36116
e1f9a50effbc Fill comments for PurpleMessage
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 36115
diff changeset
345 /**
40541
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
346 * purple_message_format_timestamp:
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
347 * @message: The #PurpleMessage instance.
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
348 * @format: The format to output the time stamp as.
36116
e1f9a50effbc Fill comments for PurpleMessage
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 36115
diff changeset
349 *
40541
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
350 * Formats the timestamp of @message and returns it.
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
351 *
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
352 * Returns: The formatted timestamp.
36116
e1f9a50effbc Fill comments for PurpleMessage
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 36115
diff changeset
353 */
40541
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
354 gchar *purple_message_format_timestamp(PurpleMessage *message, const gchar *format);
36085
f4d353818589 Add time property to PurpleMessage
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 36079
diff changeset
355
36116
e1f9a50effbc Fill comments for PurpleMessage
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 36115
diff changeset
356 /**
e1f9a50effbc Fill comments for PurpleMessage
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 36115
diff changeset
357 * purple_message_set_flags:
40541
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
358 * @message: The message.
36116
e1f9a50effbc Fill comments for PurpleMessage
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 36115
diff changeset
359 * @flags: The message flags.
e1f9a50effbc Fill comments for PurpleMessage
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 36115
diff changeset
360 *
40541
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
361 * Sets flags for @message. It shouldn't be in a conflict with a message type,
36116
e1f9a50effbc Fill comments for PurpleMessage
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 36115
diff changeset
362 * so use it carefully.
40541
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
363 *
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
364 * Since: 3.0.0
36116
e1f9a50effbc Fill comments for PurpleMessage
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 36115
diff changeset
365 */
40541
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
366 void purple_message_set_flags(PurpleMessage *message, PurpleMessageFlags flags);
36088
4c386387f6f3 Switch purple_conversation_write_message to PurpleMessage
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 36085
diff changeset
367
36116
e1f9a50effbc Fill comments for PurpleMessage
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 36115
diff changeset
368 /**
e1f9a50effbc Fill comments for PurpleMessage
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 36115
diff changeset
369 * purple_message_get_flags:
40541
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
370 * @message: The message.
36116
e1f9a50effbc Fill comments for PurpleMessage
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 36115
diff changeset
371 *
40541
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
372 * Returns the flags of a @message.
36116
e1f9a50effbc Fill comments for PurpleMessage
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 36115
diff changeset
373 *
40541
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
374 * Returns: the flags of a @message.
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
375 *
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
376 * Since: 3.0.0
36116
e1f9a50effbc Fill comments for PurpleMessage
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 36115
diff changeset
377 */
40541
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
378 PurpleMessageFlags purple_message_get_flags(PurpleMessage *message);
36076
a0e5b68ff4ef Switch purple_serv_send_im to PurpleMessage
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents: 36075
diff changeset
379
40526
c8cc1a4c4a02 Add support for message attachments
Gary Kramlich <grim@reaperworld.com>
parents: 40524
diff changeset
380 /**
42078
979d202488d0 Add an error property to PurpleMessage
Gary Kramlich <grim@reaperworld.com>
parents: 42048
diff changeset
381 * purple_message_set_error:
979d202488d0 Add an error property to PurpleMessage
Gary Kramlich <grim@reaperworld.com>
parents: 42048
diff changeset
382 * @message: The instance.
979d202488d0 Add an error property to PurpleMessage
Gary Kramlich <grim@reaperworld.com>
parents: 42048
diff changeset
383 * @error: (nullable) (transfer full): The error to set.
979d202488d0 Add an error property to PurpleMessage
Gary Kramlich <grim@reaperworld.com>
parents: 42048
diff changeset
384 *
979d202488d0 Add an error property to PurpleMessage
Gary Kramlich <grim@reaperworld.com>
parents: 42048
diff changeset
385 * Sets the error of @message to at @error.
979d202488d0 Add an error property to PurpleMessage
Gary Kramlich <grim@reaperworld.com>
parents: 42048
diff changeset
386 *
979d202488d0 Add an error property to PurpleMessage
Gary Kramlich <grim@reaperworld.com>
parents: 42048
diff changeset
387 * Since: 3.0.0
979d202488d0 Add an error property to PurpleMessage
Gary Kramlich <grim@reaperworld.com>
parents: 42048
diff changeset
388 */
979d202488d0 Add an error property to PurpleMessage
Gary Kramlich <grim@reaperworld.com>
parents: 42048
diff changeset
389 void purple_message_set_error(PurpleMessage *message, GError *error);
979d202488d0 Add an error property to PurpleMessage
Gary Kramlich <grim@reaperworld.com>
parents: 42048
diff changeset
390
979d202488d0 Add an error property to PurpleMessage
Gary Kramlich <grim@reaperworld.com>
parents: 42048
diff changeset
391 /**
979d202488d0 Add an error property to PurpleMessage
Gary Kramlich <grim@reaperworld.com>
parents: 42048
diff changeset
392 * purple_message_get_error:
979d202488d0 Add an error property to PurpleMessage
Gary Kramlich <grim@reaperworld.com>
parents: 42048
diff changeset
393 * @message: The instance.
979d202488d0 Add an error property to PurpleMessage
Gary Kramlich <grim@reaperworld.com>
parents: 42048
diff changeset
394 *
979d202488d0 Add an error property to PurpleMessage
Gary Kramlich <grim@reaperworld.com>
parents: 42048
diff changeset
395 * Gets the error from @message.
979d202488d0 Add an error property to PurpleMessage
Gary Kramlich <grim@reaperworld.com>
parents: 42048
diff changeset
396 *
979d202488d0 Add an error property to PurpleMessage
Gary Kramlich <grim@reaperworld.com>
parents: 42048
diff changeset
397 * Returns: (nullable) (transfer none): The error from @message or %NULL.
979d202488d0 Add an error property to PurpleMessage
Gary Kramlich <grim@reaperworld.com>
parents: 42048
diff changeset
398 *
979d202488d0 Add an error property to PurpleMessage
Gary Kramlich <grim@reaperworld.com>
parents: 42048
diff changeset
399 * Since: 3.0.0
979d202488d0 Add an error property to PurpleMessage
Gary Kramlich <grim@reaperworld.com>
parents: 42048
diff changeset
400 */
979d202488d0 Add an error property to PurpleMessage
Gary Kramlich <grim@reaperworld.com>
parents: 42048
diff changeset
401 GError *purple_message_get_error(PurpleMessage *message);
979d202488d0 Add an error property to PurpleMessage
Gary Kramlich <grim@reaperworld.com>
parents: 42048
diff changeset
402
979d202488d0 Add an error property to PurpleMessage
Gary Kramlich <grim@reaperworld.com>
parents: 42048
diff changeset
403 /**
40526
c8cc1a4c4a02 Add support for message attachments
Gary Kramlich <grim@reaperworld.com>
parents: 40524
diff changeset
404 * purple_message_add_attachment:
c8cc1a4c4a02 Add support for message attachments
Gary Kramlich <grim@reaperworld.com>
parents: 40524
diff changeset
405 * @message: The #PurpleMessage instance.
c8cc1a4c4a02 Add support for message attachments
Gary Kramlich <grim@reaperworld.com>
parents: 40524
diff changeset
406 * @attachment: The #PurpleAttachment instance.
c8cc1a4c4a02 Add support for message attachments
Gary Kramlich <grim@reaperworld.com>
parents: 40524
diff changeset
407 *
c8cc1a4c4a02 Add support for message attachments
Gary Kramlich <grim@reaperworld.com>
parents: 40524
diff changeset
408 * Adds @attachment to @message.
c8cc1a4c4a02 Add support for message attachments
Gary Kramlich <grim@reaperworld.com>
parents: 40524
diff changeset
409 *
c8cc1a4c4a02 Add support for message attachments
Gary Kramlich <grim@reaperworld.com>
parents: 40524
diff changeset
410 * Returns %TRUE if an attachment with the same ID did not already exist.
40541
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
411 *
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
412 * Since: 3.0.0
40526
c8cc1a4c4a02 Add support for message attachments
Gary Kramlich <grim@reaperworld.com>
parents: 40524
diff changeset
413 */
c8cc1a4c4a02 Add support for message attachments
Gary Kramlich <grim@reaperworld.com>
parents: 40524
diff changeset
414 gboolean purple_message_add_attachment(PurpleMessage *message, PurpleAttachment *attachment);
c8cc1a4c4a02 Add support for message attachments
Gary Kramlich <grim@reaperworld.com>
parents: 40524
diff changeset
415
c8cc1a4c4a02 Add support for message attachments
Gary Kramlich <grim@reaperworld.com>
parents: 40524
diff changeset
416 /**
c8cc1a4c4a02 Add support for message attachments
Gary Kramlich <grim@reaperworld.com>
parents: 40524
diff changeset
417 * purple_message_remove_attachment:
c8cc1a4c4a02 Add support for message attachments
Gary Kramlich <grim@reaperworld.com>
parents: 40524
diff changeset
418 * @message: The #PurpleMessage instance.
c8cc1a4c4a02 Add support for message attachments
Gary Kramlich <grim@reaperworld.com>
parents: 40524
diff changeset
419 * @id: The id of the #PurpleAttachment
c8cc1a4c4a02 Add support for message attachments
Gary Kramlich <grim@reaperworld.com>
parents: 40524
diff changeset
420 *
c8cc1a4c4a02 Add support for message attachments
Gary Kramlich <grim@reaperworld.com>
parents: 40524
diff changeset
421 * Removes the #PurpleAttachment identified by @id if it exists.
c8cc1a4c4a02 Add support for message attachments
Gary Kramlich <grim@reaperworld.com>
parents: 40524
diff changeset
422 *
c8cc1a4c4a02 Add support for message attachments
Gary Kramlich <grim@reaperworld.com>
parents: 40524
diff changeset
423 * Returns: %TRUE if the #PurpleAttachment was found and removed, %FALSE
c8cc1a4c4a02 Add support for message attachments
Gary Kramlich <grim@reaperworld.com>
parents: 40524
diff changeset
424 * otherwise.
40541
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
425 *
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
426 * Since: 3.0.0
40526
c8cc1a4c4a02 Add support for message attachments
Gary Kramlich <grim@reaperworld.com>
parents: 40524
diff changeset
427 */
c8cc1a4c4a02 Add support for message attachments
Gary Kramlich <grim@reaperworld.com>
parents: 40524
diff changeset
428 gboolean purple_message_remove_attachment(PurpleMessage *message, guint64 id);
c8cc1a4c4a02 Add support for message attachments
Gary Kramlich <grim@reaperworld.com>
parents: 40524
diff changeset
429
c8cc1a4c4a02 Add support for message attachments
Gary Kramlich <grim@reaperworld.com>
parents: 40524
diff changeset
430 /**
c8cc1a4c4a02 Add support for message attachments
Gary Kramlich <grim@reaperworld.com>
parents: 40524
diff changeset
431 * purple_message_get_attachment:
c8cc1a4c4a02 Add support for message attachments
Gary Kramlich <grim@reaperworld.com>
parents: 40524
diff changeset
432 * @message: The #PurpleMessage instance.
c8cc1a4c4a02 Add support for message attachments
Gary Kramlich <grim@reaperworld.com>
parents: 40524
diff changeset
433 * @id: The id of the #PurpleAttachment to get.
c8cc1a4c4a02 Add support for message attachments
Gary Kramlich <grim@reaperworld.com>
parents: 40524
diff changeset
434 *
c8cc1a4c4a02 Add support for message attachments
Gary Kramlich <grim@reaperworld.com>
parents: 40524
diff changeset
435 * Retrieves the #PurpleAttachment identified by @id from @message.
c8cc1a4c4a02 Add support for message attachments
Gary Kramlich <grim@reaperworld.com>
parents: 40524
diff changeset
436 *
c8cc1a4c4a02 Add support for message attachments
Gary Kramlich <grim@reaperworld.com>
parents: 40524
diff changeset
437 * Returns: (transfer full): The #PurpleAttachment if it was found, otherwise
c8cc1a4c4a02 Add support for message attachments
Gary Kramlich <grim@reaperworld.com>
parents: 40524
diff changeset
438 * %NULL.
40541
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
439 *
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
440 * Since: 3.0.0
40526
c8cc1a4c4a02 Add support for message attachments
Gary Kramlich <grim@reaperworld.com>
parents: 40524
diff changeset
441 */
c8cc1a4c4a02 Add support for message attachments
Gary Kramlich <grim@reaperworld.com>
parents: 40524
diff changeset
442 PurpleAttachment *purple_message_get_attachment(PurpleMessage *message, guint64 id);
c8cc1a4c4a02 Add support for message attachments
Gary Kramlich <grim@reaperworld.com>
parents: 40524
diff changeset
443
c8cc1a4c4a02 Add support for message attachments
Gary Kramlich <grim@reaperworld.com>
parents: 40524
diff changeset
444 /**
c8cc1a4c4a02 Add support for message attachments
Gary Kramlich <grim@reaperworld.com>
parents: 40524
diff changeset
445 * purple_message_foreach_attachment:
c8cc1a4c4a02 Add support for message attachments
Gary Kramlich <grim@reaperworld.com>
parents: 40524
diff changeset
446 * @message: The #PurpleMessage instance.
c8cc1a4c4a02 Add support for message attachments
Gary Kramlich <grim@reaperworld.com>
parents: 40524
diff changeset
447 * @func: (scope call): The #PurpleAttachmentForeachFunc to call.
c8cc1a4c4a02 Add support for message attachments
Gary Kramlich <grim@reaperworld.com>
parents: 40524
diff changeset
448 * @data: User data to pass to @func.
c8cc1a4c4a02 Add support for message attachments
Gary Kramlich <grim@reaperworld.com>
parents: 40524
diff changeset
449 *
c8cc1a4c4a02 Add support for message attachments
Gary Kramlich <grim@reaperworld.com>
parents: 40524
diff changeset
450 * Calls @func for each #PurpleAttachment that's attached to @message.
40541
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
451 *
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
452 * Since: 3.0.0
40526
c8cc1a4c4a02 Add support for message attachments
Gary Kramlich <grim@reaperworld.com>
parents: 40524
diff changeset
453 */
c8cc1a4c4a02 Add support for message attachments
Gary Kramlich <grim@reaperworld.com>
parents: 40524
diff changeset
454 void purple_message_foreach_attachment(PurpleMessage *message, PurpleAttachmentForeachFunc func, gpointer data);
c8cc1a4c4a02 Add support for message attachments
Gary Kramlich <grim@reaperworld.com>
parents: 40524
diff changeset
455
c8cc1a4c4a02 Add support for message attachments
Gary Kramlich <grim@reaperworld.com>
parents: 40524
diff changeset
456 /**
c8cc1a4c4a02 Add support for message attachments
Gary Kramlich <grim@reaperworld.com>
parents: 40524
diff changeset
457 * purple_message_clear_attachments:
c8cc1a4c4a02 Add support for message attachments
Gary Kramlich <grim@reaperworld.com>
parents: 40524
diff changeset
458 * @message: The #PurpleMessage instance.
c8cc1a4c4a02 Add support for message attachments
Gary Kramlich <grim@reaperworld.com>
parents: 40524
diff changeset
459 *
c8cc1a4c4a02 Add support for message attachments
Gary Kramlich <grim@reaperworld.com>
parents: 40524
diff changeset
460 * Removes all attachments from @message.
40541
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
461 *
9ceb8d25d4d9 PurpleMessage cleanups from hell
Gary Kramlich <grim@reaperworld.com>
parents: 40539
diff changeset
462 * Since: 3.0.0
40526
c8cc1a4c4a02 Add support for message attachments
Gary Kramlich <grim@reaperworld.com>
parents: 40524
diff changeset
463 */
c8cc1a4c4a02 Add support for message attachments
Gary Kramlich <grim@reaperworld.com>
parents: 40524
diff changeset
464 void purple_message_clear_attachments(PurpleMessage *message);
c8cc1a4c4a02 Add support for message attachments
Gary Kramlich <grim@reaperworld.com>
parents: 40524
diff changeset
465
36074
4f7b1fea3cd3 Initial implementation for PurpleMessage class
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents:
diff changeset
466 G_END_DECLS
4f7b1fea3cd3 Initial implementation for PurpleMessage class
Tomasz Wasilczyk <twasilczyk@pidgin.im>
parents:
diff changeset
467
39659
e4dfb99b0cef Fix libpurple header guards using reserved names.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents: 39537
diff changeset
468 #endif /* PURPLE_MESSAGE_H */

mercurial