annotate src/gtkconv.h @ 9933:cee849d17167

[gaim-migrate @ 10825] Another patch from Dave West. This makes the file transfer message show up when someone sends you an AIM file transfer. It also attempts to decode the message to UTF-8. The chat invitation messages also benefit from this attempted conversion. committer: Tailor Script <tailor@pidgin.im>
author Mark Doliner <mark@kingant.net>
date Thu, 02 Sep 2004 03:46:53 +0000
parents 4d3a61dcb942
children 50c1724d5e59
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
4359
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
1 /**
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
2 * @file gtkconv.h GTK+ Conversation API
5034
4691c5936c01 [gaim-migrate @ 5377]
Christian Hammond <chipx86@chipx86.com>
parents: 4736
diff changeset
3 * @ingroup gtkui
4359
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
4 *
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
5 * gaim
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
6 *
8046
fa6395637e2c [gaim-migrate @ 8730]
Sean Egan <seanegan@gmail.com>
parents: 7996
diff changeset
7 * Gaim is the legal property of its developers, whose names are too numerous
fa6395637e2c [gaim-migrate @ 8730]
Sean Egan <seanegan@gmail.com>
parents: 7996
diff changeset
8 * to list here. Please refer to the COPYRIGHT file distributed with this
fa6395637e2c [gaim-migrate @ 8730]
Sean Egan <seanegan@gmail.com>
parents: 7996
diff changeset
9 * source distribution.
7326
00a9ab26d607 [gaim-migrate @ 7912]
Christian Hammond <chipx86@chipx86.com>
parents: 7295
diff changeset
10 *
4359
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
11 * This program is free software; you can redistribute it and/or modify
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
12 * it under the terms of the GNU General Public License as published by
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
13 * the Free Software Foundation; either version 2 of the License, or
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
14 * (at your option) any later version.
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
15 *
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
16 * This program is distributed in the hope that it will be useful,
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
17 * but WITHOUT ANY WARRANTY; without even the implied warranty of
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
18 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
19 * GNU General Public License for more details.
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
20 *
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
21 * You should have received a copy of the GNU General Public License
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
22 * along with this program; if not, write to the Free Software
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
23 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
24 */
9713
db62420a53a2 [gaim-migrate @ 10574]
Mark Doliner <mark@kingant.net>
parents: 9709
diff changeset
25 #ifndef _GAIM_GTKCONVERSATION_H_
db62420a53a2 [gaim-migrate @ 10574]
Mark Doliner <mark@kingant.net>
parents: 9709
diff changeset
26 #define _GAIM_GTKCONVERSATION_H_
4359
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
27
9791
4a15962c344a [gaim-migrate @ 10659]
Mark Doliner <mark@kingant.net>
parents: 9759
diff changeset
28 #include "gtkgaim.h"
5676
dae79aefac8d [gaim-migrate @ 6094]
Christian Hammond <chipx86@chipx86.com>
parents: 5674
diff changeset
29
9718
78022bad9367 [gaim-migrate @ 10579]
Mark Doliner <mark@kingant.net>
parents: 9713
diff changeset
30 #include "conversation.h"
9709
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents: 9687
diff changeset
31
9498
6f9bedacac3b [gaim-migrate @ 10324]
Luke Schierer <lschiere@pidgin.im>
parents: 9497
diff changeset
32 enum {
6f9bedacac3b [gaim-migrate @ 10324]
Luke Schierer <lschiere@pidgin.im>
parents: 9497
diff changeset
33 CHAT_USERS_ICON_COLUMN,
6f9bedacac3b [gaim-migrate @ 10324]
Luke Schierer <lschiere@pidgin.im>
parents: 9497
diff changeset
34 CHAT_USERS_NAME_COLUMN,
9554
8b2451878e26 [gaim-migrate @ 10387]
Luke Schierer <lschiere@pidgin.im>
parents: 9508
diff changeset
35 CHAT_USERS_FLAGS_COLUMN,
9498
6f9bedacac3b [gaim-migrate @ 10324]
Luke Schierer <lschiere@pidgin.im>
parents: 9497
diff changeset
36 CHAT_USERS_COLUMNS
6f9bedacac3b [gaim-migrate @ 10324]
Luke Schierer <lschiere@pidgin.im>
parents: 9497
diff changeset
37 };
6f9bedacac3b [gaim-migrate @ 10324]
Luke Schierer <lschiere@pidgin.im>
parents: 9497
diff changeset
38
4359
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
39 /**************************************************************************
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
40 * @name Structures
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
41 **************************************************************************/
5676
dae79aefac8d [gaim-migrate @ 6094]
Christian Hammond <chipx86@chipx86.com>
parents: 5674
diff changeset
42 /*@{*/
4359
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
43
5676
dae79aefac8d [gaim-migrate @ 6094]
Christian Hammond <chipx86@chipx86.com>
parents: 5674
diff changeset
44 typedef struct _GaimGtkWindow GaimGtkWindow;
dae79aefac8d [gaim-migrate @ 6094]
Christian Hammond <chipx86@chipx86.com>
parents: 5674
diff changeset
45 typedef struct _GaimGtkImPane GaimGtkImPane;
dae79aefac8d [gaim-migrate @ 6094]
Christian Hammond <chipx86@chipx86.com>
parents: 5674
diff changeset
46 typedef struct _GaimGtkChatPane GaimGtkChatPane;
dae79aefac8d [gaim-migrate @ 6094]
Christian Hammond <chipx86@chipx86.com>
parents: 5674
diff changeset
47 typedef struct _GaimGtkConversation GaimGtkConversation;
4359
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
48
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
49 /**
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
50 * A GTK+ representation of a graphical window containing one or more
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
51 * conversations.
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
52 */
5676
dae79aefac8d [gaim-migrate @ 6094]
Christian Hammond <chipx86@chipx86.com>
parents: 5674
diff changeset
53 struct _GaimGtkWindow
4359
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
54 {
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
55 GtkWidget *window; /**< The window. */
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
56 GtkWidget *notebook; /**< The notebook of conversations. */
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
57
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
58 struct
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
59 {
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
60 GtkWidget *menubar;
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
61
5167
d9073c83a8a0 [gaim-migrate @ 5531]
Mark Doliner <mark@kingant.net>
parents: 5106
diff changeset
62 GtkWidget *view_log;
5908
ed8a9a3bf7e2 [gaim-migrate @ 6340]
Christian Hammond <chipx86@chipx86.com>
parents: 5872
diff changeset
63
9468
4d0b0d5485e6 [gaim-migrate @ 10293]
Luke Schierer <lschiere@pidgin.im>
parents: 9339
diff changeset
64 GtkWidget *send_file;
5908
ed8a9a3bf7e2 [gaim-migrate @ 6340]
Christian Hammond <chipx86@chipx86.com>
parents: 5872
diff changeset
65 GtkWidget *add_pounce;
7887
4b43a3f9de73 [gaim-migrate @ 8545]
Mark Doliner <mark@kingant.net>
parents: 7859
diff changeset
66 GtkWidget *get_info;
4b43a3f9de73 [gaim-migrate @ 8545]
Mark Doliner <mark@kingant.net>
parents: 7859
diff changeset
67 GtkWidget *warn;
4b43a3f9de73 [gaim-migrate @ 8545]
Mark Doliner <mark@kingant.net>
parents: 7859
diff changeset
68 GtkWidget *invite;
4b43a3f9de73 [gaim-migrate @ 8545]
Mark Doliner <mark@kingant.net>
parents: 7859
diff changeset
69
5908
ed8a9a3bf7e2 [gaim-migrate @ 6340]
Christian Hammond <chipx86@chipx86.com>
parents: 5872
diff changeset
70 GtkWidget *alias;
7887
4b43a3f9de73 [gaim-migrate @ 8545]
Mark Doliner <mark@kingant.net>
parents: 7859
diff changeset
71 GtkWidget *block;
4b43a3f9de73 [gaim-migrate @ 8545]
Mark Doliner <mark@kingant.net>
parents: 7859
diff changeset
72 GtkWidget *add;
4b43a3f9de73 [gaim-migrate @ 8545]
Mark Doliner <mark@kingant.net>
parents: 7859
diff changeset
73 GtkWidget *remove;
5908
ed8a9a3bf7e2 [gaim-migrate @ 6340]
Christian Hammond <chipx86@chipx86.com>
parents: 5872
diff changeset
74
7859
e873d0bd0e6c [gaim-migrate @ 8513]
Mark Doliner <mark@kingant.net>
parents: 7820
diff changeset
75 GtkWidget *insert_link;
e873d0bd0e6c [gaim-migrate @ 8513]
Mark Doliner <mark@kingant.net>
parents: 7820
diff changeset
76 GtkWidget *insert_image;
e873d0bd0e6c [gaim-migrate @ 8513]
Mark Doliner <mark@kingant.net>
parents: 7820
diff changeset
77
4359
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
78 GtkWidget *logging;
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
79 GtkWidget *sounds;
7326
00a9ab26d607 [gaim-migrate @ 7912]
Christian Hammond <chipx86@chipx86.com>
parents: 7295
diff changeset
80 GtkWidget *show_formatting_toolbar;
9188
b6e3dcb23de0 [gaim-migrate @ 9983]
Luke Schierer <lschiere@pidgin.im>
parents: 9025
diff changeset
81 GtkWidget *show_timestamps;
5908
ed8a9a3bf7e2 [gaim-migrate @ 6340]
Christian Hammond <chipx86@chipx86.com>
parents: 5872
diff changeset
82
4359
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
83 GtkWidget *send_as;
5908
ed8a9a3bf7e2 [gaim-migrate @ 6340]
Christian Hammond <chipx86@chipx86.com>
parents: 5872
diff changeset
84
4736
0c85078fd371 [gaim-migrate @ 5051]
Nathan Walp <nwalp@pidgin.im>
parents: 4685
diff changeset
85 GtkWidget *typing_icon;
4359
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
86
4630
5cdfd20daa07 [gaim-migrate @ 4921]
Sean Egan <seanegan@gmail.com>
parents: 4465
diff changeset
87 GtkItemFactory *item_factory;
5cdfd20daa07 [gaim-migrate @ 4921]
Sean Egan <seanegan@gmail.com>
parents: 4465
diff changeset
88
4359
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
89 } menu;
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
90
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
91 /* Tab dragging stuff. */
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
92 gboolean in_drag;
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
93 gboolean in_predrag;
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
94
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
95 gint drag_min_x, drag_max_x, drag_min_y, drag_max_y;
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
96
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
97 gint drag_motion_signal;
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
98 gint drag_leave_signal;
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
99 };
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
100
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
101 /**
7820
8e60ddc28a22 [gaim-migrate @ 8472]
Mark Doliner <mark@kingant.net>
parents: 7650
diff changeset
102 * A GTK+ Instant Message pane.
4359
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
103 */
5676
dae79aefac8d [gaim-migrate @ 6094]
Christian Hammond <chipx86@chipx86.com>
parents: 5674
diff changeset
104 struct _GaimGtkImPane
4359
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
105 {
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
106 GtkWidget *warn;
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
107 GtkWidget *block;
9468
4d0b0d5485e6 [gaim-migrate @ 10293]
Luke Schierer <lschiere@pidgin.im>
parents: 9339
diff changeset
108 GtkWidget *send_file;
4359
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
109 GtkWidget *sep1;
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
110 GtkWidget *sep2;
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
111 GtkWidget *check;
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
112 GtkWidget *progress;
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
113
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
114 gboolean a_virgin;
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
115
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
116 /* Buddy icon stuff */
9885
4d3a61dcb942 [gaim-migrate @ 10767]
Nathan Walp <nwalp@pidgin.im>
parents: 9791
diff changeset
117 GtkWidget *icon_container;
4359
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
118 GtkWidget *icon;
9687
1769cb1261be [gaim-migrate @ 10539]
Sean Egan <seanegan@gmail.com>
parents: 9554
diff changeset
119 gboolean show_icon;
8189
b75fa309b2c6 [gaim-migrate @ 8910]
Mark Doliner <mark@kingant.net>
parents: 8046
diff changeset
120 gboolean animate;
4359
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
121 GdkPixbufAnimation *anim;
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
122 GdkPixbufAnimationIter *iter;
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
123 guint32 icon_timer;
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
124 };
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
125
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
126 /**
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
127 * GTK+ Chat panes.
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
128 */
5676
dae79aefac8d [gaim-migrate @ 6094]
Christian Hammond <chipx86@chipx86.com>
parents: 5674
diff changeset
129 struct _GaimGtkChatPane
4359
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
130 {
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
131 GtkWidget *count;
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
132 GtkWidget *list;
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
133 GtkWidget *invite;
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
134 GtkWidget *topic_text;
7996
334ab1319406 [gaim-migrate @ 8673]
Christian Hammond <chipx86@chipx86.com>
parents: 7930
diff changeset
135 GtkWidget *sep;
4359
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
136 };
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
137
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
138 /**
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
139 * A GTK+ conversation pane.
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
140 */
5676
dae79aefac8d [gaim-migrate @ 6094]
Christian Hammond <chipx86@chipx86.com>
parents: 5674
diff changeset
141 struct _GaimGtkConversation
4359
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
142 {
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
143 gboolean make_sound;
7326
00a9ab26d607 [gaim-migrate @ 7912]
Christian Hammond <chipx86@chipx86.com>
parents: 7295
diff changeset
144 gboolean show_formatting_toolbar;
9188
b6e3dcb23de0 [gaim-migrate @ 9983]
Luke Schierer <lschiere@pidgin.im>
parents: 9025
diff changeset
145 gboolean show_timestamps;
4359
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
146
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
147 GtkTooltips *tooltips;
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
148
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
149 GtkWidget *tab_cont;
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
150 GtkWidget *tabby;
6771
8eebba08b44b [gaim-migrate @ 7308]
Christian Hammond <chipx86@chipx86.com>
parents: 6392
diff changeset
151 GtkWidget *menu_tabby;
4359
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
152
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
153 GtkWidget *imhtml;
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
154 GtkTextBuffer *entry_buffer;
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
155 GtkWidget *entry;
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
156
7930
68f70cf074d0 [gaim-migrate @ 8601]
Mark Doliner <mark@kingant.net>
parents: 7887
diff changeset
157 GtkWidget *add;
68f70cf074d0 [gaim-migrate @ 8601]
Mark Doliner <mark@kingant.net>
parents: 7887
diff changeset
158 GtkWidget *remove;
4359
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
159 GtkWidget *info;
7930
68f70cf074d0 [gaim-migrate @ 8601]
Mark Doliner <mark@kingant.net>
parents: 7887
diff changeset
160 GtkWidget *send;
68f70cf074d0 [gaim-migrate @ 8601]
Mark Doliner <mark@kingant.net>
parents: 7887
diff changeset
161 GtkWidget *close; /* "x" on the tab */
6392
e9974608b319 [gaim-migrate @ 6897]
Christian Hammond <chipx86@chipx86.com>
parents: 5908
diff changeset
162 GtkWidget *icon;
4359
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
163 GtkWidget *tab_label;
6771
8eebba08b44b [gaim-migrate @ 7308]
Christian Hammond <chipx86@chipx86.com>
parents: 6392
diff changeset
164 GtkWidget *menu_icon;
8eebba08b44b [gaim-migrate @ 7308]
Christian Hammond <chipx86@chipx86.com>
parents: 6392
diff changeset
165 GtkWidget *menu_label;
4359
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
166 GtkSizeGroup *sg;
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
167
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
168 GtkWidget *bbox;
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
169 GtkWidget *sw;
9332
222eb83af4d3 [gaim-migrate @ 10140]
Nathan Walp <nwalp@pidgin.im>
parents: 9188
diff changeset
170 GtkWidget *lower_hbox;
4359
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
171
8317
6f549c1d0829 [gaim-migrate @ 9041]
Sean Egan <seanegan@gmail.com>
parents: 8290
diff changeset
172 GtkWidget *toolbar;
4359
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
173
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
174 struct
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
175 {
5106
7b218dde1d73 [gaim-migrate @ 5469]
Mark Doliner <mark@kingant.net>
parents: 5049
diff changeset
176 GtkWidget *image;
7295
c7f0a4397d9e [gaim-migrate @ 7879]
Sean Egan <seanegan@gmail.com>
parents: 7118
diff changeset
177 GtkWidget *search;
4359
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
178
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
179 } dialogs;
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
180
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
181 union
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
182 {
5676
dae79aefac8d [gaim-migrate @ 6094]
Christian Hammond <chipx86@chipx86.com>
parents: 5674
diff changeset
183 GaimGtkImPane *im;
dae79aefac8d [gaim-migrate @ 6094]
Christian Hammond <chipx86@chipx86.com>
parents: 5674
diff changeset
184 GaimGtkChatPane *chat;
4359
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
185
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
186 } u;
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
187 };
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
188
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
189 #define GAIM_GTK_WINDOW(win) \
5676
dae79aefac8d [gaim-migrate @ 6094]
Christian Hammond <chipx86@chipx86.com>
parents: 5674
diff changeset
190 ((GaimGtkWindow *)(win)->ui_data)
4359
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
191
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
192 #define GAIM_GTK_CONVERSATION(conv) \
5676
dae79aefac8d [gaim-migrate @ 6094]
Christian Hammond <chipx86@chipx86.com>
parents: 5674
diff changeset
193 ((GaimGtkConversation *)(conv)->ui_data)
4359
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
194
4384
8f633419c837 [gaim-migrate @ 4650]
Christian Hammond <chipx86@chipx86.com>
parents: 4359
diff changeset
195 #define GAIM_IS_GTK_WINDOW(win) \
7118
bf630f7dfdcd [gaim-migrate @ 7685]
Christian Hammond <chipx86@chipx86.com>
parents: 7035
diff changeset
196 (gaim_conv_window_get_ui_ops(win) == gaim_gtk_conversations_get_win_ui_ops())
4384
8f633419c837 [gaim-migrate @ 4650]
Christian Hammond <chipx86@chipx86.com>
parents: 4359
diff changeset
197
8f633419c837 [gaim-migrate @ 4650]
Christian Hammond <chipx86@chipx86.com>
parents: 4359
diff changeset
198 #define GAIM_IS_GTK_CONVERSATION(conv) \
7035
feb3d21a7794 [gaim-migrate @ 7598]
Christian Hammond <chipx86@chipx86.com>
parents: 6771
diff changeset
199 (gaim_conversation_get_ui_ops(conv) == \
feb3d21a7794 [gaim-migrate @ 7598]
Christian Hammond <chipx86@chipx86.com>
parents: 6771
diff changeset
200 gaim_gtk_conversations_get_conv_ui_ops())
4359
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
201
5676
dae79aefac8d [gaim-migrate @ 6094]
Christian Hammond <chipx86@chipx86.com>
parents: 5674
diff changeset
202 /*@}*/
dae79aefac8d [gaim-migrate @ 6094]
Christian Hammond <chipx86@chipx86.com>
parents: 5674
diff changeset
203
4359
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
204 /**************************************************************************
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
205 * @name GTK+ Conversation API
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
206 **************************************************************************/
5673
62f57ec16f29 [gaim-migrate @ 6091]
Christian Hammond <chipx86@chipx86.com>
parents: 5167
diff changeset
207 /*@{*/
62f57ec16f29 [gaim-migrate @ 6091]
Christian Hammond <chipx86@chipx86.com>
parents: 5167
diff changeset
208
62f57ec16f29 [gaim-migrate @ 6091]
Christian Hammond <chipx86@chipx86.com>
parents: 5167
diff changeset
209 /**
4359
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
210 * Returns the UI operations structure for GTK windows.
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
211 *
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
212 * @return The GTK window operations structure.
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
213 */
7118
bf630f7dfdcd [gaim-migrate @ 7685]
Christian Hammond <chipx86@chipx86.com>
parents: 7035
diff changeset
214 GaimConvWindowUiOps *gaim_gtk_conversations_get_win_ui_ops(void);
4359
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
215
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
216 /**
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
217 * Returns the UI operations structure for GTK conversations.
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
218 *
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
219 * @return The GTK conversation operations structure.
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
220 */
7035
feb3d21a7794 [gaim-migrate @ 7598]
Christian Hammond <chipx86@chipx86.com>
parents: 6771
diff changeset
221 GaimConversationUiOps *gaim_gtk_conversations_get_conv_ui_ops(void);
4359
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
222
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
223 /**
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
224 * Updates the buddy icon on a conversation.
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
225 *
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
226 * @param conv The conversation.
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
227 */
5676
dae79aefac8d [gaim-migrate @ 6094]
Christian Hammond <chipx86@chipx86.com>
parents: 5674
diff changeset
228 void gaim_gtkconv_update_buddy_icon(GaimConversation *conv);
4359
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
229
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
230 /**
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
231 * Updates the tab positions on all conversation windows to reflect any
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
232 * changed preferences.
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
233 */
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
234 void gaim_gtkconv_update_tabs(void);
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
235
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
236 /**
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
237 * Updates the button style on chat windows to reflect any
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
238 * changed preferences.
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
239 */
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
240 void gaim_gtkconv_update_chat_button_style();
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
241
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
242 /**
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
243 * Updates the button style on IM windows to reflect any
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
244 * changed preferences.
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
245 */
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
246 void gaim_gtkconv_update_im_button_style();
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
247
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
248 /**
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
249 * Updates conversation buttons by protocol.
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
250 *
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
251 * @param conv The conversation.
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
252 */
5676
dae79aefac8d [gaim-migrate @ 6094]
Christian Hammond <chipx86@chipx86.com>
parents: 5674
diff changeset
253 void gaim_gtkconv_update_buttons_by_protocol(GaimConversation *conv);
4359
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
254
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
255 /**
9759
b64ee81c7bcb [gaim-migrate @ 10626]
Mark Doliner <mark@kingant.net>
parents: 9718
diff changeset
256 * Creates a conversation button
b64ee81c7bcb [gaim-migrate @ 10626]
Mark Doliner <mark@kingant.net>
parents: 9718
diff changeset
257 *
b64ee81c7bcb [gaim-migrate @ 10626]
Mark Doliner <mark@kingant.net>
parents: 9718
diff changeset
258 * @param icon The stock icon name.
b64ee81c7bcb [gaim-migrate @ 10626]
Mark Doliner <mark@kingant.net>
parents: 9718
diff changeset
259 * @param text The text for the button.
b64ee81c7bcb [gaim-migrate @ 10626]
Mark Doliner <mark@kingant.net>
parents: 9718
diff changeset
260 * @param tooltip The tooltip text.
b64ee81c7bcb [gaim-migrate @ 10626]
Mark Doliner <mark@kingant.net>
parents: 9718
diff changeset
261 * @param tooltips The group of tooltips.
b64ee81c7bcb [gaim-migrate @ 10626]
Mark Doliner <mark@kingant.net>
parents: 9718
diff changeset
262 * @param callback A function to call when the button is clicked.
b64ee81c7bcb [gaim-migrate @ 10626]
Mark Doliner <mark@kingant.net>
parents: 9718
diff changeset
263 * @param data Data to pass to the callback.
b64ee81c7bcb [gaim-migrate @ 10626]
Mark Doliner <mark@kingant.net>
parents: 9718
diff changeset
264 *
b64ee81c7bcb [gaim-migrate @ 10626]
Mark Doliner <mark@kingant.net>
parents: 9718
diff changeset
265 * @return The button
b64ee81c7bcb [gaim-migrate @ 10626]
Mark Doliner <mark@kingant.net>
parents: 9718
diff changeset
266 */
b64ee81c7bcb [gaim-migrate @ 10626]
Mark Doliner <mark@kingant.net>
parents: 9718
diff changeset
267 GtkWidget *gaim_gtkconv_button_new(const char *icon, const char *text,
b64ee81c7bcb [gaim-migrate @ 10626]
Mark Doliner <mark@kingant.net>
parents: 9718
diff changeset
268 const char *tooltip, GtkTooltips *tooltips,
b64ee81c7bcb [gaim-migrate @ 10626]
Mark Doliner <mark@kingant.net>
parents: 9718
diff changeset
269 void *callback, void *data);
b64ee81c7bcb [gaim-migrate @ 10626]
Mark Doliner <mark@kingant.net>
parents: 9718
diff changeset
270
b64ee81c7bcb [gaim-migrate @ 10626]
Mark Doliner <mark@kingant.net>
parents: 9718
diff changeset
271 /**
4359
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
272 * Returns the window at the specified X, Y location.
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
273 *
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
274 * If the window is not a GTK+ window, @c NULL is returned.
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
275 *
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
276 * @param x The X coordinate.
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
277 * @param y The Y coordinate.
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
278 *
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
279 * @return The GTK+ window at the location, if it exists, or @c NULL otherwise.
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
280 */
7118
bf630f7dfdcd [gaim-migrate @ 7685]
Christian Hammond <chipx86@chipx86.com>
parents: 7035
diff changeset
281 GaimConvWindow *gaim_gtkwin_get_at_xy(int x, int y);
4359
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
282
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
283 /**
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
284 * Returns the index of the tab at the specified X, Y location in a notebook.
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
285 *
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
286 * @param win The GTK+ window containing the notebook.
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
287 * @param x The X coordinate.
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
288 * @param y The Y coordinate.
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
289 *
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
290 * @return The index of the tab at the location.
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
291 */
7118
bf630f7dfdcd [gaim-migrate @ 7685]
Christian Hammond <chipx86@chipx86.com>
parents: 7035
diff changeset
292 int gaim_gtkconv_get_tab_at_xy(GaimConvWindow *win, int x, int y);
4359
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
293
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
294 /**
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
295 * Returns the index of the destination tab at the
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
296 * specified X, Y location in a notebook.
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
297 *
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
298 * This is used for drag-and-drop functions when the tab at the index
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
299 * is a destination tab.
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
300 *
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
301 * @param win The GTK+ window containing the notebook.
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
302 * @param x The X coordinate.
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
303 * @param y The Y coordinate.
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
304 *
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
305 * @return The index of the tab at the location.
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
306 */
7118
bf630f7dfdcd [gaim-migrate @ 7685]
Christian Hammond <chipx86@chipx86.com>
parents: 7035
diff changeset
307 int gaim_gtkconv_get_dest_tab_at_xy(GaimConvWindow *win, int x, int y);
4359
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
308
5673
62f57ec16f29 [gaim-migrate @ 6091]
Christian Hammond <chipx86@chipx86.com>
parents: 5167
diff changeset
309 /*@}*/
62f57ec16f29 [gaim-migrate @ 6091]
Christian Hammond <chipx86@chipx86.com>
parents: 5167
diff changeset
310
8582
d7c85220c685 [gaim-migrate @ 9332]
Christian Hammond <chipx86@chipx86.com>
parents: 8317
diff changeset
311 /**************************************************************************/
d7c85220c685 [gaim-migrate @ 9332]
Christian Hammond <chipx86@chipx86.com>
parents: 8317
diff changeset
312 /** @name GTK+ Conversations Subsystem */
d7c85220c685 [gaim-migrate @ 9332]
Christian Hammond <chipx86@chipx86.com>
parents: 8317
diff changeset
313 /**************************************************************************/
d7c85220c685 [gaim-migrate @ 9332]
Christian Hammond <chipx86@chipx86.com>
parents: 8317
diff changeset
314 /*@{*/
d7c85220c685 [gaim-migrate @ 9332]
Christian Hammond <chipx86@chipx86.com>
parents: 8317
diff changeset
315
d7c85220c685 [gaim-migrate @ 9332]
Christian Hammond <chipx86@chipx86.com>
parents: 8317
diff changeset
316 /**
d7c85220c685 [gaim-migrate @ 9332]
Christian Hammond <chipx86@chipx86.com>
parents: 8317
diff changeset
317 * Returns the gtk conversations subsystem handle.
d7c85220c685 [gaim-migrate @ 9332]
Christian Hammond <chipx86@chipx86.com>
parents: 8317
diff changeset
318 *
d7c85220c685 [gaim-migrate @ 9332]
Christian Hammond <chipx86@chipx86.com>
parents: 8317
diff changeset
319 * @return The conversations subsystem handle.
d7c85220c685 [gaim-migrate @ 9332]
Christian Hammond <chipx86@chipx86.com>
parents: 8317
diff changeset
320 */
d7c85220c685 [gaim-migrate @ 9332]
Christian Hammond <chipx86@chipx86.com>
parents: 8317
diff changeset
321 void *gaim_gtk_conversations_get_handle(void);
d7c85220c685 [gaim-migrate @ 9332]
Christian Hammond <chipx86@chipx86.com>
parents: 8317
diff changeset
322
d7c85220c685 [gaim-migrate @ 9332]
Christian Hammond <chipx86@chipx86.com>
parents: 8317
diff changeset
323 /**
d7c85220c685 [gaim-migrate @ 9332]
Christian Hammond <chipx86@chipx86.com>
parents: 8317
diff changeset
324 * Initializes the GTK+ conversations subsystem.
d7c85220c685 [gaim-migrate @ 9332]
Christian Hammond <chipx86@chipx86.com>
parents: 8317
diff changeset
325 */
d7c85220c685 [gaim-migrate @ 9332]
Christian Hammond <chipx86@chipx86.com>
parents: 8317
diff changeset
326 void gaim_gtk_conversations_init(void);
d7c85220c685 [gaim-migrate @ 9332]
Christian Hammond <chipx86@chipx86.com>
parents: 8317
diff changeset
327
d7c85220c685 [gaim-migrate @ 9332]
Christian Hammond <chipx86@chipx86.com>
parents: 8317
diff changeset
328 /**
d7c85220c685 [gaim-migrate @ 9332]
Christian Hammond <chipx86@chipx86.com>
parents: 8317
diff changeset
329 * Uninitialized the GTK+ conversation subsystem.
d7c85220c685 [gaim-migrate @ 9332]
Christian Hammond <chipx86@chipx86.com>
parents: 8317
diff changeset
330 */
d7c85220c685 [gaim-migrate @ 9332]
Christian Hammond <chipx86@chipx86.com>
parents: 8317
diff changeset
331 void gaim_gtk_conversations_uninit(void);
d7c85220c685 [gaim-migrate @ 9332]
Christian Hammond <chipx86@chipx86.com>
parents: 8317
diff changeset
332
d7c85220c685 [gaim-migrate @ 9332]
Christian Hammond <chipx86@chipx86.com>
parents: 8317
diff changeset
333 /*@}*/
d7c85220c685 [gaim-migrate @ 9332]
Christian Hammond <chipx86@chipx86.com>
parents: 8317
diff changeset
334
9713
db62420a53a2 [gaim-migrate @ 10574]
Mark Doliner <mark@kingant.net>
parents: 9709
diff changeset
335 #endif /* _GAIM_GTKCONVERSATION_H_ */