annotate src/gtkconv.h @ 10197:7369bf2bf593

[gaim-migrate @ 11314] More status fixes. Oscar kind of works... you can set yourself away, invisible and available, but you can't choose the message for away, can't choose an available message, and invisible only seems to work the first time. committer: Tailor Script <tailor@pidgin.im>
author Mark Doliner <mark@kingant.net>
date Wed, 17 Nov 2004 01:32:06 +0000
parents 53410b84336f
children 393750603513
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
10008
50c1724d5e59 [gaim-migrate @ 10925]
Mark Doliner <mark@kingant.net>
parents: 9885
diff changeset
28 typedef struct _GaimGtkWindow GaimGtkWindow;
50c1724d5e59 [gaim-migrate @ 10925]
Mark Doliner <mark@kingant.net>
parents: 9885
diff changeset
29 typedef struct _GaimGtkImPane GaimGtkImPane;
50c1724d5e59 [gaim-migrate @ 10925]
Mark Doliner <mark@kingant.net>
parents: 9885
diff changeset
30 typedef struct _GaimGtkChatPane GaimGtkChatPane;
50c1724d5e59 [gaim-migrate @ 10925]
Mark Doliner <mark@kingant.net>
parents: 9885
diff changeset
31 typedef struct _GaimGtkConversation GaimGtkConversation;
9709
4d05b6e9e9cd [gaim-migrate @ 10570]
Mark Doliner <mark@kingant.net>
parents: 9687
diff changeset
32
9498
6f9bedacac3b [gaim-migrate @ 10324]
Luke Schierer <lschiere@pidgin.im>
parents: 9497
diff changeset
33 enum {
6f9bedacac3b [gaim-migrate @ 10324]
Luke Schierer <lschiere@pidgin.im>
parents: 9497
diff changeset
34 CHAT_USERS_ICON_COLUMN,
6f9bedacac3b [gaim-migrate @ 10324]
Luke Schierer <lschiere@pidgin.im>
parents: 9497
diff changeset
35 CHAT_USERS_NAME_COLUMN,
9554
8b2451878e26 [gaim-migrate @ 10387]
Luke Schierer <lschiere@pidgin.im>
parents: 9508
diff changeset
36 CHAT_USERS_FLAGS_COLUMN,
9498
6f9bedacac3b [gaim-migrate @ 10324]
Luke Schierer <lschiere@pidgin.im>
parents: 9497
diff changeset
37 CHAT_USERS_COLUMNS
6f9bedacac3b [gaim-migrate @ 10324]
Luke Schierer <lschiere@pidgin.im>
parents: 9497
diff changeset
38 };
6f9bedacac3b [gaim-migrate @ 10324]
Luke Schierer <lschiere@pidgin.im>
parents: 9497
diff changeset
39
10008
50c1724d5e59 [gaim-migrate @ 10925]
Mark Doliner <mark@kingant.net>
parents: 9885
diff changeset
40 #define GAIM_GTK_WINDOW(win) \
50c1724d5e59 [gaim-migrate @ 10925]
Mark Doliner <mark@kingant.net>
parents: 9885
diff changeset
41 ((GaimGtkWindow *)(win)->ui_data)
50c1724d5e59 [gaim-migrate @ 10925]
Mark Doliner <mark@kingant.net>
parents: 9885
diff changeset
42
50c1724d5e59 [gaim-migrate @ 10925]
Mark Doliner <mark@kingant.net>
parents: 9885
diff changeset
43 #define GAIM_GTK_CONVERSATION(conv) \
50c1724d5e59 [gaim-migrate @ 10925]
Mark Doliner <mark@kingant.net>
parents: 9885
diff changeset
44 ((GaimGtkConversation *)(conv)->ui_data)
50c1724d5e59 [gaim-migrate @ 10925]
Mark Doliner <mark@kingant.net>
parents: 9885
diff changeset
45
50c1724d5e59 [gaim-migrate @ 10925]
Mark Doliner <mark@kingant.net>
parents: 9885
diff changeset
46 #define GAIM_IS_GTK_WINDOW(win) \
50c1724d5e59 [gaim-migrate @ 10925]
Mark Doliner <mark@kingant.net>
parents: 9885
diff changeset
47 (gaim_conv_window_get_ui_ops(win) == gaim_gtk_conversations_get_win_ui_ops())
50c1724d5e59 [gaim-migrate @ 10925]
Mark Doliner <mark@kingant.net>
parents: 9885
diff changeset
48
50c1724d5e59 [gaim-migrate @ 10925]
Mark Doliner <mark@kingant.net>
parents: 9885
diff changeset
49 #define GAIM_IS_GTK_CONVERSATION(conv) \
50c1724d5e59 [gaim-migrate @ 10925]
Mark Doliner <mark@kingant.net>
parents: 9885
diff changeset
50 (gaim_conversation_get_ui_ops(conv) == \
50c1724d5e59 [gaim-migrate @ 10925]
Mark Doliner <mark@kingant.net>
parents: 9885
diff changeset
51 gaim_gtk_conversations_get_conv_ui_ops())
50c1724d5e59 [gaim-migrate @ 10925]
Mark Doliner <mark@kingant.net>
parents: 9885
diff changeset
52
50c1724d5e59 [gaim-migrate @ 10925]
Mark Doliner <mark@kingant.net>
parents: 9885
diff changeset
53 #include "gtkgaim.h"
50c1724d5e59 [gaim-migrate @ 10925]
Mark Doliner <mark@kingant.net>
parents: 9885
diff changeset
54 #include "conversation.h"
50c1724d5e59 [gaim-migrate @ 10925]
Mark Doliner <mark@kingant.net>
parents: 9885
diff changeset
55
4359
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
56 /**************************************************************************
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
57 * @name Structures
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
58 **************************************************************************/
5676
dae79aefac8d [gaim-migrate @ 6094]
Christian Hammond <chipx86@chipx86.com>
parents: 5674
diff changeset
59 /*@{*/
4359
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
60
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
61 /**
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
62 * A GTK+ representation of a graphical window containing one or more
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
63 * conversations.
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
64 */
5676
dae79aefac8d [gaim-migrate @ 6094]
Christian Hammond <chipx86@chipx86.com>
parents: 5674
diff changeset
65 struct _GaimGtkWindow
4359
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
66 {
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
67 GtkWidget *window; /**< The window. */
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
68 GtkWidget *notebook; /**< The notebook of conversations. */
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
69
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
70 struct
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
71 {
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
72 GtkWidget *menubar;
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
73
5167
d9073c83a8a0 [gaim-migrate @ 5531]
Mark Doliner <mark@kingant.net>
parents: 5106
diff changeset
74 GtkWidget *view_log;
5908
ed8a9a3bf7e2 [gaim-migrate @ 6340]
Christian Hammond <chipx86@chipx86.com>
parents: 5872
diff changeset
75
9468
4d0b0d5485e6 [gaim-migrate @ 10293]
Luke Schierer <lschiere@pidgin.im>
parents: 9339
diff changeset
76 GtkWidget *send_file;
5908
ed8a9a3bf7e2 [gaim-migrate @ 6340]
Christian Hammond <chipx86@chipx86.com>
parents: 5872
diff changeset
77 GtkWidget *add_pounce;
7887
4b43a3f9de73 [gaim-migrate @ 8545]
Mark Doliner <mark@kingant.net>
parents: 7859
diff changeset
78 GtkWidget *get_info;
4b43a3f9de73 [gaim-migrate @ 8545]
Mark Doliner <mark@kingant.net>
parents: 7859
diff changeset
79 GtkWidget *warn;
4b43a3f9de73 [gaim-migrate @ 8545]
Mark Doliner <mark@kingant.net>
parents: 7859
diff changeset
80 GtkWidget *invite;
4b43a3f9de73 [gaim-migrate @ 8545]
Mark Doliner <mark@kingant.net>
parents: 7859
diff changeset
81
5908
ed8a9a3bf7e2 [gaim-migrate @ 6340]
Christian Hammond <chipx86@chipx86.com>
parents: 5872
diff changeset
82 GtkWidget *alias;
7887
4b43a3f9de73 [gaim-migrate @ 8545]
Mark Doliner <mark@kingant.net>
parents: 7859
diff changeset
83 GtkWidget *block;
4b43a3f9de73 [gaim-migrate @ 8545]
Mark Doliner <mark@kingant.net>
parents: 7859
diff changeset
84 GtkWidget *add;
4b43a3f9de73 [gaim-migrate @ 8545]
Mark Doliner <mark@kingant.net>
parents: 7859
diff changeset
85 GtkWidget *remove;
5908
ed8a9a3bf7e2 [gaim-migrate @ 6340]
Christian Hammond <chipx86@chipx86.com>
parents: 5872
diff changeset
86
7859
e873d0bd0e6c [gaim-migrate @ 8513]
Mark Doliner <mark@kingant.net>
parents: 7820
diff changeset
87 GtkWidget *insert_link;
e873d0bd0e6c [gaim-migrate @ 8513]
Mark Doliner <mark@kingant.net>
parents: 7820
diff changeset
88 GtkWidget *insert_image;
e873d0bd0e6c [gaim-migrate @ 8513]
Mark Doliner <mark@kingant.net>
parents: 7820
diff changeset
89
4359
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
90 GtkWidget *logging;
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
91 GtkWidget *sounds;
7326
00a9ab26d607 [gaim-migrate @ 7912]
Christian Hammond <chipx86@chipx86.com>
parents: 7295
diff changeset
92 GtkWidget *show_formatting_toolbar;
9188
b6e3dcb23de0 [gaim-migrate @ 9983]
Luke Schierer <lschiere@pidgin.im>
parents: 9025
diff changeset
93 GtkWidget *show_timestamps;
5908
ed8a9a3bf7e2 [gaim-migrate @ 6340]
Christian Hammond <chipx86@chipx86.com>
parents: 5872
diff changeset
94
4359
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
95 GtkWidget *send_as;
5908
ed8a9a3bf7e2 [gaim-migrate @ 6340]
Christian Hammond <chipx86@chipx86.com>
parents: 5872
diff changeset
96
4736
0c85078fd371 [gaim-migrate @ 5051]
Nathan Walp <nwalp@pidgin.im>
parents: 4685
diff changeset
97 GtkWidget *typing_icon;
4359
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
98
4630
5cdfd20daa07 [gaim-migrate @ 4921]
Sean Egan <seanegan@gmail.com>
parents: 4465
diff changeset
99 GtkItemFactory *item_factory;
5cdfd20daa07 [gaim-migrate @ 4921]
Sean Egan <seanegan@gmail.com>
parents: 4465
diff changeset
100
4359
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
101 } menu;
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
102
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
103 /* Tab dragging stuff. */
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
104 gboolean in_drag;
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
105 gboolean in_predrag;
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
106
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
107 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
108
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
109 gint drag_motion_signal;
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
110 gint drag_leave_signal;
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
111 };
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
112
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
113 /**
7820
8e60ddc28a22 [gaim-migrate @ 8472]
Mark Doliner <mark@kingant.net>
parents: 7650
diff changeset
114 * A GTK+ Instant Message pane.
4359
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
115 */
5676
dae79aefac8d [gaim-migrate @ 6094]
Christian Hammond <chipx86@chipx86.com>
parents: 5674
diff changeset
116 struct _GaimGtkImPane
4359
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
117 {
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
118 GtkWidget *block;
9468
4d0b0d5485e6 [gaim-migrate @ 10293]
Luke Schierer <lschiere@pidgin.im>
parents: 9339
diff changeset
119 GtkWidget *send_file;
4359
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
120 GtkWidget *sep1;
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
121 GtkWidget *sep2;
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
122 GtkWidget *check;
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
123 GtkWidget *progress;
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 gboolean a_virgin;
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 /* Buddy icon stuff */
9885
4d3a61dcb942 [gaim-migrate @ 10767]
Nathan Walp <nwalp@pidgin.im>
parents: 9791
diff changeset
128 GtkWidget *icon_container;
4359
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
129 GtkWidget *icon;
9687
1769cb1261be [gaim-migrate @ 10539]
Sean Egan <seanegan@gmail.com>
parents: 9554
diff changeset
130 gboolean show_icon;
8189
b75fa309b2c6 [gaim-migrate @ 8910]
Mark Doliner <mark@kingant.net>
parents: 8046
diff changeset
131 gboolean animate;
4359
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
132 GdkPixbufAnimation *anim;
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
133 GdkPixbufAnimationIter *iter;
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
134 guint32 icon_timer;
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
135 };
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 * GTK+ Chat panes.
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
139 */
5676
dae79aefac8d [gaim-migrate @ 6094]
Christian Hammond <chipx86@chipx86.com>
parents: 5674
diff changeset
140 struct _GaimGtkChatPane
4359
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
141 {
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
142 GtkWidget *count;
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
143 GtkWidget *list;
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
144 GtkWidget *invite;
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
145 GtkWidget *topic_text;
7996
334ab1319406 [gaim-migrate @ 8673]
Christian Hammond <chipx86@chipx86.com>
parents: 7930
diff changeset
146 GtkWidget *sep;
4359
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
147 };
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 /**
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
150 * A GTK+ conversation pane.
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
151 */
5676
dae79aefac8d [gaim-migrate @ 6094]
Christian Hammond <chipx86@chipx86.com>
parents: 5674
diff changeset
152 struct _GaimGtkConversation
4359
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
153 {
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
154 gboolean make_sound;
7326
00a9ab26d607 [gaim-migrate @ 7912]
Christian Hammond <chipx86@chipx86.com>
parents: 7295
diff changeset
155 gboolean show_formatting_toolbar;
9188
b6e3dcb23de0 [gaim-migrate @ 9983]
Luke Schierer <lschiere@pidgin.im>
parents: 9025
diff changeset
156 gboolean show_timestamps;
4359
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
157
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
158 GtkTooltips *tooltips;
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
159
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
160 GtkWidget *tab_cont;
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
161 GtkWidget *tabby;
6771
8eebba08b44b [gaim-migrate @ 7308]
Christian Hammond <chipx86@chipx86.com>
parents: 6392
diff changeset
162 GtkWidget *menu_tabby;
4359
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
163
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
164 GtkWidget *imhtml;
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
165 GtkTextBuffer *entry_buffer;
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
166 GtkWidget *entry;
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
167
7930
68f70cf074d0 [gaim-migrate @ 8601]
Mark Doliner <mark@kingant.net>
parents: 7887
diff changeset
168 GtkWidget *add;
68f70cf074d0 [gaim-migrate @ 8601]
Mark Doliner <mark@kingant.net>
parents: 7887
diff changeset
169 GtkWidget *remove;
4359
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
170 GtkWidget *info;
7930
68f70cf074d0 [gaim-migrate @ 8601]
Mark Doliner <mark@kingant.net>
parents: 7887
diff changeset
171 GtkWidget *send;
68f70cf074d0 [gaim-migrate @ 8601]
Mark Doliner <mark@kingant.net>
parents: 7887
diff changeset
172 GtkWidget *close; /* "x" on the tab */
6392
e9974608b319 [gaim-migrate @ 6897]
Christian Hammond <chipx86@chipx86.com>
parents: 5908
diff changeset
173 GtkWidget *icon;
4359
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
174 GtkWidget *tab_label;
6771
8eebba08b44b [gaim-migrate @ 7308]
Christian Hammond <chipx86@chipx86.com>
parents: 6392
diff changeset
175 GtkWidget *menu_icon;
8eebba08b44b [gaim-migrate @ 7308]
Christian Hammond <chipx86@chipx86.com>
parents: 6392
diff changeset
176 GtkWidget *menu_label;
4359
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
177 GtkSizeGroup *sg;
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 GtkWidget *bbox;
9332
222eb83af4d3 [gaim-migrate @ 10140]
Nathan Walp <nwalp@pidgin.im>
parents: 9188
diff changeset
180 GtkWidget *lower_hbox;
4359
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
181
8317
6f549c1d0829 [gaim-migrate @ 9041]
Sean Egan <seanegan@gmail.com>
parents: 8290
diff changeset
182 GtkWidget *toolbar;
4359
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
183
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
184 struct
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
185 {
5106
7b218dde1d73 [gaim-migrate @ 5469]
Mark Doliner <mark@kingant.net>
parents: 5049
diff changeset
186 GtkWidget *image;
7295
c7f0a4397d9e [gaim-migrate @ 7879]
Sean Egan <seanegan@gmail.com>
parents: 7118
diff changeset
187 GtkWidget *search;
4359
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 } dialogs;
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
190
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
191 union
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
192 {
5676
dae79aefac8d [gaim-migrate @ 6094]
Christian Hammond <chipx86@chipx86.com>
parents: 5674
diff changeset
193 GaimGtkImPane *im;
dae79aefac8d [gaim-migrate @ 6094]
Christian Hammond <chipx86@chipx86.com>
parents: 5674
diff changeset
194 GaimGtkChatPane *chat;
4359
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
195
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
196 } u;
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
197 };
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
198
5676
dae79aefac8d [gaim-migrate @ 6094]
Christian Hammond <chipx86@chipx86.com>
parents: 5674
diff changeset
199 /*@}*/
dae79aefac8d [gaim-migrate @ 6094]
Christian Hammond <chipx86@chipx86.com>
parents: 5674
diff changeset
200
4359
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
201 /**************************************************************************
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
202 * @name GTK+ Conversation API
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
203 **************************************************************************/
5673
62f57ec16f29 [gaim-migrate @ 6091]
Christian Hammond <chipx86@chipx86.com>
parents: 5167
diff changeset
204 /*@{*/
62f57ec16f29 [gaim-migrate @ 6091]
Christian Hammond <chipx86@chipx86.com>
parents: 5167
diff changeset
205
62f57ec16f29 [gaim-migrate @ 6091]
Christian Hammond <chipx86@chipx86.com>
parents: 5167
diff changeset
206 /**
4359
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
207 * Returns the UI operations structure for GTK windows.
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
208 *
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
209 * @return The GTK window operations structure.
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
210 */
7118
bf630f7dfdcd [gaim-migrate @ 7685]
Christian Hammond <chipx86@chipx86.com>
parents: 7035
diff changeset
211 GaimConvWindowUiOps *gaim_gtk_conversations_get_win_ui_ops(void);
4359
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
212
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
213 /**
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
214 * Returns the UI operations structure for GTK conversations.
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 * @return The GTK conversation operations structure.
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
217 */
7035
feb3d21a7794 [gaim-migrate @ 7598]
Christian Hammond <chipx86@chipx86.com>
parents: 6771
diff changeset
218 GaimConversationUiOps *gaim_gtk_conversations_get_conv_ui_ops(void);
4359
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
219
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
220 /**
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
221 * Updates the buddy icon on a conversation.
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 * @param conv The conversation.
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
224 */
5676
dae79aefac8d [gaim-migrate @ 6094]
Christian Hammond <chipx86@chipx86.com>
parents: 5674
diff changeset
225 void gaim_gtkconv_update_buddy_icon(GaimConversation *conv);
4359
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
226
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
227 /**
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
228 * Updates the tab positions on all conversation windows to reflect any
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
229 * changed preferences.
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 void gaim_gtkconv_update_tabs(void);
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
232
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 * Updates the button style on chat windows to reflect any
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
235 * changed preferences.
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 void gaim_gtkconv_update_chat_button_style();
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
238
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 * Updates the button style on IM windows to reflect any
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
241 * changed preferences.
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 void gaim_gtkconv_update_im_button_style();
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
244
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 * Updates conversation buttons by protocol.
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 * @param conv The conversation.
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
249 */
5676
dae79aefac8d [gaim-migrate @ 6094]
Christian Hammond <chipx86@chipx86.com>
parents: 5674
diff changeset
250 void gaim_gtkconv_update_buttons_by_protocol(GaimConversation *conv);
4359
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
251
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
252 /**
9759
b64ee81c7bcb [gaim-migrate @ 10626]
Mark Doliner <mark@kingant.net>
parents: 9718
diff changeset
253 * Creates a conversation button
b64ee81c7bcb [gaim-migrate @ 10626]
Mark Doliner <mark@kingant.net>
parents: 9718
diff changeset
254 *
b64ee81c7bcb [gaim-migrate @ 10626]
Mark Doliner <mark@kingant.net>
parents: 9718
diff changeset
255 * @param icon The stock icon name.
b64ee81c7bcb [gaim-migrate @ 10626]
Mark Doliner <mark@kingant.net>
parents: 9718
diff changeset
256 * @param text The text for the button.
b64ee81c7bcb [gaim-migrate @ 10626]
Mark Doliner <mark@kingant.net>
parents: 9718
diff changeset
257 * @param tooltip The tooltip text.
b64ee81c7bcb [gaim-migrate @ 10626]
Mark Doliner <mark@kingant.net>
parents: 9718
diff changeset
258 * @param tooltips The group of tooltips.
b64ee81c7bcb [gaim-migrate @ 10626]
Mark Doliner <mark@kingant.net>
parents: 9718
diff changeset
259 * @param callback A function to call when the button is clicked.
b64ee81c7bcb [gaim-migrate @ 10626]
Mark Doliner <mark@kingant.net>
parents: 9718
diff changeset
260 * @param data Data to pass to the callback.
b64ee81c7bcb [gaim-migrate @ 10626]
Mark Doliner <mark@kingant.net>
parents: 9718
diff changeset
261 *
b64ee81c7bcb [gaim-migrate @ 10626]
Mark Doliner <mark@kingant.net>
parents: 9718
diff changeset
262 * @return The button
b64ee81c7bcb [gaim-migrate @ 10626]
Mark Doliner <mark@kingant.net>
parents: 9718
diff changeset
263 */
b64ee81c7bcb [gaim-migrate @ 10626]
Mark Doliner <mark@kingant.net>
parents: 9718
diff changeset
264 GtkWidget *gaim_gtkconv_button_new(const char *icon, const char *text,
b64ee81c7bcb [gaim-migrate @ 10626]
Mark Doliner <mark@kingant.net>
parents: 9718
diff changeset
265 const char *tooltip, GtkTooltips *tooltips,
b64ee81c7bcb [gaim-migrate @ 10626]
Mark Doliner <mark@kingant.net>
parents: 9718
diff changeset
266 void *callback, void *data);
b64ee81c7bcb [gaim-migrate @ 10626]
Mark Doliner <mark@kingant.net>
parents: 9718
diff changeset
267
b64ee81c7bcb [gaim-migrate @ 10626]
Mark Doliner <mark@kingant.net>
parents: 9718
diff changeset
268 /**
4359
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
269 * Returns the window at the specified X, Y location.
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
270 *
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
271 * If the window is not a GTK+ window, @c NULL is returned.
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
272 *
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
273 * @param x The X coordinate.
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
274 * @param y The Y coordinate.
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 * @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
277 */
7118
bf630f7dfdcd [gaim-migrate @ 7685]
Christian Hammond <chipx86@chipx86.com>
parents: 7035
diff changeset
278 GaimConvWindow *gaim_gtkwin_get_at_xy(int x, int y);
4359
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
279
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
280 /**
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
281 * 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
282 *
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
283 * @param win The GTK+ window containing the notebook.
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
284 * @param x The X coordinate.
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
285 * @param y The Y coordinate.
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
286 *
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
287 * @return The index of the tab at the location.
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
288 */
7118
bf630f7dfdcd [gaim-migrate @ 7685]
Christian Hammond <chipx86@chipx86.com>
parents: 7035
diff changeset
289 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
290
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
291 /**
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
292 * Returns the index of the destination tab at the
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
293 * specified X, Y location in a notebook.
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 * 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
296 * is a destination tab.
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 * @param win The GTK+ window containing the notebook.
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
299 * @param x The X coordinate.
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
300 * @param y The Y coordinate.
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
301 *
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
302 * @return The index of the tab at the location.
5fb47ec9bfe4 [gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
diff changeset
303 */
7118
bf630f7dfdcd [gaim-migrate @ 7685]
Christian Hammond <chipx86@chipx86.com>
parents: 7035
diff changeset
304 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
305
5673
62f57ec16f29 [gaim-migrate @ 6091]
Christian Hammond <chipx86@chipx86.com>
parents: 5167
diff changeset
306 /*@}*/
62f57ec16f29 [gaim-migrate @ 6091]
Christian Hammond <chipx86@chipx86.com>
parents: 5167
diff changeset
307
8582
d7c85220c685 [gaim-migrate @ 9332]
Christian Hammond <chipx86@chipx86.com>
parents: 8317
diff changeset
308 /**************************************************************************/
d7c85220c685 [gaim-migrate @ 9332]
Christian Hammond <chipx86@chipx86.com>
parents: 8317
diff changeset
309 /** @name GTK+ Conversations Subsystem */
d7c85220c685 [gaim-migrate @ 9332]
Christian Hammond <chipx86@chipx86.com>
parents: 8317
diff changeset
310 /**************************************************************************/
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
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 * Returns the gtk conversations subsystem handle.
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 * @return The conversations subsystem handle.
d7c85220c685 [gaim-migrate @ 9332]
Christian Hammond <chipx86@chipx86.com>
parents: 8317
diff changeset
317 */
d7c85220c685 [gaim-migrate @ 9332]
Christian Hammond <chipx86@chipx86.com>
parents: 8317
diff changeset
318 void *gaim_gtk_conversations_get_handle(void);
d7c85220c685 [gaim-migrate @ 9332]
Christian Hammond <chipx86@chipx86.com>
parents: 8317
diff changeset
319
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 * Initializes the GTK+ conversations subsystem.
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 void gaim_gtk_conversations_init(void);
d7c85220c685 [gaim-migrate @ 9332]
Christian Hammond <chipx86@chipx86.com>
parents: 8317
diff changeset
324
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 * Uninitialized the GTK+ conversation subsystem.
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 void gaim_gtk_conversations_uninit(void);
d7c85220c685 [gaim-migrate @ 9332]
Christian Hammond <chipx86@chipx86.com>
parents: 8317
diff changeset
329
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
9713
db62420a53a2 [gaim-migrate @ 10574]
Mark Doliner <mark@kingant.net>
parents: 9709
diff changeset
332 #endif /* _GAIM_GTKCONVERSATION_H_ */