Sun, 11 Aug 2002 06:42:17 +0000
[gaim-migrate @ 3410]
Pluginzed the ticker. the ticker will load itself if the old ticker option
was set.
| 66 | 1 | /* |
| 2 | * gaim | |
| 3 | * | |
| 4 | * Copyright (C) 1998-1999, Mark Spencer <markster@marko.net> | |
| 5 | * | |
| 6 | * This program is free software; you can redistribute it and/or modify | |
| 7 | * it under the terms of the GNU General Public License as published by | |
| 8 | * the Free Software Foundation; either version 2 of the License, or | |
| 9 | * (at your option) any later version. | |
| 10 | * | |
| 11 | * This program is distributed in the hope that it will be useful, | |
| 12 | * but WITHOUT ANY WARRANTY; without even the implied warranty of | |
| 13 | * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the | |
| 14 | * GNU General Public License for more details. | |
| 15 | * | |
| 16 | * You should have received a copy of the GNU General Public License | |
| 17 | * along with this program; if not, write to the Free Software | |
| 18 | * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA | |
| 19 | * | |
| 20 | */ | |
| 21 | ||
|
349
6f7d28b0f98d
[gaim-migrate @ 359]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
344
diff
changeset
|
22 | #ifdef HAVE_CONFIG_H |
|
2090
bab8b7e309db
[gaim-migrate @ 2100]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2048
diff
changeset
|
23 | #include <config.h> |
|
349
6f7d28b0f98d
[gaim-migrate @ 359]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
344
diff
changeset
|
24 | #endif |
| 66 | 25 | #include <string.h> |
| 26 | #include <sys/time.h> | |
| 27 | #include <sys/types.h> | |
| 28 | #include <sys/stat.h> | |
| 29 | #include <unistd.h> | |
| 30 | #include <stdio.h> | |
| 31 | #include <stdlib.h> | |
|
2123
4cfdde0aa3f1
[gaim-migrate @ 2133]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2111
diff
changeset
|
32 | #include <errno.h> |
|
210
4226cbf12850
[gaim-migrate @ 220]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
209
diff
changeset
|
33 | #include <ctype.h> |
| 3159 | 34 | #include <gdk/gdkx.h> |
| 35 | #include <X11/Xlib.h> | |
| 66 | 36 | #include <gtk/gtk.h> |
|
1428
c14bab2b74bb
[gaim-migrate @ 1438]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1414
diff
changeset
|
37 | #include "gtkimhtml.h" |
| 66 | 38 | #include <gdk/gdkkeysyms.h> |
|
472
9a5b8da2d760
[gaim-migrate @ 482]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
411
diff
changeset
|
39 | #include "convo.h" |
|
1117
fcb6e7efcc0d
[gaim-migrate @ 1127]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1103
diff
changeset
|
40 | #include "gtkspell.h" |
|
1235
c8d6eef4edce
[gaim-migrate @ 1245]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1228
diff
changeset
|
41 | #include "prpl.h" |
| 337 | 42 | |
|
604
a20b54408619
[gaim-migrate @ 614]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
602
diff
changeset
|
43 | #include "pixmaps/bold.xpm" |
|
a20b54408619
[gaim-migrate @ 614]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
602
diff
changeset
|
44 | #include "pixmaps/italic.xpm" |
|
1479
e7ec4ce61f5b
[gaim-migrate @ 1489]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1464
diff
changeset
|
45 | #include "pixmaps/underline.xpm" |
|
e7ec4ce61f5b
[gaim-migrate @ 1489]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1464
diff
changeset
|
46 | #include "pixmaps/strike.xpm" |
|
604
a20b54408619
[gaim-migrate @ 614]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
602
diff
changeset
|
47 | #include "pixmaps/small.xpm" |
|
a20b54408619
[gaim-migrate @ 614]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
602
diff
changeset
|
48 | #include "pixmaps/normal.xpm" |
|
a20b54408619
[gaim-migrate @ 614]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
602
diff
changeset
|
49 | #include "pixmaps/big.xpm" |
|
a20b54408619
[gaim-migrate @ 614]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
602
diff
changeset
|
50 | #include "pixmaps/fontface.xpm" |
|
1479
e7ec4ce61f5b
[gaim-migrate @ 1489]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1464
diff
changeset
|
51 | #include "pixmaps/fgcolor.xpm" |
|
e7ec4ce61f5b
[gaim-migrate @ 1489]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1464
diff
changeset
|
52 | #include "pixmaps/bgcolor.xpm" |
|
e7ec4ce61f5b
[gaim-migrate @ 1489]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1464
diff
changeset
|
53 | #include "pixmaps/link.xpm" |
| 790 | 54 | #include "pixmaps/smile_icon.xpm" |
|
604
a20b54408619
[gaim-migrate @ 614]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
602
diff
changeset
|
55 | #include "pixmaps/wood.xpm" |
|
1479
e7ec4ce61f5b
[gaim-migrate @ 1489]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1464
diff
changeset
|
56 | #include "pixmaps/save_small.xpm" |
|
e7ec4ce61f5b
[gaim-migrate @ 1489]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1464
diff
changeset
|
57 | #include "pixmaps/speaker.xpm" |
| 3300 | 58 | #include "pixmaps/speaker_mute.xpm" |
| 3044 | 59 | #include "pixmaps/image_icon.xpm" |
|
604
a20b54408619
[gaim-migrate @ 614]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
602
diff
changeset
|
60 | |
|
a20b54408619
[gaim-migrate @ 614]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
602
diff
changeset
|
61 | #include "pixmaps/luke03.xpm" |
|
610
145d56cb5b16
[gaim-migrate @ 620]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
608
diff
changeset
|
62 | #include "pixmaps/oneeye.xpm" |
|
1732
01d979efd0ed
[gaim-migrate @ 1742]
Dennis Ristuccia <dristuccia@gmail.com>
parents:
1709
diff
changeset
|
63 | #include "pixmaps/crazy4.xpm" |
| 1965 | 64 | #include "pixmaps/mrt.xpm" |
| 2426 | 65 | #include "pixmaps/download.xpm" |
|
2874
10f0e44a8c1e
[gaim-migrate @ 2887]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2857
diff
changeset
|
66 | #include "pixmaps/farted.xpm" |
|
604
a20b54408619
[gaim-migrate @ 614]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
602
diff
changeset
|
67 | |
|
2460
d573307665ac
[gaim-migrate @ 2473]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2449
diff
changeset
|
68 | static gchar *ispell_cmd[] = { "ispell", "-a", NULL }; |
| 3209 | 69 | static gchar *aspell_cmd[] = { "aspell", "--sug-mode=fast","-a", NULL }; |
|
2460
d573307665ac
[gaim-migrate @ 2473]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2449
diff
changeset
|
70 | |
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
71 | int state_lock = 0; |
| 66 | 72 | |
| 73 | GdkPixmap *dark_icon_pm = NULL; | |
| 74 | GdkBitmap *dark_icon_bm = NULL; | |
| 75 | ||
|
1608
feb3ef1d062b
[gaim-migrate @ 1618]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1597
diff
changeset
|
76 | GtkWidget *all_convos = NULL; |
|
2843
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
77 | GtkWidget *convo_notebook = NULL; |
|
1573
878f7c59ee85
[gaim-migrate @ 1583]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1532
diff
changeset
|
78 | |
|
2763
18a8e555039b
[gaim-migrate @ 2776]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2761
diff
changeset
|
79 | char fontface[128] = { 0 }; |
|
18a8e555039b
[gaim-migrate @ 2776]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2761
diff
changeset
|
80 | char fontxfld[256] = { 0 }; |
|
1441
71e46d36113b
[gaim-migrate @ 1451]
Decklin Foster <decklin@red-bean.com>
parents:
1440
diff
changeset
|
81 | int fontsize = 3; |
| 885 | 82 | extern GdkColor bgcolor; |
| 83 | extern GdkColor fgcolor; | |
| 66 | 84 | |
| 85 | void check_everything(GtkWidget *entry); | |
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
86 | gboolean keypress_callback(GtkWidget *entry, GdkEventKey * event, struct conversation *c); |
| 66 | 87 | |
|
2191
a40e37f5bf27
[gaim-migrate @ 2201]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2167
diff
changeset
|
88 | static void update_icon(struct conversation *); |
|
a40e37f5bf27
[gaim-migrate @ 2201]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2167
diff
changeset
|
89 | static void remove_icon(struct conversation *); |
|
a40e37f5bf27
[gaim-migrate @ 2201]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2167
diff
changeset
|
90 | |
|
2231
9d8593ab093e
[gaim-migrate @ 2241]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2227
diff
changeset
|
91 | static void update_checkbox(struct conversation *); |
|
9d8593ab093e
[gaim-migrate @ 2241]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2227
diff
changeset
|
92 | static void remove_checkbox(struct conversation *); |
|
9d8593ab093e
[gaim-migrate @ 2241]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2227
diff
changeset
|
93 | |
| 3035 | 94 | static void update_smilies(struct conversation *c); |
| 95 | ||
| 96 | ||
| 66 | 97 | /*------------------------------------------------------------------------*/ |
| 98 | /* Helpers */ | |
| 99 | /*------------------------------------------------------------------------*/ | |
| 100 | ||
| 101 | ||
| 3081 | 102 | void gaim_setup_imhtml_smileys(GtkWidget *imhtml) |
|
1780
431333222954
[gaim-migrate @ 1790]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1772
diff
changeset
|
103 | { |
|
431333222954
[gaim-migrate @ 1790]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1772
diff
changeset
|
104 | gtk_imhtml_associate_smiley(GTK_IMHTML(imhtml), "C:)", luke03_xpm); |
|
431333222954
[gaim-migrate @ 1790]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1772
diff
changeset
|
105 | gtk_imhtml_associate_smiley(GTK_IMHTML(imhtml), "C:-)", luke03_xpm); |
|
431333222954
[gaim-migrate @ 1790]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1772
diff
changeset
|
106 | gtk_imhtml_associate_smiley(GTK_IMHTML(imhtml), "O-)", oneeye_xpm); |
|
431333222954
[gaim-migrate @ 1790]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1772
diff
changeset
|
107 | gtk_imhtml_associate_smiley(GTK_IMHTML(imhtml), ">:)", crazy4_xpm); |
|
431333222954
[gaim-migrate @ 1790]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1772
diff
changeset
|
108 | gtk_imhtml_associate_smiley(GTK_IMHTML(imhtml), ">:-)", crazy4_xpm); |
| 1965 | 109 | gtk_imhtml_associate_smiley(GTK_IMHTML(imhtml), ":-o)))", mrt_xpm); |
| 110 | gtk_imhtml_associate_smiley(GTK_IMHTML(imhtml), ":-O)))", mrt_xpm); | |
| 2426 | 111 | gtk_imhtml_associate_smiley(GTK_IMHTML(imhtml), "8-|)", download_xpm); |
|
2877
7f589a1caa2b
[gaim-migrate @ 2890]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2874
diff
changeset
|
112 | gtk_imhtml_associate_smiley(GTK_IMHTML(imhtml), ":-]", farted_xpm); |
|
1780
431333222954
[gaim-migrate @ 1790]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1772
diff
changeset
|
113 | } |
|
431333222954
[gaim-migrate @ 1790]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1772
diff
changeset
|
114 | |
| 3081 | 115 | void gaim_setup_imhtml(GtkWidget *imhtml) |
| 116 | { | |
| 117 | g_return_if_fail(imhtml != NULL); | |
| 118 | g_return_if_fail(GTK_IS_IMHTML(imhtml)); | |
| 119 | if (!(convo_options & OPT_CONVO_SHOW_SMILEY)) | |
| 120 | gtk_imhtml_show_smileys(GTK_IMHTML(imhtml), FALSE); | |
| 121 | ||
| 122 | gtk_signal_connect(GTK_OBJECT(imhtml), "url_clicked", GTK_SIGNAL_FUNC(open_url), NULL); | |
| 123 | gaim_setup_imhtml_smileys(imhtml); | |
| 124 | } | |
| 125 | ||
| 66 | 126 | void quiet_set(GtkWidget *tb, int state) |
| 127 | { | |
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
128 | state_lock = 1; |
| 66 | 129 | gtk_toggle_button_set_state(GTK_TOGGLE_BUTTON(tb), state); |
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
130 | state_lock = 0; |
| 66 | 131 | } |
| 132 | ||
| 133 | ||
| 134 | void set_state_lock(int i) | |
| 135 | { | |
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
136 | state_lock = i; |
| 66 | 137 | } |
| 138 | ||
|
234
100138758e8d
[gaim-migrate @ 244]
Todd Kulesza <fflewddur@users.sourceforge.net>
parents:
230
diff
changeset
|
139 | void toggle_sensitive(GtkWidget *widget, GtkWidget *to_toggle) |
|
100138758e8d
[gaim-migrate @ 244]
Todd Kulesza <fflewddur@users.sourceforge.net>
parents:
230
diff
changeset
|
140 | { |
|
100138758e8d
[gaim-migrate @ 244]
Todd Kulesza <fflewddur@users.sourceforge.net>
parents:
230
diff
changeset
|
141 | gboolean sensitivity = GTK_WIDGET_IS_SENSITIVE(GTK_WIDGET(to_toggle)); |
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
142 | |
|
234
100138758e8d
[gaim-migrate @ 244]
Todd Kulesza <fflewddur@users.sourceforge.net>
parents:
230
diff
changeset
|
143 | if (sensitivity == TRUE) |
|
100138758e8d
[gaim-migrate @ 244]
Todd Kulesza <fflewddur@users.sourceforge.net>
parents:
230
diff
changeset
|
144 | gtk_widget_set_sensitive(GTK_WIDGET(to_toggle), FALSE); |
|
100138758e8d
[gaim-migrate @ 244]
Todd Kulesza <fflewddur@users.sourceforge.net>
parents:
230
diff
changeset
|
145 | else |
|
100138758e8d
[gaim-migrate @ 244]
Todd Kulesza <fflewddur@users.sourceforge.net>
parents:
230
diff
changeset
|
146 | gtk_widget_set_sensitive(GTK_WIDGET(to_toggle), TRUE); |
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
147 | |
|
234
100138758e8d
[gaim-migrate @ 244]
Todd Kulesza <fflewddur@users.sourceforge.net>
parents:
230
diff
changeset
|
148 | return; |
|
100138758e8d
[gaim-migrate @ 244]
Todd Kulesza <fflewddur@users.sourceforge.net>
parents:
230
diff
changeset
|
149 | } |
|
100138758e8d
[gaim-migrate @ 244]
Todd Kulesza <fflewddur@users.sourceforge.net>
parents:
230
diff
changeset
|
150 | |
| 2937 | 151 | void set_convo_name(struct conversation *c, const char *nname) |
| 152 | { | |
| 153 | ||
| 154 | g_snprintf(c->name, sizeof(c->name), "%s", nname); | |
| 155 | ||
| 156 | return; | |
| 157 | } | |
| 158 | ||
| 66 | 159 | struct conversation *new_conversation(char *name) |
| 160 | { | |
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
161 | struct conversation *c; |
|
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
162 | |
|
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
163 | c = find_conversation(name); |
| 66 | 164 | |
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
165 | if (c != NULL) |
|
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
166 | return c; |
| 66 | 167 | |
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
168 | c = (struct conversation *)g_new0(struct conversation, 1); |
|
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
169 | g_snprintf(c->name, sizeof(c->name), "%s", name); |
| 66 | 170 | |
|
1525
b4ece1a718cd
[gaim-migrate @ 1535]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1486
diff
changeset
|
171 | if ((logging_options & OPT_LOG_ALL) || find_log_info(c->name)) { |
| 66 | 172 | FILE *fd; |
| 70 | 173 | |
|
373
09d69323a5b6
[gaim-migrate @ 383]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
363
diff
changeset
|
174 | fd = open_log_file(c->name); |
|
2004
624214019544
[gaim-migrate @ 2014]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1970
diff
changeset
|
175 | if (fd) { |
|
1525
b4ece1a718cd
[gaim-migrate @ 1535]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1486
diff
changeset
|
176 | if (!(logging_options & OPT_LOG_STRIP_HTML)) |
|
1437
b51cd857866c
[gaim-migrate @ 1447]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1434
diff
changeset
|
177 | fprintf(fd, |
|
b51cd857866c
[gaim-migrate @ 1447]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1434
diff
changeset
|
178 | "<HR><BR><H3 Align=Center> ---- New Conversation @ %s ----</H3><BR>\n", |
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
179 | full_date()); |
|
1437
b51cd857866c
[gaim-migrate @ 1447]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1434
diff
changeset
|
180 | else |
|
b51cd857866c
[gaim-migrate @ 1447]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1434
diff
changeset
|
181 | fprintf(fd, " ---- New Conversation @ %s ----\n", full_date()); |
|
1034
960cd579da99
[gaim-migrate @ 1044]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1032
diff
changeset
|
182 | fclose(fd); |
|
960cd579da99
[gaim-migrate @ 1044]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1032
diff
changeset
|
183 | } else |
|
960cd579da99
[gaim-migrate @ 1044]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1032
diff
changeset
|
184 | /* do we want to do something here? */ ; |
| 66 | 185 | } |
| 186 | ||
|
960
c4012584334f
[gaim-migrate @ 970]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
936
diff
changeset
|
187 | if (connections) |
|
c4012584334f
[gaim-migrate @ 970]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
936
diff
changeset
|
188 | c->gc = (struct gaim_connection *)connections->data; |
|
1479
e7ec4ce61f5b
[gaim-migrate @ 1489]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1464
diff
changeset
|
189 | c->history = g_string_new(""); |
| 3122 | 190 | c->send_history = g_list_append(NULL, NULL); |
|
1573
878f7c59ee85
[gaim-migrate @ 1583]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1532
diff
changeset
|
191 | conversations = g_list_append(conversations, c); |
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
192 | show_conv(c); |
|
2191
a40e37f5bf27
[gaim-migrate @ 2201]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2167
diff
changeset
|
193 | update_icon(c); |
| 3051 | 194 | update_checkbox(c); |
| 3035 | 195 | update_smilies(c); |
|
1000
66436e94d53f
[gaim-migrate @ 1010]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
998
diff
changeset
|
196 | plugin_event(event_new_conversation, name, 0, 0, 0); |
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
197 | return c; |
| 66 | 198 | } |
| 199 | ||
| 200 | ||
| 201 | struct conversation *find_conversation(char *name) | |
| 202 | { | |
|
2138
e829e961b154
[gaim-migrate @ 2148]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2124
diff
changeset
|
203 | char *cuser = g_malloc(1024); |
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
204 | struct conversation *c; |
|
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
205 | GList *cnv = conversations; |
|
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
206 | |
|
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
207 | strcpy(cuser, normalize(name)); |
| 66 | 208 | |
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
209 | while (cnv) { |
|
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
210 | c = (struct conversation *)cnv->data; |
|
2048
4ac8b9622c9e
[gaim-migrate @ 2058]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2017
diff
changeset
|
211 | if (!g_strcasecmp(cuser, normalize(c->name))) { |
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
212 | g_free(cuser); |
|
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
213 | return c; |
|
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
214 | } |
|
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
215 | cnv = cnv->next; |
|
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
216 | } |
|
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
217 | g_free(cuser); |
|
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
218 | return NULL; |
| 66 | 219 | } |
| 220 | ||
| 221 | /* --------------------------------------------------- | |
| 222 | * Function to remove a log file entry | |
| 223 | * --------------------------------------------------- | |
| 224 | */ | |
| 225 | ||
| 226 | void rm_log(struct log_conversation *a) | |
| 227 | { | |
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
228 | struct conversation *cnv = find_conversation(a->name); |
|
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
229 | |
|
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
230 | log_conversations = g_list_remove(log_conversations, a); |
| 66 | 231 | |
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
232 | save_prefs(); |
| 66 | 233 | |
|
2787
050506d3945f
[gaim-migrate @ 2800]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2773
diff
changeset
|
234 | if (cnv && !(im_options & OPT_IM_ONE_WINDOW)) |
|
050506d3945f
[gaim-migrate @ 2800]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2773
diff
changeset
|
235 | set_convo_title(cnv); |
| 66 | 236 | } |
| 237 | ||
| 238 | struct log_conversation *find_log_info(char *name) | |
| 239 | { | |
|
2138
e829e961b154
[gaim-migrate @ 2148]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2124
diff
changeset
|
240 | char *pname = g_malloc(1024); |
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
241 | GList *lc = log_conversations; |
| 66 | 242 | struct log_conversation *l; |
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
243 | |
| 66 | 244 | |
| 245 | strcpy(pname, normalize(name)); | |
| 246 | ||
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
247 | while (lc) { |
|
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
248 | l = (struct log_conversation *)lc->data; |
|
2048
4ac8b9622c9e
[gaim-migrate @ 2058]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2017
diff
changeset
|
249 | if (!g_strcasecmp(pname, normalize(l->name))) { |
| 66 | 250 | g_free(pname); |
| 251 | return l; | |
| 252 | } | |
| 253 | lc = lc->next; | |
| 254 | } | |
| 255 | g_free(pname); | |
| 256 | return NULL; | |
| 257 | } | |
| 258 | ||
|
625
15a91cec0e58
[gaim-migrate @ 635]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
624
diff
changeset
|
259 | void delete_conversation(struct conversation *c) |
| 66 | 260 | { |
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
261 | conversations = g_list_remove(conversations, c); |
|
858
e514a22143a3
[gaim-migrate @ 868]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
856
diff
changeset
|
262 | if (c->fg_color_dialog) |
|
e514a22143a3
[gaim-migrate @ 868]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
856
diff
changeset
|
263 | gtk_widget_destroy(c->fg_color_dialog); |
|
e514a22143a3
[gaim-migrate @ 868]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
856
diff
changeset
|
264 | if (c->bg_color_dialog) |
|
e514a22143a3
[gaim-migrate @ 868]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
856
diff
changeset
|
265 | gtk_widget_destroy(c->bg_color_dialog); |
|
625
15a91cec0e58
[gaim-migrate @ 635]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
624
diff
changeset
|
266 | if (c->font_dialog) |
|
15a91cec0e58
[gaim-migrate @ 635]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
624
diff
changeset
|
267 | gtk_widget_destroy(c->font_dialog); |
|
15a91cec0e58
[gaim-migrate @ 635]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
624
diff
changeset
|
268 | if (c->smiley_dialog) |
|
15a91cec0e58
[gaim-migrate @ 635]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
624
diff
changeset
|
269 | gtk_widget_destroy(c->smiley_dialog); |
|
15a91cec0e58
[gaim-migrate @ 635]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
624
diff
changeset
|
270 | if (c->link_dialog) |
|
15a91cec0e58
[gaim-migrate @ 635]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
624
diff
changeset
|
271 | gtk_widget_destroy(c->link_dialog); |
|
15a91cec0e58
[gaim-migrate @ 635]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
624
diff
changeset
|
272 | if (c->log_dialog) |
|
15a91cec0e58
[gaim-migrate @ 635]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
624
diff
changeset
|
273 | gtk_widget_destroy(c->log_dialog); |
| 3367 | 274 | #if USE_PIXBUF || GTK_CHECK_VERSION(1,3,0) |
|
2499
0e48d0a33bf7
[gaim-migrate @ 2512]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2487
diff
changeset
|
275 | if (c->save_icon) |
|
0e48d0a33bf7
[gaim-migrate @ 2512]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2487
diff
changeset
|
276 | gtk_widget_destroy(c->save_icon); |
|
2502
bd38ce41c7f6
[gaim-migrate @ 2515]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2499
diff
changeset
|
277 | #endif |
| 3122 | 278 | c->send_history = g_list_first(c->send_history); |
| 279 | while (c->send_history) { | |
| 280 | if (c->send_history->data) | |
| 281 | g_free(c->send_history->data); | |
| 282 | c->send_history = c->send_history->next; | |
| 283 | } | |
| 284 | g_list_free(c->send_history); | |
| 2993 | 285 | if (c->typing_timeout) |
| 286 | gtk_timeout_remove(c->typing_timeout); | |
|
1479
e7ec4ce61f5b
[gaim-migrate @ 1489]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1464
diff
changeset
|
287 | g_string_free(c->history, TRUE); |
|
625
15a91cec0e58
[gaim-migrate @ 635]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
624
diff
changeset
|
288 | g_free(c); |
| 66 | 289 | } |
| 290 | ||
| 291 | void update_log_convs() | |
| 292 | { | |
|
964
6642a090394e
[gaim-migrate @ 974]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
960
diff
changeset
|
293 | GSList *C = connections; |
|
6642a090394e
[gaim-migrate @ 974]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
960
diff
changeset
|
294 | struct gaim_connection *g; |
|
6642a090394e
[gaim-migrate @ 974]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
960
diff
changeset
|
295 | GSList *bcs; |
| 66 | 296 | GList *cnv = conversations; |
| 297 | struct conversation *c; | |
| 298 | ||
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
299 | while (cnv) { |
| 66 | 300 | c = (struct conversation *)cnv->data; |
| 301 | ||
| 302 | if (c->log_button) | |
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
303 | gtk_widget_set_sensitive(c->log_button, |
|
1525
b4ece1a718cd
[gaim-migrate @ 1535]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1486
diff
changeset
|
304 | ((logging_options & OPT_LOG_ALL)) ? FALSE : TRUE); |
| 66 | 305 | |
| 306 | cnv = cnv->next; | |
| 307 | } | |
|
472
9a5b8da2d760
[gaim-migrate @ 482]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
411
diff
changeset
|
308 | |
|
964
6642a090394e
[gaim-migrate @ 974]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
960
diff
changeset
|
309 | while (C) { |
|
6642a090394e
[gaim-migrate @ 974]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
960
diff
changeset
|
310 | g = (struct gaim_connection *)C->data; |
|
6642a090394e
[gaim-migrate @ 974]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
960
diff
changeset
|
311 | bcs = g->buddy_chats; |
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
312 | while (bcs) { |
|
964
6642a090394e
[gaim-migrate @ 974]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
960
diff
changeset
|
313 | c = (struct conversation *)bcs->data; |
|
472
9a5b8da2d760
[gaim-migrate @ 482]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
411
diff
changeset
|
314 | |
|
964
6642a090394e
[gaim-migrate @ 974]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
960
diff
changeset
|
315 | if (c->log_button) |
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
316 | gtk_widget_set_sensitive(c->log_button, |
|
1525
b4ece1a718cd
[gaim-migrate @ 1535]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1486
diff
changeset
|
317 | ((logging_options & OPT_LOG_ALL)) ? FALSE : |
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
318 | TRUE); |
|
472
9a5b8da2d760
[gaim-migrate @ 482]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
411
diff
changeset
|
319 | |
|
964
6642a090394e
[gaim-migrate @ 974]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
960
diff
changeset
|
320 | bcs = bcs->next; |
|
6642a090394e
[gaim-migrate @ 974]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
960
diff
changeset
|
321 | } |
|
6642a090394e
[gaim-migrate @ 974]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
960
diff
changeset
|
322 | C = C->next; |
|
472
9a5b8da2d760
[gaim-migrate @ 482]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
411
diff
changeset
|
323 | } |
| 66 | 324 | } |
| 325 | ||
| 326 | void update_font_buttons() | |
| 327 | { | |
| 328 | GList *cnv = conversations; | |
| 329 | struct conversation *c; | |
| 330 | ||
| 331 | while (cnv) { | |
| 332 | c = (struct conversation *)cnv->data; | |
| 333 | ||
| 334 | if (c->bold) | |
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
335 | gtk_widget_set_sensitive(c->bold, |
|
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
336 | ((font_options & OPT_FONT_BOLD)) ? FALSE : TRUE); |
| 66 | 337 | |
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
338 | if (c->italic) |
|
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
339 | gtk_widget_set_sensitive(c->italic, |
|
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
340 | ((font_options & OPT_FONT_ITALIC)) ? FALSE : TRUE); |
| 66 | 341 | |
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
342 | if (c->underline) |
|
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
343 | gtk_widget_set_sensitive(c->underline, |
|
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
344 | ((font_options & OPT_FONT_UNDERLINE)) ? FALSE : TRUE); |
| 66 | 345 | |
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
346 | if (c->strike) |
|
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
347 | gtk_widget_set_sensitive(c->strike, |
|
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
348 | ((font_options & OPT_FONT_STRIKE)) ? FALSE : TRUE); |
| 66 | 349 | |
| 350 | cnv = cnv->next; | |
| 351 | } | |
| 352 | } | |
| 353 | ||
| 354 | /* | |
| 355 | void update_transparency() | |
| 356 | { | |
| 357 | GList *cnv = conversations; | |
| 358 | struct conversation *c; | |
| 359 | ||
| 360 | This func should be uncalled! | |
| 361 | ||
| 362 | while(cnv) { | |
| 363 | c = (struct conversation *)cnv->data; | |
| 364 | ||
| 365 | if (c->text) | |
| 366 | gtk_html_set_transparent(GTK_HTML(c->text), | |
| 367 | (transparent) ? TRUE : FALSE); | |
| 368 | ||
| 369 | cnv = cnv->next; | |
| 370 | } | |
| 371 | } | |
| 372 | */ | |
| 373 | ||
| 374 | ||
| 375 | /*------------------------------------------------------------------------*/ | |
| 376 | /* Callbacks */ | |
| 377 | /*------------------------------------------------------------------------*/ | |
| 378 | ||
|
608
4c11ac40558f
[gaim-migrate @ 618]
Todd Kulesza <fflewddur@users.sourceforge.net>
parents:
604
diff
changeset
|
379 | void toggle_loggle(GtkWidget *loggle, struct conversation *c) |
| 66 | 380 | { |
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
381 | if (state_lock) |
|
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
382 | return; |
|
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
383 | if (find_log_info(c->name)) |
|
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
384 | rm_log(find_log_info(c->name)); |
|
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
385 | else if (GTK_TOGGLE_BUTTON(loggle)->active) |
|
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
386 | show_log_dialog(c); |
|
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
387 | else |
|
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
388 | cancel_log(NULL, c); |
| 66 | 389 | } |
| 390 | ||
| 3300 | 391 | void toggle_sound(GtkWidget *widget, struct conversation *c) |
| 392 | { | |
| 393 | GdkPixmap *pm; | |
| 394 | GdkBitmap *bm; | |
| 395 | ||
| 396 | c->makesound = !c->makesound; | |
| 397 | ||
| 398 | pm = gdk_pixmap_create_from_xpm_d(c->window->window, &bm, &c->window->style->white, | |
| 399 | c->makesound ? speaker_xpm : speaker_mute_xpm); | |
| 400 | gtk_pixmap_set(GTK_PIXMAP(c->speaker_p), pm, bm); | |
| 401 | gdk_pixmap_unref(pm); | |
| 402 | gdk_bitmap_unref(bm); | |
| 403 | } | |
| 404 | ||
|
1479
e7ec4ce61f5b
[gaim-migrate @ 1489]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1464
diff
changeset
|
405 | static void do_save_convo(GtkObject *obj, GtkWidget *wid) |
|
e7ec4ce61f5b
[gaim-migrate @ 1489]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1464
diff
changeset
|
406 | { |
|
e7ec4ce61f5b
[gaim-migrate @ 1489]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1464
diff
changeset
|
407 | struct conversation *c = gtk_object_get_user_data(obj); |
|
e7ec4ce61f5b
[gaim-migrate @ 1489]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1464
diff
changeset
|
408 | char *filename = gtk_file_selection_get_filename(GTK_FILE_SELECTION(wid)); |
|
e7ec4ce61f5b
[gaim-migrate @ 1489]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1464
diff
changeset
|
409 | FILE *f; |
|
e7ec4ce61f5b
[gaim-migrate @ 1489]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1464
diff
changeset
|
410 | if (file_is_dir(filename, wid)) |
|
e7ec4ce61f5b
[gaim-migrate @ 1489]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1464
diff
changeset
|
411 | return; |
|
2802
52e0ca91e7e0
[gaim-migrate @ 2815]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2794
diff
changeset
|
412 | if ((!c->is_chat && g_list_find(conversations, c)) || |
|
52e0ca91e7e0
[gaim-migrate @ 2815]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2794
diff
changeset
|
413 | (c->is_chat && g_slist_find(connections, c->gc) && g_slist_find(c->gc->buddy_chats, c))) |
|
1479
e7ec4ce61f5b
[gaim-migrate @ 1489]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1464
diff
changeset
|
414 | filename = g_strdup(filename); |
|
e7ec4ce61f5b
[gaim-migrate @ 1489]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1464
diff
changeset
|
415 | else |
|
e7ec4ce61f5b
[gaim-migrate @ 1489]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1464
diff
changeset
|
416 | filename = NULL; |
|
e7ec4ce61f5b
[gaim-migrate @ 1489]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1464
diff
changeset
|
417 | gtk_widget_destroy(wid); |
|
e7ec4ce61f5b
[gaim-migrate @ 1489]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1464
diff
changeset
|
418 | if (!filename) |
|
e7ec4ce61f5b
[gaim-migrate @ 1489]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1464
diff
changeset
|
419 | return; |
|
e7ec4ce61f5b
[gaim-migrate @ 1489]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1464
diff
changeset
|
420 | f = fopen(filename, "w+"); |
|
e7ec4ce61f5b
[gaim-migrate @ 1489]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1464
diff
changeset
|
421 | g_free(filename); |
|
e7ec4ce61f5b
[gaim-migrate @ 1489]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1464
diff
changeset
|
422 | if (!f) |
|
e7ec4ce61f5b
[gaim-migrate @ 1489]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1464
diff
changeset
|
423 | return; |
|
e7ec4ce61f5b
[gaim-migrate @ 1489]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1464
diff
changeset
|
424 | fprintf(f, "%s", c->history->str); |
|
e7ec4ce61f5b
[gaim-migrate @ 1489]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1464
diff
changeset
|
425 | fclose(f); |
|
e7ec4ce61f5b
[gaim-migrate @ 1489]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1464
diff
changeset
|
426 | } |
|
e7ec4ce61f5b
[gaim-migrate @ 1489]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1464
diff
changeset
|
427 | |
|
e7ec4ce61f5b
[gaim-migrate @ 1489]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1464
diff
changeset
|
428 | void save_convo(GtkWidget *save, struct conversation *c) |
|
e7ec4ce61f5b
[gaim-migrate @ 1489]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1464
diff
changeset
|
429 | { |
|
e7ec4ce61f5b
[gaim-migrate @ 1489]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1464
diff
changeset
|
430 | char buf[BUF_LONG]; |
|
e7ec4ce61f5b
[gaim-migrate @ 1489]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1464
diff
changeset
|
431 | GtkWidget *window = gtk_file_selection_new(_("Gaim - Save Conversation")); |
|
e7ec4ce61f5b
[gaim-migrate @ 1489]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1464
diff
changeset
|
432 | g_snprintf(buf, sizeof(buf), "%s/%s.log", g_get_home_dir(), normalize(c->name)); |
|
e7ec4ce61f5b
[gaim-migrate @ 1489]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1464
diff
changeset
|
433 | gtk_file_selection_set_filename(GTK_FILE_SELECTION(window), buf); |
|
e7ec4ce61f5b
[gaim-migrate @ 1489]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1464
diff
changeset
|
434 | gtk_object_set_user_data(GTK_OBJECT(GTK_FILE_SELECTION(window)->ok_button), c); |
|
e7ec4ce61f5b
[gaim-migrate @ 1489]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1464
diff
changeset
|
435 | gtk_signal_connect(GTK_OBJECT(GTK_FILE_SELECTION(window)->ok_button), |
|
e7ec4ce61f5b
[gaim-migrate @ 1489]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1464
diff
changeset
|
436 | "clicked", GTK_SIGNAL_FUNC(do_save_convo), window); |
|
e7ec4ce61f5b
[gaim-migrate @ 1489]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1464
diff
changeset
|
437 | gtk_signal_connect_object(GTK_OBJECT(GTK_FILE_SELECTION(window)->cancel_button), |
|
e7ec4ce61f5b
[gaim-migrate @ 1489]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1464
diff
changeset
|
438 | "clicked", GTK_SIGNAL_FUNC(gtk_widget_destroy), (gpointer)window); |
|
e7ec4ce61f5b
[gaim-migrate @ 1489]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1464
diff
changeset
|
439 | gtk_widget_show(window); |
|
e7ec4ce61f5b
[gaim-migrate @ 1489]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1464
diff
changeset
|
440 | } |
|
e7ec4ce61f5b
[gaim-migrate @ 1489]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1464
diff
changeset
|
441 | |
| 3044 | 442 | static void do_insert_image(GtkObject *obj, GtkWidget *wid) |
| 443 | { | |
| 444 | struct conversation *c = gtk_object_get_user_data(obj); | |
| 445 | char *name = gtk_file_selection_get_filename(GTK_FILE_SELECTION(wid)); | |
| 446 | char *filename; | |
| 447 | int pos; | |
| 448 | char buf[512]; | |
| 449 | struct stat st; | |
| 450 | int id = g_slist_length(c->images) + 1; | |
| 451 | ||
| 452 | if (file_is_dir(name, wid)) | |
| 453 | return; | |
| 454 | if ((!c->is_chat && g_list_find(conversations, c))) | |
| 455 | name = g_strdup(name); | |
| 456 | else | |
| 457 | name = NULL; | |
| 458 | gtk_widget_destroy(wid); | |
| 459 | if (!name) | |
| 460 | return; | |
| 461 | ||
| 462 | if (stat(name, &st) != 0) { | |
| 463 | debug_printf("Could not stat %s\n", name); | |
| 464 | return; | |
| 465 | } | |
| 466 | ||
| 467 | filename = name; | |
| 468 | while (strchr(filename, '/')) | |
| 469 | filename = strchr(filename, '/') + 1; | |
| 470 | ||
| 471 | g_snprintf(buf, sizeof(buf), | |
| 472 | "<IMG SRC=\"file://%s\" ID=\"%d\" DATASIZE=\"%d\">", | |
| 473 | filename, id, (int)st.st_size); | |
| 474 | ||
| 475 | c->images = g_slist_append(c->images, g_strdup(name)); | |
| 476 | ||
| 477 | if (GTK_OLD_EDITABLE(c->entry)->has_selection) { | |
| 478 | int finish = GTK_OLD_EDITABLE(c->entry)->selection_end_pos; | |
| 479 | gtk_editable_insert_text(GTK_EDITABLE(c->entry), | |
| 480 | buf, strlen(buf), &finish); | |
| 481 | } else { | |
| 482 | pos = GTK_OLD_EDITABLE(c->entry)->current_pos; | |
| 483 | gtk_editable_insert_text(GTK_EDITABLE(c->entry), | |
| 484 | buf, strlen(buf), &pos); | |
| 485 | } | |
| 486 | g_free(name); | |
| 487 | } | |
| 488 | ||
| 489 | void insert_image(GtkWidget *save, struct conversation *c) | |
| 490 | { | |
| 491 | char buf[BUF_LONG]; | |
| 492 | GtkWidget *window = gtk_file_selection_new(_("Gaim - Insert Image")); | |
| 493 | g_snprintf(buf, sizeof(buf), "%s/", g_get_home_dir()); | |
| 494 | gtk_file_selection_set_filename(GTK_FILE_SELECTION(window), buf); | |
| 495 | gtk_object_set_user_data(GTK_OBJECT(GTK_FILE_SELECTION(window)->ok_button), c); | |
| 496 | gtk_signal_connect(GTK_OBJECT(GTK_FILE_SELECTION(window)->ok_button), | |
| 497 | "clicked", GTK_SIGNAL_FUNC(do_insert_image), window); | |
| 498 | gtk_signal_connect_object(GTK_OBJECT(GTK_FILE_SELECTION(window)->cancel_button), | |
| 499 | "clicked", GTK_SIGNAL_FUNC(gtk_widget_destroy), (gpointer)window); | |
| 500 | gtk_widget_show(window); | |
| 501 | } | |
| 502 | ||
| 503 | ||
|
570
3450eeb314a1
[gaim-migrate @ 580]
Todd Kulesza <fflewddur@users.sourceforge.net>
parents:
563
diff
changeset
|
504 | void insert_smiley(GtkWidget *smiley, struct conversation *c) |
|
555
bea0ece30600
[gaim-migrate @ 565]
Todd Kulesza <fflewddur@users.sourceforge.net>
parents:
551
diff
changeset
|
505 | { |
|
bea0ece30600
[gaim-migrate @ 565]
Todd Kulesza <fflewddur@users.sourceforge.net>
parents:
551
diff
changeset
|
506 | if (state_lock) |
|
bea0ece30600
[gaim-migrate @ 565]
Todd Kulesza <fflewddur@users.sourceforge.net>
parents:
551
diff
changeset
|
507 | return; |
|
570
3450eeb314a1
[gaim-migrate @ 580]
Todd Kulesza <fflewddur@users.sourceforge.net>
parents:
563
diff
changeset
|
508 | if (GTK_TOGGLE_BUTTON(smiley)->active) |
|
3450eeb314a1
[gaim-migrate @ 580]
Todd Kulesza <fflewddur@users.sourceforge.net>
parents:
563
diff
changeset
|
509 | show_smiley_dialog(c, smiley); |
|
3450eeb314a1
[gaim-migrate @ 580]
Todd Kulesza <fflewddur@users.sourceforge.net>
parents:
563
diff
changeset
|
510 | else if (c->smiley_dialog) |
|
3450eeb314a1
[gaim-migrate @ 580]
Todd Kulesza <fflewddur@users.sourceforge.net>
parents:
563
diff
changeset
|
511 | close_smiley_dialog(smiley, c); |
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
512 | |
|
555
bea0ece30600
[gaim-migrate @ 565]
Todd Kulesza <fflewddur@users.sourceforge.net>
parents:
551
diff
changeset
|
513 | return; |
|
bea0ece30600
[gaim-migrate @ 565]
Todd Kulesza <fflewddur@users.sourceforge.net>
parents:
551
diff
changeset
|
514 | } |
|
bea0ece30600
[gaim-migrate @ 565]
Todd Kulesza <fflewddur@users.sourceforge.net>
parents:
551
diff
changeset
|
515 | |
|
472
9a5b8da2d760
[gaim-migrate @ 482]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
411
diff
changeset
|
516 | int close_callback(GtkWidget *widget, struct conversation *c) |
| 66 | 517 | { |
|
2313
f7f7ff0b8d4a
[gaim-migrate @ 2323]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2303
diff
changeset
|
518 | if (c->is_chat && (widget == c->close) && !(chat_options & OPT_CHAT_ONE_WINDOW)) { |
|
814
279b5c144286
[gaim-migrate @ 824]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
808
diff
changeset
|
519 | GtkWidget *tmp = c->window; |
|
1250
46ac03911ab0
[gaim-migrate @ 1260]
Decklin Foster <decklin@red-bean.com>
parents:
1244
diff
changeset
|
520 | debug_printf("chat clicked close button\n"); |
|
814
279b5c144286
[gaim-migrate @ 824]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
808
diff
changeset
|
521 | c->window = NULL; |
|
279b5c144286
[gaim-migrate @ 824]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
808
diff
changeset
|
522 | gtk_widget_destroy(tmp); |
|
960
c4012584334f
[gaim-migrate @ 970]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
936
diff
changeset
|
523 | return FALSE; |
|
814
279b5c144286
[gaim-migrate @ 824]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
808
diff
changeset
|
524 | } |
|
279b5c144286
[gaim-migrate @ 824]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
808
diff
changeset
|
525 | |
|
1250
46ac03911ab0
[gaim-migrate @ 1260]
Decklin Foster <decklin@red-bean.com>
parents:
1244
diff
changeset
|
526 | debug_printf("conversation close callback\n"); |
|
814
279b5c144286
[gaim-migrate @ 824]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
808
diff
changeset
|
527 | |
|
2313
f7f7ff0b8d4a
[gaim-migrate @ 2323]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2303
diff
changeset
|
528 | if (convo_options & OPT_CONVO_CHECK_SPELLING) |
|
1117
fcb6e7efcc0d
[gaim-migrate @ 1127]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1103
diff
changeset
|
529 | gtkspell_detach(GTK_TEXT(c->entry)); |
|
fcb6e7efcc0d
[gaim-migrate @ 1127]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1103
diff
changeset
|
530 | |
|
1692
ff73167542e9
[gaim-migrate @ 1702]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1663
diff
changeset
|
531 | if (!c->is_chat) { |
|
2246
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2245
diff
changeset
|
532 | GSList *cn = connections; |
| 3311 | 533 | serv_send_typing(c->gc, c->name, FALSE); |
|
2246
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2245
diff
changeset
|
534 | while (cn) { |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2245
diff
changeset
|
535 | struct gaim_connection *gc = cn->data; |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2245
diff
changeset
|
536 | cn = cn->next; |
|
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2245
diff
changeset
|
537 | if (gc->prpl->convo_closed) |
|
2662
9201ea07c91e
[gaim-migrate @ 2675]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2631
diff
changeset
|
538 | gc->prpl->convo_closed(gc, c->name); |
|
2246
8ade8b7421af
[gaim-migrate @ 2256]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2245
diff
changeset
|
539 | } |
|
2191
a40e37f5bf27
[gaim-migrate @ 2201]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2167
diff
changeset
|
540 | remove_icon(c); |
|
2231
9d8593ab093e
[gaim-migrate @ 2241]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2227
diff
changeset
|
541 | remove_checkbox(c); |
|
2313
f7f7ff0b8d4a
[gaim-migrate @ 2323]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2303
diff
changeset
|
542 | if (im_options & OPT_IM_ONE_WINDOW) { |
|
2843
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
543 | if ((g_list_length(conversations) > 1) || |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
544 | ((convo_options & OPT_CONVO_COMBINE) && |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
545 | (chat_options & OPT_CHAT_ONE_WINDOW) && chats)) { |
|
1692
ff73167542e9
[gaim-migrate @ 1702]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1663
diff
changeset
|
546 | gtk_notebook_remove_page(GTK_NOTEBOOK(convo_notebook), |
|
2372
c24942700dfd
[gaim-migrate @ 2385]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2363
diff
changeset
|
547 | g_list_index(conversations, c)); |
|
1692
ff73167542e9
[gaim-migrate @ 1702]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1663
diff
changeset
|
548 | } else { |
|
ff73167542e9
[gaim-migrate @ 1702]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1663
diff
changeset
|
549 | if (c->window) |
|
ff73167542e9
[gaim-migrate @ 1702]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1663
diff
changeset
|
550 | gtk_widget_destroy(c->window); |
|
ff73167542e9
[gaim-migrate @ 1702]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1663
diff
changeset
|
551 | c->window = NULL; |
|
ff73167542e9
[gaim-migrate @ 1702]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1663
diff
changeset
|
552 | all_convos = NULL; |
|
1757
8c57846a4691
[gaim-migrate @ 1767]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1735
diff
changeset
|
553 | convo_notebook = NULL; |
|
2843
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
554 | if (convo_options & OPT_CONVO_COMBINE) { |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
555 | all_chats = NULL; |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
556 | chat_notebook = NULL; |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
557 | } |
|
1692
ff73167542e9
[gaim-migrate @ 1702]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1663
diff
changeset
|
558 | } |
|
1573
878f7c59ee85
[gaim-migrate @ 1583]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1532
diff
changeset
|
559 | } else { |
|
878f7c59ee85
[gaim-migrate @ 1583]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1532
diff
changeset
|
560 | if (c->window) |
|
878f7c59ee85
[gaim-migrate @ 1583]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1532
diff
changeset
|
561 | gtk_widget_destroy(c->window); |
|
878f7c59ee85
[gaim-migrate @ 1583]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1532
diff
changeset
|
562 | c->window = NULL; |
|
878f7c59ee85
[gaim-migrate @ 1583]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1532
diff
changeset
|
563 | } |
|
878f7c59ee85
[gaim-migrate @ 1583]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1532
diff
changeset
|
564 | } else { |
|
2313
f7f7ff0b8d4a
[gaim-migrate @ 2323]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2303
diff
changeset
|
565 | if (chat_options & OPT_CHAT_ONE_WINDOW) { |
|
2891
30054368342a
[gaim-migrate @ 2904]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2877
diff
changeset
|
566 | if ((convo_options & OPT_CONVO_COMBINE) && (im_options & OPT_IM_ONE_WINDOW) |
|
30054368342a
[gaim-migrate @ 2904]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2877
diff
changeset
|
567 | && (conversations || chats->next)) { |
|
1692
ff73167542e9
[gaim-migrate @ 1702]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1663
diff
changeset
|
568 | gtk_notebook_remove_page(GTK_NOTEBOOK(chat_notebook), |
|
2843
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
569 | g_list_index(chats, c) + |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
570 | g_list_length(conversations)); |
|
2891
30054368342a
[gaim-migrate @ 2904]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2877
diff
changeset
|
571 | } else if (g_list_length(chats) > 1) { |
|
30054368342a
[gaim-migrate @ 2904]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2877
diff
changeset
|
572 | gtk_notebook_remove_page(GTK_NOTEBOOK(chat_notebook), |
|
30054368342a
[gaim-migrate @ 2904]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2877
diff
changeset
|
573 | g_list_index(chats, c)); |
|
1692
ff73167542e9
[gaim-migrate @ 1702]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1663
diff
changeset
|
574 | } else { |
|
ff73167542e9
[gaim-migrate @ 1702]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1663
diff
changeset
|
575 | if (c->window) |
|
ff73167542e9
[gaim-migrate @ 1702]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1663
diff
changeset
|
576 | gtk_widget_destroy(c->window); |
|
ff73167542e9
[gaim-migrate @ 1702]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1663
diff
changeset
|
577 | c->window = NULL; |
|
ff73167542e9
[gaim-migrate @ 1702]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1663
diff
changeset
|
578 | all_chats = NULL; |
|
1757
8c57846a4691
[gaim-migrate @ 1767]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1735
diff
changeset
|
579 | chat_notebook = NULL; |
|
2843
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
580 | if (convo_options & OPT_CONVO_COMBINE) { |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
581 | all_convos = NULL; |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
582 | convo_notebook = NULL; |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
583 | } |
|
1692
ff73167542e9
[gaim-migrate @ 1702]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1663
diff
changeset
|
584 | } |
|
ff73167542e9
[gaim-migrate @ 1702]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1663
diff
changeset
|
585 | } else { |
|
ff73167542e9
[gaim-migrate @ 1702]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1663
diff
changeset
|
586 | if (c->window) |
|
ff73167542e9
[gaim-migrate @ 1702]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1663
diff
changeset
|
587 | gtk_widget_destroy(c->window); |
|
ff73167542e9
[gaim-migrate @ 1702]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1663
diff
changeset
|
588 | c->window = NULL; |
|
ff73167542e9
[gaim-migrate @ 1702]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1663
diff
changeset
|
589 | } |
|
1573
878f7c59ee85
[gaim-migrate @ 1583]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1532
diff
changeset
|
590 | } |
|
472
9a5b8da2d760
[gaim-migrate @ 482]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
411
diff
changeset
|
591 | |
|
858
e514a22143a3
[gaim-migrate @ 868]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
856
diff
changeset
|
592 | if (c->fg_color_dialog) |
|
e514a22143a3
[gaim-migrate @ 868]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
856
diff
changeset
|
593 | gtk_widget_destroy(c->fg_color_dialog); |
|
e514a22143a3
[gaim-migrate @ 868]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
856
diff
changeset
|
594 | c->fg_color_dialog = NULL; |
|
e514a22143a3
[gaim-migrate @ 868]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
856
diff
changeset
|
595 | if (c->bg_color_dialog) |
|
e514a22143a3
[gaim-migrate @ 868]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
856
diff
changeset
|
596 | gtk_widget_destroy(c->bg_color_dialog); |
|
e514a22143a3
[gaim-migrate @ 868]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
856
diff
changeset
|
597 | c->bg_color_dialog = NULL; |
|
625
15a91cec0e58
[gaim-migrate @ 635]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
624
diff
changeset
|
598 | if (c->font_dialog) |
|
15a91cec0e58
[gaim-migrate @ 635]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
624
diff
changeset
|
599 | gtk_widget_destroy(c->font_dialog); |
|
15a91cec0e58
[gaim-migrate @ 635]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
624
diff
changeset
|
600 | c->font_dialog = NULL; |
|
15a91cec0e58
[gaim-migrate @ 635]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
624
diff
changeset
|
601 | if (c->smiley_dialog) |
|
15a91cec0e58
[gaim-migrate @ 635]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
624
diff
changeset
|
602 | gtk_widget_destroy(c->smiley_dialog); |
|
15a91cec0e58
[gaim-migrate @ 635]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
624
diff
changeset
|
603 | c->smiley_dialog = NULL; |
|
15a91cec0e58
[gaim-migrate @ 635]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
624
diff
changeset
|
604 | if (c->link_dialog) |
|
15a91cec0e58
[gaim-migrate @ 635]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
624
diff
changeset
|
605 | gtk_widget_destroy(c->link_dialog); |
|
15a91cec0e58
[gaim-migrate @ 635]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
624
diff
changeset
|
606 | c->link_dialog = NULL; |
|
15a91cec0e58
[gaim-migrate @ 635]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
624
diff
changeset
|
607 | if (c->log_dialog) |
|
15a91cec0e58
[gaim-migrate @ 635]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
624
diff
changeset
|
608 | gtk_widget_destroy(c->log_dialog); |
|
15a91cec0e58
[gaim-migrate @ 635]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
624
diff
changeset
|
609 | c->log_dialog = NULL; |
|
15a91cec0e58
[gaim-migrate @ 635]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
624
diff
changeset
|
610 | |
|
511
774b71d46db5
[gaim-migrate @ 521]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
502
diff
changeset
|
611 | if (c->is_chat) { |
|
1692
ff73167542e9
[gaim-migrate @ 1702]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1663
diff
changeset
|
612 | chats = g_list_remove(chats, c); |
|
1063
f766a178ee59
[gaim-migrate @ 1073]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1034
diff
changeset
|
613 | if (c->gc) |
|
f766a178ee59
[gaim-migrate @ 1073]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1034
diff
changeset
|
614 | serv_chat_leave(c->gc, c->id); |
|
2017
39809db22611
[gaim-migrate @ 2027]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2004
diff
changeset
|
615 | else |
|
39809db22611
[gaim-migrate @ 2027]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2004
diff
changeset
|
616 | delete_chat(c); |
|
511
774b71d46db5
[gaim-migrate @ 521]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
502
diff
changeset
|
617 | } else { |
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
618 | delete_conversation(c); |
|
511
774b71d46db5
[gaim-migrate @ 521]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
502
diff
changeset
|
619 | } |
|
472
9a5b8da2d760
[gaim-migrate @ 482]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
411
diff
changeset
|
620 | |
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
621 | return TRUE; |
| 66 | 622 | } |
| 623 | ||
|
666
0a313fec9a15
[gaim-migrate @ 676]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
661
diff
changeset
|
624 | void set_font_face(char *newfont, struct conversation *c) |
|
230
5afbb3468f11
[gaim-migrate @ 240]
Todd Kulesza <fflewddur@users.sourceforge.net>
parents:
210
diff
changeset
|
625 | { |
|
666
0a313fec9a15
[gaim-migrate @ 676]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
661
diff
changeset
|
626 | char *pre_fontface; |
|
2763
18a8e555039b
[gaim-migrate @ 2776]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2761
diff
changeset
|
627 | int i, j = 0, k = 0; |
|
18a8e555039b
[gaim-migrate @ 2776]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2761
diff
changeset
|
628 | |
|
18a8e555039b
[gaim-migrate @ 2776]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2761
diff
changeset
|
629 | |
|
18a8e555039b
[gaim-migrate @ 2776]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2761
diff
changeset
|
630 | sprintf(c->fontxfld, "%s", newfont && *newfont ? newfont : DEFAULT_FONT_XFLD); |
|
18a8e555039b
[gaim-migrate @ 2776]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2761
diff
changeset
|
631 | for (i = 0; i < strlen(c->fontxfld); i++) { |
|
18a8e555039b
[gaim-migrate @ 2776]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2761
diff
changeset
|
632 | if (c->fontxfld[i] == '-') { |
|
18a8e555039b
[gaim-migrate @ 2776]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2761
diff
changeset
|
633 | if (++j > 2) |
|
18a8e555039b
[gaim-migrate @ 2776]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2761
diff
changeset
|
634 | break; |
|
18a8e555039b
[gaim-migrate @ 2776]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2761
diff
changeset
|
635 | } else if (j == 2) |
|
18a8e555039b
[gaim-migrate @ 2776]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2761
diff
changeset
|
636 | c->fontface[k++] = c->fontxfld[i]; |
|
234
100138758e8d
[gaim-migrate @ 244]
Todd Kulesza <fflewddur@users.sourceforge.net>
parents:
230
diff
changeset
|
637 | } |
|
2763
18a8e555039b
[gaim-migrate @ 2776]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2761
diff
changeset
|
638 | c->fontface[k] = '\0'; |
|
688
f2f20803113b
[gaim-migrate @ 698]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
687
diff
changeset
|
639 | c->hasfont = 1; |
|
2763
18a8e555039b
[gaim-migrate @ 2776]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2761
diff
changeset
|
640 | |
|
18a8e555039b
[gaim-migrate @ 2776]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2761
diff
changeset
|
641 | pre_fontface = g_strconcat("<FONT FACE=\"", c->fontface, "\">", NULL); |
|
230
5afbb3468f11
[gaim-migrate @ 240]
Todd Kulesza <fflewddur@users.sourceforge.net>
parents:
210
diff
changeset
|
642 | surround(c->entry, pre_fontface, "</FONT>"); |
|
5afbb3468f11
[gaim-migrate @ 240]
Todd Kulesza <fflewddur@users.sourceforge.net>
parents:
210
diff
changeset
|
643 | gtk_widget_grab_focus(c->entry); |
|
2763
18a8e555039b
[gaim-migrate @ 2776]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2761
diff
changeset
|
644 | g_free(pre_fontface); |
|
230
5afbb3468f11
[gaim-migrate @ 240]
Todd Kulesza <fflewddur@users.sourceforge.net>
parents:
210
diff
changeset
|
645 | } |
|
5afbb3468f11
[gaim-migrate @ 240]
Todd Kulesza <fflewddur@users.sourceforge.net>
parents:
210
diff
changeset
|
646 | |
|
2843
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
647 | gint delete_all_convo(GtkWidget *w, GdkEventAny *e, gpointer d) |
|
1573
878f7c59ee85
[gaim-migrate @ 1583]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1532
diff
changeset
|
648 | { |
|
2843
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
649 | if (w == all_convos) { |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
650 | while (conversations) { |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
651 | struct conversation *c = conversations->data; |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
652 | close_callback(c->close, c); |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
653 | } |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
654 | } |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
655 | if (w == all_chats) { |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
656 | while (chats) { |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
657 | struct conversation *c = chats->data; |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
658 | close_callback(c->close, c); |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
659 | } |
|
1573
878f7c59ee85
[gaim-migrate @ 1583]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1532
diff
changeset
|
660 | } |
|
878f7c59ee85
[gaim-migrate @ 1583]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1532
diff
changeset
|
661 | return FALSE; |
|
878f7c59ee85
[gaim-migrate @ 1583]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1532
diff
changeset
|
662 | } |
|
878f7c59ee85
[gaim-migrate @ 1583]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1532
diff
changeset
|
663 | |
|
2372
c24942700dfd
[gaim-migrate @ 2385]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2363
diff
changeset
|
664 | static gint delete_event_convo(GtkWidget *w, GdkEventAny *e, struct conversation *c) |
| 66 | 665 | { |
| 666 | delete_conversation(c); | |
| 667 | return FALSE; | |
| 668 | } | |
| 669 | ||
|
472
9a5b8da2d760
[gaim-migrate @ 482]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
411
diff
changeset
|
670 | void add_callback(GtkWidget *widget, struct conversation *c) |
| 66 | 671 | { |
|
2681
73cd94b9e78e
[gaim-migrate @ 2694]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2662
diff
changeset
|
672 | struct buddy *b = find_buddy(c->gc, c->name); |
|
73cd94b9e78e
[gaim-migrate @ 2694]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2662
diff
changeset
|
673 | if (b) { |
| 2745 | 674 | show_confirm_del(c->gc, c->name); |
|
2681
73cd94b9e78e
[gaim-migrate @ 2694]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2662
diff
changeset
|
675 | } else if (c->gc) |
|
73cd94b9e78e
[gaim-migrate @ 2694]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2662
diff
changeset
|
676 | show_add_buddy(c->gc, c->name, NULL, NULL); |
| 66 | 677 | |
| 678 | gtk_widget_grab_focus(c->entry); | |
| 679 | } | |
| 680 | ||
| 681 | ||
|
472
9a5b8da2d760
[gaim-migrate @ 482]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
411
diff
changeset
|
682 | void block_callback(GtkWidget *widget, struct conversation *c) |
| 66 | 683 | { |
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
684 | if (c->gc) |
|
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
685 | show_add_perm(c->gc, c->name, FALSE); |
| 66 | 686 | gtk_widget_grab_focus(c->entry); |
| 687 | } | |
| 688 | ||
|
472
9a5b8da2d760
[gaim-migrate @ 482]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
411
diff
changeset
|
689 | void warn_callback(GtkWidget *widget, struct conversation *c) |
| 66 | 690 | { |
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
691 | show_warn_dialog(c->gc, c->name); |
| 66 | 692 | gtk_widget_grab_focus(c->entry); |
| 693 | } | |
| 694 | ||
|
472
9a5b8da2d760
[gaim-migrate @ 482]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
411
diff
changeset
|
695 | void info_callback(GtkWidget *w, struct conversation *c) |
| 66 | 696 | { |
|
472
9a5b8da2d760
[gaim-migrate @ 482]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
411
diff
changeset
|
697 | if (c->is_chat) { |
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
698 | char *name; |
|
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
699 | GList *i; |
|
472
9a5b8da2d760
[gaim-migrate @ 482]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
411
diff
changeset
|
700 | |
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
701 | i = GTK_LIST(c->list)->selection; |
|
2372
c24942700dfd
[gaim-migrate @ 2385]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2363
diff
changeset
|
702 | if (i) { |
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
703 | name = (char *)gtk_object_get_user_data(GTK_OBJECT(i->data)); |
|
2372
c24942700dfd
[gaim-migrate @ 2385]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2363
diff
changeset
|
704 | } else { |
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
705 | return; |
|
2372
c24942700dfd
[gaim-migrate @ 2385]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2363
diff
changeset
|
706 | } |
|
472
9a5b8da2d760
[gaim-migrate @ 482]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
411
diff
changeset
|
707 | |
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
708 | serv_get_info(c->gc, name); |
|
472
9a5b8da2d760
[gaim-migrate @ 482]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
411
diff
changeset
|
709 | } else { |
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
710 | serv_get_info(c->gc, c->name); |
|
472
9a5b8da2d760
[gaim-migrate @ 482]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
411
diff
changeset
|
711 | gtk_widget_grab_focus(c->entry); |
|
9a5b8da2d760
[gaim-migrate @ 482]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
411
diff
changeset
|
712 | } |
| 66 | 713 | } |
| 714 | ||
|
2843
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
715 | static void move_next_tab(GtkNotebook *notebook, gboolean chat) |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
716 | { |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
717 | int currpage = gtk_notebook_get_current_page(notebook); |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
718 | int convlen; |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
719 | GList *cnv; |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
720 | struct conversation *d = NULL; |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
721 | |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
722 | if ((convo_options & OPT_CONVO_COMBINE) && |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
723 | (im_options & OPT_IM_ONE_WINDOW) && |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
724 | (chat_options & OPT_CHAT_ONE_WINDOW)) |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
725 | convlen = g_list_length(conversations); |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
726 | else |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
727 | convlen = 0; |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
728 | |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
729 | if (chat) { |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
730 | /* if chat, find next unread chat */ |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
731 | cnv = g_list_nth(chats, currpage - convlen); |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
732 | while (cnv) { |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
733 | d = cnv->data; |
| 2993 | 734 | if (d->unseen > 0) |
|
2843
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
735 | break; |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
736 | cnv = cnv->next; |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
737 | d = NULL; |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
738 | } |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
739 | if (d) { |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
740 | gtk_notebook_set_page(notebook, convlen + g_list_index(chats, d)); |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
741 | return; |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
742 | } |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
743 | } else { |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
744 | /* else find next unread convo */ |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
745 | cnv = g_list_nth(conversations, currpage); |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
746 | while (cnv) { |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
747 | d = cnv->data; |
| 2993 | 748 | if (d->unseen > 0) |
|
2843
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
749 | break; |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
750 | cnv = cnv->next; |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
751 | d = NULL; |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
752 | } |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
753 | if (d) { |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
754 | gtk_notebook_set_page(notebook, g_list_index(conversations, d)); |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
755 | return; |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
756 | } |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
757 | } |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
758 | |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
759 | if (convo_options & OPT_CONVO_COMBINE) { |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
760 | if (chat && (im_options & OPT_IM_ONE_WINDOW)) { |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
761 | /* if chat find next unread convo */ |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
762 | cnv = conversations; |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
763 | while (cnv) { |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
764 | d = cnv->data; |
| 2993 | 765 | if (d->unseen > 0) |
|
2843
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
766 | break; |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
767 | cnv = cnv->next; |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
768 | d = NULL; |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
769 | } |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
770 | if (d) { |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
771 | gtk_notebook_set_page(notebook, g_list_index(conversations, d)); |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
772 | return; |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
773 | } |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
774 | } else if (!chat && (chat_options & OPT_CHAT_ONE_WINDOW)) { |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
775 | /* else find next unread chat */ |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
776 | cnv = chats; |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
777 | while (cnv) { |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
778 | d = cnv->data; |
| 2993 | 779 | if (d->unseen > 0) |
|
2843
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
780 | break; |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
781 | cnv = cnv->next; |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
782 | d = NULL; |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
783 | } |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
784 | if (d) { |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
785 | gtk_notebook_set_page(notebook, convlen + g_list_index(chats, d)); |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
786 | return; |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
787 | } |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
788 | } |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
789 | } |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
790 | |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
791 | if (chat) { |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
792 | /* if chat find first unread chat */ |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
793 | cnv = chats; |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
794 | while (cnv) { |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
795 | d = cnv->data; |
| 2993 | 796 | if (d->unseen > 0) |
|
2843
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
797 | break; |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
798 | cnv = cnv->next; |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
799 | d = NULL; |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
800 | } |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
801 | if (d) { |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
802 | gtk_notebook_set_page(notebook, convlen + g_list_index(chats, d)); |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
803 | return; |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
804 | } |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
805 | } else { |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
806 | /* else find first unread convo */ |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
807 | cnv = conversations; |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
808 | while (cnv) { |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
809 | d = cnv->data; |
| 2993 | 810 | if (d->unseen > 0) |
|
2843
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
811 | break; |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
812 | cnv = cnv->next; |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
813 | d = NULL; |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
814 | } |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
815 | if (d) { |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
816 | gtk_notebook_set_page(notebook, g_list_index(conversations, d)); |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
817 | return; |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
818 | } |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
819 | } |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
820 | |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
821 | /* go to next page */ |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
822 | if (currpage + 1 == g_list_length(notebook->children)) |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
823 | gtk_notebook_set_page(notebook, 0); |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
824 | else |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
825 | gtk_notebook_next_page(notebook); |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
826 | } |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
827 | |
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
828 | gboolean keypress_callback(GtkWidget *entry, GdkEventKey * event, struct conversation *c) |
| 66 | 829 | { |
|
573
a267d68a8240
[gaim-migrate @ 583]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
570
diff
changeset
|
830 | int pos; |
|
1411
9dfe915ff660
[gaim-migrate @ 1421]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1403
diff
changeset
|
831 | if (event->keyval == GDK_Escape) { |
|
2313
f7f7ff0b8d4a
[gaim-migrate @ 2323]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2303
diff
changeset
|
832 | if (convo_options & OPT_CONVO_ESC_CAN_CLOSE) { |
|
1411
9dfe915ff660
[gaim-migrate @ 1421]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1403
diff
changeset
|
833 | gtk_signal_emit_stop_by_name(GTK_OBJECT(entry), "key_press_event"); |
|
1464
e0f6ddb88909
[gaim-migrate @ 1474]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1456
diff
changeset
|
834 | close_callback(c->close, c); |
| 2993 | 835 | c = NULL; |
|
1411
9dfe915ff660
[gaim-migrate @ 1421]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1403
diff
changeset
|
836 | } |
|
2363
0767c14d7879
[gaim-migrate @ 2376]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2345
diff
changeset
|
837 | } else if (event->keyval == GDK_Page_Up) { |
|
2749
ee6f9af8a5b0
[gaim-migrate @ 2762]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2748
diff
changeset
|
838 | gtk_signal_emit_stop_by_name(GTK_OBJECT(entry), "key_press_event"); |
|
2363
0767c14d7879
[gaim-migrate @ 2376]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2345
diff
changeset
|
839 | gtk_imhtml_page_up(GTK_IMHTML(c->text)); |
|
0767c14d7879
[gaim-migrate @ 2376]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2345
diff
changeset
|
840 | } else if (event->keyval == GDK_Page_Down) { |
|
2749
ee6f9af8a5b0
[gaim-migrate @ 2762]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2748
diff
changeset
|
841 | gtk_signal_emit_stop_by_name(GTK_OBJECT(entry), "key_press_event"); |
|
2363
0767c14d7879
[gaim-migrate @ 2376]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2345
diff
changeset
|
842 | gtk_imhtml_page_down(GTK_IMHTML(c->text)); |
|
2313
f7f7ff0b8d4a
[gaim-migrate @ 2323]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2303
diff
changeset
|
843 | } else if ((event->keyval == GDK_F2) && (convo_options & OPT_CONVO_F2_TOGGLES)) { |
|
1455
8a6a287fbc9c
[gaim-migrate @ 1465]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1453
diff
changeset
|
844 | gtk_imhtml_show_comments(GTK_IMHTML(c->text), !GTK_IMHTML(c->text)->comments); |
|
1872
e6e5fd0b2bee
[gaim-migrate @ 1882]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1867
diff
changeset
|
845 | } else if ((event->keyval == GDK_Return) || (event->keyval == GDK_KP_Enter)) { |
|
2313
f7f7ff0b8d4a
[gaim-migrate @ 2323]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2303
diff
changeset
|
846 | if ((event->state & GDK_CONTROL_MASK) && (convo_options & OPT_CONVO_CTL_ENTER)) { |
|
573
a267d68a8240
[gaim-migrate @ 583]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
570
diff
changeset
|
847 | gtk_signal_emit_by_name(GTK_OBJECT(entry), "activate", c); |
|
1442
998377f2f876
[gaim-migrate @ 1452]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1441
diff
changeset
|
848 | gtk_signal_emit_stop_by_name(GTK_OBJECT(entry), "key_press_event"); |
|
2748
5ba62cb0a6be
[gaim-migrate @ 2761]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2745
diff
changeset
|
849 | return TRUE; |
|
2773
3f711c709792
[gaim-migrate @ 2786]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2767
diff
changeset
|
850 | } else if (!(event->state & (GDK_SHIFT_MASK | GDK_CONTROL_MASK)) && (convo_options & OPT_CONVO_ENTER_SENDS)) { |
|
1442
998377f2f876
[gaim-migrate @ 1452]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1441
diff
changeset
|
851 | gtk_signal_emit_by_name(GTK_OBJECT(entry), "activate", c); |
|
573
a267d68a8240
[gaim-migrate @ 583]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
570
diff
changeset
|
852 | gtk_signal_emit_stop_by_name(GTK_OBJECT(entry), "key_press_event"); |
|
2748
5ba62cb0a6be
[gaim-migrate @ 2761]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2745
diff
changeset
|
853 | return TRUE; |
|
573
a267d68a8240
[gaim-migrate @ 583]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
570
diff
changeset
|
854 | } else { |
|
2483
ce825ff0ecc8
[gaim-migrate @ 2496]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2460
diff
changeset
|
855 | int oldpos; |
|
573
a267d68a8240
[gaim-migrate @ 583]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
570
diff
changeset
|
856 | gtk_signal_emit_stop_by_name(GTK_OBJECT(entry), "key_press_event"); |
|
2483
ce825ff0ecc8
[gaim-migrate @ 2496]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2460
diff
changeset
|
857 | oldpos = pos = gtk_editable_get_position(GTK_EDITABLE(entry)); |
|
573
a267d68a8240
[gaim-migrate @ 583]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
570
diff
changeset
|
858 | gtk_editable_insert_text(GTK_EDITABLE(entry), "\n", 1, &pos); |
|
2483
ce825ff0ecc8
[gaim-migrate @ 2496]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2460
diff
changeset
|
859 | if (oldpos == pos) |
|
ce825ff0ecc8
[gaim-migrate @ 2496]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2460
diff
changeset
|
860 | gtk_editable_set_position(GTK_EDITABLE(entry), pos + 1); |
|
2748
5ba62cb0a6be
[gaim-migrate @ 2761]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2745
diff
changeset
|
861 | return TRUE; |
|
573
a267d68a8240
[gaim-migrate @ 583]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
570
diff
changeset
|
862 | } |
|
2483
ce825ff0ecc8
[gaim-migrate @ 2496]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2460
diff
changeset
|
863 | } else if ((event->state & GDK_CONTROL_MASK) && (event->keyval == 'm')) { |
|
ce825ff0ecc8
[gaim-migrate @ 2496]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2460
diff
changeset
|
864 | int oldpos; |
|
ce825ff0ecc8
[gaim-migrate @ 2496]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2460
diff
changeset
|
865 | gtk_signal_emit_stop_by_name(GTK_OBJECT(entry), "key_press_event"); |
|
ce825ff0ecc8
[gaim-migrate @ 2496]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2460
diff
changeset
|
866 | oldpos = pos = gtk_editable_get_position(GTK_EDITABLE(entry)); |
|
ce825ff0ecc8
[gaim-migrate @ 2496]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2460
diff
changeset
|
867 | gtk_editable_insert_text(GTK_EDITABLE(entry), "\n", 1, &pos); |
|
ce825ff0ecc8
[gaim-migrate @ 2496]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2460
diff
changeset
|
868 | if (oldpos == pos) |
|
ce825ff0ecc8
[gaim-migrate @ 2496]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2460
diff
changeset
|
869 | gtk_editable_set_position(GTK_EDITABLE(entry), pos + 1); |
|
830
05c866189abf
[gaim-migrate @ 840]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
829
diff
changeset
|
870 | } else if (event->state & GDK_CONTROL_MASK) { |
| 3122 | 871 | int pos = 0; |
| 872 | switch (event->keyval) { | |
| 873 | case GDK_Up: | |
| 874 | if (!c->send_history) | |
| 875 | break; | |
| 876 | if (!c->send_history->prev) { | |
| 877 | if (c->send_history->data) | |
| 878 | g_free(c->send_history->data); | |
| 879 | c->send_history->data = gtk_editable_get_chars(GTK_EDITABLE(entry), 0, -1); | |
| 880 | } | |
| 881 | if (c->send_history->next && c->send_history->next->data) { | |
| 882 | c->send_history = c->send_history->next; | |
| 883 | gtk_editable_delete_text (GTK_EDITABLE(entry),0,-1); | |
| 884 | gtk_editable_insert_text(GTK_EDITABLE(entry), | |
| 885 | c->send_history->data, | |
| 886 | strlen(c->send_history->data), | |
| 887 | &pos); | |
| 888 | } | |
| 889 | ||
| 890 | break; | |
| 891 | case GDK_Down: | |
| 892 | if (!c->send_history) | |
| 893 | break; | |
| 894 | if (c->send_history->prev) { | |
| 895 | c->send_history = c->send_history->prev; | |
| 896 | if (c->send_history->data) { | |
| 897 | gtk_editable_delete_text (GTK_EDITABLE(entry),0,-1); | |
| 898 | gtk_editable_insert_text (GTK_EDITABLE(entry), c->send_history->data, | |
| 899 | strlen(c->send_history->data), &pos); | |
| 900 | ||
| 901 | } | |
| 902 | } | |
| 903 | break; | |
| 904 | } | |
|
2313
f7f7ff0b8d4a
[gaim-migrate @ 2323]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2303
diff
changeset
|
905 | if (convo_options & OPT_CONVO_CTL_CHARS) { |
|
830
05c866189abf
[gaim-migrate @ 840]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
829
diff
changeset
|
906 | switch (event->keyval) { |
|
05c866189abf
[gaim-migrate @ 840]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
829
diff
changeset
|
907 | case 'i': |
|
1621
9ea4d6ecba4d
[gaim-migrate @ 1631]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1617
diff
changeset
|
908 | case 'I': |
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
909 | quiet_set(c->italic, |
|
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
910 | !gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(c->italic))); |
|
830
05c866189abf
[gaim-migrate @ 840]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
829
diff
changeset
|
911 | do_italic(c->italic, c->entry); |
|
05c866189abf
[gaim-migrate @ 840]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
829
diff
changeset
|
912 | gtk_signal_emit_stop_by_name(GTK_OBJECT(entry), "key_press_event"); |
|
05c866189abf
[gaim-migrate @ 840]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
829
diff
changeset
|
913 | break; |
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
914 | case 'u': /* ctl-u is GDK_Clear, which clears the line */ |
|
1621
9ea4d6ecba4d
[gaim-migrate @ 1631]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1617
diff
changeset
|
915 | case 'U': |
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
916 | quiet_set(c->underline, |
|
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
917 | !gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON |
|
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
918 | (c->underline))); |
|
830
05c866189abf
[gaim-migrate @ 840]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
829
diff
changeset
|
919 | do_underline(c->underline, c->entry); |
|
05c866189abf
[gaim-migrate @ 840]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
829
diff
changeset
|
920 | gtk_signal_emit_stop_by_name(GTK_OBJECT(entry), "key_press_event"); |
|
05c866189abf
[gaim-migrate @ 840]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
829
diff
changeset
|
921 | break; |
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
922 | case 'b': /* ctl-b is GDK_Left, which moves backwards */ |
|
1621
9ea4d6ecba4d
[gaim-migrate @ 1631]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1617
diff
changeset
|
923 | case 'B': |
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
924 | quiet_set(c->bold, |
|
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
925 | !gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(c->bold))); |
|
830
05c866189abf
[gaim-migrate @ 840]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
829
diff
changeset
|
926 | do_bold(c->bold, c->entry); |
|
05c866189abf
[gaim-migrate @ 840]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
829
diff
changeset
|
927 | gtk_signal_emit_stop_by_name(GTK_OBJECT(entry), "key_press_event"); |
|
05c866189abf
[gaim-migrate @ 840]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
829
diff
changeset
|
928 | break; |
|
05c866189abf
[gaim-migrate @ 840]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
829
diff
changeset
|
929 | case 's': |
|
1621
9ea4d6ecba4d
[gaim-migrate @ 1631]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1617
diff
changeset
|
930 | case 'S': |
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
931 | quiet_set(c->strike, |
|
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
932 | !gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(c->strike))); |
|
830
05c866189abf
[gaim-migrate @ 840]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
829
diff
changeset
|
933 | do_strike(c->strike, c->entry); |
|
05c866189abf
[gaim-migrate @ 840]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
829
diff
changeset
|
934 | gtk_signal_emit_stop_by_name(GTK_OBJECT(entry), "key_press_event"); |
|
05c866189abf
[gaim-migrate @ 840]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
829
diff
changeset
|
935 | break; |
| 3159 | 936 | |
| 937 | case '-': | |
| 938 | do_small(NULL, c->entry); | |
| 939 | gtk_signal_emit_stop_by_name(GTK_OBJECT(entry), "key_press_event"); | |
| 940 | break; | |
| 941 | case '=': | |
| 942 | case '+': | |
| 943 | do_big(NULL, c->entry); | |
| 944 | gtk_signal_emit_stop_by_name(GTK_OBJECT(entry), "key_press_event"); | |
| 945 | break; | |
| 946 | case '0': | |
| 947 | do_normal(NULL, c->entry); | |
| 948 | gtk_signal_emit_stop_by_name(GTK_OBJECT(entry), "key_press_event"); | |
| 949 | break; | |
| 950 | case 'f': | |
| 951 | case 'F': | |
| 952 | quiet_set(c->font, | |
| 953 | !gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(c->font))); | |
| 954 | toggle_font(c->font, c); | |
| 955 | gtk_signal_emit_stop_by_name(GTK_OBJECT(entry), "key_press_event"); | |
| 956 | break; | |
| 957 | case 'c': | |
| 958 | case 'C': | |
| 959 | quiet_set(c->fgcolorbtn, | |
| 960 | !gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(c->fgcolorbtn))); | |
| 961 | toggle_fg_color(c->fgcolorbtn, c); | |
| 962 | gtk_signal_emit_stop_by_name(GTK_OBJECT(entry), "key_press_event"); | |
| 963 | break; | |
|
830
05c866189abf
[gaim-migrate @ 840]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
829
diff
changeset
|
964 | } |
|
05c866189abf
[gaim-migrate @ 840]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
829
diff
changeset
|
965 | } |
|
2313
f7f7ff0b8d4a
[gaim-migrate @ 2323]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2303
diff
changeset
|
966 | if (convo_options & OPT_CONVO_CTL_SMILEYS) { |
|
830
05c866189abf
[gaim-migrate @ 840]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
829
diff
changeset
|
967 | char buf[7]; |
|
05c866189abf
[gaim-migrate @ 840]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
829
diff
changeset
|
968 | buf[0] = '\0'; |
|
05c866189abf
[gaim-migrate @ 840]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
829
diff
changeset
|
969 | switch (event->keyval) { |
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
970 | case '1': |
|
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
971 | sprintf(buf, ":-)"); |
|
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
972 | break; |
|
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
973 | case '2': |
|
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
974 | sprintf(buf, ":-("); |
|
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
975 | break; |
|
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
976 | case '3': |
|
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
977 | sprintf(buf, ";-)"); |
|
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
978 | break; |
|
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
979 | case '4': |
|
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
980 | sprintf(buf, ":-P"); |
|
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
981 | break; |
|
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
982 | case '5': |
|
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
983 | sprintf(buf, "=-O"); |
|
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
984 | break; |
|
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
985 | case '6': |
|
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
986 | sprintf(buf, ":-*"); |
|
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
987 | break; |
|
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
988 | case '7': |
|
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
989 | sprintf(buf, ">:o"); |
|
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
990 | break; |
|
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
991 | case '8': |
|
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
992 | sprintf(buf, "8-)"); |
|
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
993 | break; |
|
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
994 | case '!': |
|
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
995 | sprintf(buf, ":-$"); |
|
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
996 | break; |
|
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
997 | case '@': |
|
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
998 | sprintf(buf, ":-!"); |
|
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
999 | break; |
|
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
1000 | case '#': |
|
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
1001 | sprintf(buf, ":-["); |
|
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
1002 | break; |
|
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
1003 | case '$': |
|
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
1004 | sprintf(buf, "O:-)"); |
|
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
1005 | break; |
|
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
1006 | case '%': |
|
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
1007 | sprintf(buf, ":-/"); |
|
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
1008 | break; |
|
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
1009 | case '^': |
|
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
1010 | sprintf(buf, ":'("); |
|
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
1011 | break; |
|
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
1012 | case '&': |
|
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
1013 | sprintf(buf, ":-X"); |
|
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
1014 | break; |
|
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
1015 | case '*': |
|
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
1016 | sprintf(buf, ":-D"); |
|
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
1017 | break; |
|
830
05c866189abf
[gaim-migrate @ 840]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
829
diff
changeset
|
1018 | } |
|
05c866189abf
[gaim-migrate @ 840]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
829
diff
changeset
|
1019 | if (buf[0]) { |
|
2725
a844d0964552
[gaim-migrate @ 2738]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2722
diff
changeset
|
1020 | if (GTK_OLD_EDITABLE(c->entry)->has_selection) { |
|
a844d0964552
[gaim-migrate @ 2738]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2722
diff
changeset
|
1021 | int finish = GTK_OLD_EDITABLE(c->entry)->selection_end_pos; |
|
830
05c866189abf
[gaim-migrate @ 840]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
829
diff
changeset
|
1022 | gtk_editable_insert_text(GTK_EDITABLE(c->entry), |
|
05c866189abf
[gaim-migrate @ 840]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
829
diff
changeset
|
1023 | buf, strlen(buf), &finish); |
|
05c866189abf
[gaim-migrate @ 840]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
829
diff
changeset
|
1024 | } else { |
|
2725
a844d0964552
[gaim-migrate @ 2738]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2722
diff
changeset
|
1025 | pos = GTK_OLD_EDITABLE(c->entry)->current_pos; |
|
830
05c866189abf
[gaim-migrate @ 840]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
829
diff
changeset
|
1026 | gtk_editable_insert_text(GTK_EDITABLE(c->entry), |
|
05c866189abf
[gaim-migrate @ 840]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
829
diff
changeset
|
1027 | buf, strlen(buf), &pos); |
|
05c866189abf
[gaim-migrate @ 840]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
829
diff
changeset
|
1028 | } |
|
05c866189abf
[gaim-migrate @ 840]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
829
diff
changeset
|
1029 | gtk_signal_emit_stop_by_name(GTK_OBJECT(entry), "key_press_event"); |
|
05c866189abf
[gaim-migrate @ 840]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
829
diff
changeset
|
1030 | } |
|
573
a267d68a8240
[gaim-migrate @ 583]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
570
diff
changeset
|
1031 | } |
|
2631
d6b85863554c
[gaim-migrate @ 2644]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2625
diff
changeset
|
1032 | if (event->keyval == 'l') { |
|
2340
f91b74dc2de2
[gaim-migrate @ 2353]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2335
diff
changeset
|
1033 | gtk_imhtml_clear(GTK_IMHTML(c->text)); |
|
2631
d6b85863554c
[gaim-migrate @ 2644]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2625
diff
changeset
|
1034 | g_string_free(c->history, TRUE); |
|
d6b85863554c
[gaim-migrate @ 2644]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2625
diff
changeset
|
1035 | c->history = g_string_new(""); |
| 3168 | 1036 | } else if ((event->keyval == 'w') && (convo_options & OPT_CONVO_CTL_W_CLOSES)) { |
| 3159 | 1037 | gtk_signal_emit_stop_by_name(GTK_OBJECT(entry), "key_press_event"); |
| 1038 | close_callback(c->close, c); | |
| 1039 | c = NULL; | |
| 1040 | return TRUE; | |
| 1041 | } else if (event->keyval == 'n') { | |
| 1042 | gtk_signal_emit_stop_by_name(GTK_OBJECT(entry), "key_press_event"); | |
| 1043 | show_im_dialog(); | |
| 1044 | } else if (event->keyval == 'z') { | |
| 1045 | gtk_signal_emit_stop_by_name(GTK_OBJECT(entry), "key_press_event"); | |
| 1046 | XIconifyWindow(GDK_DISPLAY(), | |
| 1047 | GDK_WINDOW_XWINDOW(c->window->window), | |
| 1048 | ((_XPrivDisplay)GDK_DISPLAY())->default_screen); | |
|
2631
d6b85863554c
[gaim-migrate @ 2644]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2625
diff
changeset
|
1049 | } |
| 3159 | 1050 | |
| 1051 | ||
|
2313
f7f7ff0b8d4a
[gaim-migrate @ 2323]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2303
diff
changeset
|
1052 | if ((!c->is_chat && (im_options & OPT_IM_ONE_WINDOW)) || |
|
2372
c24942700dfd
[gaim-migrate @ 2385]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2363
diff
changeset
|
1053 | (c->is_chat && (chat_options & OPT_CHAT_ONE_WINDOW))) { |
|
1692
ff73167542e9
[gaim-migrate @ 1702]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1663
diff
changeset
|
1054 | GtkWidget *notebook = (c->is_chat ? chat_notebook : convo_notebook); |
|
1595
d4c621dfe446
[gaim-migrate @ 1605]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1594
diff
changeset
|
1055 | if (event->keyval == '[') { |
|
1692
ff73167542e9
[gaim-migrate @ 1702]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1663
diff
changeset
|
1056 | gtk_notebook_prev_page(GTK_NOTEBOOK(notebook)); |
|
1587
5080af654308
[gaim-migrate @ 1597]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1583
diff
changeset
|
1057 | gtk_signal_emit_stop_by_name(GTK_OBJECT(entry), "key_press_event"); |
|
1595
d4c621dfe446
[gaim-migrate @ 1605]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1594
diff
changeset
|
1058 | } else if (event->keyval == ']') { |
|
1692
ff73167542e9
[gaim-migrate @ 1702]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1663
diff
changeset
|
1059 | gtk_notebook_next_page(GTK_NOTEBOOK(notebook)); |
|
1587
5080af654308
[gaim-migrate @ 1597]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1583
diff
changeset
|
1060 | gtk_signal_emit_stop_by_name(GTK_OBJECT(entry), "key_press_event"); |
|
1595
d4c621dfe446
[gaim-migrate @ 1605]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1594
diff
changeset
|
1061 | } else if (event->keyval == GDK_Tab) { |
|
2843
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
1062 | move_next_tab(GTK_NOTEBOOK(notebook), c->is_chat); |
|
1587
5080af654308
[gaim-migrate @ 1597]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1583
diff
changeset
|
1063 | gtk_signal_emit_stop_by_name(GTK_OBJECT(entry), "key_press_event"); |
|
2735
fbf1a8283184
[gaim-migrate @ 2748]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2725
diff
changeset
|
1064 | return TRUE; |
|
1587
5080af654308
[gaim-migrate @ 1597]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1583
diff
changeset
|
1065 | } |
|
5080af654308
[gaim-migrate @ 1597]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1583
diff
changeset
|
1066 | } |
| 2385 | 1067 | } else if ((event->keyval == GDK_Tab) && c->is_chat && (chat_options & OPT_CHAT_TAB_COMPLETE)) { |
| 1068 | tab_complete(c); | |
| 1069 | gtk_signal_emit_stop_by_name(GTK_OBJECT(entry), "key_press_event"); | |
|
2725
a844d0964552
[gaim-migrate @ 2738]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2722
diff
changeset
|
1070 | return TRUE; |
|
2313
f7f7ff0b8d4a
[gaim-migrate @ 2323]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2303
diff
changeset
|
1071 | } else if (((!c->is_chat && (im_options & OPT_IM_ONE_WINDOW)) || |
|
2372
c24942700dfd
[gaim-migrate @ 2385]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2363
diff
changeset
|
1072 | (c->is_chat && (chat_options & OPT_CHAT_ONE_WINDOW))) && |
|
2421
009ae3cf0e83
[gaim-migrate @ 2434]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2386
diff
changeset
|
1073 | (event->state & GDK_MOD1_MASK) && (event->keyval > '0') && (event->keyval <= '9')) { |
|
1692
ff73167542e9
[gaim-migrate @ 1702]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1663
diff
changeset
|
1074 | GtkWidget *notebook = (c->is_chat ? chat_notebook : convo_notebook); |
|
ff73167542e9
[gaim-migrate @ 1702]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1663
diff
changeset
|
1075 | gtk_notebook_set_page(GTK_NOTEBOOK(notebook), event->keyval - '1'); |
|
1621
9ea4d6ecba4d
[gaim-migrate @ 1631]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1617
diff
changeset
|
1076 | gtk_signal_emit_stop_by_name(GTK_OBJECT(entry), "key_press_event"); |
|
573
a267d68a8240
[gaim-migrate @ 583]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
570
diff
changeset
|
1077 | } |
| 66 | 1078 | |
| 2993 | 1079 | if (c && (!(misc_options & OPT_MISC_STEALTH_TYPING)) && !c->is_chat) { |
| 1080 | char *txt = gtk_editable_get_chars(GTK_EDITABLE(c->entry), 0, -1); | |
| 1081 | if ((strlen(txt) == 0 && event->keyval < 256 && isprint(event->keyval)) || | |
| 1082 | (c->type_again != 0 && time(NULL) > c->type_again)) { | |
| 3001 | 1083 | int timeout = serv_send_typing(c->gc, c->name, TRUE); |
| 2993 | 1084 | if (timeout) |
| 1085 | c->type_again = time(NULL) + timeout; | |
| 1086 | else | |
| 1087 | c->type_again = 0; | |
| 1088 | } | |
| 1089 | else if (strlen(txt) == 1) { | |
| 1090 | if ((GTK_OLD_EDITABLE(c->entry)->current_pos == 1 && event->keyval == GDK_BackSpace) || | |
| 1091 | (GTK_OLD_EDITABLE(c->entry)->current_pos == 0 && event->keyval == GDK_Delete)) | |
| 3001 | 1092 | serv_send_typing(c->gc, c->name, FALSE); |
| 2993 | 1093 | } else if (GTK_OLD_EDITABLE(c->entry)->selection_start_pos == 0) { |
| 1094 | if (GTK_OLD_EDITABLE(c->entry)->selection_end_pos == strlen(txt) && | |
| 1095 | (event->keyval == GDK_BackSpace || event->keyval == GDK_Delete)) | |
| 3001 | 1096 | serv_send_typing(c->gc, c->name, FALSE); |
| 2993 | 1097 | } |
| 1098 | g_free(txt); | |
| 1099 | } | |
|
2725
a844d0964552
[gaim-migrate @ 2738]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2722
diff
changeset
|
1100 | return FALSE; |
| 66 | 1101 | } |
| 1102 | ||
| 1103 | ||
|
472
9a5b8da2d760
[gaim-migrate @ 482]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
411
diff
changeset
|
1104 | void send_callback(GtkWidget *widget, struct conversation *c) |
| 66 | 1105 | { |
|
2102
2d024ad2e07b
[gaim-migrate @ 2112]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2094
diff
changeset
|
1106 | char *buf, *buf2; |
| 3044 | 1107 | int limit; |
| 1108 | gulong length=0; | |
|
2123
4cfdde0aa3f1
[gaim-migrate @ 2133]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2111
diff
changeset
|
1109 | int err = 0; |
| 3122 | 1110 | GList *first; |
| 66 | 1111 | |
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
1112 | if (!c->gc) |
|
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
1113 | return; |
|
1100
efc7d10c7826
[gaim-migrate @ 1110]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1078
diff
changeset
|
1114 | |
| 3035 | 1115 | |
|
1100
efc7d10c7826
[gaim-migrate @ 1110]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1078
diff
changeset
|
1116 | buf2 = gtk_editable_get_chars(GTK_EDITABLE(c->entry), 0, -1); |
|
2372
c24942700dfd
[gaim-migrate @ 2385]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2363
diff
changeset
|
1117 | limit = 32 * 1024; /* you shouldn't be sending more than 32k in your messages. that's a book. */ |
|
738
57b9e8897640
[gaim-migrate @ 748]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
700
diff
changeset
|
1118 | buf = g_malloc(limit); |
|
57b9e8897640
[gaim-migrate @ 748]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
700
diff
changeset
|
1119 | g_snprintf(buf, limit, "%s", buf2); |
|
753
3a7518fde9de
[gaim-migrate @ 763]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
745
diff
changeset
|
1120 | g_free(buf2); |
|
796
afdd0e29d634
[gaim-migrate @ 806]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
795
diff
changeset
|
1121 | if (!strlen(buf)) { |
|
afdd0e29d634
[gaim-migrate @ 806]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
795
diff
changeset
|
1122 | g_free(buf); |
|
afdd0e29d634
[gaim-migrate @ 806]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
795
diff
changeset
|
1123 | return; |
|
afdd0e29d634
[gaim-migrate @ 806]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
795
diff
changeset
|
1124 | } |
|
472
9a5b8da2d760
[gaim-migrate @ 482]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
411
diff
changeset
|
1125 | |
| 3122 | 1126 | first = g_list_first(c->send_history); |
| 1127 | if (first->data) | |
| 1128 | g_free(first->data); | |
| 1129 | first->data = g_strdup(buf); | |
| 1130 | c->send_history = g_list_prepend(first, NULL); | |
| 1131 | ||
|
738
57b9e8897640
[gaim-migrate @ 748]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
700
diff
changeset
|
1132 | buf2 = g_malloc(limit); |
|
57b9e8897640
[gaim-migrate @ 748]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
700
diff
changeset
|
1133 | |
|
2706
ac9384d37d6c
[gaim-migrate @ 2719]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2699
diff
changeset
|
1134 | if (c->gc->flags & OPT_CONN_HTML) { |
|
2313
f7f7ff0b8d4a
[gaim-migrate @ 2323]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2303
diff
changeset
|
1135 | if (convo_options & OPT_CONVO_SEND_LINKS) |
|
1889
3084b2e1dd99
[gaim-migrate @ 1899]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1881
diff
changeset
|
1136 | linkify_text(buf); |
|
3084b2e1dd99
[gaim-migrate @ 1899]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1881
diff
changeset
|
1137 | |
|
1370
de786e8d0146
[gaim-migrate @ 1380]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1352
diff
changeset
|
1138 | if (font_options & OPT_FONT_BOLD) { |
|
de786e8d0146
[gaim-migrate @ 1380]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1352
diff
changeset
|
1139 | g_snprintf(buf2, limit, "<B>%s</B>", buf); |
|
de786e8d0146
[gaim-migrate @ 1380]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1352
diff
changeset
|
1140 | strcpy(buf, buf2); |
|
de786e8d0146
[gaim-migrate @ 1380]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1352
diff
changeset
|
1141 | } |
| 66 | 1142 | |
|
1370
de786e8d0146
[gaim-migrate @ 1380]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1352
diff
changeset
|
1143 | if (font_options & OPT_FONT_ITALIC) { |
|
de786e8d0146
[gaim-migrate @ 1380]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1352
diff
changeset
|
1144 | g_snprintf(buf2, limit, "<I>%s</I>", buf); |
|
de786e8d0146
[gaim-migrate @ 1380]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1352
diff
changeset
|
1145 | strcpy(buf, buf2); |
|
de786e8d0146
[gaim-migrate @ 1380]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1352
diff
changeset
|
1146 | } |
| 66 | 1147 | |
|
1370
de786e8d0146
[gaim-migrate @ 1380]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1352
diff
changeset
|
1148 | if (font_options & OPT_FONT_UNDERLINE) { |
|
de786e8d0146
[gaim-migrate @ 1380]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1352
diff
changeset
|
1149 | g_snprintf(buf2, limit, "<U>%s</U>", buf); |
|
de786e8d0146
[gaim-migrate @ 1380]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1352
diff
changeset
|
1150 | strcpy(buf, buf2); |
|
de786e8d0146
[gaim-migrate @ 1380]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1352
diff
changeset
|
1151 | } |
| 66 | 1152 | |
|
1370
de786e8d0146
[gaim-migrate @ 1380]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1352
diff
changeset
|
1153 | if (font_options & OPT_FONT_STRIKE) { |
|
de786e8d0146
[gaim-migrate @ 1380]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1352
diff
changeset
|
1154 | g_snprintf(buf2, limit, "<STRIKE>%s</STRIKE>", buf); |
|
de786e8d0146
[gaim-migrate @ 1380]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1352
diff
changeset
|
1155 | strcpy(buf, buf2); |
|
de786e8d0146
[gaim-migrate @ 1380]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1352
diff
changeset
|
1156 | } |
|
101
2267d0c21da2
[gaim-migrate @ 111]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
88
diff
changeset
|
1157 | |
|
1370
de786e8d0146
[gaim-migrate @ 1380]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1352
diff
changeset
|
1158 | if ((font_options & OPT_FONT_FACE) || c->hasfont) { |
|
de786e8d0146
[gaim-migrate @ 1380]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1352
diff
changeset
|
1159 | g_snprintf(buf2, limit, "<FONT FACE=\"%s\">%s</FONT>", c->fontface, buf); |
|
de786e8d0146
[gaim-migrate @ 1380]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1352
diff
changeset
|
1160 | strcpy(buf, buf2); |
|
de786e8d0146
[gaim-migrate @ 1380]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1352
diff
changeset
|
1161 | } |
|
488
e1ec77ef4cf3
[gaim-migrate @ 498]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
474
diff
changeset
|
1162 | |
|
2699
8813557b1ce9
[gaim-migrate @ 2712]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2681
diff
changeset
|
1163 | if (font_options & OPT_FONT_SIZE) { |
|
8813557b1ce9
[gaim-migrate @ 2712]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2681
diff
changeset
|
1164 | g_snprintf(buf2, limit, "<FONT SIZE=\"%d\">%s</FONT>", fontsize, buf); |
|
1441
71e46d36113b
[gaim-migrate @ 1451]
Decklin Foster <decklin@red-bean.com>
parents:
1440
diff
changeset
|
1165 | strcpy(buf, buf2); |
|
71e46d36113b
[gaim-migrate @ 1451]
Decklin Foster <decklin@red-bean.com>
parents:
1440
diff
changeset
|
1166 | } |
|
71e46d36113b
[gaim-migrate @ 1451]
Decklin Foster <decklin@red-bean.com>
parents:
1440
diff
changeset
|
1167 | |
|
1370
de786e8d0146
[gaim-migrate @ 1380]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1352
diff
changeset
|
1168 | if ((font_options & OPT_FONT_FGCOL) || c->hasfg) { |
|
de786e8d0146
[gaim-migrate @ 1380]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1352
diff
changeset
|
1169 | g_snprintf(buf2, limit, "<FONT COLOR=\"#%02X%02X%02X\">%s</FONT>", c->fgcol.red, |
|
de786e8d0146
[gaim-migrate @ 1380]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1352
diff
changeset
|
1170 | c->fgcol.green, c->fgcol.blue, buf); |
|
de786e8d0146
[gaim-migrate @ 1380]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1352
diff
changeset
|
1171 | strcpy(buf, buf2); |
|
de786e8d0146
[gaim-migrate @ 1380]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1352
diff
changeset
|
1172 | } |
|
666
0a313fec9a15
[gaim-migrate @ 676]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
661
diff
changeset
|
1173 | |
|
1370
de786e8d0146
[gaim-migrate @ 1380]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1352
diff
changeset
|
1174 | if ((font_options & OPT_FONT_BGCOL) || c->hasbg) { |
|
2372
c24942700dfd
[gaim-migrate @ 2385]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2363
diff
changeset
|
1175 | g_snprintf(buf2, limit, "<BODY BGCOLOR=\"#%02X%02X%02X\">%s</BODY>", |
|
c24942700dfd
[gaim-migrate @ 2385]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2363
diff
changeset
|
1176 | c->bgcol.red, c->bgcol.green, c->bgcol.blue, buf); |
|
1370
de786e8d0146
[gaim-migrate @ 1380]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1352
diff
changeset
|
1177 | strcpy(buf, buf2); |
|
de786e8d0146
[gaim-migrate @ 1380]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1352
diff
changeset
|
1178 | } |
|
666
0a313fec9a15
[gaim-migrate @ 676]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
661
diff
changeset
|
1179 | } |
|
0a313fec9a15
[gaim-migrate @ 676]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
661
diff
changeset
|
1180 | |
|
1881
bcd5d457cdbb
[gaim-migrate @ 1891]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1872
diff
changeset
|
1181 | quiet_set(c->bold, FALSE); |
|
bcd5d457cdbb
[gaim-migrate @ 1891]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1872
diff
changeset
|
1182 | quiet_set(c->strike, FALSE); |
|
bcd5d457cdbb
[gaim-migrate @ 1891]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1872
diff
changeset
|
1183 | quiet_set(c->italic, FALSE); |
|
bcd5d457cdbb
[gaim-migrate @ 1891]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1872
diff
changeset
|
1184 | quiet_set(c->underline, FALSE); |
|
bcd5d457cdbb
[gaim-migrate @ 1891]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1872
diff
changeset
|
1185 | quiet_set(c->font, FALSE); |
|
bcd5d457cdbb
[gaim-migrate @ 1891]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1872
diff
changeset
|
1186 | quiet_set(c->fgcolorbtn, FALSE); |
|
bcd5d457cdbb
[gaim-migrate @ 1891]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1872
diff
changeset
|
1187 | quiet_set(c->bgcolorbtn, FALSE); |
|
bcd5d457cdbb
[gaim-migrate @ 1891]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1872
diff
changeset
|
1188 | quiet_set(c->link, FALSE); |
|
bcd5d457cdbb
[gaim-migrate @ 1891]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1872
diff
changeset
|
1189 | gtk_widget_grab_focus(c->entry); |
|
bcd5d457cdbb
[gaim-migrate @ 1891]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1872
diff
changeset
|
1190 | |
|
101
2267d0c21da2
[gaim-migrate @ 111]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
88
diff
changeset
|
1191 | { |
|
391
677e4414a83f
[gaim-migrate @ 401]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
389
diff
changeset
|
1192 | char *buffy = g_strdup(buf); |
|
472
9a5b8da2d760
[gaim-migrate @ 482]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
411
diff
changeset
|
1193 | enum gaim_event evnt = c->is_chat ? event_chat_send : event_im_send; |
|
2345
2d59281e13fd
[gaim-migrate @ 2358]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2340
diff
changeset
|
1194 | int plugin_return = plugin_event(evnt, c->gc, |
|
2372
c24942700dfd
[gaim-migrate @ 2385]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2363
diff
changeset
|
1195 | c->is_chat ? (void *)c->id : c->name, |
|
c24942700dfd
[gaim-migrate @ 2385]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2363
diff
changeset
|
1196 | &buffy, 0); |
|
391
677e4414a83f
[gaim-migrate @ 401]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
389
diff
changeset
|
1197 | if (!buffy) { |
|
102
d3ae952a25ca
[gaim-migrate @ 112]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
101
diff
changeset
|
1198 | g_free(buf2); |
|
796
afdd0e29d634
[gaim-migrate @ 806]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
795
diff
changeset
|
1199 | g_free(buf); |
|
102
d3ae952a25ca
[gaim-migrate @ 112]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
101
diff
changeset
|
1200 | return; |
|
d3ae952a25ca
[gaim-migrate @ 112]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
101
diff
changeset
|
1201 | } |
|
1100
efc7d10c7826
[gaim-migrate @ 1110]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1078
diff
changeset
|
1202 | if (plugin_return) { |
|
2139
6e5f9b77a190
[gaim-migrate @ 2149]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2138
diff
changeset
|
1203 | gtk_editable_delete_text(GTK_EDITABLE(c->entry), 0, -1); |
|
1100
efc7d10c7826
[gaim-migrate @ 1110]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1078
diff
changeset
|
1204 | g_free(buffy); |
|
efc7d10c7826
[gaim-migrate @ 1110]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1078
diff
changeset
|
1205 | g_free(buf2); |
|
efc7d10c7826
[gaim-migrate @ 1110]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1078
diff
changeset
|
1206 | g_free(buf); |
|
efc7d10c7826
[gaim-migrate @ 1110]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1078
diff
changeset
|
1207 | return; |
|
efc7d10c7826
[gaim-migrate @ 1110]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1078
diff
changeset
|
1208 | } |
|
738
57b9e8897640
[gaim-migrate @ 748]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
700
diff
changeset
|
1209 | g_snprintf(buf, limit, "%s", buffy); |
|
391
677e4414a83f
[gaim-migrate @ 401]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
389
diff
changeset
|
1210 | g_free(buffy); |
|
101
2267d0c21da2
[gaim-migrate @ 111]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
88
diff
changeset
|
1211 | } |
| 3048 | 1212 | |
|
472
9a5b8da2d760
[gaim-migrate @ 482]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
411
diff
changeset
|
1213 | if (!c->is_chat) { |
|
2102
2d024ad2e07b
[gaim-migrate @ 2112]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2094
diff
changeset
|
1214 | char *buffy; |
| 3048 | 1215 | gboolean binary = FALSE; |
|
2102
2d024ad2e07b
[gaim-migrate @ 2112]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2094
diff
changeset
|
1216 | |
|
2d024ad2e07b
[gaim-migrate @ 2112]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2094
diff
changeset
|
1217 | buffy = g_strdup(buf); |
|
2104
8d12ab6f798c
[gaim-migrate @ 2114]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2102
diff
changeset
|
1218 | plugin_event(event_im_displayed_sent, c->gc, c->name, &buffy, 0); |
|
2102
2d024ad2e07b
[gaim-migrate @ 2112]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2094
diff
changeset
|
1219 | if (buffy) { |
|
2231
9d8593ab093e
[gaim-migrate @ 2241]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2227
diff
changeset
|
1220 | int imflags = 0; |
|
2239
d4b42cadb385
[gaim-migrate @ 2249]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2231
diff
changeset
|
1221 | if (c->check && gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(c->check))) |
|
2231
9d8593ab093e
[gaim-migrate @ 2241]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2227
diff
changeset
|
1222 | imflags = IM_FLAG_CHECKBOX; |
| 3048 | 1223 | |
| 3033 | 1224 | if (c->images) { |
| 3159 | 1225 | int id = 0, offset = 0; |
| 1226 | char *bigbuf = NULL; | |
| 3033 | 1227 | GSList *tmplist = c->images; |
| 1228 | id = 1; | |
| 3048 | 1229 | |
| 3033 | 1230 | while (tmplist) { |
| 3044 | 1231 | FILE *imgfile; |
| 1232 | char *filename; | |
| 1233 | struct stat st; | |
| 3033 | 1234 | char imgtag[1024]; |
| 3048 | 1235 | |
| 3033 | 1236 | if (stat(tmplist->data, &st) != 0) { |
| 1237 | debug_printf("Could not stat %s\n", tmplist->data); | |
| 3048 | 1238 | tmplist = tmplist->next; |
| 1239 | continue; | |
| 3033 | 1240 | } |
| 3044 | 1241 | |
| 1242 | /* Here we check to make sure the user still wants to send the | |
| 1243 | * image. He may have deleted the <img> tag in which case we | |
| 1244 | * don't want to send the binary data. */ | |
| 1245 | filename = tmplist->data; | |
| 1246 | while (strchr(filename, '/')) | |
| 1247 | filename = strchr(filename, '/') + 1; | |
| 1248 | g_snprintf(imgtag, sizeof(imgtag), | |
| 1249 | "<IMG SRC=\"file://%s\" ID=\"%d\" DATASIZE=\"%d\">", | |
| 1250 | filename, id, (int)st.st_size); | |
| 3048 | 1251 | |
| 1252 | if (strstr(buffy, imgtag) == 0) { | |
| 1253 | debug_printf("Not sending image: %s\n", tmplist->data); | |
| 3044 | 1254 | tmplist = tmplist->next; |
| 1255 | continue; | |
| 1256 | } | |
| 3048 | 1257 | if (!binary) { |
| 1258 | length = strlen(buffy) + strlen("<BINARY></BINARY>"); | |
| 1259 | bigbuf = g_malloc(length + 1); | |
| 1260 | g_snprintf(bigbuf, strlen(buffy) + strlen("<BINARY> ") + 1, | |
| 1261 | "%s<BINARY>", buffy); | |
| 1262 | offset = strlen(buffy) + strlen("<BINARY>"); | |
| 1263 | binary = TRUE; | |
| 1264 | } | |
| 3033 | 1265 | g_snprintf(imgtag, sizeof(imgtag), |
| 1266 | "<DATA ID=\"%d\" SIZE=\"%d\">", | |
| 3044 | 1267 | id, (int)st.st_size); |
| 1268 | ||
| 1269 | length = length + strlen(imgtag) + st.st_size + strlen("</DATA>");; | |
| 3048 | 1270 | bigbuf = g_realloc(bigbuf, length + 1); |
| 3044 | 1271 | if (!(imgfile = fopen(tmplist->data, "r"))) { |
| 3033 | 1272 | debug_printf("Could not open %s\n", tmplist->data); |
| 3048 | 1273 | tmplist = tmplist->next; |
| 3044 | 1274 | continue; |
| 3033 | 1275 | } |
| 1276 | g_snprintf(bigbuf + offset, strlen(imgtag) + 1, "%s", imgtag); | |
| 1277 | offset = offset + strlen(imgtag); | |
| 3044 | 1278 | offset = offset + fread(bigbuf + offset, 1, st.st_size, imgfile); |
| 1279 | fclose(imgfile); | |
| 1280 | g_snprintf(bigbuf + offset, strlen("</DATA>") + 1, "</DATA>"); | |
| 3033 | 1281 | offset= offset + strlen("</DATA>"); |
| 1282 | id++; | |
| 1283 | tmplist = tmplist->next; | |
| 1284 | } | |
| 3048 | 1285 | if (binary) { |
| 1286 | g_snprintf(bigbuf + offset, strlen("</BINARY>") + 1, "</BINARY>"); | |
| 1287 | err =serv_send_im(c->gc, c->name, bigbuf, length, imflags); | |
| 1288 | } else { | |
| 1289 | err = serv_send_im(c->gc, c->name, buffy, -1, imflags); | |
| 1290 | } | |
| 3044 | 1291 | if (err > 0) { |
| 1292 | GSList *tempy = c->images; | |
| 1293 | while (tempy) { | |
| 1294 | g_free(tempy->data); | |
| 1295 | tempy = tempy->next; | |
| 1296 | } | |
| 1297 | g_slist_free(tempy); | |
| 1298 | c->images = NULL; | |
| 3048 | 1299 | if (binary) |
| 1300 | write_to_conv(c, bigbuf, WFLAG_SEND, NULL, time(NULL), length); | |
| 1301 | else | |
| 1302 | write_to_conv(c, buffy, WFLAG_SEND, NULL, time(NULL), -1); | |
|
3060
ec62758f47b3
[gaim-migrate @ 3074]
Robert McQueen <robot101@debian.org>
parents:
3056
diff
changeset
|
1303 | if (c->makesound) |
|
ec62758f47b3
[gaim-migrate @ 3074]
Robert McQueen <robot101@debian.org>
parents:
3056
diff
changeset
|
1304 | play_sound(SND_SEND); |
| 3033 | 1305 | if (im_options & OPT_IM_POPDOWN) |
| 1306 | gtk_widget_hide(c->window); | |
| 1307 | ||
| 3044 | 1308 | |
| 3033 | 1309 | } |
| 3048 | 1310 | if (binary) |
| 1311 | g_free(bigbuf); | |
| 3033 | 1312 | } else { |
| 3044 | 1313 | err =serv_send_im(c->gc, c->name, buffy, -1, imflags); |
| 1314 | if (err > 0) { | |
| 3033 | 1315 | write_to_conv(c, buf, WFLAG_SEND, NULL, time(NULL), -1); |
|
3060
ec62758f47b3
[gaim-migrate @ 3074]
Robert McQueen <robot101@debian.org>
parents:
3056
diff
changeset
|
1316 | if (c->makesound) |
|
ec62758f47b3
[gaim-migrate @ 3074]
Robert McQueen <robot101@debian.org>
parents:
3056
diff
changeset
|
1317 | play_sound(SND_SEND); |
| 3044 | 1318 | if (im_options & OPT_IM_POPDOWN) |
| 1319 | gtk_widget_hide(c->window); | |
| 1320 | } | |
| 3033 | 1321 | } |
|
2102
2d024ad2e07b
[gaim-migrate @ 2112]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2094
diff
changeset
|
1322 | g_free(buffy); |
|
2d024ad2e07b
[gaim-migrate @ 2112]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2094
diff
changeset
|
1323 | } |
| 3033 | 1324 | |
|
502
4424773229de
[gaim-migrate @ 512]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
494
diff
changeset
|
1325 | } else { |
|
2167
cbb558585911
[gaim-migrate @ 2177]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2160
diff
changeset
|
1326 | err = serv_chat_send(c->gc, c->id, buf); |
|
502
4424773229de
[gaim-migrate @ 512]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
494
diff
changeset
|
1327 | |
|
4424773229de
[gaim-migrate @ 512]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
494
diff
changeset
|
1328 | /* no sound because we do that when we receive our message */ |
|
472
9a5b8da2d760
[gaim-migrate @ 482]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
411
diff
changeset
|
1329 | } |
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
1330 | |
|
2123
4cfdde0aa3f1
[gaim-migrate @ 2133]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2111
diff
changeset
|
1331 | g_free(buf2); |
|
4cfdde0aa3f1
[gaim-migrate @ 2133]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2111
diff
changeset
|
1332 | g_free(buf); |
|
4cfdde0aa3f1
[gaim-migrate @ 2133]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2111
diff
changeset
|
1333 | |
|
4cfdde0aa3f1
[gaim-migrate @ 2133]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2111
diff
changeset
|
1334 | if (err < 0) { |
|
4cfdde0aa3f1
[gaim-migrate @ 2133]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2111
diff
changeset
|
1335 | if (err == -E2BIG) |
|
4cfdde0aa3f1
[gaim-migrate @ 2133]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2111
diff
changeset
|
1336 | do_error_dialog(_("Unable to send message: too large"), _("Message Error")); |
| 3044 | 1337 | else if (err == -ENOTCONN) |
| 1338 | debug_printf("Not yet connected\n"); | |
|
2123
4cfdde0aa3f1
[gaim-migrate @ 2133]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2111
diff
changeset
|
1339 | else |
|
4cfdde0aa3f1
[gaim-migrate @ 2133]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2111
diff
changeset
|
1340 | do_error_dialog(_("Unable to send message: Unknown reason"), _("Message Error")); |
|
2832
1dd956f89a5e
[gaim-migrate @ 2845]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2831
diff
changeset
|
1341 | } else { |
|
2123
4cfdde0aa3f1
[gaim-migrate @ 2133]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2111
diff
changeset
|
1342 | gtk_editable_delete_text(GTK_EDITABLE(c->entry), 0, -1); |
|
4cfdde0aa3f1
[gaim-migrate @ 2133]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2111
diff
changeset
|
1343 | |
|
2832
1dd956f89a5e
[gaim-migrate @ 2845]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2831
diff
changeset
|
1344 | if ((err > 0) && (away_options & OPT_AWAY_BACK_ON_IM)) { |
|
2123
4cfdde0aa3f1
[gaim-migrate @ 2133]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2111
diff
changeset
|
1345 | if (awaymessage != NULL) { |
|
4cfdde0aa3f1
[gaim-migrate @ 2133]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2111
diff
changeset
|
1346 | do_im_back(); |
|
4cfdde0aa3f1
[gaim-migrate @ 2133]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2111
diff
changeset
|
1347 | } else if (c->gc->away) { |
|
4cfdde0aa3f1
[gaim-migrate @ 2133]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2111
diff
changeset
|
1348 | serv_set_away(c->gc, GAIM_AWAY_CUSTOM, NULL); |
|
4cfdde0aa3f1
[gaim-migrate @ 2133]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2111
diff
changeset
|
1349 | } |
|
1403
6480f6ef2238
[gaim-migrate @ 1413]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1401
diff
changeset
|
1350 | } |
| 66 | 1351 | } |
| 1352 | } | |
| 1353 | ||
|
907
3638fe0afd66
[gaim-migrate @ 917]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
905
diff
changeset
|
1354 | int entry_key_pressed(GtkWidget *w, GtkWidget *entry) |
| 66 | 1355 | { |
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
1356 | check_everything(w); |
|
2725
a844d0964552
[gaim-migrate @ 2738]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2722
diff
changeset
|
1357 | return FALSE; |
| 66 | 1358 | } |
| 1359 | ||
| 1360 | /*------------------------------------------------------------------------*/ | |
| 1361 | /* HTML-type stuff */ | |
| 1362 | /*------------------------------------------------------------------------*/ | |
| 1363 | ||
| 1364 | int count_tag(GtkWidget *entry, char *s1, char *s2) | |
| 1365 | { | |
| 1366 | char *p1, *p2; | |
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
1367 | int res = 0; |
| 66 | 1368 | char *tmp, *tmpo, h; |
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
1369 | tmpo = gtk_editable_get_chars(GTK_EDITABLE(entry), 0, -1); |
|
2725
a844d0964552
[gaim-migrate @ 2738]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2722
diff
changeset
|
1370 | h = tmpo[GTK_OLD_EDITABLE(entry)->current_pos]; |
|
a844d0964552
[gaim-migrate @ 2738]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2722
diff
changeset
|
1371 | tmpo[GTK_OLD_EDITABLE(entry)->current_pos] = '\0'; |
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
1372 | tmp = tmpo; |
| 66 | 1373 | do { |
| 1374 | p1 = strstr(tmp, s1); | |
| 1375 | p2 = strstr(tmp, s2); | |
| 1376 | if (p1 && p2) { | |
| 1377 | if (p1 < p2) { | |
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
1378 | res = 1; |
|
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
1379 | tmp = p1 + strlen(s1); |
| 66 | 1380 | } else if (p2 < p1) { |
| 1381 | res = 0; | |
| 1382 | tmp = p2 + strlen(s2); | |
| 1383 | } | |
| 1384 | } else { | |
| 1385 | if (p1) { | |
| 1386 | res = 1; | |
| 1387 | tmp = p1 + strlen(s1); | |
| 1388 | } else if (p2) { | |
| 1389 | res = 0; | |
| 1390 | tmp = p2 + strlen(s2); | |
| 1391 | } | |
| 1392 | } | |
| 1393 | } while (p1 || p2); | |
|
2725
a844d0964552
[gaim-migrate @ 2738]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2722
diff
changeset
|
1394 | tmpo[GTK_OLD_EDITABLE(entry)->current_pos] = h; |
| 66 | 1395 | g_free(tmpo); |
| 1396 | return res; | |
| 1397 | } | |
| 1398 | ||
| 1399 | ||
| 1400 | int invert_tags(GtkWidget *entry, char *s1, char *s2, int really) | |
| 1401 | { | |
|
2725
a844d0964552
[gaim-migrate @ 2738]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2722
diff
changeset
|
1402 | int start = GTK_OLD_EDITABLE(entry)->selection_start_pos; |
|
a844d0964552
[gaim-migrate @ 2738]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2722
diff
changeset
|
1403 | int finish = GTK_OLD_EDITABLE(entry)->selection_end_pos; |
| 66 | 1404 | char *s; |
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
1405 | |
|
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
1406 | s = gtk_editable_get_chars(GTK_EDITABLE(entry), 0, -1); |
|
2048
4ac8b9622c9e
[gaim-migrate @ 2058]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2017
diff
changeset
|
1407 | if (!g_strncasecmp(&s[start], s1, strlen(s1)) && |
|
4ac8b9622c9e
[gaim-migrate @ 2058]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2017
diff
changeset
|
1408 | !g_strncasecmp(&s[finish - strlen(s2)], s2, strlen(s2))) { |
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
1409 | if (really) { |
|
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
1410 | gtk_editable_delete_text(GTK_EDITABLE(entry), start, start + strlen(s1)); |
|
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
1411 | gtk_editable_delete_text(GTK_EDITABLE(entry), finish - strlen(s2) - strlen(s1), |
|
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
1412 | finish - strlen(s1)); |
| 66 | 1413 | } |
| 1414 | g_free(s); | |
| 1415 | return 1; | |
| 1416 | } | |
| 1417 | g_free(s); | |
| 1418 | return 0; | |
| 1419 | } | |
| 1420 | ||
| 1421 | ||
| 1422 | void remove_tags(GtkWidget *entry, char *tag) | |
| 1423 | { | |
|
275
457e0f64ad4f
[gaim-migrate @ 285]
Todd Kulesza <fflewddur@users.sourceforge.net>
parents:
234
diff
changeset
|
1424 | char *s, *t; |
|
2725
a844d0964552
[gaim-migrate @ 2738]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2722
diff
changeset
|
1425 | int start = GTK_OLD_EDITABLE(entry)->selection_start_pos; |
|
a844d0964552
[gaim-migrate @ 2738]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2722
diff
changeset
|
1426 | int finish = GTK_OLD_EDITABLE(entry)->selection_end_pos; |
|
275
457e0f64ad4f
[gaim-migrate @ 285]
Todd Kulesza <fflewddur@users.sourceforge.net>
parents:
234
diff
changeset
|
1427 | int temp; |
|
457e0f64ad4f
[gaim-migrate @ 285]
Todd Kulesza <fflewddur@users.sourceforge.net>
parents:
234
diff
changeset
|
1428 | s = gtk_editable_get_chars(GTK_EDITABLE(entry), 0, -1); |
| 66 | 1429 | t = s; |
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
1430 | |
|
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
1431 | if (start > finish) { |
|
275
457e0f64ad4f
[gaim-migrate @ 285]
Todd Kulesza <fflewddur@users.sourceforge.net>
parents:
234
diff
changeset
|
1432 | temp = start; |
|
457e0f64ad4f
[gaim-migrate @ 285]
Todd Kulesza <fflewddur@users.sourceforge.net>
parents:
234
diff
changeset
|
1433 | start = finish; |
|
457e0f64ad4f
[gaim-migrate @ 285]
Todd Kulesza <fflewddur@users.sourceforge.net>
parents:
234
diff
changeset
|
1434 | finish = temp; |
|
457e0f64ad4f
[gaim-migrate @ 285]
Todd Kulesza <fflewddur@users.sourceforge.net>
parents:
234
diff
changeset
|
1435 | } |
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
1436 | |
|
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
1437 | if (strstr(tag, "<FONT SIZE=")) { |
|
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
1438 | while ((t = strstr(t, "<FONT SIZE="))) { |
|
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
1439 | if (((t - s) < finish) && ((t - s) >= start)) { |
|
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
1440 | gtk_editable_delete_text(GTK_EDITABLE(entry), (t - s), |
|
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
1441 | (t - s) + strlen(tag)); |
|
846
3f7ea1614f89
[gaim-migrate @ 856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
843
diff
changeset
|
1442 | g_free(s); |
|
230
5afbb3468f11
[gaim-migrate @ 240]
Todd Kulesza <fflewddur@users.sourceforge.net>
parents:
210
diff
changeset
|
1443 | s = gtk_editable_get_chars(GTK_EDITABLE(entry), 0, -1); |
|
5afbb3468f11
[gaim-migrate @ 240]
Todd Kulesza <fflewddur@users.sourceforge.net>
parents:
210
diff
changeset
|
1444 | t = s; |
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
1445 | } else |
|
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
1446 | t++; |
| 68 | 1447 | } |
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
1448 | } else { |
|
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
1449 | while ((t = strstr(t, tag))) { |
|
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
1450 | if (((t - s) < finish) && ((t - s) >= start)) { |
|
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
1451 | gtk_editable_delete_text(GTK_EDITABLE(entry), (t - s), |
|
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
1452 | (t - s) + strlen(tag)); |
|
846
3f7ea1614f89
[gaim-migrate @ 856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
843
diff
changeset
|
1453 | g_free(s); |
|
230
5afbb3468f11
[gaim-migrate @ 240]
Todd Kulesza <fflewddur@users.sourceforge.net>
parents:
210
diff
changeset
|
1454 | s = gtk_editable_get_chars(GTK_EDITABLE(entry), 0, -1); |
|
5afbb3468f11
[gaim-migrate @ 240]
Todd Kulesza <fflewddur@users.sourceforge.net>
parents:
210
diff
changeset
|
1455 | t = s; |
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
1456 | } else |
|
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
1457 | t++; |
|
230
5afbb3468f11
[gaim-migrate @ 240]
Todd Kulesza <fflewddur@users.sourceforge.net>
parents:
210
diff
changeset
|
1458 | } |
| 66 | 1459 | } |
| 1460 | g_free(s); | |
| 1461 | } | |
| 1462 | ||
|
1440
202adf8b7e4b
[gaim-migrate @ 1450]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1439
diff
changeset
|
1463 | static char *html_logize(char *p) |
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
1464 | { |
|
1103
507b6eb3ed2c
[gaim-migrate @ 1113]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1100
diff
changeset
|
1465 | |
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
1466 | char *temp_p = p; |
|
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
1467 | char *buffer_p; |
|
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
1468 | char *buffer_start; |
|
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
1469 | int num_cr = 0; |
|
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
1470 | int char_len = 0; |
|
1103
507b6eb3ed2c
[gaim-migrate @ 1113]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1100
diff
changeset
|
1471 | |
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
1472 | while (*temp_p != '\0') { |
|
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
1473 | char_len++; |
|
1440
202adf8b7e4b
[gaim-migrate @ 1450]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1439
diff
changeset
|
1474 | if ((*temp_p == '\n') || ((*temp_p == '<') && (*(temp_p + 1) == '!'))) |
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
1475 | num_cr++; |
|
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
1476 | ++temp_p; |
|
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
1477 | } |
|
1103
507b6eb3ed2c
[gaim-migrate @ 1113]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1100
diff
changeset
|
1478 | |
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
1479 | temp_p = p; |
|
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
1480 | buffer_p = g_malloc(char_len + (4 * num_cr) + 1); |
|
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
1481 | buffer_start = buffer_p; |
|
1103
507b6eb3ed2c
[gaim-migrate @ 1113]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1100
diff
changeset
|
1482 | |
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
1483 | while (*temp_p != '\0') { |
|
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
1484 | if (*temp_p == '\n') { |
|
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
1485 | *buffer_p++ = '<'; |
|
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
1486 | *buffer_p++ = 'B'; |
|
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
1487 | *buffer_p++ = 'R'; |
|
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
1488 | *buffer_p++ = '>'; |
|
1440
202adf8b7e4b
[gaim-migrate @ 1450]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1439
diff
changeset
|
1489 | *buffer_p++ = '\n'; |
|
202adf8b7e4b
[gaim-migrate @ 1450]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1439
diff
changeset
|
1490 | } else if ((*temp_p == '<') && (*(temp_p + 1) == '!')) { |
|
202adf8b7e4b
[gaim-migrate @ 1450]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1439
diff
changeset
|
1491 | *buffer_p++ = '&'; |
| 2994 | 1492 | *buffer_p++ = 'l'; |
|
1440
202adf8b7e4b
[gaim-migrate @ 1450]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1439
diff
changeset
|
1493 | *buffer_p++ = 't'; |
|
202adf8b7e4b
[gaim-migrate @ 1450]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1439
diff
changeset
|
1494 | *buffer_p++ = ';'; |
|
202adf8b7e4b
[gaim-migrate @ 1450]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1439
diff
changeset
|
1495 | } else |
|
202adf8b7e4b
[gaim-migrate @ 1450]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1439
diff
changeset
|
1496 | *buffer_p++ = *temp_p; |
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
1497 | ++temp_p; |
|
1103
507b6eb3ed2c
[gaim-migrate @ 1113]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1100
diff
changeset
|
1498 | } |
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
1499 | *buffer_p = '\0'; |
|
1103
507b6eb3ed2c
[gaim-migrate @ 1113]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1100
diff
changeset
|
1500 | |
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
1501 | return buffer_start; |
|
1103
507b6eb3ed2c
[gaim-migrate @ 1113]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1100
diff
changeset
|
1502 | } |
|
507b6eb3ed2c
[gaim-migrate @ 1113]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1100
diff
changeset
|
1503 | |
| 66 | 1504 | void surround(GtkWidget *entry, char *pre, char *post) |
| 1505 | { | |
|
2725
a844d0964552
[gaim-migrate @ 2738]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2722
diff
changeset
|
1506 | int temp, pos = GTK_OLD_EDITABLE(entry)->current_pos; |
| 66 | 1507 | int dummy; |
| 1508 | int start, finish; | |
| 1133 | 1509 | |
|
2313
f7f7ff0b8d4a
[gaim-migrate @ 2323]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2303
diff
changeset
|
1510 | if (convo_options & OPT_CONVO_CHECK_SPELLING) { |
| 1133 | 1511 | gtkspell_detach(GTK_TEXT(entry)); |
| 1512 | } | |
| 1513 | ||
|
2725
a844d0964552
[gaim-migrate @ 2738]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2722
diff
changeset
|
1514 | if (GTK_OLD_EDITABLE(entry)->has_selection) { |
| 66 | 1515 | remove_tags(entry, pre); |
| 1516 | remove_tags(entry, post); | |
|
2725
a844d0964552
[gaim-migrate @ 2738]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2722
diff
changeset
|
1517 | start = GTK_OLD_EDITABLE(entry)->selection_start_pos; |
|
a844d0964552
[gaim-migrate @ 2738]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2722
diff
changeset
|
1518 | finish = GTK_OLD_EDITABLE(entry)->selection_end_pos; |
| 66 | 1519 | if (start > finish) { |
| 1520 | dummy = finish; | |
| 1521 | finish = start; | |
| 1522 | start = dummy; | |
| 1523 | } | |
| 1524 | dummy = start; | |
| 1525 | gtk_editable_insert_text(GTK_EDITABLE(entry), pre, strlen(pre), &dummy); | |
| 1526 | dummy = finish + strlen(pre); | |
| 1527 | gtk_editable_insert_text(GTK_EDITABLE(entry), post, strlen(post), &dummy); | |
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
1528 | gtk_editable_select_region(GTK_EDITABLE(entry), start, |
|
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
1529 | finish + strlen(pre) + strlen(post)); |
| 66 | 1530 | } else { |
|
649
ce4c42b98935
[gaim-migrate @ 659]
Todd Kulesza <fflewddur@users.sourceforge.net>
parents:
648
diff
changeset
|
1531 | temp = pos; |
| 66 | 1532 | gtk_editable_insert_text(GTK_EDITABLE(entry), pre, strlen(pre), &pos); |
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
1533 | if (temp == pos) { |
|
649
ce4c42b98935
[gaim-migrate @ 659]
Todd Kulesza <fflewddur@users.sourceforge.net>
parents:
648
diff
changeset
|
1534 | dummy = pos + strlen(pre); |
|
ce4c42b98935
[gaim-migrate @ 659]
Todd Kulesza <fflewddur@users.sourceforge.net>
parents:
648
diff
changeset
|
1535 | gtk_editable_insert_text(GTK_EDITABLE(entry), post, strlen(post), &dummy); |
|
ce4c42b98935
[gaim-migrate @ 659]
Todd Kulesza <fflewddur@users.sourceforge.net>
parents:
648
diff
changeset
|
1536 | gtk_editable_set_position(GTK_EDITABLE(entry), dummy); |
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
1537 | } else { |
|
649
ce4c42b98935
[gaim-migrate @ 659]
Todd Kulesza <fflewddur@users.sourceforge.net>
parents:
648
diff
changeset
|
1538 | dummy = pos; |
|
ce4c42b98935
[gaim-migrate @ 659]
Todd Kulesza <fflewddur@users.sourceforge.net>
parents:
648
diff
changeset
|
1539 | gtk_editable_insert_text(GTK_EDITABLE(entry), post, strlen(post), &dummy); |
|
ce4c42b98935
[gaim-migrate @ 659]
Todd Kulesza <fflewddur@users.sourceforge.net>
parents:
648
diff
changeset
|
1540 | gtk_editable_set_position(GTK_EDITABLE(entry), pos); |
|
ce4c42b98935
[gaim-migrate @ 659]
Todd Kulesza <fflewddur@users.sourceforge.net>
parents:
648
diff
changeset
|
1541 | } |
| 66 | 1542 | } |
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
1543 | |
|
2313
f7f7ff0b8d4a
[gaim-migrate @ 2323]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2303
diff
changeset
|
1544 | if (convo_options & OPT_CONVO_CHECK_SPELLING) { |
| 1133 | 1545 | gtkspell_attach(GTK_TEXT(entry)); |
| 1546 | } | |
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
1547 | |
| 66 | 1548 | gtk_widget_grab_focus(entry); |
| 1549 | } | |
| 1550 | ||
|
344
6dacf96cc000
[gaim-migrate @ 354]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
337
diff
changeset
|
1551 | void advance_past(GtkWidget *entry, char *pre, char *post) |
| 66 | 1552 | { |
| 1553 | char *s, *s2; | |
| 1554 | int pos; | |
| 1555 | if (invert_tags(entry, pre, post, 1)) | |
| 1556 | return; | |
| 1557 | s = gtk_editable_get_chars(GTK_EDITABLE(entry), 0, -1); | |
|
2725
a844d0964552
[gaim-migrate @ 2738]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2722
diff
changeset
|
1558 | pos = GTK_OLD_EDITABLE(entry)->current_pos; |
|
1250
46ac03911ab0
[gaim-migrate @ 1260]
Decklin Foster <decklin@red-bean.com>
parents:
1244
diff
changeset
|
1559 | debug_printf(_("Currently at %d, "), pos); |
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
1560 | s2 = strstr(&s[pos], post); |
|
523
da3c269711b7
[gaim-migrate @ 533]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
520
diff
changeset
|
1561 | if (s2) { |
| 66 | 1562 | pos = s2 - s + strlen(post); |
|
523
da3c269711b7
[gaim-migrate @ 533]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
520
diff
changeset
|
1563 | } else { |
|
da3c269711b7
[gaim-migrate @ 533]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
520
diff
changeset
|
1564 | gtk_editable_insert_text(GTK_EDITABLE(entry), post, strlen(post), &pos); |
|
da3c269711b7
[gaim-migrate @ 533]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
520
diff
changeset
|
1565 | } |
|
846
3f7ea1614f89
[gaim-migrate @ 856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
843
diff
changeset
|
1566 | g_free(s); |
|
1250
46ac03911ab0
[gaim-migrate @ 1260]
Decklin Foster <decklin@red-bean.com>
parents:
1244
diff
changeset
|
1567 | debug_printf(_("Setting position to %d\n"), pos); |
| 66 | 1568 | gtk_editable_set_position(GTK_EDITABLE(entry), pos); |
| 1569 | gtk_widget_grab_focus(entry); | |
| 1570 | } | |
| 1571 | ||
|
858
e514a22143a3
[gaim-migrate @ 868]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
856
diff
changeset
|
1572 | void toggle_fg_color(GtkWidget *color, struct conversation *c) |
| 66 | 1573 | { |
|
311
971d26b73be6
[gaim-migrate @ 321]
Todd Kulesza <fflewddur@users.sourceforge.net>
parents:
309
diff
changeset
|
1574 | if (state_lock) |
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
1575 | return; |
|
311
971d26b73be6
[gaim-migrate @ 321]
Todd Kulesza <fflewddur@users.sourceforge.net>
parents:
309
diff
changeset
|
1576 | if (GTK_TOGGLE_BUTTON(color)->active) |
|
858
e514a22143a3
[gaim-migrate @ 868]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
856
diff
changeset
|
1577 | show_fgcolor_dialog(c, color); |
|
e514a22143a3
[gaim-migrate @ 868]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
856
diff
changeset
|
1578 | else if (c->fg_color_dialog) |
|
e514a22143a3
[gaim-migrate @ 868]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
856
diff
changeset
|
1579 | cancel_fgcolor(color, c); |
|
e514a22143a3
[gaim-migrate @ 868]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
856
diff
changeset
|
1580 | else |
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
1581 | advance_past(c->entry, "<FONT COLOR>", "</FONT>"); |
|
858
e514a22143a3
[gaim-migrate @ 868]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
856
diff
changeset
|
1582 | } |
|
e514a22143a3
[gaim-migrate @ 868]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
856
diff
changeset
|
1583 | |
|
e514a22143a3
[gaim-migrate @ 868]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
856
diff
changeset
|
1584 | void toggle_bg_color(GtkWidget *color, struct conversation *c) |
|
e514a22143a3
[gaim-migrate @ 868]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
856
diff
changeset
|
1585 | { |
|
e514a22143a3
[gaim-migrate @ 868]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
856
diff
changeset
|
1586 | if (state_lock) |
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
1587 | return; |
|
858
e514a22143a3
[gaim-migrate @ 868]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
856
diff
changeset
|
1588 | if (GTK_TOGGLE_BUTTON(color)->active) |
|
e514a22143a3
[gaim-migrate @ 868]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
856
diff
changeset
|
1589 | show_bgcolor_dialog(c, color); |
|
e514a22143a3
[gaim-migrate @ 868]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
856
diff
changeset
|
1590 | else if (c->bg_color_dialog) |
|
e514a22143a3
[gaim-migrate @ 868]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
856
diff
changeset
|
1591 | cancel_bgcolor(color, c); |
|
189
6eb69d68121e
[gaim-migrate @ 199]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
187
diff
changeset
|
1592 | else |
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
1593 | advance_past(c->entry, "<BODY BGCOLOR>", "</BODY>"); |
| 66 | 1594 | } |
| 1595 | ||
|
472
9a5b8da2d760
[gaim-migrate @ 482]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
411
diff
changeset
|
1596 | void toggle_font(GtkWidget *font, struct conversation *c) |
|
234
100138758e8d
[gaim-migrate @ 244]
Todd Kulesza <fflewddur@users.sourceforge.net>
parents:
230
diff
changeset
|
1597 | { |
|
311
971d26b73be6
[gaim-migrate @ 321]
Todd Kulesza <fflewddur@users.sourceforge.net>
parents:
309
diff
changeset
|
1598 | if (state_lock) |
|
971d26b73be6
[gaim-migrate @ 321]
Todd Kulesza <fflewddur@users.sourceforge.net>
parents:
309
diff
changeset
|
1599 | return; |
|
971d26b73be6
[gaim-migrate @ 321]
Todd Kulesza <fflewddur@users.sourceforge.net>
parents:
309
diff
changeset
|
1600 | if (GTK_TOGGLE_BUTTON(font)->active) |
|
971d26b73be6
[gaim-migrate @ 321]
Todd Kulesza <fflewddur@users.sourceforge.net>
parents:
309
diff
changeset
|
1601 | show_font_dialog(c, font); |
|
563
d2ca8747dd25
[gaim-migrate @ 573]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
557
diff
changeset
|
1602 | else if (c->font_dialog) |
|
d2ca8747dd25
[gaim-migrate @ 573]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
557
diff
changeset
|
1603 | cancel_font(font, c); |
|
311
971d26b73be6
[gaim-migrate @ 321]
Todd Kulesza <fflewddur@users.sourceforge.net>
parents:
309
diff
changeset
|
1604 | else |
|
971d26b73be6
[gaim-migrate @ 321]
Todd Kulesza <fflewddur@users.sourceforge.net>
parents:
309
diff
changeset
|
1605 | advance_past(c->entry, "<FONT FACE>", "</FONT>"); |
|
234
100138758e8d
[gaim-migrate @ 244]
Todd Kulesza <fflewddur@users.sourceforge.net>
parents:
230
diff
changeset
|
1606 | } |
|
611
29f64e3898ac
[gaim-migrate @ 621]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
610
diff
changeset
|
1607 | |
|
608
4c11ac40558f
[gaim-migrate @ 618]
Todd Kulesza <fflewddur@users.sourceforge.net>
parents:
604
diff
changeset
|
1608 | void toggle_link(GtkWidget *linky, struct conversation *c) |
|
4c11ac40558f
[gaim-migrate @ 618]
Todd Kulesza <fflewddur@users.sourceforge.net>
parents:
604
diff
changeset
|
1609 | { |
|
4c11ac40558f
[gaim-migrate @ 618]
Todd Kulesza <fflewddur@users.sourceforge.net>
parents:
604
diff
changeset
|
1610 | if (state_lock) |
|
4c11ac40558f
[gaim-migrate @ 618]
Todd Kulesza <fflewddur@users.sourceforge.net>
parents:
604
diff
changeset
|
1611 | return; |
|
4c11ac40558f
[gaim-migrate @ 618]
Todd Kulesza <fflewddur@users.sourceforge.net>
parents:
604
diff
changeset
|
1612 | if (GTK_TOGGLE_BUTTON(linky)->active) |
|
4c11ac40558f
[gaim-migrate @ 618]
Todd Kulesza <fflewddur@users.sourceforge.net>
parents:
604
diff
changeset
|
1613 | show_add_link(linky, c); |
|
4c11ac40558f
[gaim-migrate @ 618]
Todd Kulesza <fflewddur@users.sourceforge.net>
parents:
604
diff
changeset
|
1614 | else if (c->link_dialog) |
|
4c11ac40558f
[gaim-migrate @ 618]
Todd Kulesza <fflewddur@users.sourceforge.net>
parents:
604
diff
changeset
|
1615 | cancel_link(linky, c); |
|
4c11ac40558f
[gaim-migrate @ 618]
Todd Kulesza <fflewddur@users.sourceforge.net>
parents:
604
diff
changeset
|
1616 | else |
|
4c11ac40558f
[gaim-migrate @ 618]
Todd Kulesza <fflewddur@users.sourceforge.net>
parents:
604
diff
changeset
|
1617 | advance_past(c->entry, "<A HREF>", "</A>"); |
|
4c11ac40558f
[gaim-migrate @ 618]
Todd Kulesza <fflewddur@users.sourceforge.net>
parents:
604
diff
changeset
|
1618 | } |
| 66 | 1619 | |
|
344
6dacf96cc000
[gaim-migrate @ 354]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
337
diff
changeset
|
1620 | void do_strike(GtkWidget *strike, GtkWidget *entry) |
| 66 | 1621 | { |
| 1622 | if (state_lock) | |
| 1623 | return; | |
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
1624 | |
| 66 | 1625 | if (GTK_TOGGLE_BUTTON(strike)->active) |
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
1626 | surround(entry, "<STRIKE>", "</STRIKE>"); |
| 66 | 1627 | else |
| 1628 | advance_past(entry, "<STRIKE>", "</STRIKE>"); | |
| 1133 | 1629 | |
| 66 | 1630 | } |
| 1631 | ||
|
344
6dacf96cc000
[gaim-migrate @ 354]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
337
diff
changeset
|
1632 | void do_bold(GtkWidget *bold, GtkWidget *entry) |
| 66 | 1633 | { |
| 1634 | if (state_lock) | |
| 1635 | return; | |
| 1636 | if (GTK_TOGGLE_BUTTON(bold)->active) | |
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
1637 | surround(entry, "<B>", "</B>"); |
| 66 | 1638 | else |
| 1639 | advance_past(entry, "<B>", "</B>"); | |
| 1640 | } | |
| 1641 | ||
|
344
6dacf96cc000
[gaim-migrate @ 354]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
337
diff
changeset
|
1642 | void do_underline(GtkWidget *underline, GtkWidget *entry) |
| 66 | 1643 | { |
| 1644 | if (state_lock) | |
| 1645 | return; | |
| 1646 | if (GTK_TOGGLE_BUTTON(underline)->active) | |
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
1647 | surround(entry, "<U>", "</U>"); |
| 66 | 1648 | else |
| 1649 | advance_past(entry, "<U>", "</U>"); | |
| 1650 | } | |
| 1651 | ||
|
344
6dacf96cc000
[gaim-migrate @ 354]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
337
diff
changeset
|
1652 | void do_italic(GtkWidget *italic, GtkWidget *entry) |
| 66 | 1653 | { |
| 1654 | if (state_lock) | |
| 1655 | return; | |
| 1656 | if (GTK_TOGGLE_BUTTON(italic)->active) | |
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
1657 | surround(entry, "<I>", "</I>"); |
| 66 | 1658 | else |
| 1659 | advance_past(entry, "<I>", "</I>"); | |
| 1660 | } | |
| 1661 | ||
|
230
5afbb3468f11
[gaim-migrate @ 240]
Todd Kulesza <fflewddur@users.sourceforge.net>
parents:
210
diff
changeset
|
1662 | /* html code to modify font sizes must all be the same length, */ |
|
5afbb3468f11
[gaim-migrate @ 240]
Todd Kulesza <fflewddur@users.sourceforge.net>
parents:
210
diff
changeset
|
1663 | /* currently set to 15 chars */ |
|
5afbb3468f11
[gaim-migrate @ 240]
Todd Kulesza <fflewddur@users.sourceforge.net>
parents:
210
diff
changeset
|
1664 | |
|
344
6dacf96cc000
[gaim-migrate @ 354]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
337
diff
changeset
|
1665 | void do_small(GtkWidget *small, GtkWidget *entry) |
| 66 | 1666 | { |
| 1667 | if (state_lock) | |
| 1668 | return; | |
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
1669 | surround(entry, "<FONT SIZE=\"1\">", "</FONT>"); |
| 66 | 1670 | } |
| 1671 | ||
|
344
6dacf96cc000
[gaim-migrate @ 354]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
337
diff
changeset
|
1672 | void do_normal(GtkWidget *normal, GtkWidget *entry) |
| 66 | 1673 | { |
| 1674 | if (state_lock) | |
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
1675 | return; |
|
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
1676 | surround(entry, "<FONT SIZE=\"3\">", "</FONT>"); |
| 66 | 1677 | } |
| 1678 | ||
|
344
6dacf96cc000
[gaim-migrate @ 354]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
337
diff
changeset
|
1679 | void do_big(GtkWidget *big, GtkWidget *entry) |
| 66 | 1680 | { |
| 1681 | if (state_lock) | |
| 1682 | return; | |
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
1683 | surround(entry, "<FONT SIZE=\"5\">", "</FONT>"); |
| 66 | 1684 | } |
| 1685 | ||
| 1686 | void check_everything(GtkWidget *entry) | |
| 1687 | { | |
| 1688 | struct conversation *c; | |
| 206 | 1689 | |
| 66 | 1690 | c = (struct conversation *)gtk_object_get_user_data(GTK_OBJECT(entry)); |
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
1691 | if (!c) |
|
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
1692 | return; |
| 66 | 1693 | if (invert_tags(entry, "<B>", "</B>", 0)) |
| 1694 | quiet_set(c->bold, TRUE); | |
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
1695 | else if (count_tag(entry, "<B>", "</B>")) |
| 66 | 1696 | quiet_set(c->bold, TRUE); |
| 1697 | else | |
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
1698 | quiet_set(c->bold, FALSE); |
| 66 | 1699 | if (invert_tags(entry, "<I>", "</I>", 0)) |
| 1700 | quiet_set(c->italic, TRUE); | |
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
1701 | else if (count_tag(entry, "<I>", "</I>")) |
| 66 | 1702 | quiet_set(c->italic, TRUE); |
| 1703 | else | |
| 1704 | quiet_set(c->italic, FALSE); | |
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
1705 | |
| 66 | 1706 | if (invert_tags(entry, "<FONT COLOR", "</FONT>", 0)) |
| 854 | 1707 | quiet_set(c->fgcolorbtn, TRUE); |
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
1708 | else if (count_tag(entry, "<FONT COLOR", "</FONT>")) |
| 854 | 1709 | quiet_set(c->fgcolorbtn, TRUE); |
|
311
971d26b73be6
[gaim-migrate @ 321]
Todd Kulesza <fflewddur@users.sourceforge.net>
parents:
309
diff
changeset
|
1710 | else |
| 854 | 1711 | quiet_set(c->fgcolorbtn, FALSE); |
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
1712 | |
|
861
fefe4f2fe928
[gaim-migrate @ 871]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
860
diff
changeset
|
1713 | if (invert_tags(entry, "<BODY BGCOLOR", "</BODY>", 0)) |
|
fefe4f2fe928
[gaim-migrate @ 871]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
860
diff
changeset
|
1714 | quiet_set(c->bgcolorbtn, TRUE); |
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
1715 | else if (count_tag(entry, "<BODY BGCOLOR", "</BODY>")) |
|
861
fefe4f2fe928
[gaim-migrate @ 871]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
860
diff
changeset
|
1716 | quiet_set(c->bgcolorbtn, TRUE); |
|
fefe4f2fe928
[gaim-migrate @ 871]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
860
diff
changeset
|
1717 | else |
|
fefe4f2fe928
[gaim-migrate @ 871]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
860
diff
changeset
|
1718 | quiet_set(c->bgcolorbtn, FALSE); |
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
1719 | |
|
311
971d26b73be6
[gaim-migrate @ 321]
Todd Kulesza <fflewddur@users.sourceforge.net>
parents:
309
diff
changeset
|
1720 | if (invert_tags(entry, "<FONT FACE", "</FONT>", 0)) |
|
971d26b73be6
[gaim-migrate @ 321]
Todd Kulesza <fflewddur@users.sourceforge.net>
parents:
309
diff
changeset
|
1721 | quiet_set(c->font, TRUE); |
|
971d26b73be6
[gaim-migrate @ 321]
Todd Kulesza <fflewddur@users.sourceforge.net>
parents:
309
diff
changeset
|
1722 | else if (count_tag(entry, "<FONT FACE", "</FONT>")) |
|
971d26b73be6
[gaim-migrate @ 321]
Todd Kulesza <fflewddur@users.sourceforge.net>
parents:
309
diff
changeset
|
1723 | quiet_set(c->font, TRUE); |
|
971d26b73be6
[gaim-migrate @ 321]
Todd Kulesza <fflewddur@users.sourceforge.net>
parents:
309
diff
changeset
|
1724 | else |
|
971d26b73be6
[gaim-migrate @ 321]
Todd Kulesza <fflewddur@users.sourceforge.net>
parents:
309
diff
changeset
|
1725 | quiet_set(c->font, FALSE); |
| 66 | 1726 | |
| 1727 | if (invert_tags(entry, "<A HREF", "</A>", 0)) | |
| 1728 | quiet_set(c->link, TRUE); | |
| 1729 | else if (count_tag(entry, "<A HREF", "</A>")) | |
| 1730 | quiet_set(c->link, TRUE); | |
| 1731 | else | |
| 1732 | quiet_set(c->link, FALSE); | |
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
1733 | |
|
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
1734 | if (invert_tags(entry, "<U>", "</U>", 0)) |
| 66 | 1735 | quiet_set(c->underline, TRUE); |
| 1736 | else if (count_tag(entry, "<U>", "</U>")) | |
| 1737 | quiet_set(c->underline, TRUE); | |
| 1738 | else | |
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
1739 | quiet_set(c->underline, FALSE); |
| 66 | 1740 | |
| 1741 | if (invert_tags(entry, "<STRIKE>", "</STRIKE>", 0)) | |
| 1742 | quiet_set(c->strike, TRUE); | |
| 1743 | else if (count_tag(entry, "<STRIKE>", "</STRIKE>")) | |
| 1744 | quiet_set(c->strike, TRUE); | |
| 1745 | else | |
| 1746 | quiet_set(c->strike, FALSE); | |
| 1747 | } | |
| 1748 | ||
| 1749 | ||
| 1750 | /*------------------------------------------------------------------------*/ | |
| 1751 | /* Takin care of the window.. */ | |
| 1752 | /*------------------------------------------------------------------------*/ | |
| 1753 | ||
| 3367 | 1754 | static char* nick_colors[] = {"#ff0000", "#ff00ff", "#00ffff", "#04a241", |
| 1755 | "#ffae00", "#bd008a", "#4c9f9c", "#7f0000", | |
| 1756 | "#6477a2"}; | |
| 1757 | #define NUM_NICK_COLORS 9 | |
| 66 | 1758 | |
|
472
9a5b8da2d760
[gaim-migrate @ 482]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
411
diff
changeset
|
1759 | /* this is going to be interesting since the conversation could either be a |
|
9a5b8da2d760
[gaim-migrate @ 482]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
411
diff
changeset
|
1760 | * normal IM conversation or a chat window. but hopefully it won't matter */ |
|
2856
046ed5e89321
[gaim-migrate @ 2869]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2855
diff
changeset
|
1761 | void write_to_conv(struct conversation *c, char *what, int flags, char *who, time_t mtime, gint length) |
| 66 | 1762 | { |
|
1735
4f5f223fca01
[gaim-migrate @ 1745]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1732
diff
changeset
|
1763 | char buf[BUF_LONG]; |
|
472
9a5b8da2d760
[gaim-migrate @ 482]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
411
diff
changeset
|
1764 | char *str; |
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
1765 | FILE *fd; |
|
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
1766 | char colour[10]; |
|
741
95bf17374b84
[gaim-migrate @ 751]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
738
diff
changeset
|
1767 | struct buddy *b; |
| 1244 | 1768 | int gtk_font_options = 0; |
|
1440
202adf8b7e4b
[gaim-migrate @ 1450]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1439
diff
changeset
|
1769 | GString *logstr; |
|
1735
4f5f223fca01
[gaim-migrate @ 1745]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1732
diff
changeset
|
1770 | char buf2[BUF_LONG]; |
| 1764 | 1771 | char mdate[64]; |
| 2993 | 1772 | int unhighlight = 0; |
| 1773 | ||
|
2856
046ed5e89321
[gaim-migrate @ 2869]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2855
diff
changeset
|
1774 | if (c->is_chat && (!c->gc || !g_slist_find(c->gc->buddy_chats, c))) |
|
2267
9704c0f60689
[gaim-migrate @ 2277]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2264
diff
changeset
|
1775 | return; |
|
9704c0f60689
[gaim-migrate @ 2277]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2264
diff
changeset
|
1776 | |
|
2447
945722ca9419
[gaim-migrate @ 2460]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2426
diff
changeset
|
1777 | if (!c->is_chat && !g_list_find(conversations, c)) |
|
945722ca9419
[gaim-migrate @ 2460]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2426
diff
changeset
|
1778 | return; |
|
472
9a5b8da2d760
[gaim-migrate @ 482]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
411
diff
changeset
|
1779 | |
|
2794
ea3afb5c8638
[gaim-migrate @ 2807]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2788
diff
changeset
|
1780 | gtk_widget_show(c->window); |
|
ea3afb5c8638
[gaim-migrate @ 2807]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2788
diff
changeset
|
1781 | |
|
1772
c759c01bd66f
[gaim-migrate @ 1782]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1764
diff
changeset
|
1782 | if (!c->is_chat || !(c->gc->prpl->options & OPT_PROTO_UNIQUE_CHATNAME)) { |
|
c759c01bd66f
[gaim-migrate @ 1782]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1764
diff
changeset
|
1783 | if (!who) { |
|
c759c01bd66f
[gaim-migrate @ 1782]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1764
diff
changeset
|
1784 | if (flags & WFLAG_SEND) { |
|
c759c01bd66f
[gaim-migrate @ 1782]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1764
diff
changeset
|
1785 | b = find_buddy(c->gc, c->gc->username); |
|
2213
3a176de28de1
[gaim-migrate @ 2223]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2210
diff
changeset
|
1786 | if (b && strcmp(b->name, b->show)) |
|
2372
c24942700dfd
[gaim-migrate @ 2385]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2363
diff
changeset
|
1787 | who = b->show; |
| 3205 | 1788 | else if (c->gc->user->alias[0]) |
| 1789 | who = c->gc->user->alias; | |
|
2210
37d4364497f5
[gaim-migrate @ 2220]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2202
diff
changeset
|
1790 | else if (c->gc->displayname[0]) |
|
37d4364497f5
[gaim-migrate @ 2220]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2202
diff
changeset
|
1791 | who = c->gc->displayname; |
|
1772
c759c01bd66f
[gaim-migrate @ 1782]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1764
diff
changeset
|
1792 | else |
|
c759c01bd66f
[gaim-migrate @ 1782]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1764
diff
changeset
|
1793 | who = c->gc->username; |
|
c759c01bd66f
[gaim-migrate @ 1782]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1764
diff
changeset
|
1794 | } else { |
|
c759c01bd66f
[gaim-migrate @ 1782]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1764
diff
changeset
|
1795 | b = find_buddy(c->gc, c->name); |
|
c759c01bd66f
[gaim-migrate @ 1782]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1764
diff
changeset
|
1796 | if (b) |
|
c759c01bd66f
[gaim-migrate @ 1782]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1764
diff
changeset
|
1797 | who = b->show; |
|
c759c01bd66f
[gaim-migrate @ 1782]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1764
diff
changeset
|
1798 | else |
|
c759c01bd66f
[gaim-migrate @ 1782]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1764
diff
changeset
|
1799 | who = c->name; |
|
c759c01bd66f
[gaim-migrate @ 1782]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1764
diff
changeset
|
1800 | } |
|
c759c01bd66f
[gaim-migrate @ 1782]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1764
diff
changeset
|
1801 | } else { |
|
c759c01bd66f
[gaim-migrate @ 1782]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1764
diff
changeset
|
1802 | b = find_buddy(c->gc, who); |
|
745
31d1085f03d5
[gaim-migrate @ 755]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
741
diff
changeset
|
1803 | if (b) |
|
31d1085f03d5
[gaim-migrate @ 755]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
741
diff
changeset
|
1804 | who = b->show; |
|
741
95bf17374b84
[gaim-migrate @ 751]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
738
diff
changeset
|
1805 | } |
|
474
8e9acf2f6c48
[gaim-migrate @ 484]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
473
diff
changeset
|
1806 | } |
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
1807 | |
|
2447
945722ca9419
[gaim-migrate @ 2460]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2426
diff
changeset
|
1808 | strftime(mdate, sizeof(mdate), "%H:%M:%S", localtime(&mtime)); |
|
945722ca9419
[gaim-migrate @ 2460]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2426
diff
changeset
|
1809 | |
|
945722ca9419
[gaim-migrate @ 2460]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2426
diff
changeset
|
1810 | gtk_font_options = gtk_font_options ^ GTK_IMHTML_NO_COMMENTS; |
|
945722ca9419
[gaim-migrate @ 2460]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2426
diff
changeset
|
1811 | |
|
945722ca9419
[gaim-migrate @ 2460]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2426
diff
changeset
|
1812 | if (convo_options & OPT_CONVO_IGNORE_COLOUR) |
|
945722ca9419
[gaim-migrate @ 2460]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2426
diff
changeset
|
1813 | gtk_font_options = gtk_font_options ^ GTK_IMHTML_NO_COLOURS; |
|
945722ca9419
[gaim-migrate @ 2460]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2426
diff
changeset
|
1814 | |
|
945722ca9419
[gaim-migrate @ 2460]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2426
diff
changeset
|
1815 | if (convo_options & OPT_CONVO_IGNORE_FONTS) |
|
945722ca9419
[gaim-migrate @ 2460]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2426
diff
changeset
|
1816 | gtk_font_options = gtk_font_options ^ GTK_IMHTML_NO_FONTS; |
|
945722ca9419
[gaim-migrate @ 2460]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2426
diff
changeset
|
1817 | |
|
945722ca9419
[gaim-migrate @ 2460]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2426
diff
changeset
|
1818 | if (convo_options & OPT_CONVO_IGNORE_SIZES) |
|
945722ca9419
[gaim-migrate @ 2460]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2426
diff
changeset
|
1819 | gtk_font_options = gtk_font_options ^ GTK_IMHTML_NO_SIZES; |
|
945722ca9419
[gaim-migrate @ 2460]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2426
diff
changeset
|
1820 | |
|
945722ca9419
[gaim-migrate @ 2460]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2426
diff
changeset
|
1821 | if (!(logging_options & OPT_LOG_STRIP_HTML)) |
|
945722ca9419
[gaim-migrate @ 2460]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2426
diff
changeset
|
1822 | gtk_font_options = gtk_font_options ^ GTK_IMHTML_RETURN_LOG; |
|
2372
c24942700dfd
[gaim-migrate @ 2385]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2363
diff
changeset
|
1823 | |
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
1824 | if (flags & WFLAG_SYSTEM) { |
|
2313
f7f7ff0b8d4a
[gaim-migrate @ 2323]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2303
diff
changeset
|
1825 | if (convo_options & OPT_CONVO_SHOW_TIME) |
| 1764 | 1826 | g_snprintf(buf, BUF_LONG, "<FONT SIZE=\"2\">(%s) </FONT><B>%s</B>", mdate, what); |
|
1735
4f5f223fca01
[gaim-migrate @ 1745]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1732
diff
changeset
|
1827 | else |
|
1815
e2b090284b19
[gaim-migrate @ 1825]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1813
diff
changeset
|
1828 | g_snprintf(buf, BUF_LONG, "<B>%s</B>", what); |
|
1735
4f5f223fca01
[gaim-migrate @ 1745]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1732
diff
changeset
|
1829 | g_snprintf(buf2, sizeof(buf2), "<FONT SIZE=\"2\"><!--(%s) --></FONT><B>%s</B><BR>", |
|
2372
c24942700dfd
[gaim-migrate @ 2385]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2363
diff
changeset
|
1830 | mdate, what); |
| 66 | 1831 | |
|
2856
046ed5e89321
[gaim-migrate @ 2869]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2855
diff
changeset
|
1832 | gtk_imhtml_append_text(GTK_IMHTML(c->text), buf2, -1, 0); |
| 66 | 1833 | |
|
1525
b4ece1a718cd
[gaim-migrate @ 1535]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1486
diff
changeset
|
1834 | if (logging_options & OPT_LOG_STRIP_HTML) { |
|
1735
4f5f223fca01
[gaim-migrate @ 1745]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1732
diff
changeset
|
1835 | char *t1 = strip_html(buf); |
|
1479
e7ec4ce61f5b
[gaim-migrate @ 1489]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1464
diff
changeset
|
1836 | c->history = g_string_append(c->history, t1); |
|
e7ec4ce61f5b
[gaim-migrate @ 1489]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1464
diff
changeset
|
1837 | c->history = g_string_append(c->history, "\n"); |
|
1486
45539c570dbe
[gaim-migrate @ 1496]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1479
diff
changeset
|
1838 | g_free(t1); |
|
1479
e7ec4ce61f5b
[gaim-migrate @ 1489]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1464
diff
changeset
|
1839 | } else { |
|
1735
4f5f223fca01
[gaim-migrate @ 1745]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1732
diff
changeset
|
1840 | c->history = g_string_append(c->history, buf); |
|
1479
e7ec4ce61f5b
[gaim-migrate @ 1489]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1464
diff
changeset
|
1841 | c->history = g_string_append(c->history, "<BR>\n"); |
|
e7ec4ce61f5b
[gaim-migrate @ 1489]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1464
diff
changeset
|
1842 | } |
|
e7ec4ce61f5b
[gaim-migrate @ 1489]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1464
diff
changeset
|
1843 | |
| 2385 | 1844 | if (!(flags & WFLAG_NOLOG) && ((logging_options & OPT_LOG_ALL) || find_log_info(c->name))) { |
|
1437
b51cd857866c
[gaim-migrate @ 1447]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1434
diff
changeset
|
1845 | char *t1; |
|
699
927b7f978c9c
[gaim-migrate @ 709]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
698
diff
changeset
|
1846 | char nm[256]; |
| 66 | 1847 | |
|
1525
b4ece1a718cd
[gaim-migrate @ 1535]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1486
diff
changeset
|
1848 | if (logging_options & OPT_LOG_STRIP_HTML) { |
|
1735
4f5f223fca01
[gaim-migrate @ 1745]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1732
diff
changeset
|
1849 | t1 = strip_html(buf); |
|
1437
b51cd857866c
[gaim-migrate @ 1447]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1434
diff
changeset
|
1850 | } else { |
|
1735
4f5f223fca01
[gaim-migrate @ 1745]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1732
diff
changeset
|
1851 | t1 = buf; |
|
1437
b51cd857866c
[gaim-migrate @ 1447]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1434
diff
changeset
|
1852 | } |
|
699
927b7f978c9c
[gaim-migrate @ 709]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
698
diff
changeset
|
1853 | if (c->is_chat) |
|
927b7f978c9c
[gaim-migrate @ 709]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
698
diff
changeset
|
1854 | g_snprintf(nm, 256, "%s.chat", c->name); |
|
927b7f978c9c
[gaim-migrate @ 709]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
698
diff
changeset
|
1855 | else |
|
927b7f978c9c
[gaim-migrate @ 709]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
698
diff
changeset
|
1856 | g_snprintf(nm, 256, "%s", c->name); |
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
1857 | fd = open_log_file(nm); |
|
2004
624214019544
[gaim-migrate @ 2014]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1970
diff
changeset
|
1858 | if (fd) { |
|
1525
b4ece1a718cd
[gaim-migrate @ 1535]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1486
diff
changeset
|
1859 | if (logging_options & OPT_LOG_STRIP_HTML) { |
|
1437
b51cd857866c
[gaim-migrate @ 1447]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1434
diff
changeset
|
1860 | fprintf(fd, "%s\n", t1); |
|
b51cd857866c
[gaim-migrate @ 1447]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1434
diff
changeset
|
1861 | } else { |
|
b51cd857866c
[gaim-migrate @ 1447]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1434
diff
changeset
|
1862 | fprintf(fd, "%s<BR>\n", t1); |
|
b51cd857866c
[gaim-migrate @ 1447]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1434
diff
changeset
|
1863 | } |
|
1067
686a75d68f89
[gaim-migrate @ 1077]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1063
diff
changeset
|
1864 | fclose(fd); |
| 936 | 1865 | } |
|
1525
b4ece1a718cd
[gaim-migrate @ 1535]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1486
diff
changeset
|
1866 | if (logging_options & OPT_LOG_STRIP_HTML) { |
|
1437
b51cd857866c
[gaim-migrate @ 1447]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1434
diff
changeset
|
1867 | g_free(t1); |
|
b51cd857866c
[gaim-migrate @ 1447]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1434
diff
changeset
|
1868 | } |
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
1869 | } |
| 2385 | 1870 | } else if (flags & WFLAG_NOLOG) { |
| 1871 | g_snprintf(buf, BUF_LONG, "<B><FONT COLOR=\"#777777\">%s</FONT></B><BR>", what); | |
|
2856
046ed5e89321
[gaim-migrate @ 2869]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2855
diff
changeset
|
1872 | gtk_imhtml_append_text(GTK_IMHTML(c->text), buf, -1, 0); |
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
1873 | } else { |
|
472
9a5b8da2d760
[gaim-migrate @ 482]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
411
diff
changeset
|
1874 | if (flags & WFLAG_WHISPER) { |
|
9a5b8da2d760
[gaim-migrate @ 482]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
411
diff
changeset
|
1875 | /* if we're whispering, it's not an autoresponse */ |
|
2856
046ed5e89321
[gaim-migrate @ 2869]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2855
diff
changeset
|
1876 | if (meify(what, length)) { |
|
2138
e829e961b154
[gaim-migrate @ 2148]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2124
diff
changeset
|
1877 | str = g_malloc(1024); |
|
e829e961b154
[gaim-migrate @ 2148]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2124
diff
changeset
|
1878 | g_snprintf(str, 1024, "***%s", who); |
|
2374
5b3ff703c700
[gaim-migrate @ 2387]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2372
diff
changeset
|
1879 | strcpy(colour, "#6C2585"); |
|
472
9a5b8da2d760
[gaim-migrate @ 482]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
411
diff
changeset
|
1880 | } else { |
|
2138
e829e961b154
[gaim-migrate @ 2148]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2124
diff
changeset
|
1881 | str = g_malloc(1024); |
|
e829e961b154
[gaim-migrate @ 2148]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2124
diff
changeset
|
1882 | g_snprintf(str, 1024, "*%s*:", who); |
|
2374
5b3ff703c700
[gaim-migrate @ 2387]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2372
diff
changeset
|
1883 | strcpy(colour, "#00ff00"); |
|
472
9a5b8da2d760
[gaim-migrate @ 482]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
411
diff
changeset
|
1884 | } |
|
9a5b8da2d760
[gaim-migrate @ 482]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
411
diff
changeset
|
1885 | } else { |
|
2856
046ed5e89321
[gaim-migrate @ 2869]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2855
diff
changeset
|
1886 | if (meify(what, length)) { |
|
2138
e829e961b154
[gaim-migrate @ 2148]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2124
diff
changeset
|
1887 | str = g_malloc(1024); |
|
472
9a5b8da2d760
[gaim-migrate @ 482]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
411
diff
changeset
|
1888 | if (flags & WFLAG_AUTO) |
|
2138
e829e961b154
[gaim-migrate @ 2148]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2124
diff
changeset
|
1889 | g_snprintf(str, 1024, "%s ***%s", AUTO_RESPONSE, who); |
|
472
9a5b8da2d760
[gaim-migrate @ 482]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
411
diff
changeset
|
1890 | else |
|
2138
e829e961b154
[gaim-migrate @ 2148]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2124
diff
changeset
|
1891 | g_snprintf(str, 1024, "***%s", who); |
|
2374
5b3ff703c700
[gaim-migrate @ 2387]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2372
diff
changeset
|
1892 | if (flags & WFLAG_NICK) |
|
2375
055f399517b7
[gaim-migrate @ 2388]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2374
diff
changeset
|
1893 | strcpy(colour, "#af7f00"); |
|
2374
5b3ff703c700
[gaim-migrate @ 2387]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2372
diff
changeset
|
1894 | else |
|
5b3ff703c700
[gaim-migrate @ 2387]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2372
diff
changeset
|
1895 | strcpy(colour, "#062585"); |
|
472
9a5b8da2d760
[gaim-migrate @ 482]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
411
diff
changeset
|
1896 | } else { |
|
2138
e829e961b154
[gaim-migrate @ 2148]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2124
diff
changeset
|
1897 | str = g_malloc(1024); |
|
472
9a5b8da2d760
[gaim-migrate @ 482]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
411
diff
changeset
|
1898 | if (flags & WFLAG_AUTO) |
|
2138
e829e961b154
[gaim-migrate @ 2148]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2124
diff
changeset
|
1899 | g_snprintf(str, 1024, "%s %s", who, AUTO_RESPONSE); |
|
472
9a5b8da2d760
[gaim-migrate @ 482]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
411
diff
changeset
|
1900 | else |
|
2138
e829e961b154
[gaim-migrate @ 2148]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2124
diff
changeset
|
1901 | g_snprintf(str, 1024, "%s:", who); |
|
2374
5b3ff703c700
[gaim-migrate @ 2387]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2372
diff
changeset
|
1902 | if (flags & WFLAG_NICK) |
|
2375
055f399517b7
[gaim-migrate @ 2388]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2374
diff
changeset
|
1903 | strcpy(colour, "#af7f00"); |
| 3367 | 1904 | else if (flags & WFLAG_RECV) { |
| 1905 | if (flags & WFLAG_COLORIZE) { | |
| 1906 | char *u = who; | |
| 1907 | int m = 0; | |
| 1908 | while (*u) { | |
| 1909 | m = m + *u; | |
| 1910 | u++; | |
| 1911 | } | |
| 1912 | m = m % NUM_NICK_COLORS; | |
| 1913 | strcpy(colour, nick_colors[m]); | |
| 1914 | } else { | |
| 1915 | strcpy(colour, "#ff0000"); | |
| 1916 | } | |
| 1917 | } else if (flags & WFLAG_RECV) | |
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
1918 | strcpy(colour, "#ff0000"); |
|
472
9a5b8da2d760
[gaim-migrate @ 482]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
411
diff
changeset
|
1919 | else if (flags & WFLAG_SEND) |
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
1920 | strcpy(colour, "#0000ff"); |
|
472
9a5b8da2d760
[gaim-migrate @ 482]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
411
diff
changeset
|
1921 | } |
|
9a5b8da2d760
[gaim-migrate @ 482]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
411
diff
changeset
|
1922 | } |
| 66 | 1923 | |
|
2313
f7f7ff0b8d4a
[gaim-migrate @ 2323]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2303
diff
changeset
|
1924 | if (convo_options & OPT_CONVO_SHOW_TIME) |
|
1437
b51cd857866c
[gaim-migrate @ 1447]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1434
diff
changeset
|
1925 | g_snprintf(buf, BUF_LONG, "<FONT COLOR=\"%s\"><FONT SIZE=\"2\">(%s) </FONT>" |
|
2372
c24942700dfd
[gaim-migrate @ 2385]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2363
diff
changeset
|
1926 | "<B>%s</B></FONT> ", colour, mdate, str); |
|
1437
b51cd857866c
[gaim-migrate @ 1447]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1434
diff
changeset
|
1927 | else |
|
b51cd857866c
[gaim-migrate @ 1447]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1434
diff
changeset
|
1928 | g_snprintf(buf, BUF_LONG, "<FONT COLOR=\"%s\"><B>%s</B></FONT> ", colour, str); |
|
1439
09c06d8ad90d
[gaim-migrate @ 1449]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1438
diff
changeset
|
1929 | g_snprintf(buf2, BUF_LONG, "<FONT COLOR=\"%s\"><FONT SIZE=\"2\"><!--(%s) --></FONT>" |
|
2372
c24942700dfd
[gaim-migrate @ 2385]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2363
diff
changeset
|
1930 | "<B>%s</B></FONT> ", colour, mdate, str); |
| 66 | 1931 | |
|
473
a56f8e37c786
[gaim-migrate @ 483]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
472
diff
changeset
|
1932 | g_free(str); |
|
a56f8e37c786
[gaim-migrate @ 483]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
472
diff
changeset
|
1933 | |
|
2856
046ed5e89321
[gaim-migrate @ 2869]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2855
diff
changeset
|
1934 | gtk_imhtml_append_text(GTK_IMHTML(c->text), buf2, -1, 0); |
|
046ed5e89321
[gaim-migrate @ 2869]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2855
diff
changeset
|
1935 | |
|
046ed5e89321
[gaim-migrate @ 2869]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2855
diff
changeset
|
1936 | logstr = gtk_imhtml_append_text(GTK_IMHTML(c->text), what, length, gtk_font_options); |
|
046ed5e89321
[gaim-migrate @ 2869]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2855
diff
changeset
|
1937 | |
|
046ed5e89321
[gaim-migrate @ 2869]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2855
diff
changeset
|
1938 | gtk_imhtml_append_text(GTK_IMHTML(c->text), "<BR>", -1, 0); |
| 66 | 1939 | |
|
2857
3313ce0d6128
[gaim-migrate @ 2870]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2856
diff
changeset
|
1940 | /* XXX this needs to be updated for the new length argument */ |
|
1525
b4ece1a718cd
[gaim-migrate @ 1535]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1486
diff
changeset
|
1941 | if (logging_options & OPT_LOG_STRIP_HTML) { |
|
1479
e7ec4ce61f5b
[gaim-migrate @ 1489]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1464
diff
changeset
|
1942 | char *t1, *t2; |
|
e7ec4ce61f5b
[gaim-migrate @ 1489]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1464
diff
changeset
|
1943 | t1 = strip_html(buf); |
|
e7ec4ce61f5b
[gaim-migrate @ 1489]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1464
diff
changeset
|
1944 | t2 = strip_html(what); |
|
e7ec4ce61f5b
[gaim-migrate @ 1489]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1464
diff
changeset
|
1945 | c->history = g_string_append(c->history, t1); |
|
e7ec4ce61f5b
[gaim-migrate @ 1489]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1464
diff
changeset
|
1946 | c->history = g_string_append(c->history, t2); |
|
e7ec4ce61f5b
[gaim-migrate @ 1489]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1464
diff
changeset
|
1947 | c->history = g_string_append(c->history, "\n"); |
|
e7ec4ce61f5b
[gaim-migrate @ 1489]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1464
diff
changeset
|
1948 | g_free(t1); |
|
e7ec4ce61f5b
[gaim-migrate @ 1489]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1464
diff
changeset
|
1949 | g_free(t2); |
|
e7ec4ce61f5b
[gaim-migrate @ 1489]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1464
diff
changeset
|
1950 | } else { |
|
e7ec4ce61f5b
[gaim-migrate @ 1489]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1464
diff
changeset
|
1951 | char *t1, *t2; |
|
e7ec4ce61f5b
[gaim-migrate @ 1489]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1464
diff
changeset
|
1952 | t1 = html_logize(buf); |
|
e7ec4ce61f5b
[gaim-migrate @ 1489]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1464
diff
changeset
|
1953 | t2 = html_logize(what); |
|
e7ec4ce61f5b
[gaim-migrate @ 1489]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1464
diff
changeset
|
1954 | c->history = g_string_append(c->history, t1); |
|
e7ec4ce61f5b
[gaim-migrate @ 1489]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1464
diff
changeset
|
1955 | c->history = g_string_append(c->history, t2); |
|
e7ec4ce61f5b
[gaim-migrate @ 1489]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1464
diff
changeset
|
1956 | c->history = g_string_append(c->history, "\n"); |
|
e7ec4ce61f5b
[gaim-migrate @ 1489]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1464
diff
changeset
|
1957 | c->history = g_string_append(c->history, logstr->str); |
|
e7ec4ce61f5b
[gaim-migrate @ 1489]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1464
diff
changeset
|
1958 | c->history = g_string_append(c->history, "<BR>\n"); |
|
e7ec4ce61f5b
[gaim-migrate @ 1489]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1464
diff
changeset
|
1959 | g_free(t1); |
|
e7ec4ce61f5b
[gaim-migrate @ 1489]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1464
diff
changeset
|
1960 | g_free(t2); |
|
e7ec4ce61f5b
[gaim-migrate @ 1489]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1464
diff
changeset
|
1961 | } |
|
e7ec4ce61f5b
[gaim-migrate @ 1489]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1464
diff
changeset
|
1962 | |
|
2857
3313ce0d6128
[gaim-migrate @ 2870]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2856
diff
changeset
|
1963 | /* XXX this needs to be updated for the new length argument */ |
|
2386
1b79255087be
[gaim-migrate @ 2399]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2385
diff
changeset
|
1964 | if ((logging_options & OPT_LOG_ALL) || find_log_info(c->name)) { |
|
1437
b51cd857866c
[gaim-migrate @ 1447]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1434
diff
changeset
|
1965 | char *t1, *t2; |
|
b51cd857866c
[gaim-migrate @ 1447]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1434
diff
changeset
|
1966 | char *nm = g_malloc(256); |
|
472
9a5b8da2d760
[gaim-migrate @ 482]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
411
diff
changeset
|
1967 | if (c->is_chat) |
|
9a5b8da2d760
[gaim-migrate @ 482]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
411
diff
changeset
|
1968 | g_snprintf(nm, 256, "%s.chat", c->name); |
|
9a5b8da2d760
[gaim-migrate @ 482]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
411
diff
changeset
|
1969 | else |
|
9a5b8da2d760
[gaim-migrate @ 482]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
411
diff
changeset
|
1970 | g_snprintf(nm, 256, "%s", c->name); |
| 66 | 1971 | |
|
1525
b4ece1a718cd
[gaim-migrate @ 1535]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1486
diff
changeset
|
1972 | if (logging_options & OPT_LOG_STRIP_HTML) { |
|
1437
b51cd857866c
[gaim-migrate @ 1447]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1434
diff
changeset
|
1973 | t1 = strip_html(buf); |
|
b51cd857866c
[gaim-migrate @ 1447]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1434
diff
changeset
|
1974 | t2 = strip_html(what); |
|
b51cd857866c
[gaim-migrate @ 1447]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1434
diff
changeset
|
1975 | } else { |
|
1440
202adf8b7e4b
[gaim-migrate @ 1450]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1439
diff
changeset
|
1976 | t1 = html_logize(buf); |
|
202adf8b7e4b
[gaim-migrate @ 1450]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1439
diff
changeset
|
1977 | t2 = html_logize(what); |
|
1437
b51cd857866c
[gaim-migrate @ 1447]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1434
diff
changeset
|
1978 | } |
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
1979 | fd = open_log_file(nm); |
|
2004
624214019544
[gaim-migrate @ 2014]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1970
diff
changeset
|
1980 | if (fd) { |
|
1525
b4ece1a718cd
[gaim-migrate @ 1535]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1486
diff
changeset
|
1981 | if (logging_options & OPT_LOG_STRIP_HTML) { |
|
1437
b51cd857866c
[gaim-migrate @ 1447]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1434
diff
changeset
|
1982 | fprintf(fd, "%s%s\n", t1, t2); |
|
b51cd857866c
[gaim-migrate @ 1447]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1434
diff
changeset
|
1983 | } else { |
|
1440
202adf8b7e4b
[gaim-migrate @ 1450]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1439
diff
changeset
|
1984 | fprintf(fd, "%s%s%s<BR>\n", t1, t2, logstr->str); |
|
202adf8b7e4b
[gaim-migrate @ 1450]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1439
diff
changeset
|
1985 | g_string_free(logstr, TRUE); |
|
1437
b51cd857866c
[gaim-migrate @ 1447]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1434
diff
changeset
|
1986 | } |
|
1067
686a75d68f89
[gaim-migrate @ 1077]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1063
diff
changeset
|
1987 | fclose(fd); |
| 936 | 1988 | } |
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
1989 | g_free(t1); |
|
1437
b51cd857866c
[gaim-migrate @ 1447]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1434
diff
changeset
|
1990 | g_free(t2); |
|
b51cd857866c
[gaim-migrate @ 1447]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1434
diff
changeset
|
1991 | g_free(nm); |
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
1992 | } |
|
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
1993 | } |
| 66 | 1994 | |
|
2313
f7f7ff0b8d4a
[gaim-migrate @ 2323]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2303
diff
changeset
|
1995 | if ((c->is_chat && (chat_options & OPT_CHAT_POPUP)) || |
|
f7f7ff0b8d4a
[gaim-migrate @ 2323]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2303
diff
changeset
|
1996 | (!c->is_chat && (im_options & OPT_IM_POPUP))) |
|
2372
c24942700dfd
[gaim-migrate @ 2385]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2363
diff
changeset
|
1997 | gdk_window_show(c->window->window); |
| 3022 | 1998 | if (flags & WFLAG_RECV) |
| 1999 | reset_typing(g_strdup(c->name)); | |
| 66 | 2000 | |
|
2843
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
2001 | /* tab highlighting */ |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
2002 | if (c->is_chat && !(chat_options & OPT_CHAT_ONE_WINDOW)) /* if chat but not tabbed chat */ |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
2003 | return; |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
2004 | if (!c->is_chat && !(im_options & OPT_IM_ONE_WINDOW)) /* if convo but not tabbed convo */ |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
2005 | return; |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
2006 | if (!(flags & WFLAG_RECV) && !(flags & WFLAG_SYSTEM)) |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
2007 | return; |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
2008 | if ((c->unseen == 2) || ((c->unseen == 1) && !(flags & WFLAG_NICK))) |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
2009 | return; |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
2010 | |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
2011 | if (c->is_chat) { |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
2012 | int offs; |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
2013 | if ((convo_options & OPT_CONVO_COMBINE) && (im_options & OPT_IM_ONE_WINDOW)) |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
2014 | offs = g_list_length(conversations); |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
2015 | else |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
2016 | offs = 0; |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
2017 | if (gtk_notebook_get_current_page(GTK_NOTEBOOK(chat_notebook)) == |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
2018 | g_list_index(chats, c) + offs) |
| 2993 | 2019 | unhighlight = 1; |
|
2843
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
2020 | } else { |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
2021 | if (gtk_notebook_get_current_page(GTK_NOTEBOOK(convo_notebook)) == |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
2022 | g_list_index(conversations, c)) |
| 2993 | 2023 | unhighlight = 1; |
|
2843
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
2024 | } |
| 2993 | 2025 | if ((c->unseen != -1) && unhighlight) /* If there's no typing message |
| 2026 | and we're on the same tab, don't bother | |
| 2027 | changing the color. */ | |
| 2028 | return; | |
|
2843
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
2029 | |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
2030 | { |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
2031 | GtkNotebook *notebook = GTK_NOTEBOOK(c->is_chat ? chat_notebook : convo_notebook); |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
2032 | int offs = ((convo_options & OPT_CONVO_COMBINE) && |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
2033 | (im_options & OPT_IM_ONE_WINDOW) && c->is_chat) ? |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
2034 | g_list_length(conversations) : 0; |
|
1692
ff73167542e9
[gaim-migrate @ 1702]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1663
diff
changeset
|
2035 | GList *ws = (c->is_chat ? chats : conversations); |
|
2843
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
2036 | GtkWidget *label = gtk_notebook_get_tab_label(notebook, |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
2037 | gtk_notebook_get_nth_page(notebook, |
| 3022 | 2038 | offs + g_list_index(ws, c))); |
|
2625
9590ffdcddd6
[gaim-migrate @ 2638]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2619
diff
changeset
|
2039 | GtkStyle *style; |
|
9590ffdcddd6
[gaim-migrate @ 2638]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2619
diff
changeset
|
2040 | style = gtk_style_new(); |
|
1573
878f7c59ee85
[gaim-migrate @ 1583]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1532
diff
changeset
|
2041 | if (!GTK_WIDGET_REALIZED(label)) |
|
878f7c59ee85
[gaim-migrate @ 1583]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1532
diff
changeset
|
2042 | gtk_widget_realize(label); |
|
2725
a844d0964552
[gaim-migrate @ 2738]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2722
diff
changeset
|
2043 | gdk_font_unref(gtk_style_get_font(style)); |
|
a844d0964552
[gaim-migrate @ 2738]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2722
diff
changeset
|
2044 | gtk_style_set_font(style, gdk_font_ref(gtk_style_get_font(label->style))); |
| 2993 | 2045 | if (!unhighlight && flags & WFLAG_NICK) { |
|
2625
9590ffdcddd6
[gaim-migrate @ 2638]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2619
diff
changeset
|
2046 | style->fg[0].red = 0x0000; |
|
9590ffdcddd6
[gaim-migrate @ 2638]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2619
diff
changeset
|
2047 | style->fg[0].green = 0x0000; |
|
9590ffdcddd6
[gaim-migrate @ 2638]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2619
diff
changeset
|
2048 | style->fg[0].blue = 0xcccc; |
|
9590ffdcddd6
[gaim-migrate @ 2638]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2619
diff
changeset
|
2049 | c->unseen = 2; |
| 2993 | 2050 | } else if (!unhighlight) { |
|
2625
9590ffdcddd6
[gaim-migrate @ 2638]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2619
diff
changeset
|
2051 | style->fg[0].red = 0xcccc; |
|
9590ffdcddd6
[gaim-migrate @ 2638]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2619
diff
changeset
|
2052 | style->fg[0].green = 0x0000; |
|
9590ffdcddd6
[gaim-migrate @ 2638]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2619
diff
changeset
|
2053 | style->fg[0].blue = 0x0000; |
|
9590ffdcddd6
[gaim-migrate @ 2638]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2619
diff
changeset
|
2054 | c->unseen = 1; |
| 2993 | 2055 | } else { |
| 2056 | c->unseen = 0; | |
|
2625
9590ffdcddd6
[gaim-migrate @ 2638]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2619
diff
changeset
|
2057 | } |
|
1573
878f7c59ee85
[gaim-migrate @ 1583]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1532
diff
changeset
|
2058 | gtk_widget_set_style(label, style); |
|
878f7c59ee85
[gaim-migrate @ 1583]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1532
diff
changeset
|
2059 | gtk_style_unref(style); |
|
878f7c59ee85
[gaim-migrate @ 1583]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1532
diff
changeset
|
2060 | } |
| 66 | 2061 | } |
| 2062 | ||
| 2993 | 2063 | void update_progress(struct conversation *c, float percent) { |
| 3044 | 2064 | |
| 2993 | 2065 | if (percent >= 1 && !(c->progress)) |
| 2066 | return; | |
| 2067 | ||
| 2068 | if (percent >= 1) { | |
| 2069 | gtk_widget_destroy(c->progress); | |
| 2070 | c->progress = NULL; | |
| 2071 | return; | |
| 2072 | } | |
| 2073 | ||
| 2074 | if (!c->progress) { | |
| 2075 | GtkBox *box = GTK_BOX(c->text->parent->parent); | |
| 2076 | c->progress = gtk_progress_bar_new(); | |
| 2077 | gtk_box_pack_end(box, c->progress, FALSE, FALSE, 0); | |
| 2078 | gtk_widget_set_usize (c->progress, 1, 8); | |
| 2079 | gtk_widget_show (c->progress); | |
| 2080 | } | |
| 2081 | ||
| 2082 | if (percent < 1) | |
| 2083 | gtk_progress_set_percentage(GTK_PROGRESS(c->progress), percent); | |
| 2084 | } | |
| 66 | 2085 | |
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
2086 | GtkWidget *build_conv_toolbar(struct conversation *c) |
|
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
2087 | { |
|
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
2088 | GdkPixmap *strike_i, *small_i, *normal_i, *big_i, *bold_i, *italic_i, *underline_i, *speaker_i, |
| 3044 | 2089 | *wood_i, *fgcolor_i, *bgcolor_i, *link_i, *font_i, *smiley_i, *save_i, *image_i; |
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
2090 | GtkWidget *strike_p, *small_p, *normal_p, *big_p, *bold_p, *italic_p, *underline_p, *speaker_p, |
| 3044 | 2091 | *wood_p, *fgcolor_p, *bgcolor_p, *link_p, *font_p, *smiley_p, *save_p, *image_p; |
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
2092 | GtkWidget *strike, *small, *normal, *big, *bold, *italic, *underline, *speaker, *wood, |
| 3044 | 2093 | *fgcolorbtn, *bgcolorbtn, *link, *font, *smiley, *save, *image; |
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
2094 | GdkBitmap *mask; |
|
472
9a5b8da2d760
[gaim-migrate @ 482]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
411
diff
changeset
|
2095 | GtkWidget *toolbar; |
|
9a5b8da2d760
[gaim-migrate @ 482]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
411
diff
changeset
|
2096 | GtkWidget *win; |
|
9a5b8da2d760
[gaim-migrate @ 482]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
411
diff
changeset
|
2097 | GtkWidget *entry; |
| 66 | 2098 | |
| 2099 | toolbar = gtk_toolbar_new(GTK_ORIENTATION_HORIZONTAL, GTK_TOOLBAR_ICONS); | |
|
472
9a5b8da2d760
[gaim-migrate @ 482]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
411
diff
changeset
|
2100 | win = c->window; |
|
9a5b8da2d760
[gaim-migrate @ 482]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
411
diff
changeset
|
2101 | entry = c->entry; |
| 66 | 2102 | |
|
1479
e7ec4ce61f5b
[gaim-migrate @ 1489]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1464
diff
changeset
|
2103 | bold_i = gdk_pixmap_create_from_xpm_d(win->window, &mask, &win->style->white, bold_xpm); |
|
e7ec4ce61f5b
[gaim-migrate @ 1489]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1464
diff
changeset
|
2104 | bold_p = gtk_pixmap_new(bold_i, mask); |
|
e7ec4ce61f5b
[gaim-migrate @ 1489]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1464
diff
changeset
|
2105 | gtk_widget_show(bold_p); |
|
e7ec4ce61f5b
[gaim-migrate @ 1489]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1464
diff
changeset
|
2106 | gdk_bitmap_unref(mask); |
|
e7ec4ce61f5b
[gaim-migrate @ 1489]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1464
diff
changeset
|
2107 | |
|
e7ec4ce61f5b
[gaim-migrate @ 1489]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1464
diff
changeset
|
2108 | italic_i = gdk_pixmap_create_from_xpm_d(win->window, &mask, &win->style->white, italic_xpm); |
|
e7ec4ce61f5b
[gaim-migrate @ 1489]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1464
diff
changeset
|
2109 | italic_p = gtk_pixmap_new(italic_i, mask); |
|
e7ec4ce61f5b
[gaim-migrate @ 1489]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1464
diff
changeset
|
2110 | gtk_widget_show(italic_p); |
|
e7ec4ce61f5b
[gaim-migrate @ 1489]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1464
diff
changeset
|
2111 | gdk_bitmap_unref(mask); |
|
e7ec4ce61f5b
[gaim-migrate @ 1489]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1464
diff
changeset
|
2112 | |
|
e7ec4ce61f5b
[gaim-migrate @ 1489]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1464
diff
changeset
|
2113 | underline_i = gdk_pixmap_create_from_xpm_d(win->window, &mask, |
|
e7ec4ce61f5b
[gaim-migrate @ 1489]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1464
diff
changeset
|
2114 | &win->style->white, underline_xpm); |
|
e7ec4ce61f5b
[gaim-migrate @ 1489]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1464
diff
changeset
|
2115 | underline_p = gtk_pixmap_new(underline_i, mask); |
|
e7ec4ce61f5b
[gaim-migrate @ 1489]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1464
diff
changeset
|
2116 | gtk_widget_show(underline_p); |
|
e7ec4ce61f5b
[gaim-migrate @ 1489]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1464
diff
changeset
|
2117 | gdk_bitmap_unref(mask); |
|
e7ec4ce61f5b
[gaim-migrate @ 1489]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1464
diff
changeset
|
2118 | |
|
e7ec4ce61f5b
[gaim-migrate @ 1489]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1464
diff
changeset
|
2119 | strike_i = gdk_pixmap_create_from_xpm_d(win->window, &mask, &win->style->white, strike_xpm); |
|
e7ec4ce61f5b
[gaim-migrate @ 1489]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1464
diff
changeset
|
2120 | strike_p = gtk_pixmap_new(strike_i, mask); |
|
e7ec4ce61f5b
[gaim-migrate @ 1489]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1464
diff
changeset
|
2121 | gtk_widget_show(strike_p); |
|
e7ec4ce61f5b
[gaim-migrate @ 1489]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1464
diff
changeset
|
2122 | gdk_bitmap_unref(mask); |
|
e7ec4ce61f5b
[gaim-migrate @ 1489]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1464
diff
changeset
|
2123 | |
|
e7ec4ce61f5b
[gaim-migrate @ 1489]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1464
diff
changeset
|
2124 | small_i = gdk_pixmap_create_from_xpm_d(win->window, &mask, &win->style->white, small_xpm); |
|
e7ec4ce61f5b
[gaim-migrate @ 1489]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1464
diff
changeset
|
2125 | small_p = gtk_pixmap_new(small_i, mask); |
|
e7ec4ce61f5b
[gaim-migrate @ 1489]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1464
diff
changeset
|
2126 | gtk_widget_show(small_p); |
|
e7ec4ce61f5b
[gaim-migrate @ 1489]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1464
diff
changeset
|
2127 | gdk_bitmap_unref(mask); |
|
e7ec4ce61f5b
[gaim-migrate @ 1489]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1464
diff
changeset
|
2128 | |
|
e7ec4ce61f5b
[gaim-migrate @ 1489]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1464
diff
changeset
|
2129 | normal_i = gdk_pixmap_create_from_xpm_d(win->window, &mask, &win->style->white, normal_xpm); |
|
e7ec4ce61f5b
[gaim-migrate @ 1489]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1464
diff
changeset
|
2130 | normal_p = gtk_pixmap_new(normal_i, mask); |
|
e7ec4ce61f5b
[gaim-migrate @ 1489]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1464
diff
changeset
|
2131 | gtk_widget_show(normal_p); |
|
e7ec4ce61f5b
[gaim-migrate @ 1489]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1464
diff
changeset
|
2132 | gdk_bitmap_unref(mask); |
|
e7ec4ce61f5b
[gaim-migrate @ 1489]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1464
diff
changeset
|
2133 | |
|
e7ec4ce61f5b
[gaim-migrate @ 1489]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1464
diff
changeset
|
2134 | big_i = gdk_pixmap_create_from_xpm_d(win->window, &mask, &win->style->white, big_xpm); |
|
e7ec4ce61f5b
[gaim-migrate @ 1489]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1464
diff
changeset
|
2135 | big_p = gtk_pixmap_new(big_i, mask); |
|
e7ec4ce61f5b
[gaim-migrate @ 1489]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1464
diff
changeset
|
2136 | gtk_widget_show(big_p); |
|
e7ec4ce61f5b
[gaim-migrate @ 1489]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1464
diff
changeset
|
2137 | gdk_bitmap_unref(mask); |
|
e7ec4ce61f5b
[gaim-migrate @ 1489]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1464
diff
changeset
|
2138 | |
|
e7ec4ce61f5b
[gaim-migrate @ 1489]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1464
diff
changeset
|
2139 | font_i = gdk_pixmap_create_from_xpm_d(win->window, &mask, &win->style->white, fontface_xpm); |
|
e7ec4ce61f5b
[gaim-migrate @ 1489]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1464
diff
changeset
|
2140 | font_p = gtk_pixmap_new(font_i, mask); |
|
e7ec4ce61f5b
[gaim-migrate @ 1489]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1464
diff
changeset
|
2141 | gtk_widget_show(font_p); |
|
804
c606c9aacfc5
[gaim-migrate @ 814]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
801
diff
changeset
|
2142 | gdk_bitmap_unref(mask); |
| 66 | 2143 | |
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
2144 | fgcolor_i = gdk_pixmap_create_from_xpm_d(win->window, &mask, &win->style->white, fgcolor_xpm); |
| 854 | 2145 | fgcolor_p = gtk_pixmap_new(fgcolor_i, mask); |
| 2146 | gtk_widget_show(fgcolor_p); | |
| 2147 | gdk_bitmap_unref(mask); | |
| 2148 | ||
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
2149 | bgcolor_i = gdk_pixmap_create_from_xpm_d(win->window, &mask, &win->style->white, bgcolor_xpm); |
| 854 | 2150 | bgcolor_p = gtk_pixmap_new(bgcolor_i, mask); |
| 2151 | gtk_widget_show(bgcolor_p); | |
|
804
c606c9aacfc5
[gaim-migrate @ 814]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
801
diff
changeset
|
2152 | gdk_bitmap_unref(mask); |
| 66 | 2153 | |
|
1479
e7ec4ce61f5b
[gaim-migrate @ 1489]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1464
diff
changeset
|
2154 | link_i = gdk_pixmap_create_from_xpm_d(win->window, &mask, &win->style->white, link_xpm); |
|
e7ec4ce61f5b
[gaim-migrate @ 1489]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1464
diff
changeset
|
2155 | link_p = gtk_pixmap_new(link_i, mask); |
|
e7ec4ce61f5b
[gaim-migrate @ 1489]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1464
diff
changeset
|
2156 | gtk_widget_show(link_p); |
|
e7ec4ce61f5b
[gaim-migrate @ 1489]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1464
diff
changeset
|
2157 | gdk_bitmap_unref(mask); |
|
e7ec4ce61f5b
[gaim-migrate @ 1489]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1464
diff
changeset
|
2158 | |
|
e7ec4ce61f5b
[gaim-migrate @ 1489]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1464
diff
changeset
|
2159 | smiley_i = gdk_pixmap_create_from_xpm_d(win->window, &mask, &win->style->white, smile_icon_xpm); |
|
e7ec4ce61f5b
[gaim-migrate @ 1489]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1464
diff
changeset
|
2160 | smiley_p = gtk_pixmap_new(smiley_i, mask); |
|
e7ec4ce61f5b
[gaim-migrate @ 1489]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1464
diff
changeset
|
2161 | gtk_widget_show(smiley_p); |
|
e7ec4ce61f5b
[gaim-migrate @ 1489]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1464
diff
changeset
|
2162 | gdk_bitmap_unref(mask); |
|
e7ec4ce61f5b
[gaim-migrate @ 1489]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1464
diff
changeset
|
2163 | |
| 3044 | 2164 | image_i = gdk_pixmap_create_from_xpm_d(win->window, &mask, &win->style->white, image_icon_xpm); |
| 2165 | image_p = gtk_pixmap_new(image_i, mask); | |
| 2166 | gtk_widget_show(image_p); | |
| 2167 | gdk_bitmap_unref(mask); | |
| 2168 | ||
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
2169 | wood_i = gdk_pixmap_create_from_xpm_d(win->window, &mask, &win->style->white, wood_xpm); |
| 66 | 2170 | wood_p = gtk_pixmap_new(wood_i, mask); |
| 2171 | gtk_widget_show(wood_p); | |
|
804
c606c9aacfc5
[gaim-migrate @ 814]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
801
diff
changeset
|
2172 | gdk_bitmap_unref(mask); |
|
1479
e7ec4ce61f5b
[gaim-migrate @ 1489]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1464
diff
changeset
|
2173 | |
|
e7ec4ce61f5b
[gaim-migrate @ 1489]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1464
diff
changeset
|
2174 | save_i = gdk_pixmap_create_from_xpm_d(win->window, &mask, &win->style->white, save_small_xpm); |
|
e7ec4ce61f5b
[gaim-migrate @ 1489]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1464
diff
changeset
|
2175 | save_p = gtk_pixmap_new(save_i, mask); |
|
e7ec4ce61f5b
[gaim-migrate @ 1489]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1464
diff
changeset
|
2176 | gtk_widget_show(save_p); |
|
e7ec4ce61f5b
[gaim-migrate @ 1489]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1464
diff
changeset
|
2177 | gdk_bitmap_unref(mask); |
|
e7ec4ce61f5b
[gaim-migrate @ 1489]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1464
diff
changeset
|
2178 | |
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
2179 | speaker_i = gdk_pixmap_create_from_xpm_d(win->window, &mask, &win->style->white, speaker_xpm); |
| 66 | 2180 | speaker_p = gtk_pixmap_new(speaker_i, mask); |
| 2181 | gtk_widget_show(speaker_p); | |
|
804
c606c9aacfc5
[gaim-migrate @ 814]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
801
diff
changeset
|
2182 | gdk_bitmap_unref(mask); |
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
2183 | c->makesound = 1; |
| 66 | 2184 | |
| 2185 | bold = gtk_toolbar_append_element(GTK_TOOLBAR(toolbar), | |
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
2186 | GTK_TOOLBAR_CHILD_TOGGLEBUTTON, NULL, |
|
1970
018c9dfab85c
[gaim-migrate @ 1980]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1965
diff
changeset
|
2187 | NULL, _("Bold Text"), _("Bold"), bold_p, |
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
2188 | GTK_SIGNAL_FUNC(do_bold), entry); |
|
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
2189 | italic = gtk_toolbar_append_element(GTK_TOOLBAR(toolbar), |
|
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
2190 | GTK_TOOLBAR_CHILD_TOGGLEBUTTON, |
|
1970
018c9dfab85c
[gaim-migrate @ 1980]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1965
diff
changeset
|
2191 | NULL, NULL, _("Italics Text"), |
|
350
b02a56431923
[gaim-migrate @ 360]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
349
diff
changeset
|
2192 | _("Italics"), italic_p, GTK_SIGNAL_FUNC(do_italic), entry); |
| 66 | 2193 | underline = gtk_toolbar_append_element(GTK_TOOLBAR(toolbar), |
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
2194 | GTK_TOOLBAR_CHILD_TOGGLEBUTTON, |
|
1970
018c9dfab85c
[gaim-migrate @ 1980]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1965
diff
changeset
|
2195 | NULL, NULL, _("Underline Text"), |
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
2196 | _("Underline"), underline_p, |
|
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
2197 | GTK_SIGNAL_FUNC(do_underline), entry); |
|
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
2198 | strike = |
|
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
2199 | gtk_toolbar_append_element(GTK_TOOLBAR(toolbar), GTK_TOOLBAR_CHILD_TOGGLEBUTTON, NULL, |
|
1970
018c9dfab85c
[gaim-migrate @ 1980]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1965
diff
changeset
|
2200 | NULL, _("Strike through Text"), _("Strike"), strike_p, |
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
2201 | GTK_SIGNAL_FUNC(do_strike), entry); |
|
1479
e7ec4ce61f5b
[gaim-migrate @ 1489]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1464
diff
changeset
|
2202 | |
| 66 | 2203 | gtk_toolbar_append_space(GTK_TOOLBAR(toolbar)); |
|
1479
e7ec4ce61f5b
[gaim-migrate @ 1489]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1464
diff
changeset
|
2204 | |
|
615
5b8e30b7a3fe
[gaim-migrate @ 625]
Todd Kulesza <fflewddur@users.sourceforge.net>
parents:
611
diff
changeset
|
2205 | small = gtk_toolbar_append_item(GTK_TOOLBAR(toolbar), |
|
1970
018c9dfab85c
[gaim-migrate @ 1980]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1965
diff
changeset
|
2206 | NULL, _("Decrease font size"), _("Small"), |
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
2207 | small_p, GTK_SIGNAL_FUNC(do_small), entry); |
|
615
5b8e30b7a3fe
[gaim-migrate @ 625]
Todd Kulesza <fflewddur@users.sourceforge.net>
parents:
611
diff
changeset
|
2208 | normal = gtk_toolbar_append_item(GTK_TOOLBAR(toolbar), |
|
1970
018c9dfab85c
[gaim-migrate @ 1980]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1965
diff
changeset
|
2209 | NULL, _("Normal font size"), _("Normal"), |
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
2210 | normal_p, GTK_SIGNAL_FUNC(do_normal), entry); |
|
615
5b8e30b7a3fe
[gaim-migrate @ 625]
Todd Kulesza <fflewddur@users.sourceforge.net>
parents:
611
diff
changeset
|
2211 | big = gtk_toolbar_append_item(GTK_TOOLBAR(toolbar), |
|
1970
018c9dfab85c
[gaim-migrate @ 1980]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1965
diff
changeset
|
2212 | NULL, _("Increase font size"), _("Big"), |
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
2213 | big_p, GTK_SIGNAL_FUNC(do_big), entry); |
|
862
975eabfe5ffd
[gaim-migrate @ 872]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
861
diff
changeset
|
2214 | |
|
975eabfe5ffd
[gaim-migrate @ 872]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
861
diff
changeset
|
2215 | gtk_toolbar_append_space(GTK_TOOLBAR(toolbar)); |
|
975eabfe5ffd
[gaim-migrate @ 872]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
861
diff
changeset
|
2216 | |
|
311
971d26b73be6
[gaim-migrate @ 321]
Todd Kulesza <fflewddur@users.sourceforge.net>
parents:
309
diff
changeset
|
2217 | font = gtk_toolbar_append_element(GTK_TOOLBAR(toolbar), |
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
2218 | GTK_TOOLBAR_CHILD_TOGGLEBUTTON, |
|
1970
018c9dfab85c
[gaim-migrate @ 1980]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1965
diff
changeset
|
2219 | NULL, NULL, _("Select Font"), |
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
2220 | _("Font"), font_p, GTK_SIGNAL_FUNC(toggle_font), c); |
|
862
975eabfe5ffd
[gaim-migrate @ 872]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
861
diff
changeset
|
2221 | fgcolorbtn = gtk_toolbar_append_element(GTK_TOOLBAR(toolbar), |
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
2222 | GTK_TOOLBAR_CHILD_TOGGLEBUTTON, |
|
1970
018c9dfab85c
[gaim-migrate @ 1980]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1965
diff
changeset
|
2223 | NULL, NULL, _("Text Color"), |
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
2224 | _("Color"), fgcolor_p, GTK_SIGNAL_FUNC(toggle_fg_color), |
|
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
2225 | c); |
|
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
2226 | bgcolorbtn = |
|
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
2227 | gtk_toolbar_append_element(GTK_TOOLBAR(toolbar), GTK_TOOLBAR_CHILD_TOGGLEBUTTON, NULL, |
|
1970
018c9dfab85c
[gaim-migrate @ 1980]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1965
diff
changeset
|
2228 | NULL, _("Background Color"), _("Color"), bgcolor_p, |
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
2229 | GTK_SIGNAL_FUNC(toggle_bg_color), c); |
|
862
975eabfe5ffd
[gaim-migrate @ 872]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
861
diff
changeset
|
2230 | |
| 66 | 2231 | gtk_toolbar_append_space(GTK_TOOLBAR(toolbar)); |
|
862
975eabfe5ffd
[gaim-migrate @ 872]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
861
diff
changeset
|
2232 | |
| 66 | 2233 | link = gtk_toolbar_append_element(GTK_TOOLBAR(toolbar), |
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
2234 | GTK_TOOLBAR_CHILD_TOGGLEBUTTON, |
|
1970
018c9dfab85c
[gaim-migrate @ 1980]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1965
diff
changeset
|
2235 | NULL, NULL, _("Insert Link"), |
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
2236 | _("Link"), link_p, GTK_SIGNAL_FUNC(toggle_link), c); |
|
862
975eabfe5ffd
[gaim-migrate @ 872]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
861
diff
changeset
|
2237 | smiley = gtk_toolbar_append_element(GTK_TOOLBAR(toolbar), |
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
2238 | GTK_TOOLBAR_CHILD_TOGGLEBUTTON, |
|
1970
018c9dfab85c
[gaim-migrate @ 1980]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1965
diff
changeset
|
2239 | NULL, NULL, _("Insert smiley face"), _("Smiley"), |
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
2240 | smiley_p, GTK_SIGNAL_FUNC(insert_smiley), c); |
| 3044 | 2241 | image = gtk_toolbar_append_item(GTK_TOOLBAR(toolbar), |
| 2242 | NULL, _("Insert IM Image"), _("Image"), | |
| 2243 | image_p, GTK_SIGNAL_FUNC(insert_image), c); | |
| 2244 | ||
|
862
975eabfe5ffd
[gaim-migrate @ 872]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
861
diff
changeset
|
2245 | gtk_toolbar_append_space(GTK_TOOLBAR(toolbar)); |
|
975eabfe5ffd
[gaim-migrate @ 872]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
861
diff
changeset
|
2246 | |
| 66 | 2247 | wood = gtk_toolbar_append_element(GTK_TOOLBAR(toolbar), |
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
2248 | GTK_TOOLBAR_CHILD_TOGGLEBUTTON, |
|
1970
018c9dfab85c
[gaim-migrate @ 1980]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1965
diff
changeset
|
2249 | NULL, NULL, _("Enable logging"), |
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
2250 | _("Logging"), wood_p, GTK_SIGNAL_FUNC(toggle_loggle), c); |
|
1479
e7ec4ce61f5b
[gaim-migrate @ 1489]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1464
diff
changeset
|
2251 | state_lock = 1; |
|
e7ec4ce61f5b
[gaim-migrate @ 1489]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1464
diff
changeset
|
2252 | if (find_log_info(c->name)) |
|
e7ec4ce61f5b
[gaim-migrate @ 1489]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1464
diff
changeset
|
2253 | gtk_toggle_button_set_state(GTK_TOGGLE_BUTTON(wood), TRUE); |
|
e7ec4ce61f5b
[gaim-migrate @ 1489]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1464
diff
changeset
|
2254 | else |
|
e7ec4ce61f5b
[gaim-migrate @ 1489]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1464
diff
changeset
|
2255 | gtk_toggle_button_set_state(GTK_TOGGLE_BUTTON(wood), FALSE); |
|
e7ec4ce61f5b
[gaim-migrate @ 1489]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1464
diff
changeset
|
2256 | state_lock = 0; |
|
e7ec4ce61f5b
[gaim-migrate @ 1489]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1464
diff
changeset
|
2257 | |
|
2372
c24942700dfd
[gaim-migrate @ 2385]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2363
diff
changeset
|
2258 | save = gtk_toolbar_append_item(GTK_TOOLBAR(toolbar), |
|
c24942700dfd
[gaim-migrate @ 2385]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2363
diff
changeset
|
2259 | NULL, _("Save Conversation"), |
|
c24942700dfd
[gaim-migrate @ 2385]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2363
diff
changeset
|
2260 | _("Save"), save_p, GTK_SIGNAL_FUNC(save_convo), c); |
|
1479
e7ec4ce61f5b
[gaim-migrate @ 1489]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1464
diff
changeset
|
2261 | |
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
2262 | speaker = gtk_toolbar_append_element(GTK_TOOLBAR(toolbar), |
|
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
2263 | GTK_TOOLBAR_CHILD_TOGGLEBUTTON, |
| 3384 | 2264 | NULL, NULL, _("Toggle Sound"), |
| 3300 | 2265 | _("Sound"), speaker_p, GTK_SIGNAL_FUNC(toggle_sound), c); |
| 2266 | c->makesound = 1; | |
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
2267 | |
|
535
468607aeb8b4
[gaim-migrate @ 545]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
523
diff
changeset
|
2268 | /* use a slicker look if the user wants to */ |
|
2313
f7f7ff0b8d4a
[gaim-migrate @ 2323]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2303
diff
changeset
|
2269 | if (misc_options & OPT_MISC_COOL_LOOK) { |
|
535
468607aeb8b4
[gaim-migrate @ 545]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
523
diff
changeset
|
2270 | gtk_button_set_relief(GTK_BUTTON(bold), GTK_RELIEF_NONE); |
|
468607aeb8b4
[gaim-migrate @ 545]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
523
diff
changeset
|
2271 | gtk_button_set_relief(GTK_BUTTON(italic), GTK_RELIEF_NONE); |
|
468607aeb8b4
[gaim-migrate @ 545]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
523
diff
changeset
|
2272 | gtk_button_set_relief(GTK_BUTTON(underline), GTK_RELIEF_NONE); |
|
1479
e7ec4ce61f5b
[gaim-migrate @ 1489]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1464
diff
changeset
|
2273 | gtk_button_set_relief(GTK_BUTTON(strike), GTK_RELIEF_NONE); |
|
e7ec4ce61f5b
[gaim-migrate @ 1489]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1464
diff
changeset
|
2274 | gtk_button_set_relief(GTK_BUTTON(small), GTK_RELIEF_NONE); |
|
e7ec4ce61f5b
[gaim-migrate @ 1489]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1464
diff
changeset
|
2275 | gtk_button_set_relief(GTK_BUTTON(normal), GTK_RELIEF_NONE); |
|
e7ec4ce61f5b
[gaim-migrate @ 1489]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1464
diff
changeset
|
2276 | gtk_button_set_relief(GTK_BUTTON(big), GTK_RELIEF_NONE); |
|
e7ec4ce61f5b
[gaim-migrate @ 1489]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1464
diff
changeset
|
2277 | gtk_button_set_relief(GTK_BUTTON(font), GTK_RELIEF_NONE); |
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
2278 | gtk_button_set_relief(GTK_BUTTON(fgcolorbtn), GTK_RELIEF_NONE); |
| 854 | 2279 | gtk_button_set_relief(GTK_BUTTON(bgcolorbtn), GTK_RELIEF_NONE); |
|
535
468607aeb8b4
[gaim-migrate @ 545]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
523
diff
changeset
|
2280 | gtk_button_set_relief(GTK_BUTTON(link), GTK_RELIEF_NONE); |
|
555
bea0ece30600
[gaim-migrate @ 565]
Todd Kulesza <fflewddur@users.sourceforge.net>
parents:
551
diff
changeset
|
2281 | gtk_button_set_relief(GTK_BUTTON(smiley), GTK_RELIEF_NONE); |
| 3044 | 2282 | gtk_button_set_relief(GTK_BUTTON(image), GTK_RELIEF_NONE); |
|
1479
e7ec4ce61f5b
[gaim-migrate @ 1489]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1464
diff
changeset
|
2283 | gtk_button_set_relief(GTK_BUTTON(wood), GTK_RELIEF_NONE); |
|
e7ec4ce61f5b
[gaim-migrate @ 1489]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1464
diff
changeset
|
2284 | gtk_button_set_relief(GTK_BUTTON(save), GTK_RELIEF_NONE); |
|
e7ec4ce61f5b
[gaim-migrate @ 1489]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1464
diff
changeset
|
2285 | gtk_button_set_relief(GTK_BUTTON(speaker), GTK_RELIEF_NONE); |
|
535
468607aeb8b4
[gaim-migrate @ 545]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
523
diff
changeset
|
2286 | } |
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
2287 | |
| 66 | 2288 | gtk_widget_show(toolbar); |
|
644
4388456cd80e
[gaim-migrate @ 654]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
636
diff
changeset
|
2289 | |
|
4388456cd80e
[gaim-migrate @ 654]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
636
diff
changeset
|
2290 | gdk_pixmap_unref(bold_i); |
|
4388456cd80e
[gaim-migrate @ 654]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
636
diff
changeset
|
2291 | gdk_pixmap_unref(italic_i); |
|
4388456cd80e
[gaim-migrate @ 654]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
636
diff
changeset
|
2292 | gdk_pixmap_unref(underline_i); |
|
1479
e7ec4ce61f5b
[gaim-migrate @ 1489]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1464
diff
changeset
|
2293 | gdk_pixmap_unref(strike_i); |
|
644
4388456cd80e
[gaim-migrate @ 654]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
636
diff
changeset
|
2294 | gdk_pixmap_unref(small_i); |
|
4388456cd80e
[gaim-migrate @ 654]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
636
diff
changeset
|
2295 | gdk_pixmap_unref(normal_i); |
|
4388456cd80e
[gaim-migrate @ 654]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
636
diff
changeset
|
2296 | gdk_pixmap_unref(big_i); |
|
4388456cd80e
[gaim-migrate @ 654]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
636
diff
changeset
|
2297 | gdk_pixmap_unref(font_i); |
|
1479
e7ec4ce61f5b
[gaim-migrate @ 1489]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1464
diff
changeset
|
2298 | gdk_pixmap_unref(fgcolor_i); |
|
e7ec4ce61f5b
[gaim-migrate @ 1489]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1464
diff
changeset
|
2299 | gdk_pixmap_unref(bgcolor_i); |
|
e7ec4ce61f5b
[gaim-migrate @ 1489]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1464
diff
changeset
|
2300 | gdk_pixmap_unref(link_i); |
|
644
4388456cd80e
[gaim-migrate @ 654]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
636
diff
changeset
|
2301 | gdk_pixmap_unref(smiley_i); |
|
1479
e7ec4ce61f5b
[gaim-migrate @ 1489]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1464
diff
changeset
|
2302 | gdk_pixmap_unref(wood_i); |
|
e7ec4ce61f5b
[gaim-migrate @ 1489]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1464
diff
changeset
|
2303 | gdk_pixmap_unref(save_i); |
|
e7ec4ce61f5b
[gaim-migrate @ 1489]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1464
diff
changeset
|
2304 | gdk_pixmap_unref(speaker_i); |
| 3044 | 2305 | gdk_pixmap_unref(image_i); |
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
2306 | |
| 3275 | 2307 | c->toolbar = toolbar; |
| 66 | 2308 | c->bold = bold; |
| 2309 | c->strike = strike; | |
|
615
5b8e30b7a3fe
[gaim-migrate @ 625]
Todd Kulesza <fflewddur@users.sourceforge.net>
parents:
611
diff
changeset
|
2310 | c->italic = italic; |
| 66 | 2311 | c->underline = underline; |
|
615
5b8e30b7a3fe
[gaim-migrate @ 625]
Todd Kulesza <fflewddur@users.sourceforge.net>
parents:
611
diff
changeset
|
2312 | c->log_button = wood; |
| 854 | 2313 | c->fgcolorbtn = fgcolorbtn; |
| 2314 | c->bgcolorbtn = bgcolorbtn; | |
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
2315 | c->link = link; |
|
608
4c11ac40558f
[gaim-migrate @ 618]
Todd Kulesza <fflewddur@users.sourceforge.net>
parents:
604
diff
changeset
|
2316 | c->wood = wood; |
|
308
61686e78caa9
[gaim-migrate @ 318]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
283
diff
changeset
|
2317 | c->font = font; |
|
570
3450eeb314a1
[gaim-migrate @ 580]
Todd Kulesza <fflewddur@users.sourceforge.net>
parents:
563
diff
changeset
|
2318 | c->smiley = smiley; |
| 3044 | 2319 | c->imagebtn = image; |
| 3300 | 2320 | c->speaker = speaker; |
| 2321 | c->speaker_p = speaker_p; | |
| 66 | 2322 | |
|
1525
b4ece1a718cd
[gaim-migrate @ 1535]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1486
diff
changeset
|
2323 | gtk_widget_set_sensitive(c->log_button, ((logging_options & OPT_LOG_ALL)) ? FALSE : TRUE); |
| 66 | 2324 | gtk_widget_set_sensitive(c->bold, ((font_options & OPT_FONT_BOLD)) ? FALSE : TRUE); |
| 2325 | gtk_widget_set_sensitive(c->italic, ((font_options & OPT_FONT_ITALIC)) ? FALSE : TRUE); | |
| 2326 | gtk_widget_set_sensitive(c->underline, ((font_options & OPT_FONT_UNDERLINE)) ? FALSE : TRUE); | |
| 2327 | gtk_widget_set_sensitive(c->strike, ((font_options & OPT_FONT_STRIKE)) ? FALSE : TRUE); | |
|
472
9a5b8da2d760
[gaim-migrate @ 482]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
411
diff
changeset
|
2328 | |
|
9a5b8da2d760
[gaim-migrate @ 482]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
411
diff
changeset
|
2329 | return toolbar; |
|
9a5b8da2d760
[gaim-migrate @ 482]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
411
diff
changeset
|
2330 | } |
|
9a5b8da2d760
[gaim-migrate @ 482]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
411
diff
changeset
|
2331 | |
|
1898
695a31e4452b
[gaim-migrate @ 1908]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1889
diff
changeset
|
2332 | static void convo_sel_send(GtkObject *m, struct gaim_connection *c) |
|
960
c4012584334f
[gaim-migrate @ 970]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
936
diff
changeset
|
2333 | { |
|
c4012584334f
[gaim-migrate @ 970]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
936
diff
changeset
|
2334 | struct conversation *cnv = gtk_object_get_user_data(m); |
|
1898
695a31e4452b
[gaim-migrate @ 1908]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1889
diff
changeset
|
2335 | |
|
695a31e4452b
[gaim-migrate @ 1908]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1889
diff
changeset
|
2336 | if (cnv->gc == c) |
|
695a31e4452b
[gaim-migrate @ 1908]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1889
diff
changeset
|
2337 | return; |
|
695a31e4452b
[gaim-migrate @ 1908]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1889
diff
changeset
|
2338 | |
|
960
c4012584334f
[gaim-migrate @ 970]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
936
diff
changeset
|
2339 | cnv->gc = c; |
| 1340 | 2340 | |
|
2787
050506d3945f
[gaim-migrate @ 2800]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2773
diff
changeset
|
2341 | set_convo_title(cnv); |
|
050506d3945f
[gaim-migrate @ 2800]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2773
diff
changeset
|
2342 | |
| 1342 | 2343 | update_buttons_by_protocol(cnv); |
|
1898
695a31e4452b
[gaim-migrate @ 1908]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1889
diff
changeset
|
2344 | |
|
2191
a40e37f5bf27
[gaim-migrate @ 2201]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2167
diff
changeset
|
2345 | update_icon(cnv); |
|
2231
9d8593ab093e
[gaim-migrate @ 2241]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2227
diff
changeset
|
2346 | update_checkbox(cnv); |
| 3050 | 2347 | update_smilies(cnv); |
| 3081 | 2348 | gaim_setup_imhtml_smileys(cnv->text); |
|
960
c4012584334f
[gaim-migrate @ 970]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
936
diff
changeset
|
2349 | } |
|
c4012584334f
[gaim-migrate @ 970]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
936
diff
changeset
|
2350 | |
|
2379
cffc8ebf1bd4
[gaim-migrate @ 2392]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2375
diff
changeset
|
2351 | int set_dispstyle(int chat) |
|
cffc8ebf1bd4
[gaim-migrate @ 2392]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2375
diff
changeset
|
2352 | { |
|
cffc8ebf1bd4
[gaim-migrate @ 2392]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2375
diff
changeset
|
2353 | int dispstyle; |
|
cffc8ebf1bd4
[gaim-migrate @ 2392]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2375
diff
changeset
|
2354 | |
|
cffc8ebf1bd4
[gaim-migrate @ 2392]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2375
diff
changeset
|
2355 | if (chat) { |
|
cffc8ebf1bd4
[gaim-migrate @ 2392]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2375
diff
changeset
|
2356 | switch (chat_options & (OPT_CHAT_BUTTON_TEXT | OPT_CHAT_BUTTON_XPM)) { |
|
cffc8ebf1bd4
[gaim-migrate @ 2392]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2375
diff
changeset
|
2357 | case OPT_CHAT_BUTTON_TEXT: |
|
cffc8ebf1bd4
[gaim-migrate @ 2392]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2375
diff
changeset
|
2358 | dispstyle = 1; |
|
cffc8ebf1bd4
[gaim-migrate @ 2392]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2375
diff
changeset
|
2359 | break; |
|
cffc8ebf1bd4
[gaim-migrate @ 2392]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2375
diff
changeset
|
2360 | case OPT_CHAT_BUTTON_XPM: |
|
cffc8ebf1bd4
[gaim-migrate @ 2392]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2375
diff
changeset
|
2361 | dispstyle = 0; |
|
cffc8ebf1bd4
[gaim-migrate @ 2392]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2375
diff
changeset
|
2362 | break; |
|
cffc8ebf1bd4
[gaim-migrate @ 2392]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2375
diff
changeset
|
2363 | default: /* both or neither */ |
|
cffc8ebf1bd4
[gaim-migrate @ 2392]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2375
diff
changeset
|
2364 | dispstyle = 2; |
|
cffc8ebf1bd4
[gaim-migrate @ 2392]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2375
diff
changeset
|
2365 | break; |
|
cffc8ebf1bd4
[gaim-migrate @ 2392]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2375
diff
changeset
|
2366 | } |
|
cffc8ebf1bd4
[gaim-migrate @ 2392]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2375
diff
changeset
|
2367 | } else { |
|
cffc8ebf1bd4
[gaim-migrate @ 2392]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2375
diff
changeset
|
2368 | switch (im_options & (OPT_IM_BUTTON_TEXT | OPT_IM_BUTTON_XPM)) { |
|
cffc8ebf1bd4
[gaim-migrate @ 2392]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2375
diff
changeset
|
2369 | case OPT_IM_BUTTON_TEXT: |
|
cffc8ebf1bd4
[gaim-migrate @ 2392]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2375
diff
changeset
|
2370 | dispstyle = 1; |
|
cffc8ebf1bd4
[gaim-migrate @ 2392]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2375
diff
changeset
|
2371 | break; |
|
cffc8ebf1bd4
[gaim-migrate @ 2392]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2375
diff
changeset
|
2372 | case OPT_IM_BUTTON_XPM: |
|
cffc8ebf1bd4
[gaim-migrate @ 2392]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2375
diff
changeset
|
2373 | dispstyle = 0; |
|
cffc8ebf1bd4
[gaim-migrate @ 2392]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2375
diff
changeset
|
2374 | break; |
|
cffc8ebf1bd4
[gaim-migrate @ 2392]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2375
diff
changeset
|
2375 | default: /* both or neither */ |
|
cffc8ebf1bd4
[gaim-migrate @ 2392]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2375
diff
changeset
|
2376 | dispstyle = 2; |
|
cffc8ebf1bd4
[gaim-migrate @ 2392]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2375
diff
changeset
|
2377 | break; |
|
cffc8ebf1bd4
[gaim-migrate @ 2392]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2375
diff
changeset
|
2378 | } |
|
cffc8ebf1bd4
[gaim-migrate @ 2392]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2375
diff
changeset
|
2379 | } |
|
cffc8ebf1bd4
[gaim-migrate @ 2392]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2375
diff
changeset
|
2380 | return dispstyle; |
|
cffc8ebf1bd4
[gaim-migrate @ 2392]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2375
diff
changeset
|
2381 | } |
|
cffc8ebf1bd4
[gaim-migrate @ 2392]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2375
diff
changeset
|
2382 | |
|
1030
b9fa9eadc0a4
[gaim-migrate @ 1040]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1002
diff
changeset
|
2383 | void update_convo_add_button(struct conversation *c) |
|
b9fa9eadc0a4
[gaim-migrate @ 1040]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1002
diff
changeset
|
2384 | { |
|
b9fa9eadc0a4
[gaim-migrate @ 1040]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1002
diff
changeset
|
2385 | int dispstyle = set_dispstyle(0); |
|
b9fa9eadc0a4
[gaim-migrate @ 1040]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1002
diff
changeset
|
2386 | GtkWidget *parent = c->add->parent; |
|
1663
e57f4717fe58
[gaim-migrate @ 1673]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1647
diff
changeset
|
2387 | gboolean rebuild = FALSE; |
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
2388 | |
| 1352 | 2389 | if (find_buddy(c->gc, c->name)) { |
|
1663
e57f4717fe58
[gaim-migrate @ 1673]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1647
diff
changeset
|
2390 | if (!gtk_object_get_user_data(GTK_OBJECT(c->add))) { |
|
e57f4717fe58
[gaim-migrate @ 1673]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1647
diff
changeset
|
2391 | gtk_widget_destroy(c->add); |
|
e57f4717fe58
[gaim-migrate @ 1673]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1647
diff
changeset
|
2392 | c->add = picture_button2(c->window, _("Remove"), gnome_remove_xpm, dispstyle); |
|
e57f4717fe58
[gaim-migrate @ 1673]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1647
diff
changeset
|
2393 | rebuild = TRUE; |
|
e57f4717fe58
[gaim-migrate @ 1673]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1647
diff
changeset
|
2394 | } |
|
e57f4717fe58
[gaim-migrate @ 1673]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1647
diff
changeset
|
2395 | if (c->gc) { |
| 1352 | 2396 | if (c->gc->prpl->remove_buddy == NULL) |
| 2397 | gtk_widget_set_sensitive(c->add, FALSE); | |
| 2398 | else | |
| 2399 | gtk_widget_set_sensitive(c->add, TRUE); | |
|
1663
e57f4717fe58
[gaim-migrate @ 1673]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1647
diff
changeset
|
2400 | } else |
|
e57f4717fe58
[gaim-migrate @ 1673]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1647
diff
changeset
|
2401 | gtk_widget_set_sensitive(c->add, FALSE); |
|
e57f4717fe58
[gaim-migrate @ 1673]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1647
diff
changeset
|
2402 | gtk_object_set_user_data(GTK_OBJECT(c->add), c); |
|
1030
b9fa9eadc0a4
[gaim-migrate @ 1040]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1002
diff
changeset
|
2403 | } else { |
|
1663
e57f4717fe58
[gaim-migrate @ 1673]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1647
diff
changeset
|
2404 | if (gtk_object_get_user_data(GTK_OBJECT(c->add))) { |
|
e57f4717fe58
[gaim-migrate @ 1673]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1647
diff
changeset
|
2405 | gtk_widget_destroy(c->add); |
|
e57f4717fe58
[gaim-migrate @ 1673]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1647
diff
changeset
|
2406 | c->add = picture_button2(c->window, _("Add"), gnome_add_xpm, dispstyle); |
|
e57f4717fe58
[gaim-migrate @ 1673]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1647
diff
changeset
|
2407 | rebuild = TRUE; |
|
e57f4717fe58
[gaim-migrate @ 1673]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1647
diff
changeset
|
2408 | } |
|
e57f4717fe58
[gaim-migrate @ 1673]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1647
diff
changeset
|
2409 | if (c->gc) { |
| 1352 | 2410 | if (c->gc->prpl->add_buddy == NULL) |
| 2411 | gtk_widget_set_sensitive(c->add, FALSE); | |
| 2412 | else | |
| 2413 | gtk_widget_set_sensitive(c->add, TRUE); | |
|
1663
e57f4717fe58
[gaim-migrate @ 1673]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1647
diff
changeset
|
2414 | } else |
|
e57f4717fe58
[gaim-migrate @ 1673]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1647
diff
changeset
|
2415 | gtk_widget_set_sensitive(c->add, FALSE); |
|
1030
b9fa9eadc0a4
[gaim-migrate @ 1040]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1002
diff
changeset
|
2416 | } |
| 1352 | 2417 | |
|
1663
e57f4717fe58
[gaim-migrate @ 1673]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1647
diff
changeset
|
2418 | if (rebuild) { |
|
e57f4717fe58
[gaim-migrate @ 1673]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1647
diff
changeset
|
2419 | gtk_signal_connect(GTK_OBJECT(c->add), "clicked", GTK_SIGNAL_FUNC(add_callback), c); |
|
e57f4717fe58
[gaim-migrate @ 1673]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1647
diff
changeset
|
2420 | gtk_box_pack_end(GTK_BOX(parent), c->add, dispstyle, dispstyle, 0); |
|
e57f4717fe58
[gaim-migrate @ 1673]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1647
diff
changeset
|
2421 | gtk_box_reorder_child(GTK_BOX(parent), c->add, 2); |
|
e57f4717fe58
[gaim-migrate @ 1673]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1647
diff
changeset
|
2422 | gtk_widget_show(c->add); |
|
e57f4717fe58
[gaim-migrate @ 1673]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1647
diff
changeset
|
2423 | } |
|
1030
b9fa9eadc0a4
[gaim-migrate @ 1040]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1002
diff
changeset
|
2424 | } |
|
b9fa9eadc0a4
[gaim-migrate @ 1040]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1002
diff
changeset
|
2425 | |
|
960
c4012584334f
[gaim-migrate @ 970]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
936
diff
changeset
|
2426 | static void create_convo_menu(struct conversation *cnv) |
|
c4012584334f
[gaim-migrate @ 970]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
936
diff
changeset
|
2427 | { |
|
c4012584334f
[gaim-migrate @ 970]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
936
diff
changeset
|
2428 | GtkWidget *menu, *opt; |
|
c4012584334f
[gaim-migrate @ 970]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
936
diff
changeset
|
2429 | GSList *g = connections; |
|
c4012584334f
[gaim-migrate @ 970]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
936
diff
changeset
|
2430 | struct gaim_connection *c; |
|
1235
c8d6eef4edce
[gaim-migrate @ 1245]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1228
diff
changeset
|
2431 | char buf[2048]; |
|
960
c4012584334f
[gaim-migrate @ 970]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
936
diff
changeset
|
2432 | |
|
c4012584334f
[gaim-migrate @ 970]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
936
diff
changeset
|
2433 | if (g_slist_length(g) < 2) |
|
c4012584334f
[gaim-migrate @ 970]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
936
diff
changeset
|
2434 | gtk_widget_hide(cnv->menu->parent); |
|
c4012584334f
[gaim-migrate @ 970]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
936
diff
changeset
|
2435 | else { |
|
c4012584334f
[gaim-migrate @ 970]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
936
diff
changeset
|
2436 | menu = gtk_menu_new(); |
|
c4012584334f
[gaim-migrate @ 970]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
936
diff
changeset
|
2437 | |
|
c4012584334f
[gaim-migrate @ 970]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
936
diff
changeset
|
2438 | while (g) { |
|
c4012584334f
[gaim-migrate @ 970]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
936
diff
changeset
|
2439 | c = (struct gaim_connection *)g->data; |
|
2662
9201ea07c91e
[gaim-migrate @ 2675]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2631
diff
changeset
|
2440 | g_snprintf(buf, sizeof buf, "%s (%s)", c->username, c->prpl->name()); |
|
1235
c8d6eef4edce
[gaim-migrate @ 1245]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1228
diff
changeset
|
2441 | opt = gtk_menu_item_new_with_label(buf); |
|
960
c4012584334f
[gaim-migrate @ 970]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
936
diff
changeset
|
2442 | gtk_object_set_user_data(GTK_OBJECT(opt), cnv); |
|
c4012584334f
[gaim-migrate @ 970]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
936
diff
changeset
|
2443 | gtk_signal_connect(GTK_OBJECT(opt), "activate", |
|
c4012584334f
[gaim-migrate @ 970]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
936
diff
changeset
|
2444 | GTK_SIGNAL_FUNC(convo_sel_send), c); |
|
c4012584334f
[gaim-migrate @ 970]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
936
diff
changeset
|
2445 | gtk_widget_show(opt); |
|
c4012584334f
[gaim-migrate @ 970]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
936
diff
changeset
|
2446 | gtk_menu_append(GTK_MENU(menu), opt); |
|
c4012584334f
[gaim-migrate @ 970]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
936
diff
changeset
|
2447 | g = g->next; |
|
c4012584334f
[gaim-migrate @ 970]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
936
diff
changeset
|
2448 | } |
|
c4012584334f
[gaim-migrate @ 970]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
936
diff
changeset
|
2449 | |
|
c4012584334f
[gaim-migrate @ 970]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
936
diff
changeset
|
2450 | gtk_option_menu_remove_menu(GTK_OPTION_MENU(cnv->menu)); |
|
c4012584334f
[gaim-migrate @ 970]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
936
diff
changeset
|
2451 | gtk_option_menu_set_menu(GTK_OPTION_MENU(cnv->menu), menu); |
|
c4012584334f
[gaim-migrate @ 970]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
936
diff
changeset
|
2452 | gtk_option_menu_set_history(GTK_OPTION_MENU(cnv->menu), 0); |
|
c4012584334f
[gaim-migrate @ 970]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
936
diff
changeset
|
2453 | |
|
c4012584334f
[gaim-migrate @ 970]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
936
diff
changeset
|
2454 | gtk_widget_show(cnv->menu); |
|
c4012584334f
[gaim-migrate @ 970]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
936
diff
changeset
|
2455 | gtk_widget_show(cnv->menu->parent); |
|
c4012584334f
[gaim-migrate @ 970]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
936
diff
changeset
|
2456 | } |
|
c4012584334f
[gaim-migrate @ 970]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
936
diff
changeset
|
2457 | } |
|
c4012584334f
[gaim-migrate @ 970]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
936
diff
changeset
|
2458 | |
|
2111
34615a640c59
[gaim-migrate @ 2121]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2109
diff
changeset
|
2459 | void redo_convo_menus() |
|
960
c4012584334f
[gaim-migrate @ 970]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
936
diff
changeset
|
2460 | { |
|
c4012584334f
[gaim-migrate @ 970]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
936
diff
changeset
|
2461 | GList *c = conversations; |
|
c4012584334f
[gaim-migrate @ 970]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
936
diff
changeset
|
2462 | struct conversation *C; |
|
c4012584334f
[gaim-migrate @ 970]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
936
diff
changeset
|
2463 | |
|
c4012584334f
[gaim-migrate @ 970]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
936
diff
changeset
|
2464 | while (c) { |
|
c4012584334f
[gaim-migrate @ 970]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
936
diff
changeset
|
2465 | C = (struct conversation *)c->data; |
|
1898
695a31e4452b
[gaim-migrate @ 1908]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1889
diff
changeset
|
2466 | c = c->next; |
|
695a31e4452b
[gaim-migrate @ 1908]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1889
diff
changeset
|
2467 | |
|
960
c4012584334f
[gaim-migrate @ 970]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
936
diff
changeset
|
2468 | create_convo_menu(C); |
|
993
8798e0ac047d
[gaim-migrate @ 1003]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
980
diff
changeset
|
2469 | |
|
2111
34615a640c59
[gaim-migrate @ 2121]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2109
diff
changeset
|
2470 | if (g_slist_find(connections, C->gc)) |
|
2487
729107de47ac
[gaim-migrate @ 2500]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2483
diff
changeset
|
2471 | set_convo_gc(C, C->gc); |
|
729107de47ac
[gaim-migrate @ 2500]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2483
diff
changeset
|
2472 | else |
|
729107de47ac
[gaim-migrate @ 2500]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2483
diff
changeset
|
2473 | set_convo_gc(C, connections ? connections->data : NULL); |
|
2111
34615a640c59
[gaim-migrate @ 2121]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2109
diff
changeset
|
2474 | } |
|
34615a640c59
[gaim-migrate @ 2121]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2109
diff
changeset
|
2475 | } |
|
34615a640c59
[gaim-migrate @ 2121]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2109
diff
changeset
|
2476 | |
|
34615a640c59
[gaim-migrate @ 2121]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2109
diff
changeset
|
2477 | void convo_menu_remove(struct gaim_connection *gc) |
|
34615a640c59
[gaim-migrate @ 2121]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2109
diff
changeset
|
2478 | { |
|
34615a640c59
[gaim-migrate @ 2121]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2109
diff
changeset
|
2479 | GList *c = conversations; |
|
34615a640c59
[gaim-migrate @ 2121]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2109
diff
changeset
|
2480 | struct conversation *C; |
|
34615a640c59
[gaim-migrate @ 2121]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2109
diff
changeset
|
2481 | |
|
34615a640c59
[gaim-migrate @ 2121]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2109
diff
changeset
|
2482 | while (c) { |
|
34615a640c59
[gaim-migrate @ 2121]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2109
diff
changeset
|
2483 | C = (struct conversation *)c->data; |
|
34615a640c59
[gaim-migrate @ 2121]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2109
diff
changeset
|
2484 | c = c->next; |
|
2109
2368f86b01c2
[gaim-migrate @ 2119]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2104
diff
changeset
|
2485 | |
|
2191
a40e37f5bf27
[gaim-migrate @ 2201]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2167
diff
changeset
|
2486 | remove_icon(C); |
|
2231
9d8593ab093e
[gaim-migrate @ 2241]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2227
diff
changeset
|
2487 | remove_checkbox(C); |
|
1898
695a31e4452b
[gaim-migrate @ 1908]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1889
diff
changeset
|
2488 | } |
|
695a31e4452b
[gaim-migrate @ 1908]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1889
diff
changeset
|
2489 | } |
|
695a31e4452b
[gaim-migrate @ 1908]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1889
diff
changeset
|
2490 | |
|
695a31e4452b
[gaim-migrate @ 1908]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1889
diff
changeset
|
2491 | void set_convo_gc(struct conversation *c, struct gaim_connection *gc) |
|
695a31e4452b
[gaim-migrate @ 1908]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1889
diff
changeset
|
2492 | { |
|
2722
06be178952c6
[gaim-migrate @ 2735]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2706
diff
changeset
|
2493 | if (gc) |
|
06be178952c6
[gaim-migrate @ 2735]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2706
diff
changeset
|
2494 | gtk_option_menu_set_history(GTK_OPTION_MENU(c->menu), g_slist_index(connections, gc)); |
|
06be178952c6
[gaim-migrate @ 2735]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2706
diff
changeset
|
2495 | |
|
1898
695a31e4452b
[gaim-migrate @ 1908]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1889
diff
changeset
|
2496 | if (c->gc == gc) |
|
695a31e4452b
[gaim-migrate @ 1908]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1889
diff
changeset
|
2497 | return; |
|
993
8798e0ac047d
[gaim-migrate @ 1003]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
980
diff
changeset
|
2498 | |
|
1898
695a31e4452b
[gaim-migrate @ 1908]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1889
diff
changeset
|
2499 | c->gc = gc; |
|
1030
b9fa9eadc0a4
[gaim-migrate @ 1040]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1002
diff
changeset
|
2500 | |
|
2787
050506d3945f
[gaim-migrate @ 2800]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2773
diff
changeset
|
2501 | set_convo_title(c); |
|
1898
695a31e4452b
[gaim-migrate @ 1908]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1889
diff
changeset
|
2502 | update_buttons_by_protocol(c); |
|
695a31e4452b
[gaim-migrate @ 1908]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1889
diff
changeset
|
2503 | |
|
2191
a40e37f5bf27
[gaim-migrate @ 2201]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2167
diff
changeset
|
2504 | update_icon(c); |
|
2231
9d8593ab093e
[gaim-migrate @ 2241]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2227
diff
changeset
|
2505 | update_checkbox(c); |
| 3051 | 2506 | update_smilies(c); |
| 3081 | 2507 | gaim_setup_imhtml_smileys(c->text); |
|
960
c4012584334f
[gaim-migrate @ 970]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
936
diff
changeset
|
2508 | } |
|
472
9a5b8da2d760
[gaim-migrate @ 482]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
411
diff
changeset
|
2509 | |
| 1340 | 2510 | void update_buttons_by_protocol(struct conversation *c) |
| 2511 | { | |
|
2372
c24942700dfd
[gaim-migrate @ 2385]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2363
diff
changeset
|
2512 | if (!c->gc) { |
|
2619
5d8a8feb4ad1
[gaim-migrate @ 2632]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2582
diff
changeset
|
2513 | if (c->info) |
|
5d8a8feb4ad1
[gaim-migrate @ 2632]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2582
diff
changeset
|
2514 | gtk_widget_set_sensitive(c->info, FALSE); |
|
5d8a8feb4ad1
[gaim-migrate @ 2632]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2582
diff
changeset
|
2515 | if (c->send) |
|
5d8a8feb4ad1
[gaim-migrate @ 2632]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2582
diff
changeset
|
2516 | gtk_widget_set_sensitive(c->send, FALSE); |
|
5d8a8feb4ad1
[gaim-migrate @ 2632]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2582
diff
changeset
|
2517 | if (c->warn) |
|
5d8a8feb4ad1
[gaim-migrate @ 2632]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2582
diff
changeset
|
2518 | gtk_widget_set_sensitive(c->warn, FALSE); |
|
5d8a8feb4ad1
[gaim-migrate @ 2632]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2582
diff
changeset
|
2519 | if (c->block) |
|
5d8a8feb4ad1
[gaim-migrate @ 2632]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2582
diff
changeset
|
2520 | gtk_widget_set_sensitive(c->block, FALSE); |
|
5d8a8feb4ad1
[gaim-migrate @ 2632]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2582
diff
changeset
|
2521 | if (c->add) |
|
5d8a8feb4ad1
[gaim-migrate @ 2632]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2582
diff
changeset
|
2522 | gtk_widget_set_sensitive(c->add, FALSE); |
|
2546
7e01dccde05d
[gaim-migrate @ 2559]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2541
diff
changeset
|
2523 | if (c->whisper) |
|
7e01dccde05d
[gaim-migrate @ 2559]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2541
diff
changeset
|
2524 | gtk_widget_set_sensitive(c->whisper, FALSE); |
|
7e01dccde05d
[gaim-migrate @ 2559]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2541
diff
changeset
|
2525 | if (c->invite) |
|
7e01dccde05d
[gaim-migrate @ 2559]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2541
diff
changeset
|
2526 | gtk_widget_set_sensitive(c->invite, FALSE); |
| 1352 | 2527 | return; |
| 2528 | } | |
|
2372
c24942700dfd
[gaim-migrate @ 2385]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2363
diff
changeset
|
2529 | |
|
1532
99152ea2d55e
[gaim-migrate @ 1542]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1525
diff
changeset
|
2530 | if (c->gc->prpl->get_info == NULL && c->info) |
| 1340 | 2531 | gtk_widget_set_sensitive(c->info, FALSE); |
|
1398
f1baeeb78bb1
[gaim-migrate @ 1408]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1370
diff
changeset
|
2532 | else if (c->info) |
| 1340 | 2533 | gtk_widget_set_sensitive(c->info, TRUE); |
| 1341 | 2534 | |
| 2094 | 2535 | if (c->is_chat) { |
| 2536 | if (c->gc->prpl->chat_send == NULL && c->send) | |
| 2537 | gtk_widget_set_sensitive(c->send, FALSE); | |
| 2538 | else | |
| 2539 | gtk_widget_set_sensitive(c->send, TRUE); | |
| 3044 | 2540 | gtk_widget_set_sensitive(c->imagebtn, FALSE); |
| 2094 | 2541 | } else { |
| 2542 | if (c->gc->prpl->send_im == NULL && c->send) | |
| 2543 | gtk_widget_set_sensitive(c->send, FALSE); | |
| 2544 | else | |
| 2545 | gtk_widget_set_sensitive(c->send, TRUE); | |
| 3044 | 2546 | if (c->gc->prpl->options & OPT_PROTO_IM_IMAGE) |
| 2547 | gtk_widget_set_sensitive(c->imagebtn, TRUE); | |
| 2548 | else | |
| 2549 | gtk_widget_set_sensitive(c->imagebtn, FALSE); | |
| 2094 | 2550 | } |
| 1341 | 2551 | |
| 1343 | 2552 | if (c->gc->prpl->warn == NULL && c->warn) |
| 1341 | 2553 | gtk_widget_set_sensitive(c->warn, FALSE); |
|
1398
f1baeeb78bb1
[gaim-migrate @ 1408]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1370
diff
changeset
|
2554 | else if (c->warn) |
| 1341 | 2555 | gtk_widget_set_sensitive(c->warn, TRUE); |
| 2556 | ||
| 1343 | 2557 | if (c->gc->prpl->add_permit == NULL && c->block) |
| 1341 | 2558 | gtk_widget_set_sensitive(c->block, FALSE); |
|
1398
f1baeeb78bb1
[gaim-migrate @ 1408]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1370
diff
changeset
|
2559 | else if (c->block) |
| 1341 | 2560 | gtk_widget_set_sensitive(c->block, TRUE); |
| 2561 | ||
| 1343 | 2562 | if (c->add) |
| 2563 | update_convo_add_button(c); | |
| 2564 | ||
|
2372
c24942700dfd
[gaim-migrate @ 2385]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2363
diff
changeset
|
2565 | if (c->whisper) { |
| 1343 | 2566 | if (c->gc->prpl->chat_whisper == NULL) |
| 2567 | gtk_widget_set_sensitive(c->whisper, FALSE); | |
| 2568 | else | |
| 2569 | gtk_widget_set_sensitive(c->whisper, TRUE); | |
| 2570 | } | |
| 2571 | ||
|
2372
c24942700dfd
[gaim-migrate @ 2385]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2363
diff
changeset
|
2572 | if (c->invite) { |
| 1343 | 2573 | if (c->gc->prpl->chat_invite == NULL) |
| 2574 | gtk_widget_set_sensitive(c->invite, FALSE); | |
| 2575 | else | |
| 2576 | gtk_widget_set_sensitive(c->invite, TRUE); | |
| 2577 | } | |
| 1340 | 2578 | } |
| 2579 | ||
|
2843
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
2580 | void convo_switch(GtkNotebook *notebook, GtkWidget *page, gint page_num, gpointer data) |
|
1573
878f7c59ee85
[gaim-migrate @ 1583]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1532
diff
changeset
|
2581 | { |
|
2843
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
2582 | GtkWidget *label = gtk_notebook_get_tab_label(notebook, |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
2583 | gtk_notebook_get_nth_page(notebook, page_num)); |
|
1573
878f7c59ee85
[gaim-migrate @ 1583]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1532
diff
changeset
|
2584 | GtkStyle *style; |
|
2843
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
2585 | struct conversation *c; |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
2586 | if ((convo_options & OPT_CONVO_COMBINE) && |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
2587 | (im_options & OPT_IM_ONE_WINDOW) && |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
2588 | (chat_options & OPT_CHAT_ONE_WINDOW)) { |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
2589 | int len = g_list_length(conversations); |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
2590 | if (page_num < len) |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
2591 | c = g_list_nth_data(conversations, page_num); |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
2592 | else |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
2593 | c = g_list_nth_data(chats, page_num - len); |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
2594 | } else if (GTK_WIDGET(notebook) == convo_notebook) |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
2595 | c = g_list_nth_data(conversations, page_num); |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
2596 | else |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
2597 | c = g_list_nth_data(chats, page_num); |
|
1573
878f7c59ee85
[gaim-migrate @ 1583]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1532
diff
changeset
|
2598 | if (c && c->window && c->entry) |
|
878f7c59ee85
[gaim-migrate @ 1583]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1532
diff
changeset
|
2599 | gtk_window_set_focus(GTK_WINDOW(c->window), c->entry); |
|
878f7c59ee85
[gaim-migrate @ 1583]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1532
diff
changeset
|
2600 | if (!GTK_WIDGET_REALIZED(label)) |
|
878f7c59ee85
[gaim-migrate @ 1583]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1532
diff
changeset
|
2601 | return; |
| 2993 | 2602 | if (c->unseen == -1) return; |
|
1573
878f7c59ee85
[gaim-migrate @ 1583]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1532
diff
changeset
|
2603 | style = gtk_style_new(); |
| 3374 | 2604 | #if !GTK_CHECK_VERSION(1,3,0) |
|
2725
a844d0964552
[gaim-migrate @ 2738]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2722
diff
changeset
|
2605 | gdk_font_unref(gtk_style_get_font(style)); |
| 3374 | 2606 | #endif |
|
2725
a844d0964552
[gaim-migrate @ 2738]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2722
diff
changeset
|
2607 | gtk_style_set_font(style, gdk_font_ref(gtk_style_get_font(label->style))); |
|
1573
878f7c59ee85
[gaim-migrate @ 1583]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1532
diff
changeset
|
2608 | gtk_widget_set_style(label, style); |
|
878f7c59ee85
[gaim-migrate @ 1583]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1532
diff
changeset
|
2609 | gtk_style_unref(style); |
|
2843
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
2610 | if (c) |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
2611 | c->unseen = 0; |
|
1573
878f7c59ee85
[gaim-migrate @ 1583]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1532
diff
changeset
|
2612 | } |
|
878f7c59ee85
[gaim-migrate @ 1583]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1532
diff
changeset
|
2613 | |
| 2993 | 2614 | void show_typing(struct conversation *c) { |
| 2615 | ||
| 2616 | if (c->is_chat) /* We shouldn't be getting typing notifications from chats. */ | |
| 2617 | return; | |
| 2618 | if (im_options & OPT_IM_ONE_WINDOW) { /* We'll make the tab green */ | |
| 3003 | 2619 | GtkStyle *style; |
| 2620 | GtkNotebook *notebook = GTK_NOTEBOOK(c->is_chat ? chat_notebook : convo_notebook); | |
| 2621 | int offs = ((convo_options & OPT_CONVO_COMBINE) && | |
| 2622 | (im_options & OPT_IM_ONE_WINDOW) && c->is_chat) ? | |
| 2623 | g_list_length(conversations) : 0; | |
| 2624 | GList *ws = (c->is_chat ? chats : conversations); | |
| 2625 | GtkWidget *label = gtk_notebook_get_tab_label(notebook, | |
| 2626 | gtk_notebook_get_nth_page(notebook, | |
| 2627 | offs + g_list_index(ws, c))); | |
| 2993 | 2628 | style = gtk_style_new(); |
| 2629 | if (!GTK_WIDGET_REALIZED(label)) | |
| 2630 | gtk_widget_realize(label); | |
| 3382 | 2631 | #if !GTK_CHECK_VERSION(1,3,0) |
| 2993 | 2632 | gdk_font_unref(gtk_style_get_font(style)); |
| 3382 | 2633 | #endif |
| 2993 | 2634 | gtk_style_set_font(style, gdk_font_ref(gtk_style_get_font(label->style))); |
| 2635 | style->fg[0].red = 0x0000; | |
| 2636 | style->fg[0].green = 0x9999; | |
| 2637 | style->fg[0].blue = 0x0000; | |
| 2638 | gtk_widget_set_style(label, style); | |
| 2639 | debug_printf("setting style\n"); | |
| 2640 | gtk_style_unref(style); | |
| 2641 | c->unseen = -1; | |
| 2642 | } else { | |
| 2643 | GtkWindow *win = (GtkWindow *)c->window; | |
| 2644 | char *buf; | |
| 2645 | if (strstr(win->title, " [TYPING]")) | |
| 2646 | return; | |
| 2647 | buf = g_malloc(strlen(win->title) + strlen(" [TYPING]") + 1); | |
| 2648 | g_snprintf(buf, | |
| 2649 | strlen(win->title) + strlen(" [TYPING]") + 1, "%s [TYPING]", | |
| 2650 | win->title); | |
| 2651 | gtk_window_set_title(win, buf); | |
| 2652 | g_free(buf); | |
| 2653 | } | |
| 2654 | ||
| 2655 | } | |
| 2656 | ||
| 2657 | /* This returns a boolean, so that it can timeout */ | |
| 2658 | gboolean reset_typing(char *name) { | |
| 2659 | struct conversation *c = find_conversation(name); | |
| 2660 | if (!c) { | |
| 2661 | g_free(name); | |
| 2662 | return FALSE; | |
| 2663 | } | |
| 2664 | /* Reset the title (if necessary) */ | |
| 2665 | if (c->is_chat) { | |
| 2666 | g_free(name); | |
| 2667 | c->typing_timeout = 0; | |
| 2668 | return FALSE; | |
| 2669 | } | |
| 2670 | if (!(im_options & OPT_IM_ONE_WINDOW)) { | |
| 2671 | GtkWindow *win = (GtkWindow*)c->window; | |
| 2672 | char *new_title; | |
| 2673 | if (strstr(win->title, " [TYPING]")) { | |
| 2674 | new_title = g_malloc(strlen(win->title) - strlen("[TYPING]")); | |
| 2675 | g_snprintf(new_title, strlen(win->title) - strlen("[TYPING]"), win->title); | |
| 2676 | gtk_window_set_title(win, new_title); | |
| 2677 | g_free(new_title); | |
| 2678 | ||
| 2679 | } | |
| 2680 | } else if (c->unseen == -1) { | |
| 2681 | GtkNotebook *notebook = GTK_NOTEBOOK(convo_notebook); | |
| 2682 | int offs = ((convo_options & OPT_CONVO_COMBINE) && | |
| 2683 | (im_options & OPT_IM_ONE_WINDOW) && c->is_chat) ? | |
| 2684 | g_list_length(conversations) : 0; | |
| 2685 | GList *ws = (conversations); | |
| 2686 | GtkWidget *label = gtk_notebook_get_tab_label(notebook, | |
| 2687 | gtk_notebook_get_nth_page(notebook, | |
| 2688 | offs + g_list_index(ws, c))); | |
| 2689 | GtkStyle *style; | |
| 2690 | style = gtk_style_new(); | |
| 2691 | if (!GTK_WIDGET_REALIZED(label)) | |
| 2692 | gtk_widget_realize(label); | |
| 3382 | 2693 | #if !GTK_CHECK_VERSION(1,3,0) |
| 2993 | 2694 | gdk_font_unref(gtk_style_get_font(style)); |
| 3382 | 2695 | #endif |
| 2993 | 2696 | gtk_style_set_font(style, gdk_font_ref(gtk_style_get_font(label->style))); |
| 2697 | c->unseen = 0; | |
| 2698 | gtk_widget_set_style(label, style); | |
| 2699 | gtk_style_unref(style); | |
| 2700 | } | |
| 2701 | g_free(name); | |
| 2702 | c->typing_timeout = 0; | |
| 2703 | return FALSE; | |
| 2704 | } | |
| 1340 | 2705 | |
|
472
9a5b8da2d760
[gaim-migrate @ 482]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
411
diff
changeset
|
2706 | void show_conv(struct conversation *c) |
|
9a5b8da2d760
[gaim-migrate @ 482]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
411
diff
changeset
|
2707 | { |
|
9a5b8da2d760
[gaim-migrate @ 482]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
411
diff
changeset
|
2708 | GtkWidget *win; |
|
1573
878f7c59ee85
[gaim-migrate @ 1583]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1532
diff
changeset
|
2709 | GtkWidget *cont; |
|
615
5b8e30b7a3fe
[gaim-migrate @ 625]
Todd Kulesza <fflewddur@users.sourceforge.net>
parents:
611
diff
changeset
|
2710 | GtkWidget *text; |
|
5b8e30b7a3fe
[gaim-migrate @ 625]
Todd Kulesza <fflewddur@users.sourceforge.net>
parents:
611
diff
changeset
|
2711 | GtkWidget *sw; |
|
472
9a5b8da2d760
[gaim-migrate @ 482]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
411
diff
changeset
|
2712 | GtkWidget *send; |
|
9a5b8da2d760
[gaim-migrate @ 482]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
411
diff
changeset
|
2713 | GtkWidget *info; |
|
615
5b8e30b7a3fe
[gaim-migrate @ 625]
Todd Kulesza <fflewddur@users.sourceforge.net>
parents:
611
diff
changeset
|
2714 | GtkWidget *warn; |
|
5b8e30b7a3fe
[gaim-migrate @ 625]
Todd Kulesza <fflewddur@users.sourceforge.net>
parents:
611
diff
changeset
|
2715 | GtkWidget *block; |
|
472
9a5b8da2d760
[gaim-migrate @ 482]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
411
diff
changeset
|
2716 | GtkWidget *close; |
|
9a5b8da2d760
[gaim-migrate @ 482]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
411
diff
changeset
|
2717 | GtkWidget *entry; |
|
9a5b8da2d760
[gaim-migrate @ 482]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
411
diff
changeset
|
2718 | GtkWidget *bbox; |
|
615
5b8e30b7a3fe
[gaim-migrate @ 625]
Todd Kulesza <fflewddur@users.sourceforge.net>
parents:
611
diff
changeset
|
2719 | GtkWidget *vbox; |
|
472
9a5b8da2d760
[gaim-migrate @ 482]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
411
diff
changeset
|
2720 | GtkWidget *vbox2; |
|
9a5b8da2d760
[gaim-migrate @ 482]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
411
diff
changeset
|
2721 | GtkWidget *paned; |
|
615
5b8e30b7a3fe
[gaim-migrate @ 625]
Todd Kulesza <fflewddur@users.sourceforge.net>
parents:
611
diff
changeset
|
2722 | GtkWidget *add; |
| 623 | 2723 | GtkWidget *toolbar; |
|
960
c4012584334f
[gaim-migrate @ 970]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
936
diff
changeset
|
2724 | GtkWidget *hbox; |
|
c4012584334f
[gaim-migrate @ 970]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
936
diff
changeset
|
2725 | GtkWidget *label; |
|
1219
19c971df5be1
[gaim-migrate @ 1229]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1215
diff
changeset
|
2726 | int dispstyle = set_dispstyle(0); |
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
2727 | |
|
1219
19c971df5be1
[gaim-migrate @ 1229]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1215
diff
changeset
|
2728 | c->font_dialog = NULL; |
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
2729 | c->fg_color_dialog = NULL; |
|
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
2730 | c->bg_color_dialog = NULL; |
|
1219
19c971df5be1
[gaim-migrate @ 1229]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1215
diff
changeset
|
2731 | c->smiley_dialog = NULL; |
|
19c971df5be1
[gaim-migrate @ 1229]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1215
diff
changeset
|
2732 | c->link_dialog = NULL; |
|
19c971df5be1
[gaim-migrate @ 1229]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1215
diff
changeset
|
2733 | c->log_dialog = NULL; |
|
2763
18a8e555039b
[gaim-migrate @ 2776]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2761
diff
changeset
|
2734 | sprintf(c->fontxfld, "%s", fontxfld); |
|
1219
19c971df5be1
[gaim-migrate @ 1229]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1215
diff
changeset
|
2735 | sprintf(c->fontface, "%s", fontface); |
|
19c971df5be1
[gaim-migrate @ 1229]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1215
diff
changeset
|
2736 | c->hasfont = 0; |
|
19c971df5be1
[gaim-migrate @ 1229]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1215
diff
changeset
|
2737 | c->bgcol = bgcolor; |
|
19c971df5be1
[gaim-migrate @ 1229]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1215
diff
changeset
|
2738 | c->hasbg = 0; |
|
19c971df5be1
[gaim-migrate @ 1229]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1215
diff
changeset
|
2739 | c->fgcol = fgcolor; |
|
19c971df5be1
[gaim-migrate @ 1229]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1215
diff
changeset
|
2740 | c->hasfg = 0; |
|
19c971df5be1
[gaim-migrate @ 1229]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1215
diff
changeset
|
2741 | |
|
2313
f7f7ff0b8d4a
[gaim-migrate @ 2323]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2303
diff
changeset
|
2742 | if (im_options & OPT_IM_ONE_WINDOW) { |
|
1573
878f7c59ee85
[gaim-migrate @ 1583]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1532
diff
changeset
|
2743 | if (!all_convos) { |
|
878f7c59ee85
[gaim-migrate @ 1583]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1532
diff
changeset
|
2744 | win = all_convos = c->window = gtk_window_new(GTK_WINDOW_TOPLEVEL); |
|
2843
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
2745 | if ((convo_options & OPT_CONVO_COMBINE) && (chat_options & OPT_CHAT_ONE_WINDOW)) |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
2746 | all_chats = all_convos; |
|
1573
878f7c59ee85
[gaim-migrate @ 1583]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1532
diff
changeset
|
2747 | gtk_window_set_wmclass(GTK_WINDOW(win), "conversation", "Gaim"); |
|
2335
cc66dd355bbe
[gaim-migrate @ 2348]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2334
diff
changeset
|
2748 | gtk_window_set_policy(GTK_WINDOW(win), TRUE, TRUE, FALSE); |
|
1573
878f7c59ee85
[gaim-migrate @ 1583]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1532
diff
changeset
|
2749 | gtk_container_border_width(GTK_CONTAINER(win), 0); |
|
878f7c59ee85
[gaim-migrate @ 1583]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1532
diff
changeset
|
2750 | gtk_widget_realize(win); |
|
878f7c59ee85
[gaim-migrate @ 1583]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1532
diff
changeset
|
2751 | aol_icon(win->window); |
|
878f7c59ee85
[gaim-migrate @ 1583]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1532
diff
changeset
|
2752 | gtk_window_set_title(GTK_WINDOW(win), _("Gaim - Conversations")); |
|
878f7c59ee85
[gaim-migrate @ 1583]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1532
diff
changeset
|
2753 | gtk_signal_connect(GTK_OBJECT(win), "delete_event", |
|
878f7c59ee85
[gaim-migrate @ 1583]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1532
diff
changeset
|
2754 | GTK_SIGNAL_FUNC(delete_all_convo), NULL); |
|
878f7c59ee85
[gaim-migrate @ 1583]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1532
diff
changeset
|
2755 | |
|
878f7c59ee85
[gaim-migrate @ 1583]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1532
diff
changeset
|
2756 | convo_notebook = gtk_notebook_new(); |
|
2843
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
2757 | if ((convo_options & OPT_CONVO_COMBINE) && (chat_options & OPT_CHAT_ONE_WINDOW)) |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
2758 | chat_notebook = convo_notebook; |
|
2313
f7f7ff0b8d4a
[gaim-migrate @ 2323]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2303
diff
changeset
|
2759 | if (im_options & OPT_IM_SIDE_TAB) { |
|
f7f7ff0b8d4a
[gaim-migrate @ 2323]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2303
diff
changeset
|
2760 | if (im_options & OPT_IM_BR_TAB) { |
|
1757
8c57846a4691
[gaim-migrate @ 1767]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1735
diff
changeset
|
2761 | gtk_notebook_set_tab_pos(GTK_NOTEBOOK(convo_notebook), |
|
2372
c24942700dfd
[gaim-migrate @ 2385]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2363
diff
changeset
|
2762 | GTK_POS_RIGHT); |
|
1757
8c57846a4691
[gaim-migrate @ 1767]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1735
diff
changeset
|
2763 | } else { |
|
8c57846a4691
[gaim-migrate @ 1767]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1735
diff
changeset
|
2764 | gtk_notebook_set_tab_pos(GTK_NOTEBOOK(convo_notebook), |
|
2372
c24942700dfd
[gaim-migrate @ 2385]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2363
diff
changeset
|
2765 | GTK_POS_LEFT); |
|
1757
8c57846a4691
[gaim-migrate @ 1767]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1735
diff
changeset
|
2766 | } |
|
2372
c24942700dfd
[gaim-migrate @ 2385]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2363
diff
changeset
|
2767 | } else { |
|
2313
f7f7ff0b8d4a
[gaim-migrate @ 2323]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2303
diff
changeset
|
2768 | if (im_options & OPT_IM_BR_TAB) { |
|
1757
8c57846a4691
[gaim-migrate @ 1767]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1735
diff
changeset
|
2769 | gtk_notebook_set_tab_pos(GTK_NOTEBOOK(convo_notebook), |
|
2372
c24942700dfd
[gaim-migrate @ 2385]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2363
diff
changeset
|
2770 | GTK_POS_BOTTOM); |
|
1757
8c57846a4691
[gaim-migrate @ 1767]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1735
diff
changeset
|
2771 | } else { |
|
8c57846a4691
[gaim-migrate @ 1767]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1735
diff
changeset
|
2772 | gtk_notebook_set_tab_pos(GTK_NOTEBOOK(convo_notebook), |
|
2372
c24942700dfd
[gaim-migrate @ 2385]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2363
diff
changeset
|
2773 | GTK_POS_TOP); |
|
1757
8c57846a4691
[gaim-migrate @ 1767]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1735
diff
changeset
|
2774 | } |
|
8c57846a4691
[gaim-migrate @ 1767]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1735
diff
changeset
|
2775 | } |
|
1596
75d9fb73637e
[gaim-migrate @ 1606]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1595
diff
changeset
|
2776 | gtk_notebook_set_scrollable(GTK_NOTEBOOK(convo_notebook), TRUE); |
|
1597
7fb8796b9b24
[gaim-migrate @ 1607]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1596
diff
changeset
|
2777 | gtk_notebook_popup_enable(GTK_NOTEBOOK(convo_notebook)); |
|
1573
878f7c59ee85
[gaim-migrate @ 1583]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1532
diff
changeset
|
2778 | gtk_container_add(GTK_CONTAINER(win), convo_notebook); |
|
878f7c59ee85
[gaim-migrate @ 1583]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1532
diff
changeset
|
2779 | gtk_signal_connect(GTK_OBJECT(convo_notebook), "switch-page", |
|
878f7c59ee85
[gaim-migrate @ 1583]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1532
diff
changeset
|
2780 | GTK_SIGNAL_FUNC(convo_switch), NULL); |
|
878f7c59ee85
[gaim-migrate @ 1583]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1532
diff
changeset
|
2781 | gtk_widget_show(convo_notebook); |
|
878f7c59ee85
[gaim-migrate @ 1583]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1532
diff
changeset
|
2782 | } else |
|
878f7c59ee85
[gaim-migrate @ 1583]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1532
diff
changeset
|
2783 | win = c->window = all_convos; |
|
878f7c59ee85
[gaim-migrate @ 1583]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1532
diff
changeset
|
2784 | |
|
878f7c59ee85
[gaim-migrate @ 1583]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1532
diff
changeset
|
2785 | cont = gtk_vbox_new(FALSE, 5); |
|
878f7c59ee85
[gaim-migrate @ 1583]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1532
diff
changeset
|
2786 | gtk_container_set_border_width(GTK_CONTAINER(cont), 5); |
|
2843
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
2787 | /* this doesn't matter since we're resetting the name once we're out of the if */ |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
2788 | gtk_notebook_insert_page(GTK_NOTEBOOK(convo_notebook), cont, gtk_label_new(c->name), |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
2789 | g_list_index(conversations, c)); |
|
1573
878f7c59ee85
[gaim-migrate @ 1583]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1532
diff
changeset
|
2790 | gtk_widget_show(cont); |
|
878f7c59ee85
[gaim-migrate @ 1583]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1532
diff
changeset
|
2791 | } else { |
|
878f7c59ee85
[gaim-migrate @ 1583]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1532
diff
changeset
|
2792 | cont = win = gtk_window_new(GTK_WINDOW_TOPLEVEL); |
|
878f7c59ee85
[gaim-migrate @ 1583]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1532
diff
changeset
|
2793 | c->window = win; |
|
878f7c59ee85
[gaim-migrate @ 1583]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1532
diff
changeset
|
2794 | gtk_object_set_user_data(GTK_OBJECT(win), c); |
|
878f7c59ee85
[gaim-migrate @ 1583]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1532
diff
changeset
|
2795 | gtk_window_set_wmclass(GTK_WINDOW(win), "conversation", "Gaim"); |
|
878f7c59ee85
[gaim-migrate @ 1583]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1532
diff
changeset
|
2796 | gtk_window_set_policy(GTK_WINDOW(win), TRUE, TRUE, TRUE); |
|
878f7c59ee85
[gaim-migrate @ 1583]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1532
diff
changeset
|
2797 | gtk_container_border_width(GTK_CONTAINER(win), 10); |
|
878f7c59ee85
[gaim-migrate @ 1583]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1532
diff
changeset
|
2798 | gtk_widget_realize(win); |
|
878f7c59ee85
[gaim-migrate @ 1583]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1532
diff
changeset
|
2799 | aol_icon(win->window); |
|
878f7c59ee85
[gaim-migrate @ 1583]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1532
diff
changeset
|
2800 | gtk_signal_connect(GTK_OBJECT(win), "delete_event", |
|
878f7c59ee85
[gaim-migrate @ 1583]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1532
diff
changeset
|
2801 | GTK_SIGNAL_FUNC(delete_event_convo), c); |
|
878f7c59ee85
[gaim-migrate @ 1583]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1532
diff
changeset
|
2802 | } |
|
2787
050506d3945f
[gaim-migrate @ 2800]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2773
diff
changeset
|
2803 | set_convo_title(c); |
| 623 | 2804 | |
|
1219
19c971df5be1
[gaim-migrate @ 1229]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1215
diff
changeset
|
2805 | paned = gtk_vpaned_new(); |
|
1228
632838648f4a
[gaim-migrate @ 1238]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1227
diff
changeset
|
2806 | gtk_paned_set_gutter_size(GTK_PANED(paned), 15); |
|
1573
878f7c59ee85
[gaim-migrate @ 1583]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1532
diff
changeset
|
2807 | gtk_container_add(GTK_CONTAINER(cont), paned); |
|
1219
19c971df5be1
[gaim-migrate @ 1229]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1215
diff
changeset
|
2808 | gtk_widget_show(paned); |
|
19c971df5be1
[gaim-migrate @ 1229]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1215
diff
changeset
|
2809 | |
|
1228
632838648f4a
[gaim-migrate @ 1238]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1227
diff
changeset
|
2810 | vbox = gtk_vbox_new(FALSE, 5); |
|
1219
19c971df5be1
[gaim-migrate @ 1229]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1215
diff
changeset
|
2811 | gtk_paned_pack1(GTK_PANED(paned), vbox, FALSE, TRUE); |
|
19c971df5be1
[gaim-migrate @ 1229]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1215
diff
changeset
|
2812 | gtk_widget_show(vbox); |
|
472
9a5b8da2d760
[gaim-migrate @ 482]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
411
diff
changeset
|
2813 | |
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
2814 | sw = gtk_scrolled_window_new(NULL, NULL); |
|
1573
878f7c59ee85
[gaim-migrate @ 1583]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1532
diff
changeset
|
2815 | c->sw = sw; |
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
2816 | gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(sw), GTK_POLICY_NEVER, GTK_POLICY_ALWAYS); |
|
1228
632838648f4a
[gaim-migrate @ 1238]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1227
diff
changeset
|
2817 | gtk_box_pack_start(GTK_BOX(vbox), sw, TRUE, TRUE, 0); |
|
1813
9b174ae83add
[gaim-migrate @ 1823]
Decklin Foster <decklin@red-bean.com>
parents:
1780
diff
changeset
|
2818 | gtk_widget_set_usize(sw, conv_size.width, conv_size.height); |
|
1219
19c971df5be1
[gaim-migrate @ 1229]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1215
diff
changeset
|
2819 | gtk_widget_show(sw); |
|
19c971df5be1
[gaim-migrate @ 1229]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1215
diff
changeset
|
2820 | |
|
1428
c14bab2b74bb
[gaim-migrate @ 1438]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1414
diff
changeset
|
2821 | text = gtk_imhtml_new(NULL, NULL); |
|
1219
19c971df5be1
[gaim-migrate @ 1229]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1215
diff
changeset
|
2822 | c->text = text; |
|
19c971df5be1
[gaim-migrate @ 1229]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1215
diff
changeset
|
2823 | gtk_container_add(GTK_CONTAINER(sw), text); |
|
1428
c14bab2b74bb
[gaim-migrate @ 1438]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1414
diff
changeset
|
2824 | GTK_LAYOUT(text)->hadjustment->step_increment = 10.0; |
|
c14bab2b74bb
[gaim-migrate @ 1438]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1414
diff
changeset
|
2825 | GTK_LAYOUT(text)->vadjustment->step_increment = 10.0; |
|
2313
f7f7ff0b8d4a
[gaim-migrate @ 2323]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2303
diff
changeset
|
2826 | if (convo_options & OPT_CONVO_SHOW_TIME) |
|
1428
c14bab2b74bb
[gaim-migrate @ 1438]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1414
diff
changeset
|
2827 | gtk_imhtml_show_comments(GTK_IMHTML(text), TRUE); |
|
1815
e2b090284b19
[gaim-migrate @ 1825]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1813
diff
changeset
|
2828 | gaim_setup_imhtml(text); |
|
1219
19c971df5be1
[gaim-migrate @ 1229]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1215
diff
changeset
|
2829 | gtk_widget_show(text); |
|
19c971df5be1
[gaim-migrate @ 1229]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1215
diff
changeset
|
2830 | |
|
1228
632838648f4a
[gaim-migrate @ 1238]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1227
diff
changeset
|
2831 | vbox2 = gtk_vbox_new(FALSE, 5); |
|
472
9a5b8da2d760
[gaim-migrate @ 482]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
411
diff
changeset
|
2832 | gtk_paned_pack2(GTK_PANED(paned), vbox2, FALSE, FALSE); |
|
9a5b8da2d760
[gaim-migrate @ 482]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
411
diff
changeset
|
2833 | gtk_widget_show(vbox2); |
|
960
c4012584334f
[gaim-migrate @ 970]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
936
diff
changeset
|
2834 | |
|
c4012584334f
[gaim-migrate @ 970]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
936
diff
changeset
|
2835 | hbox = gtk_hbox_new(FALSE, 0); |
|
c4012584334f
[gaim-migrate @ 970]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
936
diff
changeset
|
2836 | gtk_box_pack_start(GTK_BOX(vbox2), hbox, FALSE, FALSE, 0); |
|
c4012584334f
[gaim-migrate @ 970]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
936
diff
changeset
|
2837 | gtk_widget_show(hbox); |
|
c4012584334f
[gaim-migrate @ 970]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
936
diff
changeset
|
2838 | |
|
c4012584334f
[gaim-migrate @ 970]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
936
diff
changeset
|
2839 | label = gtk_label_new(_("Send message as: ")); |
|
c4012584334f
[gaim-migrate @ 970]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
936
diff
changeset
|
2840 | gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 5); |
|
c4012584334f
[gaim-migrate @ 970]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
936
diff
changeset
|
2841 | gtk_widget_show(label); |
|
c4012584334f
[gaim-migrate @ 970]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
936
diff
changeset
|
2842 | |
|
c4012584334f
[gaim-migrate @ 970]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
936
diff
changeset
|
2843 | c->menu = gtk_option_menu_new(); |
|
c4012584334f
[gaim-migrate @ 970]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
936
diff
changeset
|
2844 | gtk_box_pack_start(GTK_BOX(hbox), c->menu, FALSE, FALSE, 5); |
|
c4012584334f
[gaim-migrate @ 970]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
936
diff
changeset
|
2845 | gtk_widget_show(c->menu); |
|
c4012584334f
[gaim-migrate @ 970]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
936
diff
changeset
|
2846 | |
|
c4012584334f
[gaim-migrate @ 970]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
936
diff
changeset
|
2847 | create_convo_menu(c); |
|
1219
19c971df5be1
[gaim-migrate @ 1229]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1215
diff
changeset
|
2848 | |
|
1898
695a31e4452b
[gaim-migrate @ 1908]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1889
diff
changeset
|
2849 | c->lbox = gtk_hbox_new(FALSE, 0); |
|
695a31e4452b
[gaim-migrate @ 1908]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1889
diff
changeset
|
2850 | gtk_box_pack_start(GTK_BOX(vbox2), c->lbox, FALSE, FALSE, 0); |
|
695a31e4452b
[gaim-migrate @ 1908]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1889
diff
changeset
|
2851 | gtk_widget_show(c->lbox); |
|
695a31e4452b
[gaim-migrate @ 1908]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1889
diff
changeset
|
2852 | |
|
1227
d707ce201f4a
[gaim-migrate @ 1237]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1219
diff
changeset
|
2853 | entry = gtk_text_new(NULL, NULL); |
|
d707ce201f4a
[gaim-migrate @ 1237]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1219
diff
changeset
|
2854 | c->entry = entry; |
|
2313
f7f7ff0b8d4a
[gaim-migrate @ 2323]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2303
diff
changeset
|
2855 | if (!(im_options & OPT_IM_ONE_WINDOW)) |
|
1594
b4318bb1e1c8
[gaim-migrate @ 1604]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1592
diff
changeset
|
2856 | gtk_window_set_focus(GTK_WINDOW(c->window), c->entry); |
|
1227
d707ce201f4a
[gaim-migrate @ 1237]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1219
diff
changeset
|
2857 | |
|
1219
19c971df5be1
[gaim-migrate @ 1229]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1215
diff
changeset
|
2858 | toolbar = build_conv_toolbar(c); |
|
1228
632838648f4a
[gaim-migrate @ 1238]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1227
diff
changeset
|
2859 | gtk_box_pack_start(GTK_BOX(vbox2), toolbar, FALSE, FALSE, 0); |
|
1219
19c971df5be1
[gaim-migrate @ 1229]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1215
diff
changeset
|
2860 | |
|
19c971df5be1
[gaim-migrate @ 1229]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1215
diff
changeset
|
2861 | gtk_object_set_user_data(GTK_OBJECT(entry), c); |
|
472
9a5b8da2d760
[gaim-migrate @ 482]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
411
diff
changeset
|
2862 | gtk_text_set_editable(GTK_TEXT(entry), TRUE); |
|
9a5b8da2d760
[gaim-migrate @ 482]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
411
diff
changeset
|
2863 | gtk_text_set_word_wrap(GTK_TEXT(entry), TRUE); |
| 3304 | 2864 | |
| 2865 | #if !GTK_CHECK_VERSION(1,3,0) /* This gtk bug should be fixed in gtk2 */ | |
| 3280 | 2866 | /* I hate hackish workarounds. According to Ari Pollak, a gtk bug causes Gaim to loop |
| 2867 | * infinitely if the entry is smaller than the text height. This is a hackish workaround */ | |
| 2868 | gtk_widget_set_usize(entry, conv_size.width - 20, | |
| 3304 | 2869 | MAX(conv_size.entry_height, |
| 2870 | gdk_char_height(gtk_widget_get_default_style()->font, '0') + | |
| 2871 | gtk_widget_get_default_style()->font->ascent + 1)); | |
|
3338
5260771e5202
[gaim-migrate @ 3357]
Jim Seymour <jseymour@users.sourceforge.net>
parents:
3311
diff
changeset
|
2872 | #else |
|
5260771e5202
[gaim-migrate @ 3357]
Jim Seymour <jseymour@users.sourceforge.net>
parents:
3311
diff
changeset
|
2873 | gtk_widget_set_usize(entry, conv_size.width - 20, MAX(conv_size.entry_height, 25)); |
| 3304 | 2874 | #endif |
|
1813
9b174ae83add
[gaim-migrate @ 1823]
Decklin Foster <decklin@red-bean.com>
parents:
1780
diff
changeset
|
2875 | |
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
2876 | gtk_signal_connect(GTK_OBJECT(entry), "activate", GTK_SIGNAL_FUNC(send_callback), c); |
|
1219
19c971df5be1
[gaim-migrate @ 1229]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1215
diff
changeset
|
2877 | gtk_signal_connect(GTK_OBJECT(entry), "key_press_event", GTK_SIGNAL_FUNC(keypress_callback), c); |
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
2878 | gtk_signal_connect(GTK_OBJECT(entry), "key_press_event", GTK_SIGNAL_FUNC(entry_key_pressed), |
|
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
2879 | entry); |
|
2313
f7f7ff0b8d4a
[gaim-migrate @ 2323]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2303
diff
changeset
|
2880 | if (convo_options & OPT_CONVO_CHECK_SPELLING) |
|
1117
fcb6e7efcc0d
[gaim-migrate @ 1127]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1103
diff
changeset
|
2881 | gtkspell_attach(GTK_TEXT(c->entry)); |
|
1228
632838648f4a
[gaim-migrate @ 1238]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1227
diff
changeset
|
2882 | gtk_box_pack_start(GTK_BOX(vbox2), entry, TRUE, TRUE, 0); |
|
1219
19c971df5be1
[gaim-migrate @ 1229]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1215
diff
changeset
|
2883 | gtk_widget_show(entry); |
|
19c971df5be1
[gaim-migrate @ 1229]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1215
diff
changeset
|
2884 | |
|
1898
695a31e4452b
[gaim-migrate @ 1908]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1889
diff
changeset
|
2885 | c->bbox = bbox = gtk_hbox_new(FALSE, 5); |
|
1228
632838648f4a
[gaim-migrate @ 1238]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1227
diff
changeset
|
2886 | gtk_box_pack_start(GTK_BOX(vbox2), bbox, FALSE, FALSE, 0); |
|
1219
19c971df5be1
[gaim-migrate @ 1229]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1215
diff
changeset
|
2887 | gtk_widget_show(bbox); |
|
19c971df5be1
[gaim-migrate @ 1229]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1215
diff
changeset
|
2888 | |
|
19c971df5be1
[gaim-migrate @ 1229]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1215
diff
changeset
|
2889 | close = picture_button2(win, _("Close"), cancel_xpm, dispstyle); |
|
19c971df5be1
[gaim-migrate @ 1229]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1215
diff
changeset
|
2890 | c->close = close; |
|
19c971df5be1
[gaim-migrate @ 1229]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1215
diff
changeset
|
2891 | gtk_object_set_user_data(GTK_OBJECT(close), c); |
|
19c971df5be1
[gaim-migrate @ 1229]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1215
diff
changeset
|
2892 | gtk_signal_connect(GTK_OBJECT(close), "clicked", GTK_SIGNAL_FUNC(close_callback), c); |
|
19c971df5be1
[gaim-migrate @ 1229]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1215
diff
changeset
|
2893 | gtk_box_pack_end(GTK_BOX(bbox), close, dispstyle, dispstyle, 0); |
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
2894 | gtk_widget_show(close); |
|
1219
19c971df5be1
[gaim-migrate @ 1229]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1215
diff
changeset
|
2895 | |
|
19c971df5be1
[gaim-migrate @ 1229]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1215
diff
changeset
|
2896 | c->sep1 = gtk_vseparator_new(); |
|
19c971df5be1
[gaim-migrate @ 1229]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1215
diff
changeset
|
2897 | gtk_box_pack_end(GTK_BOX(bbox), c->sep1, dispstyle, dispstyle, 0); |
|
19c971df5be1
[gaim-migrate @ 1229]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1215
diff
changeset
|
2898 | gtk_widget_show(c->sep1); |
|
19c971df5be1
[gaim-migrate @ 1229]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1215
diff
changeset
|
2899 | |
|
1663
e57f4717fe58
[gaim-migrate @ 1673]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1647
diff
changeset
|
2900 | if (c->gc && find_buddy(c->gc, c->name) != NULL) { |
|
e57f4717fe58
[gaim-migrate @ 1673]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1647
diff
changeset
|
2901 | add = picture_button2(win, _("Remove"), gnome_remove_xpm, dispstyle); |
|
e57f4717fe58
[gaim-migrate @ 1673]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1647
diff
changeset
|
2902 | gtk_object_set_user_data(GTK_OBJECT(add), c); |
|
e57f4717fe58
[gaim-migrate @ 1673]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1647
diff
changeset
|
2903 | } else |
|
1219
19c971df5be1
[gaim-migrate @ 1229]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1215
diff
changeset
|
2904 | add = picture_button2(win, _("Add"), gnome_add_xpm, dispstyle); |
|
19c971df5be1
[gaim-migrate @ 1229]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1215
diff
changeset
|
2905 | c->add = add; |
|
19c971df5be1
[gaim-migrate @ 1229]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1215
diff
changeset
|
2906 | gtk_signal_connect(GTK_OBJECT(add), "clicked", GTK_SIGNAL_FUNC(add_callback), c); |
|
19c971df5be1
[gaim-migrate @ 1229]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1215
diff
changeset
|
2907 | gtk_box_pack_end(GTK_BOX(bbox), add, dispstyle, dispstyle, 0); |
|
19c971df5be1
[gaim-migrate @ 1229]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1215
diff
changeset
|
2908 | gtk_widget_show(add); |
|
19c971df5be1
[gaim-migrate @ 1229]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1215
diff
changeset
|
2909 | |
|
19c971df5be1
[gaim-migrate @ 1229]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1215
diff
changeset
|
2910 | block = picture_button2(win, _("Block"), block_xpm, dispstyle); |
|
19c971df5be1
[gaim-migrate @ 1229]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1215
diff
changeset
|
2911 | c->block = block; |
|
19c971df5be1
[gaim-migrate @ 1229]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1215
diff
changeset
|
2912 | gtk_signal_connect(GTK_OBJECT(block), "clicked", GTK_SIGNAL_FUNC(block_callback), c); |
|
19c971df5be1
[gaim-migrate @ 1229]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1215
diff
changeset
|
2913 | gtk_box_pack_end(GTK_BOX(bbox), block, dispstyle, dispstyle, 0); |
|
19c971df5be1
[gaim-migrate @ 1229]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1215
diff
changeset
|
2914 | gtk_widget_show(block); |
|
19c971df5be1
[gaim-migrate @ 1229]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1215
diff
changeset
|
2915 | |
|
19c971df5be1
[gaim-migrate @ 1229]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1215
diff
changeset
|
2916 | warn = picture_button2(win, _("Warn"), warn_xpm, dispstyle); |
|
19c971df5be1
[gaim-migrate @ 1229]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1215
diff
changeset
|
2917 | c->warn = warn; |
|
19c971df5be1
[gaim-migrate @ 1229]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1215
diff
changeset
|
2918 | gtk_signal_connect(GTK_OBJECT(warn), "clicked", GTK_SIGNAL_FUNC(warn_callback), c); |
|
19c971df5be1
[gaim-migrate @ 1229]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1215
diff
changeset
|
2919 | gtk_box_pack_end(GTK_BOX(bbox), warn, dispstyle, dispstyle, 0); |
|
19c971df5be1
[gaim-migrate @ 1229]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1215
diff
changeset
|
2920 | gtk_widget_show(warn); |
|
19c971df5be1
[gaim-migrate @ 1229]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1215
diff
changeset
|
2921 | |
|
19c971df5be1
[gaim-migrate @ 1229]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1215
diff
changeset
|
2922 | info = picture_button2(win, _("Info"), tb_search_xpm, dispstyle); |
|
19c971df5be1
[gaim-migrate @ 1229]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1215
diff
changeset
|
2923 | c->info = info; |
| 1340 | 2924 | |
|
1219
19c971df5be1
[gaim-migrate @ 1229]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1215
diff
changeset
|
2925 | gtk_signal_connect(GTK_OBJECT(info), "clicked", GTK_SIGNAL_FUNC(info_callback), c); |
|
19c971df5be1
[gaim-migrate @ 1229]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1215
diff
changeset
|
2926 | gtk_box_pack_end(GTK_BOX(bbox), info, dispstyle, dispstyle, 0); |
|
19c971df5be1
[gaim-migrate @ 1229]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1215
diff
changeset
|
2927 | gtk_widget_show(info); |
|
19c971df5be1
[gaim-migrate @ 1229]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1215
diff
changeset
|
2928 | |
|
19c971df5be1
[gaim-migrate @ 1229]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1215
diff
changeset
|
2929 | c->sep2 = gtk_vseparator_new(); |
|
19c971df5be1
[gaim-migrate @ 1229]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1215
diff
changeset
|
2930 | gtk_box_pack_end(GTK_BOX(bbox), c->sep2, dispstyle, dispstyle, 0); |
|
19c971df5be1
[gaim-migrate @ 1229]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1215
diff
changeset
|
2931 | gtk_widget_show(c->sep2); |
|
19c971df5be1
[gaim-migrate @ 1229]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1215
diff
changeset
|
2932 | |
|
19c971df5be1
[gaim-migrate @ 1229]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1215
diff
changeset
|
2933 | send = picture_button2(win, _("Send"), tmp_send_xpm, dispstyle); |
|
19c971df5be1
[gaim-migrate @ 1229]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1215
diff
changeset
|
2934 | c->send = send; |
|
19c971df5be1
[gaim-migrate @ 1229]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1215
diff
changeset
|
2935 | gtk_signal_connect(GTK_OBJECT(send), "clicked", GTK_SIGNAL_FUNC(send_callback), c); |
|
19c971df5be1
[gaim-migrate @ 1229]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1215
diff
changeset
|
2936 | gtk_box_pack_end(GTK_BOX(bbox), send, dispstyle, dispstyle, 0); |
|
19c971df5be1
[gaim-migrate @ 1229]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1215
diff
changeset
|
2937 | gtk_widget_show(send); |
|
666
0a313fec9a15
[gaim-migrate @ 676]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
661
diff
changeset
|
2938 | |
| 1340 | 2939 | update_buttons_by_protocol(c); |
| 2940 | ||
| 66 | 2941 | gtk_widget_show(win); |
| 2942 | } | |
| 2943 | ||
| 2944 | ||
|
1253
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
2945 | void toggle_spellchk() |
|
f02697a6aada
[gaim-migrate @ 1263]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1250
diff
changeset
|
2946 | { |
|
1117
fcb6e7efcc0d
[gaim-migrate @ 1127]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1103
diff
changeset
|
2947 | GList *cnv = conversations; |
|
fcb6e7efcc0d
[gaim-migrate @ 1127]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1103
diff
changeset
|
2948 | GSList *cht; |
|
fcb6e7efcc0d
[gaim-migrate @ 1127]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1103
diff
changeset
|
2949 | struct conversation *c; |
|
fcb6e7efcc0d
[gaim-migrate @ 1127]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1103
diff
changeset
|
2950 | GSList *con = connections; |
|
fcb6e7efcc0d
[gaim-migrate @ 1127]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1103
diff
changeset
|
2951 | struct gaim_connection *gc; |
|
fcb6e7efcc0d
[gaim-migrate @ 1127]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1103
diff
changeset
|
2952 | |
| 3209 | 2953 | if (convo_options & OPT_CONVO_CHECK_SPELLING){ |
| 2954 | /*If ispell fails to start, start aspell. This is the way that | |
| 2955 | Gabber does it. -- lorien420@myrealbox.com */ | |
| 2956 | if (gtkspell_start(NULL, ispell_cmd)<0){ | |
| 2957 | debug_printf("gtkspell failed to start when using ispell\n"); | |
| 2958 | if (gtkspell_start(NULL, aspell_cmd)<0){ | |
| 2959 | debug_printf("gtkspell failed to start when using aspell\n"); | |
| 2960 | } else | |
| 2961 | debug_printf("gtkspell started with aspell\n"); | |
| 2962 | } else { | |
| 2963 | debug_printf("gtkspell started with ispell\n"); | |
| 2964 | } | |
| 2965 | } | |
|
2460
d573307665ac
[gaim-migrate @ 2473]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2449
diff
changeset
|
2966 | |
|
1117
fcb6e7efcc0d
[gaim-migrate @ 1127]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1103
diff
changeset
|
2967 | while (cnv) { |
|
fcb6e7efcc0d
[gaim-migrate @ 1127]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1103
diff
changeset
|
2968 | c = (struct conversation *)cnv->data; |
|
2313
f7f7ff0b8d4a
[gaim-migrate @ 2323]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2303
diff
changeset
|
2969 | if (convo_options & OPT_CONVO_CHECK_SPELLING) |
|
1117
fcb6e7efcc0d
[gaim-migrate @ 1127]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1103
diff
changeset
|
2970 | gtkspell_attach(GTK_TEXT(c->entry)); |
|
fcb6e7efcc0d
[gaim-migrate @ 1127]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1103
diff
changeset
|
2971 | else |
|
fcb6e7efcc0d
[gaim-migrate @ 1127]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1103
diff
changeset
|
2972 | gtkspell_detach(GTK_TEXT(c->entry)); |
|
fcb6e7efcc0d
[gaim-migrate @ 1127]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1103
diff
changeset
|
2973 | cnv = cnv->next; |
|
fcb6e7efcc0d
[gaim-migrate @ 1127]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1103
diff
changeset
|
2974 | } |
|
fcb6e7efcc0d
[gaim-migrate @ 1127]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1103
diff
changeset
|
2975 | |
|
fcb6e7efcc0d
[gaim-migrate @ 1127]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1103
diff
changeset
|
2976 | while (con) { |
|
fcb6e7efcc0d
[gaim-migrate @ 1127]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1103
diff
changeset
|
2977 | gc = (struct gaim_connection *)con->data; |
|
fcb6e7efcc0d
[gaim-migrate @ 1127]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1103
diff
changeset
|
2978 | cht = gc->buddy_chats; |
|
fcb6e7efcc0d
[gaim-migrate @ 1127]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1103
diff
changeset
|
2979 | while (cht) { |
|
fcb6e7efcc0d
[gaim-migrate @ 1127]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1103
diff
changeset
|
2980 | c = (struct conversation *)cht->data; |
|
2313
f7f7ff0b8d4a
[gaim-migrate @ 2323]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2303
diff
changeset
|
2981 | if (convo_options & OPT_CONVO_CHECK_SPELLING) |
|
1117
fcb6e7efcc0d
[gaim-migrate @ 1127]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1103
diff
changeset
|
2982 | gtkspell_attach(GTK_TEXT(c->entry)); |
|
fcb6e7efcc0d
[gaim-migrate @ 1127]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1103
diff
changeset
|
2983 | else |
|
fcb6e7efcc0d
[gaim-migrate @ 1127]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1103
diff
changeset
|
2984 | gtkspell_detach(GTK_TEXT(c->entry)); |
|
fcb6e7efcc0d
[gaim-migrate @ 1127]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1103
diff
changeset
|
2985 | cht = cht->next; |
|
fcb6e7efcc0d
[gaim-migrate @ 1127]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1103
diff
changeset
|
2986 | } |
|
fcb6e7efcc0d
[gaim-migrate @ 1127]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1103
diff
changeset
|
2987 | con = con->next; |
|
fcb6e7efcc0d
[gaim-migrate @ 1127]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1103
diff
changeset
|
2988 | } |
|
2460
d573307665ac
[gaim-migrate @ 2473]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2449
diff
changeset
|
2989 | |
|
d573307665ac
[gaim-migrate @ 2473]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2449
diff
changeset
|
2990 | if (!(convo_options & OPT_CONVO_CHECK_SPELLING)) |
|
d573307665ac
[gaim-migrate @ 2473]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2449
diff
changeset
|
2991 | gtkspell_stop(); |
|
1117
fcb6e7efcc0d
[gaim-migrate @ 1127]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1103
diff
changeset
|
2992 | } |
|
1428
c14bab2b74bb
[gaim-migrate @ 1438]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1414
diff
changeset
|
2993 | |
|
c14bab2b74bb
[gaim-migrate @ 1438]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1414
diff
changeset
|
2994 | void toggle_timestamps() |
|
c14bab2b74bb
[gaim-migrate @ 1438]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1414
diff
changeset
|
2995 | { |
|
c14bab2b74bb
[gaim-migrate @ 1438]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1414
diff
changeset
|
2996 | GList *cnv = conversations; |
|
c14bab2b74bb
[gaim-migrate @ 1438]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1414
diff
changeset
|
2997 | GSList *cht; |
|
c14bab2b74bb
[gaim-migrate @ 1438]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1414
diff
changeset
|
2998 | struct conversation *c; |
|
c14bab2b74bb
[gaim-migrate @ 1438]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1414
diff
changeset
|
2999 | GSList *con = connections; |
|
c14bab2b74bb
[gaim-migrate @ 1438]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1414
diff
changeset
|
3000 | struct gaim_connection *gc; |
|
c14bab2b74bb
[gaim-migrate @ 1438]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1414
diff
changeset
|
3001 | |
|
c14bab2b74bb
[gaim-migrate @ 1438]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1414
diff
changeset
|
3002 | while (cnv) { |
|
c14bab2b74bb
[gaim-migrate @ 1438]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1414
diff
changeset
|
3003 | c = (struct conversation *)cnv->data; |
|
2313
f7f7ff0b8d4a
[gaim-migrate @ 2323]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2303
diff
changeset
|
3004 | if (convo_options & OPT_CONVO_SHOW_TIME) |
|
1428
c14bab2b74bb
[gaim-migrate @ 1438]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1414
diff
changeset
|
3005 | gtk_imhtml_show_comments(GTK_IMHTML(c->text), TRUE); |
|
c14bab2b74bb
[gaim-migrate @ 1438]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1414
diff
changeset
|
3006 | else |
|
c14bab2b74bb
[gaim-migrate @ 1438]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1414
diff
changeset
|
3007 | gtk_imhtml_show_comments(GTK_IMHTML(c->text), FALSE); |
|
c14bab2b74bb
[gaim-migrate @ 1438]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1414
diff
changeset
|
3008 | cnv = cnv->next; |
|
c14bab2b74bb
[gaim-migrate @ 1438]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1414
diff
changeset
|
3009 | } |
|
c14bab2b74bb
[gaim-migrate @ 1438]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1414
diff
changeset
|
3010 | |
|
c14bab2b74bb
[gaim-migrate @ 1438]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1414
diff
changeset
|
3011 | while (con) { |
|
c14bab2b74bb
[gaim-migrate @ 1438]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1414
diff
changeset
|
3012 | gc = (struct gaim_connection *)con->data; |
|
c14bab2b74bb
[gaim-migrate @ 1438]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1414
diff
changeset
|
3013 | cht = gc->buddy_chats; |
|
c14bab2b74bb
[gaim-migrate @ 1438]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1414
diff
changeset
|
3014 | while (cht) { |
|
c14bab2b74bb
[gaim-migrate @ 1438]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1414
diff
changeset
|
3015 | c = (struct conversation *)cht->data; |
|
2313
f7f7ff0b8d4a
[gaim-migrate @ 2323]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2303
diff
changeset
|
3016 | if (convo_options & OPT_CONVO_SHOW_TIME) |
|
1428
c14bab2b74bb
[gaim-migrate @ 1438]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1414
diff
changeset
|
3017 | gtk_imhtml_show_comments(GTK_IMHTML(c->text), TRUE); |
|
c14bab2b74bb
[gaim-migrate @ 1438]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1414
diff
changeset
|
3018 | else |
|
c14bab2b74bb
[gaim-migrate @ 1438]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1414
diff
changeset
|
3019 | gtk_imhtml_show_comments(GTK_IMHTML(c->text), FALSE); |
|
c14bab2b74bb
[gaim-migrate @ 1438]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1414
diff
changeset
|
3020 | cht = cht->next; |
|
c14bab2b74bb
[gaim-migrate @ 1438]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1414
diff
changeset
|
3021 | } |
|
c14bab2b74bb
[gaim-migrate @ 1438]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1414
diff
changeset
|
3022 | con = con->next; |
|
c14bab2b74bb
[gaim-migrate @ 1438]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1414
diff
changeset
|
3023 | } |
|
c14bab2b74bb
[gaim-migrate @ 1438]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1414
diff
changeset
|
3024 | } |
|
c14bab2b74bb
[gaim-migrate @ 1438]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1414
diff
changeset
|
3025 | |
|
c14bab2b74bb
[gaim-migrate @ 1438]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1414
diff
changeset
|
3026 | void toggle_smileys() |
|
c14bab2b74bb
[gaim-migrate @ 1438]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1414
diff
changeset
|
3027 | { |
|
c14bab2b74bb
[gaim-migrate @ 1438]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1414
diff
changeset
|
3028 | GList *cnv = conversations; |
|
c14bab2b74bb
[gaim-migrate @ 1438]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1414
diff
changeset
|
3029 | GSList *cht; |
|
c14bab2b74bb
[gaim-migrate @ 1438]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1414
diff
changeset
|
3030 | struct conversation *c; |
|
c14bab2b74bb
[gaim-migrate @ 1438]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1414
diff
changeset
|
3031 | GSList *con = connections; |
|
c14bab2b74bb
[gaim-migrate @ 1438]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1414
diff
changeset
|
3032 | struct gaim_connection *gc; |
|
c14bab2b74bb
[gaim-migrate @ 1438]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1414
diff
changeset
|
3033 | |
|
c14bab2b74bb
[gaim-migrate @ 1438]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1414
diff
changeset
|
3034 | while (cnv) { |
|
c14bab2b74bb
[gaim-migrate @ 1438]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1414
diff
changeset
|
3035 | c = (struct conversation *)cnv->data; |
|
2313
f7f7ff0b8d4a
[gaim-migrate @ 2323]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2303
diff
changeset
|
3036 | if (convo_options & OPT_CONVO_SHOW_SMILEY) |
|
1428
c14bab2b74bb
[gaim-migrate @ 1438]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1414
diff
changeset
|
3037 | gtk_imhtml_show_smileys(GTK_IMHTML(c->text), TRUE); |
|
c14bab2b74bb
[gaim-migrate @ 1438]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1414
diff
changeset
|
3038 | else |
|
c14bab2b74bb
[gaim-migrate @ 1438]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1414
diff
changeset
|
3039 | gtk_imhtml_show_smileys(GTK_IMHTML(c->text), FALSE); |
|
c14bab2b74bb
[gaim-migrate @ 1438]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1414
diff
changeset
|
3040 | cnv = cnv->next; |
|
c14bab2b74bb
[gaim-migrate @ 1438]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1414
diff
changeset
|
3041 | } |
|
c14bab2b74bb
[gaim-migrate @ 1438]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1414
diff
changeset
|
3042 | |
|
c14bab2b74bb
[gaim-migrate @ 1438]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1414
diff
changeset
|
3043 | while (con) { |
|
c14bab2b74bb
[gaim-migrate @ 1438]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1414
diff
changeset
|
3044 | gc = (struct gaim_connection *)con->data; |
|
c14bab2b74bb
[gaim-migrate @ 1438]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1414
diff
changeset
|
3045 | cht = gc->buddy_chats; |
|
c14bab2b74bb
[gaim-migrate @ 1438]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1414
diff
changeset
|
3046 | while (cht) { |
|
c14bab2b74bb
[gaim-migrate @ 1438]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1414
diff
changeset
|
3047 | c = (struct conversation *)cht->data; |
|
2313
f7f7ff0b8d4a
[gaim-migrate @ 2323]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2303
diff
changeset
|
3048 | if (convo_options & OPT_CONVO_SHOW_SMILEY) |
|
1428
c14bab2b74bb
[gaim-migrate @ 1438]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1414
diff
changeset
|
3049 | gtk_imhtml_show_smileys(GTK_IMHTML(c->text), TRUE); |
|
c14bab2b74bb
[gaim-migrate @ 1438]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1414
diff
changeset
|
3050 | else |
|
c14bab2b74bb
[gaim-migrate @ 1438]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1414
diff
changeset
|
3051 | gtk_imhtml_show_smileys(GTK_IMHTML(c->text), FALSE); |
|
c14bab2b74bb
[gaim-migrate @ 1438]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1414
diff
changeset
|
3052 | cht = cht->next; |
|
c14bab2b74bb
[gaim-migrate @ 1438]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1414
diff
changeset
|
3053 | } |
|
c14bab2b74bb
[gaim-migrate @ 1438]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1414
diff
changeset
|
3054 | con = con->next; |
|
c14bab2b74bb
[gaim-migrate @ 1438]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1414
diff
changeset
|
3055 | } |
|
c14bab2b74bb
[gaim-migrate @ 1438]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1414
diff
changeset
|
3056 | } |
|
1573
878f7c59ee85
[gaim-migrate @ 1583]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1532
diff
changeset
|
3057 | |
|
2843
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
3058 | void im_tabize() |
|
1573
878f7c59ee85
[gaim-migrate @ 1583]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1532
diff
changeset
|
3059 | { |
|
878f7c59ee85
[gaim-migrate @ 1583]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1532
diff
changeset
|
3060 | /* evil, evil i tell you! evil! */ |
|
2313
f7f7ff0b8d4a
[gaim-migrate @ 2323]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2303
diff
changeset
|
3061 | if (im_options & OPT_IM_ONE_WINDOW) { |
|
1573
878f7c59ee85
[gaim-migrate @ 1583]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1532
diff
changeset
|
3062 | GList *x = conversations; |
|
2843
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
3063 | if ((convo_options & OPT_CONVO_COMBINE) && (chat_options & OPT_CHAT_ONE_WINDOW)) { |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
3064 | all_convos = all_chats; |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
3065 | convo_notebook = chat_notebook; |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
3066 | } |
|
1573
878f7c59ee85
[gaim-migrate @ 1583]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1532
diff
changeset
|
3067 | while (x) { |
|
878f7c59ee85
[gaim-migrate @ 1583]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1532
diff
changeset
|
3068 | struct conversation *c = x->data; |
|
878f7c59ee85
[gaim-migrate @ 1583]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1532
diff
changeset
|
3069 | GtkWidget *imhtml, *win; |
|
878f7c59ee85
[gaim-migrate @ 1583]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1532
diff
changeset
|
3070 | |
|
878f7c59ee85
[gaim-migrate @ 1583]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1532
diff
changeset
|
3071 | imhtml = c->text; |
|
878f7c59ee85
[gaim-migrate @ 1583]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1532
diff
changeset
|
3072 | win = c->window; |
|
2191
a40e37f5bf27
[gaim-migrate @ 2201]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2167
diff
changeset
|
3073 | remove_icon(c); |
|
2231
9d8593ab093e
[gaim-migrate @ 2241]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2227
diff
changeset
|
3074 | remove_checkbox(c); |
|
1573
878f7c59ee85
[gaim-migrate @ 1583]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1532
diff
changeset
|
3075 | show_conv(c); |
|
878f7c59ee85
[gaim-migrate @ 1583]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1532
diff
changeset
|
3076 | gtk_widget_destroy(c->text); |
|
878f7c59ee85
[gaim-migrate @ 1583]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1532
diff
changeset
|
3077 | gtk_widget_reparent(imhtml, c->sw); |
|
878f7c59ee85
[gaim-migrate @ 1583]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1532
diff
changeset
|
3078 | c->text = imhtml; |
|
878f7c59ee85
[gaim-migrate @ 1583]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1532
diff
changeset
|
3079 | gtk_widget_destroy(win); |
|
2191
a40e37f5bf27
[gaim-migrate @ 2201]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2167
diff
changeset
|
3080 | update_icon(c); |
|
2231
9d8593ab093e
[gaim-migrate @ 2241]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2227
diff
changeset
|
3081 | update_checkbox(c); |
|
2843
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
3082 | set_convo_title(c); |
|
1573
878f7c59ee85
[gaim-migrate @ 1583]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1532
diff
changeset
|
3083 | |
|
878f7c59ee85
[gaim-migrate @ 1583]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1532
diff
changeset
|
3084 | x = x->next; |
|
878f7c59ee85
[gaim-migrate @ 1583]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1532
diff
changeset
|
3085 | } |
|
878f7c59ee85
[gaim-migrate @ 1583]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1532
diff
changeset
|
3086 | } else { |
|
878f7c59ee85
[gaim-migrate @ 1583]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1532
diff
changeset
|
3087 | GList *x, *m; |
|
878f7c59ee85
[gaim-migrate @ 1583]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1532
diff
changeset
|
3088 | x = m = conversations; |
|
878f7c59ee85
[gaim-migrate @ 1583]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1532
diff
changeset
|
3089 | conversations = NULL; |
|
878f7c59ee85
[gaim-migrate @ 1583]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1532
diff
changeset
|
3090 | while (x) { |
|
878f7c59ee85
[gaim-migrate @ 1583]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1532
diff
changeset
|
3091 | struct conversation *c = x->data; |
|
878f7c59ee85
[gaim-migrate @ 1583]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1532
diff
changeset
|
3092 | GtkWidget *imhtml; |
|
878f7c59ee85
[gaim-migrate @ 1583]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1532
diff
changeset
|
3093 | |
|
878f7c59ee85
[gaim-migrate @ 1583]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1532
diff
changeset
|
3094 | imhtml = c->text; |
|
2191
a40e37f5bf27
[gaim-migrate @ 2201]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2167
diff
changeset
|
3095 | remove_icon(c); |
|
2231
9d8593ab093e
[gaim-migrate @ 2241]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2227
diff
changeset
|
3096 | remove_checkbox(c); |
|
1573
878f7c59ee85
[gaim-migrate @ 1583]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1532
diff
changeset
|
3097 | show_conv(c); |
|
2843
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
3098 | gtk_container_remove(GTK_CONTAINER(c->sw), c->text); |
|
1573
878f7c59ee85
[gaim-migrate @ 1583]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1532
diff
changeset
|
3099 | gtk_widget_reparent(imhtml, c->sw); |
|
878f7c59ee85
[gaim-migrate @ 1583]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1532
diff
changeset
|
3100 | c->text = imhtml; |
|
2191
a40e37f5bf27
[gaim-migrate @ 2201]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2167
diff
changeset
|
3101 | update_icon(c); |
|
2231
9d8593ab093e
[gaim-migrate @ 2241]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2227
diff
changeset
|
3102 | update_checkbox(c); |
|
2843
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
3103 | set_convo_title(c); |
|
1573
878f7c59ee85
[gaim-migrate @ 1583]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1532
diff
changeset
|
3104 | |
|
878f7c59ee85
[gaim-migrate @ 1583]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1532
diff
changeset
|
3105 | x = x->next; |
|
878f7c59ee85
[gaim-migrate @ 1583]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1532
diff
changeset
|
3106 | } |
|
2843
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
3107 | conversations = m; |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
3108 | if ((convo_options & OPT_CONVO_COMBINE) && (chat_options & OPT_CHAT_ONE_WINDOW)) { |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
3109 | if (chats) { |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
3110 | struct conversation *c; |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
3111 | while (m) { |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
3112 | gtk_notebook_remove_page(GTK_NOTEBOOK(chat_notebook), 0); |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
3113 | m = m->next; |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
3114 | } |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
3115 | c = chats->data; |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
3116 | gtk_window_set_focus(GTK_WINDOW(c->window), c->entry); |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
3117 | } else { |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
3118 | if (all_convos) |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
3119 | gtk_widget_destroy(all_convos); |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
3120 | all_chats = NULL; |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
3121 | chat_notebook = NULL; |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
3122 | } |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
3123 | } else if (all_convos) |
|
1573
878f7c59ee85
[gaim-migrate @ 1583]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1532
diff
changeset
|
3124 | gtk_widget_destroy(all_convos); |
|
878f7c59ee85
[gaim-migrate @ 1583]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1532
diff
changeset
|
3125 | all_convos = NULL; |
|
1757
8c57846a4691
[gaim-migrate @ 1767]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1735
diff
changeset
|
3126 | convo_notebook = NULL; |
|
2843
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
3127 | } |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
3128 | } |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
3129 | |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
3130 | void convo_tabize() |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
3131 | { |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
3132 | GList *x, *m; |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
3133 | GtkWidget *tmp; |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
3134 | |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
3135 | if (!chats && !conversations) |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
3136 | return; |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
3137 | |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
3138 | if (convo_options & OPT_CONVO_COMBINE) { |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
3139 | if (!chats) { |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
3140 | all_chats = all_convos; |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
3141 | chat_notebook = convo_notebook; |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
3142 | return; |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
3143 | } else if (!conversations) { |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
3144 | all_convos = all_chats; |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
3145 | convo_notebook = chat_notebook; |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
3146 | return; |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
3147 | } |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
3148 | } else { |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
3149 | if (!chats) { |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
3150 | all_chats = NULL; |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
3151 | chat_notebook = NULL; |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
3152 | return; |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
3153 | } else if (!conversations) { |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
3154 | all_convos = NULL; |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
3155 | convo_notebook = NULL; |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
3156 | return; |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
3157 | } |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
3158 | } |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
3159 | |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
3160 | tmp = all_convos; |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
3161 | if (convo_options & OPT_CONVO_COMBINE) { |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
3162 | all_convos = all_chats; |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
3163 | convo_notebook = chat_notebook; |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
3164 | } else { |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
3165 | all_convos = NULL; |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
3166 | convo_notebook = NULL; |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
3167 | } |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
3168 | x = m = conversations; |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
3169 | while (x) { |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
3170 | struct conversation *c = x->data; |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
3171 | GtkWidget *imhtml; |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
3172 | |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
3173 | imhtml = c->text; |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
3174 | remove_icon(c); |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
3175 | remove_checkbox(c); |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
3176 | show_conv(c); |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
3177 | gtk_container_remove(GTK_CONTAINER(c->sw), c->text); |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
3178 | gtk_widget_reparent(imhtml, c->sw); |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
3179 | c->text = imhtml; |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
3180 | update_icon(c); |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
3181 | update_checkbox(c); |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
3182 | |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
3183 | x = x->next; |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
3184 | } |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
3185 | |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
3186 | conversations = m; |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
3187 | if (convo_options & OPT_CONVO_COMBINE) { |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
3188 | if (tmp) |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
3189 | gtk_widget_destroy(tmp); |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
3190 | } else { |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
3191 | while (m) { |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
3192 | gtk_notebook_remove_page(GTK_NOTEBOOK(chat_notebook), 0); |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
3193 | m = m->next; |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
3194 | } |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
3195 | } |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
3196 | m = conversations; |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
3197 | while (m) { |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
3198 | set_convo_title(m->data); |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
3199 | m = m->next; |
|
1573
878f7c59ee85
[gaim-migrate @ 1583]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1532
diff
changeset
|
3200 | } |
|
878f7c59ee85
[gaim-migrate @ 1583]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1532
diff
changeset
|
3201 | } |
|
1587
5080af654308
[gaim-migrate @ 1597]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1583
diff
changeset
|
3202 | |
|
2787
050506d3945f
[gaim-migrate @ 2800]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2773
diff
changeset
|
3203 | void set_convo_title(struct conversation *c) |
|
1587
5080af654308
[gaim-migrate @ 1597]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1583
diff
changeset
|
3204 | { |
|
2787
050506d3945f
[gaim-migrate @ 2800]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2773
diff
changeset
|
3205 | struct buddy *b; |
|
050506d3945f
[gaim-migrate @ 2800]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2773
diff
changeset
|
3206 | char *text; |
|
050506d3945f
[gaim-migrate @ 2800]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2773
diff
changeset
|
3207 | int index; |
|
050506d3945f
[gaim-migrate @ 2800]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2773
diff
changeset
|
3208 | GtkNotebook *nb; |
|
050506d3945f
[gaim-migrate @ 2800]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2773
diff
changeset
|
3209 | |
|
050506d3945f
[gaim-migrate @ 2800]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2773
diff
changeset
|
3210 | if ((im_options & OPT_IM_ALIAS_TAB) && c->gc && ((b = find_buddy(c->gc, c->name)) != NULL)) |
|
050506d3945f
[gaim-migrate @ 2800]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2773
diff
changeset
|
3211 | text = b->show; |
|
050506d3945f
[gaim-migrate @ 2800]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2773
diff
changeset
|
3212 | else |
|
050506d3945f
[gaim-migrate @ 2800]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2773
diff
changeset
|
3213 | text = c->name; |
|
050506d3945f
[gaim-migrate @ 2800]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2773
diff
changeset
|
3214 | |
|
2843
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
3215 | if (im_options & OPT_IM_ONE_WINDOW) { |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
3216 | nb = GTK_NOTEBOOK(convo_notebook); |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
3217 | index = g_list_index(conversations, c); |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
3218 | gtk_notebook_set_tab_label_text(nb, gtk_notebook_get_nth_page(nb, index), text); |
|
6dd0497437e3
[gaim-migrate @ 2856]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2834
diff
changeset
|
3219 | } else { |
|
2834
95c59de8332a
[gaim-migrate @ 2847]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2832
diff
changeset
|
3220 | char buf[256]; |
|
95c59de8332a
[gaim-migrate @ 2847]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2832
diff
changeset
|
3221 | if ((find_log_info(c->name)) || (logging_options & OPT_LOG_ALL)) |
|
95c59de8332a
[gaim-migrate @ 2847]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2832
diff
changeset
|
3222 | g_snprintf(buf, sizeof(buf), LOG_CONVERSATION_TITLE, text); |
|
95c59de8332a
[gaim-migrate @ 2847]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2832
diff
changeset
|
3223 | else |
|
95c59de8332a
[gaim-migrate @ 2847]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2832
diff
changeset
|
3224 | g_snprintf(buf, sizeof(buf), CONVERSATION_TITLE, text); |
|
95c59de8332a
[gaim-migrate @ 2847]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2832
diff
changeset
|
3225 | gtk_window_set_title(GTK_WINDOW(c->window), buf); |
|
95c59de8332a
[gaim-migrate @ 2847]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2832
diff
changeset
|
3226 | } |
|
2787
050506d3945f
[gaim-migrate @ 2800]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2773
diff
changeset
|
3227 | } |
|
050506d3945f
[gaim-migrate @ 2800]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2773
diff
changeset
|
3228 | |
|
050506d3945f
[gaim-migrate @ 2800]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2773
diff
changeset
|
3229 | void set_convo_titles() |
|
050506d3945f
[gaim-migrate @ 2800]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2773
diff
changeset
|
3230 | { |
|
050506d3945f
[gaim-migrate @ 2800]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2773
diff
changeset
|
3231 | GList *c = conversations; |
|
050506d3945f
[gaim-migrate @ 2800]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2773
diff
changeset
|
3232 | while (c) { |
|
050506d3945f
[gaim-migrate @ 2800]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2773
diff
changeset
|
3233 | set_convo_title(c->data); |
|
050506d3945f
[gaim-migrate @ 2800]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2773
diff
changeset
|
3234 | c = c->next; |
|
050506d3945f
[gaim-migrate @ 2800]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2773
diff
changeset
|
3235 | } |
|
1587
5080af654308
[gaim-migrate @ 1597]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1583
diff
changeset
|
3236 | } |
|
1590
5495c7dd8060
[gaim-migrate @ 1600]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1587
diff
changeset
|
3237 | |
|
5495c7dd8060
[gaim-migrate @ 1600]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1587
diff
changeset
|
3238 | void raise_convo_tab(struct conversation *c) |
|
5495c7dd8060
[gaim-migrate @ 1600]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1587
diff
changeset
|
3239 | { |
|
5495c7dd8060
[gaim-migrate @ 1600]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1587
diff
changeset
|
3240 | gtk_notebook_set_page(GTK_NOTEBOOK(convo_notebook), g_list_index(conversations, c)); |
|
1617
70177cf0334f
[gaim-migrate @ 1627]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1608
diff
changeset
|
3241 | gdk_window_show(c->window->window); |
|
1590
5495c7dd8060
[gaim-migrate @ 1600]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1587
diff
changeset
|
3242 | } |
|
1757
8c57846a4691
[gaim-migrate @ 1767]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1735
diff
changeset
|
3243 | |
|
2372
c24942700dfd
[gaim-migrate @ 2385]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2363
diff
changeset
|
3244 | void update_im_tabs() |
|
c24942700dfd
[gaim-migrate @ 2385]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2363
diff
changeset
|
3245 | { |
|
1757
8c57846a4691
[gaim-migrate @ 1767]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1735
diff
changeset
|
3246 | if (!convo_notebook || !all_convos) |
|
8c57846a4691
[gaim-migrate @ 1767]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1735
diff
changeset
|
3247 | return; |
|
2313
f7f7ff0b8d4a
[gaim-migrate @ 2323]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2303
diff
changeset
|
3248 | if (im_options & OPT_IM_SIDE_TAB) { |
|
f7f7ff0b8d4a
[gaim-migrate @ 2323]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2303
diff
changeset
|
3249 | if (im_options & OPT_IM_BR_TAB) { |
|
2372
c24942700dfd
[gaim-migrate @ 2385]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2363
diff
changeset
|
3250 | gtk_notebook_set_tab_pos(GTK_NOTEBOOK(convo_notebook), GTK_POS_RIGHT); |
|
1757
8c57846a4691
[gaim-migrate @ 1767]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1735
diff
changeset
|
3251 | } else { |
|
2372
c24942700dfd
[gaim-migrate @ 2385]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2363
diff
changeset
|
3252 | gtk_notebook_set_tab_pos(GTK_NOTEBOOK(convo_notebook), GTK_POS_LEFT); |
|
1757
8c57846a4691
[gaim-migrate @ 1767]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1735
diff
changeset
|
3253 | } |
|
2372
c24942700dfd
[gaim-migrate @ 2385]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2363
diff
changeset
|
3254 | } else { |
|
2313
f7f7ff0b8d4a
[gaim-migrate @ 2323]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2303
diff
changeset
|
3255 | if (im_options & OPT_IM_BR_TAB) { |
|
2372
c24942700dfd
[gaim-migrate @ 2385]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2363
diff
changeset
|
3256 | gtk_notebook_set_tab_pos(GTK_NOTEBOOK(convo_notebook), GTK_POS_BOTTOM); |
|
1757
8c57846a4691
[gaim-migrate @ 1767]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1735
diff
changeset
|
3257 | } else { |
|
2372
c24942700dfd
[gaim-migrate @ 2385]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2363
diff
changeset
|
3258 | gtk_notebook_set_tab_pos(GTK_NOTEBOOK(convo_notebook), GTK_POS_TOP); |
|
1757
8c57846a4691
[gaim-migrate @ 1767]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1735
diff
changeset
|
3259 | } |
|
8c57846a4691
[gaim-migrate @ 1767]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1735
diff
changeset
|
3260 | } |
|
8c57846a4691
[gaim-migrate @ 1767]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1735
diff
changeset
|
3261 | } |
|
8c57846a4691
[gaim-migrate @ 1767]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1735
diff
changeset
|
3262 | |
|
2372
c24942700dfd
[gaim-migrate @ 2385]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2363
diff
changeset
|
3263 | void update_chat_tabs() |
|
c24942700dfd
[gaim-migrate @ 2385]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2363
diff
changeset
|
3264 | { |
|
1757
8c57846a4691
[gaim-migrate @ 1767]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1735
diff
changeset
|
3265 | if (!chat_notebook || !all_chats) |
|
8c57846a4691
[gaim-migrate @ 1767]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1735
diff
changeset
|
3266 | return; |
|
2313
f7f7ff0b8d4a
[gaim-migrate @ 2323]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2303
diff
changeset
|
3267 | if (chat_options & OPT_CHAT_SIDE_TAB) { |
|
f7f7ff0b8d4a
[gaim-migrate @ 2323]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2303
diff
changeset
|
3268 | if (chat_options & OPT_CHAT_BR_TAB) { |
|
2372
c24942700dfd
[gaim-migrate @ 2385]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2363
diff
changeset
|
3269 | gtk_notebook_set_tab_pos(GTK_NOTEBOOK(chat_notebook), GTK_POS_RIGHT); |
|
1757
8c57846a4691
[gaim-migrate @ 1767]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1735
diff
changeset
|
3270 | } else { |
|
2372
c24942700dfd
[gaim-migrate @ 2385]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2363
diff
changeset
|
3271 | gtk_notebook_set_tab_pos(GTK_NOTEBOOK(chat_notebook), GTK_POS_LEFT); |
|
1757
8c57846a4691
[gaim-migrate @ 1767]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1735
diff
changeset
|
3272 | } |
|
8c57846a4691
[gaim-migrate @ 1767]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1735
diff
changeset
|
3273 | } else { |
|
2313
f7f7ff0b8d4a
[gaim-migrate @ 2323]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2303
diff
changeset
|
3274 | if (chat_options & OPT_CHAT_BR_TAB) { |
|
2372
c24942700dfd
[gaim-migrate @ 2385]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2363
diff
changeset
|
3275 | gtk_notebook_set_tab_pos(GTK_NOTEBOOK(chat_notebook), GTK_POS_BOTTOM); |
|
1757
8c57846a4691
[gaim-migrate @ 1767]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1735
diff
changeset
|
3276 | } else { |
|
2372
c24942700dfd
[gaim-migrate @ 2385]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2363
diff
changeset
|
3277 | gtk_notebook_set_tab_pos(GTK_NOTEBOOK(chat_notebook), GTK_POS_TOP); |
|
1757
8c57846a4691
[gaim-migrate @ 1767]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1735
diff
changeset
|
3278 | } |
|
8c57846a4691
[gaim-migrate @ 1767]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1735
diff
changeset
|
3279 | } |
|
8c57846a4691
[gaim-migrate @ 1767]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1735
diff
changeset
|
3280 | } |
|
1759
e5987be557ab
[gaim-migrate @ 1769]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1757
diff
changeset
|
3281 | |
|
e5987be557ab
[gaim-migrate @ 1769]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1757
diff
changeset
|
3282 | void update_convo_color(gboolean fg) |
|
e5987be557ab
[gaim-migrate @ 1769]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1757
diff
changeset
|
3283 | { |
|
e5987be557ab
[gaim-migrate @ 1769]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1757
diff
changeset
|
3284 | GList *c = conversations; |
|
e5987be557ab
[gaim-migrate @ 1769]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1757
diff
changeset
|
3285 | struct conversation *b; |
|
e5987be557ab
[gaim-migrate @ 1769]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1757
diff
changeset
|
3286 | |
|
e5987be557ab
[gaim-migrate @ 1769]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1757
diff
changeset
|
3287 | while (c) { |
|
e5987be557ab
[gaim-migrate @ 1769]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1757
diff
changeset
|
3288 | b = c->data; |
|
e5987be557ab
[gaim-migrate @ 1769]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1757
diff
changeset
|
3289 | c = c->next; |
|
e5987be557ab
[gaim-migrate @ 1769]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1757
diff
changeset
|
3290 | if (fg) { |
|
2372
c24942700dfd
[gaim-migrate @ 2385]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2363
diff
changeset
|
3291 | if (b->hasfg) |
|
c24942700dfd
[gaim-migrate @ 2385]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2363
diff
changeset
|
3292 | continue; |
|
1759
e5987be557ab
[gaim-migrate @ 1769]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1757
diff
changeset
|
3293 | b->fgcol = fgcolor; |
|
e5987be557ab
[gaim-migrate @ 1769]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1757
diff
changeset
|
3294 | } else { |
|
2372
c24942700dfd
[gaim-migrate @ 2385]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2363
diff
changeset
|
3295 | if (b->hasbg) |
|
c24942700dfd
[gaim-migrate @ 2385]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2363
diff
changeset
|
3296 | continue; |
|
1759
e5987be557ab
[gaim-migrate @ 1769]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1757
diff
changeset
|
3297 | b->bgcol = bgcolor; |
|
e5987be557ab
[gaim-migrate @ 1769]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1757
diff
changeset
|
3298 | } |
|
e5987be557ab
[gaim-migrate @ 1769]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1757
diff
changeset
|
3299 | } |
|
e5987be557ab
[gaim-migrate @ 1769]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1757
diff
changeset
|
3300 | } |
|
e5987be557ab
[gaim-migrate @ 1769]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1757
diff
changeset
|
3301 | |
|
e5987be557ab
[gaim-migrate @ 1769]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1757
diff
changeset
|
3302 | void update_convo_font() |
|
e5987be557ab
[gaim-migrate @ 1769]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1757
diff
changeset
|
3303 | { |
|
e5987be557ab
[gaim-migrate @ 1769]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1757
diff
changeset
|
3304 | GList *c = conversations; |
|
e5987be557ab
[gaim-migrate @ 1769]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1757
diff
changeset
|
3305 | struct conversation *b; |
|
e5987be557ab
[gaim-migrate @ 1769]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1757
diff
changeset
|
3306 | |
|
e5987be557ab
[gaim-migrate @ 1769]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1757
diff
changeset
|
3307 | while (c) { |
|
e5987be557ab
[gaim-migrate @ 1769]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1757
diff
changeset
|
3308 | b = c->data; |
|
e5987be557ab
[gaim-migrate @ 1769]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1757
diff
changeset
|
3309 | c = c->next; |
|
2372
c24942700dfd
[gaim-migrate @ 2385]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2363
diff
changeset
|
3310 | if (b->hasfont) |
|
c24942700dfd
[gaim-migrate @ 2385]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2363
diff
changeset
|
3311 | continue; |
|
1759
e5987be557ab
[gaim-migrate @ 1769]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1757
diff
changeset
|
3312 | sprintf(b->fontface, "%s", fontface); |
|
2763
18a8e555039b
[gaim-migrate @ 2776]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2761
diff
changeset
|
3313 | sprintf(b->fontxfld, "%s", fontxfld); |
|
1759
e5987be557ab
[gaim-migrate @ 1769]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1757
diff
changeset
|
3314 | } |
|
e5987be557ab
[gaim-migrate @ 1769]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
1757
diff
changeset
|
3315 | } |
|
2191
a40e37f5bf27
[gaim-migrate @ 2201]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2167
diff
changeset
|
3316 | |
| 3367 | 3317 | #if USE_PIXBUF || GTK_CHECK_VERSION(1,3,0) |
|
2191
a40e37f5bf27
[gaim-migrate @ 2201]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2167
diff
changeset
|
3318 | #include <gdk-pixbuf/gdk-pixbuf.h> |
|
2227
24fe3c998838
[gaim-migrate @ 2237]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2213
diff
changeset
|
3319 | |
|
24fe3c998838
[gaim-migrate @ 2237]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2213
diff
changeset
|
3320 | #define SCALE(x) ((gdk_pixbuf_animation_get_width(x) <= 48 && gdk_pixbuf_animation_get_height(x) <= 48) \ |
|
24fe3c998838
[gaim-migrate @ 2237]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2213
diff
changeset
|
3321 | ? 48 : 50) |
|
2191
a40e37f5bf27
[gaim-migrate @ 2201]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2167
diff
changeset
|
3322 | |
|
a40e37f5bf27
[gaim-migrate @ 2201]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2167
diff
changeset
|
3323 | static gboolean redraw_icon(gpointer data) |
|
a40e37f5bf27
[gaim-migrate @ 2201]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2167
diff
changeset
|
3324 | { |
|
a40e37f5bf27
[gaim-migrate @ 2201]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2167
diff
changeset
|
3325 | struct conversation *c = data; |
|
a40e37f5bf27
[gaim-migrate @ 2201]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2167
diff
changeset
|
3326 | |
|
a40e37f5bf27
[gaim-migrate @ 2201]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2167
diff
changeset
|
3327 | GList *frames; |
|
a40e37f5bf27
[gaim-migrate @ 2201]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2167
diff
changeset
|
3328 | GdkPixbufFrame *frame; |
|
a40e37f5bf27
[gaim-migrate @ 2201]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2167
diff
changeset
|
3329 | GdkPixbuf *buf; |
|
a40e37f5bf27
[gaim-migrate @ 2201]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2167
diff
changeset
|
3330 | GdkPixbuf *scale; |
|
a40e37f5bf27
[gaim-migrate @ 2201]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2167
diff
changeset
|
3331 | GdkPixmap *src; |
|
a40e37f5bf27
[gaim-migrate @ 2201]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2167
diff
changeset
|
3332 | GdkPixmap *pm; |
|
a40e37f5bf27
[gaim-migrate @ 2201]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2167
diff
changeset
|
3333 | GdkBitmap *bm; |
| 3367 | 3334 | #if GTK_CHECK_VERSION(1,3,0) |
| 3335 | GdkPixbufAnimationIter *iter; | |
| 3336 | #endif | |
|
2191
a40e37f5bf27
[gaim-migrate @ 2201]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2167
diff
changeset
|
3337 | GdkGC *gc; |
|
a40e37f5bf27
[gaim-migrate @ 2201]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2167
diff
changeset
|
3338 | gint delay; |
|
a40e37f5bf27
[gaim-migrate @ 2201]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2167
diff
changeset
|
3339 | |
|
a40e37f5bf27
[gaim-migrate @ 2201]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2167
diff
changeset
|
3340 | if (!g_list_find(conversations, c)) { |
|
a40e37f5bf27
[gaim-migrate @ 2201]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2167
diff
changeset
|
3341 | debug_printf("I think this is a bug.\n"); |
|
a40e37f5bf27
[gaim-migrate @ 2201]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2167
diff
changeset
|
3342 | return FALSE; |
|
a40e37f5bf27
[gaim-migrate @ 2201]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2167
diff
changeset
|
3343 | } |
|
a40e37f5bf27
[gaim-migrate @ 2201]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2167
diff
changeset
|
3344 | |
| 3367 | 3345 | #if GTK_CHECK_VERSION(1,3,0) |
| 3346 | gdk_pixbuf_animation_iter_advance(c->iter, NULL); | |
| 3347 | buf = gdk_pixbuf_animation_iter_get_pixbuf(c->iter); | |
| 3348 | scale = gdk_pixbuf_scale_simple(buf, | |
| 3349 | MAX(gdk_pixbuf_get_width(buf) * SCALE(c->anim) / | |
| 3350 | gdk_pixbuf_animation_get_width(c->anim), 1), | |
| 3351 | MAX(gdk_pixbuf_get_height(buf) * SCALE(c->anim) / | |
| 3352 | gdk_pixbuf_animation_get_height(c->anim), 1), | |
| 3353 | GDK_INTERP_NEAREST); | |
| 3354 | gdk_pixbuf_render_pixmap_and_mask(scale, &pm, &bm, 100); | |
| 3355 | gdk_pixbuf_unref(scale); | |
| 3356 | gtk_pixmap_set(GTK_PIXMAP(c->icon), pm, bm); | |
| 3357 | gdk_pixmap_unref(pm); | |
| 3380 | 3358 | gtk_widget_queue_draw(c->icon); |
| 3367 | 3359 | if (bm) |
| 3360 | gdk_bitmap_unref(bm); | |
| 3380 | 3361 | delay = gdk_pixbuf_animation_iter_get_delay_time(c->iter) / 10; |
| 3367 | 3362 | #else |
|
2191
a40e37f5bf27
[gaim-migrate @ 2201]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2167
diff
changeset
|
3363 | frames = gdk_pixbuf_animation_get_frames(c->anim); |
|
a40e37f5bf27
[gaim-migrate @ 2201]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2167
diff
changeset
|
3364 | frame = g_list_nth_data(frames, c->frame); |
|
a40e37f5bf27
[gaim-migrate @ 2201]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2167
diff
changeset
|
3365 | switch (gdk_pixbuf_frame_get_action(frame)) { |
|
a40e37f5bf27
[gaim-migrate @ 2201]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2167
diff
changeset
|
3366 | case GDK_PIXBUF_FRAME_RETAIN: |
|
a40e37f5bf27
[gaim-migrate @ 2201]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2167
diff
changeset
|
3367 | buf = gdk_pixbuf_frame_get_pixbuf(frame); |
|
a40e37f5bf27
[gaim-migrate @ 2201]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2167
diff
changeset
|
3368 | scale = gdk_pixbuf_scale_simple(buf, |
|
2372
c24942700dfd
[gaim-migrate @ 2385]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2363
diff
changeset
|
3369 | MAX(gdk_pixbuf_get_width(buf) * SCALE(c->anim) / |
|
c24942700dfd
[gaim-migrate @ 2385]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2363
diff
changeset
|
3370 | gdk_pixbuf_animation_get_width(c->anim), 1), |
|
c24942700dfd
[gaim-migrate @ 2385]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2363
diff
changeset
|
3371 | MAX(gdk_pixbuf_get_height(buf) * SCALE(c->anim) / |
|
c24942700dfd
[gaim-migrate @ 2385]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2363
diff
changeset
|
3372 | gdk_pixbuf_animation_get_height(c->anim), 1), |
|
c24942700dfd
[gaim-migrate @ 2385]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2363
diff
changeset
|
3373 | GDK_INTERP_NEAREST); |
| 2979 | 3374 | gdk_pixbuf_render_pixmap_and_mask(scale, &src, &bm, 100); |
|
2191
a40e37f5bf27
[gaim-migrate @ 2201]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2167
diff
changeset
|
3375 | gdk_pixbuf_unref(scale); |
| 2979 | 3376 | gtk_pixmap_get(GTK_PIXMAP(c->icon), &pm, NULL); |
|
2191
a40e37f5bf27
[gaim-migrate @ 2201]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2167
diff
changeset
|
3377 | gc = gdk_gc_new(pm); |
| 2979 | 3378 | gdk_gc_set_clip_mask(gc, bm); |
| 3379 | ||
| 3380 | gdk_gc_set_clip_origin(gc, gdk_pixbuf_frame_get_x_offset(frame) * | |
| 3129 | 3381 | SCALE(c->anim)/gdk_pixbuf_animation_get_width(c->anim), |
| 3382 | gdk_pixbuf_frame_get_y_offset(frame) * | |
| 3383 | SCALE(c->anim)/gdk_pixbuf_animation_get_height(c->anim)); | |
| 2979 | 3384 | gdk_draw_pixmap(pm, gc, src, 0, 0, gdk_pixbuf_frame_get_x_offset(frame)* |
| 3129 | 3385 | SCALE(c->anim)/gdk_pixbuf_animation_get_width(c->anim), |
| 3386 | gdk_pixbuf_frame_get_y_offset(frame) * | |
| 3387 | SCALE(c->anim)/gdk_pixbuf_animation_get_height(c->anim),-1,-1); | |
| 2979 | 3388 | |
|
2191
a40e37f5bf27
[gaim-migrate @ 2201]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2167
diff
changeset
|
3389 | gdk_pixmap_unref(src); |
|
2999
50cccb895314
[gaim-migrate @ 3012]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2994
diff
changeset
|
3390 | if (bm) |
|
50cccb895314
[gaim-migrate @ 3012]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2994
diff
changeset
|
3391 | gdk_bitmap_unref(bm); |
|
2191
a40e37f5bf27
[gaim-migrate @ 2201]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2167
diff
changeset
|
3392 | gtk_widget_queue_draw(c->icon); |
|
a40e37f5bf27
[gaim-migrate @ 2201]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2167
diff
changeset
|
3393 | gdk_gc_unref(gc); |
|
a40e37f5bf27
[gaim-migrate @ 2201]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2167
diff
changeset
|
3394 | break; |
|
a40e37f5bf27
[gaim-migrate @ 2201]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2167
diff
changeset
|
3395 | case GDK_PIXBUF_FRAME_DISPOSE: |
|
a40e37f5bf27
[gaim-migrate @ 2201]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2167
diff
changeset
|
3396 | buf = gdk_pixbuf_frame_get_pixbuf(frame); |
|
a40e37f5bf27
[gaim-migrate @ 2201]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2167
diff
changeset
|
3397 | scale = gdk_pixbuf_scale_simple(buf, |
|
2372
c24942700dfd
[gaim-migrate @ 2385]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2363
diff
changeset
|
3398 | MAX(gdk_pixbuf_get_width(buf) * SCALE(c->anim) / |
|
c24942700dfd
[gaim-migrate @ 2385]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2363
diff
changeset
|
3399 | gdk_pixbuf_animation_get_width(c->anim), 1), |
|
c24942700dfd
[gaim-migrate @ 2385]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2363
diff
changeset
|
3400 | MAX(gdk_pixbuf_get_height(buf) * SCALE(c->anim) / |
|
c24942700dfd
[gaim-migrate @ 2385]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2363
diff
changeset
|
3401 | gdk_pixbuf_animation_get_height(c->anim), 1), |
|
c24942700dfd
[gaim-migrate @ 2385]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2363
diff
changeset
|
3402 | GDK_INTERP_NEAREST); |
| 2979 | 3403 | gdk_pixbuf_render_pixmap_and_mask(scale, &pm, &bm, 100); |
|
2191
a40e37f5bf27
[gaim-migrate @ 2201]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2167
diff
changeset
|
3404 | gdk_pixbuf_unref(scale); |
|
a40e37f5bf27
[gaim-migrate @ 2201]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2167
diff
changeset
|
3405 | gtk_pixmap_set(GTK_PIXMAP(c->icon), pm, bm); |
|
a40e37f5bf27
[gaim-migrate @ 2201]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2167
diff
changeset
|
3406 | gdk_pixmap_unref(pm); |
|
a40e37f5bf27
[gaim-migrate @ 2201]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2167
diff
changeset
|
3407 | if (bm) |
|
a40e37f5bf27
[gaim-migrate @ 2201]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2167
diff
changeset
|
3408 | gdk_bitmap_unref(bm); |
|
a40e37f5bf27
[gaim-migrate @ 2201]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2167
diff
changeset
|
3409 | break; |
|
a40e37f5bf27
[gaim-migrate @ 2201]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2167
diff
changeset
|
3410 | case GDK_PIXBUF_FRAME_REVERT: |
|
a40e37f5bf27
[gaim-migrate @ 2201]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2167
diff
changeset
|
3411 | frame = frames->data; |
|
a40e37f5bf27
[gaim-migrate @ 2201]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2167
diff
changeset
|
3412 | buf = gdk_pixbuf_frame_get_pixbuf(frame); |
|
a40e37f5bf27
[gaim-migrate @ 2201]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2167
diff
changeset
|
3413 | scale = gdk_pixbuf_scale_simple(buf, |
|
2372
c24942700dfd
[gaim-migrate @ 2385]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2363
diff
changeset
|
3414 | MAX(gdk_pixbuf_get_width(buf) * SCALE(c->anim) / |
|
c24942700dfd
[gaim-migrate @ 2385]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2363
diff
changeset
|
3415 | gdk_pixbuf_animation_get_width(c->anim), 1), |
|
c24942700dfd
[gaim-migrate @ 2385]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2363
diff
changeset
|
3416 | MAX(gdk_pixbuf_get_height(buf) * SCALE(c->anim) / |
|
c24942700dfd
[gaim-migrate @ 2385]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2363
diff
changeset
|
3417 | gdk_pixbuf_animation_get_height(c->anim), 1), |
|
c24942700dfd
[gaim-migrate @ 2385]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2363
diff
changeset
|
3418 | GDK_INTERP_NEAREST); |
| 2979 | 3419 | gdk_pixbuf_render_pixmap_and_mask(scale, &pm, &bm, 100); |
|
2191
a40e37f5bf27
[gaim-migrate @ 2201]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2167
diff
changeset
|
3420 | gdk_pixbuf_unref(scale); |
|
a40e37f5bf27
[gaim-migrate @ 2201]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2167
diff
changeset
|
3421 | gtk_pixmap_set(GTK_PIXMAP(c->icon), pm, bm); |
|
a40e37f5bf27
[gaim-migrate @ 2201]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2167
diff
changeset
|
3422 | gdk_pixmap_unref(pm); |
|
a40e37f5bf27
[gaim-migrate @ 2201]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2167
diff
changeset
|
3423 | if (bm) |
|
a40e37f5bf27
[gaim-migrate @ 2201]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2167
diff
changeset
|
3424 | gdk_bitmap_unref(bm); |
|
a40e37f5bf27
[gaim-migrate @ 2201]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2167
diff
changeset
|
3425 | break; |
|
a40e37f5bf27
[gaim-migrate @ 2201]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2167
diff
changeset
|
3426 | } |
|
a40e37f5bf27
[gaim-migrate @ 2201]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2167
diff
changeset
|
3427 | |
|
a40e37f5bf27
[gaim-migrate @ 2201]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2167
diff
changeset
|
3428 | c->frame = (c->frame + 1) % g_list_length(frames); |
|
a40e37f5bf27
[gaim-migrate @ 2201]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2167
diff
changeset
|
3429 | delay = MAX(gdk_pixbuf_frame_get_delay_time(frame), 13); |
| 3367 | 3430 | #endif |
| 3431 | ||
|
2191
a40e37f5bf27
[gaim-migrate @ 2201]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2167
diff
changeset
|
3432 | c->icon_timer = gtk_timeout_add(delay * 10, redraw_icon, c); |
|
a40e37f5bf27
[gaim-migrate @ 2201]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2167
diff
changeset
|
3433 | return FALSE; |
|
a40e37f5bf27
[gaim-migrate @ 2201]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2167
diff
changeset
|
3434 | } |
|
2499
0e48d0a33bf7
[gaim-migrate @ 2512]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2487
diff
changeset
|
3435 | |
|
0e48d0a33bf7
[gaim-migrate @ 2512]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2487
diff
changeset
|
3436 | static void stop_anim(GtkObject *obj, struct conversation *c) |
|
0e48d0a33bf7
[gaim-migrate @ 2512]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2487
diff
changeset
|
3437 | { |
|
0e48d0a33bf7
[gaim-migrate @ 2512]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2487
diff
changeset
|
3438 | if (c->icon_timer) |
|
0e48d0a33bf7
[gaim-migrate @ 2512]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2487
diff
changeset
|
3439 | gtk_timeout_remove(c->icon_timer); |
|
0e48d0a33bf7
[gaim-migrate @ 2512]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2487
diff
changeset
|
3440 | c->icon_timer = 0; |
|
0e48d0a33bf7
[gaim-migrate @ 2512]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2487
diff
changeset
|
3441 | } |
|
0e48d0a33bf7
[gaim-migrate @ 2512]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2487
diff
changeset
|
3442 | |
|
2513
9f9e2b401d82
[gaim-migrate @ 2526]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2502
diff
changeset
|
3443 | static void start_anim(GtkObject *obj, struct conversation *c) |
|
9f9e2b401d82
[gaim-migrate @ 2526]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2502
diff
changeset
|
3444 | { |
|
9f9e2b401d82
[gaim-migrate @ 2526]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2502
diff
changeset
|
3445 | GList *frames; |
|
9f9e2b401d82
[gaim-migrate @ 2526]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2502
diff
changeset
|
3446 | GdkPixbufFrame *frame; |
|
9f9e2b401d82
[gaim-migrate @ 2526]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2502
diff
changeset
|
3447 | int delay; |
| 3367 | 3448 | #if GTK_CHECK_VERSION(1,3,0) |
| 3380 | 3449 | delay = gdk_pixbuf_animation_iter_get_delay_time(c->iter) / 10; |
| 3367 | 3450 | #else |
|
2513
9f9e2b401d82
[gaim-migrate @ 2526]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2502
diff
changeset
|
3451 | frames = gdk_pixbuf_animation_get_frames(c->anim); |
|
9f9e2b401d82
[gaim-migrate @ 2526]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2502
diff
changeset
|
3452 | frame = g_list_nth_data(frames, c->frame); |
|
9f9e2b401d82
[gaim-migrate @ 2526]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2502
diff
changeset
|
3453 | delay = MAX(gdk_pixbuf_frame_get_delay_time(frame), 13); |
| 3367 | 3454 | #endif |
| 3097 | 3455 | if (c->anim) |
| 3456 | c->icon_timer = gtk_timeout_add(delay * 10, redraw_icon, c); | |
|
2513
9f9e2b401d82
[gaim-migrate @ 2526]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2502
diff
changeset
|
3457 | } |
|
9f9e2b401d82
[gaim-migrate @ 2526]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2502
diff
changeset
|
3458 | |
|
2499
0e48d0a33bf7
[gaim-migrate @ 2512]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2487
diff
changeset
|
3459 | static int des_save_icon(GtkObject *obj, GdkEvent *e, struct conversation *c) |
|
0e48d0a33bf7
[gaim-migrate @ 2512]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2487
diff
changeset
|
3460 | { |
|
0e48d0a33bf7
[gaim-migrate @ 2512]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2487
diff
changeset
|
3461 | gtk_widget_destroy(c->save_icon); |
|
0e48d0a33bf7
[gaim-migrate @ 2512]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2487
diff
changeset
|
3462 | c->save_icon = NULL; |
|
0e48d0a33bf7
[gaim-migrate @ 2512]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2487
diff
changeset
|
3463 | return TRUE; |
|
0e48d0a33bf7
[gaim-migrate @ 2512]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2487
diff
changeset
|
3464 | } |
|
0e48d0a33bf7
[gaim-migrate @ 2512]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2487
diff
changeset
|
3465 | |
|
0e48d0a33bf7
[gaim-migrate @ 2512]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2487
diff
changeset
|
3466 | static void do_save_icon(GtkObject *obj, struct conversation *c) |
|
0e48d0a33bf7
[gaim-migrate @ 2512]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2487
diff
changeset
|
3467 | { |
|
0e48d0a33bf7
[gaim-migrate @ 2512]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2487
diff
changeset
|
3468 | FILE *file; |
|
0e48d0a33bf7
[gaim-migrate @ 2512]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2487
diff
changeset
|
3469 | char *f = gtk_file_selection_get_filename(GTK_FILE_SELECTION(c->save_icon)); |
|
0e48d0a33bf7
[gaim-migrate @ 2512]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2487
diff
changeset
|
3470 | if (file_is_dir(f, c->save_icon)) |
|
0e48d0a33bf7
[gaim-migrate @ 2512]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2487
diff
changeset
|
3471 | return; |
|
0e48d0a33bf7
[gaim-migrate @ 2512]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2487
diff
changeset
|
3472 | |
|
0e48d0a33bf7
[gaim-migrate @ 2512]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2487
diff
changeset
|
3473 | file = fopen(f, "w"); |
|
0e48d0a33bf7
[gaim-migrate @ 2512]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2487
diff
changeset
|
3474 | if (file) { |
|
0e48d0a33bf7
[gaim-migrate @ 2512]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2487
diff
changeset
|
3475 | int len; |
|
0e48d0a33bf7
[gaim-migrate @ 2512]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2487
diff
changeset
|
3476 | void *data = get_icon_data(c->gc, normalize(c->name), &len); |
|
0e48d0a33bf7
[gaim-migrate @ 2512]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2487
diff
changeset
|
3477 | if (data) |
|
0e48d0a33bf7
[gaim-migrate @ 2512]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2487
diff
changeset
|
3478 | fwrite(data, 1, len, file); |
|
0e48d0a33bf7
[gaim-migrate @ 2512]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2487
diff
changeset
|
3479 | fclose(file); |
|
0e48d0a33bf7
[gaim-migrate @ 2512]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2487
diff
changeset
|
3480 | } else { |
|
0e48d0a33bf7
[gaim-migrate @ 2512]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2487
diff
changeset
|
3481 | do_error_dialog("Can't open file for writing", "Error"); |
|
0e48d0a33bf7
[gaim-migrate @ 2512]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2487
diff
changeset
|
3482 | } |
|
0e48d0a33bf7
[gaim-migrate @ 2512]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2487
diff
changeset
|
3483 | |
|
0e48d0a33bf7
[gaim-migrate @ 2512]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2487
diff
changeset
|
3484 | gtk_widget_destroy(c->save_icon); |
|
0e48d0a33bf7
[gaim-migrate @ 2512]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2487
diff
changeset
|
3485 | c->save_icon = NULL; |
|
0e48d0a33bf7
[gaim-migrate @ 2512]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2487
diff
changeset
|
3486 | } |
|
0e48d0a33bf7
[gaim-migrate @ 2512]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2487
diff
changeset
|
3487 | |
|
0e48d0a33bf7
[gaim-migrate @ 2512]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2487
diff
changeset
|
3488 | static void cancel_save_icon(GtkObject *obj, struct conversation *c) |
|
0e48d0a33bf7
[gaim-migrate @ 2512]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2487
diff
changeset
|
3489 | { |
|
0e48d0a33bf7
[gaim-migrate @ 2512]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2487
diff
changeset
|
3490 | gtk_widget_destroy(c->save_icon); |
|
0e48d0a33bf7
[gaim-migrate @ 2512]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2487
diff
changeset
|
3491 | c->save_icon = NULL; |
|
0e48d0a33bf7
[gaim-migrate @ 2512]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2487
diff
changeset
|
3492 | } |
|
0e48d0a33bf7
[gaim-migrate @ 2512]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2487
diff
changeset
|
3493 | |
|
0e48d0a33bf7
[gaim-migrate @ 2512]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2487
diff
changeset
|
3494 | static void save_icon(GtkObject *obj, struct conversation *c) |
|
0e48d0a33bf7
[gaim-migrate @ 2512]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2487
diff
changeset
|
3495 | { |
|
0e48d0a33bf7
[gaim-migrate @ 2512]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2487
diff
changeset
|
3496 | char buf[BUF_LEN]; |
|
0e48d0a33bf7
[gaim-migrate @ 2512]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2487
diff
changeset
|
3497 | |
|
0e48d0a33bf7
[gaim-migrate @ 2512]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2487
diff
changeset
|
3498 | if (c->save_icon) { |
|
0e48d0a33bf7
[gaim-migrate @ 2512]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2487
diff
changeset
|
3499 | gdk_window_raise(c->save_icon->window); |
|
0e48d0a33bf7
[gaim-migrate @ 2512]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2487
diff
changeset
|
3500 | return; |
|
0e48d0a33bf7
[gaim-migrate @ 2512]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2487
diff
changeset
|
3501 | } |
|
0e48d0a33bf7
[gaim-migrate @ 2512]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2487
diff
changeset
|
3502 | |
|
0e48d0a33bf7
[gaim-migrate @ 2512]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2487
diff
changeset
|
3503 | c->save_icon = gtk_file_selection_new(_("Gaim - Save Icon")); |
|
0e48d0a33bf7
[gaim-migrate @ 2512]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2487
diff
changeset
|
3504 | gtk_file_selection_hide_fileop_buttons(GTK_FILE_SELECTION(c->save_icon)); |
|
0e48d0a33bf7
[gaim-migrate @ 2512]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2487
diff
changeset
|
3505 | g_snprintf(buf, BUF_LEN - 1, "%s/%s.icon", g_get_home_dir(), c->name); |
|
0e48d0a33bf7
[gaim-migrate @ 2512]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2487
diff
changeset
|
3506 | gtk_file_selection_set_filename(GTK_FILE_SELECTION(c->save_icon), buf); |
|
0e48d0a33bf7
[gaim-migrate @ 2512]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2487
diff
changeset
|
3507 | gtk_signal_connect(GTK_OBJECT(c->save_icon), "delete_event", |
|
0e48d0a33bf7
[gaim-migrate @ 2512]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2487
diff
changeset
|
3508 | GTK_SIGNAL_FUNC(des_save_icon), c); |
|
0e48d0a33bf7
[gaim-migrate @ 2512]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2487
diff
changeset
|
3509 | gtk_signal_connect(GTK_OBJECT(GTK_FILE_SELECTION(c->save_icon)->ok_button), "clicked", |
|
0e48d0a33bf7
[gaim-migrate @ 2512]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2487
diff
changeset
|
3510 | GTK_SIGNAL_FUNC(do_save_icon), c); |
|
0e48d0a33bf7
[gaim-migrate @ 2512]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2487
diff
changeset
|
3511 | gtk_signal_connect(GTK_OBJECT(GTK_FILE_SELECTION(c->save_icon)->cancel_button), "clicked", |
|
0e48d0a33bf7
[gaim-migrate @ 2512]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2487
diff
changeset
|
3512 | GTK_SIGNAL_FUNC(cancel_save_icon), c); |
|
0e48d0a33bf7
[gaim-migrate @ 2512]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2487
diff
changeset
|
3513 | |
|
0e48d0a33bf7
[gaim-migrate @ 2512]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2487
diff
changeset
|
3514 | gtk_widget_show(c->save_icon); |
|
0e48d0a33bf7
[gaim-migrate @ 2512]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2487
diff
changeset
|
3515 | } |
|
0e48d0a33bf7
[gaim-migrate @ 2512]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2487
diff
changeset
|
3516 | |
|
0e48d0a33bf7
[gaim-migrate @ 2512]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2487
diff
changeset
|
3517 | static gboolean icon_menu(GtkObject *obj, GdkEventButton *e, struct conversation *c) |
|
0e48d0a33bf7
[gaim-migrate @ 2512]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2487
diff
changeset
|
3518 | { |
|
3250
d167cdaf91f4
[gaim-migrate @ 3268]
Jim Seymour <jseymour@users.sourceforge.net>
parents:
3209
diff
changeset
|
3519 | static GtkWidget *menu = NULL; |
|
2499
0e48d0a33bf7
[gaim-migrate @ 2512]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2487
diff
changeset
|
3520 | GtkWidget *button; |
|
0e48d0a33bf7
[gaim-migrate @ 2512]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2487
diff
changeset
|
3521 | |
|
0e48d0a33bf7
[gaim-migrate @ 2512]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2487
diff
changeset
|
3522 | if (e->button != 3) |
|
0e48d0a33bf7
[gaim-migrate @ 2512]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2487
diff
changeset
|
3523 | return FALSE; |
|
0e48d0a33bf7
[gaim-migrate @ 2512]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2487
diff
changeset
|
3524 | if (e->type != GDK_BUTTON_PRESS) |
|
0e48d0a33bf7
[gaim-migrate @ 2512]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2487
diff
changeset
|
3525 | return FALSE; |
|
0e48d0a33bf7
[gaim-migrate @ 2512]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2487
diff
changeset
|
3526 | |
|
3250
d167cdaf91f4
[gaim-migrate @ 3268]
Jim Seymour <jseymour@users.sourceforge.net>
parents:
3209
diff
changeset
|
3527 | /* |
|
d167cdaf91f4
[gaim-migrate @ 3268]
Jim Seymour <jseymour@users.sourceforge.net>
parents:
3209
diff
changeset
|
3528 | * If a menu already exists, destroy it before creating a new one, |
|
d167cdaf91f4
[gaim-migrate @ 3268]
Jim Seymour <jseymour@users.sourceforge.net>
parents:
3209
diff
changeset
|
3529 | * thus freeing-up the memory it occupied. |
|
d167cdaf91f4
[gaim-migrate @ 3268]
Jim Seymour <jseymour@users.sourceforge.net>
parents:
3209
diff
changeset
|
3530 | */ |
|
d167cdaf91f4
[gaim-migrate @ 3268]
Jim Seymour <jseymour@users.sourceforge.net>
parents:
3209
diff
changeset
|
3531 | if(menu) |
|
d167cdaf91f4
[gaim-migrate @ 3268]
Jim Seymour <jseymour@users.sourceforge.net>
parents:
3209
diff
changeset
|
3532 | gtk_widget_destroy(menu); |
|
d167cdaf91f4
[gaim-migrate @ 3268]
Jim Seymour <jseymour@users.sourceforge.net>
parents:
3209
diff
changeset
|
3533 | |
|
2499
0e48d0a33bf7
[gaim-migrate @ 2512]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2487
diff
changeset
|
3534 | menu = gtk_menu_new(); |
|
0e48d0a33bf7
[gaim-migrate @ 2512]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2487
diff
changeset
|
3535 | |
|
0e48d0a33bf7
[gaim-migrate @ 2512]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2487
diff
changeset
|
3536 | if (c->icon_timer) { |
|
0e48d0a33bf7
[gaim-migrate @ 2512]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2487
diff
changeset
|
3537 | button = gtk_menu_item_new_with_label(_("Disable Animation")); |
|
0e48d0a33bf7
[gaim-migrate @ 2512]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2487
diff
changeset
|
3538 | gtk_signal_connect(GTK_OBJECT(button), "activate", GTK_SIGNAL_FUNC(stop_anim), c); |
|
0e48d0a33bf7
[gaim-migrate @ 2512]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2487
diff
changeset
|
3539 | gtk_menu_append(GTK_MENU(menu), button); |
|
0e48d0a33bf7
[gaim-migrate @ 2512]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2487
diff
changeset
|
3540 | gtk_widget_show(button); |
| 3367 | 3541 | } |
| 3542 | #if GTK_CHECK_VERSION(1,3,0) | |
| 3543 | else if (c->anim && !(gdk_pixbuf_animation_is_static_image(c->anim))) | |
| 3544 | #else | |
| 3545 | else if (c->anim && (gdk_pixbuf_animation_get_num_frames(c->anim) > 1)) | |
| 3546 | #endif | |
| 3547 | { | |
|
2513
9f9e2b401d82
[gaim-migrate @ 2526]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2502
diff
changeset
|
3548 | button = gtk_menu_item_new_with_label(_("Enable Animation")); |
|
9f9e2b401d82
[gaim-migrate @ 2526]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2502
diff
changeset
|
3549 | gtk_signal_connect(GTK_OBJECT(button), "activate", GTK_SIGNAL_FUNC(start_anim), c); |
|
9f9e2b401d82
[gaim-migrate @ 2526]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2502
diff
changeset
|
3550 | gtk_menu_append(GTK_MENU(menu), button); |
|
9f9e2b401d82
[gaim-migrate @ 2526]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2502
diff
changeset
|
3551 | gtk_widget_show(button); |
|
2499
0e48d0a33bf7
[gaim-migrate @ 2512]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2487
diff
changeset
|
3552 | } |
|
0e48d0a33bf7
[gaim-migrate @ 2512]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2487
diff
changeset
|
3553 | |
|
0e48d0a33bf7
[gaim-migrate @ 2512]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2487
diff
changeset
|
3554 | button = gtk_menu_item_new_with_label(_("Hide Icon")); |
|
0e48d0a33bf7
[gaim-migrate @ 2512]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2487
diff
changeset
|
3555 | gtk_signal_connect_object(GTK_OBJECT(button), "activate", |
|
0e48d0a33bf7
[gaim-migrate @ 2512]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2487
diff
changeset
|
3556 | GTK_SIGNAL_FUNC(remove_icon), (void *)c); |
|
0e48d0a33bf7
[gaim-migrate @ 2512]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2487
diff
changeset
|
3557 | gtk_menu_append(GTK_MENU(menu), button); |
|
0e48d0a33bf7
[gaim-migrate @ 2512]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2487
diff
changeset
|
3558 | gtk_widget_show(button); |
|
0e48d0a33bf7
[gaim-migrate @ 2512]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2487
diff
changeset
|
3559 | |
|
0e48d0a33bf7
[gaim-migrate @ 2512]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2487
diff
changeset
|
3560 | button = gtk_menu_item_new_with_label(_("Save Icon As...")); |
|
0e48d0a33bf7
[gaim-migrate @ 2512]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2487
diff
changeset
|
3561 | gtk_signal_connect(GTK_OBJECT(button), "activate", GTK_SIGNAL_FUNC(save_icon), c); |
|
0e48d0a33bf7
[gaim-migrate @ 2512]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2487
diff
changeset
|
3562 | gtk_menu_append(GTK_MENU(menu), button); |
|
0e48d0a33bf7
[gaim-migrate @ 2512]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2487
diff
changeset
|
3563 | gtk_widget_show(button); |
|
0e48d0a33bf7
[gaim-migrate @ 2512]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2487
diff
changeset
|
3564 | |
|
0e48d0a33bf7
[gaim-migrate @ 2512]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2487
diff
changeset
|
3565 | gtk_menu_popup(GTK_MENU(menu), NULL, NULL, NULL, NULL, e->button, e->time); |
|
0e48d0a33bf7
[gaim-migrate @ 2512]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2487
diff
changeset
|
3566 | |
|
0e48d0a33bf7
[gaim-migrate @ 2512]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2487
diff
changeset
|
3567 | return TRUE; |
|
0e48d0a33bf7
[gaim-migrate @ 2512]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2487
diff
changeset
|
3568 | } |
|
2191
a40e37f5bf27
[gaim-migrate @ 2201]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2167
diff
changeset
|
3569 | #endif |
|
a40e37f5bf27
[gaim-migrate @ 2201]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2167
diff
changeset
|
3570 | |
|
a40e37f5bf27
[gaim-migrate @ 2201]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2167
diff
changeset
|
3571 | void remove_icon(struct conversation *c) |
|
a40e37f5bf27
[gaim-migrate @ 2201]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2167
diff
changeset
|
3572 | { |
| 3367 | 3573 | #if USE_PIXBUF || GTK_CHECK_VERSION(1,3,0) |
|
2191
a40e37f5bf27
[gaim-migrate @ 2201]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2167
diff
changeset
|
3574 | if (c->icon) |
| 2895 | 3575 | gtk_container_remove(GTK_CONTAINER(c->bbox), c->icon->parent->parent); |
|
2191
a40e37f5bf27
[gaim-migrate @ 2201]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2167
diff
changeset
|
3576 | c->icon = NULL; |
|
a40e37f5bf27
[gaim-migrate @ 2201]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2167
diff
changeset
|
3577 | if (c->anim) |
|
a40e37f5bf27
[gaim-migrate @ 2201]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2167
diff
changeset
|
3578 | gdk_pixbuf_animation_unref(c->anim); |
|
a40e37f5bf27
[gaim-migrate @ 2201]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2167
diff
changeset
|
3579 | c->anim = NULL; |
|
a40e37f5bf27
[gaim-migrate @ 2201]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2167
diff
changeset
|
3580 | if (c->icon_timer) |
|
a40e37f5bf27
[gaim-migrate @ 2201]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2167
diff
changeset
|
3581 | gtk_timeout_remove(c->icon_timer); |
|
a40e37f5bf27
[gaim-migrate @ 2201]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2167
diff
changeset
|
3582 | c->icon_timer = 0; |
| 3367 | 3583 | #if GTK_CHECK_VERSION(1,3,0) |
| 3374 | 3584 | if(c->iter) |
| 3585 | g_object_unref(c->iter); | |
| 3367 | 3586 | #else |
|
2191
a40e37f5bf27
[gaim-migrate @ 2201]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2167
diff
changeset
|
3587 | c->frame = 0; |
|
a40e37f5bf27
[gaim-migrate @ 2201]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2167
diff
changeset
|
3588 | #endif |
| 3367 | 3589 | #endif |
|
2191
a40e37f5bf27
[gaim-migrate @ 2201]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2167
diff
changeset
|
3590 | } |
|
a40e37f5bf27
[gaim-migrate @ 2201]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2167
diff
changeset
|
3591 | |
| 3035 | 3592 | void update_smilies(struct conversation *c) |
| 3593 | { | |
| 3594 | GSList *smilies; | |
| 3595 | ||
| 3056 | 3596 | if (!c) |
| 3597 | return; | |
| 3598 | ||
| 3599 | if (!c->gc) | |
| 3600 | return; | |
| 3601 | ||
| 3035 | 3602 | if (c->gc->prpl->smiley_list) { |
| 3050 | 3603 | gtk_imhtml_remove_smileys(GTK_IMHTML(c->text)); |
| 3035 | 3604 | smilies = c->gc->prpl->smiley_list(); |
| 3605 | ||
| 3606 | while (smilies) { | |
| 3607 | struct _prpl_smiley *smile = | |
| 3608 | (struct _prpl_smiley *)smilies->data; | |
| 3609 | ||
| 3610 | gtk_imhtml_associate_smiley(GTK_IMHTML(c->text), smile->key, smile->xpm); | |
| 3611 | smilies = g_slist_next(smilies); | |
| 3612 | } | |
| 3050 | 3613 | } else { |
| 3614 | gtk_imhtml_reset_smileys(GTK_IMHTML(c->text)); | |
| 3035 | 3615 | } |
| 3616 | } | |
| 3617 | ||
|
2191
a40e37f5bf27
[gaim-migrate @ 2201]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2167
diff
changeset
|
3618 | void update_icon(struct conversation *c) |
|
a40e37f5bf27
[gaim-migrate @ 2201]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2167
diff
changeset
|
3619 | { |
| 3367 | 3620 | #if USE_PIXBUF || GTK_CHECK_VERSION(1,3,0) |
|
2521
a98b0a0e3d13
[gaim-migrate @ 2534]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2513
diff
changeset
|
3621 | char filename[256]; |
|
a98b0a0e3d13
[gaim-migrate @ 2534]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2513
diff
changeset
|
3622 | FILE *file; |
| 3367 | 3623 | #if GTK_CHECK_VERSION(1,3,0) |
| 3380 | 3624 | GError *err = NULL; |
| 3367 | 3625 | #endif |
|
2191
a40e37f5bf27
[gaim-migrate @ 2201]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2167
diff
changeset
|
3626 | void *data; |
| 3367 | 3627 | int len, delay; |
|
2191
a40e37f5bf27
[gaim-migrate @ 2201]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2167
diff
changeset
|
3628 | |
|
2521
a98b0a0e3d13
[gaim-migrate @ 2534]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2513
diff
changeset
|
3629 | GList *frames; |
|
a98b0a0e3d13
[gaim-migrate @ 2534]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2513
diff
changeset
|
3630 | GdkPixbuf *buf; |
|
a98b0a0e3d13
[gaim-migrate @ 2534]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2513
diff
changeset
|
3631 | |
|
2499
0e48d0a33bf7
[gaim-migrate @ 2512]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2487
diff
changeset
|
3632 | GtkWidget *event; |
| 2895 | 3633 | GtkWidget *frame; |
|
2191
a40e37f5bf27
[gaim-migrate @ 2201]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2167
diff
changeset
|
3634 | GdkPixbuf *scale; |
|
a40e37f5bf27
[gaim-migrate @ 2201]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2167
diff
changeset
|
3635 | GdkPixmap *pm; |
|
a40e37f5bf27
[gaim-migrate @ 2201]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2167
diff
changeset
|
3636 | GdkBitmap *bm; |
|
2264
424695f98528
[gaim-migrate @ 2274]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2246
diff
changeset
|
3637 | int sf = 0; |
|
2191
a40e37f5bf27
[gaim-migrate @ 2201]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2167
diff
changeset
|
3638 | |
|
a40e37f5bf27
[gaim-migrate @ 2201]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2167
diff
changeset
|
3639 | if (!c) |
|
a40e37f5bf27
[gaim-migrate @ 2201]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2167
diff
changeset
|
3640 | return; |
|
a40e37f5bf27
[gaim-migrate @ 2201]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2167
diff
changeset
|
3641 | |
|
2231
9d8593ab093e
[gaim-migrate @ 2241]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2227
diff
changeset
|
3642 | remove_icon(c); |
|
9d8593ab093e
[gaim-migrate @ 2241]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2227
diff
changeset
|
3643 | |
|
2323
dc50502319e8
[gaim-migrate @ 2333]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2313
diff
changeset
|
3644 | if (im_options & OPT_IM_HIDE_ICONS) |
|
dc50502319e8
[gaim-migrate @ 2333]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2313
diff
changeset
|
3645 | return; |
|
dc50502319e8
[gaim-migrate @ 2333]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2313
diff
changeset
|
3646 | |
|
2191
a40e37f5bf27
[gaim-migrate @ 2201]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2167
diff
changeset
|
3647 | if (!c->gc) |
|
a40e37f5bf27
[gaim-migrate @ 2201]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2167
diff
changeset
|
3648 | return; |
|
2195
0f7d11f927e5
[gaim-migrate @ 2205]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2191
diff
changeset
|
3649 | |
|
2191
a40e37f5bf27
[gaim-migrate @ 2201]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2167
diff
changeset
|
3650 | data = get_icon_data(c->gc, normalize(c->name), &len); |
|
a40e37f5bf27
[gaim-migrate @ 2201]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2167
diff
changeset
|
3651 | if (!data) |
|
a40e37f5bf27
[gaim-migrate @ 2201]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2167
diff
changeset
|
3652 | return; |
|
a40e37f5bf27
[gaim-migrate @ 2201]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2167
diff
changeset
|
3653 | |
|
2521
a98b0a0e3d13
[gaim-migrate @ 2534]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2513
diff
changeset
|
3654 | /* this is such an evil hack, i don't know why i'm even considering it. |
|
a98b0a0e3d13
[gaim-migrate @ 2534]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2513
diff
changeset
|
3655 | * we'll do it differently when gdk-pixbuf-loader isn't leaky anymore. */ |
|
a98b0a0e3d13
[gaim-migrate @ 2534]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2513
diff
changeset
|
3656 | g_snprintf(filename, sizeof(filename), "%s/gaimicon-%s.%d", g_get_tmp_dir(), c->name, getpid()); |
|
a98b0a0e3d13
[gaim-migrate @ 2534]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2513
diff
changeset
|
3657 | file = fopen(filename, "w"); |
|
a98b0a0e3d13
[gaim-migrate @ 2534]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2513
diff
changeset
|
3658 | if (!file) |
|
a98b0a0e3d13
[gaim-migrate @ 2534]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2513
diff
changeset
|
3659 | return; |
|
a98b0a0e3d13
[gaim-migrate @ 2534]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2513
diff
changeset
|
3660 | fwrite(data, 1, len, file); |
|
a98b0a0e3d13
[gaim-migrate @ 2534]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2513
diff
changeset
|
3661 | fclose(file); |
|
a98b0a0e3d13
[gaim-migrate @ 2534]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2513
diff
changeset
|
3662 | |
| 3367 | 3663 | #if GTK_CHECK_VERSION(1,3,0) |
| 3664 | c->anim = gdk_pixbuf_animation_new_from_file(filename, &err); | |
| 3380 | 3665 | if (err) { |
| 3666 | debug_printf("Buddy icon error: %s\n", err->message); | |
| 3667 | g_error_free(err); | |
| 3668 | } | |
| 3367 | 3669 | #else |
|
2521
a98b0a0e3d13
[gaim-migrate @ 2534]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2513
diff
changeset
|
3670 | c->anim = gdk_pixbuf_animation_new_from_file(filename); |
| 3367 | 3671 | #endif |
|
2521
a98b0a0e3d13
[gaim-migrate @ 2534]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2513
diff
changeset
|
3672 | /* make sure we remove the file as soon as possible */ |
|
a98b0a0e3d13
[gaim-migrate @ 2534]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2513
diff
changeset
|
3673 | unlink(filename); |
|
a98b0a0e3d13
[gaim-migrate @ 2534]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2513
diff
changeset
|
3674 | |
|
a98b0a0e3d13
[gaim-migrate @ 2534]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2513
diff
changeset
|
3675 | if (!c->anim) |
|
a98b0a0e3d13
[gaim-migrate @ 2534]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2513
diff
changeset
|
3676 | return; |
|
a98b0a0e3d13
[gaim-migrate @ 2534]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2513
diff
changeset
|
3677 | |
| 3367 | 3678 | #if GTK_CHECK_VERSION(1,3,0) |
| 3380 | 3679 | if (gdk_pixbuf_animation_is_static_image(c->anim)) { |
| 3680 | c->iter = NULL; | |
| 3681 | delay = 0; | |
| 3682 | buf = gdk_pixbuf_animation_get_static_image(c->anim); | |
| 3683 | } else { | |
| 3367 | 3684 | c->iter = gdk_pixbuf_animation_get_iter(c->anim, NULL); |
| 3685 | buf = gdk_pixbuf_animation_iter_get_pixbuf(c->iter); | |
| 3380 | 3686 | delay = gdk_pixbuf_animation_iter_get_delay_time(c->iter); |
| 3687 | delay = delay / 10; | |
| 3688 | } | |
| 3689 | sf = SCALE(c->anim); | |
| 3367 | 3690 | scale = gdk_pixbuf_scale_simple(buf, |
| 3691 | MAX(gdk_pixbuf_get_width(buf) * sf / | |
| 3692 | gdk_pixbuf_animation_get_width(c->anim), 1), | |
| 3693 | MAX(gdk_pixbuf_get_height(buf) * sf / | |
| 3694 | gdk_pixbuf_animation_get_height(c->anim), 1), | |
| 3695 | GDK_INTERP_NEAREST); | |
| 3380 | 3696 | |
| 3367 | 3697 | #else |
|
2521
a98b0a0e3d13
[gaim-migrate @ 2534]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2513
diff
changeset
|
3698 | c->frame = 1; |
| 3367 | 3699 | frames = gdk_pixbuf_animation_get_frames(c->anim); |
| 3700 | buf = gdk_pixbuf_frame_get_pixbuf(frames->data); | |
| 3701 | sf = SCALE(c->anim); | |
| 3702 | scale = gdk_pixbuf_scale_simple(buf, | |
| 3703 | MAX(gdk_pixbuf_get_width(buf) * sf / | |
| 3704 | gdk_pixbuf_animation_get_width(c->anim), 1), | |
| 3705 | MAX(gdk_pixbuf_get_height(buf) * sf / | |
| 3706 | gdk_pixbuf_animation_get_height(c->anim), 1), | |
| 3707 | GDK_INTERP_NEAREST); | |
| 3708 | if (gdk_pixbuf_animation_get_num_frames(c->anim) > 1) { | |
| 3709 | delay = MAX(gdk_pixbuf_frame_get_delay_time(frames->data), 13); | |
| 3710 | } else { | |
| 3711 | delay = 0; | |
| 3712 | } | |
| 3713 | #endif | |
| 3380 | 3714 | if (delay) |
| 3715 | c->icon_timer = gtk_timeout_add(delay * 10, redraw_icon, c); | |
| 3367 | 3716 | |
|
2191
a40e37f5bf27
[gaim-migrate @ 2201]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2167
diff
changeset
|
3717 | |
| 2936 | 3718 | gdk_pixbuf_render_pixmap_and_mask(scale, &pm, &bm, 100); |
|
2191
a40e37f5bf27
[gaim-migrate @ 2201]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2167
diff
changeset
|
3719 | gdk_pixbuf_unref(scale); |
|
a40e37f5bf27
[gaim-migrate @ 2201]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2167
diff
changeset
|
3720 | |
| 2895 | 3721 | frame = gtk_frame_new(NULL); |
| 2936 | 3722 | gtk_frame_set_shadow_type(GTK_FRAME(frame), bm ? GTK_SHADOW_NONE : GTK_SHADOW_IN); |
| 2895 | 3723 | gtk_box_pack_start(GTK_BOX(c->bbox), frame, FALSE, FALSE, 5); |
| 3724 | gtk_widget_show(frame); | |
| 3725 | ||
|
2499
0e48d0a33bf7
[gaim-migrate @ 2512]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2487
diff
changeset
|
3726 | event = gtk_event_box_new(); |
| 2895 | 3727 | gtk_container_add(GTK_CONTAINER(frame), event); |
|
2499
0e48d0a33bf7
[gaim-migrate @ 2512]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2487
diff
changeset
|
3728 | gtk_signal_connect(GTK_OBJECT(event), "button-press-event", GTK_SIGNAL_FUNC(icon_menu), c); |
|
0e48d0a33bf7
[gaim-migrate @ 2512]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2487
diff
changeset
|
3729 | gtk_widget_show(event); |
|
0e48d0a33bf7
[gaim-migrate @ 2512]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2487
diff
changeset
|
3730 | |
|
2191
a40e37f5bf27
[gaim-migrate @ 2201]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2167
diff
changeset
|
3731 | c->icon = gtk_pixmap_new(pm, bm); |
|
2264
424695f98528
[gaim-migrate @ 2274]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2246
diff
changeset
|
3732 | gtk_widget_set_usize(c->icon, sf, sf); |
|
2499
0e48d0a33bf7
[gaim-migrate @ 2512]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2487
diff
changeset
|
3733 | gtk_container_add(GTK_CONTAINER(event), c->icon); |
|
2191
a40e37f5bf27
[gaim-migrate @ 2201]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2167
diff
changeset
|
3734 | gtk_widget_show(c->icon); |
| 3012 | 3735 | if(im_options & OPT_IM_NO_ANIMATION) |
| 3013 | 3736 | stop_anim(NULL, c); |
|
2191
a40e37f5bf27
[gaim-migrate @ 2201]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2167
diff
changeset
|
3737 | gdk_pixmap_unref(pm); |
|
a40e37f5bf27
[gaim-migrate @ 2201]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2167
diff
changeset
|
3738 | if (bm) |
|
a40e37f5bf27
[gaim-migrate @ 2201]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2167
diff
changeset
|
3739 | gdk_bitmap_unref(bm); |
|
a40e37f5bf27
[gaim-migrate @ 2201]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2167
diff
changeset
|
3740 | #endif |
| 3367 | 3741 | |
|
2191
a40e37f5bf27
[gaim-migrate @ 2201]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2167
diff
changeset
|
3742 | } |
|
a40e37f5bf27
[gaim-migrate @ 2201]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2167
diff
changeset
|
3743 | |
|
a40e37f5bf27
[gaim-migrate @ 2201]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2167
diff
changeset
|
3744 | void got_new_icon(struct gaim_connection *gc, char *who) |
|
a40e37f5bf27
[gaim-migrate @ 2201]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2167
diff
changeset
|
3745 | { |
|
a40e37f5bf27
[gaim-migrate @ 2201]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2167
diff
changeset
|
3746 | struct conversation *c = find_conversation(who); |
|
2245
224ebc6abd96
[gaim-migrate @ 2255]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2239
diff
changeset
|
3747 | if (c && (c->gc == gc)) |
|
2191
a40e37f5bf27
[gaim-migrate @ 2201]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2167
diff
changeset
|
3748 | update_icon(c); |
|
a40e37f5bf27
[gaim-migrate @ 2201]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2167
diff
changeset
|
3749 | } |
|
2231
9d8593ab093e
[gaim-migrate @ 2241]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2227
diff
changeset
|
3750 | |
|
2323
dc50502319e8
[gaim-migrate @ 2333]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2313
diff
changeset
|
3751 | void set_hide_icons() |
|
dc50502319e8
[gaim-migrate @ 2333]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2313
diff
changeset
|
3752 | { |
|
dc50502319e8
[gaim-migrate @ 2333]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2313
diff
changeset
|
3753 | GList *c = conversations; |
|
dc50502319e8
[gaim-migrate @ 2333]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2313
diff
changeset
|
3754 | while (c) { |
|
dc50502319e8
[gaim-migrate @ 2333]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2313
diff
changeset
|
3755 | update_icon(c->data); |
|
dc50502319e8
[gaim-migrate @ 2333]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2313
diff
changeset
|
3756 | c = c->next; |
|
dc50502319e8
[gaim-migrate @ 2333]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2313
diff
changeset
|
3757 | } |
|
dc50502319e8
[gaim-migrate @ 2333]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2313
diff
changeset
|
3758 | } |
|
dc50502319e8
[gaim-migrate @ 2333]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2313
diff
changeset
|
3759 | |
| 3013 | 3760 | void set_anim() |
| 3761 | { | |
| 3367 | 3762 | #if USE_PIXBUF || GTK_CHECK_VERSION(1,3,0) |
| 3013 | 3763 | GList *c = conversations; |
| 3097 | 3764 | if (im_options & OPT_IM_HIDE_ICONS) |
| 3765 | return; | |
| 3013 | 3766 | while (c) { |
| 3767 | if(im_options & OPT_IM_NO_ANIMATION) | |
| 3768 | stop_anim(NULL, c->data); | |
| 3769 | else | |
| 3770 | start_anim(NULL, c->data); | |
| 3771 | c = c->next; | |
| 3772 | } | |
| 3014 | 3773 | #endif |
| 3013 | 3774 | } |
| 3775 | ||
|
2231
9d8593ab093e
[gaim-migrate @ 2241]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2227
diff
changeset
|
3776 | static void remove_checkbox(struct conversation *c) |
|
9d8593ab093e
[gaim-migrate @ 2241]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2227
diff
changeset
|
3777 | { |
|
9d8593ab093e
[gaim-migrate @ 2241]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2227
diff
changeset
|
3778 | if (c->check) |
|
9d8593ab093e
[gaim-migrate @ 2241]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2227
diff
changeset
|
3779 | gtk_container_remove(GTK_CONTAINER(c->lbox), c->check); |
|
9d8593ab093e
[gaim-migrate @ 2241]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2227
diff
changeset
|
3780 | c->check = NULL; |
|
9d8593ab093e
[gaim-migrate @ 2241]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2227
diff
changeset
|
3781 | } |
|
9d8593ab093e
[gaim-migrate @ 2241]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2227
diff
changeset
|
3782 | |
|
9d8593ab093e
[gaim-migrate @ 2241]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2227
diff
changeset
|
3783 | static void update_checkbox(struct conversation *c) |
|
9d8593ab093e
[gaim-migrate @ 2241]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2227
diff
changeset
|
3784 | { |
|
9d8593ab093e
[gaim-migrate @ 2241]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2227
diff
changeset
|
3785 | if (!c) |
|
9d8593ab093e
[gaim-migrate @ 2241]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2227
diff
changeset
|
3786 | return; |
|
9d8593ab093e
[gaim-migrate @ 2241]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2227
diff
changeset
|
3787 | |
|
9d8593ab093e
[gaim-migrate @ 2241]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2227
diff
changeset
|
3788 | remove_checkbox(c); |
|
9d8593ab093e
[gaim-migrate @ 2241]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2227
diff
changeset
|
3789 | |
|
9d8593ab093e
[gaim-migrate @ 2241]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2227
diff
changeset
|
3790 | if (!c->gc) |
|
9d8593ab093e
[gaim-migrate @ 2241]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2227
diff
changeset
|
3791 | return; |
|
9d8593ab093e
[gaim-migrate @ 2241]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2227
diff
changeset
|
3792 | |
|
2706
ac9384d37d6c
[gaim-migrate @ 2719]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2699
diff
changeset
|
3793 | if (!c->gc->checkbox) |
|
2231
9d8593ab093e
[gaim-migrate @ 2241]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2227
diff
changeset
|
3794 | return; |
|
9d8593ab093e
[gaim-migrate @ 2241]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2227
diff
changeset
|
3795 | |
|
2706
ac9384d37d6c
[gaim-migrate @ 2719]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2699
diff
changeset
|
3796 | c->check = gtk_check_button_new_with_label(c->gc->checkbox); |
|
2231
9d8593ab093e
[gaim-migrate @ 2241]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2227
diff
changeset
|
3797 | gtk_box_pack_start(GTK_BOX(c->lbox), c->check, FALSE, FALSE, 5); |
|
9d8593ab093e
[gaim-migrate @ 2241]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2227
diff
changeset
|
3798 | gtk_widget_show(c->check); |
|
9d8593ab093e
[gaim-migrate @ 2241]
Eric Warmenhoven <warmenhoven@yahoo.com>
parents:
2227
diff
changeset
|
3799 | } |