Fri, 02 Aug 2013 03:19:21 +0530
Replaced purple_conversation_helper_present_error() with simpler purple_conversation_present_error()
| 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 | |
|
34724
5a5d2f63e9a8
Added PURPLE_TYPE_CONVERSATION_MESSAGE macro to return GType of PurpleConversationMessage boxed structure
Ankit Vani <a@nevitus.org>
parents:
34691
diff
changeset
|
36 | #define PURPLE_TYPE_CONVERSATION_MESSAGE (purple_conversation_message_get_type()) |
|
5a5d2f63e9a8
Added PURPLE_TYPE_CONVERSATION_MESSAGE macro to return GType of PurpleConversationMessage boxed structure
Ankit Vani <a@nevitus.org>
parents:
34691
diff
changeset
|
37 | |
| 4359 | 38 | /**************************************************************************/ |
| 39 | /** Data Structures */ | |
| 40 | /**************************************************************************/ | |
| 41 | ||
|
34599
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 _PurpleConversation PurpleConversation; |
|
0b1b22f5e2ec
Begun GObjectification of PurpleConversation.
Ankit Vani <a@nevitus.org>
parents:
34595
diff
changeset
|
44 | /** @copydoc _PurpleConversation */ |
|
0b1b22f5e2ec
Begun GObjectification of PurpleConversation.
Ankit Vani <a@nevitus.org>
parents:
34595
diff
changeset
|
45 | 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
|
46 | |
|
23514
f5c4c1cb7b6f
Sprinkle @copydoc around to squash "ref could not be resolved" Doxygen warnings,
Will Thompson <resiak@pidgin.im>
parents:
23063
diff
changeset
|
47 | /** @copydoc _PurpleConversationUiOps */ |
|
34599
0b1b22f5e2ec
Begun GObjectification of PurpleConversation.
Ankit Vani <a@nevitus.org>
parents:
34595
diff
changeset
|
48 | typedef struct _PurpleConversationUiOps PurpleConversationUiOps; |
|
0b1b22f5e2ec
Begun GObjectification of PurpleConversation.
Ankit Vani <a@nevitus.org>
parents:
34595
diff
changeset
|
49 | /** @copydoc _PurpleConversationMessage */ |
|
0b1b22f5e2ec
Begun GObjectification of PurpleConversation.
Ankit Vani <a@nevitus.org>
parents:
34595
diff
changeset
|
50 | typedef struct _PurpleConversationMessage PurpleConversationMessage; |
| 4359 | 51 | |
| 52 | /** | |
| 53 | * Conversation update type. | |
| 54 | */ | |
|
5944
f19df037ac58
[gaim-migrate @ 6385]
Christian Hammond <chipx86@chipx86.com>
parents:
5872
diff
changeset
|
55 | typedef enum |
| 4359 | 56 | { |
|
34599
0b1b22f5e2ec
Begun GObjectification of PurpleConversation.
Ankit Vani <a@nevitus.org>
parents:
34595
diff
changeset
|
57 | 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
|
58 | was added. */ |
|
0b1b22f5e2ec
Begun GObjectification of PurpleConversation.
Ankit Vani <a@nevitus.org>
parents:
34595
diff
changeset
|
59 | PURPLE_CONVERSATION_UPDATE_REMOVE, /**< The buddy associated with the conversation |
|
0b1b22f5e2ec
Begun GObjectification of PurpleConversation.
Ankit Vani <a@nevitus.org>
parents:
34595
diff
changeset
|
60 | was removed. */ |
|
0b1b22f5e2ec
Begun GObjectification of PurpleConversation.
Ankit Vani <a@nevitus.org>
parents:
34595
diff
changeset
|
61 | PURPLE_CONVERSATION_UPDATE_ACCOUNT, /**< The purple_account was changed. */ |
|
0b1b22f5e2ec
Begun GObjectification of PurpleConversation.
Ankit Vani <a@nevitus.org>
parents:
34595
diff
changeset
|
62 | PURPLE_CONVERSATION_UPDATE_TYPING, /**< The typing state was updated. */ |
|
0b1b22f5e2ec
Begun GObjectification of PurpleConversation.
Ankit Vani <a@nevitus.org>
parents:
34595
diff
changeset
|
63 | PURPLE_CONVERSATION_UPDATE_UNSEEN, /**< The unseen state was updated. */ |
|
0b1b22f5e2ec
Begun GObjectification of PurpleConversation.
Ankit Vani <a@nevitus.org>
parents:
34595
diff
changeset
|
64 | PURPLE_CONVERSATION_UPDATE_LOGGING, /**< Logging for this conversation was |
|
0b1b22f5e2ec
Begun GObjectification of PurpleConversation.
Ankit Vani <a@nevitus.org>
parents:
34595
diff
changeset
|
65 | enabled or disabled. */ |
|
0b1b22f5e2ec
Begun GObjectification of PurpleConversation.
Ankit Vani <a@nevitus.org>
parents:
34595
diff
changeset
|
66 | PURPLE_CONVERSATION_UPDATE_TOPIC, /**< The topic for a chat was updated. */ |
| 4359 | 67 | /* |
| 68 | * XXX These need to go when we implement a more generic core/UI event | |
| 69 | * system. | |
| 70 | */ | |
|
34599
0b1b22f5e2ec
Begun GObjectification of PurpleConversation.
Ankit Vani <a@nevitus.org>
parents:
34595
diff
changeset
|
71 | 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
|
72 | 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
|
73 | PURPLE_CONVERSATION_UPDATE_AWAY, /**< The other user went away. */ |
|
0b1b22f5e2ec
Begun GObjectification of PurpleConversation.
Ankit Vani <a@nevitus.org>
parents:
34595
diff
changeset
|
74 | 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
|
75 | PURPLE_CONVERSATION_UPDATE_TITLE, |
|
0b1b22f5e2ec
Begun GObjectification of PurpleConversation.
Ankit Vani <a@nevitus.org>
parents:
34595
diff
changeset
|
76 | PURPLE_CONVERSATION_UPDATE_CHATLEFT, |
| 10665 | 77 | |
|
34599
0b1b22f5e2ec
Begun GObjectification of PurpleConversation.
Ankit Vani <a@nevitus.org>
parents:
34595
diff
changeset
|
78 | 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
|
79 | |
|
34599
0b1b22f5e2ec
Begun GObjectification of PurpleConversation.
Ankit Vani <a@nevitus.org>
parents:
34595
diff
changeset
|
80 | } PurpleConversationUpdateType; |
| 4359 | 81 | |
| 82 | /** | |
|
6621
2a18ef3e5224
[gaim-migrate @ 7145]
Robert McQueen <robot101@debian.org>
parents:
6605
diff
changeset
|
83 | * 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
|
84 | */ |
|
34599
0b1b22f5e2ec
Begun GObjectification of PurpleConversation.
Ankit Vani <a@nevitus.org>
parents:
34595
diff
changeset
|
85 | typedef enum /*< flags >*/ |
|
6621
2a18ef3e5224
[gaim-migrate @ 7145]
Robert McQueen <robot101@debian.org>
parents:
6605
diff
changeset
|
86 | { |
|
34620
e49aa67344e1
Renamed PurpleConversationMessageFlags back to PurpleMessageFlags.
Ankit Vani <a@nevitus.org>
parents:
34616
diff
changeset
|
87 | PURPLE_MESSAGE_SEND = 0x0001, /**< Outgoing message. */ |
|
e49aa67344e1
Renamed PurpleConversationMessageFlags back to PurpleMessageFlags.
Ankit Vani <a@nevitus.org>
parents:
34616
diff
changeset
|
88 | PURPLE_MESSAGE_RECV = 0x0002, /**< Incoming message. */ |
|
e49aa67344e1
Renamed PurpleConversationMessageFlags back to PurpleMessageFlags.
Ankit Vani <a@nevitus.org>
parents:
34616
diff
changeset
|
89 | PURPLE_MESSAGE_SYSTEM = 0x0004, /**< System message. */ |
|
e49aa67344e1
Renamed PurpleConversationMessageFlags back to PurpleMessageFlags.
Ankit Vani <a@nevitus.org>
parents:
34616
diff
changeset
|
90 | PURPLE_MESSAGE_AUTO_RESP = 0x0008, /**< Auto response. */ |
|
e49aa67344e1
Renamed PurpleConversationMessageFlags back to PurpleMessageFlags.
Ankit Vani <a@nevitus.org>
parents:
34616
diff
changeset
|
91 | 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
|
92 | message should not be |
|
adffcd91c9a3
A little rearranging and added reminders
Ankit Vani <a@nevitus.org>
parents:
34651
diff
changeset
|
93 | shown in conversations |
|
adffcd91c9a3
A little rearranging and added reminders
Ankit Vani <a@nevitus.org>
parents:
34651
diff
changeset
|
94 | which are only open for |
|
adffcd91c9a3
A little rearranging and added reminders
Ankit Vani <a@nevitus.org>
parents:
34651
diff
changeset
|
95 | internal UI purposes |
|
adffcd91c9a3
A little rearranging and added reminders
Ankit Vani <a@nevitus.org>
parents:
34651
diff
changeset
|
96 | (e.g. for contact-aware |
|
adffcd91c9a3
A little rearranging and added reminders
Ankit Vani <a@nevitus.org>
parents:
34651
diff
changeset
|
97 | conversations). */ |
|
34620
e49aa67344e1
Renamed PurpleConversationMessageFlags back to PurpleMessageFlags.
Ankit Vani <a@nevitus.org>
parents:
34616
diff
changeset
|
98 | PURPLE_MESSAGE_NICK = 0x0020, /**< Contains your nick. */ |
|
e49aa67344e1
Renamed PurpleConversationMessageFlags back to PurpleMessageFlags.
Ankit Vani <a@nevitus.org>
parents:
34616
diff
changeset
|
99 | PURPLE_MESSAGE_NO_LOG = 0x0040, /**< Do not log. */ |
|
e49aa67344e1
Renamed PurpleConversationMessageFlags back to PurpleMessageFlags.
Ankit Vani <a@nevitus.org>
parents:
34616
diff
changeset
|
100 | PURPLE_MESSAGE_WHISPER = 0x0080, /**< Whispered message. */ |
|
e49aa67344e1
Renamed PurpleConversationMessageFlags back to PurpleMessageFlags.
Ankit Vani <a@nevitus.org>
parents:
34616
diff
changeset
|
101 | PURPLE_MESSAGE_ERROR = 0x0200, /**< Error message. */ |
|
e49aa67344e1
Renamed PurpleConversationMessageFlags back to PurpleMessageFlags.
Ankit Vani <a@nevitus.org>
parents:
34616
diff
changeset
|
102 | PURPLE_MESSAGE_DELAYED = 0x0400, /**< Delayed message. */ |
|
e49aa67344e1
Renamed PurpleConversationMessageFlags back to PurpleMessageFlags.
Ankit Vani <a@nevitus.org>
parents:
34616
diff
changeset
|
103 | 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
|
104 | apply formatting */ |
|
34620
e49aa67344e1
Renamed PurpleConversationMessageFlags back to PurpleMessageFlags.
Ankit Vani <a@nevitus.org>
parents:
34616
diff
changeset
|
105 | PURPLE_MESSAGE_IMAGES = 0x1000, /**< Message contains images */ |
|
e49aa67344e1
Renamed PurpleConversationMessageFlags back to PurpleMessageFlags.
Ankit Vani <a@nevitus.org>
parents:
34616
diff
changeset
|
106 | PURPLE_MESSAGE_NOTIFY = 0x2000, /**< Message is a notification */ |
|
e49aa67344e1
Renamed PurpleConversationMessageFlags back to PurpleMessageFlags.
Ankit Vani <a@nevitus.org>
parents:
34616
diff
changeset
|
107 | 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
|
108 | linkified */ |
|
34620
e49aa67344e1
Renamed PurpleConversationMessageFlags back to PurpleMessageFlags.
Ankit Vani <a@nevitus.org>
parents:
34616
diff
changeset
|
109 | PURPLE_MESSAGE_INVISIBLE = 0x8000 /**< Message should not be displayed */ |
|
e49aa67344e1
Renamed PurpleConversationMessageFlags back to PurpleMessageFlags.
Ankit Vani <a@nevitus.org>
parents:
34616
diff
changeset
|
110 | } PurpleMessageFlags; |
|
6621
2a18ef3e5224
[gaim-migrate @ 7145]
Robert McQueen <robot101@debian.org>
parents:
6605
diff
changeset
|
111 | |
|
34620
e49aa67344e1
Renamed PurpleConversationMessageFlags back to PurpleMessageFlags.
Ankit Vani <a@nevitus.org>
parents:
34616
diff
changeset
|
112 | #include <glib.h> |
|
e49aa67344e1
Renamed PurpleConversationMessageFlags back to PurpleMessageFlags.
Ankit Vani <a@nevitus.org>
parents:
34616
diff
changeset
|
113 | #include <glib-object.h> |
|
5872
754c63f29b77
[gaim-migrate @ 6304]
Christian Hammond <chipx86@chipx86.com>
parents:
5858
diff
changeset
|
114 | |
|
34601
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 | /** PurpleConversation */ |
|
bccb29d7be14
Removed GObject for PurpleConversationMessage, this will be a GBoxed
Ankit Vani <a@nevitus.org>
parents:
34600
diff
changeset
|
117 | /**************************************************************************/ |
|
34747
2d77da77b594
Fixed documentation for PurpleConversation and PurpleConversationPrivate structs
Ankit Vani <a@nevitus.org>
parents:
34724
diff
changeset
|
118 | /** |
|
2d77da77b594
Fixed documentation for PurpleConversation and PurpleConversationPrivate structs
Ankit Vani <a@nevitus.org>
parents:
34724
diff
changeset
|
119 | * A core representation of a conversation between two or more people. |
|
2d77da77b594
Fixed documentation for PurpleConversation and PurpleConversationPrivate structs
Ankit Vani <a@nevitus.org>
parents:
34724
diff
changeset
|
120 | * |
|
2d77da77b594
Fixed documentation for PurpleConversation and PurpleConversationPrivate structs
Ankit Vani <a@nevitus.org>
parents:
34724
diff
changeset
|
121 | * The conversation can be an IM or a chat. |
|
34772
618830ebcdcb
Added a note about destruction of a conversation in PurpleConversation's documentation
Ankit Vani <a@nevitus.org>
parents:
34747
diff
changeset
|
122 | * |
|
34835
704ff889e9f6
Reworded the conversation destruction note
Ankit Vani <a@nevitus.org>
parents:
34772
diff
changeset
|
123 | * @note When a conversation is destroyed with the last g_object_unref(), the |
|
704ff889e9f6
Reworded the conversation destruction note
Ankit Vani <a@nevitus.org>
parents:
34772
diff
changeset
|
124 | * specified conversation is removed from the parent window. If this |
|
704ff889e9f6
Reworded the conversation destruction note
Ankit Vani <a@nevitus.org>
parents:
34772
diff
changeset
|
125 | * conversation is the only one contained in the parent window, that |
|
704ff889e9f6
Reworded the conversation destruction note
Ankit Vani <a@nevitus.org>
parents:
34772
diff
changeset
|
126 | * window is also destroyed. |
|
34747
2d77da77b594
Fixed documentation for PurpleConversation and PurpleConversationPrivate structs
Ankit Vani <a@nevitus.org>
parents:
34724
diff
changeset
|
127 | */ |
|
34599
0b1b22f5e2ec
Begun GObjectification of PurpleConversation.
Ankit Vani <a@nevitus.org>
parents:
34595
diff
changeset
|
128 | struct _PurpleConversation |
|
0b1b22f5e2ec
Begun GObjectification of PurpleConversation.
Ankit Vani <a@nevitus.org>
parents:
34595
diff
changeset
|
129 | { |
|
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 | GObject gparent; |
|
0b1b22f5e2ec
Begun GObjectification of PurpleConversation.
Ankit Vani <a@nevitus.org>
parents:
34595
diff
changeset
|
132 | |
|
34682
5eed877cb061
Moved ui_data to the object structure, and added back [gs]et_ui_data() methods
Ankit Vani <a@nevitus.org>
parents:
34681
diff
changeset
|
133 | /** The UI data associated with this conversation. This is a convenience |
|
5eed877cb061
Moved ui_data to the object structure, and added back [gs]et_ui_data() methods
Ankit Vani <a@nevitus.org>
parents:
34681
diff
changeset
|
134 | * field provided to the UIs -- it is not used by the libpurple core. |
|
5eed877cb061
Moved ui_data to the object structure, and added back [gs]et_ui_data() methods
Ankit Vani <a@nevitus.org>
parents:
34681
diff
changeset
|
135 | */ |
|
5eed877cb061
Moved ui_data to the object structure, and added back [gs]et_ui_data() methods
Ankit Vani <a@nevitus.org>
parents:
34681
diff
changeset
|
136 | gpointer ui_data; |
|
34599
0b1b22f5e2ec
Begun GObjectification of PurpleConversation.
Ankit Vani <a@nevitus.org>
parents:
34595
diff
changeset
|
137 | }; |
|
0b1b22f5e2ec
Begun GObjectification of PurpleConversation.
Ankit Vani <a@nevitus.org>
parents:
34595
diff
changeset
|
138 | |
|
34601
bccb29d7be14
Removed GObject for PurpleConversationMessage, this will be a GBoxed
Ankit Vani <a@nevitus.org>
parents:
34600
diff
changeset
|
139 | /** Base class for all #PurpleConversation's */ |
|
34599
0b1b22f5e2ec
Begun GObjectification of PurpleConversation.
Ankit Vani <a@nevitus.org>
parents:
34595
diff
changeset
|
140 | struct _PurpleConversationClass { |
|
0b1b22f5e2ec
Begun GObjectification of PurpleConversation.
Ankit Vani <a@nevitus.org>
parents:
34595
diff
changeset
|
141 | /*< private >*/ |
|
0b1b22f5e2ec
Begun GObjectification of PurpleConversation.
Ankit Vani <a@nevitus.org>
parents:
34595
diff
changeset
|
142 | GObjectClass parent_class; |
|
0b1b22f5e2ec
Begun GObjectification of PurpleConversation.
Ankit Vani <a@nevitus.org>
parents:
34595
diff
changeset
|
143 | |
|
34648
a6587d8cf907
Added missing API implementations to PurpleConversation and subclasses
Ankit Vani <a@nevitus.org>
parents:
34646
diff
changeset
|
144 | /** 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
|
145 | * @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
|
146 | */ |
|
5f7212d27557
Removed send from PurpleConversation's virtual methods, renamed the remaining methods.
Ankit Vani <a@nevitus.org>
parents:
34612
diff
changeset
|
147 | 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
|
148 | 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
|
149 | |
|
34599
0b1b22f5e2ec
Begun GObjectification of PurpleConversation.
Ankit Vani <a@nevitus.org>
parents:
34595
diff
changeset
|
150 | void (*_purple_reserved1)(void); |
|
0b1b22f5e2ec
Begun GObjectification of PurpleConversation.
Ankit Vani <a@nevitus.org>
parents:
34595
diff
changeset
|
151 | void (*_purple_reserved2)(void); |
|
0b1b22f5e2ec
Begun GObjectification of PurpleConversation.
Ankit Vani <a@nevitus.org>
parents:
34595
diff
changeset
|
152 | void (*_purple_reserved3)(void); |
|
0b1b22f5e2ec
Begun GObjectification of PurpleConversation.
Ankit Vani <a@nevitus.org>
parents:
34595
diff
changeset
|
153 | void (*_purple_reserved4)(void); |
|
0b1b22f5e2ec
Begun GObjectification of PurpleConversation.
Ankit Vani <a@nevitus.org>
parents:
34595
diff
changeset
|
154 | }; |
|
0b1b22f5e2ec
Begun GObjectification of PurpleConversation.
Ankit Vani <a@nevitus.org>
parents:
34595
diff
changeset
|
155 | |
|
34620
e49aa67344e1
Renamed PurpleConversationMessageFlags back to PurpleMessageFlags.
Ankit Vani <a@nevitus.org>
parents:
34616
diff
changeset
|
156 | #include "account.h" |
|
e49aa67344e1
Renamed PurpleConversationMessageFlags back to PurpleMessageFlags.
Ankit Vani <a@nevitus.org>
parents:
34616
diff
changeset
|
157 | #include "buddyicon.h" |
|
e49aa67344e1
Renamed PurpleConversationMessageFlags back to PurpleMessageFlags.
Ankit Vani <a@nevitus.org>
parents:
34616
diff
changeset
|
158 | #include "log.h" |
|
e49aa67344e1
Renamed PurpleConversationMessageFlags back to PurpleMessageFlags.
Ankit Vani <a@nevitus.org>
parents:
34616
diff
changeset
|
159 | |
|
34601
bccb29d7be14
Removed GObject for PurpleConversationMessage, this will be a GBoxed
Ankit Vani <a@nevitus.org>
parents:
34600
diff
changeset
|
160 | /**************************************************************************/ |
|
bccb29d7be14
Removed GObject for PurpleConversationMessage, this will be a GBoxed
Ankit Vani <a@nevitus.org>
parents:
34600
diff
changeset
|
161 | /** PurpleConversationUiOps */ |
|
bccb29d7be14
Removed GObject for PurpleConversationMessage, this will be a GBoxed
Ankit Vani <a@nevitus.org>
parents:
34600
diff
changeset
|
162 | /**************************************************************************/ |
|
34616
1604c574cdc9
Added write_message and send_message to Conversation.xs
Ankit Vani <a@nevitus.org>
parents:
34615
diff
changeset
|
163 | /** |
| 4359 | 164 | * Conversation operations and events. |
| 165 | * | |
| 166 | * Any UI representing a conversation must assign a filled-out | |
| 15884 | 167 | * PurpleConversationUiOps structure to the PurpleConversation. |
| 4359 | 168 | */ |
| 15884 | 169 | struct _PurpleConversationUiOps |
| 4359 | 170 | { |
|
19120
18082e7316a9
Document most of PurpleConversationUiOps.
Will Thompson <resiak@pidgin.im>
parents:
18190
diff
changeset
|
171 | /** Called when @a conv is created (but before the @ref |
|
18082e7316a9
Document most of PurpleConversationUiOps.
Will Thompson <resiak@pidgin.im>
parents:
18190
diff
changeset
|
172 | * conversation-created signal is emitted). |
|
18082e7316a9
Document most of PurpleConversationUiOps.
Will Thompson <resiak@pidgin.im>
parents:
18190
diff
changeset
|
173 | */ |
| 15884 | 174 | void (*create_conversation)(PurpleConversation *conv); |
|
19120
18082e7316a9
Document most of PurpleConversationUiOps.
Will Thompson <resiak@pidgin.im>
parents:
18190
diff
changeset
|
175 | |
|
18082e7316a9
Document most of PurpleConversationUiOps.
Will Thompson <resiak@pidgin.im>
parents:
18190
diff
changeset
|
176 | /** Called just before @a conv is freed. */ |
| 15884 | 177 | void (*destroy_conversation)(PurpleConversation *conv); |
|
19120
18082e7316a9
Document most of PurpleConversationUiOps.
Will Thompson <resiak@pidgin.im>
parents:
18190
diff
changeset
|
178 | /** 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
|
179 | * fall back to using #write_conv. |
|
34599
0b1b22f5e2ec
Begun GObjectification of PurpleConversation.
Ankit Vani <a@nevitus.org>
parents:
34595
diff
changeset
|
180 | * @see purple_chat_conversation_write() |
|
19120
18082e7316a9
Document most of PurpleConversationUiOps.
Will Thompson <resiak@pidgin.im>
parents:
18190
diff
changeset
|
181 | */ |
|
34641
3b8a466c18c5
Changed conversation UI ops arguments to subclasses wherever possible
Ankit Vani <a@nevitus.org>
parents:
34622
diff
changeset
|
182 | void (*write_chat)(PurpleChatConversation *chat, const char *who, |
|
34620
e49aa67344e1
Renamed PurpleConversationMessageFlags back to PurpleMessageFlags.
Ankit Vani <a@nevitus.org>
parents:
34616
diff
changeset
|
183 | const char *message, PurpleMessageFlags flags, |
|
34599
0b1b22f5e2ec
Begun GObjectification of PurpleConversation.
Ankit Vani <a@nevitus.org>
parents:
34595
diff
changeset
|
184 | time_t mtime); |
|
19120
18082e7316a9
Document most of PurpleConversationUiOps.
Will Thompson <resiak@pidgin.im>
parents:
18190
diff
changeset
|
185 | /** 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
|
186 | * libpurple will fall back to using #write_conv. |
|
34599
0b1b22f5e2ec
Begun GObjectification of PurpleConversation.
Ankit Vani <a@nevitus.org>
parents:
34595
diff
changeset
|
187 | * @see purple_im_conversation_write() |
|
19120
18082e7316a9
Document most of PurpleConversationUiOps.
Will Thompson <resiak@pidgin.im>
parents:
18190
diff
changeset
|
188 | */ |
|
34641
3b8a466c18c5
Changed conversation UI ops arguments to subclasses wherever possible
Ankit Vani <a@nevitus.org>
parents:
34622
diff
changeset
|
189 | void (*write_im)(PurpleIMConversation *im, const char *who, |
|
34620
e49aa67344e1
Renamed PurpleConversationMessageFlags back to PurpleMessageFlags.
Ankit Vani <a@nevitus.org>
parents:
34616
diff
changeset
|
190 | const char *message, PurpleMessageFlags flags, |
| 8155 | 191 | 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
|
192 | /** 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
|
193 | * 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
|
194 | * 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
|
195 | * 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
|
196 | * 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
|
197 | * |
|
19120
18082e7316a9
Document most of PurpleConversationUiOps.
Will Thompson <resiak@pidgin.im>
parents:
18190
diff
changeset
|
198 | * @see purple_conversation_write() |
|
18082e7316a9
Document most of PurpleConversationUiOps.
Will Thompson <resiak@pidgin.im>
parents:
18190
diff
changeset
|
199 | */ |
|
18082e7316a9
Document most of PurpleConversationUiOps.
Will Thompson <resiak@pidgin.im>
parents:
18190
diff
changeset
|
200 | void (*write_conv)(PurpleConversation *conv, |
|
18082e7316a9
Document most of PurpleConversationUiOps.
Will Thompson <resiak@pidgin.im>
parents:
18190
diff
changeset
|
201 | const char *name, |
|
18082e7316a9
Document most of PurpleConversationUiOps.
Will Thompson <resiak@pidgin.im>
parents:
18190
diff
changeset
|
202 | const char *alias, |
|
18082e7316a9
Document most of PurpleConversationUiOps.
Will Thompson <resiak@pidgin.im>
parents:
18190
diff
changeset
|
203 | const char *message, |
|
34620
e49aa67344e1
Renamed PurpleConversationMessageFlags back to PurpleMessageFlags.
Ankit Vani <a@nevitus.org>
parents:
34616
diff
changeset
|
204 | PurpleMessageFlags flags, |
| 8155 | 205 | time_t mtime); |
| 4359 | 206 | |
|
19120
18082e7316a9
Document most of PurpleConversationUiOps.
Will Thompson <resiak@pidgin.im>
parents:
18190
diff
changeset
|
207 | /** Add @a cbuddies to a chat. |
|
34670
9bd5bd903dc7
Renamed chat buddies to chat users, and IM conversation typing state to IM typing state.
Ankit Vani <a@nevitus.org>
parents:
34667
diff
changeset
|
208 | * @param cbuddies A @c GList of #PurpleChatUser structs. |
|
19120
18082e7316a9
Document most of PurpleConversationUiOps.
Will Thompson <resiak@pidgin.im>
parents:
18190
diff
changeset
|
209 | * @param new_arrivals Whether join notices should be shown. |
|
18082e7316a9
Document most of PurpleConversationUiOps.
Will Thompson <resiak@pidgin.im>
parents:
18190
diff
changeset
|
210 | * (Join notices are actually written to the |
|
34599
0b1b22f5e2ec
Begun GObjectification of PurpleConversation.
Ankit Vani <a@nevitus.org>
parents:
34595
diff
changeset
|
211 | * conversation by |
|
0b1b22f5e2ec
Begun GObjectification of PurpleConversation.
Ankit Vani <a@nevitus.org>
parents:
34595
diff
changeset
|
212 | * #purple_chat_conversation_add_users().) |
|
19120
18082e7316a9
Document most of PurpleConversationUiOps.
Will Thompson <resiak@pidgin.im>
parents:
18190
diff
changeset
|
213 | */ |
|
34641
3b8a466c18c5
Changed conversation UI ops arguments to subclasses wherever possible
Ankit Vani <a@nevitus.org>
parents:
34622
diff
changeset
|
214 | void (*chat_add_users)(PurpleChatConversation *chat, |
|
19120
18082e7316a9
Document most of PurpleConversationUiOps.
Will Thompson <resiak@pidgin.im>
parents:
18190
diff
changeset
|
215 | GList *cbuddies, |
|
18082e7316a9
Document most of PurpleConversationUiOps.
Will Thompson <resiak@pidgin.im>
parents:
18190
diff
changeset
|
216 | gboolean new_arrivals); |
|
18082e7316a9
Document most of PurpleConversationUiOps.
Will Thompson <resiak@pidgin.im>
parents:
18190
diff
changeset
|
217 | /** 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
|
218 | * rename message is written to the conversation by libpurple.) |
|
18082e7316a9
Document most of PurpleConversationUiOps.
Will Thompson <resiak@pidgin.im>
parents:
18190
diff
changeset
|
219 | * @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
|
220 | * @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
|
221 | */ |
|
34641
3b8a466c18c5
Changed conversation UI ops arguments to subclasses wherever possible
Ankit Vani <a@nevitus.org>
parents:
34622
diff
changeset
|
222 | 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
|
223 | const char *new_name, const char *new_alias); |
|
19120
18082e7316a9
Document most of PurpleConversationUiOps.
Will Thompson <resiak@pidgin.im>
parents:
18190
diff
changeset
|
224 | /** 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
|
225 | * @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
|
226 | * @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
|
227 | */ |
|
34641
3b8a466c18c5
Changed conversation UI ops arguments to subclasses wherever possible
Ankit Vani <a@nevitus.org>
parents:
34622
diff
changeset
|
228 | void (*chat_remove_users)(PurpleChatConversation *chat, GList *users); |
|
19120
18082e7316a9
Document most of PurpleConversationUiOps.
Will Thompson <resiak@pidgin.im>
parents:
18190
diff
changeset
|
229 | /** Called when a user's flags are changed. |
|
34670
9bd5bd903dc7
Renamed chat buddies to chat users, and IM conversation typing state to IM typing state.
Ankit Vani <a@nevitus.org>
parents:
34667
diff
changeset
|
230 | * @see purple_chat_user_set_flags() |
|
19120
18082e7316a9
Document most of PurpleConversationUiOps.
Will Thompson <resiak@pidgin.im>
parents:
18190
diff
changeset
|
231 | */ |
|
34670
9bd5bd903dc7
Renamed chat buddies to chat users, and IM conversation typing state to IM typing state.
Ankit Vani <a@nevitus.org>
parents:
34667
diff
changeset
|
232 | void (*chat_update_user)(PurpleChatUser *cb); |
| 4359 | 233 | |
|
19120
18082e7316a9
Document most of PurpleConversationUiOps.
Will Thompson <resiak@pidgin.im>
parents:
18190
diff
changeset
|
234 | /** Present this conversation to the user; for example, by displaying |
|
18082e7316a9
Document most of PurpleConversationUiOps.
Will Thompson <resiak@pidgin.im>
parents:
18190
diff
changeset
|
235 | * the IM dialog. |
|
18082e7316a9
Document most of PurpleConversationUiOps.
Will Thompson <resiak@pidgin.im>
parents:
18190
diff
changeset
|
236 | */ |
| 15884 | 237 | void (*present)(PurpleConversation *conv); |
| 4359 | 238 | |
|
19120
18082e7316a9
Document most of PurpleConversationUiOps.
Will Thompson <resiak@pidgin.im>
parents:
18190
diff
changeset
|
239 | /** 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
|
240 | * this conversation has the focus, return @c TRUE; otherwise, return |
|
18082e7316a9
Document most of PurpleConversationUiOps.
Will Thompson <resiak@pidgin.im>
parents:
18190
diff
changeset
|
241 | * @c FALSE. |
|
18082e7316a9
Document most of PurpleConversationUiOps.
Will Thompson <resiak@pidgin.im>
parents:
18190
diff
changeset
|
242 | */ |
| 15884 | 243 | gboolean (*has_focus)(PurpleConversation *conv); |
|
9260
82d7b380220a
[gaim-migrate @ 10059]
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
9166
diff
changeset
|
244 | |
| 10526 | 245 | /* Custom Smileys */ |
|
34599
0b1b22f5e2ec
Begun GObjectification of PurpleConversation.
Ankit Vani <a@nevitus.org>
parents:
34595
diff
changeset
|
246 | gboolean (*custom_smiley_add)(PurpleConversation *conv, const char *smile, |
|
34605
89e6c5346d63
Begun refactoring for PurpleConversation
Ankit Vani <a@nevitus.org>
parents:
34602
diff
changeset
|
247 | gboolean remote); |
| 15884 | 248 | void (*custom_smiley_write)(PurpleConversation *conv, const char *smile, |
|
11137
cf40226ddff7
[gaim-migrate @ 13201]
Mark Doliner <markdoliner@pidgin.im>
parents:
11035
diff
changeset
|
249 | const guchar *data, gsize size); |
| 15884 | 250 | void (*custom_smiley_close)(PurpleConversation *conv, const char *smile); |
| 14582 | 251 | |
|
19120
18082e7316a9
Document most of PurpleConversationUiOps.
Will Thompson <resiak@pidgin.im>
parents:
18190
diff
changeset
|
252 | /** 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
|
253 | * 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
|
254 | * 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
|
255 | * #purple_request_action(). |
|
18082e7316a9
Document most of PurpleConversationUiOps.
Will Thompson <resiak@pidgin.im>
parents:
18190
diff
changeset
|
256 | */ |
| 15884 | 257 | 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
|
258 | |
|
1ce5ffe12e2a
Initial addition of padding for ui_ops and other class-like structs
Gary Kramlich <grim@reaperworld.com>
parents:
16007
diff
changeset
|
259 | 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
|
260 | 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
|
261 | 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
|
262 | void (*_purple_reserved4)(void); |
| 4359 | 263 | }; |
| 264 | ||
|
32787
7072f190d6ad
Use G_BEGIN/END_DECLS in public libpurple files. This was
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
32698
diff
changeset
|
265 | G_BEGIN_DECLS |
|
5944
f19df037ac58
[gaim-migrate @ 6385]
Christian Hammond <chipx86@chipx86.com>
parents:
5872
diff
changeset
|
266 | |
| 4359 | 267 | /**************************************************************************/ |
| 268 | /** @name Conversation API */ | |
| 269 | /**************************************************************************/ | |
| 270 | /*@{*/ | |
| 271 | ||
|
34646
e7f4631e93f7
Begun adding GObject code to conversation sources
Ankit Vani <a@nevitus.org>
parents:
34641
diff
changeset
|
272 | /** |
|
34609
28b0f26f011f
Added GObject boilerplate code for headers, also _new() and _get_type() functions.
Ankit Vani <a@nevitus.org>
parents:
34608
diff
changeset
|
273 | * Returns the GType for the Conversation object. |
| 4359 | 274 | */ |
|
34609
28b0f26f011f
Added GObject boilerplate code for headers, also _new() and _get_type() functions.
Ankit Vani <a@nevitus.org>
parents:
34608
diff
changeset
|
275 | GType purple_conversation_get_type(void); |
| 4359 | 276 | |
|
12624
c1c92f08976b
[gaim-migrate @ 14960]
Christopher O'Brien <siege@pidgin.im>
parents:
12618
diff
changeset
|
277 | /** |
|
c1c92f08976b
[gaim-migrate @ 14960]
Christopher O'Brien <siege@pidgin.im>
parents:
12618
diff
changeset
|
278 | * 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
|
279 | * conversation by displaying the IM dialog. |
|
c1c92f08976b
[gaim-migrate @ 14960]
Christopher O'Brien <siege@pidgin.im>
parents:
12618
diff
changeset
|
280 | * @param conv The conversation to present |
|
c1c92f08976b
[gaim-migrate @ 14960]
Christopher O'Brien <siege@pidgin.im>
parents:
12618
diff
changeset
|
281 | */ |
| 15884 | 282 | void purple_conversation_present(PurpleConversation *conv); |
|
12624
c1c92f08976b
[gaim-migrate @ 14960]
Christopher O'Brien <siege@pidgin.im>
parents:
12618
diff
changeset
|
283 | |
| 4359 | 284 | /** |
| 285 | * Sets the specified conversation's UI operations structure. | |
| 286 | * | |
| 287 | * @param conv The conversation. | |
| 288 | * @param ops The UI conversation operations structure. | |
| 289 | */ | |
| 15884 | 290 | void purple_conversation_set_ui_ops(PurpleConversation *conv, |
| 291 | PurpleConversationUiOps *ops); | |
| 4359 | 292 | |
| 293 | /** | |
| 294 | * Returns the specified conversation's UI operations structure. | |
|
6585
8fcd3639e544
[gaim-migrate @ 7107]
Christian Hammond <chipx86@chipx86.com>
parents:
6488
diff
changeset
|
295 | * |
| 4359 | 296 | * @param conv The conversation. |
| 297 | * | |
| 298 | * @return The operations structure. | |
| 299 | */ | |
|
34600
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
300 | PurpleConversationUiOps *purple_conversation_get_ui_ops(const PurpleConversation *conv); |
| 4359 | 301 | |
| 302 | /** | |
| 15884 | 303 | * Sets the specified conversation's purple_account. |
| 4359 | 304 | * |
| 15884 | 305 | * This purple_account represents the user using purple, not the person the user |
| 4359 | 306 | * is having a conversation/chat/flame with. |
| 307 | * | |
| 308 | * @param conv The conversation. | |
| 15884 | 309 | * @param account The purple_account. |
| 4359 | 310 | */ |
| 15884 | 311 | void purple_conversation_set_account(PurpleConversation *conv, |
| 312 | PurpleAccount *account); | |
| 4359 | 313 | |
| 314 | /** | |
| 15884 | 315 | * Returns the specified conversation's purple_account. |
| 4359 | 316 | * |
| 15884 | 317 | * This purple_account represents the user using purple, not the person the user |
| 4359 | 318 | * is having a conversation/chat/flame with. |
| 319 | * | |
| 320 | * @param conv The conversation. | |
| 321 | * | |
| 15884 | 322 | * @return The conversation's purple_account. |
| 4359 | 323 | */ |
| 15884 | 324 | PurpleAccount *purple_conversation_get_account(const PurpleConversation *conv); |
| 4359 | 325 | |
| 326 | /** | |
| 15884 | 327 | * Returns the specified conversation's purple_connection. |
| 4359 | 328 | * |
| 329 | * @param conv The conversation. | |
| 330 | * | |
| 15884 | 331 | * @return The conversation's purple_connection. |
| 4359 | 332 | */ |
|
32698
154e4a2a6287
Our API really shouldn't have a 'gc' in it anymore.
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
32690
diff
changeset
|
333 | PurpleConnection *purple_conversation_get_connection(const PurpleConversation *conv); |
| 4359 | 334 | |
| 335 | /** | |
| 336 | * Sets the specified conversation's title. | |
| 337 | * | |
| 338 | * @param conv The conversation. | |
| 339 | * @param title The title. | |
| 340 | */ | |
| 15884 | 341 | void purple_conversation_set_title(PurpleConversation *conv, const char *title); |
| 4359 | 342 | |
| 343 | /** | |
| 344 | * Returns the specified conversation's title. | |
| 345 | * | |
|
6720
cdc5348dd848
[gaim-migrate @ 7247]
Christian Hammond <chipx86@chipx86.com>
parents:
6622
diff
changeset
|
346 | * @param conv The conversation. |
| 4359 | 347 | * |
| 348 | * @return The title. | |
| 349 | */ | |
| 15884 | 350 | const char *purple_conversation_get_title(const PurpleConversation *conv); |
| 4359 | 351 | |
| 352 | /** | |
| 353 | * Automatically sets the specified conversation's title. | |
| 354 | * | |
| 355 | * This function takes OPT_IM_ALIAS_TAB into account, as well as the | |
| 356 | * user's alias. | |
| 357 | * | |
| 358 | * @param conv The conversation. | |
| 359 | */ | |
| 15884 | 360 | void purple_conversation_autoset_title(PurpleConversation *conv); |
| 4359 | 361 | |
| 362 | /** | |
|
7256
311c8febfc92
[gaim-migrate @ 7833]
Christian Hammond <chipx86@chipx86.com>
parents:
7122
diff
changeset
|
363 | * Sets the specified conversation's name. |
|
311c8febfc92
[gaim-migrate @ 7833]
Christian Hammond <chipx86@chipx86.com>
parents:
7122
diff
changeset
|
364 | * |
|
311c8febfc92
[gaim-migrate @ 7833]
Christian Hammond <chipx86@chipx86.com>
parents:
7122
diff
changeset
|
365 | * @param conv The conversation. |
|
311c8febfc92
[gaim-migrate @ 7833]
Christian Hammond <chipx86@chipx86.com>
parents:
7122
diff
changeset
|
366 | * @param name The conversation's name. |
|
311c8febfc92
[gaim-migrate @ 7833]
Christian Hammond <chipx86@chipx86.com>
parents:
7122
diff
changeset
|
367 | */ |
| 15884 | 368 | void purple_conversation_set_name(PurpleConversation *conv, const char *name); |
|
7256
311c8febfc92
[gaim-migrate @ 7833]
Christian Hammond <chipx86@chipx86.com>
parents:
7122
diff
changeset
|
369 | |
|
311c8febfc92
[gaim-migrate @ 7833]
Christian Hammond <chipx86@chipx86.com>
parents:
7122
diff
changeset
|
370 | /** |
| 4359 | 371 | * Returns the specified conversation's name. |
| 372 | * | |
| 373 | * @param conv The conversation. | |
| 374 | * | |
|
22082
617ac5b2b597
Docu patch from Simon Wenner. Closes #4497.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
21453
diff
changeset
|
375 | * @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
|
376 | * then it's the name of the PurpleBuddy. |
| 4359 | 377 | */ |
| 15884 | 378 | const char *purple_conversation_get_name(const PurpleConversation *conv); |
| 4359 | 379 | |
| 380 | /** | |
| 381 | * Enables or disables logging for this conversation. | |
| 382 | * | |
|
6720
cdc5348dd848
[gaim-migrate @ 7247]
Christian Hammond <chipx86@chipx86.com>
parents:
6622
diff
changeset
|
383 | * @param conv The conversation. |
|
cdc5348dd848
[gaim-migrate @ 7247]
Christian Hammond <chipx86@chipx86.com>
parents:
6622
diff
changeset
|
384 | * @param log @c TRUE if logging should be enabled, or @c FALSE otherwise. |
| 4359 | 385 | */ |
| 15884 | 386 | void purple_conversation_set_logging(PurpleConversation *conv, gboolean log); |
| 4359 | 387 | |
| 388 | /** | |
| 389 | * Returns whether or not logging is enabled for this conversation. | |
| 390 | * | |
|
6720
cdc5348dd848
[gaim-migrate @ 7247]
Christian Hammond <chipx86@chipx86.com>
parents:
6622
diff
changeset
|
391 | * @param conv The conversation. |
|
cdc5348dd848
[gaim-migrate @ 7247]
Christian Hammond <chipx86@chipx86.com>
parents:
6622
diff
changeset
|
392 | * |
| 4359 | 393 | * @return @c TRUE if logging is enabled, or @c FALSE otherwise. |
| 394 | */ | |
| 15884 | 395 | gboolean purple_conversation_is_logging(const PurpleConversation *conv); |
| 4359 | 396 | |
| 397 | /** | |
|
11672
018c70c8134c
[gaim-migrate @ 13958]
Richard Laager <rlaager@pidgin.im>
parents:
11664
diff
changeset
|
398 | * Closes any open logs for this conversation. |
|
018c70c8134c
[gaim-migrate @ 13958]
Richard Laager <rlaager@pidgin.im>
parents:
11664
diff
changeset
|
399 | * |
|
018c70c8134c
[gaim-migrate @ 13958]
Richard Laager <rlaager@pidgin.im>
parents:
11664
diff
changeset
|
400 | * 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
|
401 | * message, if the conversation has logging enabled. To disable logging for |
| 15884 | 402 | * the remainder of the conversation, use purple_conversation_set_logging(). |
|
11672
018c70c8134c
[gaim-migrate @ 13958]
Richard Laager <rlaager@pidgin.im>
parents:
11664
diff
changeset
|
403 | * |
|
018c70c8134c
[gaim-migrate @ 13958]
Richard Laager <rlaager@pidgin.im>
parents:
11664
diff
changeset
|
404 | * @param conv The conversation. |
|
018c70c8134c
[gaim-migrate @ 13958]
Richard Laager <rlaager@pidgin.im>
parents:
11664
diff
changeset
|
405 | */ |
| 15884 | 406 | void purple_conversation_close_logs(PurpleConversation *conv); |
|
11672
018c70c8134c
[gaim-migrate @ 13958]
Richard Laager <rlaager@pidgin.im>
parents:
11664
diff
changeset
|
407 | |
|
018c70c8134c
[gaim-migrate @ 13958]
Richard Laager <rlaager@pidgin.im>
parents:
11664
diff
changeset
|
408 | /** |
| 4359 | 409 | * Writes to a conversation window. |
| 410 | * | |
| 411 | * 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
|
412 | * 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
|
413 | * 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
|
414 | * 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
|
415 | * IM. |
| 4359 | 416 | * |
| 417 | * This can be used to write generic messages, such as "so and so closed | |
| 418 | * the conversation window." | |
| 419 | * | |
| 420 | * @param conv The conversation. | |
| 421 | * @param who The user who sent the message. | |
| 422 | * @param message The message. | |
|
6621
2a18ef3e5224
[gaim-migrate @ 7145]
Robert McQueen <robot101@debian.org>
parents:
6605
diff
changeset
|
423 | * @param flags The message flags. |
| 4359 | 424 | * @param mtime The time the message was sent. |
| 425 | * | |
|
34615
5f7212d27557
Removed send from PurpleConversation's virtual methods, renamed the remaining methods.
Ankit Vani <a@nevitus.org>
parents:
34612
diff
changeset
|
426 | * @see purple_conversation_write_message() |
| 4359 | 427 | */ |
| 15884 | 428 | 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
|
429 | const char *message, PurpleMessageFlags flags, |
| 10665 | 430 | time_t mtime); |
| 431 | ||
|
34648
a6587d8cf907
Added missing API implementations to PurpleConversation and subclasses
Ankit Vani <a@nevitus.org>
parents:
34646
diff
changeset
|
432 | /** |
|
34615
5f7212d27557
Removed send from PurpleConversation's virtual methods, renamed the remaining methods.
Ankit Vani <a@nevitus.org>
parents:
34612
diff
changeset
|
433 | * 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
|
434 | * |
|
5f7212d27557
Removed send from PurpleConversation's virtual methods, renamed the remaining methods.
Ankit Vani <a@nevitus.org>
parents:
34612
diff
changeset
|
435 | * @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
|
436 | * @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
|
437 | * @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
|
438 | * @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
|
439 | * @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
|
440 | */ |
|
5f7212d27557
Removed send from PurpleConversation's virtual methods, renamed the remaining methods.
Ankit Vani <a@nevitus.org>
parents:
34612
diff
changeset
|
441 | 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
|
442 | const char *who, const char *message, |
|
34620
e49aa67344e1
Renamed PurpleConversationMessageFlags back to PurpleMessageFlags.
Ankit Vani <a@nevitus.org>
parents:
34616
diff
changeset
|
443 | 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
|
444 | |
|
34648
a6587d8cf907
Added missing API implementations to PurpleConversation and subclasses
Ankit Vani <a@nevitus.org>
parents:
34646
diff
changeset
|
445 | /** |
|
34615
5f7212d27557
Removed send from PurpleConversation's virtual methods, renamed the remaining methods.
Ankit Vani <a@nevitus.org>
parents:
34612
diff
changeset
|
446 | * 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
|
447 | * 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
|
448 | * |
|
ec739e43a71c
Added purple_conversation_* functions to API to redirect to virtual methods
Ankit Vani <a@nevitus.org>
parents:
34611
diff
changeset
|
449 | * @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
|
450 | * @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
|
451 | */ |
|
ec739e43a71c
Added purple_conversation_* functions to API to redirect to virtual methods
Ankit Vani <a@nevitus.org>
parents:
34611
diff
changeset
|
452 | 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
|
453 | |
|
34648
a6587d8cf907
Added missing API implementations to PurpleConversation and subclasses
Ankit Vani <a@nevitus.org>
parents:
34646
diff
changeset
|
454 | /** |
|
34612
ec739e43a71c
Added purple_conversation_* functions to API to redirect to virtual methods
Ankit Vani <a@nevitus.org>
parents:
34611
diff
changeset
|
455 | * 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
|
456 | * |
|
ec739e43a71c
Added purple_conversation_* functions to API to redirect to virtual methods
Ankit Vani <a@nevitus.org>
parents:
34611
diff
changeset
|
457 | * @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
|
458 | * @param message The message to send. |
|
34620
e49aa67344e1
Renamed PurpleConversationMessageFlags back to PurpleMessageFlags.
Ankit Vani <a@nevitus.org>
parents:
34616
diff
changeset
|
459 | * @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
|
460 | * 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
|
461 | */ |
|
34651
88c104a20f4b
Refactored the PurpleConversation subclasses and subsystem to use the GObject conversation API.
Ankit Vani <a@nevitus.org>
parents:
34648
diff
changeset
|
462 | 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
|
463 | PurpleMessageFlags flags); |
|
34612
ec739e43a71c
Added purple_conversation_* functions to API to redirect to virtual methods
Ankit Vani <a@nevitus.org>
parents:
34611
diff
changeset
|
464 | |
| 10665 | 465 | /** |
| 466 | Set the features as supported for the given conversation. | |
| 467 | @param conv The conversation | |
| 468 | @param features Bitset defining supported features | |
| 469 | */ | |
| 15884 | 470 | void purple_conversation_set_features(PurpleConversation *conv, |
| 471 | PurpleConnectionFlags features); | |
| 10665 | 472 | |
| 473 | ||
| 474 | /** | |
| 475 | Get the features supported by the given conversation. | |
| 476 | @param conv The conversation | |
| 477 | */ | |
| 15884 | 478 | PurpleConnectionFlags purple_conversation_get_features(PurpleConversation *conv); |
| 4359 | 479 | |
| 480 | /** | |
|
9260
82d7b380220a
[gaim-migrate @ 10059]
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
9166
diff
changeset
|
481 | * Determines if a conversation has focus |
|
82d7b380220a
[gaim-migrate @ 10059]
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
9166
diff
changeset
|
482 | * |
|
82d7b380220a
[gaim-migrate @ 10059]
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
9166
diff
changeset
|
483 | * @param conv The conversation. |
|
82d7b380220a
[gaim-migrate @ 10059]
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
9166
diff
changeset
|
484 | * |
|
82d7b380220a
[gaim-migrate @ 10059]
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
9166
diff
changeset
|
485 | * @return @c TRUE if the conversation has focus, @c FALSE if |
|
82d7b380220a
[gaim-migrate @ 10059]
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
9166
diff
changeset
|
486 | * 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
|
487 | */ |
| 15884 | 488 | gboolean purple_conversation_has_focus(PurpleConversation *conv); |
|
9260
82d7b380220a
[gaim-migrate @ 10059]
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
9166
diff
changeset
|
489 | |
|
82d7b380220a
[gaim-migrate @ 10059]
Stu Tomlinson <nosnilmot@pidgin.im>
parents:
9166
diff
changeset
|
490 | /** |
| 4359 | 491 | * Updates the visual status and UI of a conversation. |
| 492 | * | |
| 493 | * @param conv The conversation. | |
| 494 | * @param type The update type. | |
| 495 | */ | |
|
34599
0b1b22f5e2ec
Begun GObjectification of PurpleConversation.
Ankit Vani <a@nevitus.org>
parents:
34595
diff
changeset
|
496 | void purple_conversation_update(PurpleConversation *conv, PurpleConversationUpdateType type); |
| 4359 | 497 | |
| 498 | /** | |
|
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
|
499 | * 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
|
500 | * |
|
cf4e3e71bbc0
Store message history in a conversation, and provide API to access the history.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
19120
diff
changeset
|
501 | * @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
|
502 | * |
|
34599
0b1b22f5e2ec
Begun GObjectification of PurpleConversation.
Ankit Vani <a@nevitus.org>
parents:
34595
diff
changeset
|
503 | * @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
|
504 | * 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
|
505 | * 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
|
506 | */ |
|
cf4e3e71bbc0
Store message history in a conversation, and provide API to access the history.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
19120
diff
changeset
|
507 | 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
|
508 | |
|
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 | * 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
|
511 | * |
|
cf4e3e71bbc0
Store message history in a conversation, and provide API to access the history.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
19120
diff
changeset
|
512 | * @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
|
513 | */ |
|
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 | 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
|
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 | /** |
|
34681
1b2233f987cb
Backed out changeset f39c64847a3d
Ankit Vani <a@nevitus.org>
parents:
34680
diff
changeset
|
517 | * Set the UI data associated with this conversation. |
|
1b2233f987cb
Backed out changeset f39c64847a3d
Ankit Vani <a@nevitus.org>
parents:
34680
diff
changeset
|
518 | * |
|
1b2233f987cb
Backed out changeset f39c64847a3d
Ankit Vani <a@nevitus.org>
parents:
34680
diff
changeset
|
519 | * @param conv The conversation. |
|
1b2233f987cb
Backed out changeset f39c64847a3d
Ankit Vani <a@nevitus.org>
parents:
34680
diff
changeset
|
520 | * @param ui_data A pointer to associate with this conversation. |
|
1b2233f987cb
Backed out changeset f39c64847a3d
Ankit Vani <a@nevitus.org>
parents:
34680
diff
changeset
|
521 | */ |
|
1b2233f987cb
Backed out changeset f39c64847a3d
Ankit Vani <a@nevitus.org>
parents:
34680
diff
changeset
|
522 | void purple_conversation_set_ui_data(PurpleConversation *conv, gpointer ui_data); |
|
1b2233f987cb
Backed out changeset f39c64847a3d
Ankit Vani <a@nevitus.org>
parents:
34680
diff
changeset
|
523 | |
|
1b2233f987cb
Backed out changeset f39c64847a3d
Ankit Vani <a@nevitus.org>
parents:
34680
diff
changeset
|
524 | /** |
|
1b2233f987cb
Backed out changeset f39c64847a3d
Ankit Vani <a@nevitus.org>
parents:
34680
diff
changeset
|
525 | * Get the UI data associated with this conversation. |
|
1b2233f987cb
Backed out changeset f39c64847a3d
Ankit Vani <a@nevitus.org>
parents:
34680
diff
changeset
|
526 | * |
|
1b2233f987cb
Backed out changeset f39c64847a3d
Ankit Vani <a@nevitus.org>
parents:
34680
diff
changeset
|
527 | * @param conv The conversation. |
|
1b2233f987cb
Backed out changeset f39c64847a3d
Ankit Vani <a@nevitus.org>
parents:
34680
diff
changeset
|
528 | * |
|
1b2233f987cb
Backed out changeset f39c64847a3d
Ankit Vani <a@nevitus.org>
parents:
34680
diff
changeset
|
529 | * @return The UI data associated with this conversation. This is a |
|
1b2233f987cb
Backed out changeset f39c64847a3d
Ankit Vani <a@nevitus.org>
parents:
34680
diff
changeset
|
530 | * convenience field provided to the UIs--it is not |
|
1b2233f987cb
Backed out changeset f39c64847a3d
Ankit Vani <a@nevitus.org>
parents:
34680
diff
changeset
|
531 | * used by the libpurple core. |
|
1b2233f987cb
Backed out changeset f39c64847a3d
Ankit Vani <a@nevitus.org>
parents:
34680
diff
changeset
|
532 | */ |
|
1b2233f987cb
Backed out changeset f39c64847a3d
Ankit Vani <a@nevitus.org>
parents:
34680
diff
changeset
|
533 | gpointer purple_conversation_get_ui_data(const PurpleConversation *conv); |
|
1b2233f987cb
Backed out changeset f39c64847a3d
Ankit Vani <a@nevitus.org>
parents:
34680
diff
changeset
|
534 | |
|
1b2233f987cb
Backed out changeset f39c64847a3d
Ankit Vani <a@nevitus.org>
parents:
34680
diff
changeset
|
535 | /** |
|
34600
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
536 | * 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
|
537 | * the user. |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
538 | * |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
539 | * 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
|
540 | * 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
|
541 | * 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
|
542 | * message by mistake. |
|
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 | * @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
|
545 | * @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
|
546 | */ |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
547 | 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
|
548 | |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
549 | /** |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
550 | * 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
|
551 | * @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
|
552 | * 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
|
553 | * @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
|
554 | * 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
|
555 | * be an error. |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
556 | * |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
557 | * @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
|
558 | * @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
|
559 | * @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
|
560 | * @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
|
561 | * @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
|
562 | * @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
|
563 | * 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
|
564 | * 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
|
565 | * @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
|
566 | */ |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
567 | |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
568 | 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
|
569 | 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
|
570 | gboolean remote); |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
571 | |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
572 | /** |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
573 | * 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
|
574 | * |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
575 | * @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
|
576 | * @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
|
577 | * @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
|
578 | * @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
|
579 | */ |
|
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 | 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
|
582 | const char *smile, |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
583 | const guchar *data, |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
584 | gsize size); |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
585 | |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
586 | /** |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
587 | * 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
|
588 | * 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
|
589 | * 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
|
590 | * |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
591 | * @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
|
592 | * @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
|
593 | */ |
|
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 | 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
|
596 | |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
597 | /** |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
598 | * 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
|
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 conversation. |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
601 | * |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
602 | * @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
|
603 | * 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
|
604 | * 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
|
605 | */ |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
606 | 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
|
607 | |
|
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 | * 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
|
610 | * |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
611 | * @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
|
612 | * @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
|
613 | * @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
|
614 | * @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
|
615 | * 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
|
616 | * |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
617 | * @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
|
618 | */ |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
619 | 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
|
620 | 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
|
621 | |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
622 | /*@}*/ |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
623 | |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
624 | /**************************************************************************/ |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
625 | /** @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
|
626 | /**************************************************************************/ |
|
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 | |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
629 | /** |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
630 | * 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
|
631 | * |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
632 | * 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
|
633 | * 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
|
634 | * 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
|
635 | * 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
|
636 | * |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
637 | * @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
|
638 | * @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
|
639 | * @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
|
640 | * @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
|
641 | */ |
|
34868
faa5b053f310
Replaced purple_conversation_helper_present_error() with simpler purple_conversation_present_error()
Ankit Vani <a@nevitus.org>
parents:
34835
diff
changeset
|
642 | gboolean purple_conversation_present_error(const char *who, PurpleAccount *account, const char *what); |
|
34600
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
643 | |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
644 | /*@}*/ |
|
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 | /**************************************************************************/ |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
647 | /** @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
|
648 | /**************************************************************************/ |
|
3180ebbd06be
Added GObject structures, moved things around, renamed functions as GObject methods.
Ankit Vani <a@nevitus.org>
parents:
34599
diff
changeset
|
649 | /*@{*/ |
|
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 | /** |
|
34667
56e06ab47188
Made PurpleConversationMessage a GBoxed
Ankit Vani <a@nevitus.org>
parents:
34666
diff
changeset
|
652 | * Returns the GType for the PurpleConversationMessage boxed structure. |
|
56e06ab47188
Made PurpleConversationMessage a GBoxed
Ankit Vani <a@nevitus.org>
parents:
34666
diff
changeset
|
653 | */ |
|
56e06ab47188
Made PurpleConversationMessage a GBoxed
Ankit Vani <a@nevitus.org>
parents:
34666
diff
changeset
|
654 | GType purple_conversation_message_get_type(void); |
|
56e06ab47188
Made PurpleConversationMessage a GBoxed
Ankit Vani <a@nevitus.org>
parents:
34666
diff
changeset
|
655 | |
|
56e06ab47188
Made PurpleConversationMessage a GBoxed
Ankit Vani <a@nevitus.org>
parents:
34666
diff
changeset
|
656 | /** |
|
34599
0b1b22f5e2ec
Begun GObjectification of PurpleConversation.
Ankit Vani <a@nevitus.org>
parents:
34595
diff
changeset
|
657 | * 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
|
658 | * |
|
34599
0b1b22f5e2ec
Begun GObjectification of PurpleConversation.
Ankit Vani <a@nevitus.org>
parents:
34595
diff
changeset
|
659 | * @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
|
660 | * |
|
cf4e3e71bbc0
Store message history in a conversation, and provide API to access the history.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
19120
diff
changeset
|
661 | * @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
|
662 | */ |
|
34599
0b1b22f5e2ec
Begun GObjectification of PurpleConversation.
Ankit Vani <a@nevitus.org>
parents:
34595
diff
changeset
|
663 | 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
|
664 | |
|
cf4e3e71bbc0
Store message history in a conversation, and provide API to access the history.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
19120
diff
changeset
|
665 | /** |
|
34599
0b1b22f5e2ec
Begun GObjectification of PurpleConversation.
Ankit Vani <a@nevitus.org>
parents:
34595
diff
changeset
|
666 | * 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
|
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_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
|
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-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
|
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 | * |
|
22082
617ac5b2b597
Docu patch from Simon Wenner. Closes #4497.
Sadrul Habib Chowdhury <sadrul@pidgin.im>
parents:
21453
diff
changeset
|
679 | * @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
|
680 | */ |
|
34620
e49aa67344e1
Renamed PurpleConversationMessageFlags back to PurpleMessageFlags.
Ankit Vani <a@nevitus.org>
parents:
34616
diff
changeset
|
681 | 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
|
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 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
|
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 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
|
689 | */ |
|
34599
0b1b22f5e2ec
Begun GObjectification of PurpleConversation.
Ankit Vani <a@nevitus.org>
parents:
34595
diff
changeset
|
690 | 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
|
691 | |
|
ec1fca0a6b5d
Hide struct _PurpleConvMessage.
Andrew Victor <andrew.victor@mxit.com>
parents:
32632
diff
changeset
|
692 | /** |
|
34599
0b1b22f5e2ec
Begun GObjectification of PurpleConversation.
Ankit Vani <a@nevitus.org>
parents:
34595
diff
changeset
|
693 | * Get the alias from a PurpleConversationMessage |
|
32690
ec1fca0a6b5d
Hide struct _PurpleConvMessage.
Andrew Victor <andrew.victor@mxit.com>
parents:
32632
diff
changeset
|
694 | * |
|
34599
0b1b22f5e2ec
Begun GObjectification of PurpleConversation.
Ankit Vani <a@nevitus.org>
parents:
34595
diff
changeset
|
695 | * @param msg A PurpleConversationMessage |
|
32690
ec1fca0a6b5d
Hide struct _PurpleConvMessage.
Andrew Victor <andrew.victor@mxit.com>
parents:
32632
diff
changeset
|
696 | * |
|
ec1fca0a6b5d
Hide struct _PurpleConvMessage.
Andrew Victor <andrew.victor@mxit.com>
parents:
32632
diff
changeset
|
697 | * @return The alias of the sender of the message |
|
ec1fca0a6b5d
Hide struct _PurpleConvMessage.
Andrew Victor <andrew.victor@mxit.com>
parents:
32632
diff
changeset
|
698 | */ |
|
34599
0b1b22f5e2ec
Begun GObjectification of PurpleConversation.
Ankit Vani <a@nevitus.org>
parents:
34595
diff
changeset
|
699 | 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
|
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 conversation associated with the 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 conversation |
|
ec1fca0a6b5d
Hide struct _PurpleConvMessage.
Andrew Victor <andrew.victor@mxit.com>
parents:
32632
diff
changeset
|
707 | */ |
|
34622
753f46dd000f
Global replace - renamed functions and types according to GObject-based PurpleConversation API
Ankit Vani <a@nevitus.org>
parents:
34621
diff
changeset
|
708 | 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
|
709 | |
| 4359 | 710 | /*@}*/ |
| 711 | ||
|
32787
7072f190d6ad
Use G_BEGIN/END_DECLS in public libpurple files. This was
Elliott Sales de Andrade <qulogic@pidgin.im>
parents:
32698
diff
changeset
|
712 | G_END_DECLS |
|
5944
f19df037ac58
[gaim-migrate @ 6385]
Christian Hammond <chipx86@chipx86.com>
parents:
5872
diff
changeset
|
713 | |
| 15884 | 714 | #endif /* _PURPLE_CONVERSATION_H_ */ |