Sat, 29 Jun 2013 03:15:11 +0530
Made PurpleConversationMessage a GBoxed
| 4359 | 1 | /** |
|
34651
88c104a20f4b
Refactored the PurpleConversation subclasses and subsystem to use the GObject conversation API.
Ankit Vani <a@nevitus.org>
parents:
34648
diff
changeset
|
2 | * @file conversation.h Conversation base class API |
|
5034
077678f7b048
[gaim-migrate @ 5377]
Christian Hammond <chipx86@chipx86.com>
parents:
4890
diff
changeset
|
3 | * @ingroup core |
|
20147
66f05a854eee
applied changes from 8a731bbd0197fbcc91a705c2d8f528154216defa
Richard Laager <rlaager@pidgin.im>
parents:
19904
diff
changeset
|
4 | */ |
|
66f05a854eee
applied changes from 8a731bbd0197fbcc91a705c2d8f528154216defa
Richard Laager <rlaager@pidgin.im>
parents:
19904
diff
changeset
|
5 | |
|
66f05a854eee
applied changes from 8a731bbd0197fbcc91a705c2d8f528154216defa
Richard Laager <rlaager@pidgin.im>
parents:
19904
diff
changeset
|
6 | /* purple |
| 4359 | 7 | * |
| 15884 | 8 | * Purple is the legal property of its developers, whose names are too numerous |
| 8046 | 9 | * to list here. Please refer to the COPYRIGHT file distributed with this |
| 10 | * source distribution. | |
|
6485
3c7ba18e32f1
[gaim-migrate @ 6999]
Christian Hammond <chipx86@chipx86.com>
parents:
6414
diff
changeset
|
11 | * |
| 4359 | 12 | * This program is free software; you can redistribute it and/or modify |
| 13 | * it under the terms of the GNU General Public License as published by | |
| 14 | * the Free Software Foundation; either version 2 of the License, or | |
| 15 | * (at your option) any later version. | |
| 16 | * | |
| 17 | * This program is distributed in the hope that it will be useful, | |
| 18 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | |
| 19 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
| 20 | * GNU General Public License for more details. | |
| 21 | * | |
| 22 | * You should have received a copy of the GNU General Public License | |
| 23 | * along with this program; if not, write to the Free Software | |
|
19859
71d37b57eff2
The FSF changed its address a while ago; our files were out of date.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
19733
diff
changeset
|
24 | * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02111-1301 USA |
| 4359 | 25 | */ |
| 15884 | 26 | #ifndef _PURPLE_CONVERSATION_H_ |
| 27 | #define _PURPLE_CONVERSATION_H_ | |
| 4359 | 28 | |
|
34609
28b0f26f011f
Added GObject boilerplate code for headers, also _new() and _get_type() functions.
Ankit Vani <a@nevitus.org>
parents:
34608
diff
changeset
|
29 | #define PURPLE_TYPE_CONVERSATION (purple_conversation_get_type()) |
|
28b0f26f011f
Added GObject boilerplate code for headers, also _new() and _get_type() functions.
Ankit Vani <a@nevitus.org>
parents:
34608
diff
changeset
|
30 | #define PURPLE_CONVERSATION(obj) (G_TYPE_CHECK_INSTANCE_CAST((obj), PURPLE_TYPE_CONVERSATION, PurpleConversation)) |
|
28b0f26f011f
Added GObject boilerplate code for headers, also _new() and _get_type() functions.
Ankit Vani <a@nevitus.org>
parents:
34608
diff
changeset
|
31 | #define PURPLE_CONVERSATION_CLASS(klass) (G_TYPE_CHECK_CLASS_CAST((klass), PURPLE_TYPE_CONVERSATION, PurpleConversationClass)) |
|
28b0f26f011f
Added GObject boilerplate code for headers, also _new() and _get_type() functions.
Ankit Vani <a@nevitus.org>
parents:
34608
diff
changeset
|
32 | #define PURPLE_IS_CONVERSATION(obj) (G_TYPE_CHECK_INSTANCE_TYPE((obj), PURPLE_TYPE_CONVERSATION)) |
|
28b0f26f011f
Added GObject boilerplate code for headers, also _new() and _get_type() functions.
Ankit Vani <a@nevitus.org>
parents:
34608
diff
changeset
|
33 | #define PURPLE_IS_CONVERSATION_CLASS(klass) (G_TYPE_CHECK_CLASS_TYPE((klass), PURPLE_TYPE_CONVERSATION)) |
|
28b0f26f011f
Added GObject boilerplate code for headers, also _new() and _get_type() functions.
Ankit Vani <a@nevitus.org>
parents:
34608
diff
changeset
|
34 | #define PURPLE_CONVERSATION_GET_CLASS(obj) (G_TYPE_INSTANCE_GET_CLASS((obj), PURPLE_TYPE_CONVERSATION, PurpleConversationClass)) |
|
28b0f26f011f
Added GObject boilerplate code for headers, also _new() and _get_type() functions.
Ankit Vani <a@nevitus.org>
parents:
34608
diff
changeset
|
35 | |
| 4359 | 36 | /**************************************************************************/ |
| 37 | /** Data Structures */ | |
| 38 | /**************************************************************************/ | |
| 39 | ||
|
34599
0b1b22f5e2ec
Begun GObjectification of PurpleConversation.
Ankit Vani <a@nevitus.org>
parents:
34595
diff
changeset
|
40 | /** @copydoc _PurpleConversation */ |
|
0b1b22f5e2ec
Begun GObjectification of PurpleConversation.
Ankit Vani <a@nevitus.org>
parents:
34595
diff
changeset
|
41 | typedef struct _PurpleConversation PurpleConversation; |
|
0b1b22f5e2ec
Begun GObjectification of PurpleConversation.
Ankit Vani <a@nevitus.org>
parents:
34595
diff
changeset
|
42 | /** @copydoc _PurpleConversation */ |
|
0b1b22f5e2ec
Begun GObjectification of PurpleConversation.
Ankit Vani <a@nevitus.org>
parents:
34595
diff
changeset
|
43 | typedef struct _PurpleConversationClass PurpleConversationClass; |
|
34600
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
44 | |
|
23514
f5c4c1cb7b6f
Sprinkle @copydoc around to squash "ref could not be resolved" Doxygen warnings,
Will Thompson <resiak@pidgin.im>
parents:
23063
diff
changeset
|
45 | /** @copydoc _PurpleConversationUiOps */ |
|
34599
0b1b22f5e2ec
Begun GObjectification of PurpleConversation.
Ankit Vani <a@nevitus.org>
parents:
34595
diff
changeset
|
46 | typedef struct _PurpleConversationUiOps PurpleConversationUiOps; |
|
0b1b22f5e2ec
Begun GObjectification of PurpleConversation.
Ankit Vani <a@nevitus.org>
parents:
34595
diff
changeset
|
47 | /** @copydoc _PurpleConversationMessage */ |
|
0b1b22f5e2ec
Begun GObjectification of PurpleConversation.
Ankit Vani <a@nevitus.org>
parents:
34595
diff
changeset
|
48 | typedef struct _PurpleConversationMessage PurpleConversationMessage; |
| 4359 | 49 | |
| 50 | /** | |
| 51 | * Conversation update type. | |
| 52 | */ | |
|
5944
f19df037ac58
[gaim-migrate @ 6385]
Christian Hammond <chipx86@chipx86.com>
parents:
5872
diff
changeset
|
53 | typedef enum |
| 4359 | 54 | { |
|
34599
0b1b22f5e2ec
Begun GObjectification of PurpleConversation.
Ankit Vani <a@nevitus.org>
parents:
34595
diff
changeset
|
55 | PURPLE_CONVERSATION_UPDATE_ADD = 0, /**< The buddy associated with the conversation |
|
0b1b22f5e2ec
Begun GObjectification of PurpleConversation.
Ankit Vani <a@nevitus.org>
parents:
34595
diff
changeset
|
56 | was added. */ |
|
0b1b22f5e2ec
Begun GObjectification of PurpleConversation.
Ankit Vani <a@nevitus.org>
parents:
34595
diff
changeset
|
57 | PURPLE_CONVERSATION_UPDATE_REMOVE, /**< The buddy associated with the conversation |
|
0b1b22f5e2ec
Begun GObjectification of PurpleConversation.
Ankit Vani <a@nevitus.org>
parents:
34595
diff
changeset
|
58 | was removed. */ |
|
0b1b22f5e2ec
Begun GObjectification of PurpleConversation.
Ankit Vani <a@nevitus.org>
parents:
34595
diff
changeset
|
59 | PURPLE_CONVERSATION_UPDATE_ACCOUNT, /**< The purple_account was changed. */ |
|
0b1b22f5e2ec
Begun GObjectification of PurpleConversation.
Ankit Vani <a@nevitus.org>
parents:
34595
diff
changeset
|
60 | PURPLE_CONVERSATION_UPDATE_TYPING, /**< The typing state was updated. */ |
|
0b1b22f5e2ec
Begun GObjectification of PurpleConversation.
Ankit Vani <a@nevitus.org>
parents:
34595
diff
changeset
|
61 | PURPLE_CONVERSATION_UPDATE_UNSEEN, /**< The unseen state was updated. */ |
|
0b1b22f5e2ec
Begun GObjectification of PurpleConversation.
Ankit Vani <a@nevitus.org>
parents:
34595
diff
changeset
|
62 | PURPLE_CONVERSATION_UPDATE_LOGGING, /**< Logging for this conversation was |
|
0b1b22f5e2ec
Begun GObjectification of PurpleConversation.
Ankit Vani <a@nevitus.org>
parents:
34595
diff
changeset
|
63 | enabled or disabled. */ |
|
0b1b22f5e2ec
Begun GObjectification of PurpleConversation.
Ankit Vani <a@nevitus.org>
parents:
34595
diff
changeset
|
64 | PURPLE_CONVERSATION_UPDATE_TOPIC, /**< The topic for a chat was updated. */ |
| 4359 | 65 | /* |
| 66 | * XXX These need to go when we implement a more generic core/UI event | |
| 67 | * system. | |
| 68 | */ | |
|
34599
0b1b22f5e2ec
Begun GObjectification of PurpleConversation.
Ankit Vani <a@nevitus.org>
parents:
34595
diff
changeset
|
69 | PURPLE_CONVERSATION_ACCOUNT_ONLINE, /**< One of the user's accounts went online. */ |
|
0b1b22f5e2ec
Begun GObjectification of PurpleConversation.
Ankit Vani <a@nevitus.org>
parents:
34595
diff
changeset
|
70 | PURPLE_CONVERSATION_ACCOUNT_OFFLINE, /**< One of the user's accounts went offline. */ |
|
0b1b22f5e2ec
Begun GObjectification of PurpleConversation.
Ankit Vani <a@nevitus.org>
parents:
34595
diff
changeset
|
71 | PURPLE_CONVERSATION_UPDATE_AWAY, /**< The other user went away. */ |
|
0b1b22f5e2ec
Begun GObjectification of PurpleConversation.
Ankit Vani <a@nevitus.org>
parents:
34595
diff
changeset
|
72 | PURPLE_CONVERSATION_UPDATE_ICON, /**< The other user's buddy icon changed. */ |
|
0b1b22f5e2ec
Begun GObjectification of PurpleConversation.
Ankit Vani <a@nevitus.org>
parents:
34595
diff
changeset
|
73 | PURPLE_CONVERSATION_UPDATE_TITLE, |
|
0b1b22f5e2ec
Begun GObjectification of PurpleConversation.
Ankit Vani <a@nevitus.org>
parents:
34595
diff
changeset
|
74 | PURPLE_CONVERSATION_UPDATE_CHATLEFT, |
| 10665 | 75 | |
|
34599
0b1b22f5e2ec
Begun GObjectification of PurpleConversation.
Ankit Vani <a@nevitus.org>
parents:
34595
diff
changeset
|
76 | PURPLE_CONVERSATION_UPDATE_FEATURES /**< The features for a chat have changed */ |
|
5944
f19df037ac58
[gaim-migrate @ 6385]
Christian Hammond <chipx86@chipx86.com>
parents:
5872
diff
changeset
|
77 | |
|
34599
0b1b22f5e2ec
Begun GObjectification of PurpleConversation.
Ankit Vani <a@nevitus.org>
parents:
34595
diff
changeset
|
78 | } PurpleConversationUpdateType; |
| 4359 | 79 | |
| 80 | /** | |
|
6621
2a18ef3e5224
[gaim-migrate @ 7145]
Robert McQueen <robot101@debian.org>
parents:
6605
diff
changeset
|
81 | * Flags applicable to a message. Most will have send, recv or system. |
|
2a18ef3e5224
[gaim-migrate @ 7145]
Robert McQueen <robot101@debian.org>
parents:
6605
diff
changeset
|
82 | */ |
|
34599
0b1b22f5e2ec
Begun GObjectification of PurpleConversation.
Ankit Vani <a@nevitus.org>
parents:
34595
diff
changeset
|
83 | typedef enum /*< flags >*/ |
|
6621
2a18ef3e5224
[gaim-migrate @ 7145]
Robert McQueen <robot101@debian.org>
parents:
6605
diff
changeset
|
84 | { |
|
34620
e49aa67344e1
Renamed PurpleConversationMessageFlags back to PurpleMessageFlags.
Ankit Vani <a@nevitus.org>
parents:
34616
diff
changeset
|
85 | PURPLE_MESSAGE_SEND = 0x0001, /**< Outgoing message. */ |
|
e49aa67344e1
Renamed PurpleConversationMessageFlags back to PurpleMessageFlags.
Ankit Vani <a@nevitus.org>
parents:
34616
diff
changeset
|
86 | PURPLE_MESSAGE_RECV = 0x0002, /**< Incoming message. */ |
|
e49aa67344e1
Renamed PurpleConversationMessageFlags back to PurpleMessageFlags.
Ankit Vani <a@nevitus.org>
parents:
34616
diff
changeset
|
87 | PURPLE_MESSAGE_SYSTEM = 0x0004, /**< System message. */ |
|
e49aa67344e1
Renamed PurpleConversationMessageFlags back to PurpleMessageFlags.
Ankit Vani <a@nevitus.org>
parents:
34616
diff
changeset
|
88 | PURPLE_MESSAGE_AUTO_RESP = 0x0008, /**< Auto response. */ |
|
e49aa67344e1
Renamed PurpleConversationMessageFlags back to PurpleMessageFlags.
Ankit Vani <a@nevitus.org>
parents:
34616
diff
changeset
|
89 | PURPLE_MESSAGE_ACTIVE_ONLY = 0x0010, /**< Hint to the UI that this |
|
34654
adffcd91c9a3
A little rearranging and added reminders
Ankit Vani <a@nevitus.org>
parents:
34651
diff
changeset
|
90 | message should not be |
|
adffcd91c9a3
A little rearranging and added reminders
Ankit Vani <a@nevitus.org>
parents:
34651
diff
changeset
|
91 | shown in conversations |
|
adffcd91c9a3
A little rearranging and added reminders
Ankit Vani <a@nevitus.org>
parents:
34651
diff
changeset
|
92 | which are only open for |
|
adffcd91c9a3
A little rearranging and added reminders
Ankit Vani <a@nevitus.org>
parents:
34651
diff
changeset
|
93 | internal UI purposes |
|
adffcd91c9a3
A little rearranging and added reminders
Ankit Vani <a@nevitus.org>
parents:
34651
diff
changeset
|
94 | (e.g. for contact-aware |
|
adffcd91c9a3
A little rearranging and added reminders
Ankit Vani <a@nevitus.org>
parents:
34651
diff
changeset
|
95 | conversations). */ |
|
34620
e49aa67344e1
Renamed PurpleConversationMessageFlags back to PurpleMessageFlags.
Ankit Vani <a@nevitus.org>
parents:
34616
diff
changeset
|
96 | PURPLE_MESSAGE_NICK = 0x0020, /**< Contains your nick. */ |
|
e49aa67344e1
Renamed PurpleConversationMessageFlags back to PurpleMessageFlags.
Ankit Vani <a@nevitus.org>
parents:
34616
diff
changeset
|
97 | PURPLE_MESSAGE_NO_LOG = 0x0040, /**< Do not log. */ |
|
e49aa67344e1
Renamed PurpleConversationMessageFlags back to PurpleMessageFlags.
Ankit Vani <a@nevitus.org>
parents:
34616
diff
changeset
|
98 | PURPLE_MESSAGE_WHISPER = 0x0080, /**< Whispered message. */ |
|
e49aa67344e1
Renamed PurpleConversationMessageFlags back to PurpleMessageFlags.
Ankit Vani <a@nevitus.org>
parents:
34616
diff
changeset
|
99 | PURPLE_MESSAGE_ERROR = 0x0200, /**< Error message. */ |
|
e49aa67344e1
Renamed PurpleConversationMessageFlags back to PurpleMessageFlags.
Ankit Vani <a@nevitus.org>
parents:
34616
diff
changeset
|
100 | PURPLE_MESSAGE_DELAYED = 0x0400, /**< Delayed message. */ |
|
e49aa67344e1
Renamed PurpleConversationMessageFlags back to PurpleMessageFlags.
Ankit Vani <a@nevitus.org>
parents:
34616
diff
changeset
|
101 | PURPLE_MESSAGE_RAW = 0x0800, /**< "Raw" message - don't |
|
34654
adffcd91c9a3
A little rearranging and added reminders
Ankit Vani <a@nevitus.org>
parents:
34651
diff
changeset
|
102 | apply formatting */ |
|
34620
e49aa67344e1
Renamed PurpleConversationMessageFlags back to PurpleMessageFlags.
Ankit Vani <a@nevitus.org>
parents:
34616
diff
changeset
|
103 | PURPLE_MESSAGE_IMAGES = 0x1000, /**< Message contains images */ |
|
e49aa67344e1
Renamed PurpleConversationMessageFlags back to PurpleMessageFlags.
Ankit Vani <a@nevitus.org>
parents:
34616
diff
changeset
|
104 | PURPLE_MESSAGE_NOTIFY = 0x2000, /**< Message is a notification */ |
|
e49aa67344e1
Renamed PurpleConversationMessageFlags back to PurpleMessageFlags.
Ankit Vani <a@nevitus.org>
parents:
34616
diff
changeset
|
105 | PURPLE_MESSAGE_NO_LINKIFY = 0x4000, /**< Message should not be auto- |
|
34654
adffcd91c9a3
A little rearranging and added reminders
Ankit Vani <a@nevitus.org>
parents:
34651
diff
changeset
|
106 | linkified */ |
|
34620
e49aa67344e1
Renamed PurpleConversationMessageFlags back to PurpleMessageFlags.
Ankit Vani <a@nevitus.org>
parents:
34616
diff
changeset
|
107 | PURPLE_MESSAGE_INVISIBLE = 0x8000 /**< Message should not be displayed */ |
|
e49aa67344e1
Renamed PurpleConversationMessageFlags back to PurpleMessageFlags.
Ankit Vani <a@nevitus.org>
parents:
34616
diff
changeset
|
108 | } PurpleMessageFlags; |
|
6621
2a18ef3e5224
[gaim-migrate @ 7145]
Robert McQueen <robot101@debian.org>
parents:
6605
diff
changeset
|
109 | |
|
34620
e49aa67344e1
Renamed PurpleConversationMessageFlags back to PurpleMessageFlags.
Ankit Vani <a@nevitus.org>
parents:
34616
diff
changeset
|
110 | #include <glib.h> |
|
e49aa67344e1
Renamed PurpleConversationMessageFlags back to PurpleMessageFlags.
Ankit Vani <a@nevitus.org>
parents:
34616
diff
changeset
|
111 | #include <glib-object.h> |
|
5872
754c63f29b77
[gaim-migrate @ 6304]
Christian Hammond <chipx86@chipx86.com>
parents:
5858
diff
changeset
|
112 | |
|
34601
bccb29d7be14
Removed GObject for PurpleConversationMessage, this will be a GBoxed
Ankit Vani <a@nevitus.org>
parents:
34600
diff
changeset
|
113 | /**************************************************************************/ |
|
bccb29d7be14
Removed GObject for PurpleConversationMessage, this will be a GBoxed
Ankit Vani <a@nevitus.org>
parents:
34600
diff
changeset
|
114 | /** PurpleConversation */ |
|
bccb29d7be14
Removed GObject for PurpleConversationMessage, this will be a GBoxed
Ankit Vani <a@nevitus.org>
parents:
34600
diff
changeset
|
115 | /**************************************************************************/ |
|
bccb29d7be14
Removed GObject for PurpleConversationMessage, this will be a GBoxed
Ankit Vani <a@nevitus.org>
parents:
34600
diff
changeset
|
116 | /** Structure representing a conversation instance. */ |
|
34599
0b1b22f5e2ec
Begun GObjectification of PurpleConversation.
Ankit Vani <a@nevitus.org>
parents:
34595
diff
changeset
|
117 | struct _PurpleConversation |
|
0b1b22f5e2ec
Begun GObjectification of PurpleConversation.
Ankit Vani <a@nevitus.org>
parents:
34595
diff
changeset
|
118 | { |
|
0b1b22f5e2ec
Begun GObjectification of PurpleConversation.
Ankit Vani <a@nevitus.org>
parents:
34595
diff
changeset
|
119 | /*< private >*/ |
|
0b1b22f5e2ec
Begun GObjectification of PurpleConversation.
Ankit Vani <a@nevitus.org>
parents:
34595
diff
changeset
|
120 | GObject gparent; |
|
0b1b22f5e2ec
Begun GObjectification of PurpleConversation.
Ankit Vani <a@nevitus.org>
parents:
34595
diff
changeset
|
121 | |
|
0b1b22f5e2ec
Begun GObjectification of PurpleConversation.
Ankit Vani <a@nevitus.org>
parents:
34595
diff
changeset
|
122 | void (*_purple_reserved1)(void); |
|
0b1b22f5e2ec
Begun GObjectification of PurpleConversation.
Ankit Vani <a@nevitus.org>
parents:
34595
diff
changeset
|
123 | void (*_purple_reserved2)(void); |
|
0b1b22f5e2ec
Begun GObjectification of PurpleConversation.
Ankit Vani <a@nevitus.org>
parents:
34595
diff
changeset
|
124 | void (*_purple_reserved3)(void); |
|
0b1b22f5e2ec
Begun GObjectification of PurpleConversation.
Ankit Vani <a@nevitus.org>
parents:
34595
diff
changeset
|
125 | void (*_purple_reserved4)(void); |
|
0b1b22f5e2ec
Begun GObjectification of PurpleConversation.
Ankit Vani <a@nevitus.org>
parents:
34595
diff
changeset
|
126 | }; |
|
0b1b22f5e2ec
Begun GObjectification of PurpleConversation.
Ankit Vani <a@nevitus.org>
parents:
34595
diff
changeset
|
127 | |
|
34601
bccb29d7be14
Removed GObject for PurpleConversationMessage, this will be a GBoxed
Ankit Vani <a@nevitus.org>
parents:
34600
diff
changeset
|
128 | /** Base class for all #PurpleConversation's */ |
|
34599
0b1b22f5e2ec
Begun GObjectification of PurpleConversation.
Ankit Vani <a@nevitus.org>
parents:
34595
diff
changeset
|
129 | struct _PurpleConversationClass { |
|
0b1b22f5e2ec
Begun GObjectification of PurpleConversation.
Ankit Vani <a@nevitus.org>
parents:
34595
diff
changeset
|
130 | /*< private >*/ |
|
0b1b22f5e2ec
Begun GObjectification of PurpleConversation.
Ankit Vani <a@nevitus.org>
parents:
34595
diff
changeset
|
131 | GObjectClass parent_class; |
|
0b1b22f5e2ec
Begun GObjectification of PurpleConversation.
Ankit Vani <a@nevitus.org>
parents:
34595
diff
changeset
|
132 | |
|
34648
a6587d8cf907
Added missing API implementations to PurpleConversation and subclasses
Ankit Vani <a@nevitus.org>
parents:
34646
diff
changeset
|
133 | /** Writes a message to a chat or IM conversation. |
|
34615
5f7212d27557
Removed send from PurpleConversation's virtual methods, renamed the remaining methods.
Ankit Vani <a@nevitus.org>
parents:
34612
diff
changeset
|
134 | * @see purple_conversation_write_message() |
|
5f7212d27557
Removed send from PurpleConversation's virtual methods, renamed the remaining methods.
Ankit Vani <a@nevitus.org>
parents:
34612
diff
changeset
|
135 | */ |
|
5f7212d27557
Removed send from PurpleConversation's virtual methods, renamed the remaining methods.
Ankit Vani <a@nevitus.org>
parents:
34612
diff
changeset
|
136 | void (*write_message)(PurpleConversation *conv, const char *who, |
|
34648
a6587d8cf907
Added missing API implementations to PurpleConversation and subclasses
Ankit Vani <a@nevitus.org>
parents:
34646
diff
changeset
|
137 | const char *message, PurpleMessageFlags flags, time_t mtime); |
|
34611
255148c286ab
Added some PurpleConversation virtual class methods.
Ankit Vani <a@nevitus.org>
parents:
34609
diff
changeset
|
138 | |
|
34599
0b1b22f5e2ec
Begun GObjectification of PurpleConversation.
Ankit Vani <a@nevitus.org>
parents:
34595
diff
changeset
|
139 | void (*_purple_reserved1)(void); |
|
0b1b22f5e2ec
Begun GObjectification of PurpleConversation.
Ankit Vani <a@nevitus.org>
parents:
34595
diff
changeset
|
140 | void (*_purple_reserved2)(void); |
|
0b1b22f5e2ec
Begun GObjectification of PurpleConversation.
Ankit Vani <a@nevitus.org>
parents:
34595
diff
changeset
|
141 | void (*_purple_reserved3)(void); |
|
0b1b22f5e2ec
Begun GObjectification of PurpleConversation.
Ankit Vani <a@nevitus.org>
parents:
34595
diff
changeset
|
142 | void (*_purple_reserved4)(void); |
|
0b1b22f5e2ec
Begun GObjectification of PurpleConversation.
Ankit Vani <a@nevitus.org>
parents:
34595
diff
changeset
|
143 | }; |
|
0b1b22f5e2ec
Begun GObjectification of PurpleConversation.
Ankit Vani <a@nevitus.org>
parents:
34595
diff
changeset
|
144 | |
|
34620
e49aa67344e1
Renamed PurpleConversationMessageFlags back to PurpleMessageFlags.
Ankit Vani <a@nevitus.org>
parents:
34616
diff
changeset
|
145 | #include "account.h" |
|
e49aa67344e1
Renamed PurpleConversationMessageFlags back to PurpleMessageFlags.
Ankit Vani <a@nevitus.org>
parents:
34616
diff
changeset
|
146 | #include "buddyicon.h" |
|
e49aa67344e1
Renamed PurpleConversationMessageFlags back to PurpleMessageFlags.
Ankit Vani <a@nevitus.org>
parents:
34616
diff
changeset
|
147 | #include "log.h" |
|
e49aa67344e1
Renamed PurpleConversationMessageFlags back to PurpleMessageFlags.
Ankit Vani <a@nevitus.org>
parents:
34616
diff
changeset
|
148 | |
|
34601
bccb29d7be14
Removed GObject for PurpleConversationMessage, this will be a GBoxed
Ankit Vani <a@nevitus.org>
parents:
34600
diff
changeset
|
149 | /**************************************************************************/ |
|
bccb29d7be14
Removed GObject for PurpleConversationMessage, this will be a GBoxed
Ankit Vani <a@nevitus.org>
parents:
34600
diff
changeset
|
150 | /** PurpleConversationUiOps */ |
|
bccb29d7be14
Removed GObject for PurpleConversationMessage, this will be a GBoxed
Ankit Vani <a@nevitus.org>
parents:
34600
diff
changeset
|
151 | /**************************************************************************/ |
|
34616
1604c574cdc9
Added write_message and send_message to Conversation.xs
Ankit Vani <a@nevitus.org>
parents:
34615
diff
changeset
|
152 | /** |
| 4359 | 153 | * Conversation operations and events. |
| 154 | * | |
| 155 | * Any UI representing a conversation must assign a filled-out | |
| 15884 | 156 | * PurpleConversationUiOps structure to the PurpleConversation. |
| 4359 | 157 | */ |
| 15884 | 158 | struct _PurpleConversationUiOps |
| 4359 | 159 | { |
|
19120
18082e7316a9
Document most of PurpleConversationUiOps.
Will Thompson <resiak@pidgin.im>
parents:
18190
diff
changeset
|
160 | /** Called when @a conv is created (but before the @ref |
|
18082e7316a9
Document most of PurpleConversationUiOps.
Will Thompson <resiak@pidgin.im>
parents:
18190
diff
changeset
|
161 | * conversation-created signal is emitted). |
|
18082e7316a9
Document most of PurpleConversationUiOps.
Will Thompson <resiak@pidgin.im>
parents:
18190
diff
changeset
|
162 | */ |
| 15884 | 163 | void (*create_conversation)(PurpleConversation *conv); |
|
19120
18082e7316a9
Document most of PurpleConversationUiOps.
Will Thompson <resiak@pidgin.im>
parents:
18190
diff
changeset
|
164 | |
|
18082e7316a9
Document most of PurpleConversationUiOps.
Will Thompson <resiak@pidgin.im>
parents:
18190
diff
changeset
|
165 | /** Called just before @a conv is freed. */ |
| 15884 | 166 | void (*destroy_conversation)(PurpleConversation *conv); |
|
19120
18082e7316a9
Document most of PurpleConversationUiOps.
Will Thompson <resiak@pidgin.im>
parents:
18190
diff
changeset
|
167 | /** Write a message to a chat. If this field is @c NULL, libpurple will |
|
18082e7316a9
Document most of PurpleConversationUiOps.
Will Thompson <resiak@pidgin.im>
parents:
18190
diff
changeset
|
168 | * fall back to using #write_conv. |
|
34599
0b1b22f5e2ec
Begun GObjectification of PurpleConversation.
Ankit Vani <a@nevitus.org>
parents:
34595
diff
changeset
|
169 | * @see purple_chat_conversation_write() |
|
19120
18082e7316a9
Document most of PurpleConversationUiOps.
Will Thompson <resiak@pidgin.im>
parents:
18190
diff
changeset
|
170 | */ |
|
34641
3b8a466c18c5
Changed conversation UI ops arguments to subclasses wherever possible
Ankit Vani <a@nevitus.org>
parents:
34622
diff
changeset
|
171 | void (*write_chat)(PurpleChatConversation *chat, const char *who, |
|
34620
e49aa67344e1
Renamed PurpleConversationMessageFlags back to PurpleMessageFlags.
Ankit Vani <a@nevitus.org>
parents:
34616
diff
changeset
|
172 | const char *message, PurpleMessageFlags flags, |
|
34599
0b1b22f5e2ec
Begun GObjectification of PurpleConversation.
Ankit Vani <a@nevitus.org>
parents:
34595
diff
changeset
|
173 | time_t mtime); |
|
19120
18082e7316a9
Document most of PurpleConversationUiOps.
Will Thompson <resiak@pidgin.im>
parents:
18190
diff
changeset
|
174 | /** Write a message to an IM conversation. If this field is @c NULL, |
|
18082e7316a9
Document most of PurpleConversationUiOps.
Will Thompson <resiak@pidgin.im>
parents:
18190
diff
changeset
|
175 | * libpurple will fall back to using #write_conv. |
|
34599
0b1b22f5e2ec
Begun GObjectification of PurpleConversation.
Ankit Vani <a@nevitus.org>
parents:
34595
diff
changeset
|
176 | * @see purple_im_conversation_write() |
|
19120
18082e7316a9
Document most of PurpleConversationUiOps.
Will Thompson <resiak@pidgin.im>
parents:
18190
diff
changeset
|
177 | */ |
|
34641
3b8a466c18c5
Changed conversation UI ops arguments to subclasses wherever possible
Ankit Vani <a@nevitus.org>
parents:
34622
diff
changeset
|
178 | void (*write_im)(PurpleIMConversation *im, const char *who, |
|
34620
e49aa67344e1
Renamed PurpleConversationMessageFlags back to PurpleMessageFlags.
Ankit Vani <a@nevitus.org>
parents:
34616
diff
changeset
|
179 | const char *message, PurpleMessageFlags flags, |
| 8155 | 180 | time_t mtime); |
|
21099
584da62ea174
Documentation tweaks for the write_conv uiop and for prpl_info.offline_message.
Will Thompson <resiak@pidgin.im>
parents:
20971
diff
changeset
|
181 | /** Write a message to a conversation. This is used rather than the |
|
584da62ea174
Documentation tweaks for the write_conv uiop and for prpl_info.offline_message.
Will Thompson <resiak@pidgin.im>
parents:
20971
diff
changeset
|
182 | * chat- or im-specific ops for errors, system messages (such as "x is |
|
584da62ea174
Documentation tweaks for the write_conv uiop and for prpl_info.offline_message.
Will Thompson <resiak@pidgin.im>
parents:
20971
diff
changeset
|
183 | * now know as y"), and as the fallback if #write_im and #write_chat |
|
584da62ea174
Documentation tweaks for the write_conv uiop and for prpl_info.offline_message.
Will Thompson <resiak@pidgin.im>
parents:
20971
diff
changeset
|
184 | * are not implemented. It should be implemented, or the UI will miss |
|
584da62ea174
Documentation tweaks for the write_conv uiop and for prpl_info.offline_message.
Will Thompson <resiak@pidgin.im>
parents:
20971
diff
changeset
|
185 | * conversation error messages and your users will hate you. |
|
584da62ea174
Documentation tweaks for the write_conv uiop and for prpl_info.offline_message.
Will Thompson <resiak@pidgin.im>
parents:
20971
diff
changeset
|
186 | * |
|
19120
18082e7316a9
Document most of PurpleConversationUiOps.
Will Thompson <resiak@pidgin.im>
parents:
18190
diff
changeset
|
187 | * @see purple_conversation_write() |
|
18082e7316a9
Document most of PurpleConversationUiOps.
Will Thompson <resiak@pidgin.im>
parents:
18190
diff
changeset
|
188 | */ |
|
18082e7316a9
Document most of PurpleConversationUiOps.
Will Thompson <resiak@pidgin.im>
parents:
18190
diff
changeset
|
189 | void (*write_conv)(PurpleConversation *conv, |
|
18082e7316a9
Document most of PurpleConversationUiOps.
Will Thompson <resiak@pidgin.im>
parents:
18190
diff
changeset
|
190 | const char *name, |
|
18082e7316a9
Document most of PurpleConversationUiOps.
Will Thompson <resiak@pidgin.im>
parents:
18190
diff
changeset
|
191 | const char *alias, |
|
18082e7316a9
Document most of PurpleConversationUiOps.
Will Thompson <resiak@pidgin.im>
parents:
18190
diff
changeset
|
192 | const char *message, |
|
34620
e49aa67344e1
Renamed PurpleConversationMessageFlags back to PurpleMessageFlags.
Ankit Vani <a@nevitus.org>
parents:
34616
diff
changeset
|
193 | PurpleMessageFlags flags, |
| 8155 | 194 | time_t mtime); |
| 4359 | 195 | |
|
19120
18082e7316a9
Document most of PurpleConversationUiOps.
Will Thompson <resiak@pidgin.im>
parents:
18190
diff
changeset
|
196 | /** Add @a cbuddies to a chat. |
|
34599
0b1b22f5e2ec
Begun GObjectification of PurpleConversation.
Ankit Vani <a@nevitus.org>
parents:
34595
diff
changeset
|
197 | * @param cbuddies A @c GList of #PurpleChatConversationBuddy structs. |
|
19120
18082e7316a9
Document most of PurpleConversationUiOps.
Will Thompson <resiak@pidgin.im>
parents:
18190
diff
changeset
|
198 | * @param new_arrivals Whether join notices should be shown. |
|
18082e7316a9
Document most of PurpleConversationUiOps.
Will Thompson <resiak@pidgin.im>
parents:
18190
diff
changeset
|
199 | * (Join notices are actually written to the |
|
34599
0b1b22f5e2ec
Begun GObjectification of PurpleConversation.
Ankit Vani <a@nevitus.org>
parents:
34595
diff
changeset
|
200 | * conversation by |
|
0b1b22f5e2ec
Begun GObjectification of PurpleConversation.
Ankit Vani <a@nevitus.org>
parents:
34595
diff
changeset
|
201 | * #purple_chat_conversation_add_users().) |
|
19120
18082e7316a9
Document most of PurpleConversationUiOps.
Will Thompson <resiak@pidgin.im>
parents:
18190
diff
changeset
|
202 | */ |
|
34641
3b8a466c18c5
Changed conversation UI ops arguments to subclasses wherever possible
Ankit Vani <a@nevitus.org>
parents:
34622
diff
changeset
|
203 | void (*chat_add_users)(PurpleChatConversation *chat, |
|
19120
18082e7316a9
Document most of PurpleConversationUiOps.
Will Thompson <resiak@pidgin.im>
parents:
18190
diff
changeset
|
204 | GList *cbuddies, |
|
18082e7316a9
Document most of PurpleConversationUiOps.
Will Thompson <resiak@pidgin.im>
parents:
18190
diff
changeset
|
205 | gboolean new_arrivals); |
|
18082e7316a9
Document most of PurpleConversationUiOps.
Will Thompson <resiak@pidgin.im>
parents:
18190
diff
changeset
|
206 | /** Rename the user in this chat named @a old_name to @a new_name. (The |
|
18082e7316a9
Document most of PurpleConversationUiOps.
Will Thompson <resiak@pidgin.im>
parents:
18190
diff
changeset
|
207 | * rename message is written to the conversation by libpurple.) |
|
18082e7316a9
Document most of PurpleConversationUiOps.
Will Thompson <resiak@pidgin.im>
parents:
18190
diff
changeset
|
208 | * @param new_alias @a new_name's new alias, if they have one. |
|
34599
0b1b22f5e2ec
Begun GObjectification of PurpleConversation.
Ankit Vani <a@nevitus.org>
parents:
34595
diff
changeset
|
209 | * @see purple_chat_conversation_add_users() |
|
34666
cd9ebef950c6
Added a check in finch_chat_update_user(), removed unnecessary reminders from conversation.h
Ankit Vani <a@nevitus.org>
parents:
34656
diff
changeset
|
210 | */ |
|
34641
3b8a466c18c5
Changed conversation UI ops arguments to subclasses wherever possible
Ankit Vani <a@nevitus.org>
parents:
34622
diff
changeset
|
211 | void (*chat_rename_user)(PurpleChatConversation *chat, const char *old_name, |
|
11485
fe334b13d1d0
[gaim-migrate @ 13727]
Peter Lawler <pidgin@bleeter.id.au>
parents:
11454
diff
changeset
|
212 | const char *new_name, const char *new_alias); |
|
19120
18082e7316a9
Document most of PurpleConversationUiOps.
Will Thompson <resiak@pidgin.im>
parents:
18190
diff
changeset
|
213 | /** Remove @a users from a chat. |
|
19862
3aa48ac21c45
This will silence a few warnings when building the Doxygen docs.
John Bailey <rekkanoryo@rekkanoryo.org>
parents:
19859
diff
changeset
|
214 | * @param users A @c GList of <tt>const char *</tt>s. |
|
34599
0b1b22f5e2ec
Begun GObjectification of PurpleConversation.
Ankit Vani <a@nevitus.org>
parents:
34595
diff
changeset
|
215 | * @see purple_chat_conversation_rename_user() |
|
34666
cd9ebef950c6
Added a check in finch_chat_update_user(), removed unnecessary reminders from conversation.h
Ankit Vani <a@nevitus.org>
parents:
34656
diff
changeset
|
216 | */ |
|
34641
3b8a466c18c5
Changed conversation UI ops arguments to subclasses wherever possible
Ankit Vani <a@nevitus.org>
parents:
34622
diff
changeset
|
217 | void (*chat_remove_users)(PurpleChatConversation *chat, GList *users); |
|
19120
18082e7316a9
Document most of PurpleConversationUiOps.
Will Thompson <resiak@pidgin.im>
parents:
18190
diff
changeset
|
218 | /** Called when a user's flags are changed. |
|
34651
88c104a20f4b
Refactored the PurpleConversation subclasses and subsystem to use the GObject conversation API.
Ankit Vani <a@nevitus.org>
parents:
34648
diff
changeset
|
219 | * @see purple_chat_conversation_buddy_set_flags() |
|
19120
18082e7316a9
Document most of PurpleConversationUiOps.
Will Thompson <resiak@pidgin.im>
parents:
18190
diff
changeset
|
220 | */ |
|
34651
88c104a20f4b
Refactored the PurpleConversation subclasses and subsystem to use the GObject conversation API.
Ankit Vani <a@nevitus.org>
parents:
34648
diff
changeset
|
221 | void (*chat_update_user)(PurpleChatConversationBuddy *cb); |
| 4359 | 222 | |
|
19120
18082e7316a9
Document most of PurpleConversationUiOps.
Will Thompson <resiak@pidgin.im>
parents:
18190
diff
changeset
|
223 | /** Present this conversation to the user; for example, by displaying |
|
18082e7316a9
Document most of PurpleConversationUiOps.
Will Thompson <resiak@pidgin.im>
parents:
18190
diff
changeset
|
224 | * the IM dialog. |
|
18082e7316a9
Document most of PurpleConversationUiOps.
Will Thompson <resiak@pidgin.im>
parents:
18190
diff
changeset
|
225 | */ |
| 15884 | 226 | void (*present)(PurpleConversation *conv); |
| 4359 | 227 | |
|
19120
18082e7316a9
Document most of PurpleConversationUiOps.
Will Thompson <resiak@pidgin.im>
parents:
18190
diff
changeset
|
228 | /** If this UI has a concept of focus (as in a windowing system) and |
|
18082e7316a9
Document most of PurpleConversationUiOps.
Will Thompson <resiak@pidgin.im>
parents:
18190
diff
changeset
|
229 | * this conversation has the focus, return @c TRUE; otherwise, return |
|
18082e7316a9
Document most of PurpleConversationUiOps.
Will Thompson <resiak@pidgin.im>
parents:
18190
diff
changeset
|
230 | * @c FALSE. |
|
18082e7316a9
Document most of PurpleConversationUiOps.
Will Thompson <resiak@pidgin.im>
parents:
18190
diff
changeset
|
231 | */ |
| 15884 | 232 | gboolean (*has_focus)(PurpleConversation *conv); |
|
9260
82d7b380220a
[gaim-migrate @ 10059]
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
9166
diff
changeset
|
233 | |
| 10526 | 234 | /* Custom Smileys */ |
|
34599
0b1b22f5e2ec
Begun GObjectification of PurpleConversation.
Ankit Vani <a@nevitus.org>
parents:
34595
diff
changeset
|
235 | gboolean (*custom_smiley_add)(PurpleConversation *conv, const char *smile, |
|
34605
89e6c5346d63
Begun refactoring for PurpleConversation
Ankit Vani <a@nevitus.org>
parents:
34602
diff
changeset
|
236 | gboolean remote); |
| 15884 | 237 | void (*custom_smiley_write)(PurpleConversation *conv, const char *smile, |
|
11137
cf40226ddff7
[gaim-migrate @ 13201]
Mark Doliner <markdoliner@pidgin.im>
parents:
11035
diff
changeset
|
238 | const guchar *data, gsize size); |
| 15884 | 239 | void (*custom_smiley_close)(PurpleConversation *conv, const char *smile); |
| 14582 | 240 | |
|
19120
18082e7316a9
Document most of PurpleConversationUiOps.
Will Thompson <resiak@pidgin.im>
parents:
18190
diff
changeset
|
241 | /** Prompt the user for confirmation to send @a message. This function |
|
18082e7316a9
Document most of PurpleConversationUiOps.
Will Thompson <resiak@pidgin.im>
parents:
18190
diff
changeset
|
242 | * should arrange for the message to be sent if the user accepts. If |
|
18082e7316a9
Document most of PurpleConversationUiOps.
Will Thompson <resiak@pidgin.im>
parents:
18190
diff
changeset
|
243 | * this field is @c NULL, libpurple will fall back to using |
|
18082e7316a9
Document most of PurpleConversationUiOps.
Will Thompson <resiak@pidgin.im>
parents:
18190
diff
changeset
|
244 | * #purple_request_action(). |
|
18082e7316a9
Document most of PurpleConversationUiOps.
Will Thompson <resiak@pidgin.im>
parents:
18190
diff
changeset
|
245 | */ |
| 15884 | 246 | void (*send_confirm)(PurpleConversation *conv, const char *message); |
|
16743
1ce5ffe12e2a
Initial addition of padding for ui_ops and other class-like structs
Gary Kramlich <grim@reaperworld.com>
parents:
16007
diff
changeset
|
247 | |
|
1ce5ffe12e2a
Initial addition of padding for ui_ops and other class-like structs
Gary Kramlich <grim@reaperworld.com>
parents:
16007
diff
changeset
|
248 | void (*_purple_reserved1)(void); |
|
1ce5ffe12e2a
Initial addition of padding for ui_ops and other class-like structs
Gary Kramlich <grim@reaperworld.com>
parents:
16007
diff
changeset
|
249 | void (*_purple_reserved2)(void); |
|
1ce5ffe12e2a
Initial addition of padding for ui_ops and other class-like structs
Gary Kramlich <grim@reaperworld.com>
parents:
16007
diff
changeset
|
250 | void (*_purple_reserved3)(void); |
|
1ce5ffe12e2a
Initial addition of padding for ui_ops and other class-like structs
Gary Kramlich <grim@reaperworld.com>
parents:
16007
diff
changeset
|
251 | void (*_purple_reserved4)(void); |
| 4359 | 252 | }; |
| 253 | ||
|
32787
7072f190d6ad
Use G_BEGIN/END_DECLS in public libpurple files. This was
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
32698
diff
changeset
|
254 | G_BEGIN_DECLS |
|
5944
f19df037ac58
[gaim-migrate @ 6385]
Christian Hammond <chipx86@chipx86.com>
parents:
5872
diff
changeset
|
255 | |
| 4359 | 256 | /**************************************************************************/ |
| 257 | /** @name Conversation API */ | |
| 258 | /**************************************************************************/ | |
| 259 | /*@{*/ | |
| 260 | ||
|
34646
e7f4631e93f7
Begun adding GObject code to conversation sources
Ankit Vani <a@nevitus.org>
parents:
34641
diff
changeset
|
261 | /** |
|
34609
28b0f26f011f
Added GObject boilerplate code for headers, also _new() and _get_type() functions.
Ankit Vani <a@nevitus.org>
parents:
34608
diff
changeset
|
262 | * Returns the GType for the Conversation object. |
| 4359 | 263 | */ |
|
34609
28b0f26f011f
Added GObject boilerplate code for headers, also _new() and _get_type() functions.
Ankit Vani <a@nevitus.org>
parents:
34608
diff
changeset
|
264 | GType purple_conversation_get_type(void); |
| 4359 | 265 | |
|
12624
c1c92f08976b
[gaim-migrate @ 14960]
Christopher O'Brien <siege@pidgin.im>
parents:
12618
diff
changeset
|
266 | /** |
|
c1c92f08976b
[gaim-migrate @ 14960]
Christopher O'Brien <siege@pidgin.im>
parents:
12618
diff
changeset
|
267 | * Present a conversation to the user. This allows core code to initiate a |
|
c1c92f08976b
[gaim-migrate @ 14960]
Christopher O'Brien <siege@pidgin.im>
parents:
12618
diff
changeset
|
268 | * conversation by displaying the IM dialog. |
|
c1c92f08976b
[gaim-migrate @ 14960]
Christopher O'Brien <siege@pidgin.im>
parents:
12618
diff
changeset
|
269 | * @param conv The conversation to present |
|
c1c92f08976b
[gaim-migrate @ 14960]
Christopher O'Brien <siege@pidgin.im>
parents:
12618
diff
changeset
|
270 | */ |
| 15884 | 271 | void purple_conversation_present(PurpleConversation *conv); |
|
12624
c1c92f08976b
[gaim-migrate @ 14960]
Christopher O'Brien <siege@pidgin.im>
parents:
12618
diff
changeset
|
272 | |
| 4359 | 273 | /** |
| 274 | * Sets the specified conversation's UI operations structure. | |
| 275 | * | |
| 276 | * @param conv The conversation. | |
| 277 | * @param ops The UI conversation operations structure. | |
| 278 | */ | |
| 15884 | 279 | void purple_conversation_set_ui_ops(PurpleConversation *conv, |
| 280 | PurpleConversationUiOps *ops); | |
| 4359 | 281 | |
| 282 | /** | |
| 283 | * Returns the specified conversation's UI operations structure. | |
|
6585
8fcd3639e544
[gaim-migrate @ 7107]
Christian Hammond <chipx86@chipx86.com>
parents:
6488
diff
changeset
|
284 | * |
| 4359 | 285 | * @param conv The conversation. |
| 286 | * | |
| 287 | * @return The operations structure. | |
| 288 | */ | |
|
34600
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
289 | PurpleConversationUiOps *purple_conversation_get_ui_ops(const PurpleConversation *conv); |
| 4359 | 290 | |
| 291 | /** | |
| 15884 | 292 | * Sets the specified conversation's purple_account. |
| 4359 | 293 | * |
| 15884 | 294 | * This purple_account represents the user using purple, not the person the user |
| 4359 | 295 | * is having a conversation/chat/flame with. |
| 296 | * | |
| 297 | * @param conv The conversation. | |
| 15884 | 298 | * @param account The purple_account. |
| 4359 | 299 | */ |
| 15884 | 300 | void purple_conversation_set_account(PurpleConversation *conv, |
| 301 | PurpleAccount *account); | |
| 4359 | 302 | |
| 303 | /** | |
| 15884 | 304 | * Returns the specified conversation's purple_account. |
| 4359 | 305 | * |
| 15884 | 306 | * This purple_account represents the user using purple, not the person the user |
| 4359 | 307 | * is having a conversation/chat/flame with. |
| 308 | * | |
| 309 | * @param conv The conversation. | |
| 310 | * | |
| 15884 | 311 | * @return The conversation's purple_account. |
| 4359 | 312 | */ |
| 15884 | 313 | PurpleAccount *purple_conversation_get_account(const PurpleConversation *conv); |
| 4359 | 314 | |
| 315 | /** | |
| 15884 | 316 | * Returns the specified conversation's purple_connection. |
| 4359 | 317 | * |
| 318 | * @param conv The conversation. | |
| 319 | * | |
| 15884 | 320 | * @return The conversation's purple_connection. |
| 4359 | 321 | */ |
|
32698
154e4a2a6287
Our API really shouldn't have a 'gc' in it anymore.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
32690
diff
changeset
|
322 | PurpleConnection *purple_conversation_get_connection(const PurpleConversation *conv); |
| 4359 | 323 | |
| 324 | /** | |
| 325 | * Sets the specified conversation's title. | |
| 326 | * | |
| 327 | * @param conv The conversation. | |
| 328 | * @param title The title. | |
| 329 | */ | |
| 15884 | 330 | void purple_conversation_set_title(PurpleConversation *conv, const char *title); |
| 4359 | 331 | |
| 332 | /** | |
| 333 | * Returns the specified conversation's title. | |
| 334 | * | |
|
6720
cdc5348dd848
[gaim-migrate @ 7247]
Christian Hammond <chipx86@chipx86.com>
parents:
6622
diff
changeset
|
335 | * @param conv The conversation. |
| 4359 | 336 | * |
| 337 | * @return The title. | |
| 338 | */ | |
| 15884 | 339 | const char *purple_conversation_get_title(const PurpleConversation *conv); |
| 4359 | 340 | |
| 341 | /** | |
| 342 | * Automatically sets the specified conversation's title. | |
| 343 | * | |
| 344 | * This function takes OPT_IM_ALIAS_TAB into account, as well as the | |
| 345 | * user's alias. | |
| 346 | * | |
| 347 | * @param conv The conversation. | |
| 348 | */ | |
| 15884 | 349 | void purple_conversation_autoset_title(PurpleConversation *conv); |
| 4359 | 350 | |
| 351 | /** | |
|
7256
311c8febfc92
[gaim-migrate @ 7833]
Christian Hammond <chipx86@chipx86.com>
parents:
7122
diff
changeset
|
352 | * Sets the specified conversation's name. |
|
311c8febfc92
[gaim-migrate @ 7833]
Christian Hammond <chipx86@chipx86.com>
parents:
7122
diff
changeset
|
353 | * |
|
311c8febfc92
[gaim-migrate @ 7833]
Christian Hammond <chipx86@chipx86.com>
parents:
7122
diff
changeset
|
354 | * @param conv The conversation. |
|
311c8febfc92
[gaim-migrate @ 7833]
Christian Hammond <chipx86@chipx86.com>
parents:
7122
diff
changeset
|
355 | * @param name The conversation's name. |
|
311c8febfc92
[gaim-migrate @ 7833]
Christian Hammond <chipx86@chipx86.com>
parents:
7122
diff
changeset
|
356 | */ |
| 15884 | 357 | void purple_conversation_set_name(PurpleConversation *conv, const char *name); |
|
7256
311c8febfc92
[gaim-migrate @ 7833]
Christian Hammond <chipx86@chipx86.com>
parents:
7122
diff
changeset
|
358 | |
|
311c8febfc92
[gaim-migrate @ 7833]
Christian Hammond <chipx86@chipx86.com>
parents:
7122
diff
changeset
|
359 | /** |
| 4359 | 360 | * Returns the specified conversation's name. |
| 361 | * | |
| 362 | * @param conv The conversation. | |
| 363 | * | |
|
22082
617ac5b2b597
Docu patch from Simon Wenner. Closes #4497.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
21453
diff
changeset
|
364 | * @return The conversation's name. If the conversation is an IM with a PurpleBuddy, |
|
617ac5b2b597
Docu patch from Simon Wenner. Closes #4497.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
21453
diff
changeset
|
365 | * then it's the name of the PurpleBuddy. |
| 4359 | 366 | */ |
| 15884 | 367 | const char *purple_conversation_get_name(const PurpleConversation *conv); |
| 4359 | 368 | |
| 369 | /** | |
| 370 | * Enables or disables logging for this conversation. | |
| 371 | * | |
|
6720
cdc5348dd848
[gaim-migrate @ 7247]
Christian Hammond <chipx86@chipx86.com>
parents:
6622
diff
changeset
|
372 | * @param conv The conversation. |
|
cdc5348dd848
[gaim-migrate @ 7247]
Christian Hammond <chipx86@chipx86.com>
parents:
6622
diff
changeset
|
373 | * @param log @c TRUE if logging should be enabled, or @c FALSE otherwise. |
| 4359 | 374 | */ |
| 15884 | 375 | void purple_conversation_set_logging(PurpleConversation *conv, gboolean log); |
| 4359 | 376 | |
| 377 | /** | |
| 378 | * Returns whether or not logging is enabled for this conversation. | |
| 379 | * | |
|
6720
cdc5348dd848
[gaim-migrate @ 7247]
Christian Hammond <chipx86@chipx86.com>
parents:
6622
diff
changeset
|
380 | * @param conv The conversation. |
|
cdc5348dd848
[gaim-migrate @ 7247]
Christian Hammond <chipx86@chipx86.com>
parents:
6622
diff
changeset
|
381 | * |
| 4359 | 382 | * @return @c TRUE if logging is enabled, or @c FALSE otherwise. |
| 383 | */ | |
| 15884 | 384 | gboolean purple_conversation_is_logging(const PurpleConversation *conv); |
| 4359 | 385 | |
| 386 | /** | |
|
11672
018c70c8134c
[gaim-migrate @ 13958]
Richard Laager <rlaager@pidgin.im>
parents:
11664
diff
changeset
|
387 | * Closes any open logs for this conversation. |
|
018c70c8134c
[gaim-migrate @ 13958]
Richard Laager <rlaager@pidgin.im>
parents:
11664
diff
changeset
|
388 | * |
|
018c70c8134c
[gaim-migrate @ 13958]
Richard Laager <rlaager@pidgin.im>
parents:
11664
diff
changeset
|
389 | * Note that new logs will be opened as necessary (e.g. upon receipt of a |
|
018c70c8134c
[gaim-migrate @ 13958]
Richard Laager <rlaager@pidgin.im>
parents:
11664
diff
changeset
|
390 | * message, if the conversation has logging enabled. To disable logging for |
| 15884 | 391 | * the remainder of the conversation, use purple_conversation_set_logging(). |
|
11672
018c70c8134c
[gaim-migrate @ 13958]
Richard Laager <rlaager@pidgin.im>
parents:
11664
diff
changeset
|
392 | * |
|
018c70c8134c
[gaim-migrate @ 13958]
Richard Laager <rlaager@pidgin.im>
parents:
11664
diff
changeset
|
393 | * @param conv The conversation. |
|
018c70c8134c
[gaim-migrate @ 13958]
Richard Laager <rlaager@pidgin.im>
parents:
11664
diff
changeset
|
394 | */ |
| 15884 | 395 | void purple_conversation_close_logs(PurpleConversation *conv); |
|
11672
018c70c8134c
[gaim-migrate @ 13958]
Richard Laager <rlaager@pidgin.im>
parents:
11664
diff
changeset
|
396 | |
|
018c70c8134c
[gaim-migrate @ 13958]
Richard Laager <rlaager@pidgin.im>
parents:
11664
diff
changeset
|
397 | /** |
|
4877
7d1f4381fed0
[gaim-migrate @ 5207]
Christian Hammond <chipx86@chipx86.com>
parents:
4876
diff
changeset
|
398 | * Sets extra data for a conversation. |
|
6585
8fcd3639e544
[gaim-migrate @ 7107]
Christian Hammond <chipx86@chipx86.com>
parents:
6488
diff
changeset
|
399 | * |
|
4876
b6ec886c8c77
[gaim-migrate @ 5206]
Christian Hammond <chipx86@chipx86.com>
parents:
4491
diff
changeset
|
400 | * @param conv The conversation. |
|
b6ec886c8c77
[gaim-migrate @ 5206]
Christian Hammond <chipx86@chipx86.com>
parents:
4491
diff
changeset
|
401 | * @param key The unique key. |
|
b6ec886c8c77
[gaim-migrate @ 5206]
Christian Hammond <chipx86@chipx86.com>
parents:
4491
diff
changeset
|
402 | * @param data The data to assign. |
|
b6ec886c8c77
[gaim-migrate @ 5206]
Christian Hammond <chipx86@chipx86.com>
parents:
4491
diff
changeset
|
403 | */ |
| 15884 | 404 | void purple_conversation_set_data(PurpleConversation *conv, const char *key, |
|
5676
d3c2fdaf4821
[gaim-migrate @ 6094]
Christian Hammond <chipx86@chipx86.com>
parents:
5563
diff
changeset
|
405 | gpointer data); |
|
4876
b6ec886c8c77
[gaim-migrate @ 5206]
Christian Hammond <chipx86@chipx86.com>
parents:
4491
diff
changeset
|
406 | |
|
b6ec886c8c77
[gaim-migrate @ 5206]
Christian Hammond <chipx86@chipx86.com>
parents:
4491
diff
changeset
|
407 | /** |
|
4877
7d1f4381fed0
[gaim-migrate @ 5207]
Christian Hammond <chipx86@chipx86.com>
parents:
4876
diff
changeset
|
408 | * Returns extra data in a conversation. |
|
4876
b6ec886c8c77
[gaim-migrate @ 5206]
Christian Hammond <chipx86@chipx86.com>
parents:
4491
diff
changeset
|
409 | * |
|
b6ec886c8c77
[gaim-migrate @ 5206]
Christian Hammond <chipx86@chipx86.com>
parents:
4491
diff
changeset
|
410 | * @param conv The conversation. |
|
b6ec886c8c77
[gaim-migrate @ 5206]
Christian Hammond <chipx86@chipx86.com>
parents:
4491
diff
changeset
|
411 | * @param key The unqiue key. |
|
b6ec886c8c77
[gaim-migrate @ 5206]
Christian Hammond <chipx86@chipx86.com>
parents:
4491
diff
changeset
|
412 | * |
|
b6ec886c8c77
[gaim-migrate @ 5206]
Christian Hammond <chipx86@chipx86.com>
parents:
4491
diff
changeset
|
413 | * @return The data associated with the key. |
|
b6ec886c8c77
[gaim-migrate @ 5206]
Christian Hammond <chipx86@chipx86.com>
parents:
4491
diff
changeset
|
414 | */ |
| 15884 | 415 | gpointer purple_conversation_get_data(PurpleConversation *conv, const char *key); |
|
4876
b6ec886c8c77
[gaim-migrate @ 5206]
Christian Hammond <chipx86@chipx86.com>
parents:
4491
diff
changeset
|
416 | |
|
34615
5f7212d27557
Removed send from PurpleConversation's virtual methods, renamed the remaining methods.
Ankit Vani <a@nevitus.org>
parents:
34612
diff
changeset
|
417 | /** |
| 4359 | 418 | * Writes to a conversation window. |
| 419 | * | |
| 420 | * This function should not be used to write IM or chat messages. Use | |
|
34615
5f7212d27557
Removed send from PurpleConversation's virtual methods, renamed the remaining methods.
Ankit Vani <a@nevitus.org>
parents:
34612
diff
changeset
|
421 | * purple_conversation_write_message() instead. This function will |
|
5f7212d27557
Removed send from PurpleConversation's virtual methods, renamed the remaining methods.
Ankit Vani <a@nevitus.org>
parents:
34612
diff
changeset
|
422 | * most likely call this anyway, but it may do it's own formatting, |
|
5f7212d27557
Removed send from PurpleConversation's virtual methods, renamed the remaining methods.
Ankit Vani <a@nevitus.org>
parents:
34612
diff
changeset
|
423 | * sound playback, etc. depending on whether the conversation is a chat or an |
|
5f7212d27557
Removed send from PurpleConversation's virtual methods, renamed the remaining methods.
Ankit Vani <a@nevitus.org>
parents:
34612
diff
changeset
|
424 | * IM. |
| 4359 | 425 | * |
| 426 | * This can be used to write generic messages, such as "so and so closed | |
| 427 | * the conversation window." | |
| 428 | * | |
| 429 | * @param conv The conversation. | |
| 430 | * @param who The user who sent the message. | |
| 431 | * @param message The message. | |
|
6621
2a18ef3e5224
[gaim-migrate @ 7145]
Robert McQueen <robot101@debian.org>
parents:
6605
diff
changeset
|
432 | * @param flags The message flags. |
| 4359 | 433 | * @param mtime The time the message was sent. |
| 434 | * | |
|
34615
5f7212d27557
Removed send from PurpleConversation's virtual methods, renamed the remaining methods.
Ankit Vani <a@nevitus.org>
parents:
34612
diff
changeset
|
435 | * @see purple_conversation_write_message() |
| 4359 | 436 | */ |
| 15884 | 437 | void purple_conversation_write(PurpleConversation *conv, const char *who, |
|
34620
e49aa67344e1
Renamed PurpleConversationMessageFlags back to PurpleMessageFlags.
Ankit Vani <a@nevitus.org>
parents:
34616
diff
changeset
|
438 | const char *message, PurpleMessageFlags flags, |
| 10665 | 439 | time_t mtime); |
| 440 | ||
|
34648
a6587d8cf907
Added missing API implementations to PurpleConversation and subclasses
Ankit Vani <a@nevitus.org>
parents:
34646
diff
changeset
|
441 | /** |
|
34615
5f7212d27557
Removed send from PurpleConversation's virtual methods, renamed the remaining methods.
Ankit Vani <a@nevitus.org>
parents:
34612
diff
changeset
|
442 | * Writes to a chat or an IM. |
|
5f7212d27557
Removed send from PurpleConversation's virtual methods, renamed the remaining methods.
Ankit Vani <a@nevitus.org>
parents:
34612
diff
changeset
|
443 | * |
|
5f7212d27557
Removed send from PurpleConversation's virtual methods, renamed the remaining methods.
Ankit Vani <a@nevitus.org>
parents:
34612
diff
changeset
|
444 | * @param conv The conversation. |
|
5f7212d27557
Removed send from PurpleConversation's virtual methods, renamed the remaining methods.
Ankit Vani <a@nevitus.org>
parents:
34612
diff
changeset
|
445 | * @param who The user who sent the message. |
|
5f7212d27557
Removed send from PurpleConversation's virtual methods, renamed the remaining methods.
Ankit Vani <a@nevitus.org>
parents:
34612
diff
changeset
|
446 | * @param message The message to write. |
|
5f7212d27557
Removed send from PurpleConversation's virtual methods, renamed the remaining methods.
Ankit Vani <a@nevitus.org>
parents:
34612
diff
changeset
|
447 | * @param flags The message flags. |
|
5f7212d27557
Removed send from PurpleConversation's virtual methods, renamed the remaining methods.
Ankit Vani <a@nevitus.org>
parents:
34612
diff
changeset
|
448 | * @param mtime The time the message was sent. |
|
5f7212d27557
Removed send from PurpleConversation's virtual methods, renamed the remaining methods.
Ankit Vani <a@nevitus.org>
parents:
34612
diff
changeset
|
449 | */ |
|
5f7212d27557
Removed send from PurpleConversation's virtual methods, renamed the remaining methods.
Ankit Vani <a@nevitus.org>
parents:
34612
diff
changeset
|
450 | void purple_conversation_write_message(PurpleConversation *conv, |
|
5f7212d27557
Removed send from PurpleConversation's virtual methods, renamed the remaining methods.
Ankit Vani <a@nevitus.org>
parents:
34612
diff
changeset
|
451 | const char *who, const char *message, |
|
34620
e49aa67344e1
Renamed PurpleConversationMessageFlags back to PurpleMessageFlags.
Ankit Vani <a@nevitus.org>
parents:
34616
diff
changeset
|
452 | PurpleMessageFlags flags, time_t mtime); |
|
34615
5f7212d27557
Removed send from PurpleConversation's virtual methods, renamed the remaining methods.
Ankit Vani <a@nevitus.org>
parents:
34612
diff
changeset
|
453 | |
|
34648
a6587d8cf907
Added missing API implementations to PurpleConversation and subclasses
Ankit Vani <a@nevitus.org>
parents:
34646
diff
changeset
|
454 | /** |
|
34615
5f7212d27557
Removed send from PurpleConversation's virtual methods, renamed the remaining methods.
Ankit Vani <a@nevitus.org>
parents:
34612
diff
changeset
|
455 | * Sends a message to this conversation. This function calls |
|
34651
88c104a20f4b
Refactored the PurpleConversation subclasses and subsystem to use the GObject conversation API.
Ankit Vani <a@nevitus.org>
parents:
34648
diff
changeset
|
456 | * purple_conversation_send_with_flags() with no additional flags. |
|
34612
ec739e43a71c
Added purple_conversation_* functions to API to redirect to virtual methods
Ankit Vani <a@nevitus.org>
parents:
34611
diff
changeset
|
457 | * |
|
ec739e43a71c
Added purple_conversation_* functions to API to redirect to virtual methods
Ankit Vani <a@nevitus.org>
parents:
34611
diff
changeset
|
458 | * @param conv The conversation. |
|
ec739e43a71c
Added purple_conversation_* functions to API to redirect to virtual methods
Ankit Vani <a@nevitus.org>
parents:
34611
diff
changeset
|
459 | * @param message The message to send. |
|
ec739e43a71c
Added purple_conversation_* functions to API to redirect to virtual methods
Ankit Vani <a@nevitus.org>
parents:
34611
diff
changeset
|
460 | */ |
|
ec739e43a71c
Added purple_conversation_* functions to API to redirect to virtual methods
Ankit Vani <a@nevitus.org>
parents:
34611
diff
changeset
|
461 | void purple_conversation_send(PurpleConversation *conv, const char *message); |
|
ec739e43a71c
Added purple_conversation_* functions to API to redirect to virtual methods
Ankit Vani <a@nevitus.org>
parents:
34611
diff
changeset
|
462 | |
|
34648
a6587d8cf907
Added missing API implementations to PurpleConversation and subclasses
Ankit Vani <a@nevitus.org>
parents:
34646
diff
changeset
|
463 | /** |
|
34612
ec739e43a71c
Added purple_conversation_* functions to API to redirect to virtual methods
Ankit Vani <a@nevitus.org>
parents:
34611
diff
changeset
|
464 | * Sends a message to this conversation with specified flags. |
|
ec739e43a71c
Added purple_conversation_* functions to API to redirect to virtual methods
Ankit Vani <a@nevitus.org>
parents:
34611
diff
changeset
|
465 | * |
|
ec739e43a71c
Added purple_conversation_* functions to API to redirect to virtual methods
Ankit Vani <a@nevitus.org>
parents:
34611
diff
changeset
|
466 | * @param conv The conversation. |
|
ec739e43a71c
Added purple_conversation_* functions to API to redirect to virtual methods
Ankit Vani <a@nevitus.org>
parents:
34611
diff
changeset
|
467 | * @param message The message to send. |
|
34620
e49aa67344e1
Renamed PurpleConversationMessageFlags back to PurpleMessageFlags.
Ankit Vani <a@nevitus.org>
parents:
34616
diff
changeset
|
468 | * @param flags The PurpleMessageFlags flags to use in addition to |
|
e49aa67344e1
Renamed PurpleConversationMessageFlags back to PurpleMessageFlags.
Ankit Vani <a@nevitus.org>
parents:
34616
diff
changeset
|
469 | * PURPLE_MESSAGE_SEND. |
|
34612
ec739e43a71c
Added purple_conversation_* functions to API to redirect to virtual methods
Ankit Vani <a@nevitus.org>
parents:
34611
diff
changeset
|
470 | */ |
|
34651
88c104a20f4b
Refactored the PurpleConversation subclasses and subsystem to use the GObject conversation API.
Ankit Vani <a@nevitus.org>
parents:
34648
diff
changeset
|
471 | void purple_conversation_send_with_flags(PurpleConversation *conv, const char *message, |
|
34620
e49aa67344e1
Renamed PurpleConversationMessageFlags back to PurpleMessageFlags.
Ankit Vani <a@nevitus.org>
parents:
34616
diff
changeset
|
472 | PurpleMessageFlags flags); |
|
34612
ec739e43a71c
Added purple_conversation_* functions to API to redirect to virtual methods
Ankit Vani <a@nevitus.org>
parents:
34611
diff
changeset
|
473 | |
| 10665 | 474 | /** |
| 475 | Set the features as supported for the given conversation. | |
| 476 | @param conv The conversation | |
| 477 | @param features Bitset defining supported features | |
| 478 | */ | |
| 15884 | 479 | void purple_conversation_set_features(PurpleConversation *conv, |
| 480 | PurpleConnectionFlags features); | |
| 10665 | 481 | |
| 482 | ||
| 483 | /** | |
| 484 | Get the features supported by the given conversation. | |
| 485 | @param conv The conversation | |
| 486 | */ | |
| 15884 | 487 | PurpleConnectionFlags purple_conversation_get_features(PurpleConversation *conv); |
| 4359 | 488 | |
| 489 | /** | |
|
9260
82d7b380220a
[gaim-migrate @ 10059]
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
9166
diff
changeset
|
490 | * Determines if a conversation has focus |
|
82d7b380220a
[gaim-migrate @ 10059]
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
9166
diff
changeset
|
491 | * |
|
82d7b380220a
[gaim-migrate @ 10059]
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
9166
diff
changeset
|
492 | * @param conv The conversation. |
|
82d7b380220a
[gaim-migrate @ 10059]
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
9166
diff
changeset
|
493 | * |
|
82d7b380220a
[gaim-migrate @ 10059]
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
9166
diff
changeset
|
494 | * @return @c TRUE if the conversation has focus, @c FALSE if |
|
82d7b380220a
[gaim-migrate @ 10059]
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
9166
diff
changeset
|
495 | * it does not or the UI does not have a concept of conversation focus |
|
82d7b380220a
[gaim-migrate @ 10059]
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
9166
diff
changeset
|
496 | */ |
| 15884 | 497 | gboolean purple_conversation_has_focus(PurpleConversation *conv); |
|
9260
82d7b380220a
[gaim-migrate @ 10059]
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
9166
diff
changeset
|
498 | |
|
82d7b380220a
[gaim-migrate @ 10059]
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
9166
diff
changeset
|
499 | /** |
| 4359 | 500 | * Updates the visual status and UI of a conversation. |
| 501 | * | |
| 502 | * @param conv The conversation. | |
| 503 | * @param type The update type. | |
| 504 | */ | |
|
34599
0b1b22f5e2ec
Begun GObjectification of PurpleConversation.
Ankit Vani <a@nevitus.org>
parents:
34595
diff
changeset
|
505 | void purple_conversation_update(PurpleConversation *conv, PurpleConversationUpdateType type); |
| 4359 | 506 | |
| 507 | /** | |
|
19590
cf4e3e71bbc0
Store message history in a conversation, and provide API to access the history.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
19120
diff
changeset
|
508 | * Retrieve the message history of a conversation. |
|
cf4e3e71bbc0
Store message history in a conversation, and provide API to access the history.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
19120
diff
changeset
|
509 | * |
|
cf4e3e71bbc0
Store message history in a conversation, and provide API to access the history.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
19120
diff
changeset
|
510 | * @param conv The conversation |
|
cf4e3e71bbc0
Store message history in a conversation, and provide API to access the history.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
19120
diff
changeset
|
511 | * |
|
34599
0b1b22f5e2ec
Begun GObjectification of PurpleConversation.
Ankit Vani <a@nevitus.org>
parents:
34595
diff
changeset
|
512 | * @return A GList of PurpleConversationMessage's. The must not modify the list or the data within. |
|
19590
cf4e3e71bbc0
Store message history in a conversation, and provide API to access the history.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
19120
diff
changeset
|
513 | * The list contains the newest message at the beginning, and the oldest message at |
|
cf4e3e71bbc0
Store message history in a conversation, and provide API to access the history.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
19120
diff
changeset
|
514 | * the end. |
|
cf4e3e71bbc0
Store message history in a conversation, and provide API to access the history.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
19120
diff
changeset
|
515 | */ |
|
cf4e3e71bbc0
Store message history in a conversation, and provide API to access the history.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
19120
diff
changeset
|
516 | GList *purple_conversation_get_message_history(PurpleConversation *conv); |
|
cf4e3e71bbc0
Store message history in a conversation, and provide API to access the history.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
19120
diff
changeset
|
517 | |
|
cf4e3e71bbc0
Store message history in a conversation, and provide API to access the history.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
19120
diff
changeset
|
518 | /** |
|
cf4e3e71bbc0
Store message history in a conversation, and provide API to access the history.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
19120
diff
changeset
|
519 | * Clear the message history of a conversation. |
|
cf4e3e71bbc0
Store message history in a conversation, and provide API to access the history.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
19120
diff
changeset
|
520 | * |
|
cf4e3e71bbc0
Store message history in a conversation, and provide API to access the history.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
19120
diff
changeset
|
521 | * @param conv The conversation |
|
cf4e3e71bbc0
Store message history in a conversation, and provide API to access the history.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
19120
diff
changeset
|
522 | */ |
|
cf4e3e71bbc0
Store message history in a conversation, and provide API to access the history.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
19120
diff
changeset
|
523 | void purple_conversation_clear_message_history(PurpleConversation *conv); |
|
cf4e3e71bbc0
Store message history in a conversation, and provide API to access the history.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
19120
diff
changeset
|
524 | |
|
cf4e3e71bbc0
Store message history in a conversation, and provide API to access the history.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
19120
diff
changeset
|
525 | /** |
|
34600
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
526 | * Set the UI data associated with this conversation. |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
527 | * |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
528 | * @param conv The conversation. |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
529 | * @param ui_data A pointer to associate with this conversation. |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
530 | */ |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
531 | void purple_conversation_set_ui_data(PurpleConversation *conv, gpointer ui_data); |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
532 | |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
533 | /** |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
534 | * Get the UI data associated with this conversation. |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
535 | * |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
536 | * @param conv The conversation. |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
537 | * |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
538 | * @return The UI data associated with this conversation. This is a |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
539 | * convenience field provided to the UIs--it is not |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
540 | * used by the libpurple core. |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
541 | */ |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
542 | gpointer purple_conversation_get_ui_data(const PurpleConversation *conv); |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
543 | |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
544 | /** |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
545 | * Sends a message to a conversation after confirming with |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
546 | * the user. |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
547 | * |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
548 | * This function is intended for use in cases where the user |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
549 | * hasn't explicitly and knowingly caused a message to be sent. |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
550 | * The confirmation ensures that the user isn't sending a |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
551 | * message by mistake. |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
552 | * |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
553 | * @param conv The conversation. |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
554 | * @param message The message to send. |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
555 | */ |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
556 | void purple_conversation_send_confirm(PurpleConversation *conv, const char *message); |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
557 | |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
558 | /** |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
559 | * Adds a smiley to the conversation's smiley tree. If this returns |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
560 | * @c TRUE you should call purple_conversation_custom_smiley_write() one or more |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
561 | * times, and then purple_conversation_custom_smiley_close(). If this returns |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
562 | * @c FALSE, either the conv or smile were invalid, or the icon was |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
563 | * found in the cache. In either case, calling write or close would |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
564 | * be an error. |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
565 | * |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
566 | * @param conv The conversation to associate the smiley with. |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
567 | * @param smile The text associated with the smiley |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
568 | * @param cksum_type The type of checksum. |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
569 | * @param chksum The checksum, as a NUL terminated base64 string. |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
570 | * @param remote @c TRUE if the custom smiley is set by the remote user (buddy). |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
571 | * @return @c TRUE if an icon is expected, else FALSE. Note that |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
572 | * it is an error to never call purple_conversation_custom_smiley_close if |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
573 | * this function returns @c TRUE, but an error to call it if |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
574 | * @c FALSE is returned. |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
575 | */ |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
576 | |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
577 | gboolean purple_conversation_custom_smiley_add(PurpleConversation *conv, const char *smile, |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
578 | const char *cksum_type, const char *chksum, |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
579 | gboolean remote); |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
580 | |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
581 | /** |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
582 | * Updates the image associated with the current smiley. |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
583 | * |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
584 | * @param conv The conversation associated with the smiley. |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
585 | * @param smile The text associated with the smiley. |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
586 | * @param data The actual image data. |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
587 | * @param size The length of the data. |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
588 | */ |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
589 | |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
590 | void purple_conversation_custom_smiley_write(PurpleConversation *conv, |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
591 | const char *smile, |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
592 | const guchar *data, |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
593 | gsize size); |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
594 | |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
595 | /** |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
596 | * Close the custom smiley, all data has been written with |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
597 | * purple_conversation_custom_smiley_write, and it is no longer valid |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
598 | * to call that function on that smiley. |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
599 | * |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
600 | * @param conv The purple conversation associated with the smiley. |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
601 | * @param smile The text associated with the smiley |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
602 | */ |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
603 | |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
604 | void purple_conversation_custom_smiley_close(PurpleConversation *conv, const char *smile); |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
605 | |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
606 | /** |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
607 | * Retrieves the extended menu items for the conversation. |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
608 | * |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
609 | * @param conv The conversation. |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
610 | * |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
611 | * @return A list of PurpleMenuAction items, harvested by the |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
612 | * chat-extended-menu signal. The list and the menuaction |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
613 | * items should be freed by the caller. |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
614 | */ |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
615 | GList * purple_conversation_get_extended_menu(PurpleConversation *conv); |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
616 | |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
617 | /** |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
618 | * Perform a command in a conversation. Similar to @see purple_cmd_do_command |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
619 | * |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
620 | * @param conv The conversation. |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
621 | * @param cmdline The entire command including the arguments. |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
622 | * @param markup @c NULL, or the formatted command line. |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
623 | * @param error If the command failed errormsg is filled in with the appropriate error |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
624 | * message, if not @c NULL. It must be freed by the caller with g_free(). |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
625 | * |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
626 | * @return @c TRUE if the command was executed successfully, @c FALSE otherwise. |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
627 | */ |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
628 | gboolean purple_conversation_do_command(PurpleConversation *conv, |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
629 | const gchar *cmdline, const gchar *markup, gchar **error); |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
630 | |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
631 | /*@}*/ |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
632 | |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
633 | /**************************************************************************/ |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
634 | /** @name Conversation Helper API */ |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
635 | /**************************************************************************/ |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
636 | /*@{*/ |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
637 | |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
638 | /** |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
639 | * Presents an IM-error to the user |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
640 | * |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
641 | * This is a helper function to find a conversation, write an error to it, and |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
642 | * raise the window. If a conversation with this user doesn't already exist, |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
643 | * the function will return FALSE and the calling function can attempt to present |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
644 | * the error another way (purple_notify_error, most likely) |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
645 | * |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
646 | * @param who The user this error is about |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
647 | * @param account The account this error is on |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
648 | * @param what The error |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
649 | * @return TRUE if the error was presented, else FALSE |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
650 | */ |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
651 | gboolean purple_conversation_helper_present_error(const char *who, PurpleAccount *account, const char *what); |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
652 | |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
653 | /*@}*/ |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
654 | |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
655 | /**************************************************************************/ |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
656 | /** @name Conversation Message API */ |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
657 | /**************************************************************************/ |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
658 | /*@{*/ |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
659 | |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
660 | /** |
|
34667
56e06ab47188
Made PurpleConversationMessage a GBoxed
Ankit Vani <a@nevitus.org>
parents:
34666
diff
changeset
|
661 | * Returns the GType for the PurpleConversationMessage boxed structure. |
|
56e06ab47188
Made PurpleConversationMessage a GBoxed
Ankit Vani <a@nevitus.org>
parents:
34666
diff
changeset
|
662 | */ |
|
56e06ab47188
Made PurpleConversationMessage a GBoxed
Ankit Vani <a@nevitus.org>
parents:
34666
diff
changeset
|
663 | GType purple_conversation_message_get_type(void); |
|
56e06ab47188
Made PurpleConversationMessage a GBoxed
Ankit Vani <a@nevitus.org>
parents:
34666
diff
changeset
|
664 | |
|
56e06ab47188
Made PurpleConversationMessage a GBoxed
Ankit Vani <a@nevitus.org>
parents:
34666
diff
changeset
|
665 | /** |
|
34599
0b1b22f5e2ec
Begun GObjectification of PurpleConversation.
Ankit Vani <a@nevitus.org>
parents:
34595
diff
changeset
|
666 | * Get the sender from a PurpleConversationMessage |
|
19590
cf4e3e71bbc0
Store message history in a conversation, and provide API to access the history.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
19120
diff
changeset
|
667 | * |
|
34599
0b1b22f5e2ec
Begun GObjectification of PurpleConversation.
Ankit Vani <a@nevitus.org>
parents:
34595
diff
changeset
|
668 | * @param msg A PurpleConversationMessage |
|
19590
cf4e3e71bbc0
Store message history in a conversation, and provide API to access the history.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
19120
diff
changeset
|
669 | * |
|
cf4e3e71bbc0
Store message history in a conversation, and provide API to access the history.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
19120
diff
changeset
|
670 | * @return The name of the sender of the message |
|
cf4e3e71bbc0
Store message history in a conversation, and provide API to access the history.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
19120
diff
changeset
|
671 | */ |
|
34599
0b1b22f5e2ec
Begun GObjectification of PurpleConversation.
Ankit Vani <a@nevitus.org>
parents:
34595
diff
changeset
|
672 | const char *purple_conversation_message_get_sender(const PurpleConversationMessage *msg); |
|
19590
cf4e3e71bbc0
Store message history in a conversation, and provide API to access the history.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
19120
diff
changeset
|
673 | |
|
cf4e3e71bbc0
Store message history in a conversation, and provide API to access the history.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
19120
diff
changeset
|
674 | /** |
|
34599
0b1b22f5e2ec
Begun GObjectification of PurpleConversation.
Ankit Vani <a@nevitus.org>
parents:
34595
diff
changeset
|
675 | * Get the message from a PurpleConversationMessage |
|
19590
cf4e3e71bbc0
Store message history in a conversation, and provide API to access the history.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
19120
diff
changeset
|
676 | * |
|
34599
0b1b22f5e2ec
Begun GObjectification of PurpleConversation.
Ankit Vani <a@nevitus.org>
parents:
34595
diff
changeset
|
677 | * @param msg A PurpleConversationMessage |
|
19590
cf4e3e71bbc0
Store message history in a conversation, and provide API to access the history.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
19120
diff
changeset
|
678 | * |
|
cf4e3e71bbc0
Store message history in a conversation, and provide API to access the history.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
19120
diff
changeset
|
679 | * @return The name of the sender of the message |
|
cf4e3e71bbc0
Store message history in a conversation, and provide API to access the history.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
19120
diff
changeset
|
680 | */ |
|
34599
0b1b22f5e2ec
Begun GObjectification of PurpleConversation.
Ankit Vani <a@nevitus.org>
parents:
34595
diff
changeset
|
681 | const char *purple_conversation_message_get_message(const PurpleConversationMessage *msg); |
|
19590
cf4e3e71bbc0
Store message history in a conversation, and provide API to access the history.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
19120
diff
changeset
|
682 | |
|
cf4e3e71bbc0
Store message history in a conversation, and provide API to access the history.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
19120
diff
changeset
|
683 | /** |
|
34599
0b1b22f5e2ec
Begun GObjectification of PurpleConversation.
Ankit Vani <a@nevitus.org>
parents:
34595
diff
changeset
|
684 | * Get the message-flags of a PurpleConversationMessage |
|
19590
cf4e3e71bbc0
Store message history in a conversation, and provide API to access the history.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
19120
diff
changeset
|
685 | * |
|
34599
0b1b22f5e2ec
Begun GObjectification of PurpleConversation.
Ankit Vani <a@nevitus.org>
parents:
34595
diff
changeset
|
686 | * @param msg A PurpleConversationMessage |
|
19590
cf4e3e71bbc0
Store message history in a conversation, and provide API to access the history.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
19120
diff
changeset
|
687 | * |
|
22082
617ac5b2b597
Docu patch from Simon Wenner. Closes #4497.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
21453
diff
changeset
|
688 | * @return The message flags |
|
19590
cf4e3e71bbc0
Store message history in a conversation, and provide API to access the history.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
19120
diff
changeset
|
689 | */ |
|
34620
e49aa67344e1
Renamed PurpleConversationMessageFlags back to PurpleMessageFlags.
Ankit Vani <a@nevitus.org>
parents:
34616
diff
changeset
|
690 | PurpleMessageFlags purple_conversation_message_get_flags(const PurpleConversationMessage *msg); |
|
19590
cf4e3e71bbc0
Store message history in a conversation, and provide API to access the history.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
19120
diff
changeset
|
691 | |
|
cf4e3e71bbc0
Store message history in a conversation, and provide API to access the history.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
19120
diff
changeset
|
692 | /** |
|
34599
0b1b22f5e2ec
Begun GObjectification of PurpleConversation.
Ankit Vani <a@nevitus.org>
parents:
34595
diff
changeset
|
693 | * Get the timestamp of a PurpleConversationMessage |
|
19590
cf4e3e71bbc0
Store message history in a conversation, and provide API to access the history.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
19120
diff
changeset
|
694 | * |
|
34599
0b1b22f5e2ec
Begun GObjectification of PurpleConversation.
Ankit Vani <a@nevitus.org>
parents:
34595
diff
changeset
|
695 | * @param msg A PurpleConversationMessage |
|
19590
cf4e3e71bbc0
Store message history in a conversation, and provide API to access the history.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
19120
diff
changeset
|
696 | * |
|
22082
617ac5b2b597
Docu patch from Simon Wenner. Closes #4497.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
21453
diff
changeset
|
697 | * @return The timestamp of the message |
|
19590
cf4e3e71bbc0
Store message history in a conversation, and provide API to access the history.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
19120
diff
changeset
|
698 | */ |
|
34599
0b1b22f5e2ec
Begun GObjectification of PurpleConversation.
Ankit Vani <a@nevitus.org>
parents:
34595
diff
changeset
|
699 | time_t purple_conversation_message_get_timestamp(const PurpleConversationMessage *msg); |
|
32690
ec1fca0a6b5d
Hide struct _PurpleConvMessage.
Andrew Victor <andrew.victor@mxit.com>
parents:
32632
diff
changeset
|
700 | |
|
ec1fca0a6b5d
Hide struct _PurpleConvMessage.
Andrew Victor <andrew.victor@mxit.com>
parents:
32632
diff
changeset
|
701 | /** |
|
34599
0b1b22f5e2ec
Begun GObjectification of PurpleConversation.
Ankit Vani <a@nevitus.org>
parents:
34595
diff
changeset
|
702 | * Get the alias from a PurpleConversationMessage |
|
32690
ec1fca0a6b5d
Hide struct _PurpleConvMessage.
Andrew Victor <andrew.victor@mxit.com>
parents:
32632
diff
changeset
|
703 | * |
|
34599
0b1b22f5e2ec
Begun GObjectification of PurpleConversation.
Ankit Vani <a@nevitus.org>
parents:
34595
diff
changeset
|
704 | * @param msg A PurpleConversationMessage |
|
32690
ec1fca0a6b5d
Hide struct _PurpleConvMessage.
Andrew Victor <andrew.victor@mxit.com>
parents:
32632
diff
changeset
|
705 | * |
|
ec1fca0a6b5d
Hide struct _PurpleConvMessage.
Andrew Victor <andrew.victor@mxit.com>
parents:
32632
diff
changeset
|
706 | * @return The alias of the sender of the message |
|
ec1fca0a6b5d
Hide struct _PurpleConvMessage.
Andrew Victor <andrew.victor@mxit.com>
parents:
32632
diff
changeset
|
707 | */ |
|
34599
0b1b22f5e2ec
Begun GObjectification of PurpleConversation.
Ankit Vani <a@nevitus.org>
parents:
34595
diff
changeset
|
708 | const char *purple_conversation_message_get_alias(const PurpleConversationMessage *msg); |
|
32690
ec1fca0a6b5d
Hide struct _PurpleConvMessage.
Andrew Victor <andrew.victor@mxit.com>
parents:
32632
diff
changeset
|
709 | |
|
ec1fca0a6b5d
Hide struct _PurpleConvMessage.
Andrew Victor <andrew.victor@mxit.com>
parents:
32632
diff
changeset
|
710 | /** |
|
34599
0b1b22f5e2ec
Begun GObjectification of PurpleConversation.
Ankit Vani <a@nevitus.org>
parents:
34595
diff
changeset
|
711 | * Get the conversation associated with the PurpleConversationMessage |
|
32690
ec1fca0a6b5d
Hide struct _PurpleConvMessage.
Andrew Victor <andrew.victor@mxit.com>
parents:
32632
diff
changeset
|
712 | * |
|
34599
0b1b22f5e2ec
Begun GObjectification of PurpleConversation.
Ankit Vani <a@nevitus.org>
parents:
34595
diff
changeset
|
713 | * @param msg A PurpleConversationMessage |
|
32690
ec1fca0a6b5d
Hide struct _PurpleConvMessage.
Andrew Victor <andrew.victor@mxit.com>
parents:
32632
diff
changeset
|
714 | * |
|
ec1fca0a6b5d
Hide struct _PurpleConvMessage.
Andrew Victor <andrew.victor@mxit.com>
parents:
32632
diff
changeset
|
715 | * @return The conversation |
|
ec1fca0a6b5d
Hide struct _PurpleConvMessage.
Andrew Victor <andrew.victor@mxit.com>
parents:
32632
diff
changeset
|
716 | */ |
|
34622
753f46dd000f
Global replace - renamed functions and types according to GObject-based PurpleConversation API
Ankit Vani <a@nevitus.org>
parents:
34621
diff
changeset
|
717 | PurpleConversation *purple_conversation_message_get_conversation(const PurpleConversationMessage *msg); |
|
19590
cf4e3e71bbc0
Store message history in a conversation, and provide API to access the history.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
19120
diff
changeset
|
718 | |
| 4359 | 719 | /*@}*/ |
| 720 | ||
|
32787
7072f190d6ad
Use G_BEGIN/END_DECLS in public libpurple files. This was
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
32698
diff
changeset
|
721 | G_END_DECLS |
|
5944
f19df037ac58
[gaim-migrate @ 6385]
Christian Hammond <chipx86@chipx86.com>
parents:
5872
diff
changeset
|
722 | |
| 15884 | 723 | #endif /* _PURPLE_CONVERSATION_H_ */ |