Mercurial > pidgin
annotate src/dialogs.c @ 7062:86ed8b2aa665
[gaim-migrate @ 7626]
g_show_info_text() is gone! Mwahahaha.
committer: Tailor Script <tailor@pidgin.im>
| author | Christian Hammond <chipx86@chipx86.com> |
|---|---|
| date | Tue, 30 Sep 2003 06:43:17 +0000 |
| parents | 9946001989a3 |
| children | 7fdac700deb1 |
| rev | line source |
|---|---|
| 1 | 1 /* |
| 2 * gaim | |
| 3 * | |
| 4 * Copyright (C) 1998-1999, Mark Spencer <markster@marko.net> | |
|
6465
fb64cc87bc96
[gaim-migrate @ 6974]
Christian Hammond <chipx86@chipx86.com>
parents:
6431
diff
changeset
|
5 * |
| 1 | 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 */ | |
|
6371
8f94cce8faa5
[gaim-migrate @ 6876]
Christian Hammond <chipx86@chipx86.com>
parents:
6352
diff
changeset
|
20 #include "gtkinternal.h" |
|
5872
059d95c67cda
[gaim-migrate @ 6304]
Christian Hammond <chipx86@chipx86.com>
parents:
5717
diff
changeset
|
21 |
|
059d95c67cda
[gaim-migrate @ 6304]
Christian Hammond <chipx86@chipx86.com>
parents:
5717
diff
changeset
|
22 #include "debug.h" |
|
059d95c67cda
[gaim-migrate @ 6304]
Christian Hammond <chipx86@chipx86.com>
parents:
5717
diff
changeset
|
23 #include "log.h" |
|
059d95c67cda
[gaim-migrate @ 6304]
Christian Hammond <chipx86@chipx86.com>
parents:
5717
diff
changeset
|
24 #include "multi.h" |
|
5436
ad445074d239
[gaim-migrate @ 5818]
Christian Hammond <chipx86@chipx86.com>
parents:
5411
diff
changeset
|
25 #include "notify.h" |
|
5545
7a64114641c3
[gaim-migrate @ 5946]
Christian Hammond <chipx86@chipx86.com>
parents:
5498
diff
changeset
|
26 #include "prefs.h" |
|
5872
059d95c67cda
[gaim-migrate @ 6304]
Christian Hammond <chipx86@chipx86.com>
parents:
5717
diff
changeset
|
27 #include "prpl.h" |
|
059d95c67cda
[gaim-migrate @ 6304]
Christian Hammond <chipx86@chipx86.com>
parents:
5717
diff
changeset
|
28 #include "request.h" |
| 6065 | 29 #include "status.h" |
|
5872
059d95c67cda
[gaim-migrate @ 6304]
Christian Hammond <chipx86@chipx86.com>
parents:
5717
diff
changeset
|
30 #include "util.h" |
|
059d95c67cda
[gaim-migrate @ 6304]
Christian Hammond <chipx86@chipx86.com>
parents:
5717
diff
changeset
|
31 |
|
059d95c67cda
[gaim-migrate @ 6304]
Christian Hammond <chipx86@chipx86.com>
parents:
5717
diff
changeset
|
32 #include "gtkblist.h" |
|
059d95c67cda
[gaim-migrate @ 6304]
Christian Hammond <chipx86@chipx86.com>
parents:
5717
diff
changeset
|
33 #include "gtkconv.h" |
|
059d95c67cda
[gaim-migrate @ 6304]
Christian Hammond <chipx86@chipx86.com>
parents:
5717
diff
changeset
|
34 #include "gtkimhtml.h" |
|
059d95c67cda
[gaim-migrate @ 6304]
Christian Hammond <chipx86@chipx86.com>
parents:
5717
diff
changeset
|
35 #include "gtkprefs.h" |
|
059d95c67cda
[gaim-migrate @ 6304]
Christian Hammond <chipx86@chipx86.com>
parents:
5717
diff
changeset
|
36 #include "gtkutils.h" |
|
059d95c67cda
[gaim-migrate @ 6304]
Christian Hammond <chipx86@chipx86.com>
parents:
5717
diff
changeset
|
37 #include "stock.h" |
|
059d95c67cda
[gaim-migrate @ 6304]
Christian Hammond <chipx86@chipx86.com>
parents:
5717
diff
changeset
|
38 |
|
059d95c67cda
[gaim-migrate @ 6304]
Christian Hammond <chipx86@chipx86.com>
parents:
5717
diff
changeset
|
39 #include "ui.h" |
|
059d95c67cda
[gaim-migrate @ 6304]
Christian Hammond <chipx86@chipx86.com>
parents:
5717
diff
changeset
|
40 |
|
7060
9946001989a3
[gaim-migrate @ 7623]
Christian Hammond <chipx86@chipx86.com>
parents:
7057
diff
changeset
|
41 #ifdef USE_GTKSPELL |
|
9946001989a3
[gaim-migrate @ 7623]
Christian Hammond <chipx86@chipx86.com>
parents:
7057
diff
changeset
|
42 # include <gtkspell/gtkspell.h> |
|
9946001989a3
[gaim-migrate @ 7623]
Christian Hammond <chipx86@chipx86.com>
parents:
7057
diff
changeset
|
43 #endif |
|
9946001989a3
[gaim-migrate @ 7623]
Christian Hammond <chipx86@chipx86.com>
parents:
7057
diff
changeset
|
44 |
|
6646
b89d98f0bf79
[gaim-migrate @ 7171]
Christian Hammond <chipx86@chipx86.com>
parents:
6640
diff
changeset
|
45 /* XXX */ |
|
5872
059d95c67cda
[gaim-migrate @ 6304]
Christian Hammond <chipx86@chipx86.com>
parents:
5717
diff
changeset
|
46 #include "gaim.h" |
|
1035
80a47e3b1bca
[gaim-migrate @ 1045]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1032
diff
changeset
|
47 |
|
7057
3c7c887c35c3
[gaim-migrate @ 7620]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
7055
diff
changeset
|
48 #ifdef _WIN32 |
|
3c7c887c35c3
[gaim-migrate @ 7620]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
7055
diff
changeset
|
49 # include "wspell.h" |
|
3c7c887c35c3
[gaim-migrate @ 7620]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
7055
diff
changeset
|
50 #endif |
|
3c7c887c35c3
[gaim-migrate @ 7620]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
7055
diff
changeset
|
51 |
|
2372
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
52 static GtkWidget *imdialog = NULL; /*I only want ONE of these :) */ |
| 1 | 53 static GList *dialogwindows = NULL; |
|
2493
1b7a1133962d
[gaim-migrate @ 2506]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2472
diff
changeset
|
54 static GtkWidget *importdialog; |
|
5563
9eb5b13fd412
[gaim-migrate @ 5965]
Christian Hammond <chipx86@chipx86.com>
parents:
5560
diff
changeset
|
55 static GaimConnection *importgc; |
| 2344 | 56 static GtkWidget *icondlg; |
|
1729
251c19bf5763
[gaim-migrate @ 1739]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1722
diff
changeset
|
57 static GtkWidget *rename_dialog = NULL; |
|
5560
b7319c094153
[gaim-migrate @ 5961]
Christian Hammond <chipx86@chipx86.com>
parents:
5551
diff
changeset
|
58 static GtkWidget *fontseld = NULL; |
|
230
83dd297aa363
[gaim-migrate @ 240]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
229
diff
changeset
|
59 |
| 3649 | 60 |
| 2743 | 61 struct confirm_del { |
| 62 GtkWidget *window; | |
| 63 GtkWidget *label; | |
| 64 GtkWidget *ok; | |
| 65 GtkWidget *cancel; | |
| 66 char name[1024]; | |
|
5563
9eb5b13fd412
[gaim-migrate @ 5965]
Christian Hammond <chipx86@chipx86.com>
parents:
5560
diff
changeset
|
67 GaimConnection *gc; |
| 2743 | 68 }; |
| 69 | |
| 1 | 70 struct create_away { |
|
2372
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
71 GtkWidget *window; |
|
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
72 GtkWidget *entry; |
|
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
73 GtkWidget *text; |
|
832
0142b4c66394
[gaim-migrate @ 842]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
825
diff
changeset
|
74 struct away_message *mess; |
| 1 | 75 }; |
| 76 | |
| 77 struct warning { | |
|
2372
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
78 GtkWidget *window; |
|
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
79 GtkWidget *anon; |
|
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
80 char *who; |
|
5563
9eb5b13fd412
[gaim-migrate @ 5965]
Christian Hammond <chipx86@chipx86.com>
parents:
5560
diff
changeset
|
81 GaimConnection *gc; |
| 1 | 82 }; |
| 83 | |
| 84 struct findbyemail { | |
| 85 GtkWidget *window; | |
| 86 GtkWidget *emailentry; | |
|
5563
9eb5b13fd412
[gaim-migrate @ 5965]
Christian Hammond <chipx86@chipx86.com>
parents:
5560
diff
changeset
|
87 GaimConnection *gc; |
| 1 | 88 }; |
| 89 | |
| 90 struct findbyinfo { | |
|
5563
9eb5b13fd412
[gaim-migrate @ 5965]
Christian Hammond <chipx86@chipx86.com>
parents:
5560
diff
changeset
|
91 GaimConnection *gc; |
| 1 | 92 GtkWidget *window; |
| 93 GtkWidget *firstentry; | |
| 94 GtkWidget *middleentry; | |
| 95 GtkWidget *lastentry; | |
| 96 GtkWidget *maidenentry; | |
| 97 GtkWidget *cityentry; | |
| 98 GtkWidget *stateentry; | |
| 99 GtkWidget *countryentry; | |
| 100 }; | |
| 101 | |
| 102 struct info_dlg { | |
|
5563
9eb5b13fd412
[gaim-migrate @ 5965]
Christian Hammond <chipx86@chipx86.com>
parents:
5560
diff
changeset
|
103 GaimConnection *gc; |
|
2773
a0fd8f91e294
[gaim-migrate @ 2786]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2763
diff
changeset
|
104 char *who; |
| 1 | 105 GtkWidget *window; |
| 106 GtkWidget *text; | |
| 107 }; | |
| 3197 | 108 |
| 109 struct getuserinfo { | |
| 110 GtkWidget *window; | |
| 111 GtkWidget *entry; | |
| 112 GtkWidget *account; | |
|
6465
fb64cc87bc96
[gaim-migrate @ 6974]
Christian Hammond <chipx86@chipx86.com>
parents:
6431
diff
changeset
|
113 GaimConnection *gc; |
| 3197 | 114 }; |
| 115 | |
|
6334
930708df05dd
[gaim-migrate @ 6833]
Christian Hammond <chipx86@chipx86.com>
parents:
6331
diff
changeset
|
116 typedef struct |
|
930708df05dd
[gaim-migrate @ 6833]
Christian Hammond <chipx86@chipx86.com>
parents:
6331
diff
changeset
|
117 { |
|
930708df05dd
[gaim-migrate @ 6833]
Christian Hammond <chipx86@chipx86.com>
parents:
6331
diff
changeset
|
118 char *username; |
|
930708df05dd
[gaim-migrate @ 6833]
Christian Hammond <chipx86@chipx86.com>
parents:
6331
diff
changeset
|
119 gboolean block; |
|
930708df05dd
[gaim-migrate @ 6833]
Christian Hammond <chipx86@chipx86.com>
parents:
6331
diff
changeset
|
120 GaimConnection *gc; |
|
930708df05dd
[gaim-migrate @ 6833]
Christian Hammond <chipx86@chipx86.com>
parents:
6331
diff
changeset
|
121 |
|
930708df05dd
[gaim-migrate @ 6833]
Christian Hammond <chipx86@chipx86.com>
parents:
6331
diff
changeset
|
122 } GaimGtkBlockData; |
|
930708df05dd
[gaim-migrate @ 6833]
Christian Hammond <chipx86@chipx86.com>
parents:
6331
diff
changeset
|
123 |
| 1 | 124 struct set_info_dlg { |
| 125 GtkWidget *window; | |
|
960
fa681641643d
[gaim-migrate @ 970]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
940
diff
changeset
|
126 GtkWidget *menu; |
|
5563
9eb5b13fd412
[gaim-migrate @ 5965]
Christian Hammond <chipx86@chipx86.com>
parents:
5560
diff
changeset
|
127 GaimAccount *account; |
| 1 | 128 GtkWidget *text; |
| 129 GtkWidget *save; | |
| 130 GtkWidget *cancel; | |
| 131 }; | |
| 132 | |
| 2344 | 133 struct set_icon_dlg { |
| 134 GtkWidget *window; | |
|
5563
9eb5b13fd412
[gaim-migrate @ 5965]
Christian Hammond <chipx86@chipx86.com>
parents:
5560
diff
changeset
|
135 GaimAccount *account; |
| 2344 | 136 GtkWidget *ok; |
| 137 GtkWidget *cancel; | |
| 138 GtkWidget *entry; | |
| 139 }; | |
| 140 | |
| 1 | 141 struct set_dir_dlg { |
|
5563
9eb5b13fd412
[gaim-migrate @ 5965]
Christian Hammond <chipx86@chipx86.com>
parents:
5560
diff
changeset
|
142 GaimConnection *gc; |
| 1 | 143 GtkWidget *window; |
| 144 GtkWidget *first; | |
| 145 GtkWidget *middle; | |
| 146 GtkWidget *last; | |
| 147 GtkWidget *maiden; | |
| 148 GtkWidget *city; | |
| 149 GtkWidget *state; | |
| 150 GtkWidget *country; | |
| 151 GtkWidget *web; | |
| 152 GtkWidget *cancel; | |
| 153 GtkWidget *save; | |
| 154 }; | |
| 155 | |
| 156 struct linkdlg { | |
| 157 GtkWidget *ok; | |
| 158 GtkWidget *cancel; | |
| 159 GtkWidget *window; | |
| 160 GtkWidget *url; | |
| 161 GtkWidget *text; | |
| 162 GtkWidget *toggle; | |
| 163 GtkWidget *entry; | |
|
5676
dae79aefac8d
[gaim-migrate @ 6094]
Christian Hammond <chipx86@chipx86.com>
parents:
5593
diff
changeset
|
164 GaimConversation *c; |
| 1 | 165 }; |
| 166 | |
| 146 | 167 struct passwddlg { |
| 168 GtkWidget *window; | |
| 169 GtkWidget *ok; | |
| 170 GtkWidget *cancel; | |
| 171 GtkWidget *original; | |
| 172 GtkWidget *new1; | |
| 173 GtkWidget *new2; | |
|
5563
9eb5b13fd412
[gaim-migrate @ 5965]
Christian Hammond <chipx86@chipx86.com>
parents:
5560
diff
changeset
|
174 GaimConnection *gc; |
| 146 | 175 }; |
| 1 | 176 |
|
2621
f8b02cf4af94
[gaim-migrate @ 2634]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2613
diff
changeset
|
177 struct view_log { |
|
f8b02cf4af94
[gaim-migrate @ 2634]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2613
diff
changeset
|
178 long offset; |
|
f8b02cf4af94
[gaim-migrate @ 2634]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2613
diff
changeset
|
179 int options; |
|
f8b02cf4af94
[gaim-migrate @ 2634]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2613
diff
changeset
|
180 char *name; |
|
f8b02cf4af94
[gaim-migrate @ 2634]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2613
diff
changeset
|
181 GtkWidget *bbox; |
|
f8b02cf4af94
[gaim-migrate @ 2634]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2613
diff
changeset
|
182 GtkWidget *window; |
|
f8b02cf4af94
[gaim-migrate @ 2634]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2613
diff
changeset
|
183 GtkWidget *layout; |
|
f8b02cf4af94
[gaim-migrate @ 2634]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2613
diff
changeset
|
184 }; |
|
f8b02cf4af94
[gaim-migrate @ 2634]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2613
diff
changeset
|
185 |
| 4119 | 186 /* Wrapper to get all the text from a GtkTextView */ |
| 187 gchar* gtk_text_view_get_text(GtkTextView *text, gboolean include_hidden_chars) | |
| 188 { | |
| 189 GtkTextBuffer *buffer; | |
| 190 GtkTextIter start, end; | |
| 191 | |
| 192 buffer = gtk_text_view_get_buffer(GTK_TEXT_VIEW(text)); | |
| 193 gtk_text_buffer_get_start_iter(buffer, &start); | |
| 194 gtk_text_buffer_get_end_iter(buffer, &end); | |
| 195 | |
| 196 return gtk_text_buffer_get_text(buffer, &start, &end, include_hidden_chars); | |
| 197 } | |
| 198 | |
| 1 | 199 /*------------------------------------------------------------------------*/ |
| 200 /* Destroys */ | |
| 201 /*------------------------------------------------------------------------*/ | |
| 202 | |
|
5676
dae79aefac8d
[gaim-migrate @ 6094]
Christian Hammond <chipx86@chipx86.com>
parents:
5593
diff
changeset
|
203 static gint delete_event_dialog(GtkWidget *w, GdkEventAny *e, GaimConversation *c) |
|
311
0a8b4edc4732
[gaim-migrate @ 321]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
308
diff
changeset
|
204 { |
|
5676
dae79aefac8d
[gaim-migrate @ 6094]
Christian Hammond <chipx86@chipx86.com>
parents:
5593
diff
changeset
|
205 GaimGtkConversation *gtkconv; |
| 605 | 206 gchar *object_data; |
|
4359
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
207 |
| 4635 | 208 object_data = g_object_get_data(G_OBJECT(w), "dialog_type"); |
| 605 | 209 |
|
4359
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
210 gtkconv = GAIM_GTK_CONVERSATION(c); |
|
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
211 |
|
2372
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
212 if (GTK_IS_COLOR_SELECTION_DIALOG(w)) { |
|
4359
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
213 if (w == gtkconv->dialogs.fg_color) { |
| 4635 | 214 gtk_toggle_button_set_active( |
|
4359
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
215 GTK_TOGGLE_BUTTON(gtkconv->toolbar.fgcolor), FALSE); |
|
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
216 gtkconv->dialogs.fg_color = NULL; |
|
858
3de6e98e8898
[gaim-migrate @ 868]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
854
diff
changeset
|
217 } else { |
| 4635 | 218 gtk_toggle_button_set_active( |
|
4359
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
219 GTK_TOGGLE_BUTTON(gtkconv->toolbar.bgcolor), FALSE); |
|
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
220 gtkconv->dialogs.bg_color = NULL; |
|
858
3de6e98e8898
[gaim-migrate @ 868]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
854
diff
changeset
|
221 } |
|
2372
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
222 } else if (GTK_IS_FONT_SELECTION_DIALOG(w)) { |
| 4635 | 223 gtk_toggle_button_set_active( |
| 4685 | 224 GTK_TOGGLE_BUTTON(gtkconv->toolbar.font), FALSE); |
|
4359
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
225 gtkconv->dialogs.font = NULL; |
| 4793 | 226 } else if (!g_ascii_strcasecmp(object_data, "smiley dialog")) { |
| 4635 | 227 gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(gtkconv->toolbar.smiley), |
|
4359
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
228 FALSE); |
|
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
229 gtkconv->dialogs.smiley = NULL; |
| 4793 | 230 } else if (!g_ascii_strcasecmp(object_data, "log dialog")) { |
|
4359
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
231 gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(gtkconv->toolbar.log), |
|
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
232 FALSE); |
|
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
233 gtkconv->dialogs.log = NULL; |
| 608 | 234 } |
|
2372
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
235 |
|
858
3de6e98e8898
[gaim-migrate @ 868]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
854
diff
changeset
|
236 dialogwindows = g_list_remove(dialogwindows, w); |
|
3de6e98e8898
[gaim-migrate @ 868]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
854
diff
changeset
|
237 gtk_widget_destroy(w); |
|
2372
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
238 |
|
311
0a8b4edc4732
[gaim-migrate @ 321]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
308
diff
changeset
|
239 return FALSE; |
|
0a8b4edc4732
[gaim-migrate @ 321]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
308
diff
changeset
|
240 } |
| 1 | 241 |
| 242 static void destroy_dialog(GtkWidget *w, GtkWidget *w2) | |
| 243 { | |
|
2372
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
244 GtkWidget *dest; |
|
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
245 |
|
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
246 if (!GTK_IS_WIDGET(w2)) |
|
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
247 dest = w; |
|
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
248 else |
|
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
249 dest = w2; |
|
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
250 |
|
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
251 if (dest == imdialog) |
| 1 | 252 imdialog = NULL; |
|
5050
dfec167391a5
[gaim-migrate @ 5398]
Christian Hammond <chipx86@chipx86.com>
parents:
5024
diff
changeset
|
253 else if (dest == importdialog) { |
| 1 | 254 importdialog = NULL; |
|
2493
1b7a1133962d
[gaim-migrate @ 2506]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2472
diff
changeset
|
255 importgc = NULL; |
|
1b7a1133962d
[gaim-migrate @ 2506]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2472
diff
changeset
|
256 } |
|
5050
dfec167391a5
[gaim-migrate @ 5398]
Christian Hammond <chipx86@chipx86.com>
parents:
5024
diff
changeset
|
257 else if (dest == icondlg) |
| 2344 | 258 icondlg = NULL; |
|
5050
dfec167391a5
[gaim-migrate @ 5398]
Christian Hammond <chipx86@chipx86.com>
parents:
5024
diff
changeset
|
259 else if (dest == rename_dialog) |
|
1729
251c19bf5763
[gaim-migrate @ 1739]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1722
diff
changeset
|
260 rename_dialog = NULL; |
|
251c19bf5763
[gaim-migrate @ 1739]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1722
diff
changeset
|
261 |
|
2372
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
262 dialogwindows = g_list_remove(dialogwindows, dest); |
|
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
263 gtk_widget_destroy(dest); |
| 1 | 264 } |
| 265 | |
| 266 | |
| 267 void destroy_all_dialogs() | |
| 268 { | |
|
2621
f8b02cf4af94
[gaim-migrate @ 2634]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2613
diff
changeset
|
269 while (dialogwindows) |
|
f8b02cf4af94
[gaim-migrate @ 2634]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2613
diff
changeset
|
270 destroy_dialog(NULL, dialogwindows->data); |
| 1 | 271 |
|
391
be408b41c172
[gaim-migrate @ 401]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
350
diff
changeset
|
272 if (awaymessage) |
|
be408b41c172
[gaim-migrate @ 401]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
350
diff
changeset
|
273 do_im_back(NULL, NULL); |
| 84 | 274 |
|
2372
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
275 if (imdialog) { |
|
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
276 destroy_dialog(NULL, imdialog); |
|
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
277 imdialog = NULL; |
|
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
278 } |
|
935
5e6ca3dd4d02
[gaim-migrate @ 945]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
934
diff
changeset
|
279 |
|
2372
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
280 if (importdialog) { |
|
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
281 destroy_dialog(NULL, importdialog); |
|
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
282 importdialog = NULL; |
|
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
283 } |
|
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
284 |
|
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
285 if (icondlg) { |
|
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
286 destroy_dialog(NULL, icondlg); |
|
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
287 icondlg = NULL; |
|
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
288 } |
| 1 | 289 } |
| 290 | |
| 3757 | 291 static void do_warn(GtkWidget *widget, gint resp, struct warning *w) |
| 1 | 292 { |
| 3757 | 293 if (resp == GTK_RESPONSE_OK) |
| 294 serv_warn(w->gc, w->who, (gtk_toggle_button_get_active(GTK_TOGGLE_BUTTON(w->anon))) ? 1 : 0); | |
|
2372
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
295 |
|
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
296 destroy_dialog(NULL, w->window); |
|
1288
d8eaf65ca9c3
[gaim-migrate @ 1298]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1272
diff
changeset
|
297 g_free(w); |
|
d8eaf65ca9c3
[gaim-migrate @ 1298]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1272
diff
changeset
|
298 } |
| 1 | 299 |
|
5563
9eb5b13fd412
[gaim-migrate @ 5965]
Christian Hammond <chipx86@chipx86.com>
parents:
5560
diff
changeset
|
300 void show_warn_dialog(GaimConnection *gc, char *who) |
| 1 | 301 { |
| 3757 | 302 char *labeltext; |
| 303 GtkWidget *hbox, *vbox; | |
| 1 | 304 GtkWidget *label; |
| 5024 | 305 GtkWidget *img = gtk_image_new_from_stock(GAIM_STOCK_DIALOG_WARNING, GTK_ICON_SIZE_DIALOG); |
|
6640
314111e7b601
[gaim-migrate @ 7165]
Christian Hammond <chipx86@chipx86.com>
parents:
6623
diff
changeset
|
306 GaimConversation *c = gaim_find_conversation_with_account(who, gc->account); |
| 441 | 307 |
|
2372
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
308 struct warning *w = g_new0(struct warning, 1); |
|
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
309 w->who = who; |
|
1288
d8eaf65ca9c3
[gaim-migrate @ 1298]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1272
diff
changeset
|
310 w->gc = gc; |
|
2372
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
311 |
| 3757 | 312 gtk_misc_set_alignment(GTK_MISC(img), 0, 0); |
| 313 | |
| 6112 | 314 w->window = gtk_dialog_new_with_buttons(_("Warn User"), |
| 315 GTK_WINDOW(GAIM_GTK_WINDOW(c->window)->window), 0, | |
| 316 GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL, | |
| 317 _("_Warn"), GTK_RESPONSE_OK, NULL); | |
| 4118 | 318 gtk_dialog_set_default_response (GTK_DIALOG(w->window), GTK_RESPONSE_OK); |
| 3757 | 319 g_signal_connect(G_OBJECT(w->window), "response", G_CALLBACK(do_warn), w); |
| 320 | |
| 321 gtk_container_set_border_width (GTK_CONTAINER(w->window), 6); | |
| 322 gtk_window_set_resizable(GTK_WINDOW(w->window), FALSE); | |
| 323 gtk_dialog_set_has_separator(GTK_DIALOG(w->window), FALSE); | |
| 324 gtk_box_set_spacing(GTK_BOX(GTK_DIALOG(w->window)->vbox), 12); | |
| 325 gtk_container_set_border_width (GTK_CONTAINER(GTK_DIALOG(w->window)->vbox), 6); | |
| 326 | |
| 327 hbox = gtk_hbox_new(FALSE, 12); | |
| 328 gtk_container_add(GTK_CONTAINER(GTK_DIALOG(w->window)->vbox), hbox); | |
| 329 gtk_box_pack_start(GTK_BOX(hbox), img, FALSE, FALSE, 0); | |
|
6465
fb64cc87bc96
[gaim-migrate @ 6974]
Christian Hammond <chipx86@chipx86.com>
parents:
6431
diff
changeset
|
330 |
| 3757 | 331 vbox = gtk_vbox_new(FALSE, 0); |
| 332 gtk_container_add(GTK_CONTAINER(hbox), vbox); | |
| 333 labeltext = g_strdup_printf(_("<span weight=\"bold\" size=\"larger\">Warn %s?</span>\n\n" | |
| 334 "This will increase %s's warning level and he or she will be subject to harsher rate limiting.\n"), who, who); | |
| 335 label = gtk_label_new(NULL); | |
| 336 gtk_label_set_markup(GTK_LABEL(label), labeltext); | |
| 337 gtk_label_set_line_wrap(GTK_LABEL(label), TRUE); | |
| 338 gtk_misc_set_alignment(GTK_MISC(label), 0, 0); | |
| 339 gtk_box_pack_start(GTK_BOX(vbox), label, FALSE, FALSE, 0); | |
| 340 g_free(labeltext); | |
| 341 | |
| 342 w->anon = gtk_check_button_new_with_mnemonic(_("Warn _anonymously?")); | |
| 343 gtk_box_pack_start(GTK_BOX(vbox), w->anon, FALSE, FALSE, 0); | |
|
6465
fb64cc87bc96
[gaim-migrate @ 6974]
Christian Hammond <chipx86@chipx86.com>
parents:
6431
diff
changeset
|
344 |
| 3757 | 345 hbox = gtk_hbox_new(FALSE, 6); |
| 346 gtk_container_add(GTK_CONTAINER(vbox), hbox); | |
| 347 img = gtk_image_new_from_stock(GTK_STOCK_DIALOG_INFO, GTK_ICON_SIZE_MENU); | |
| 348 gtk_box_pack_start(GTK_BOX(hbox), img, FALSE, FALSE, 0); | |
| 349 labeltext = _("<b>Anonymous warnings are less severe.</b>"); | |
| 350 /* labeltext = _("Anonymous warnings are less severe."); */ | |
| 351 label = gtk_label_new(NULL); | |
| 352 gtk_label_set_markup(GTK_LABEL(label), labeltext); | |
| 353 gtk_label_set_line_wrap(GTK_LABEL(label), TRUE); | |
| 354 gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 0); | |
| 355 | |
|
1288
d8eaf65ca9c3
[gaim-migrate @ 1298]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1272
diff
changeset
|
356 dialogwindows = g_list_prepend(dialogwindows, w->window); |
| 3757 | 357 gtk_widget_show_all(w->window); |
| 1 | 358 } |
| 359 | |
|
6334
930708df05dd
[gaim-migrate @ 6833]
Christian Hammond <chipx86@chipx86.com>
parents:
6331
diff
changeset
|
360 static void |
| 6695 | 361 do_remove_chat(GaimBlistChat *chat) |
| 5234 | 362 { |
| 363 gaim_blist_remove_chat(chat); | |
| 364 gaim_blist_save(); | |
| 365 } | |
| 366 | |
|
6334
930708df05dd
[gaim-migrate @ 6833]
Christian Hammond <chipx86@chipx86.com>
parents:
6331
diff
changeset
|
367 static void |
| 6695 | 368 do_remove_buddy(GaimBuddy *b) |
| 2743 | 369 { |
| 6695 | 370 GaimGroup *g; |
|
5676
dae79aefac8d
[gaim-migrate @ 6094]
Christian Hammond <chipx86@chipx86.com>
parents:
5593
diff
changeset
|
371 GaimConversation *c; |
|
4918
553d96cb9b26
[gaim-migrate @ 5252]
Christian Hammond <chipx86@chipx86.com>
parents:
4916
diff
changeset
|
372 gchar *name; |
|
6640
314111e7b601
[gaim-migrate @ 7165]
Christian Hammond <chipx86@chipx86.com>
parents:
6623
diff
changeset
|
373 GaimAccount *account; |
| 2743 | 374 |
| 375 if (!b) | |
| 376 return; | |
| 377 | |
| 4687 | 378 g = gaim_find_buddys_group(b); |
|
6640
314111e7b601
[gaim-migrate @ 7165]
Christian Hammond <chipx86@chipx86.com>
parents:
6623
diff
changeset
|
379 name = g_strdup(b->name); /* b->name is a crasher after remove_buddy */ |
|
314111e7b601
[gaim-migrate @ 7165]
Christian Hammond <chipx86@chipx86.com>
parents:
6623
diff
changeset
|
380 account = b->account; |
|
4359
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
381 |
|
5213
1cf4eb75e3ee
[gaim-migrate @ 5583]
Christian Hammond <chipx86@chipx86.com>
parents:
5205
diff
changeset
|
382 gaim_debug(GAIM_DEBUG_INFO, "blist", |
|
1cf4eb75e3ee
[gaim-migrate @ 5583]
Christian Hammond <chipx86@chipx86.com>
parents:
5205
diff
changeset
|
383 "Removing '%s' from buddy list.\n", b->name); |
| 4491 | 384 serv_remove_buddy(b->account->gc, name, g->name); |
| 4687 | 385 gaim_blist_remove_buddy(b); |
| 4349 | 386 gaim_blist_save(); |
| 2743 | 387 |
|
6640
314111e7b601
[gaim-migrate @ 7165]
Christian Hammond <chipx86@chipx86.com>
parents:
6623
diff
changeset
|
388 c = gaim_find_conversation_with_account(name, account); |
|
4359
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
389 |
|
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
390 if (c != NULL) |
|
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
391 gaim_conversation_update(c, GAIM_CONV_UPDATE_REMOVE); |
|
4397
ce3a0eba91ef
[gaim-migrate @ 4666]
Christian Hammond <chipx86@chipx86.com>
parents:
4372
diff
changeset
|
392 |
|
ce3a0eba91ef
[gaim-migrate @ 4666]
Christian Hammond <chipx86@chipx86.com>
parents:
4372
diff
changeset
|
393 g_free(name); |
| 2743 | 394 } |
| 395 | |
| 6742 | 396 static void do_remove_contact(GaimContact *c) |
| 397 { | |
| 398 GaimBlistNode *bnode, *cnode; | |
| 399 GaimGroup *g; | |
| 400 | |
| 401 if(!c) | |
| 402 return; | |
| 403 | |
| 404 cnode = (GaimBlistNode *)c; | |
| 405 g = (GaimGroup*)cnode->parent; | |
| 406 for(bnode = cnode->child; bnode; bnode = bnode->next) { | |
| 407 GaimBuddy *b = (GaimBuddy*)bnode; | |
| 408 if(b->account->gc) | |
| 409 serv_remove_buddy(b->account->gc, b->name, g->name); | |
| 410 } | |
| 411 gaim_blist_remove_contact(c); | |
| 412 } | |
| 413 | |
| 6695 | 414 void do_remove_group(GaimGroup *g) |
| 4916 | 415 { |
| 6695 | 416 GaimBlistNode *cnode, *bnode; |
|
6885
66dd420d3d23
[gaim-migrate @ 7431]
Christian Hammond <chipx86@chipx86.com>
parents:
6878
diff
changeset
|
417 |
| 6695 | 418 cnode = ((GaimBlistNode*)g)->child; |
|
6885
66dd420d3d23
[gaim-migrate @ 7431]
Christian Hammond <chipx86@chipx86.com>
parents:
6878
diff
changeset
|
419 |
| 6695 | 420 while(cnode) { |
| 421 if(GAIM_BLIST_NODE_IS_CONTACT(cnode)) { | |
| 422 bnode = cnode->child; | |
| 423 cnode = cnode->next; | |
| 424 while(bnode) { | |
| 425 GaimBuddy *b; | |
| 426 if(GAIM_BLIST_NODE_IS_BUDDY(bnode)) { | |
|
6745
57a24492434b
[gaim-migrate @ 7277]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
6742
diff
changeset
|
427 GaimConversation *c; |
|
57a24492434b
[gaim-migrate @ 7277]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
6742
diff
changeset
|
428 b = (GaimBuddy*)bnode; |
| 6695 | 429 bnode = bnode->next; |
|
6745
57a24492434b
[gaim-migrate @ 7277]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
6742
diff
changeset
|
430 c = gaim_find_conversation_with_account(b->name, b->account); |
| 6695 | 431 if(gaim_account_is_connected(b->account)) { |
| 432 serv_remove_buddy(b->account->gc, b->name, g->name); | |
| 433 gaim_blist_remove_buddy(b); | |
| 434 if(c) | |
| 435 gaim_conversation_update(c, | |
| 436 GAIM_CONV_UPDATE_REMOVE); | |
| 437 } | |
| 438 } else { | |
| 439 bnode = bnode->next; | |
| 440 } | |
| 5234 | 441 } |
| 6695 | 442 } else if(GAIM_BLIST_NODE_IS_CHAT(cnode)) { |
| 443 GaimBlistChat *chat = (GaimBlistChat *)cnode; | |
| 444 cnode = cnode->next; | |
| 445 if(gaim_account_is_connected(chat->account)) | |
| 6088 | 446 gaim_blist_remove_chat(chat); |
| 6695 | 447 } else { |
| 448 cnode = cnode->next; | |
| 4938 | 449 } |
| 4916 | 450 } |
|
6885
66dd420d3d23
[gaim-migrate @ 7431]
Christian Hammond <chipx86@chipx86.com>
parents:
6878
diff
changeset
|
451 |
| 4916 | 452 gaim_blist_remove_group(g); |
| 453 gaim_blist_save(); | |
| 454 } | |
| 455 | |
| 6695 | 456 void show_confirm_del(GaimBuddy *b) |
| 2743 | 457 { |
| 3753 | 458 char *text; |
| 5975 | 459 if (!b) |
| 3753 | 460 return; |
| 461 | |
| 5975 | 462 text = g_strdup_printf(_("You are about to remove %s from your buddy list. Do you want to continue?"), b->name); |
| 463 | |
| 464 gaim_request_action(NULL, NULL, _("Remove Buddy"), text, -1, b, 2, | |
|
5498
cce2d7868c78
[gaim-migrate @ 5894]
Christian Hammond <chipx86@chipx86.com>
parents:
5436
diff
changeset
|
465 _("Remove Buddy"), G_CALLBACK(do_remove_buddy), |
|
cce2d7868c78
[gaim-migrate @ 5894]
Christian Hammond <chipx86@chipx86.com>
parents:
5436
diff
changeset
|
466 _("Cancel"), NULL); |
|
cce2d7868c78
[gaim-migrate @ 5894]
Christian Hammond <chipx86@chipx86.com>
parents:
5436
diff
changeset
|
467 |
| 3753 | 468 g_free(text); |
| 2743 | 469 } |
| 470 | |
| 6695 | 471 void show_confirm_del_blist_chat(GaimBlistChat *chat) |
| 5234 | 472 { |
| 6695 | 473 char *name = gaim_blist_chat_get_display_name(chat); |
| 6034 | 474 char *text = g_strdup_printf(_("You are about to remove the chat %s from your buddy list. Do you want to continue?"), name); |
|
5498
cce2d7868c78
[gaim-migrate @ 5894]
Christian Hammond <chipx86@chipx86.com>
parents:
5436
diff
changeset
|
475 |
|
cce2d7868c78
[gaim-migrate @ 5894]
Christian Hammond <chipx86@chipx86.com>
parents:
5436
diff
changeset
|
476 gaim_request_action(NULL, NULL, _("Remove Chat"), text, -1, chat, 2, |
|
cce2d7868c78
[gaim-migrate @ 5894]
Christian Hammond <chipx86@chipx86.com>
parents:
5436
diff
changeset
|
477 _("Remove Chat"), G_CALLBACK(do_remove_chat), |
|
cce2d7868c78
[gaim-migrate @ 5894]
Christian Hammond <chipx86@chipx86.com>
parents:
5436
diff
changeset
|
478 _("Cancel"), NULL); |
|
cce2d7868c78
[gaim-migrate @ 5894]
Christian Hammond <chipx86@chipx86.com>
parents:
5436
diff
changeset
|
479 |
| 6034 | 480 g_free(name); |
| 5234 | 481 g_free(text); |
| 482 } | |
| 483 | |
| 6695 | 484 void show_confirm_del_group(GaimGroup *g) |
| 4916 | 485 { |
|
6465
fb64cc87bc96
[gaim-migrate @ 6974]
Christian Hammond <chipx86@chipx86.com>
parents:
6431
diff
changeset
|
486 char *text = g_strdup_printf(_("You are about to remove the group %s and all its members from your buddy list. Do you want to continue?"), |
| 4916 | 487 g->name); |
|
5498
cce2d7868c78
[gaim-migrate @ 5894]
Christian Hammond <chipx86@chipx86.com>
parents:
5436
diff
changeset
|
488 |
|
cce2d7868c78
[gaim-migrate @ 5894]
Christian Hammond <chipx86@chipx86.com>
parents:
5436
diff
changeset
|
489 gaim_request_action(NULL, NULL, _("Remove Group"), text, -1, g, 2, |
|
cce2d7868c78
[gaim-migrate @ 5894]
Christian Hammond <chipx86@chipx86.com>
parents:
5436
diff
changeset
|
490 _("Remove Group"), G_CALLBACK(do_remove_group), |
|
cce2d7868c78
[gaim-migrate @ 5894]
Christian Hammond <chipx86@chipx86.com>
parents:
5436
diff
changeset
|
491 _("Cancel"), NULL); |
|
cce2d7868c78
[gaim-migrate @ 5894]
Christian Hammond <chipx86@chipx86.com>
parents:
5436
diff
changeset
|
492 |
| 4916 | 493 g_free(text); |
| 494 } | |
| 1 | 495 |
| 6742 | 496 void show_confirm_del_contact(GaimContact *c) |
| 497 { | |
| 498 GaimBuddy *b = gaim_contact_get_priority_buddy(c); | |
| 499 | |
| 500 if(!b) | |
| 501 return; | |
| 502 | |
| 503 if(((GaimBlistNode*)c)->child == (GaimBlistNode*)b && | |
| 504 !((GaimBlistNode*)b)->next) { | |
| 505 show_confirm_del(b); | |
| 506 } else { | |
| 507 char *text = g_strdup_printf(_("You are about to remove the contact containing %s and %d other buddies from your buddy list. Do you want to continue?"), | |
| 508 b->name, c->totalsize - 1); | |
| 509 | |
| 510 gaim_request_action(NULL, NULL, _("Remove Contact"), text, -1, c, 2, | |
| 511 _("Remove Contact"), G_CALLBACK(do_remove_contact), | |
| 512 _("Cancel"), NULL); | |
| 513 | |
| 514 g_free(text); | |
| 515 } | |
| 516 } | |
| 517 | |
| 1 | 518 /*------------------------------------------------------------------------*/ |
| 519 /* The dialog for getting an error */ | |
| 520 /*------------------------------------------------------------------------*/ | |
| 3816 | 521 static void do_im(GtkWidget *widget, int resp, struct getuserinfo *info) |
| 1 | 522 { |
|
4359
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
523 const char *who; |
|
5676
dae79aefac8d
[gaim-migrate @ 6094]
Christian Hammond <chipx86@chipx86.com>
parents:
5593
diff
changeset
|
524 GaimConversation *conv; |
|
5563
9eb5b13fd412
[gaim-migrate @ 5965]
Christian Hammond <chipx86@chipx86.com>
parents:
5560
diff
changeset
|
525 GaimAccount *account; |
|
2372
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
526 |
| 3802 | 527 if (resp == GTK_RESPONSE_OK) { |
|
4359
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
528 who = gtk_entry_get_text(GTK_ENTRY(info->entry)); |
|
4476
62c1e5e656d0
[gaim-migrate @ 4751]
Christian Hammond <chipx86@chipx86.com>
parents:
4472
diff
changeset
|
529 |
| 4613 | 530 if (!who || !*who) { |
| 531 /* this shouldn't ever happen */ | |
| 3802 | 532 return; |
| 533 } | |
|
4359
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
534 |
| 4491 | 535 account = (info->gc ? info->gc->account : NULL); |
|
4476
62c1e5e656d0
[gaim-migrate @ 4751]
Christian Hammond <chipx86@chipx86.com>
parents:
4472
diff
changeset
|
536 |
|
6640
314111e7b601
[gaim-migrate @ 7165]
Christian Hammond <chipx86@chipx86.com>
parents:
6623
diff
changeset
|
537 conv = gaim_find_conversation_with_account(who, account); |
|
4359
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
538 |
|
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
539 if (conv == NULL) |
| 4491 | 540 conv = gaim_conversation_new(GAIM_CONV_IM, account, who); |
|
4476
62c1e5e656d0
[gaim-migrate @ 4751]
Christian Hammond <chipx86@chipx86.com>
parents:
4472
diff
changeset
|
541 else { |
|
4359
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
542 gaim_window_raise(gaim_conversation_get_window(conv)); |
|
4476
62c1e5e656d0
[gaim-migrate @ 4751]
Christian Hammond <chipx86@chipx86.com>
parents:
4472
diff
changeset
|
543 } |
| 1 | 544 } |
|
4359
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
545 |
| 3816 | 546 destroy_dialog(NULL, imdialog); |
| 547 imdialog = NULL; | |
| 4138 | 548 g_free(info); |
| 1 | 549 } |
| 550 | |
| 3802 | 551 static void do_info(GtkWidget *widget, int resp, struct getuserinfo *info) |
|
935
5e6ca3dd4d02
[gaim-migrate @ 945]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
934
diff
changeset
|
552 { |
|
5e6ca3dd4d02
[gaim-migrate @ 945]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
934
diff
changeset
|
553 char *who; |
|
2372
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
554 |
| 3802 | 555 if (resp == GTK_RESPONSE_OK) { |
| 556 who = g_strdup(normalize(gtk_entry_get_text(GTK_ENTRY(info->entry)))); | |
| 557 | |
| 4793 | 558 if (!g_ascii_strcasecmp(who, "")) { |
| 3802 | 559 g_free(who); |
| 560 return; | |
| 561 } | |
|
6465
fb64cc87bc96
[gaim-migrate @ 6974]
Christian Hammond <chipx86@chipx86.com>
parents:
6431
diff
changeset
|
562 |
| 3802 | 563 /* what do we want to do about this case? */ |
| 564 if (info->gc) | |
| 565 serv_get_info(info->gc, who); | |
|
1729
251c19bf5763
[gaim-migrate @ 1739]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1722
diff
changeset
|
566 g_free(who); |
|
935
5e6ca3dd4d02
[gaim-migrate @ 945]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
934
diff
changeset
|
567 } |
| 3802 | 568 gtk_widget_destroy(GTK_WIDGET(widget)); |
| 4138 | 569 g_free(info); |
|
935
5e6ca3dd4d02
[gaim-migrate @ 945]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
934
diff
changeset
|
570 } |
|
5e6ca3dd4d02
[gaim-migrate @ 945]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
934
diff
changeset
|
571 |
| 1 | 572 void show_ee_dialog(int ee) |
| 573 { | |
| 3767 | 574 GtkWidget *window; |
| 575 GtkWidget *hbox; | |
| 1 | 576 GtkWidget *label; |
|
4695
4bdd9a5fd026
[gaim-migrate @ 5006]
Christian Hammond <chipx86@chipx86.com>
parents:
4687
diff
changeset
|
577 struct gaim_gtk_buddy_list *gtkblist; |
| 5024 | 578 GtkWidget *img = gtk_image_new_from_stock(GAIM_STOCK_DIALOG_COOL, GTK_ICON_SIZE_DIALOG); |
|
4695
4bdd9a5fd026
[gaim-migrate @ 5006]
Christian Hammond <chipx86@chipx86.com>
parents:
4687
diff
changeset
|
579 |
|
4bdd9a5fd026
[gaim-migrate @ 5006]
Christian Hammond <chipx86@chipx86.com>
parents:
4687
diff
changeset
|
580 gtkblist = GAIM_GTK_BLIST(gaim_get_blist()); |
|
4bdd9a5fd026
[gaim-migrate @ 5006]
Christian Hammond <chipx86@chipx86.com>
parents:
4687
diff
changeset
|
581 |
| 3767 | 582 label = gtk_label_new(NULL); |
| 1 | 583 if (ee == 0) |
|
6465
fb64cc87bc96
[gaim-migrate @ 6974]
Christian Hammond <chipx86@chipx86.com>
parents:
6431
diff
changeset
|
584 gtk_label_set_markup(GTK_LABEL(label), |
| 3767 | 585 "<span weight=\"bold\" size=\"large\" foreground=\"purple\">Amazing! Simply Amazing!</span>"); |
| 1 | 586 else if (ee == 1) |
|
6465
fb64cc87bc96
[gaim-migrate @ 6974]
Christian Hammond <chipx86@chipx86.com>
parents:
6431
diff
changeset
|
587 gtk_label_set_markup(GTK_LABEL(label), |
| 3767 | 588 "<span weight=\"bold\" size=\"large\" foreground=\"#1f6bad\">Pimpin\' Penguin Style! *Waddle Waddle*</span>"); |
|
338
9d258a0aa560
[gaim-migrate @ 348]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
337
diff
changeset
|
589 else if (ee == 2) |
|
6465
fb64cc87bc96
[gaim-migrate @ 6974]
Christian Hammond <chipx86@chipx86.com>
parents:
6431
diff
changeset
|
590 gtk_label_set_markup(GTK_LABEL(label), |
| 3767 | 591 "<span weight=\"bold\" size=\"large\" foreground=\"blue\">You should be me. I'm so cute!</span>"); |
| 2472 | 592 else if (ee == 3) |
|
6465
fb64cc87bc96
[gaim-migrate @ 6974]
Christian Hammond <chipx86@chipx86.com>
parents:
6431
diff
changeset
|
593 gtk_label_set_markup(GTK_LABEL(label), |
| 3767 | 594 "<span weight=\"bold\" size=\"large\" foreground=\"orange\">Now that's what I like!</span>"); |
| 2993 | 595 else if (ee == 4) |
|
6465
fb64cc87bc96
[gaim-migrate @ 6974]
Christian Hammond <chipx86@chipx86.com>
parents:
6431
diff
changeset
|
596 gtk_label_set_markup(GTK_LABEL(label), |
| 3767 | 597 "<span weight=\"bold\" size=\"large\" foreground=\"brown\">Ahh, and excellent choice!</span>"); |
| 3043 | 598 else if (ee == 5) |
|
6465
fb64cc87bc96
[gaim-migrate @ 6974]
Christian Hammond <chipx86@chipx86.com>
parents:
6431
diff
changeset
|
599 gtk_label_set_markup(GTK_LABEL(label), |
| 3767 | 600 "<span weight=\"bold\" size=\"large\" foreground=\"#009900\">Everytime you click my name, an angel gets its wings.</span>"); |
| 3152 | 601 else if (ee == 6) |
|
6465
fb64cc87bc96
[gaim-migrate @ 6974]
Christian Hammond <chipx86@chipx86.com>
parents:
6431
diff
changeset
|
602 gtk_label_set_markup(GTK_LABEL(label), |
| 3767 | 603 "<span weight=\"bold\" size=\"large\" foreground=\"red\">This sunflower seed taste like pizza.</span>"); |
| 3508 | 604 else if (ee == 7) |
|
6465
fb64cc87bc96
[gaim-migrate @ 6974]
Christian Hammond <chipx86@chipx86.com>
parents:
6431
diff
changeset
|
605 gtk_label_set_markup(GTK_LABEL(label), |
| 3767 | 606 "<span weight=\"bold\" size=\"large\" foreground=\"#6364B1\">Hey! I was in that tumbleweed!</span>"); |
| 3508 | 607 else |
|
6465
fb64cc87bc96
[gaim-migrate @ 6974]
Christian Hammond <chipx86@chipx86.com>
parents:
6431
diff
changeset
|
608 gtk_label_set_markup(GTK_LABEL(label), |
| 3767 | 609 "<span weight=\"bold\" size=\"large\" foreground=\"gray\">I'm not anything.</span>"); |
|
6465
fb64cc87bc96
[gaim-migrate @ 6974]
Christian Hammond <chipx86@chipx86.com>
parents:
6431
diff
changeset
|
610 |
| 5092 | 611 window = gtk_dialog_new_with_buttons("", GTK_WINDOW(gtkblist->window), 0, GTK_STOCK_OK, GTK_RESPONSE_OK, NULL); |
| 3767 | 612 gtk_dialog_set_default_response (GTK_DIALOG(window), GTK_RESPONSE_OK); |
| 613 g_signal_connect(G_OBJECT(window), "response", G_CALLBACK(gtk_widget_destroy), NULL); | |
|
6465
fb64cc87bc96
[gaim-migrate @ 6974]
Christian Hammond <chipx86@chipx86.com>
parents:
6431
diff
changeset
|
614 |
| 3767 | 615 gtk_container_set_border_width (GTK_CONTAINER(window), 6); |
| 616 gtk_window_set_resizable(GTK_WINDOW(window), FALSE); | |
| 617 gtk_dialog_set_has_separator(GTK_DIALOG(window), FALSE); | |
| 618 gtk_box_set_spacing(GTK_BOX(GTK_DIALOG(window)->vbox), 12); | |
| 619 gtk_container_set_border_width (GTK_CONTAINER(GTK_DIALOG(window)->vbox), 6); | |
| 620 | |
| 621 hbox = gtk_hbox_new(FALSE, 12); | |
| 622 gtk_container_add(GTK_CONTAINER(GTK_DIALOG(window)->vbox), hbox); | |
| 623 gtk_box_pack_start(GTK_BOX(hbox), img, FALSE, FALSE, 0); | |
|
6465
fb64cc87bc96
[gaim-migrate @ 6974]
Christian Hammond <chipx86@chipx86.com>
parents:
6431
diff
changeset
|
624 |
| 3767 | 625 gtk_label_set_line_wrap(GTK_LABEL(label), TRUE); |
| 626 gtk_misc_set_alignment(GTK_MISC(label), 0, 0); | |
| 627 gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 0); | |
| 4635 | 628 |
| 3767 | 629 gtk_widget_show_all(window); |
| 1 | 630 } |
| 631 | |
|
6371
8f94cce8faa5
[gaim-migrate @ 6876]
Christian Hammond <chipx86@chipx86.com>
parents:
6352
diff
changeset
|
632 static void |
|
8f94cce8faa5
[gaim-migrate @ 6876]
Christian Hammond <chipx86@chipx86.com>
parents:
6352
diff
changeset
|
633 show_info_select_account(GObject *w, GaimAccount *account, |
|
8f94cce8faa5
[gaim-migrate @ 6876]
Christian Hammond <chipx86@chipx86.com>
parents:
6352
diff
changeset
|
634 struct getuserinfo *info) |
| 3816 | 635 { |
|
5880
1b85ff65be57
[gaim-migrate @ 6312]
Christian Hammond <chipx86@chipx86.com>
parents:
5872
diff
changeset
|
636 info->gc = gaim_account_get_connection(account); |
| 3816 | 637 } |
| 638 | |
| 4614 | 639 static void dialog_set_ok_sensitive(GtkWidget *entry, GtkWidget *dlg) { |
| 4613 | 640 const char *txt = gtk_entry_get_text(GTK_ENTRY(entry)); |
| 4614 | 641 gtk_dialog_set_response_sensitive(GTK_DIALOG(dlg), GTK_RESPONSE_OK, |
| 4613 | 642 (*txt != '\0')); |
| 643 } | |
| 644 | |
|
935
5e6ca3dd4d02
[gaim-migrate @ 945]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
934
diff
changeset
|
645 void show_im_dialog() |
| 1 | 646 { |
| 3802 | 647 GtkWidget *hbox, *vbox; |
|
2372
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
648 GtkWidget *label; |
|
5880
1b85ff65be57
[gaim-migrate @ 6312]
Christian Hammond <chipx86@chipx86.com>
parents:
5872
diff
changeset
|
649 GtkWidget *table; |
|
4695
4bdd9a5fd026
[gaim-migrate @ 5006]
Christian Hammond <chipx86@chipx86.com>
parents:
4687
diff
changeset
|
650 struct gaim_gtk_buddy_list *gtkblist; |
| 5024 | 651 GtkWidget *img = gtk_image_new_from_stock(GAIM_STOCK_DIALOG_QUESTION, GTK_ICON_SIZE_DIALOG); |
| 3816 | 652 struct getuserinfo *info = NULL; |
|
2372
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
653 |
|
4695
4bdd9a5fd026
[gaim-migrate @ 5006]
Christian Hammond <chipx86@chipx86.com>
parents:
4687
diff
changeset
|
654 gtkblist = GAIM_GTK_BLIST(gaim_get_blist()); |
|
4bdd9a5fd026
[gaim-migrate @ 5006]
Christian Hammond <chipx86@chipx86.com>
parents:
4687
diff
changeset
|
655 |
|
2372
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
656 if (!imdialog) { |
| 3816 | 657 info = g_new0(struct getuserinfo, 1); |
|
5563
9eb5b13fd412
[gaim-migrate @ 5965]
Christian Hammond <chipx86@chipx86.com>
parents:
5560
diff
changeset
|
658 info->gc = gaim_connections_get_all()->data; |
| 5092 | 659 imdialog = gtk_dialog_new_with_buttons(_("New Message"), gtkblist ? GTK_WINDOW(gtkblist->window) : NULL, 0, |
| 3802 | 660 GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL, GTK_STOCK_OK, GTK_RESPONSE_OK, NULL); |
| 661 gtk_dialog_set_default_response (GTK_DIALOG(imdialog), GTK_RESPONSE_OK); | |
| 662 gtk_container_set_border_width (GTK_CONTAINER(imdialog), 6); | |
| 663 gtk_window_set_resizable(GTK_WINDOW(imdialog), FALSE); | |
| 664 gtk_dialog_set_has_separator(GTK_DIALOG(imdialog), FALSE); | |
| 665 gtk_box_set_spacing(GTK_BOX(GTK_DIALOG(imdialog)->vbox), 12); | |
| 666 gtk_container_set_border_width (GTK_CONTAINER(GTK_DIALOG(imdialog)->vbox), 6); | |
| 4613 | 667 gtk_dialog_set_response_sensitive(GTK_DIALOG(imdialog), GTK_RESPONSE_OK, FALSE); |
| 668 | |
| 3802 | 669 hbox = gtk_hbox_new(FALSE, 12); |
| 670 gtk_container_add(GTK_CONTAINER(GTK_DIALOG(imdialog)->vbox), hbox); | |
| 671 gtk_box_pack_start(GTK_BOX(hbox), img, FALSE, FALSE, 0); | |
| 672 gtk_misc_set_alignment(GTK_MISC(img), 0, 0); | |
| 673 | |
| 674 vbox = gtk_vbox_new(FALSE, 0); | |
| 675 gtk_container_add(GTK_CONTAINER(hbox), vbox); | |
| 4613 | 676 |
| 3802 | 677 label = gtk_label_new(_("Please enter the screenname of the person you would like to IM.\n")); |
| 3825 | 678 gtk_widget_set_size_request(GTK_WIDGET(label), 350, -1); |
| 3802 | 679 gtk_label_set_line_wrap(GTK_LABEL(label), TRUE); |
| 680 gtk_misc_set_alignment(GTK_MISC(label), 0, 0); | |
| 681 gtk_box_pack_start(GTK_BOX(vbox), label, FALSE, FALSE, 0); | |
| 4613 | 682 |
| 3802 | 683 hbox = gtk_hbox_new(FALSE, 6); |
| 684 gtk_container_add(GTK_CONTAINER(vbox), hbox); | |
| 4613 | 685 |
| 3816 | 686 table = gtk_table_new(2, 2, FALSE); |
| 687 gtk_table_set_row_spacings(GTK_TABLE(table), 6); | |
| 688 gtk_table_set_col_spacings(GTK_TABLE(table), 6); | |
| 689 gtk_container_set_border_width(GTK_CONTAINER(table), 12); | |
| 690 gtk_box_pack_start(GTK_BOX(vbox), table, FALSE, FALSE, 0); | |
| 4613 | 691 |
| 3802 | 692 label = gtk_label_new(NULL); |
| 3816 | 693 gtk_label_set_markup_with_mnemonic(GTK_LABEL(label), _("_Screenname:")); |
| 3823 | 694 gtk_misc_set_alignment(GTK_MISC(label), 0, 0); |
| 3816 | 695 gtk_table_attach_defaults(GTK_TABLE(table), label, 0, 1, 0, 1); |
| 696 | |
| 697 info->entry = gtk_entry_new(); | |
| 698 gtk_table_attach_defaults(GTK_TABLE(table), info->entry, 1, 2, 0, 1); | |
| 699 gtk_entry_set_activates_default (GTK_ENTRY(info->entry), TRUE); | |
| 700 gtk_label_set_mnemonic_widget(GTK_LABEL(label), GTK_WIDGET(info->entry)); | |
| 4613 | 701 g_signal_connect(G_OBJECT(info->entry), "changed", |
| 4614 | 702 G_CALLBACK(dialog_set_ok_sensitive), imdialog); |
| 3816 | 703 |
|
5563
9eb5b13fd412
[gaim-migrate @ 5965]
Christian Hammond <chipx86@chipx86.com>
parents:
5560
diff
changeset
|
704 if (gaim_connections_get_all()->next) { |
| 3816 | 705 |
| 706 label = gtk_label_new(NULL); | |
| 707 gtk_table_attach_defaults(GTK_TABLE(table), label, 0, 1, 1, 2); | |
| 708 gtk_label_set_markup_with_mnemonic(GTK_LABEL(label), _("_Account:")); | |
| 709 gtk_misc_set_alignment(GTK_MISC(label), 0, 0); | |
| 4613 | 710 |
|
5880
1b85ff65be57
[gaim-migrate @ 6312]
Christian Hammond <chipx86@chipx86.com>
parents:
5872
diff
changeset
|
711 info->account = gaim_gtk_account_option_menu_new(NULL, FALSE, |
|
6646
b89d98f0bf79
[gaim-migrate @ 7171]
Christian Hammond <chipx86@chipx86.com>
parents:
6640
diff
changeset
|
712 G_CALLBACK(show_info_select_account), NULL, info); |
|
5880
1b85ff65be57
[gaim-migrate @ 6312]
Christian Hammond <chipx86@chipx86.com>
parents:
5872
diff
changeset
|
713 |
| 3816 | 714 gtk_table_attach_defaults(GTK_TABLE(table), info->account, 1, 2, 1, 2); |
| 715 gtk_label_set_mnemonic_widget(GTK_LABEL(label), GTK_WIDGET(info->account)); | |
| 716 } | |
| 4613 | 717 |
| 3816 | 718 g_signal_connect(G_OBJECT(imdialog), "response", G_CALLBACK(do_im), info); |
|
2372
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
719 } |
| 4613 | 720 |
|
2372
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
721 gtk_widget_show_all(imdialog); |
| 3816 | 722 if (info) |
| 723 gtk_widget_grab_focus(GTK_WIDGET(info->entry)); | |
| 3197 | 724 } |
| 725 | |
|
935
5e6ca3dd4d02
[gaim-migrate @ 945]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
934
diff
changeset
|
726 void show_info_dialog() |
|
5e6ca3dd4d02
[gaim-migrate @ 945]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
934
diff
changeset
|
727 { |
| 3802 | 728 GtkWidget *window, *hbox, *vbox; |
|
2372
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
729 GtkWidget *label; |
| 5024 | 730 GtkWidget *img = gtk_image_new_from_stock(GAIM_STOCK_DIALOG_QUESTION, GTK_ICON_SIZE_DIALOG); |
|
5880
1b85ff65be57
[gaim-migrate @ 6312]
Christian Hammond <chipx86@chipx86.com>
parents:
5872
diff
changeset
|
731 GtkWidget *table; |
| 3197 | 732 struct getuserinfo *info = g_new0(struct getuserinfo, 1); |
|
4695
4bdd9a5fd026
[gaim-migrate @ 5006]
Christian Hammond <chipx86@chipx86.com>
parents:
4687
diff
changeset
|
733 struct gaim_gtk_buddy_list *gtkblist; |
| 3802 | 734 |
|
4695
4bdd9a5fd026
[gaim-migrate @ 5006]
Christian Hammond <chipx86@chipx86.com>
parents:
4687
diff
changeset
|
735 gtkblist = GAIM_GTK_BLIST(gaim_get_blist()); |
|
4bdd9a5fd026
[gaim-migrate @ 5006]
Christian Hammond <chipx86@chipx86.com>
parents:
4687
diff
changeset
|
736 |
|
5563
9eb5b13fd412
[gaim-migrate @ 5965]
Christian Hammond <chipx86@chipx86.com>
parents:
5560
diff
changeset
|
737 info->gc = gaim_connections_get_all()->data; |
| 3197 | 738 |
|
6465
fb64cc87bc96
[gaim-migrate @ 6974]
Christian Hammond <chipx86@chipx86.com>
parents:
6431
diff
changeset
|
739 window = gtk_dialog_new_with_buttons(_("Get User Info"), gtkblist->window ? GTK_WINDOW(gtkblist->window) : NULL, 0, |
| 3802 | 740 GTK_STOCK_CANCEL, GTK_RESPONSE_CANCEL, GTK_STOCK_OK, GTK_RESPONSE_OK, NULL); |
| 741 gtk_dialog_set_default_response (GTK_DIALOG(window), GTK_RESPONSE_OK); | |
| 742 gtk_container_set_border_width (GTK_CONTAINER(window), 6); | |
| 743 gtk_window_set_resizable(GTK_WINDOW(window), FALSE); | |
| 744 gtk_dialog_set_has_separator(GTK_DIALOG(window), FALSE); | |
| 745 gtk_box_set_spacing(GTK_BOX(GTK_DIALOG(window)->vbox), 12); | |
| 746 gtk_container_set_border_width (GTK_CONTAINER(GTK_DIALOG(window)->vbox), 6); | |
| 4614 | 747 |
| 3802 | 748 hbox = gtk_hbox_new(FALSE, 12); |
| 749 gtk_container_add(GTK_CONTAINER(GTK_DIALOG(window)->vbox), hbox); | |
| 750 gtk_box_pack_start(GTK_BOX(hbox), img, FALSE, FALSE, 0); | |
| 751 gtk_misc_set_alignment(GTK_MISC(img), 0, 0); | |
| 4614 | 752 gtk_dialog_set_response_sensitive(GTK_DIALOG(window), GTK_RESPONSE_OK, |
| 753 FALSE); | |
| 754 | |
| 3802 | 755 vbox = gtk_vbox_new(FALSE, 0); |
| 756 gtk_container_add(GTK_CONTAINER(hbox), vbox); | |
|
6465
fb64cc87bc96
[gaim-migrate @ 6974]
Christian Hammond <chipx86@chipx86.com>
parents:
6431
diff
changeset
|
757 |
| 3802 | 758 label = gtk_label_new(_("Please enter the screenname of the person whose info you would like to view.\n")); |
| 759 gtk_label_set_line_wrap(GTK_LABEL(label), TRUE); | |
| 760 gtk_misc_set_alignment(GTK_MISC(label), 0, 0); | |
| 761 gtk_box_pack_start(GTK_BOX(vbox), label, FALSE, FALSE, 0); | |
|
6465
fb64cc87bc96
[gaim-migrate @ 6974]
Christian Hammond <chipx86@chipx86.com>
parents:
6431
diff
changeset
|
762 |
| 3197 | 763 table = gtk_table_new(2, 2, FALSE); |
| 3802 | 764 gtk_table_set_row_spacings(GTK_TABLE(table), 6); |
| 765 gtk_table_set_col_spacings(GTK_TABLE(table), 6); | |
| 766 gtk_container_set_border_width(GTK_CONTAINER(table), 12); | |
| 767 gtk_box_pack_start(GTK_BOX(vbox), table, FALSE, FALSE, 0); | |
|
6465
fb64cc87bc96
[gaim-migrate @ 6974]
Christian Hammond <chipx86@chipx86.com>
parents:
6431
diff
changeset
|
768 |
| 3802 | 769 label = gtk_label_new(NULL); |
| 770 gtk_label_set_markup_with_mnemonic(GTK_LABEL(label), _("_Screenname:")); | |
| 3822 | 771 gtk_misc_set_alignment(GTK_MISC(img), 0, 0); |
| 3197 | 772 gtk_table_attach_defaults(GTK_TABLE(table), label, 0, 1, 0, 1); |
| 773 | |
| 774 info->entry = gtk_entry_new(); | |
| 775 gtk_table_attach_defaults(GTK_TABLE(table), info->entry, 1, 2, 0, 1); | |
| 3802 | 776 gtk_entry_set_activates_default (GTK_ENTRY(info->entry), TRUE); |
| 777 gtk_label_set_mnemonic_widget(GTK_LABEL(label), GTK_WIDGET(info->entry)); | |
| 4614 | 778 |
| 779 g_signal_connect(G_OBJECT(info->entry), "changed", | |
| 780 G_CALLBACK(dialog_set_ok_sensitive), window); | |
|
6465
fb64cc87bc96
[gaim-migrate @ 6974]
Christian Hammond <chipx86@chipx86.com>
parents:
6431
diff
changeset
|
781 |
|
5563
9eb5b13fd412
[gaim-migrate @ 5965]
Christian Hammond <chipx86@chipx86.com>
parents:
5560
diff
changeset
|
782 if (gaim_connections_get_all()->next) { |
| 3197 | 783 |
| 3802 | 784 label = gtk_label_new(NULL); |
| 3197 | 785 gtk_table_attach_defaults(GTK_TABLE(table), label, 0, 1, 1, 2); |
| 3802 | 786 gtk_label_set_markup_with_mnemonic(GTK_LABEL(label), _("_Account:")); |
| 787 gtk_misc_set_alignment(GTK_MISC(label), 0, 0); | |
| 1225 | 788 |
|
5880
1b85ff65be57
[gaim-migrate @ 6312]
Christian Hammond <chipx86@chipx86.com>
parents:
5872
diff
changeset
|
789 info->account = gaim_gtk_account_option_menu_new(NULL, FALSE, |
|
6646
b89d98f0bf79
[gaim-migrate @ 7171]
Christian Hammond <chipx86@chipx86.com>
parents:
6640
diff
changeset
|
790 G_CALLBACK(show_info_select_account), NULL, info); |
|
5880
1b85ff65be57
[gaim-migrate @ 6312]
Christian Hammond <chipx86@chipx86.com>
parents:
5872
diff
changeset
|
791 |
| 3197 | 792 gtk_table_attach_defaults(GTK_TABLE(table), info->account, 1, 2, 1, 2); |
| 3802 | 793 gtk_label_set_mnemonic_widget(GTK_LABEL(label), GTK_WIDGET(info->account)); |
|
2372
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
794 } |
| 3197 | 795 |
| 3802 | 796 g_signal_connect(G_OBJECT(window), "response", G_CALLBACK(do_info), info); |
|
6465
fb64cc87bc96
[gaim-migrate @ 6974]
Christian Hammond <chipx86@chipx86.com>
parents:
6431
diff
changeset
|
797 |
|
fb64cc87bc96
[gaim-migrate @ 6974]
Christian Hammond <chipx86@chipx86.com>
parents:
6431
diff
changeset
|
798 |
| 3802 | 799 gtk_widget_show_all(window); |
| 800 if (info->entry) | |
| 801 gtk_widget_grab_focus(GTK_WIDGET(info->entry)); | |
|
935
5e6ca3dd4d02
[gaim-migrate @ 945]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
934
diff
changeset
|
802 } |
|
5e6ca3dd4d02
[gaim-migrate @ 945]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
934
diff
changeset
|
803 |
| 1 | 804 |
|
6330
def96a62cd0d
[gaim-migrate @ 6829]
Christian Hammond <chipx86@chipx86.com>
parents:
6329
diff
changeset
|
805 static void |
|
7060
9946001989a3
[gaim-migrate @ 7623]
Christian Hammond <chipx86@chipx86.com>
parents:
7057
diff
changeset
|
806 free_dialog(GtkWidget *w, void *data) |
| 1 | 807 { |
|
7060
9946001989a3
[gaim-migrate @ 7623]
Christian Hammond <chipx86@chipx86.com>
parents:
7057
diff
changeset
|
808 g_free(data); |
| 5234 | 809 } |
| 810 | |
| 1 | 811 /*------------------------------------------------------------------------*/ |
| 812 /* The dialog for SET INFO / SET DIR INFO */ | |
| 813 /*------------------------------------------------------------------------*/ | |
| 814 | |
| 815 void do_save_info(GtkWidget *widget, struct set_info_dlg *b) | |
| 816 { | |
| 817 gchar *junk; | |
|
5563
9eb5b13fd412
[gaim-migrate @ 5965]
Christian Hammond <chipx86@chipx86.com>
parents:
5560
diff
changeset
|
818 GaimConnection *gc; |
| 1 | 819 |
| 4119 | 820 junk = gtk_text_view_get_text(GTK_TEXT_VIEW(b->text), FALSE); |
| 1 | 821 |
| 4491 | 822 if (b->account) { |
| 6019 | 823 gaim_account_set_user_info(b->account, junk); |
| 4491 | 824 gc = b->account->gc; |
|
2372
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
825 |
| 1292 | 826 if (gc) |
| 5954 | 827 serv_set_info(gc, gaim_account_get_user_info(b->account)); |
|
122
521db4bf5f28
[gaim-migrate @ 132]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
84
diff
changeset
|
828 } |
| 25 | 829 g_free(junk); |
| 1 | 830 destroy_dialog(NULL, b->window); |
| 831 g_free(b); | |
| 832 } | |
| 833 | |
| 834 void do_set_dir(GtkWidget *widget, struct set_dir_dlg *b) | |
| 835 { | |
| 3466 | 836 const char *first = gtk_entry_get_text(GTK_ENTRY(b->first)); |
|
2372
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
837 int web = GTK_TOGGLE_BUTTON(b->web)->active; |
| 3466 | 838 const char *middle = gtk_entry_get_text(GTK_ENTRY(b->middle)); |
| 839 const char *last = gtk_entry_get_text(GTK_ENTRY(b->last)); | |
| 840 const char *maiden = gtk_entry_get_text(GTK_ENTRY(b->maiden)); | |
| 841 const char *city = gtk_entry_get_text(GTK_ENTRY(b->city)); | |
| 842 const char *state = gtk_entry_get_text(GTK_ENTRY(b->state)); | |
| 843 const char *country = gtk_entry_get_text(GTK_ENTRY(b->country)); | |
| 1 | 844 |
|
1499
de0b946e86a4
[gaim-migrate @ 1509]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1488
diff
changeset
|
845 serv_set_dir(b->gc, first, middle, last, maiden, city, state, country, web); |
| 1 | 846 |
|
2372
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
847 destroy_dialog(NULL, b->window); |
| 1 | 848 g_free(b); |
| 849 } | |
| 850 | |
|
5563
9eb5b13fd412
[gaim-migrate @ 5965]
Christian Hammond <chipx86@chipx86.com>
parents:
5560
diff
changeset
|
851 void show_set_dir(GaimConnection *gc) |
| 1 | 852 { |
|
5563
9eb5b13fd412
[gaim-migrate @ 5965]
Christian Hammond <chipx86@chipx86.com>
parents:
5560
diff
changeset
|
853 GaimAccount *account; |
| 1 | 854 GtkWidget *label; |
| 855 GtkWidget *bot; | |
| 484 | 856 GtkWidget *vbox; |
| 857 GtkWidget *hbox; | |
| 858 GtkWidget *frame; | |
| 859 GtkWidget *fbox; | |
|
1499
de0b946e86a4
[gaim-migrate @ 1509]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1488
diff
changeset
|
860 char buf[256]; |
| 1 | 861 |
| 862 struct set_dir_dlg *b = g_new0(struct set_dir_dlg, 1); | |
|
5563
9eb5b13fd412
[gaim-migrate @ 5965]
Christian Hammond <chipx86@chipx86.com>
parents:
5560
diff
changeset
|
863 |
|
1499
de0b946e86a4
[gaim-migrate @ 1509]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1488
diff
changeset
|
864 b->gc = gc; |
| 1 | 865 |
|
5563
9eb5b13fd412
[gaim-migrate @ 5965]
Christian Hammond <chipx86@chipx86.com>
parents:
5560
diff
changeset
|
866 account = gaim_connection_get_account(gc); |
|
9eb5b13fd412
[gaim-migrate @ 5965]
Christian Hammond <chipx86@chipx86.com>
parents:
5560
diff
changeset
|
867 |
|
2725
f3c094e78609
[gaim-migrate @ 2738]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2681
diff
changeset
|
868 GAIM_DIALOG(b->window); |
|
1499
de0b946e86a4
[gaim-migrate @ 1509]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1488
diff
changeset
|
869 dialogwindows = g_list_prepend(dialogwindows, b->window); |
| 4074 | 870 gtk_window_set_role(GTK_WINDOW(b->window), "set_dir"); |
| 4635 | 871 gtk_window_set_resizable(GTK_WINDOW(b->window), TRUE); |
| 4703 | 872 gtk_window_set_title(GTK_WINDOW(b->window), _("Set Directory Info")); |
|
5314
1f901484599d
[gaim-migrate @ 5686]
Christian Hammond <chipx86@chipx86.com>
parents:
5294
diff
changeset
|
873 g_signal_connect(G_OBJECT(b->window), "destroy", G_CALLBACK(destroy_dialog), b->window); |
|
2372
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
874 gtk_widget_realize(b->window); |
|
1499
de0b946e86a4
[gaim-migrate @ 1509]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1488
diff
changeset
|
875 |
|
de0b946e86a4
[gaim-migrate @ 1509]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1488
diff
changeset
|
876 fbox = gtk_vbox_new(FALSE, 5); |
|
de0b946e86a4
[gaim-migrate @ 1509]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1488
diff
changeset
|
877 gtk_container_add(GTK_CONTAINER(b->window), fbox); |
|
de0b946e86a4
[gaim-migrate @ 1509]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1488
diff
changeset
|
878 gtk_widget_show(fbox); |
|
de0b946e86a4
[gaim-migrate @ 1509]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1488
diff
changeset
|
879 |
|
de0b946e86a4
[gaim-migrate @ 1509]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1488
diff
changeset
|
880 frame = gtk_frame_new(_("Directory Info")); |
|
2372
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
881 gtk_container_set_border_width(GTK_CONTAINER(fbox), 5); |
|
1499
de0b946e86a4
[gaim-migrate @ 1509]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1488
diff
changeset
|
882 gtk_box_pack_start(GTK_BOX(fbox), frame, FALSE, FALSE, 0); |
|
de0b946e86a4
[gaim-migrate @ 1509]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1488
diff
changeset
|
883 gtk_widget_show(frame); |
| 484 | 884 |
| 885 vbox = gtk_vbox_new(FALSE, 5); | |
|
2372
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
886 gtk_container_set_border_width(GTK_CONTAINER(vbox), 5); |
|
1499
de0b946e86a4
[gaim-migrate @ 1509]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1488
diff
changeset
|
887 gtk_container_add(GTK_CONTAINER(frame), vbox); |
|
de0b946e86a4
[gaim-migrate @ 1509]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1488
diff
changeset
|
888 gtk_widget_show(vbox); |
|
de0b946e86a4
[gaim-migrate @ 1509]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1488
diff
changeset
|
889 |
|
5563
9eb5b13fd412
[gaim-migrate @ 5965]
Christian Hammond <chipx86@chipx86.com>
parents:
5560
diff
changeset
|
890 g_snprintf(buf, sizeof(buf), _("Setting Dir Info for %s:"), |
|
9eb5b13fd412
[gaim-migrate @ 5965]
Christian Hammond <chipx86@chipx86.com>
parents:
5560
diff
changeset
|
891 gaim_account_get_username(account)); |
|
1499
de0b946e86a4
[gaim-migrate @ 1509]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1488
diff
changeset
|
892 label = gtk_label_new(buf); |
|
de0b946e86a4
[gaim-migrate @ 1509]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1488
diff
changeset
|
893 gtk_box_pack_start(GTK_BOX(vbox), label, FALSE, FALSE, 5); |
|
de0b946e86a4
[gaim-migrate @ 1509]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1488
diff
changeset
|
894 gtk_widget_show(label); |
| 1 | 895 |
| 896 b->first = gtk_entry_new(); | |
| 897 b->middle = gtk_entry_new(); | |
| 898 b->last = gtk_entry_new(); | |
| 899 b->maiden = gtk_entry_new(); | |
| 900 b->city = gtk_entry_new(); | |
| 901 b->state = gtk_entry_new(); | |
| 902 b->country = gtk_entry_new(); | |
|
350
fd3cc0a28d5d
[gaim-migrate @ 360]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
349
diff
changeset
|
903 b->web = gtk_check_button_new_with_label(_("Allow Web Searches To Find Your Info")); |
| 484 | 904 |
|
2372
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
905 /* Line 1 */ |
|
350
fd3cc0a28d5d
[gaim-migrate @ 360]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
349
diff
changeset
|
906 label = gtk_label_new(_("First Name")); |
| 1 | 907 gtk_widget_show(label); |
|
2372
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
908 |
| 484 | 909 hbox = gtk_hbox_new(FALSE, 5); |
| 1185 | 910 gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 0); |
| 911 gtk_box_pack_end(GTK_BOX(hbox), b->first, FALSE, FALSE, 0); | |
| 912 | |
| 913 gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 0); | |
| 484 | 914 gtk_widget_show(hbox); |
| 915 | |
| 916 /* Line 2 */ | |
|
2372
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
917 label = gtk_label_new(_("Middle Name")); |
|
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
918 gtk_widget_show(label); |
|
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
919 |
| 484 | 920 hbox = gtk_hbox_new(FALSE, 5); |
| 1185 | 921 gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 0); |
| 922 gtk_box_pack_end(GTK_BOX(hbox), b->middle, FALSE, FALSE, 0); | |
| 923 | |
| 924 gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 0); | |
| 484 | 925 gtk_widget_show(hbox); |
| 926 | |
| 927 | |
| 928 /* Line 3 */ | |
|
2372
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
929 label = gtk_label_new(_("Last Name")); |
|
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
930 gtk_widget_show(label); |
|
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
931 |
| 484 | 932 hbox = gtk_hbox_new(FALSE, 5); |
| 1185 | 933 gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 0); |
| 934 gtk_box_pack_end(GTK_BOX(hbox), b->last, FALSE, FALSE, 0); | |
| 935 | |
| 936 gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 0); | |
| 484 | 937 gtk_widget_show(hbox); |
| 938 | |
| 939 /* Line 4 */ | |
|
2372
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
940 label = gtk_label_new(_("Maiden Name")); |
|
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
941 gtk_widget_show(label); |
|
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
942 |
| 484 | 943 hbox = gtk_hbox_new(FALSE, 5); |
| 1185 | 944 gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 0); |
| 945 gtk_box_pack_end(GTK_BOX(hbox), b->maiden, FALSE, FALSE, 0); | |
| 946 | |
| 947 gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 0); | |
| 484 | 948 gtk_widget_show(hbox); |
| 949 | |
| 950 /* Line 5 */ | |
|
2372
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
951 label = gtk_label_new(_("City")); |
|
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
952 gtk_widget_show(label); |
|
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
953 |
| 484 | 954 hbox = gtk_hbox_new(FALSE, 5); |
| 1185 | 955 gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 0); |
| 956 gtk_box_pack_end(GTK_BOX(hbox), b->city, FALSE, FALSE, 0); | |
| 957 | |
| 958 gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 0); | |
| 484 | 959 gtk_widget_show(hbox); |
| 960 | |
| 961 /* Line 6 */ | |
| 1185 | 962 label = gtk_label_new(_("State")); |
| 1 | 963 gtk_widget_show(label); |
|
2372
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
964 |
| 484 | 965 hbox = gtk_hbox_new(FALSE, 5); |
| 1185 | 966 gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 0); |
| 967 gtk_box_pack_end(GTK_BOX(hbox), b->state, FALSE, FALSE, 0); | |
| 968 | |
| 969 gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 0); | |
| 484 | 970 gtk_widget_show(hbox); |
| 971 | |
| 972 /* Line 7 */ | |
|
2372
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
973 label = gtk_label_new(_("Country")); |
|
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
974 gtk_widget_show(label); |
|
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
975 |
| 484 | 976 hbox = gtk_hbox_new(FALSE, 5); |
| 1185 | 977 gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 0); |
| 978 gtk_box_pack_end(GTK_BOX(hbox), b->country, FALSE, FALSE, 0); | |
| 979 | |
| 980 gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 0); | |
| 484 | 981 gtk_widget_show(hbox); |
| 982 | |
| 983 /* Line 8 */ | |
| 984 | |
| 985 hbox = gtk_hbox_new(FALSE, 5); | |
| 1185 | 986 gtk_box_pack_start(GTK_BOX(hbox), b->web, TRUE, TRUE, 0); |
| 484 | 987 gtk_widget_show(hbox); |
| 1185 | 988 gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 0); |
| 484 | 989 |
|
2372
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
990 gtk_widget_show(b->first); |
|
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
991 gtk_widget_show(b->middle); |
|
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
992 gtk_widget_show(b->last); |
|
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
993 gtk_widget_show(b->maiden); |
|
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
994 gtk_widget_show(b->city); |
| 1 | 995 gtk_widget_show(b->state); |
| 996 gtk_widget_show(b->country); | |
| 997 gtk_widget_show(b->web); | |
| 998 | |
|
1499
de0b946e86a4
[gaim-migrate @ 1509]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1488
diff
changeset
|
999 /* And add the buttons */ |
|
de0b946e86a4
[gaim-migrate @ 1509]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1488
diff
changeset
|
1000 |
|
de0b946e86a4
[gaim-migrate @ 1509]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1488
diff
changeset
|
1001 bot = gtk_hbox_new(FALSE, 5); |
|
de0b946e86a4
[gaim-migrate @ 1509]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1488
diff
changeset
|
1002 gtk_box_pack_start(GTK_BOX(fbox), bot, FALSE, FALSE, 0); |
| 5024 | 1003 |
| 1004 b->save = gaim_pixbuf_button_from_stock(_("Save"), GTK_STOCK_SAVE, GAIM_BUTTON_HORIZONTAL); | |
| 4092 | 1005 gtk_box_pack_end(GTK_BOX(bot), b->save, FALSE, FALSE, 0); |
|
5314
1f901484599d
[gaim-migrate @ 5686]
Christian Hammond <chipx86@chipx86.com>
parents:
5294
diff
changeset
|
1006 g_signal_connect(G_OBJECT(b->save), "clicked", G_CALLBACK(do_set_dir), b); |
| 4092 | 1007 |
| 5024 | 1008 b->cancel = gaim_pixbuf_button_from_stock(_("Cancel"), GTK_STOCK_CANCEL, GAIM_BUTTON_HORIZONTAL); |
|
1499
de0b946e86a4
[gaim-migrate @ 1509]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1488
diff
changeset
|
1009 gtk_box_pack_end(GTK_BOX(bot), b->cancel, FALSE, FALSE, 0); |
|
5314
1f901484599d
[gaim-migrate @ 5686]
Christian Hammond <chipx86@chipx86.com>
parents:
5294
diff
changeset
|
1010 g_signal_connect(G_OBJECT(b->cancel), "clicked", G_CALLBACK(destroy_dialog), b->window); |
|
1499
de0b946e86a4
[gaim-migrate @ 1509]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1488
diff
changeset
|
1011 |
|
2372
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
1012 gtk_window_set_focus(GTK_WINDOW(b->window), b->first); |
|
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
1013 |
| 5024 | 1014 gtk_widget_show_all(b->window); |
| 1 | 1015 } |
| 1016 | |
| 149 | 1017 void do_change_password(GtkWidget *widget, struct passwddlg *b) |
| 1018 { | |
| 3466 | 1019 const gchar *orig, *new1, *new2; |
| 149 | 1020 |
| 1021 orig = gtk_entry_get_text(GTK_ENTRY(b->original)); | |
| 1022 new1 = gtk_entry_get_text(GTK_ENTRY(b->new1)); | |
| 1023 new2 = gtk_entry_get_text(GTK_ENTRY(b->new2)); | |
| 1024 | |
| 4793 | 1025 if (g_utf8_collate(new1, new2)) { |
|
5436
ad445074d239
[gaim-migrate @ 5818]
Christian Hammond <chipx86@chipx86.com>
parents:
5411
diff
changeset
|
1026 gaim_notify_error(NULL, NULL, |
|
ad445074d239
[gaim-migrate @ 5818]
Christian Hammond <chipx86@chipx86.com>
parents:
5411
diff
changeset
|
1027 _("New passwords do not match."), NULL); |
|
2372
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
1028 return; |
| 149 | 1029 } |
| 1030 | |
| 1031 if ((strlen(orig) < 1) || (strlen(new1) < 1) || (strlen(new2) < 1)) { | |
|
5436
ad445074d239
[gaim-migrate @ 5818]
Christian Hammond <chipx86@chipx86.com>
parents:
5411
diff
changeset
|
1032 gaim_notify_error(NULL, NULL, |
|
ad445074d239
[gaim-migrate @ 5818]
Christian Hammond <chipx86@chipx86.com>
parents:
5411
diff
changeset
|
1033 _("Fill out all fields completely."), NULL); |
| 149 | 1034 return; |
| 1035 } | |
| 1036 | |
|
978
563c409e26a1
[gaim-migrate @ 988]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
976
diff
changeset
|
1037 serv_change_passwd(b->gc, orig, new1); |
| 6105 | 1038 gaim_account_set_password(gaim_connection_get_account(b->gc), new1); |
|
2372
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
1039 |
| 149 | 1040 destroy_dialog(NULL, b->window); |
| 1041 g_free(b); | |
| 1042 } | |
| 1043 | |
|
5563
9eb5b13fd412
[gaim-migrate @ 5965]
Christian Hammond <chipx86@chipx86.com>
parents:
5560
diff
changeset
|
1044 void show_change_passwd(GaimConnection *gc) |
| 146 | 1045 { |
|
5563
9eb5b13fd412
[gaim-migrate @ 5965]
Christian Hammond <chipx86@chipx86.com>
parents:
5560
diff
changeset
|
1046 GaimAccount *account; |
| 146 | 1047 GtkWidget *hbox; |
| 1048 GtkWidget *label; | |
| 1049 GtkWidget *vbox; | |
| 475 | 1050 GtkWidget *fbox; |
| 1051 GtkWidget *frame; | |
|
1499
de0b946e86a4
[gaim-migrate @ 1509]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1488
diff
changeset
|
1052 char buf[256]; |
| 454 | 1053 |
| 146 | 1054 struct passwddlg *b = g_new0(struct passwddlg, 1); |
|
1499
de0b946e86a4
[gaim-migrate @ 1509]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1488
diff
changeset
|
1055 b->gc = gc; |
| 146 | 1056 |
|
5563
9eb5b13fd412
[gaim-migrate @ 5965]
Christian Hammond <chipx86@chipx86.com>
parents:
5560
diff
changeset
|
1057 account = gaim_connection_get_account(gc); |
|
9eb5b13fd412
[gaim-migrate @ 5965]
Christian Hammond <chipx86@chipx86.com>
parents:
5560
diff
changeset
|
1058 |
|
2725
f3c094e78609
[gaim-migrate @ 2738]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2681
diff
changeset
|
1059 GAIM_DIALOG(b->window); |
| 4635 | 1060 gtk_window_set_resizable(GTK_WINDOW(b->window), TRUE); |
| 4074 | 1061 gtk_window_set_role(GTK_WINDOW(b->window), "change_passwd"); |
| 4703 | 1062 gtk_window_set_title(GTK_WINDOW(b->window), _("Change Password")); |
|
5314
1f901484599d
[gaim-migrate @ 5686]
Christian Hammond <chipx86@chipx86.com>
parents:
5294
diff
changeset
|
1063 g_signal_connect(G_OBJECT(b->window), "destroy", G_CALLBACK(destroy_dialog), b->window); |
|
978
563c409e26a1
[gaim-migrate @ 988]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
976
diff
changeset
|
1064 gtk_widget_realize(b->window); |
| 146 | 1065 dialogwindows = g_list_prepend(dialogwindows, b->window); |
| 149 | 1066 |
|
978
563c409e26a1
[gaim-migrate @ 988]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
976
diff
changeset
|
1067 fbox = gtk_vbox_new(FALSE, 5); |
| 4635 | 1068 gtk_container_set_border_width(GTK_CONTAINER(fbox), 5); |
|
978
563c409e26a1
[gaim-migrate @ 988]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
976
diff
changeset
|
1069 gtk_container_add(GTK_CONTAINER(b->window), fbox); |
|
563c409e26a1
[gaim-migrate @ 988]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
976
diff
changeset
|
1070 |
| 475 | 1071 frame = gtk_frame_new(_("Change Password")); |
| 1185 | 1072 gtk_box_pack_start(GTK_BOX(fbox), frame, FALSE, FALSE, 0); |
|
978
563c409e26a1
[gaim-migrate @ 988]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
976
diff
changeset
|
1073 |
| 475 | 1074 vbox = gtk_vbox_new(FALSE, 5); |
| 4635 | 1075 gtk_container_set_border_width(GTK_CONTAINER(vbox), 5); |
|
978
563c409e26a1
[gaim-migrate @ 988]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
976
diff
changeset
|
1076 gtk_container_add(GTK_CONTAINER(frame), vbox); |
|
563c409e26a1
[gaim-migrate @ 988]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
976
diff
changeset
|
1077 |
|
5563
9eb5b13fd412
[gaim-migrate @ 5965]
Christian Hammond <chipx86@chipx86.com>
parents:
5560
diff
changeset
|
1078 g_snprintf(buf, sizeof(buf), _("Changing password for %s:"), gaim_account_get_username(account)); |
|
1499
de0b946e86a4
[gaim-migrate @ 1509]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1488
diff
changeset
|
1079 label = gtk_label_new(buf); |
|
de0b946e86a4
[gaim-migrate @ 1509]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1488
diff
changeset
|
1080 gtk_box_pack_start(GTK_BOX(vbox), label, FALSE, FALSE, 5); |
|
978
563c409e26a1
[gaim-migrate @ 988]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
976
diff
changeset
|
1081 |
| 475 | 1082 /* First Line */ |
| 1083 hbox = gtk_hbox_new(FALSE, 5); | |
| 1185 | 1084 gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 0); |
|
978
563c409e26a1
[gaim-migrate @ 988]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
976
diff
changeset
|
1085 |
|
350
fd3cc0a28d5d
[gaim-migrate @ 360]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
349
diff
changeset
|
1086 label = gtk_label_new(_("Original Password")); |
| 1185 | 1087 gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 0); |
| 475 | 1088 |
| 146 | 1089 b->original = gtk_entry_new(); |
|
160
aaa8f0a2140e
[gaim-migrate @ 170]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
149
diff
changeset
|
1090 gtk_entry_set_visibility(GTK_ENTRY(b->original), FALSE); |
| 1185 | 1091 gtk_box_pack_end(GTK_BOX(hbox), b->original, FALSE, FALSE, 0); |
| 475 | 1092 |
|
2372
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
1093 /* Next Line */ |
| 475 | 1094 hbox = gtk_hbox_new(FALSE, 5); |
| 1185 | 1095 gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 0); |
|
978
563c409e26a1
[gaim-migrate @ 988]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
976
diff
changeset
|
1096 |
|
2372
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
1097 label = gtk_label_new(_("New Password")); |
| 1185 | 1098 gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 0); |
|
2372
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
1099 |
|
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
1100 b->new1 = gtk_entry_new(); |
|
160
aaa8f0a2140e
[gaim-migrate @ 170]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
149
diff
changeset
|
1101 gtk_entry_set_visibility(GTK_ENTRY(b->new1), FALSE); |
| 1185 | 1102 gtk_box_pack_end(GTK_BOX(hbox), b->new1, FALSE, FALSE, 0); |
| 475 | 1103 |
| 1104 /* Next Line */ | |
| 1105 hbox = gtk_hbox_new(FALSE, 5); | |
| 1185 | 1106 gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 0); |
|
2372
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
1107 |
| 475 | 1108 label = gtk_label_new(_("New Password (again)")); |
| 1185 | 1109 gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 0); |
|
2372
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
1110 |
|
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
1111 b->new2 = gtk_entry_new(); |
|
160
aaa8f0a2140e
[gaim-migrate @ 170]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
149
diff
changeset
|
1112 gtk_entry_set_visibility(GTK_ENTRY(b->new2), FALSE); |
| 1185 | 1113 gtk_box_pack_end(GTK_BOX(hbox), b->new2, FALSE, FALSE, 0); |
|
2372
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
1114 |
|
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
1115 /* Now do our row of buttons */ |
| 1185 | 1116 hbox = gtk_hbox_new(FALSE, 5); |
| 1117 gtk_box_pack_start(GTK_BOX(fbox), hbox, FALSE, FALSE, 0); | |
| 5024 | 1118 |
| 1119 b->ok = gaim_pixbuf_button_from_stock(_("OK"), GTK_STOCK_OK, GAIM_BUTTON_HORIZONTAL); | |
| 4092 | 1120 gtk_box_pack_end(GTK_BOX(hbox), b->ok, FALSE, FALSE, 0); |
|
5314
1f901484599d
[gaim-migrate @ 5686]
Christian Hammond <chipx86@chipx86.com>
parents:
5294
diff
changeset
|
1121 g_signal_connect(G_OBJECT(b->ok), "clicked", G_CALLBACK(do_change_password), b); |
| 4092 | 1122 |
| 5024 | 1123 b->cancel = gaim_pixbuf_button_from_stock(_("Cancel"), GTK_STOCK_CANCEL, GAIM_BUTTON_HORIZONTAL); |
| 1185 | 1124 gtk_box_pack_end(GTK_BOX(hbox), b->cancel, FALSE, FALSE, 0); |
|
5314
1f901484599d
[gaim-migrate @ 5686]
Christian Hammond <chipx86@chipx86.com>
parents:
5294
diff
changeset
|
1125 g_signal_connect(G_OBJECT(b->cancel), "clicked", G_CALLBACK(destroy_dialog), b->window); |
| 1185 | 1126 |
| 5024 | 1127 gtk_widget_show_all(b->window); |
| 146 | 1128 } |
| 1129 | |
|
5563
9eb5b13fd412
[gaim-migrate @ 5965]
Christian Hammond <chipx86@chipx86.com>
parents:
5560
diff
changeset
|
1130 void show_set_info(GaimConnection *gc) |
| 1 | 1131 { |
| 1185 | 1132 GtkWidget *buttons; |
|
1499
de0b946e86a4
[gaim-migrate @ 1509]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1488
diff
changeset
|
1133 GtkWidget *label; |
| 1185 | 1134 GtkWidget *vbox; |
| 4119 | 1135 GtkTextBuffer *buffer; |
| 1136 GtkWidget *frame; | |
| 1292 | 1137 gchar *buf; |
|
5563
9eb5b13fd412
[gaim-migrate @ 5965]
Christian Hammond <chipx86@chipx86.com>
parents:
5560
diff
changeset
|
1138 GaimAccount *account; |
|
5924
c304abc3e68b
[gaim-migrate @ 6364]
Christian Hammond <chipx86@chipx86.com>
parents:
5906
diff
changeset
|
1139 const char *user_info; |
| 1292 | 1140 |
| 1 | 1141 struct set_info_dlg *b = g_new0(struct set_info_dlg, 1); |
| 4491 | 1142 account = gc->account; |
| 1143 b->account = account; | |
| 1 | 1144 |
|
2725
f3c094e78609
[gaim-migrate @ 2738]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2681
diff
changeset
|
1145 GAIM_DIALOG(b->window); |
| 4074 | 1146 gtk_window_set_role(GTK_WINDOW(b->window), "set_info"); |
|
2372
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
1147 dialogwindows = g_list_prepend(dialogwindows, b->window); |
| 4703 | 1148 gtk_window_set_title(GTK_WINDOW(b->window), _("Set User Info")); |
|
5314
1f901484599d
[gaim-migrate @ 5686]
Christian Hammond <chipx86@chipx86.com>
parents:
5294
diff
changeset
|
1149 g_signal_connect(G_OBJECT(b->window), "destroy", G_CALLBACK(destroy_dialog), b->window); |
|
960
fa681641643d
[gaim-migrate @ 970]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
940
diff
changeset
|
1150 gtk_widget_realize(b->window); |
|
1499
de0b946e86a4
[gaim-migrate @ 1509]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1488
diff
changeset
|
1151 |
| 1185 | 1152 vbox = gtk_vbox_new(FALSE, 5); |
|
2372
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
1153 gtk_container_set_border_width(GTK_CONTAINER(vbox), 5); |
|
1499
de0b946e86a4
[gaim-migrate @ 1509]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1488
diff
changeset
|
1154 gtk_container_add(GTK_CONTAINER(b->window), vbox); |
|
de0b946e86a4
[gaim-migrate @ 1509]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1488
diff
changeset
|
1155 |
|
de0b946e86a4
[gaim-migrate @ 1509]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1488
diff
changeset
|
1156 buf = g_malloc(256); |
|
5563
9eb5b13fd412
[gaim-migrate @ 5965]
Christian Hammond <chipx86@chipx86.com>
parents:
5560
diff
changeset
|
1157 g_snprintf(buf, 256, _("Changing info for %s:"), |
|
9eb5b13fd412
[gaim-migrate @ 5965]
Christian Hammond <chipx86@chipx86.com>
parents:
5560
diff
changeset
|
1158 gaim_account_get_username(account)); |
|
1499
de0b946e86a4
[gaim-migrate @ 1509]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1488
diff
changeset
|
1159 label = gtk_label_new(buf); |
|
de0b946e86a4
[gaim-migrate @ 1509]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1488
diff
changeset
|
1160 g_free(buf); |
|
de0b946e86a4
[gaim-migrate @ 1509]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1488
diff
changeset
|
1161 gtk_box_pack_start(GTK_BOX(vbox), label, FALSE, FALSE, 5); |
| 4491 | 1162 |
| 4119 | 1163 frame = gtk_frame_new(NULL); |
| 1164 gtk_frame_set_shadow_type(GTK_FRAME(frame), GTK_SHADOW_IN); | |
| 1165 gtk_box_pack_start(GTK_BOX(vbox), frame, TRUE, TRUE, 0); | |
| 1166 | |
| 1167 b->text = gtk_text_view_new(); | |
| 5105 | 1168 gtk_text_view_set_wrap_mode(GTK_TEXT_VIEW(b->text), GTK_WRAP_WORD_CHAR); |
| 7002 | 1169 #ifdef USE_GTKSPELL |
|
7060
9946001989a3
[gaim-migrate @ 7623]
Christian Hammond <chipx86@chipx86.com>
parents:
7057
diff
changeset
|
1170 if (gaim_prefs_get_bool("/gaim/gtk/conversations/spellcheck")) |
| 7002 | 1171 gtkspell_new_attach(GTK_TEXT_VIEW(b->text), NULL, NULL); |
| 1172 #endif | |
| 4119 | 1173 gtk_widget_set_size_request(b->text, 300, 200); |
|
5924
c304abc3e68b
[gaim-migrate @ 6364]
Christian Hammond <chipx86@chipx86.com>
parents:
5906
diff
changeset
|
1174 |
|
c304abc3e68b
[gaim-migrate @ 6364]
Christian Hammond <chipx86@chipx86.com>
parents:
5906
diff
changeset
|
1175 if ((user_info = gaim_account_get_user_info(account)) != NULL) { |
|
c304abc3e68b
[gaim-migrate @ 6364]
Christian Hammond <chipx86@chipx86.com>
parents:
5906
diff
changeset
|
1176 buf = g_malloc(strlen(user_info) + 1); |
|
c304abc3e68b
[gaim-migrate @ 6364]
Christian Hammond <chipx86@chipx86.com>
parents:
5906
diff
changeset
|
1177 strncpy_nohtml(buf, user_info, strlen(user_info) + 1); |
|
c304abc3e68b
[gaim-migrate @ 6364]
Christian Hammond <chipx86@chipx86.com>
parents:
5906
diff
changeset
|
1178 buffer = gtk_text_view_get_buffer(GTK_TEXT_VIEW(b->text)); |
|
c304abc3e68b
[gaim-migrate @ 6364]
Christian Hammond <chipx86@chipx86.com>
parents:
5906
diff
changeset
|
1179 gtk_text_buffer_set_text(buffer, buf, -1); |
|
c304abc3e68b
[gaim-migrate @ 6364]
Christian Hammond <chipx86@chipx86.com>
parents:
5906
diff
changeset
|
1180 g_free(buf); |
|
c304abc3e68b
[gaim-migrate @ 6364]
Christian Hammond <chipx86@chipx86.com>
parents:
5906
diff
changeset
|
1181 } |
|
c304abc3e68b
[gaim-migrate @ 6364]
Christian Hammond <chipx86@chipx86.com>
parents:
5906
diff
changeset
|
1182 |
| 4119 | 1183 gtk_container_add(GTK_CONTAINER(frame), b->text); |
|
1499
de0b946e86a4
[gaim-migrate @ 1509]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1488
diff
changeset
|
1184 gtk_window_set_focus(GTK_WINDOW(b->window), b->text); |
|
de0b946e86a4
[gaim-migrate @ 1509]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1488
diff
changeset
|
1185 |
|
de0b946e86a4
[gaim-migrate @ 1509]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1488
diff
changeset
|
1186 buttons = gtk_hbox_new(FALSE, 5); |
| 1185 | 1187 gtk_box_pack_start(GTK_BOX(vbox), buttons, FALSE, FALSE, 0); |
| 5024 | 1188 |
| 1189 b->save = gaim_pixbuf_button_from_stock(_("Save"), GTK_STOCK_SAVE, GAIM_BUTTON_HORIZONTAL); | |
| 4092 | 1190 gtk_box_pack_end(GTK_BOX(buttons), b->save, FALSE, FALSE, 0); |
|
5314
1f901484599d
[gaim-migrate @ 5686]
Christian Hammond <chipx86@chipx86.com>
parents:
5294
diff
changeset
|
1191 g_signal_connect(G_OBJECT(b->save), "clicked", G_CALLBACK(do_save_info), b); |
| 4092 | 1192 |
| 5024 | 1193 b->cancel = gaim_pixbuf_button_from_stock(_("Cancel"), GTK_STOCK_CANCEL, GAIM_BUTTON_HORIZONTAL); |
|
1499
de0b946e86a4
[gaim-migrate @ 1509]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1488
diff
changeset
|
1194 gtk_box_pack_end(GTK_BOX(buttons), b->cancel, FALSE, FALSE, 0); |
|
5314
1f901484599d
[gaim-migrate @ 5686]
Christian Hammond <chipx86@chipx86.com>
parents:
5294
diff
changeset
|
1195 g_signal_connect(G_OBJECT(b->cancel), "clicked", G_CALLBACK(destroy_dialog), b->window); |
|
1499
de0b946e86a4
[gaim-migrate @ 1509]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1488
diff
changeset
|
1196 |
| 5024 | 1197 gtk_widget_show_all(b->window); |
| 1 | 1198 } |
| 1199 | |
| 1200 | |
| 1201 /*------------------------------------------------------------------------*/ | |
| 608 | 1202 /* Functions Called To Add A Log */ |
| 1 | 1203 /*------------------------------------------------------------------------*/ |
| 1204 | |
|
5676
dae79aefac8d
[gaim-migrate @ 6094]
Christian Hammond <chipx86@chipx86.com>
parents:
5593
diff
changeset
|
1205 void cancel_log(GtkWidget *widget, GaimConversation *c) |
|
2372
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
1206 { |
|
5676
dae79aefac8d
[gaim-migrate @ 6094]
Christian Hammond <chipx86@chipx86.com>
parents:
5593
diff
changeset
|
1207 GaimGtkConversation *gtkconv; |
|
4359
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
1208 |
|
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
1209 gtkconv = GAIM_GTK_CONVERSATION(c); |
|
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
1210 |
|
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
1211 if (gtkconv->toolbar.log) { |
|
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
1212 gtk_check_menu_item_set_active(GTK_CHECK_MENU_ITEM(gtkconv->toolbar.log), |
|
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
1213 FALSE); |
| 608 | 1214 } |
|
4359
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
1215 |
|
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
1216 dialogwindows = g_list_remove(dialogwindows, gtkconv->dialogs.log); |
|
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
1217 gtk_widget_destroy(gtkconv->dialogs.log); |
|
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
1218 gtkconv->dialogs.log = NULL; |
| 608 | 1219 } |
| 1220 | |
|
5676
dae79aefac8d
[gaim-migrate @ 6094]
Christian Hammond <chipx86@chipx86.com>
parents:
5593
diff
changeset
|
1221 void do_log(GtkWidget *w, GaimConversation *c) |
| 1 | 1222 { |
|
5676
dae79aefac8d
[gaim-migrate @ 6094]
Christian Hammond <chipx86@chipx86.com>
parents:
5593
diff
changeset
|
1223 GaimGtkConversation *gtkconv; |
|
2372
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
1224 struct log_conversation *l; |
| 3466 | 1225 const char *file; |
|
1035
80a47e3b1bca
[gaim-migrate @ 1045]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1032
diff
changeset
|
1226 char path[PATHSIZE]; |
| 1 | 1227 |
|
4359
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
1228 gtkconv = GAIM_GTK_CONVERSATION(c); |
|
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
1229 |
|
2372
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
1230 if (!find_log_info(c->name)) { |
|
4359
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
1231 file = gtk_file_selection_get_filename( |
|
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
1232 GTK_FILE_SELECTION(gtkconv->dialogs.log)); |
|
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
1233 |
|
2372
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
1234 strncpy(path, file, PATHSIZE - 1); |
|
4359
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
1235 |
| 5966 | 1236 if (gaim_gtk_check_if_dir(path, GTK_FILE_SELECTION(gtkconv->dialogs.log))) |
|
1035
80a47e3b1bca
[gaim-migrate @ 1045]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1032
diff
changeset
|
1237 return; |
|
80a47e3b1bca
[gaim-migrate @ 1045]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1032
diff
changeset
|
1238 |
|
2372
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
1239 l = (struct log_conversation *)g_new0(struct log_conversation, 1); |
|
4359
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
1240 strcpy(l->name, gaim_conversation_get_name(c)); |
|
2372
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
1241 strcpy(l->filename, file); |
|
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
1242 log_conversations = g_list_append(log_conversations, l); |
|
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
1243 |
|
4359
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
1244 if (c != NULL) |
|
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
1245 gaim_conversation_set_logging(c, TRUE); |
|
2372
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
1246 } |
|
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
1247 |
|
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
1248 cancel_log(NULL, c); |
|
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
1249 } |
| 1 | 1250 |
|
5676
dae79aefac8d
[gaim-migrate @ 6094]
Christian Hammond <chipx86@chipx86.com>
parents:
5593
diff
changeset
|
1251 void show_log_dialog(GaimConversation *c) |
| 1 | 1252 { |
|
5676
dae79aefac8d
[gaim-migrate @ 6094]
Christian Hammond <chipx86@chipx86.com>
parents:
5593
diff
changeset
|
1253 GaimGtkConversation *gtkconv; |
| 1 | 1254 char *buf = g_malloc(BUF_LEN); |
|
2372
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
1255 |
|
4359
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
1256 gtkconv = GAIM_GTK_CONVERSATION(c); |
|
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
1257 |
|
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
1258 if (!gtkconv->dialogs.log) { |
| 4703 | 1259 gtkconv->dialogs.log = gtk_file_selection_new(_("Log Conversation")); |
|
4359
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
1260 |
|
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
1261 gtk_file_selection_hide_fileop_buttons( |
|
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
1262 GTK_FILE_SELECTION(gtkconv->dialogs.log)); |
|
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
1263 |
|
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
1264 g_snprintf(buf, BUF_LEN - 1, "%s" G_DIR_SEPARATOR_S "%s.log", |
|
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
1265 gaim_home_dir(), normalize(c->name)); |
|
6465
fb64cc87bc96
[gaim-migrate @ 6974]
Christian Hammond <chipx86@chipx86.com>
parents:
6431
diff
changeset
|
1266 g_object_set_data(G_OBJECT(gtkconv->dialogs.log), "dialog_type", |
|
4359
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
1267 "log dialog"); |
|
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
1268 gtk_file_selection_set_filename(GTK_FILE_SELECTION(gtkconv->dialogs.log), |
|
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
1269 buf); |
|
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
1270 g_signal_connect(G_OBJECT(gtkconv->dialogs.log), "delete_event", |
|
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
1271 G_CALLBACK(delete_event_dialog), c); |
|
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
1272 g_signal_connect(G_OBJECT(GTK_FILE_SELECTION(gtkconv->dialogs.log)->ok_button), "clicked", |
|
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
1273 G_CALLBACK(do_log), c); |
|
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
1274 g_signal_connect(G_OBJECT(GTK_FILE_SELECTION(gtkconv->dialogs.log)->cancel_button), "clicked", |
|
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
1275 G_CALLBACK(cancel_log), c); |
| 1 | 1276 } |
| 1277 | |
| 25 | 1278 g_free(buf); |
| 1279 | |
|
4359
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
1280 gtk_widget_show(gtkconv->dialogs.log); |
|
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
1281 gdk_window_raise(gtkconv->dialogs.log->window); |
| 1 | 1282 } |
| 1283 | |
| 1284 /*------------------------------------------------------*/ | |
| 1285 /* Find Buddy By Email */ | |
| 1286 /*------------------------------------------------------*/ | |
| 1287 | |
| 1288 void do_find_info(GtkWidget *w, struct findbyinfo *b) | |
| 1289 { | |
| 3466 | 1290 const char *first; |
| 1291 const char *middle; | |
| 1292 const char *last; | |
| 1293 const char *maiden; | |
| 1294 const char *city; | |
| 1295 const char *state; | |
| 1296 const char *country; | |
| 1 | 1297 |
|
2372
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
1298 first = gtk_entry_get_text(GTK_ENTRY(b->firstentry)); |
| 1 | 1299 middle = gtk_entry_get_text(GTK_ENTRY(b->middleentry)); |
| 1300 last = gtk_entry_get_text(GTK_ENTRY(b->lastentry)); | |
| 1301 maiden = gtk_entry_get_text(GTK_ENTRY(b->maidenentry)); | |
|
2372
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
1302 city = gtk_entry_get_text(GTK_ENTRY(b->cityentry)); |
|
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
1303 state = gtk_entry_get_text(GTK_ENTRY(b->stateentry)); |
|
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
1304 country = gtk_entry_get_text(GTK_ENTRY(b->countryentry)); |
| 1 | 1305 |
|
2393
a7ecfd3f7714
[gaim-migrate @ 2406]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2382
diff
changeset
|
1306 serv_dir_search(b->gc, first, middle, last, maiden, city, state, country, ""); |
|
2372
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
1307 destroy_dialog(NULL, b->window); |
|
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
1308 } |
| 1 | 1309 |
| 1310 void do_find_email(GtkWidget *w, struct findbyemail *b) | |
| 1311 { | |
| 3466 | 1312 const char *email; |
| 1 | 1313 |
| 1314 email = gtk_entry_get_text(GTK_ENTRY(b->emailentry)); | |
|
2372
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
1315 |
|
2598
b2800bca74fe
[gaim-migrate @ 2611]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2582
diff
changeset
|
1316 serv_dir_search(b->gc, "", "", "", "", "", "", "", email); |
|
2372
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
1317 |
| 1 | 1318 destroy_dialog(NULL, b->window); |
| 1319 } | |
| 1320 | |
|
5563
9eb5b13fd412
[gaim-migrate @ 5965]
Christian Hammond <chipx86@chipx86.com>
parents:
5560
diff
changeset
|
1321 void show_find_info(GaimConnection *gc) |
| 1 | 1322 { |
|
2372
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
1323 GtkWidget *cancel; |
|
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
1324 GtkWidget *ok; |
|
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
1325 GtkWidget *label; |
|
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
1326 GtkWidget *bbox; |
|
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
1327 GtkWidget *vbox; |
| 479 | 1328 GtkWidget *hbox; |
| 1329 GtkWidget *fbox; | |
| 1330 GtkWidget *frame; | |
| 1 | 1331 |
| 1332 struct findbyinfo *b = g_new0(struct findbyinfo, 1); | |
|
2393
a7ecfd3f7714
[gaim-migrate @ 2406]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2382
diff
changeset
|
1333 b->gc = gc; |
|
2725
f3c094e78609
[gaim-migrate @ 2738]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2681
diff
changeset
|
1334 GAIM_DIALOG(b->window); |
| 4635 | 1335 gtk_window_set_resizable(GTK_WINDOW(b->window), TRUE); |
| 4074 | 1336 gtk_window_set_role(GTK_WINDOW(b->window), "find_info"); |
| 479 | 1337 |
| 1338 dialogwindows = g_list_prepend(dialogwindows, b->window); | |
| 1339 | |
| 1340 frame = gtk_frame_new(_("Search for Buddy")); | |
| 1341 fbox = gtk_vbox_new(FALSE, 5); | |
| 1342 | |
| 1343 /* Build OK Button */ | |
| 1344 | |
| 5024 | 1345 ok = gaim_pixbuf_button_from_stock(_("OK"), GTK_STOCK_OK, GAIM_BUTTON_HORIZONTAL); |
| 1346 cancel = gaim_pixbuf_button_from_stock(_("Cancel"), GTK_STOCK_CANCEL, GAIM_BUTTON_HORIZONTAL); | |
| 1 | 1347 |
|
2372
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
1348 bbox = gtk_hbox_new(FALSE, 5); |
|
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
1349 vbox = gtk_vbox_new(FALSE, 5); |
|
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
1350 gtk_container_set_border_width(GTK_CONTAINER(vbox), 5); |
|
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
1351 |
|
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
1352 b->firstentry = gtk_entry_new(); |
| 1 | 1353 b->middleentry = gtk_entry_new(); |
| 1354 b->lastentry = gtk_entry_new(); | |
| 1355 b->maidenentry = gtk_entry_new(); | |
| 1356 b->cityentry = gtk_entry_new(); | |
| 1357 b->stateentry = gtk_entry_new(); | |
| 1358 b->countryentry = gtk_entry_new(); | |
| 1359 | |
| 4333 | 1360 gtk_box_pack_end(GTK_BOX(bbox), ok, FALSE, FALSE, 0); |
|
2372
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
1361 gtk_box_pack_end(GTK_BOX(bbox), cancel, FALSE, FALSE, 0); |
| 1 | 1362 |
| 479 | 1363 /* Line 1 */ |
|
2372
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
1364 label = gtk_label_new(_("First Name")); |
|
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
1365 |
| 1185 | 1366 hbox = gtk_hbox_new(FALSE, 5); |
| 1367 gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 0); | |
| 1368 gtk_box_pack_end(GTK_BOX(hbox), b->firstentry, FALSE, FALSE, 0); | |
| 479 | 1369 |
| 1185 | 1370 gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 0); |
| 479 | 1371 |
| 1372 /* Line 2 */ | |
| 1 | 1373 |
|
2372
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
1374 label = gtk_label_new(_("Middle Name")); |
|
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
1375 |
| 1185 | 1376 hbox = gtk_hbox_new(FALSE, 5); |
| 1377 gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 0); | |
| 1378 gtk_box_pack_end(GTK_BOX(hbox), b->middleentry, FALSE, FALSE, 0); | |
| 479 | 1379 |
| 1185 | 1380 gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 0); |
| 479 | 1381 |
| 1382 /* Line 3 */ | |
| 1383 | |
| 1384 label = gtk_label_new(_("Last Name")); | |
|
2372
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
1385 |
| 1185 | 1386 hbox = gtk_hbox_new(FALSE, 5); |
| 1387 gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 0); | |
| 1388 gtk_box_pack_end(GTK_BOX(hbox), b->lastentry, FALSE, FALSE, 0); | |
| 479 | 1389 |
| 1185 | 1390 gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 0); |
| 479 | 1391 |
| 1392 /* Line 4 */ | |
| 1393 | |
| 1394 label = gtk_label_new(_("Maiden Name")); | |
|
2372
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
1395 |
| 1185 | 1396 hbox = gtk_hbox_new(FALSE, 5); |
| 1397 gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 0); | |
| 1398 gtk_box_pack_end(GTK_BOX(hbox), b->maidenentry, FALSE, FALSE, 0); | |
| 479 | 1399 |
| 1185 | 1400 gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 0); |
| 479 | 1401 |
| 1402 /* Line 5 */ | |
|
2372
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
1403 |
| 479 | 1404 label = gtk_label_new(_("City")); |
|
2372
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
1405 |
| 1185 | 1406 hbox = gtk_hbox_new(FALSE, 5); |
| 1407 gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 0); | |
| 1408 gtk_box_pack_end(GTK_BOX(hbox), b->cityentry, FALSE, FALSE, 0); | |
| 479 | 1409 |
| 1185 | 1410 gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 0); |
| 479 | 1411 |
| 1412 /* Line 6 */ | |
|
2372
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
1413 label = gtk_label_new(_("State")); |
|
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
1414 |
| 1185 | 1415 hbox = gtk_hbox_new(FALSE, 5); |
| 1416 gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 0); | |
| 1417 gtk_box_pack_end(GTK_BOX(hbox), b->stateentry, FALSE, FALSE, 0); | |
| 479 | 1418 |
| 1185 | 1419 gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 0); |
| 479 | 1420 |
| 1421 /* Line 7 */ | |
|
2372
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
1422 label = gtk_label_new(_("Country")); |
|
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
1423 |
| 1185 | 1424 hbox = gtk_hbox_new(FALSE, 5); |
| 1425 gtk_box_pack_start(GTK_BOX(hbox), label, FALSE, FALSE, 0); | |
| 1426 gtk_box_pack_end(GTK_BOX(hbox), b->countryentry, FALSE, FALSE, 0); | |
| 479 | 1427 |
| 1185 | 1428 gtk_box_pack_start(GTK_BOX(vbox), hbox, FALSE, FALSE, 0); |
| 479 | 1429 |
|
2372
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
1430 /* Merge The Boxes */ |
| 479 | 1431 |
| 1432 gtk_container_add(GTK_CONTAINER(frame), vbox); | |
| 1185 | 1433 gtk_box_pack_start(GTK_BOX(fbox), frame, FALSE, FALSE, 0); |
| 1434 gtk_box_pack_start(GTK_BOX(fbox), bbox, FALSE, FALSE, 0); | |
| 1 | 1435 |
|
5314
1f901484599d
[gaim-migrate @ 5686]
Christian Hammond <chipx86@chipx86.com>
parents:
5294
diff
changeset
|
1436 g_signal_connect(G_OBJECT(b->window), "destroy", G_CALLBACK(destroy_dialog), b->window); |
|
1f901484599d
[gaim-migrate @ 5686]
Christian Hammond <chipx86@chipx86.com>
parents:
5294
diff
changeset
|
1437 g_signal_connect(G_OBJECT(cancel), "clicked", G_CALLBACK(destroy_dialog), b->window); |
|
1f901484599d
[gaim-migrate @ 5686]
Christian Hammond <chipx86@chipx86.com>
parents:
5294
diff
changeset
|
1438 g_signal_connect(G_OBJECT(ok), "clicked", G_CALLBACK(do_find_info), b); |
|
2372
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
1439 |
| 4703 | 1440 gtk_window_set_title(GTK_WINDOW(b->window), _("Find Buddy By Info")); |
|
2372
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
1441 gtk_window_set_focus(GTK_WINDOW(b->window), b->firstentry); |
|
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
1442 gtk_container_add(GTK_CONTAINER(b->window), fbox); |
| 4635 | 1443 gtk_container_set_border_width(GTK_CONTAINER(b->window), 5); |
|
2372
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
1444 gtk_widget_realize(b->window); |
|
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
1445 |
| 5024 | 1446 gtk_widget_show_all(b->window); |
|
2372
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
1447 } |
| 1 | 1448 |
|
5563
9eb5b13fd412
[gaim-migrate @ 5965]
Christian Hammond <chipx86@chipx86.com>
parents:
5560
diff
changeset
|
1449 void show_find_email(GaimConnection *gc) |
| 1 | 1450 { |
|
2372
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
1451 GtkWidget *label; |
|
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
1452 GtkWidget *bbox; |
|
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
1453 GtkWidget *vbox; |
|
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
1454 GtkWidget *frame; |
|
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
1455 GtkWidget *topbox; |
| 444 | 1456 GtkWidget *button; |
| 1 | 1457 |
|
2372
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
1458 struct findbyemail *b = g_new0(struct findbyemail, 1); |
|
5563
9eb5b13fd412
[gaim-migrate @ 5965]
Christian Hammond <chipx86@chipx86.com>
parents:
5560
diff
changeset
|
1459 if (g_list_find(gaim_connections_get_all(), gc)) |
|
1535
1e2cc8c8bf3c
[gaim-migrate @ 1545]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1499
diff
changeset
|
1460 b->gc = gc; |
|
2725
f3c094e78609
[gaim-migrate @ 2738]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2681
diff
changeset
|
1461 GAIM_DIALOG(b->window); |
| 4635 | 1462 gtk_window_set_resizable(GTK_WINDOW(b->window), TRUE); |
| 4074 | 1463 gtk_window_set_role(GTK_WINDOW(b->window), "find_email"); |
|
2372
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
1464 gtk_widget_realize(b->window); |
|
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
1465 dialogwindows = g_list_prepend(dialogwindows, b->window); |
|
5314
1f901484599d
[gaim-migrate @ 5686]
Christian Hammond <chipx86@chipx86.com>
parents:
5294
diff
changeset
|
1466 g_signal_connect(G_OBJECT(b->window), "destroy", G_CALLBACK(destroy_dialog), b->window); |
| 4703 | 1467 gtk_window_set_title(GTK_WINDOW(b->window), _("Find Buddy By Email")); |
|
2372
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
1468 |
|
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
1469 vbox = gtk_vbox_new(FALSE, 5); |
|
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
1470 gtk_container_set_border_width(GTK_CONTAINER(vbox), 5); |
|
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
1471 gtk_container_add(GTK_CONTAINER(b->window), vbox); |
| 1185 | 1472 |
| 444 | 1473 frame = gtk_frame_new(_("Search for Buddy")); |
|
2372
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
1474 gtk_box_pack_start(GTK_BOX(vbox), frame, TRUE, TRUE, 0); |
|
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
1475 |
|
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
1476 topbox = gtk_hbox_new(FALSE, 5); |
|
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
1477 gtk_container_add(GTK_CONTAINER(frame), topbox); |
|
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
1478 gtk_container_set_border_width(GTK_CONTAINER(topbox), 5); |
|
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
1479 |
|
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
1480 label = gtk_label_new(_("Email")); |
|
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
1481 gtk_box_pack_start(GTK_BOX(topbox), label, FALSE, FALSE, 0); |
|
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
1482 |
|
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
1483 b->emailentry = gtk_entry_new(); |
|
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
1484 gtk_box_pack_start(GTK_BOX(topbox), b->emailentry, TRUE, TRUE, 0); |
|
5314
1f901484599d
[gaim-migrate @ 5686]
Christian Hammond <chipx86@chipx86.com>
parents:
5294
diff
changeset
|
1485 g_signal_connect(G_OBJECT(b->emailentry), "activate", G_CALLBACK(do_find_email), b); |
|
2372
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
1486 gtk_window_set_focus(GTK_WINDOW(b->window), b->emailentry); |
|
1499
de0b946e86a4
[gaim-migrate @ 1509]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1488
diff
changeset
|
1487 |
| 1185 | 1488 bbox = gtk_hbox_new(FALSE, 5); |
|
2372
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
1489 gtk_box_pack_start(GTK_BOX(vbox), bbox, FALSE, FALSE, 0); |
| 444 | 1490 |
| 5024 | 1491 button = gaim_pixbuf_button_from_stock(_("OK"), GTK_STOCK_OK, GAIM_BUTTON_HORIZONTAL); |
|
5314
1f901484599d
[gaim-migrate @ 5686]
Christian Hammond <chipx86@chipx86.com>
parents:
5294
diff
changeset
|
1492 g_signal_connect(G_OBJECT(button), "clicked", G_CALLBACK(do_find_email), b); |
| 4094 | 1493 gtk_box_pack_end(GTK_BOX(bbox), button, FALSE, FALSE, 0); |
| 1494 | |
| 5024 | 1495 button = gaim_pixbuf_button_from_stock(_("Cancel"), GTK_STOCK_CANCEL, GAIM_BUTTON_HORIZONTAL); |
|
5314
1f901484599d
[gaim-migrate @ 5686]
Christian Hammond <chipx86@chipx86.com>
parents:
5294
diff
changeset
|
1496 g_signal_connect(G_OBJECT(button), "clicked", G_CALLBACK(destroy_dialog), b->window); |
| 1185 | 1497 gtk_box_pack_end(GTK_BOX(bbox), button, FALSE, FALSE, 0); |
| 1498 | |
|
2372
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
1499 gtk_widget_show_all(b->window); |
| 1 | 1500 } |
| 1501 | |
| 1502 /*------------------------------------------------------*/ | |
| 1503 /* Link Dialog */ | |
| 1504 /*------------------------------------------------------*/ | |
| 1505 | |
|
5676
dae79aefac8d
[gaim-migrate @ 6094]
Christian Hammond <chipx86@chipx86.com>
parents:
5593
diff
changeset
|
1506 void cancel_link(GtkWidget *widget, GaimConversation *c) |
| 1 | 1507 { |
|
5676
dae79aefac8d
[gaim-migrate @ 6094]
Christian Hammond <chipx86@chipx86.com>
parents:
5593
diff
changeset
|
1508 GaimGtkConversation *gtkconv; |
| 7055 | 1509 GtkWidget *link_dialog; |
|
4359
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
1510 |
|
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
1511 gtkconv = GAIM_GTK_CONVERSATION(c); |
|
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
1512 |
|
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
1513 if (gtkconv->toolbar.link) { |
| 4635 | 1514 gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(gtkconv->toolbar.link), |
|
4359
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
1515 FALSE); |
|
2372
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
1516 } |
|
4359
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
1517 |
| 7055 | 1518 link_dialog = gtkconv->dialogs.link; |
| 4685 | 1519 gtkconv->dialogs.link = NULL; |
| 7055 | 1520 destroy_dialog(NULL, link_dialog); |
| 1 | 1521 } |
| 1522 | |
| 4262 | 1523 void do_insert_link(GtkWidget *w, int resp, struct linkdlg *b) |
| 1 | 1524 { |
|
5676
dae79aefac8d
[gaim-migrate @ 6094]
Christian Hammond <chipx86@chipx86.com>
parents:
5593
diff
changeset
|
1525 GaimGtkConversation *gtkconv; |
| 1 | 1526 char *open_tag; |
| 3466 | 1527 const char *urltext, *showtext; |
| 4262 | 1528 |
|
4359
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
1529 gtkconv = GAIM_GTK_CONVERSATION(b->c); |
|
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
1530 |
| 4262 | 1531 if (resp == GTK_RESPONSE_OK) { |
| 1532 | |
| 1533 open_tag = g_malloc(2048); | |
|
6465
fb64cc87bc96
[gaim-migrate @ 6974]
Christian Hammond <chipx86@chipx86.com>
parents:
6431
diff
changeset
|
1534 |
| 4262 | 1535 urltext = gtk_entry_get_text(GTK_ENTRY(b->url)); |
| 1536 showtext = gtk_entry_get_text(GTK_ENTRY(b->text)); | |
| 1537 | |
|
6465
fb64cc87bc96
[gaim-migrate @ 6974]
Christian Hammond <chipx86@chipx86.com>
parents:
6431
diff
changeset
|
1538 if (!strlen(showtext)) |
| 4262 | 1539 showtext = urltext; |
| 1540 | |
| 1541 g_snprintf(open_tag, 2048, "<A HREF=\"%s\">%s", urltext, showtext); | |
|
4359
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
1542 gaim_gtk_surround(gtkconv, open_tag, "</A>"); |
| 4262 | 1543 |
| 1544 g_free(open_tag); | |
| 1545 } | |
| 1546 | |
|
4359
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
1547 if (gtkconv->toolbar.link) { |
| 4635 | 1548 gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(gtkconv->toolbar.link), |
|
4359
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
1549 FALSE); |
| 4262 | 1550 } |
| 1551 | |
|
4359
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
1552 gtkconv->dialogs.link = NULL; |
| 1 | 1553 destroy_dialog(NULL, b->window); |
| 1554 } | |
| 1555 | |
|
5676
dae79aefac8d
[gaim-migrate @ 6094]
Christian Hammond <chipx86@chipx86.com>
parents:
5593
diff
changeset
|
1556 void show_insert_link(GtkWidget *linky, GaimConversation *c) |
| 1 | 1557 { |
|
5676
dae79aefac8d
[gaim-migrate @ 6094]
Christian Hammond <chipx86@chipx86.com>
parents:
5593
diff
changeset
|
1558 GaimGtkConversation *gtkconv; |
|
dae79aefac8d
[gaim-migrate @ 6094]
Christian Hammond <chipx86@chipx86.com>
parents:
5593
diff
changeset
|
1559 GaimGtkWindow *gtkwin; |
| 4262 | 1560 GtkWidget *table; |
| 1561 GtkWidget *label; | |
| 1562 GtkWidget *hbox; | |
| 1 | 1563 GtkWidget *vbox; |
| 1564 | |
|
4359
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
1565 gtkconv = GAIM_GTK_CONVERSATION(c); |
|
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
1566 gtkwin = GAIM_GTK_WINDOW(gaim_conversation_get_window(c)); |
|
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
1567 |
|
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
1568 if (gtkconv->dialogs.link == NULL) { |
| 4262 | 1569 struct linkdlg *a = g_new0(struct linkdlg, 1); |
| 5024 | 1570 GtkWidget *img = gtk_image_new_from_stock(GAIM_STOCK_DIALOG_QUESTION, GTK_ICON_SIZE_DIALOG); |
| 4262 | 1571 |
| 1572 a->c = c; | |
| 4703 | 1573 a->window = gtk_dialog_new_with_buttons(_("Insert Link"), |
| 5092 | 1574 GTK_WINDOW(gtkwin->window), 0, GTK_STOCK_CANCEL, |
|
4359
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
1575 GTK_RESPONSE_CANCEL, _("Insert"), GTK_RESPONSE_OK, NULL); |
| 7055 | 1576 gtk_dialog_set_default_response(GTK_DIALOG(a->window), GTK_RESPONSE_OK); |
| 1577 g_signal_connect(G_OBJECT(a->window), "response", | |
| 1578 G_CALLBACK(do_insert_link), a); | |
| 4262 | 1579 |
| 1580 gtk_dialog_set_default_response(GTK_DIALOG(a->window), GTK_RESPONSE_OK); | |
| 1581 gtk_container_set_border_width(GTK_CONTAINER(a->window), 6); | |
| 1582 gtk_window_set_resizable(GTK_WINDOW(a->window), FALSE); | |
| 1583 gtk_dialog_set_has_separator(GTK_DIALOG(a->window), FALSE); | |
| 1584 gtk_box_set_spacing(GTK_BOX(GTK_DIALOG(a->window)->vbox), 12); | |
|
4359
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
1585 gtk_container_set_border_width( |
|
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
1586 GTK_CONTAINER(GTK_DIALOG(a->window)->vbox), 6); |
| 4262 | 1587 gtk_window_set_role(GTK_WINDOW(a->window), "insert_link"); |
|
6465
fb64cc87bc96
[gaim-migrate @ 6974]
Christian Hammond <chipx86@chipx86.com>
parents:
6431
diff
changeset
|
1588 |
| 4262 | 1589 hbox = gtk_hbox_new(FALSE, 12); |
| 1590 gtk_container_add(GTK_CONTAINER(GTK_DIALOG(a->window)->vbox), hbox); | |
| 1591 gtk_box_pack_start(GTK_BOX(hbox), img, FALSE, FALSE, 0); | |
| 1592 gtk_misc_set_alignment(GTK_MISC(img), 0, 0); | |
|
6465
fb64cc87bc96
[gaim-migrate @ 6974]
Christian Hammond <chipx86@chipx86.com>
parents:
6431
diff
changeset
|
1593 |
| 4262 | 1594 vbox = gtk_vbox_new(FALSE, 0); |
| 1595 gtk_container_add(GTK_CONTAINER(hbox), vbox); | |
|
6465
fb64cc87bc96
[gaim-migrate @ 6974]
Christian Hammond <chipx86@chipx86.com>
parents:
6431
diff
changeset
|
1596 |
|
4359
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
1597 label = gtk_label_new(_("Please enter the URL and description of " |
|
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
1598 "the link that you want to insert. The " |
|
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
1599 "description is optional.\n")); |
|
6465
fb64cc87bc96
[gaim-migrate @ 6974]
Christian Hammond <chipx86@chipx86.com>
parents:
6431
diff
changeset
|
1600 |
| 4262 | 1601 gtk_widget_set_size_request(GTK_WIDGET(label), 335, -1); |
| 1602 gtk_label_set_line_wrap(GTK_LABEL(label), TRUE); | |
| 1603 gtk_misc_set_alignment(GTK_MISC(label), 0, 0); | |
| 1604 gtk_box_pack_start(GTK_BOX(vbox), label, FALSE, FALSE, 0); | |
|
6465
fb64cc87bc96
[gaim-migrate @ 6974]
Christian Hammond <chipx86@chipx86.com>
parents:
6431
diff
changeset
|
1605 |
| 4262 | 1606 hbox = gtk_hbox_new(FALSE, 6); |
| 1607 gtk_container_add(GTK_CONTAINER(vbox), hbox); | |
|
6465
fb64cc87bc96
[gaim-migrate @ 6974]
Christian Hammond <chipx86@chipx86.com>
parents:
6431
diff
changeset
|
1608 |
| 4262 | 1609 table = gtk_table_new(4, 2, FALSE); |
| 1610 gtk_table_set_row_spacings(GTK_TABLE(table), 5); | |
| 1611 gtk_table_set_col_spacings(GTK_TABLE(table), 5); | |
| 1612 gtk_container_set_border_width(GTK_CONTAINER(table), 0); | |
| 1613 gtk_box_pack_start(GTK_BOX(vbox), table, FALSE, FALSE, 0); | |
|
6465
fb64cc87bc96
[gaim-migrate @ 6974]
Christian Hammond <chipx86@chipx86.com>
parents:
6431
diff
changeset
|
1614 |
|
350
fd3cc0a28d5d
[gaim-migrate @ 360]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
349
diff
changeset
|
1615 label = gtk_label_new(_("URL")); |
| 4262 | 1616 gtk_misc_set_alignment(GTK_MISC(label), 0, 0.5); |
| 1617 gtk_table_attach_defaults(GTK_TABLE(table), label, 0, 1, 0, 1); | |
|
6465
fb64cc87bc96
[gaim-migrate @ 6974]
Christian Hammond <chipx86@chipx86.com>
parents:
6431
diff
changeset
|
1618 |
| 4262 | 1619 a->url = gtk_entry_new(); |
| 1620 gtk_table_attach_defaults(GTK_TABLE(table), a->url, 1, 2, 0, 1); | |
| 1621 gtk_widget_grab_focus(a->url); | |
|
6465
fb64cc87bc96
[gaim-migrate @ 6974]
Christian Hammond <chipx86@chipx86.com>
parents:
6431
diff
changeset
|
1622 |
| 4262 | 1623 gtk_entry_set_activates_default (GTK_ENTRY(a->url), TRUE); |
|
6465
fb64cc87bc96
[gaim-migrate @ 6974]
Christian Hammond <chipx86@chipx86.com>
parents:
6431
diff
changeset
|
1624 |
|
350
fd3cc0a28d5d
[gaim-migrate @ 360]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
349
diff
changeset
|
1625 label = gtk_label_new(_("Description")); |
| 4262 | 1626 gtk_misc_set_alignment(GTK_MISC(label), 0, 0.5); |
| 1627 gtk_table_attach_defaults(GTK_TABLE(table), label, 0, 1, 1, 2); | |
|
6465
fb64cc87bc96
[gaim-migrate @ 6974]
Christian Hammond <chipx86@chipx86.com>
parents:
6431
diff
changeset
|
1628 |
| 4262 | 1629 a->text = gtk_entry_new(); |
| 1630 gtk_table_attach_defaults(GTK_TABLE(table), a->text, 1, 2, 1, 2); | |
| 1631 gtk_entry_set_activates_default (GTK_ENTRY(a->text), TRUE); | |
| 1632 | |
| 7055 | 1633 g_signal_connect(G_OBJECT(a->window), "destroy", |
| 1634 G_CALLBACK(free_dialog), a); | |
| 1635 dialogwindows = g_list_prepend(dialogwindows, a->window); | |
| 4262 | 1636 |
| 1637 a->toggle = linky; | |
|
4359
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
1638 gtkconv->dialogs.link = a->window; |
| 1 | 1639 } |
| 1640 | |
|
4359
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
1641 gtk_widget_show_all(gtkconv->dialogs.link); |
|
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
1642 gdk_window_raise(gtkconv->dialogs.link->window); |
| 1 | 1643 } |
| 1644 | |
| 1645 /*------------------------------------------------------*/ | |
| 1646 /* Color Selection Dialog */ | |
| 1647 /*------------------------------------------------------*/ | |
| 1648 | |
| 3367 | 1649 GtkWidget *fgcseld = NULL; |
| 1650 GtkWidget *bgcseld = NULL; | |
|
657
4bbc103a3294
[gaim-migrate @ 667]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
654
diff
changeset
|
1651 |
|
5676
dae79aefac8d
[gaim-migrate @ 6094]
Christian Hammond <chipx86@chipx86.com>
parents:
5593
diff
changeset
|
1652 void cancel_fgcolor(GtkWidget *widget, GaimConversation *c) |
| 1 | 1653 { |
|
5676
dae79aefac8d
[gaim-migrate @ 6094]
Christian Hammond <chipx86@chipx86.com>
parents:
5593
diff
changeset
|
1654 GaimGtkConversation *gtkconv; |
|
4359
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
1655 |
|
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
1656 gtkconv = GAIM_GTK_CONVERSATION(c); |
|
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
1657 |
|
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
1658 if (gtkconv->toolbar.fgcolor && widget) { |
| 4635 | 1659 gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(gtkconv->toolbar.fgcolor), |
|
4359
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
1660 FALSE); |
| 61 | 1661 } |
|
4359
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
1662 |
|
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
1663 dialogwindows = g_list_remove(dialogwindows, gtkconv->dialogs.fg_color); |
|
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
1664 gtk_widget_destroy(gtkconv->dialogs.fg_color); |
|
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
1665 gtkconv->dialogs.fg_color = NULL; |
| 1 | 1666 } |
| 1667 | |
|
5676
dae79aefac8d
[gaim-migrate @ 6094]
Christian Hammond <chipx86@chipx86.com>
parents:
5593
diff
changeset
|
1668 void cancel_bgcolor(GtkWidget *widget, GaimConversation *c) |
|
858
3de6e98e8898
[gaim-migrate @ 868]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
854
diff
changeset
|
1669 { |
|
5676
dae79aefac8d
[gaim-migrate @ 6094]
Christian Hammond <chipx86@chipx86.com>
parents:
5593
diff
changeset
|
1670 GaimGtkConversation *gtkconv; |
|
4359
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
1671 |
|
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
1672 gtkconv = GAIM_GTK_CONVERSATION(c); |
|
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
1673 |
|
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
1674 if (gtkconv->toolbar.bgcolor && widget) { |
| 4635 | 1675 gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(gtkconv->toolbar.bgcolor), |
|
4359
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
1676 FALSE); |
|
858
3de6e98e8898
[gaim-migrate @ 868]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
854
diff
changeset
|
1677 } |
|
4359
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
1678 |
|
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
1679 dialogwindows = g_list_remove(dialogwindows, gtkconv->dialogs.bg_color); |
|
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
1680 gtk_widget_destroy(gtkconv->dialogs.bg_color); |
|
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
1681 gtkconv->dialogs.bg_color = NULL; |
|
858
3de6e98e8898
[gaim-migrate @ 868]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
854
diff
changeset
|
1682 } |
|
3de6e98e8898
[gaim-migrate @ 868]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
854
diff
changeset
|
1683 |
|
3de6e98e8898
[gaim-migrate @ 868]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
854
diff
changeset
|
1684 void do_fgcolor(GtkWidget *widget, GtkColorSelection *colorsel) |
| 1 | 1685 { |
| 1686 GdkColor text_color; | |
|
5676
dae79aefac8d
[gaim-migrate @ 6094]
Christian Hammond <chipx86@chipx86.com>
parents:
5593
diff
changeset
|
1687 GaimConversation *c; |
|
dae79aefac8d
[gaim-migrate @ 6094]
Christian Hammond <chipx86@chipx86.com>
parents:
5593
diff
changeset
|
1688 GaimGtkConversation *gtkconv; |
| 1 | 1689 char *open_tag; |
| 1690 | |
| 1691 open_tag = g_malloc(30); | |
| 1692 | |
| 3557 | 1693 gtk_color_selection_get_current_color(colorsel, &text_color); |
| 1 | 1694 |
| 4635 | 1695 c = g_object_get_data(G_OBJECT(colorsel), "gaim_conversation"); |
|
411
a330017b3aa4
[gaim-migrate @ 421]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
401
diff
changeset
|
1696 /* GTK_IS_EDITABLE(c->entry); huh? */ |
|
311
0a8b4edc4732
[gaim-migrate @ 321]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
308
diff
changeset
|
1697 |
|
4359
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
1698 gtkconv = GAIM_GTK_CONVERSATION(c); |
|
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
1699 |
|
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
1700 gtkconv->fg_color = text_color; |
|
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
1701 g_snprintf(open_tag, 23, "<FONT COLOR=\"#%02X%02X%02X\">", |
|
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
1702 text_color.red / 256, |
|
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
1703 text_color.green / 256, |
|
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
1704 text_color.blue / 256); |
|
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
1705 gaim_gtk_surround(gtkconv, open_tag, "</FONT>"); |
|
5213
1cf4eb75e3ee
[gaim-migrate @ 5583]
Christian Hammond <chipx86@chipx86.com>
parents:
5205
diff
changeset
|
1706 |
|
1cf4eb75e3ee
[gaim-migrate @ 5583]
Christian Hammond <chipx86@chipx86.com>
parents:
5205
diff
changeset
|
1707 gaim_debug(GAIM_DEBUG_MISC, "fgcolor dialog", "#%02X%02X%02X\n", |
|
1cf4eb75e3ee
[gaim-migrate @ 5583]
Christian Hammond <chipx86@chipx86.com>
parents:
5205
diff
changeset
|
1708 text_color.red / 256, |
|
1cf4eb75e3ee
[gaim-migrate @ 5583]
Christian Hammond <chipx86@chipx86.com>
parents:
5205
diff
changeset
|
1709 text_color.green / 256, |
|
1cf4eb75e3ee
[gaim-migrate @ 5583]
Christian Hammond <chipx86@chipx86.com>
parents:
5205
diff
changeset
|
1710 text_color.blue / 256); |
|
311
0a8b4edc4732
[gaim-migrate @ 321]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
308
diff
changeset
|
1711 g_free(open_tag); |
|
858
3de6e98e8898
[gaim-migrate @ 868]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
854
diff
changeset
|
1712 cancel_fgcolor(NULL, c); |
|
3de6e98e8898
[gaim-migrate @ 868]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
854
diff
changeset
|
1713 } |
|
3de6e98e8898
[gaim-migrate @ 868]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
854
diff
changeset
|
1714 |
|
3de6e98e8898
[gaim-migrate @ 868]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
854
diff
changeset
|
1715 void do_bgcolor(GtkWidget *widget, GtkColorSelection *colorsel) |
|
3de6e98e8898
[gaim-migrate @ 868]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
854
diff
changeset
|
1716 { |
|
3de6e98e8898
[gaim-migrate @ 868]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
854
diff
changeset
|
1717 GdkColor text_color; |
|
5676
dae79aefac8d
[gaim-migrate @ 6094]
Christian Hammond <chipx86@chipx86.com>
parents:
5593
diff
changeset
|
1718 GaimConversation *c; |
|
dae79aefac8d
[gaim-migrate @ 6094]
Christian Hammond <chipx86@chipx86.com>
parents:
5593
diff
changeset
|
1719 GaimGtkConversation *gtkconv; |
|
858
3de6e98e8898
[gaim-migrate @ 868]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
854
diff
changeset
|
1720 char *open_tag; |
|
3de6e98e8898
[gaim-migrate @ 868]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
854
diff
changeset
|
1721 |
|
3de6e98e8898
[gaim-migrate @ 868]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
854
diff
changeset
|
1722 open_tag = g_malloc(30); |
|
3de6e98e8898
[gaim-migrate @ 868]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
854
diff
changeset
|
1723 |
| 3557 | 1724 gtk_color_selection_get_current_color(colorsel, &text_color); |
|
858
3de6e98e8898
[gaim-migrate @ 868]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
854
diff
changeset
|
1725 |
| 4635 | 1726 c = g_object_get_data(G_OBJECT(colorsel), "gaim_conversation"); |
|
858
3de6e98e8898
[gaim-migrate @ 868]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
854
diff
changeset
|
1727 /* GTK_IS_EDITABLE(c->entry); huh? */ |
|
3de6e98e8898
[gaim-migrate @ 868]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
854
diff
changeset
|
1728 |
|
4359
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
1729 gtkconv = GAIM_GTK_CONVERSATION(c); |
|
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
1730 |
|
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
1731 gtkconv->bg_color = text_color; |
|
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
1732 g_snprintf(open_tag, 25, "<BODY BGCOLOR=\"#%02X%02X%02X\">", |
|
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
1733 text_color.red / 256, |
|
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
1734 text_color.green / 256, |
|
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
1735 text_color.blue / 256); |
|
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
1736 gaim_gtk_surround(gtkconv, open_tag, "</BODY>"); |
|
5213
1cf4eb75e3ee
[gaim-migrate @ 5583]
Christian Hammond <chipx86@chipx86.com>
parents:
5205
diff
changeset
|
1737 gaim_debug(GAIM_DEBUG_MISC, "bgcolor dialog", "#%02X%02X%02X\n", |
|
1cf4eb75e3ee
[gaim-migrate @ 5583]
Christian Hammond <chipx86@chipx86.com>
parents:
5205
diff
changeset
|
1738 text_color.red / 256, |
|
1cf4eb75e3ee
[gaim-migrate @ 5583]
Christian Hammond <chipx86@chipx86.com>
parents:
5205
diff
changeset
|
1739 text_color.green / 256, |
|
1cf4eb75e3ee
[gaim-migrate @ 5583]
Christian Hammond <chipx86@chipx86.com>
parents:
5205
diff
changeset
|
1740 text_color.blue / 256); |
|
1cf4eb75e3ee
[gaim-migrate @ 5583]
Christian Hammond <chipx86@chipx86.com>
parents:
5205
diff
changeset
|
1741 |
|
858
3de6e98e8898
[gaim-migrate @ 868]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
854
diff
changeset
|
1742 g_free(open_tag); |
|
3de6e98e8898
[gaim-migrate @ 868]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
854
diff
changeset
|
1743 cancel_bgcolor(NULL, c); |
| 1 | 1744 } |
| 1745 | |
|
5676
dae79aefac8d
[gaim-migrate @ 6094]
Christian Hammond <chipx86@chipx86.com>
parents:
5593
diff
changeset
|
1746 void show_fgcolor_dialog(GaimConversation *c, GtkWidget *color) |
| 1 | 1747 { |
|
5676
dae79aefac8d
[gaim-migrate @ 6094]
Christian Hammond <chipx86@chipx86.com>
parents:
5593
diff
changeset
|
1748 GaimGtkConversation *gtkconv; |
|
311
0a8b4edc4732
[gaim-migrate @ 321]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
308
diff
changeset
|
1749 GtkWidget *colorsel; |
|
5545
7a64114641c3
[gaim-migrate @ 5946]
Christian Hammond <chipx86@chipx86.com>
parents:
5498
diff
changeset
|
1750 GdkColor fgcolor; |
| 1 | 1751 |
|
4359
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
1752 gtkconv = GAIM_GTK_CONVERSATION(c); |
|
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
1753 |
|
5545
7a64114641c3
[gaim-migrate @ 5946]
Christian Hammond <chipx86@chipx86.com>
parents:
5498
diff
changeset
|
1754 gdk_color_parse(gaim_prefs_get_string("/gaim/gtk/conversations/fgcolor"), |
|
7a64114641c3
[gaim-migrate @ 5946]
Christian Hammond <chipx86@chipx86.com>
parents:
5498
diff
changeset
|
1755 &fgcolor); |
|
7a64114641c3
[gaim-migrate @ 5946]
Christian Hammond <chipx86@chipx86.com>
parents:
5498
diff
changeset
|
1756 |
|
2372
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
1757 if (color == NULL) { /* we came from the prefs */ |
|
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
1758 if (fgcseld) |
|
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
1759 return; |
|
2209
9b8b32ae3b41
[gaim-migrate @ 2219]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2143
diff
changeset
|
1760 |
|
657
4bbc103a3294
[gaim-migrate @ 667]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
654
diff
changeset
|
1761 fgcseld = gtk_color_selection_dialog_new(_("Select Text Color")); |
| 4198 | 1762 gtk_color_selection_set_current_color(GTK_COLOR_SELECTION |
| 1763 (GTK_COLOR_SELECTION_DIALOG(fgcseld)->colorsel), &fgcolor); | |
|
5314
1f901484599d
[gaim-migrate @ 5686]
Christian Hammond <chipx86@chipx86.com>
parents:
5294
diff
changeset
|
1764 g_signal_connect(G_OBJECT(fgcseld), "delete_event", |
|
4162
d3c8d2b40494
[gaim-migrate @ 4391]
Christian Hammond <chipx86@chipx86.com>
parents:
4142
diff
changeset
|
1765 G_CALLBACK(destroy_colorsel), (void *)1); |
|
5314
1f901484599d
[gaim-migrate @ 5686]
Christian Hammond <chipx86@chipx86.com>
parents:
5294
diff
changeset
|
1766 g_signal_connect(G_OBJECT(GTK_COLOR_SELECTION_DIALOG(fgcseld)->cancel_button), |
|
4162
d3c8d2b40494
[gaim-migrate @ 4391]
Christian Hammond <chipx86@chipx86.com>
parents:
4142
diff
changeset
|
1767 "clicked", G_CALLBACK(destroy_colorsel), (void *)1); |
|
5314
1f901484599d
[gaim-migrate @ 5686]
Christian Hammond <chipx86@chipx86.com>
parents:
5294
diff
changeset
|
1768 g_signal_connect(G_OBJECT(GTK_COLOR_SELECTION_DIALOG(fgcseld)->ok_button), "clicked", |
|
4162
d3c8d2b40494
[gaim-migrate @ 4391]
Christian Hammond <chipx86@chipx86.com>
parents:
4142
diff
changeset
|
1769 G_CALLBACK(apply_color_dlg), (void *)1); |
|
657
4bbc103a3294
[gaim-migrate @ 667]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
654
diff
changeset
|
1770 gtk_widget_realize(fgcseld); |
|
4bbc103a3294
[gaim-migrate @ 667]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
654
diff
changeset
|
1771 gtk_widget_show(fgcseld); |
|
4bbc103a3294
[gaim-migrate @ 667]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
654
diff
changeset
|
1772 gdk_window_raise(fgcseld->window); |
|
4bbc103a3294
[gaim-migrate @ 667]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
654
diff
changeset
|
1773 return; |
|
858
3de6e98e8898
[gaim-migrate @ 868]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
854
diff
changeset
|
1774 } |
|
3de6e98e8898
[gaim-migrate @ 868]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
854
diff
changeset
|
1775 |
|
4359
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
1776 if (!gtkconv->dialogs.fg_color) { |
|
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
1777 |
|
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
1778 gtkconv->dialogs.fg_color = gtk_color_selection_dialog_new(_("Select Text Color")); |
|
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
1779 colorsel = GTK_COLOR_SELECTION_DIALOG(gtkconv->dialogs.fg_color)->colorsel; |
| 4198 | 1780 gtk_color_selection_set_current_color(GTK_COLOR_SELECTION(colorsel), &fgcolor); |
| 4635 | 1781 g_object_set_data(G_OBJECT(colorsel), "gaim_conversation", c); |
|
2209
9b8b32ae3b41
[gaim-migrate @ 2219]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2143
diff
changeset
|
1782 |
|
5314
1f901484599d
[gaim-migrate @ 5686]
Christian Hammond <chipx86@chipx86.com>
parents:
5294
diff
changeset
|
1783 g_signal_connect(G_OBJECT(gtkconv->dialogs.fg_color), "delete_event", |
|
4162
d3c8d2b40494
[gaim-migrate @ 4391]
Christian Hammond <chipx86@chipx86.com>
parents:
4142
diff
changeset
|
1784 G_CALLBACK(delete_event_dialog), c); |
|
5314
1f901484599d
[gaim-migrate @ 5686]
Christian Hammond <chipx86@chipx86.com>
parents:
5294
diff
changeset
|
1785 g_signal_connect(G_OBJECT(GTK_COLOR_SELECTION_DIALOG(gtkconv->dialogs.fg_color)->ok_button), |
|
4162
d3c8d2b40494
[gaim-migrate @ 4391]
Christian Hammond <chipx86@chipx86.com>
parents:
4142
diff
changeset
|
1786 "clicked", G_CALLBACK(do_fgcolor), colorsel); |
|
5314
1f901484599d
[gaim-migrate @ 5686]
Christian Hammond <chipx86@chipx86.com>
parents:
5294
diff
changeset
|
1787 g_signal_connect(G_OBJECT |
|
4359
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
1788 (GTK_COLOR_SELECTION_DIALOG(gtkconv->dialogs.fg_color)->cancel_button), |
|
4162
d3c8d2b40494
[gaim-migrate @ 4391]
Christian Hammond <chipx86@chipx86.com>
parents:
4142
diff
changeset
|
1789 "clicked", G_CALLBACK(cancel_fgcolor), c); |
|
858
3de6e98e8898
[gaim-migrate @ 868]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
854
diff
changeset
|
1790 |
|
4359
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
1791 gtk_widget_realize(gtkconv->dialogs.fg_color); |
|
858
3de6e98e8898
[gaim-migrate @ 868]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
854
diff
changeset
|
1792 } |
|
3de6e98e8898
[gaim-migrate @ 868]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
854
diff
changeset
|
1793 |
|
4359
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
1794 gtk_widget_show(gtkconv->dialogs.fg_color); |
|
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
1795 gdk_window_raise(gtkconv->dialogs.fg_color->window); |
|
858
3de6e98e8898
[gaim-migrate @ 868]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
854
diff
changeset
|
1796 } |
|
3de6e98e8898
[gaim-migrate @ 868]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
854
diff
changeset
|
1797 |
|
5676
dae79aefac8d
[gaim-migrate @ 6094]
Christian Hammond <chipx86@chipx86.com>
parents:
5593
diff
changeset
|
1798 void show_bgcolor_dialog(GaimConversation *c, GtkWidget *color) |
|
858
3de6e98e8898
[gaim-migrate @ 868]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
854
diff
changeset
|
1799 { |
|
5676
dae79aefac8d
[gaim-migrate @ 6094]
Christian Hammond <chipx86@chipx86.com>
parents:
5593
diff
changeset
|
1800 GaimGtkConversation *gtkconv; |
|
858
3de6e98e8898
[gaim-migrate @ 868]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
854
diff
changeset
|
1801 GtkWidget *colorsel; |
|
5545
7a64114641c3
[gaim-migrate @ 5946]
Christian Hammond <chipx86@chipx86.com>
parents:
5498
diff
changeset
|
1802 GdkColor bgcolor; |
|
858
3de6e98e8898
[gaim-migrate @ 868]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
854
diff
changeset
|
1803 |
|
4359
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
1804 gtkconv = GAIM_GTK_CONVERSATION(c); |
|
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
1805 |
|
5545
7a64114641c3
[gaim-migrate @ 5946]
Christian Hammond <chipx86@chipx86.com>
parents:
5498
diff
changeset
|
1806 gdk_color_parse(gaim_prefs_get_string("/gaim/gtk/conversations/bgcolor"), |
|
7a64114641c3
[gaim-migrate @ 5946]
Christian Hammond <chipx86@chipx86.com>
parents:
5498
diff
changeset
|
1807 &bgcolor); |
|
7a64114641c3
[gaim-migrate @ 5946]
Christian Hammond <chipx86@chipx86.com>
parents:
5498
diff
changeset
|
1808 |
|
2372
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
1809 if (color == NULL) { /* we came from the prefs */ |
|
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
1810 if (bgcseld) |
|
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
1811 return; |
|
2209
9b8b32ae3b41
[gaim-migrate @ 2219]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2143
diff
changeset
|
1812 |
|
657
4bbc103a3294
[gaim-migrate @ 667]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
654
diff
changeset
|
1813 bgcseld = gtk_color_selection_dialog_new(_("Select Background Color")); |
| 4198 | 1814 gtk_color_selection_set_current_color(GTK_COLOR_SELECTION |
| 1815 (GTK_COLOR_SELECTION_DIALOG(bgcseld)->colorsel), &bgcolor); | |
|
5314
1f901484599d
[gaim-migrate @ 5686]
Christian Hammond <chipx86@chipx86.com>
parents:
5294
diff
changeset
|
1816 g_signal_connect(G_OBJECT(bgcseld), "delete_event", |
|
4162
d3c8d2b40494
[gaim-migrate @ 4391]
Christian Hammond <chipx86@chipx86.com>
parents:
4142
diff
changeset
|
1817 G_CALLBACK(destroy_colorsel), NULL); |
|
5314
1f901484599d
[gaim-migrate @ 5686]
Christian Hammond <chipx86@chipx86.com>
parents:
5294
diff
changeset
|
1818 g_signal_connect(G_OBJECT(GTK_COLOR_SELECTION_DIALOG(bgcseld)->cancel_button), |
|
4162
d3c8d2b40494
[gaim-migrate @ 4391]
Christian Hammond <chipx86@chipx86.com>
parents:
4142
diff
changeset
|
1819 "clicked", G_CALLBACK(destroy_colorsel), NULL); |
|
5314
1f901484599d
[gaim-migrate @ 5686]
Christian Hammond <chipx86@chipx86.com>
parents:
5294
diff
changeset
|
1820 g_signal_connect(G_OBJECT(GTK_COLOR_SELECTION_DIALOG(bgcseld)->ok_button), "clicked", |
|
4162
d3c8d2b40494
[gaim-migrate @ 4391]
Christian Hammond <chipx86@chipx86.com>
parents:
4142
diff
changeset
|
1821 G_CALLBACK(apply_color_dlg), (void *)2); |
|
657
4bbc103a3294
[gaim-migrate @ 667]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
654
diff
changeset
|
1822 gtk_widget_realize(bgcseld); |
|
4bbc103a3294
[gaim-migrate @ 667]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
654
diff
changeset
|
1823 gtk_widget_show(bgcseld); |
|
4bbc103a3294
[gaim-migrate @ 667]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
654
diff
changeset
|
1824 gdk_window_raise(bgcseld->window); |
|
4bbc103a3294
[gaim-migrate @ 667]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
654
diff
changeset
|
1825 return; |
|
4bbc103a3294
[gaim-migrate @ 667]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
654
diff
changeset
|
1826 } |
|
4bbc103a3294
[gaim-migrate @ 667]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
654
diff
changeset
|
1827 |
|
4359
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
1828 if (!gtkconv->dialogs.bg_color) { |
|
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
1829 |
|
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
1830 gtkconv->dialogs.bg_color = gtk_color_selection_dialog_new(_("Select Background Color")); |
|
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
1831 colorsel = GTK_COLOR_SELECTION_DIALOG(gtkconv->dialogs.bg_color)->colorsel; |
| 4198 | 1832 gtk_color_selection_set_current_color(GTK_COLOR_SELECTION(colorsel), &bgcolor); |
| 4635 | 1833 g_object_set_data(G_OBJECT(colorsel), "gaim_conversation", c); |
|
2209
9b8b32ae3b41
[gaim-migrate @ 2219]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2143
diff
changeset
|
1834 |
|
5314
1f901484599d
[gaim-migrate @ 5686]
Christian Hammond <chipx86@chipx86.com>
parents:
5294
diff
changeset
|
1835 g_signal_connect(G_OBJECT(gtkconv->dialogs.bg_color), "delete_event", |
|
4162
d3c8d2b40494
[gaim-migrate @ 4391]
Christian Hammond <chipx86@chipx86.com>
parents:
4142
diff
changeset
|
1836 G_CALLBACK(delete_event_dialog), c); |
|
5314
1f901484599d
[gaim-migrate @ 5686]
Christian Hammond <chipx86@chipx86.com>
parents:
5294
diff
changeset
|
1837 g_signal_connect(G_OBJECT(GTK_COLOR_SELECTION_DIALOG(gtkconv->dialogs.bg_color)->ok_button), |
|
4162
d3c8d2b40494
[gaim-migrate @ 4391]
Christian Hammond <chipx86@chipx86.com>
parents:
4142
diff
changeset
|
1838 "clicked", G_CALLBACK(do_bgcolor), colorsel); |
|
5314
1f901484599d
[gaim-migrate @ 5686]
Christian Hammond <chipx86@chipx86.com>
parents:
5294
diff
changeset
|
1839 g_signal_connect(G_OBJECT |
|
4359
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
1840 (GTK_COLOR_SELECTION_DIALOG(gtkconv->dialogs.bg_color)->cancel_button), |
|
4162
d3c8d2b40494
[gaim-migrate @ 4391]
Christian Hammond <chipx86@chipx86.com>
parents:
4142
diff
changeset
|
1841 "clicked", G_CALLBACK(cancel_bgcolor), c); |
|
858
3de6e98e8898
[gaim-migrate @ 868]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
854
diff
changeset
|
1842 |
|
4359
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
1843 gtk_widget_realize(gtkconv->dialogs.bg_color); |
|
311
0a8b4edc4732
[gaim-migrate @ 321]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
308
diff
changeset
|
1844 } |
| 1 | 1845 |
|
4359
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
1846 gtk_widget_show(gtkconv->dialogs.bg_color); |
|
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
1847 gdk_window_raise(gtkconv->dialogs.bg_color->window); |
| 1 | 1848 } |
| 1849 | |
| 1850 /*------------------------------------------------------------------------*/ | |
|
230
83dd297aa363
[gaim-migrate @ 240]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
229
diff
changeset
|
1851 /* Font Selection Dialog */ |
|
83dd297aa363
[gaim-migrate @ 240]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
229
diff
changeset
|
1852 /*------------------------------------------------------------------------*/ |
|
83dd297aa363
[gaim-migrate @ 240]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
229
diff
changeset
|
1853 |
|
5676
dae79aefac8d
[gaim-migrate @ 6094]
Christian Hammond <chipx86@chipx86.com>
parents:
5593
diff
changeset
|
1854 void cancel_font(GtkWidget *widget, GaimConversation *c) |
|
2372
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
1855 { |
|
5676
dae79aefac8d
[gaim-migrate @ 6094]
Christian Hammond <chipx86@chipx86.com>
parents:
5593
diff
changeset
|
1856 GaimGtkConversation *gtkconv; |
|
4359
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
1857 |
|
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
1858 gtkconv = GAIM_GTK_CONVERSATION(c); |
|
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
1859 |
| 4685 | 1860 if (gtkconv->toolbar.font && widget) { |
| 4635 | 1861 gtk_toggle_button_set_active( |
| 4685 | 1862 GTK_TOGGLE_BUTTON(gtkconv->toolbar.font), FALSE); |
|
311
0a8b4edc4732
[gaim-migrate @ 321]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
308
diff
changeset
|
1863 } |
|
4359
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
1864 |
| 5970 | 1865 if (gtkconv->dialogs.font) { |
| 1866 dialogwindows = g_list_remove(dialogwindows, gtkconv->dialogs.font); | |
| 1867 gtk_widget_destroy(gtkconv->dialogs.font); | |
| 1868 gtkconv->dialogs.font = NULL; | |
| 1869 } | |
|
230
83dd297aa363
[gaim-migrate @ 240]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
229
diff
changeset
|
1870 } |
|
83dd297aa363
[gaim-migrate @ 240]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
229
diff
changeset
|
1871 |
|
83dd297aa363
[gaim-migrate @ 240]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
229
diff
changeset
|
1872 void apply_font(GtkWidget *widget, GtkFontSelection *fontsel) |
|
83dd297aa363
[gaim-migrate @ 240]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
229
diff
changeset
|
1873 { |
|
83dd297aa363
[gaim-migrate @ 240]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
229
diff
changeset
|
1874 /* this could be expanded to include font size, weight, etc. |
|
83dd297aa363
[gaim-migrate @ 240]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
229
diff
changeset
|
1875 but for now only works with font face */ |
| 3473 | 1876 int i = 0; |
|
666
71ea550c22ac
[gaim-migrate @ 676]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
657
diff
changeset
|
1877 char *fontname; |
|
5676
dae79aefac8d
[gaim-migrate @ 6094]
Christian Hammond <chipx86@chipx86.com>
parents:
5593
diff
changeset
|
1878 GaimConversation *c = g_object_get_data(G_OBJECT(fontsel), |
| 4635 | 1879 "gaim_conversation"); |
|
2372
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
1880 |
|
5545
7a64114641c3
[gaim-migrate @ 5946]
Christian Hammond <chipx86@chipx86.com>
parents:
5498
diff
changeset
|
1881 fontname = gtk_font_selection_dialog_get_font_name(GTK_FONT_SELECTION_DIALOG(fontsel)); |
|
7a64114641c3
[gaim-migrate @ 5946]
Christian Hammond <chipx86@chipx86.com>
parents:
5498
diff
changeset
|
1882 |
|
2372
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
1883 if (c) { |
| 4635 | 1884 while(fontname[i] && !isdigit(fontname[i])) { |
| 3473 | 1885 i++; |
| 1886 } | |
| 1887 fontname[i] = 0; | |
|
4359
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
1888 gaim_gtk_set_font_face(GAIM_GTK_CONVERSATION(c), fontname); |
|
2372
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
1889 } else { |
|
5545
7a64114641c3
[gaim-migrate @ 5946]
Christian Hammond <chipx86@chipx86.com>
parents:
5498
diff
changeset
|
1890 char *c; |
|
7a64114641c3
[gaim-migrate @ 5946]
Christian Hammond <chipx86@chipx86.com>
parents:
5498
diff
changeset
|
1891 |
|
334
0fa651368776
[gaim-migrate @ 344]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
311
diff
changeset
|
1892 fontname = gtk_font_selection_dialog_get_font_name(GTK_FONT_SELECTION_DIALOG(fontsel)); |
|
5545
7a64114641c3
[gaim-migrate @ 5946]
Christian Hammond <chipx86@chipx86.com>
parents:
5498
diff
changeset
|
1893 |
|
7a64114641c3
[gaim-migrate @ 5946]
Christian Hammond <chipx86@chipx86.com>
parents:
5498
diff
changeset
|
1894 for (c = fontname; *c != '\0'; c++) { |
|
7a64114641c3
[gaim-migrate @ 5946]
Christian Hammond <chipx86@chipx86.com>
parents:
5498
diff
changeset
|
1895 if (isdigit(*c)) { |
|
7a64114641c3
[gaim-migrate @ 5946]
Christian Hammond <chipx86@chipx86.com>
parents:
5498
diff
changeset
|
1896 *(--c) = '\0'; |
|
7a64114641c3
[gaim-migrate @ 5946]
Christian Hammond <chipx86@chipx86.com>
parents:
5498
diff
changeset
|
1897 break; |
|
7a64114641c3
[gaim-migrate @ 5946]
Christian Hammond <chipx86@chipx86.com>
parents:
5498
diff
changeset
|
1898 } |
|
234
985635758c33
[gaim-migrate @ 244]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
231
diff
changeset
|
1899 } |
|
5545
7a64114641c3
[gaim-migrate @ 5946]
Christian Hammond <chipx86@chipx86.com>
parents:
5498
diff
changeset
|
1900 |
|
7a64114641c3
[gaim-migrate @ 5946]
Christian Hammond <chipx86@chipx86.com>
parents:
5498
diff
changeset
|
1901 gaim_prefs_set_string("/gaim/gtk/conversations/font_face", fontname); |
|
234
985635758c33
[gaim-migrate @ 244]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
231
diff
changeset
|
1902 } |
|
2372
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
1903 |
|
5545
7a64114641c3
[gaim-migrate @ 5946]
Christian Hammond <chipx86@chipx86.com>
parents:
5498
diff
changeset
|
1904 g_free(fontname); |
|
7a64114641c3
[gaim-migrate @ 5946]
Christian Hammond <chipx86@chipx86.com>
parents:
5498
diff
changeset
|
1905 |
|
311
0a8b4edc4732
[gaim-migrate @ 321]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
308
diff
changeset
|
1906 cancel_font(NULL, c); |
|
230
83dd297aa363
[gaim-migrate @ 240]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
229
diff
changeset
|
1907 } |
|
83dd297aa363
[gaim-migrate @ 240]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
229
diff
changeset
|
1908 |
|
2372
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
1909 void destroy_fontsel(GtkWidget *w, gpointer d) |
|
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
1910 { |
|
334
0fa651368776
[gaim-migrate @ 344]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
311
diff
changeset
|
1911 gtk_widget_destroy(fontseld); |
|
0fa651368776
[gaim-migrate @ 344]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
311
diff
changeset
|
1912 fontseld = NULL; |
|
0fa651368776
[gaim-migrate @ 344]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
311
diff
changeset
|
1913 } |
|
0fa651368776
[gaim-migrate @ 344]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
311
diff
changeset
|
1914 |
|
5676
dae79aefac8d
[gaim-migrate @ 6094]
Christian Hammond <chipx86@chipx86.com>
parents:
5593
diff
changeset
|
1915 void show_font_dialog(GaimConversation *c, GtkWidget *font) |
|
230
83dd297aa363
[gaim-migrate @ 240]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
229
diff
changeset
|
1916 { |
|
5676
dae79aefac8d
[gaim-migrate @ 6094]
Christian Hammond <chipx86@chipx86.com>
parents:
5593
diff
changeset
|
1917 GaimGtkConversation *gtkconv; |
| 3473 | 1918 char fonttif[128]; |
|
5545
7a64114641c3
[gaim-migrate @ 5946]
Christian Hammond <chipx86@chipx86.com>
parents:
5498
diff
changeset
|
1919 const char *fontface; |
|
4359
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
1920 |
|
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
1921 gtkconv = GAIM_GTK_CONVERSATION(c); |
|
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
1922 |
|
2372
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
1923 if (!font) { /* we came from the prefs dialog */ |
|
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
1924 if (fontseld) |
|
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
1925 return; |
|
5545
7a64114641c3
[gaim-migrate @ 5946]
Christian Hammond <chipx86@chipx86.com>
parents:
5498
diff
changeset
|
1926 |
|
350
fd3cc0a28d5d
[gaim-migrate @ 360]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
349
diff
changeset
|
1927 fontseld = gtk_font_selection_dialog_new(_("Select Font")); |
|
5545
7a64114641c3
[gaim-migrate @ 5946]
Christian Hammond <chipx86@chipx86.com>
parents:
5498
diff
changeset
|
1928 |
|
7a64114641c3
[gaim-migrate @ 5946]
Christian Hammond <chipx86@chipx86.com>
parents:
5498
diff
changeset
|
1929 fontface = gaim_prefs_get_string("/gaim/gtk/conversations/font_face"); |
|
7a64114641c3
[gaim-migrate @ 5946]
Christian Hammond <chipx86@chipx86.com>
parents:
5498
diff
changeset
|
1930 |
|
7a64114641c3
[gaim-migrate @ 5946]
Christian Hammond <chipx86@chipx86.com>
parents:
5498
diff
changeset
|
1931 if (fontface != NULL && *fontface != '\0') { |
| 3473 | 1932 g_snprintf(fonttif, sizeof(fonttif), "%s 12", fontface); |
|
2763
477a035d81e5
[gaim-migrate @ 2776]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2761
diff
changeset
|
1933 gtk_font_selection_dialog_set_font_name(GTK_FONT_SELECTION_DIALOG(fontseld), |
| 3473 | 1934 fonttif); |
|
2763
477a035d81e5
[gaim-migrate @ 2776]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2761
diff
changeset
|
1935 } else { |
|
477a035d81e5
[gaim-migrate @ 2776]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2761
diff
changeset
|
1936 gtk_font_selection_dialog_set_font_name(GTK_FONT_SELECTION_DIALOG(fontseld), |
| 3473 | 1937 DEFAULT_FONT_FACE " 12"); |
|
2763
477a035d81e5
[gaim-migrate @ 2776]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2761
diff
changeset
|
1938 } |
|
334
0fa651368776
[gaim-migrate @ 344]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
311
diff
changeset
|
1939 |
|
5314
1f901484599d
[gaim-migrate @ 5686]
Christian Hammond <chipx86@chipx86.com>
parents:
5294
diff
changeset
|
1940 g_signal_connect(G_OBJECT(fontseld), "delete_event", |
|
4162
d3c8d2b40494
[gaim-migrate @ 4391]
Christian Hammond <chipx86@chipx86.com>
parents:
4142
diff
changeset
|
1941 G_CALLBACK(destroy_fontsel), NULL); |
|
5314
1f901484599d
[gaim-migrate @ 5686]
Christian Hammond <chipx86@chipx86.com>
parents:
5294
diff
changeset
|
1942 g_signal_connect(G_OBJECT(GTK_FONT_SELECTION_DIALOG(fontseld)->cancel_button), |
|
4162
d3c8d2b40494
[gaim-migrate @ 4391]
Christian Hammond <chipx86@chipx86.com>
parents:
4142
diff
changeset
|
1943 "clicked", G_CALLBACK(destroy_fontsel), NULL); |
|
5314
1f901484599d
[gaim-migrate @ 5686]
Christian Hammond <chipx86@chipx86.com>
parents:
5294
diff
changeset
|
1944 g_signal_connect(G_OBJECT(GTK_FONT_SELECTION_DIALOG(fontseld)->ok_button), "clicked", |
|
4162
d3c8d2b40494
[gaim-migrate @ 4391]
Christian Hammond <chipx86@chipx86.com>
parents:
4142
diff
changeset
|
1945 G_CALLBACK(apply_font_dlg), fontseld); |
|
334
0fa651368776
[gaim-migrate @ 344]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
311
diff
changeset
|
1946 gtk_widget_realize(fontseld); |
|
0fa651368776
[gaim-migrate @ 344]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
311
diff
changeset
|
1947 gtk_widget_show(fontseld); |
|
0fa651368776
[gaim-migrate @ 344]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
311
diff
changeset
|
1948 gdk_window_raise(fontseld->window); |
|
0fa651368776
[gaim-migrate @ 344]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
311
diff
changeset
|
1949 return; |
|
0fa651368776
[gaim-migrate @ 344]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
311
diff
changeset
|
1950 } |
|
2372
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
1951 |
|
4359
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
1952 if (!gtkconv->dialogs.font) { |
|
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
1953 gtkconv->dialogs.font = gtk_font_selection_dialog_new(_("Select Font")); |
|
234
985635758c33
[gaim-migrate @ 244]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
231
diff
changeset
|
1954 |
| 4635 | 1955 g_object_set_data(G_OBJECT(gtkconv->dialogs.font), "gaim_conversation", c); |
|
4359
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
1956 |
|
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
1957 if (gtkconv->fontface[0]) { |
|
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
1958 g_snprintf(fonttif, sizeof(fonttif), "%s 12", gtkconv->fontface); |
|
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
1959 gtk_font_selection_dialog_set_font_name(GTK_FONT_SELECTION_DIALOG(gtkconv->dialogs.font), |
| 3473 | 1960 fonttif); |
|
2763
477a035d81e5
[gaim-migrate @ 2776]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2761
diff
changeset
|
1961 } else { |
|
4359
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
1962 gtk_font_selection_dialog_set_font_name(GTK_FONT_SELECTION_DIALOG(gtkconv->dialogs.font), |
| 3473 | 1963 DEFAULT_FONT_FACE); |
|
2763
477a035d81e5
[gaim-migrate @ 2776]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2761
diff
changeset
|
1964 } |
|
2372
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
1965 |
|
5314
1f901484599d
[gaim-migrate @ 5686]
Christian Hammond <chipx86@chipx86.com>
parents:
5294
diff
changeset
|
1966 g_signal_connect(G_OBJECT(gtkconv->dialogs.font), "delete_event", |
|
4162
d3c8d2b40494
[gaim-migrate @ 4391]
Christian Hammond <chipx86@chipx86.com>
parents:
4142
diff
changeset
|
1967 G_CALLBACK(delete_event_dialog), c); |
|
5314
1f901484599d
[gaim-migrate @ 5686]
Christian Hammond <chipx86@chipx86.com>
parents:
5294
diff
changeset
|
1968 g_signal_connect(G_OBJECT(GTK_FONT_SELECTION_DIALOG(gtkconv->dialogs.font)->ok_button), |
|
4359
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
1969 "clicked", G_CALLBACK(apply_font), gtkconv->dialogs.font); |
|
5314
1f901484599d
[gaim-migrate @ 5686]
Christian Hammond <chipx86@chipx86.com>
parents:
5294
diff
changeset
|
1970 g_signal_connect(G_OBJECT(GTK_FONT_SELECTION_DIALOG(gtkconv->dialogs.font)->cancel_button), |
|
4162
d3c8d2b40494
[gaim-migrate @ 4391]
Christian Hammond <chipx86@chipx86.com>
parents:
4142
diff
changeset
|
1971 "clicked", G_CALLBACK(cancel_font), c); |
|
2372
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
1972 |
|
4359
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
1973 gtk_widget_realize(gtkconv->dialogs.font); |
|
2372
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
1974 |
|
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
1975 } |
|
4359
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
1976 |
|
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
1977 gtk_widget_show(gtkconv->dialogs.font); |
|
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
1978 gdk_window_raise(gtkconv->dialogs.font->window); |
|
230
83dd297aa363
[gaim-migrate @ 240]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
229
diff
changeset
|
1979 } |
|
83dd297aa363
[gaim-migrate @ 240]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
229
diff
changeset
|
1980 |
|
83dd297aa363
[gaim-migrate @ 240]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
229
diff
changeset
|
1981 /*------------------------------------------------------------------------*/ |
| 1 | 1982 /* The dialog for new away messages */ |
| 1983 /*------------------------------------------------------------------------*/ | |
| 1984 | |
|
1213
1bdb08cc5d59
[gaim-migrate @ 1223]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1210
diff
changeset
|
1985 static struct away_message *save_away_message(struct create_away *ca) |
| 717 | 1986 { |
| 1987 struct away_message *am; | |
| 1988 gchar *away_message; | |
|
2372
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
1989 |
|
832
0142b4c66394
[gaim-migrate @ 842]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
825
diff
changeset
|
1990 if (!ca->mess) |
|
0142b4c66394
[gaim-migrate @ 842]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
825
diff
changeset
|
1991 am = g_new0(struct away_message, 1); |
|
2851
6eb5bf5089f0
[gaim-migrate @ 2864]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2827
diff
changeset
|
1992 else { |
|
832
0142b4c66394
[gaim-migrate @ 842]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
825
diff
changeset
|
1993 am = ca->mess; |
|
2851
6eb5bf5089f0
[gaim-migrate @ 2864]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2827
diff
changeset
|
1994 } |
| 1387 | 1995 |
|
6465
fb64cc87bc96
[gaim-migrate @ 6974]
Christian Hammond <chipx86@chipx86.com>
parents:
6431
diff
changeset
|
1996 |
| 717 | 1997 g_snprintf(am->name, sizeof(am->name), "%s", gtk_entry_get_text(GTK_ENTRY(ca->entry))); |
| 4119 | 1998 away_message = gtk_text_view_get_text(GTK_TEXT_VIEW(ca->text), FALSE); |
| 717 | 1999 |
| 2000 g_snprintf(am->message, sizeof(am->message), "%s", away_message); | |
| 2001 g_free(away_message); | |
| 2002 | |
|
832
0142b4c66394
[gaim-migrate @ 842]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
825
diff
changeset
|
2003 if (!ca->mess) { |
|
1213
1bdb08cc5d59
[gaim-migrate @ 1223]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1210
diff
changeset
|
2004 away_messages = g_slist_insert_sorted(away_messages, am, sort_awaymsg_list); |
|
832
0142b4c66394
[gaim-migrate @ 842]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
825
diff
changeset
|
2005 } |
|
0142b4c66394
[gaim-migrate @ 842]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
825
diff
changeset
|
2006 |
|
5560
b7319c094153
[gaim-migrate @ 5961]
Christian Hammond <chipx86@chipx86.com>
parents:
5551
diff
changeset
|
2007 do_away_menu(NULL); |
| 6065 | 2008 gaim_status_sync(); |
|
2372
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
2009 |
|
1213
1bdb08cc5d59
[gaim-migrate @ 1223]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1210
diff
changeset
|
2010 return am; |
|
1bdb08cc5d59
[gaim-migrate @ 1223]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1210
diff
changeset
|
2011 } |
|
1bdb08cc5d59
[gaim-migrate @ 1223]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1210
diff
changeset
|
2012 |
| 1387 | 2013 int check_away_mess(struct create_away *ca, int type) |
| 2014 { | |
| 4630 | 2015 char *msg; |
|
2372
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
2016 if ((strlen(gtk_entry_get_text(GTK_ENTRY(ca->entry))) == 0) && (type == 1)) { |
| 1387 | 2017 /* We shouldn't allow a blank title */ |
|
5436
ad445074d239
[gaim-migrate @ 5818]
Christian Hammond <chipx86@chipx86.com>
parents:
5411
diff
changeset
|
2018 gaim_notify_error(NULL, NULL, |
|
ad445074d239
[gaim-migrate @ 5818]
Christian Hammond <chipx86@chipx86.com>
parents:
5411
diff
changeset
|
2019 _("You cannot save an away message with a " |
|
ad445074d239
[gaim-migrate @ 5818]
Christian Hammond <chipx86@chipx86.com>
parents:
5411
diff
changeset
|
2020 "blank title"), |
|
ad445074d239
[gaim-migrate @ 5818]
Christian Hammond <chipx86@chipx86.com>
parents:
5411
diff
changeset
|
2021 _("Please give the message a title, or choose " |
|
ad445074d239
[gaim-migrate @ 5818]
Christian Hammond <chipx86@chipx86.com>
parents:
5411
diff
changeset
|
2022 "\"Use\" to use without saving.")); |
| 1387 | 2023 return 0; |
| 2024 } | |
| 2025 | |
| 4630 | 2026 msg = gtk_text_view_get_text(GTK_TEXT_VIEW(ca->text), FALSE); |
| 2027 | |
| 2028 if (!msg && (type <= 1)) { | |
| 1387 | 2029 /* We shouldn't allow a blank message */ |
|
5436
ad445074d239
[gaim-migrate @ 5818]
Christian Hammond <chipx86@chipx86.com>
parents:
5411
diff
changeset
|
2030 gaim_notify_error(NULL, NULL, |
|
ad445074d239
[gaim-migrate @ 5818]
Christian Hammond <chipx86@chipx86.com>
parents:
5411
diff
changeset
|
2031 _("You cannot create an empty away message"), NULL); |
| 1387 | 2032 return 0; |
| 2033 } | |
| 2034 | |
| 4630 | 2035 g_free(msg); |
| 2036 | |
| 1387 | 2037 return 1; |
| 2038 } | |
| 2039 | |
|
1213
1bdb08cc5d59
[gaim-migrate @ 1223]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1210
diff
changeset
|
2040 void save_away_mess(GtkWidget *widget, struct create_away *ca) |
|
1bdb08cc5d59
[gaim-migrate @ 1223]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1210
diff
changeset
|
2041 { |
| 1387 | 2042 if (!check_away_mess(ca, 1)) |
| 2043 return; | |
| 2044 | |
|
1213
1bdb08cc5d59
[gaim-migrate @ 1223]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1210
diff
changeset
|
2045 save_away_message(ca); |
| 717 | 2046 destroy_dialog(NULL, ca->window); |
|
1213
1bdb08cc5d59
[gaim-migrate @ 1223]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1210
diff
changeset
|
2047 g_free(ca); |
|
1bdb08cc5d59
[gaim-migrate @ 1223]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1210
diff
changeset
|
2048 } |
|
1bdb08cc5d59
[gaim-migrate @ 1223]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1210
diff
changeset
|
2049 |
|
1bdb08cc5d59
[gaim-migrate @ 1223]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1210
diff
changeset
|
2050 void use_away_mess(GtkWidget *widget, struct create_away *ca) |
|
1bdb08cc5d59
[gaim-migrate @ 1223]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1210
diff
changeset
|
2051 { |
|
1bdb08cc5d59
[gaim-migrate @ 1223]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1210
diff
changeset
|
2052 static struct away_message am; |
|
1bdb08cc5d59
[gaim-migrate @ 1223]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1210
diff
changeset
|
2053 gchar *away_message; |
|
2372
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
2054 |
| 1387 | 2055 if (!check_away_mess(ca, 0)) |
| 2056 return; | |
|
1213
1bdb08cc5d59
[gaim-migrate @ 1223]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1210
diff
changeset
|
2057 |
|
1bdb08cc5d59
[gaim-migrate @ 1223]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1210
diff
changeset
|
2058 g_snprintf(am.name, sizeof(am.name), "%s", gtk_entry_get_text(GTK_ENTRY(ca->entry))); |
| 4119 | 2059 away_message = gtk_text_view_get_text(GTK_TEXT_VIEW(ca->text), FALSE); |
|
1213
1bdb08cc5d59
[gaim-migrate @ 1223]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1210
diff
changeset
|
2060 |
|
1bdb08cc5d59
[gaim-migrate @ 1223]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1210
diff
changeset
|
2061 g_snprintf(am.message, sizeof(am.message), "%s", away_message); |
|
1bdb08cc5d59
[gaim-migrate @ 1223]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1210
diff
changeset
|
2062 g_free(away_message); |
|
1bdb08cc5d59
[gaim-migrate @ 1223]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1210
diff
changeset
|
2063 |
|
1bdb08cc5d59
[gaim-migrate @ 1223]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1210
diff
changeset
|
2064 do_away_message(NULL, &am); |
|
1bdb08cc5d59
[gaim-migrate @ 1223]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1210
diff
changeset
|
2065 |
|
1bdb08cc5d59
[gaim-migrate @ 1223]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1210
diff
changeset
|
2066 destroy_dialog(NULL, ca->window); |
|
1bdb08cc5d59
[gaim-migrate @ 1223]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1210
diff
changeset
|
2067 g_free(ca); |
|
1bdb08cc5d59
[gaim-migrate @ 1223]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1210
diff
changeset
|
2068 } |
|
1bdb08cc5d59
[gaim-migrate @ 1223]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1210
diff
changeset
|
2069 |
|
1bdb08cc5d59
[gaim-migrate @ 1223]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1210
diff
changeset
|
2070 void su_away_mess(GtkWidget *widget, struct create_away *ca) |
|
1bdb08cc5d59
[gaim-migrate @ 1223]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1210
diff
changeset
|
2071 { |
| 1387 | 2072 if (!check_away_mess(ca, 1)) |
| 2073 return; | |
|
1213
1bdb08cc5d59
[gaim-migrate @ 1223]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1210
diff
changeset
|
2074 do_away_message(NULL, save_away_message(ca)); |
|
1bdb08cc5d59
[gaim-migrate @ 1223]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1210
diff
changeset
|
2075 destroy_dialog(NULL, ca->window); |
|
1bdb08cc5d59
[gaim-migrate @ 1223]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1210
diff
changeset
|
2076 g_free(ca); |
| 717 | 2077 } |
|
2372
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
2078 |
| 1 | 2079 void create_away_mess(GtkWidget *widget, void *dummy) |
| 2080 { | |
| 439 | 2081 GtkWidget *hbox; |
| 1 | 2082 GtkWidget *titlebox; |
| 2083 GtkWidget *tbox; | |
| 2084 GtkWidget *label; | |
| 439 | 2085 GtkWidget *frame; |
| 2086 GtkWidget *fbox; | |
| 441 | 2087 GtkWidget *button; |
| 1 | 2088 |
|
2372
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
2089 struct create_away *ca = g_new0(struct create_away, 1); |
| 1185 | 2090 |
| 1 | 2091 /* Set up window */ |
|
2725
f3c094e78609
[gaim-migrate @ 2738]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2681
diff
changeset
|
2092 GAIM_DIALOG(ca->window); |
| 4635 | 2093 gtk_widget_set_size_request(ca->window, -1, 250); |
| 2094 gtk_container_set_border_width(GTK_CONTAINER(ca->window), 5); | |
| 4074 | 2095 gtk_window_set_role(GTK_WINDOW(ca->window), "away_mess"); |
| 4703 | 2096 gtk_window_set_title(GTK_WINDOW(ca->window), _("New away message")); |
|
5314
1f901484599d
[gaim-migrate @ 5686]
Christian Hammond <chipx86@chipx86.com>
parents:
5294
diff
changeset
|
2097 g_signal_connect(G_OBJECT(ca->window), "delete_event", |
|
4162
d3c8d2b40494
[gaim-migrate @ 4391]
Christian Hammond <chipx86@chipx86.com>
parents:
4142
diff
changeset
|
2098 G_CALLBACK(destroy_dialog), ca->window); |
|
1213
1bdb08cc5d59
[gaim-migrate @ 1223]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1210
diff
changeset
|
2099 gtk_widget_realize(ca->window); |
| 1185 | 2100 |
| 2101 tbox = gtk_vbox_new(FALSE, 5); | |
| 2102 gtk_container_add(GTK_CONTAINER(ca->window), tbox); | |
| 439 | 2103 |
| 2104 frame = gtk_frame_new(_("New away message")); | |
| 1185 | 2105 gtk_box_pack_start(GTK_BOX(tbox), frame, TRUE, TRUE, 0); |
|
1213
1bdb08cc5d59
[gaim-migrate @ 1223]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1210
diff
changeset
|
2106 |
| 1172 | 2107 fbox = gtk_vbox_new(FALSE, 5); |
|
1224
0bbe3aaa6a3e
[gaim-migrate @ 1234]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1216
diff
changeset
|
2108 gtk_container_set_border_width(GTK_CONTAINER(fbox), 5); |
| 1185 | 2109 gtk_container_add(GTK_CONTAINER(frame), fbox); |
| 2110 | |
| 2111 titlebox = gtk_hbox_new(FALSE, 5); | |
|
1213
1bdb08cc5d59
[gaim-migrate @ 1223]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1210
diff
changeset
|
2112 gtk_box_pack_start(GTK_BOX(fbox), titlebox, FALSE, FALSE, 0); |
|
1bdb08cc5d59
[gaim-migrate @ 1223]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1210
diff
changeset
|
2113 |
|
350
fd3cc0a28d5d
[gaim-migrate @ 360]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
349
diff
changeset
|
2114 label = gtk_label_new(_("Away title: ")); |
| 1172 | 2115 gtk_box_pack_start(GTK_BOX(titlebox), label, FALSE, FALSE, 0); |
| 1185 | 2116 |
| 1 | 2117 ca->entry = gtk_entry_new(); |
| 1172 | 2118 gtk_box_pack_start(GTK_BOX(titlebox), ca->entry, TRUE, TRUE, 0); |
|
1213
1bdb08cc5d59
[gaim-migrate @ 1223]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1210
diff
changeset
|
2119 gtk_widget_grab_focus(ca->entry); |
| 1 | 2120 |
| 4119 | 2121 frame = gtk_frame_new(NULL); |
| 2122 gtk_frame_set_shadow_type(GTK_FRAME(frame), GTK_SHADOW_IN); | |
| 2123 gtk_box_pack_start(GTK_BOX(fbox), frame, TRUE, TRUE, 0); | |
| 5024 | 2124 |
| 4119 | 2125 ca->text = gtk_text_view_new(); |
| 5105 | 2126 gtk_text_view_set_wrap_mode(GTK_TEXT_VIEW(ca->text), GTK_WRAP_WORD_CHAR); |
| 5024 | 2127 |
| 7002 | 2128 #ifdef USE_GTKSPELL |
| 2129 if (gaim_prefs_get_bool("/gaim/gtk/conversations/spellcheck")) | |
| 2130 gtkspell_new_attach(GTK_TEXT_VIEW(ca->text), NULL, NULL); | |
| 2131 #endif | |
| 2132 | |
| 4119 | 2133 gtk_container_add(GTK_CONTAINER(frame), ca->text); |
| 5024 | 2134 |
| 3374 | 2135 if (dummy) { |
| 2136 struct away_message *amt; | |
| 2137 GtkTreeIter iter; | |
| 2138 int pos = 0; | |
| 2139 GtkListStore *ls = GTK_LIST_STORE(gtk_tree_view_get_model(GTK_TREE_VIEW(dummy))); | |
| 2140 GtkTreeSelection *sel = gtk_tree_view_get_selection(GTK_TREE_VIEW(dummy)); | |
| 2141 GValue val = { 0, }; | |
| 4119 | 2142 GtkTextIter start; |
| 2143 GtkTextBuffer *buffer; | |
| 3374 | 2144 |
|
3716
d7e83b4db191
[gaim-migrate @ 3849]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
3671
diff
changeset
|
2145 if (! gtk_tree_selection_get_selected (sel, (GtkTreeModel**)&ls, &iter)) |
| 3374 | 2146 return; |
|
3716
d7e83b4db191
[gaim-migrate @ 3849]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
3671
diff
changeset
|
2147 gtk_tree_model_get_value (GTK_TREE_MODEL(ls), &iter, 1, &val); |
| 3374 | 2148 amt = g_value_get_pointer (&val); |
| 2149 gtk_entry_set_text(GTK_ENTRY(ca->entry), amt->name); | |
| 4119 | 2150 buffer = gtk_text_view_get_buffer(GTK_TEXT_VIEW(ca->text)); |
| 2151 gtk_text_buffer_get_iter_at_offset(buffer, &start, pos); | |
| 2152 gtk_text_buffer_insert(buffer, &start, amt->message, strlen(amt->message)); | |
| 2153 | |
| 3374 | 2154 ca->mess = amt; |
| 2155 } | |
|
832
0142b4c66394
[gaim-migrate @ 842]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
825
diff
changeset
|
2156 |
|
1213
1bdb08cc5d59
[gaim-migrate @ 1223]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1210
diff
changeset
|
2157 hbox = gtk_hbox_new(FALSE, 5); |
|
1bdb08cc5d59
[gaim-migrate @ 1223]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1210
diff
changeset
|
2158 gtk_box_pack_start(GTK_BOX(tbox), hbox, FALSE, FALSE, 0); |
| 5024 | 2159 |
| 2160 button = gaim_pixbuf_button_from_stock(_("Save"), GTK_STOCK_SAVE, GAIM_BUTTON_HORIZONTAL); | |
|
5314
1f901484599d
[gaim-migrate @ 5686]
Christian Hammond <chipx86@chipx86.com>
parents:
5294
diff
changeset
|
2161 g_signal_connect(G_OBJECT(button), "clicked", G_CALLBACK(save_away_mess), ca); |
| 4092 | 2162 gtk_box_pack_end(GTK_BOX(hbox), button, FALSE, FALSE, 0); |
| 2163 | |
| 5024 | 2164 button = gaim_pixbuf_button_from_stock(_("Save & Use"), GTK_STOCK_OK, GAIM_BUTTON_HORIZONTAL); |
|
5314
1f901484599d
[gaim-migrate @ 5686]
Christian Hammond <chipx86@chipx86.com>
parents:
5294
diff
changeset
|
2165 g_signal_connect(G_OBJECT(button), "clicked", G_CALLBACK(su_away_mess), ca); |
|
1213
1bdb08cc5d59
[gaim-migrate @ 1223]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1210
diff
changeset
|
2166 gtk_box_pack_end(GTK_BOX(hbox), button, FALSE, FALSE, 0); |
|
2372
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
2167 |
| 5024 | 2168 button = gaim_pixbuf_button_from_stock(_("Use"), GTK_STOCK_EXECUTE, GAIM_BUTTON_HORIZONTAL); |
|
5314
1f901484599d
[gaim-migrate @ 5686]
Christian Hammond <chipx86@chipx86.com>
parents:
5294
diff
changeset
|
2169 g_signal_connect(G_OBJECT(button), "clicked", G_CALLBACK(use_away_mess), ca); |
|
1213
1bdb08cc5d59
[gaim-migrate @ 1223]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1210
diff
changeset
|
2170 gtk_box_pack_end(GTK_BOX(hbox), button, FALSE, FALSE, 0); |
|
2372
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
2171 |
| 5024 | 2172 button = gaim_pixbuf_button_from_stock(_("Cancel"), GTK_STOCK_CANCEL, GAIM_BUTTON_HORIZONTAL); |
|
5314
1f901484599d
[gaim-migrate @ 5686]
Christian Hammond <chipx86@chipx86.com>
parents:
5294
diff
changeset
|
2173 g_signal_connect(G_OBJECT(button), "clicked", G_CALLBACK(destroy_dialog), ca->window); |
|
1213
1bdb08cc5d59
[gaim-migrate @ 1223]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1210
diff
changeset
|
2174 gtk_box_pack_end(GTK_BOX(hbox), button, FALSE, FALSE, 0); |
|
2372
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
2175 |
| 5024 | 2176 gtk_widget_show_all(ca->window); |
| 1 | 2177 } |
| 555 | 2178 |
| 2179 /* smiley dialog */ | |
| 2180 | |
|
5676
dae79aefac8d
[gaim-migrate @ 6094]
Christian Hammond <chipx86@chipx86.com>
parents:
5593
diff
changeset
|
2181 void close_smiley_dialog(GtkWidget *widget, GaimConversation *c) |
|
2372
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
2182 { |
|
5676
dae79aefac8d
[gaim-migrate @ 6094]
Christian Hammond <chipx86@chipx86.com>
parents:
5593
diff
changeset
|
2183 GaimGtkConversation *gtkconv; |
|
4359
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
2184 |
|
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
2185 gtkconv = GAIM_GTK_CONVERSATION(c); |
|
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
2186 |
|
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
2187 if (gtkconv->toolbar.smiley) { |
| 4635 | 2188 gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(gtkconv->toolbar.smiley), |
|
4359
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
2189 FALSE); |
| 570 | 2190 } |
| 5275 | 2191 if(gtkconv->dialogs.smiley) { |
| 2192 dialogwindows = g_list_remove(dialogwindows, gtkconv->dialogs.smiley); | |
| 2193 gtk_widget_destroy(gtkconv->dialogs.smiley); | |
| 2194 gtkconv->dialogs.smiley = NULL; | |
| 2195 } | |
| 555 | 2196 } |
| 2197 | |
|
5676
dae79aefac8d
[gaim-migrate @ 6094]
Christian Hammond <chipx86@chipx86.com>
parents:
5593
diff
changeset
|
2198 void insert_smiley_text(GtkWidget *widget, GaimConversation *c) |
| 555 | 2199 { |
|
5676
dae79aefac8d
[gaim-migrate @ 6094]
Christian Hammond <chipx86@chipx86.com>
parents:
5593
diff
changeset
|
2200 GaimGtkConversation *gtkconv; |
| 4667 | 2201 char *smiley_text = g_object_get_data(G_OBJECT(widget), "smiley_text"); |
| 5275 | 2202 GtkTextMark *select_mark, *insert_mark; |
| 2203 GtkTextIter select_iter, insert_iter; | |
|
4359
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
2204 |
|
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
2205 gtkconv = GAIM_GTK_CONVERSATION(c); |
|
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
2206 |
| 5275 | 2207 select_mark = gtk_text_buffer_get_selection_bound(gtkconv->entry_buffer); |
| 2208 insert_mark = gtk_text_buffer_get_insert(gtkconv->entry_buffer); | |
| 2209 | |
| 2210 if(insert_mark != select_mark) { /* there is text selected */ | |
| 2211 gtk_text_buffer_get_iter_at_mark(gtkconv->entry_buffer, &select_iter, select_mark); | |
| 2212 gtk_text_buffer_get_iter_at_mark(gtkconv->entry_buffer, &insert_iter, insert_mark); | |
| 2213 gtk_text_buffer_delete(gtkconv->entry_buffer, &select_iter, &insert_iter); | |
| 2214 } | |
| 2215 | |
| 4667 | 2216 gtk_text_buffer_insert_at_cursor(gtkconv->entry_buffer, smiley_text, -1); |
| 555 | 2217 close_smiley_dialog(NULL, c); |
| 2218 } | |
|
579
7b501c39a6ee
[gaim-migrate @ 589]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
577
diff
changeset
|
2219 |
|
5676
dae79aefac8d
[gaim-migrate @ 6094]
Christian Hammond <chipx86@chipx86.com>
parents:
5593
diff
changeset
|
2220 static void add_smiley(GaimConversation *c, GtkWidget *table, int row, int col, char *filename, char *face) |
| 4034 | 2221 { |
|
4061
890b4f1318df
[gaim-migrate @ 4271]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
4060
diff
changeset
|
2222 GtkWidget *image; |
| 4034 | 2223 GtkWidget *button; |
|
5676
dae79aefac8d
[gaim-migrate @ 6094]
Christian Hammond <chipx86@chipx86.com>
parents:
5593
diff
changeset
|
2224 GaimGtkConversation *gtkconv = GAIM_GTK_CONVERSATION(c); |
| 4667 | 2225 |
| 2226 image = gtk_image_new_from_file(filename); | |
| 2227 button = gtk_button_new(); | |
| 2228 gtk_container_add(GTK_CONTAINER(button), image); | |
| 2229 g_object_set_data(G_OBJECT(button), "smiley_text", face); | |
| 2230 g_signal_connect(G_OBJECT(button), "clicked", G_CALLBACK(insert_smiley_text), c); | |
| 2231 | |
| 2232 gtk_tooltips_set_tip(gtkconv->tooltips, button, face, NULL); | |
| 2233 | |
| 2234 gtk_table_attach_defaults(GTK_TABLE(table), button, col, col+1, row, row+1); | |
| 4034 | 2235 |
| 2236 /* these look really weird with borders */ | |
| 2237 gtk_button_set_relief(GTK_BUTTON(button), GTK_RELIEF_NONE); | |
| 4667 | 2238 |
| 2239 gtk_widget_show(button); | |
| 2240 } | |
| 2241 | |
| 2242 static gboolean smiley_is_unique(GSList *list, GtkIMHtmlSmiley *smiley) { | |
| 2243 while(list) { | |
| 2244 GtkIMHtmlSmiley *cur = list->data; | |
| 2245 if(!strcmp(cur->file, smiley->file)) | |
| 2246 return FALSE; | |
| 2247 list = list->next; | |
| 2248 } | |
| 2249 return TRUE; | |
| 4034 | 2250 } |
| 2251 | |
|
5676
dae79aefac8d
[gaim-migrate @ 6094]
Christian Hammond <chipx86@chipx86.com>
parents:
5593
diff
changeset
|
2252 void show_smiley_dialog(GaimConversation *c, GtkWidget *widget) |
| 555 | 2253 { |
|
5676
dae79aefac8d
[gaim-migrate @ 6094]
Christian Hammond <chipx86@chipx86.com>
parents:
5593
diff
changeset
|
2254 GaimGtkConversation *gtkconv; |
| 555 | 2255 GtkWidget *dialog; |
| 4667 | 2256 GtkWidget *smiley_table = NULL; |
| 2257 GSList *smileys, *unique_smileys = NULL; | |
| 2258 int width; | |
| 2259 int row = 0, col = 0; | |
| 555 | 2260 |
|
4359
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
2261 gtkconv = GAIM_GTK_CONVERSATION(c); |
|
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
2262 |
|
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
2263 if (gtkconv->dialogs.smiley) |
|
558
f1b8f03db83f
[gaim-migrate @ 568]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
555
diff
changeset
|
2264 return; |
|
579
7b501c39a6ee
[gaim-migrate @ 589]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
577
diff
changeset
|
2265 |
| 4667 | 2266 if(c->account) |
|
5943
a4f2aba0848d
[gaim-migrate @ 6384]
Christian Hammond <chipx86@chipx86.com>
parents:
5925
diff
changeset
|
2267 smileys = get_proto_smileys( |
|
a4f2aba0848d
[gaim-migrate @ 6384]
Christian Hammond <chipx86@chipx86.com>
parents:
5925
diff
changeset
|
2268 gaim_account_get_protocol(gaim_conversation_get_account(c))); |
| 4667 | 2269 else |
|
5205
fefad67de2c7
[gaim-migrate @ 5573]
Christian Hammond <chipx86@chipx86.com>
parents:
5136
diff
changeset
|
2270 smileys = get_proto_smileys(GAIM_PROTO_DEFAULT); |
| 4667 | 2271 |
| 2272 while(smileys) { | |
| 2273 GtkIMHtmlSmiley *smiley = smileys->data; | |
| 2274 if(!smiley->hidden) { | |
| 2275 if(smiley_is_unique(unique_smileys, smiley)) | |
| 2276 unique_smileys = g_slist_append(unique_smileys, smiley); | |
| 2277 } | |
| 2278 smileys = smileys->next; | |
| 2279 } | |
| 2280 | |
| 2281 | |
| 2282 width = floor(sqrt(g_slist_length(unique_smileys))); | |
|
2372
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
2283 |
|
2725
f3c094e78609
[gaim-migrate @ 2738]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2681
diff
changeset
|
2284 GAIM_DIALOG(dialog); |
| 4635 | 2285 gtk_window_set_resizable(GTK_WINDOW(dialog), FALSE); |
| 4074 | 2286 gtk_window_set_role(GTK_WINDOW(dialog), "smiley_dialog"); |
| 934 | 2287 gtk_window_set_position(GTK_WINDOW(dialog), GTK_WIN_POS_MOUSE); |
|
579
7b501c39a6ee
[gaim-migrate @ 589]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
577
diff
changeset
|
2288 |
| 4667 | 2289 smiley_table = gtk_table_new(width, width, TRUE); |
| 555 | 2290 |
| 2291 /* pack buttons */ | |
| 4667 | 2292 |
| 2293 while(unique_smileys) { | |
| 2294 GtkIMHtmlSmiley *smiley = unique_smileys->data; | |
| 2295 if(!smiley->hidden) { | |
| 2296 add_smiley(c, smiley_table, row, col, smiley->file, smiley->smile); | |
| 2297 if(++col >= width) { | |
| 2298 col = 0; | |
| 2299 row++; | |
| 2300 } | |
| 2301 } | |
| 2302 unique_smileys = unique_smileys->next; | |
| 2303 } | |
| 2304 | |
| 2305 gtk_container_add(GTK_CONTAINER(dialog), smiley_table); | |
| 2306 | |
| 2307 gtk_widget_show(smiley_table); | |
| 2308 | |
|
579
7b501c39a6ee
[gaim-migrate @ 589]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
577
diff
changeset
|
2309 gtk_container_set_border_width(GTK_CONTAINER(dialog), 5); |
| 555 | 2310 |
| 605 | 2311 /* connect signals */ |
| 4635 | 2312 g_object_set_data(G_OBJECT(dialog), "dialog_type", "smiley dialog"); |
|
4359
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
2313 g_signal_connect(G_OBJECT(dialog), "delete_event", |
|
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
2314 G_CALLBACK(delete_event_dialog), c); |
|
2372
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
2315 |
| 555 | 2316 /* show everything */ |
|
567
102afb84ce45
[gaim-migrate @ 577]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
558
diff
changeset
|
2317 gtk_window_set_title(GTK_WINDOW(dialog), _("Smile!")); |
| 584 | 2318 gtk_widget_show_all(dialog); |
| 555 | 2319 |
|
4359
5fb47ec9bfe4
[gaim-migrate @ 4625]
Christian Hammond <chipx86@chipx86.com>
parents:
4350
diff
changeset
|
2320 gtkconv->dialogs.smiley = dialog; |
|
2372
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
2321 |
| 555 | 2322 return; |
|
558
f1b8f03db83f
[gaim-migrate @ 568]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
555
diff
changeset
|
2323 } |
|
710
efd72a117875
[gaim-migrate @ 720]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
699
diff
changeset
|
2324 |
|
6329
418cc72136d1
[gaim-migrate @ 6828]
Christian Hammond <chipx86@chipx86.com>
parents:
6328
diff
changeset
|
2325 static void |
| 6695 | 2326 alias_chat_cb(GaimBlistChat *chat, const char *new_alias) |
| 5234 | 2327 { |
|
6329
418cc72136d1
[gaim-migrate @ 6828]
Christian Hammond <chipx86@chipx86.com>
parents:
6328
diff
changeset
|
2328 gaim_blist_alias_chat(chat, new_alias); |
|
418cc72136d1
[gaim-migrate @ 6828]
Christian Hammond <chipx86@chipx86.com>
parents:
6328
diff
changeset
|
2329 gaim_blist_save(); |
| 5234 | 2330 } |
| 2331 | |
|
6329
418cc72136d1
[gaim-migrate @ 6828]
Christian Hammond <chipx86@chipx86.com>
parents:
6328
diff
changeset
|
2332 void |
| 6695 | 2333 alias_dialog_blist_chat(GaimBlistChat *chat) |
|
6329
418cc72136d1
[gaim-migrate @ 6828]
Christian Hammond <chipx86@chipx86.com>
parents:
6328
diff
changeset
|
2334 { |
|
418cc72136d1
[gaim-migrate @ 6828]
Christian Hammond <chipx86@chipx86.com>
parents:
6328
diff
changeset
|
2335 gaim_request_input(NULL, _("Alias Chat"), _("Alias chat"), |
|
418cc72136d1
[gaim-migrate @ 6828]
Christian Hammond <chipx86@chipx86.com>
parents:
6328
diff
changeset
|
2336 _("Please enter an aliased name for this chat."), |
|
418cc72136d1
[gaim-migrate @ 6828]
Christian Hammond <chipx86@chipx86.com>
parents:
6328
diff
changeset
|
2337 chat->alias, FALSE, FALSE, |
|
418cc72136d1
[gaim-migrate @ 6828]
Christian Hammond <chipx86@chipx86.com>
parents:
6328
diff
changeset
|
2338 _("OK"), G_CALLBACK(alias_chat_cb), |
|
418cc72136d1
[gaim-migrate @ 6828]
Christian Hammond <chipx86@chipx86.com>
parents:
6328
diff
changeset
|
2339 _("Cancel"), NULL, chat); |
| 5234 | 2340 } |
| 2341 | |
|
6327
493eed80869c
[gaim-migrate @ 6826]
Christian Hammond <chipx86@chipx86.com>
parents:
6322
diff
changeset
|
2342 static void |
| 6695 | 2343 alias_buddy_cb(GaimBuddy *buddy, GaimRequestFields *fields) |
|
6327
493eed80869c
[gaim-migrate @ 6826]
Christian Hammond <chipx86@chipx86.com>
parents:
6322
diff
changeset
|
2344 { |
|
493eed80869c
[gaim-migrate @ 6826]
Christian Hammond <chipx86@chipx86.com>
parents:
6322
diff
changeset
|
2345 const char *alias; |
|
493eed80869c
[gaim-migrate @ 6826]
Christian Hammond <chipx86@chipx86.com>
parents:
6322
diff
changeset
|
2346 |
|
493eed80869c
[gaim-migrate @ 6826]
Christian Hammond <chipx86@chipx86.com>
parents:
6322
diff
changeset
|
2347 alias = gaim_request_fields_get_string(fields, "alias"); |
|
493eed80869c
[gaim-migrate @ 6826]
Christian Hammond <chipx86@chipx86.com>
parents:
6322
diff
changeset
|
2348 |
|
493eed80869c
[gaim-migrate @ 6826]
Christian Hammond <chipx86@chipx86.com>
parents:
6322
diff
changeset
|
2349 gaim_blist_alias_buddy(buddy, |
|
493eed80869c
[gaim-migrate @ 6826]
Christian Hammond <chipx86@chipx86.com>
parents:
6322
diff
changeset
|
2350 (alias != NULL && *alias != '\0') ? alias : NULL); |
|
493eed80869c
[gaim-migrate @ 6826]
Christian Hammond <chipx86@chipx86.com>
parents:
6322
diff
changeset
|
2351 serv_alias_buddy(buddy); |
|
493eed80869c
[gaim-migrate @ 6826]
Christian Hammond <chipx86@chipx86.com>
parents:
6322
diff
changeset
|
2352 gaim_blist_save(); |
|
493eed80869c
[gaim-migrate @ 6826]
Christian Hammond <chipx86@chipx86.com>
parents:
6322
diff
changeset
|
2353 } |
|
493eed80869c
[gaim-migrate @ 6826]
Christian Hammond <chipx86@chipx86.com>
parents:
6322
diff
changeset
|
2354 |
|
5050
dfec167391a5
[gaim-migrate @ 5398]
Christian Hammond <chipx86@chipx86.com>
parents:
5024
diff
changeset
|
2355 void |
| 6695 | 2356 alias_dialog_bud(GaimBuddy *b) |
|
1397
d2799e0672ee
[gaim-migrate @ 1407]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1396
diff
changeset
|
2357 { |
|
6327
493eed80869c
[gaim-migrate @ 6826]
Christian Hammond <chipx86@chipx86.com>
parents:
6322
diff
changeset
|
2358 GaimRequestFields *fields; |
|
493eed80869c
[gaim-migrate @ 6826]
Christian Hammond <chipx86@chipx86.com>
parents:
6322
diff
changeset
|
2359 GaimRequestFieldGroup *group; |
|
493eed80869c
[gaim-migrate @ 6826]
Christian Hammond <chipx86@chipx86.com>
parents:
6322
diff
changeset
|
2360 GaimRequestField *field; |
|
493eed80869c
[gaim-migrate @ 6826]
Christian Hammond <chipx86@chipx86.com>
parents:
6322
diff
changeset
|
2361 |
|
493eed80869c
[gaim-migrate @ 6826]
Christian Hammond <chipx86@chipx86.com>
parents:
6322
diff
changeset
|
2362 fields = gaim_request_fields_new(); |
|
493eed80869c
[gaim-migrate @ 6826]
Christian Hammond <chipx86@chipx86.com>
parents:
6322
diff
changeset
|
2363 |
|
493eed80869c
[gaim-migrate @ 6826]
Christian Hammond <chipx86@chipx86.com>
parents:
6322
diff
changeset
|
2364 group = gaim_request_field_group_new(NULL); |
|
493eed80869c
[gaim-migrate @ 6826]
Christian Hammond <chipx86@chipx86.com>
parents:
6322
diff
changeset
|
2365 gaim_request_fields_add_group(fields, group); |
|
493eed80869c
[gaim-migrate @ 6826]
Christian Hammond <chipx86@chipx86.com>
parents:
6322
diff
changeset
|
2366 |
|
493eed80869c
[gaim-migrate @ 6826]
Christian Hammond <chipx86@chipx86.com>
parents:
6322
diff
changeset
|
2367 field = gaim_request_field_string_new("screenname", _("_Screenname"), |
|
493eed80869c
[gaim-migrate @ 6826]
Christian Hammond <chipx86@chipx86.com>
parents:
6322
diff
changeset
|
2368 b->name, FALSE); |
|
7049
167a92baeae6
[gaim-migrate @ 7612]
Christian Hammond <chipx86@chipx86.com>
parents:
7002
diff
changeset
|
2369 gaim_request_field_string_set_editable(field, FALSE); |
|
6327
493eed80869c
[gaim-migrate @ 6826]
Christian Hammond <chipx86@chipx86.com>
parents:
6322
diff
changeset
|
2370 gaim_request_field_group_add_field(group, field); |
|
493eed80869c
[gaim-migrate @ 6826]
Christian Hammond <chipx86@chipx86.com>
parents:
6322
diff
changeset
|
2371 |
|
493eed80869c
[gaim-migrate @ 6826]
Christian Hammond <chipx86@chipx86.com>
parents:
6322
diff
changeset
|
2372 field = gaim_request_field_string_new("alias", _("_Alias"), |
|
493eed80869c
[gaim-migrate @ 6826]
Christian Hammond <chipx86@chipx86.com>
parents:
6322
diff
changeset
|
2373 b->alias, FALSE); |
|
493eed80869c
[gaim-migrate @ 6826]
Christian Hammond <chipx86@chipx86.com>
parents:
6322
diff
changeset
|
2374 gaim_request_field_group_add_field(group, field); |
|
493eed80869c
[gaim-migrate @ 6826]
Christian Hammond <chipx86@chipx86.com>
parents:
6322
diff
changeset
|
2375 |
|
493eed80869c
[gaim-migrate @ 6826]
Christian Hammond <chipx86@chipx86.com>
parents:
6322
diff
changeset
|
2376 gaim_request_fields(NULL, _("Alias Buddy"), |
|
493eed80869c
[gaim-migrate @ 6826]
Christian Hammond <chipx86@chipx86.com>
parents:
6322
diff
changeset
|
2377 _("Alias buddy"), |
|
493eed80869c
[gaim-migrate @ 6826]
Christian Hammond <chipx86@chipx86.com>
parents:
6322
diff
changeset
|
2378 _("Please enter an aliased name for the person " |
|
493eed80869c
[gaim-migrate @ 6826]
Christian Hammond <chipx86@chipx86.com>
parents:
6322
diff
changeset
|
2379 "below, or rename this contact in your buddy list."), |
|
493eed80869c
[gaim-migrate @ 6826]
Christian Hammond <chipx86@chipx86.com>
parents:
6322
diff
changeset
|
2380 fields, |
|
493eed80869c
[gaim-migrate @ 6826]
Christian Hammond <chipx86@chipx86.com>
parents:
6322
diff
changeset
|
2381 _("OK"), G_CALLBACK(alias_buddy_cb), |
|
493eed80869c
[gaim-migrate @ 6826]
Christian Hammond <chipx86@chipx86.com>
parents:
6322
diff
changeset
|
2382 _("Cancel"), NULL, |
|
493eed80869c
[gaim-migrate @ 6826]
Christian Hammond <chipx86@chipx86.com>
parents:
6322
diff
changeset
|
2383 b); |
|
1397
d2799e0672ee
[gaim-migrate @ 1407]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1396
diff
changeset
|
2384 } |
|
1477
1d0fc2622b29
[gaim-migrate @ 1487]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1456
diff
changeset
|
2385 |
|
2372
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
2386 static gboolean dont_destroy(gpointer a, gpointer b, gpointer c) |
|
1488
55246babdeb3
[gaim-migrate @ 1498]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1484
diff
changeset
|
2387 { |
|
1477
1d0fc2622b29
[gaim-migrate @ 1487]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1456
diff
changeset
|
2388 return TRUE; |
|
1d0fc2622b29
[gaim-migrate @ 1487]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1456
diff
changeset
|
2389 } |
|
1d0fc2622b29
[gaim-migrate @ 1487]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1456
diff
changeset
|
2390 |
|
1488
55246babdeb3
[gaim-migrate @ 1498]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1484
diff
changeset
|
2391 static void do_save_log(GtkWidget *w, GtkWidget *filesel) |
|
55246babdeb3
[gaim-migrate @ 1498]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1484
diff
changeset
|
2392 { |
|
3716
d7e83b4db191
[gaim-migrate @ 3849]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
3671
diff
changeset
|
2393 const char *file; |
|
1488
55246babdeb3
[gaim-migrate @ 1498]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1484
diff
changeset
|
2394 char path[PATHSIZE]; |
|
55246babdeb3
[gaim-migrate @ 1498]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1484
diff
changeset
|
2395 char buf[BUF_LONG]; |
|
55246babdeb3
[gaim-migrate @ 1498]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1484
diff
changeset
|
2396 char error[BUF_LEN]; |
|
55246babdeb3
[gaim-migrate @ 1498]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1484
diff
changeset
|
2397 FILE *fp_old, *fp_new; |
|
55246babdeb3
[gaim-migrate @ 1498]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1484
diff
changeset
|
2398 char filename[PATHSIZE]; |
|
55246babdeb3
[gaim-migrate @ 1498]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1484
diff
changeset
|
2399 char *name; |
|
1722
1edc8b545d6f
[gaim-migrate @ 1732]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1710
diff
changeset
|
2400 char *tmp; |
|
1488
55246babdeb3
[gaim-migrate @ 1498]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1484
diff
changeset
|
2401 |
| 4635 | 2402 name = g_object_get_data(G_OBJECT(filesel), "name"); |
|
1722
1edc8b545d6f
[gaim-migrate @ 1732]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1710
diff
changeset
|
2403 tmp = gaim_user_dir(); |
| 3630 | 2404 g_snprintf(filename, PATHSIZE, "%s" G_DIR_SEPARATOR_S "logs" G_DIR_SEPARATOR_S "%s%s", tmp, |
|
2372
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
2405 name ? normalize(name) : "system", name ? ".log" : ""); |
|
1488
55246babdeb3
[gaim-migrate @ 1498]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1484
diff
changeset
|
2406 |
|
3716
d7e83b4db191
[gaim-migrate @ 3849]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
3671
diff
changeset
|
2407 file = (const char*)gtk_file_selection_get_filename(GTK_FILE_SELECTION(filesel)); |
|
2372
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
2408 strncpy(path, file, PATHSIZE - 1); |
| 5966 | 2409 if (gaim_gtk_check_if_dir(path, GTK_FILE_SELECTION(filesel))) |
|
1488
55246babdeb3
[gaim-migrate @ 1498]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1484
diff
changeset
|
2410 return; |
|
55246babdeb3
[gaim-migrate @ 1498]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1484
diff
changeset
|
2411 |
|
55246babdeb3
[gaim-migrate @ 1498]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1484
diff
changeset
|
2412 if ((fp_new = fopen(path, "w")) == NULL) { |
|
2372
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
2413 g_snprintf(error, BUF_LONG, |
| 3427 | 2414 _("Couldn't write to %s."), path); |
|
5436
ad445074d239
[gaim-migrate @ 5818]
Christian Hammond <chipx86@chipx86.com>
parents:
5411
diff
changeset
|
2415 gaim_notify_error(NULL, NULL, error, strerror(errno)); |
|
1488
55246babdeb3
[gaim-migrate @ 1498]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1484
diff
changeset
|
2416 return; |
|
55246babdeb3
[gaim-migrate @ 1498]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1484
diff
changeset
|
2417 } |
|
55246babdeb3
[gaim-migrate @ 1498]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1484
diff
changeset
|
2418 |
|
55246babdeb3
[gaim-migrate @ 1498]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1484
diff
changeset
|
2419 if ((fp_old = fopen(filename, "r")) == NULL) { |
|
2372
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
2420 g_snprintf(error, BUF_LONG, |
| 3427 | 2421 _("Couldn't write to %s."), filename); |
|
5436
ad445074d239
[gaim-migrate @ 5818]
Christian Hammond <chipx86@chipx86.com>
parents:
5411
diff
changeset
|
2422 gaim_notify_error(NULL, NULL, error, strerror(errno)); |
|
1488
55246babdeb3
[gaim-migrate @ 1498]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1484
diff
changeset
|
2423 fclose(fp_new); |
|
55246babdeb3
[gaim-migrate @ 1498]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1484
diff
changeset
|
2424 return; |
|
55246babdeb3
[gaim-migrate @ 1498]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1484
diff
changeset
|
2425 } |
|
55246babdeb3
[gaim-migrate @ 1498]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1484
diff
changeset
|
2426 |
|
55246babdeb3
[gaim-migrate @ 1498]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1484
diff
changeset
|
2427 while (fgets(buf, BUF_LONG, fp_old)) |
|
55246babdeb3
[gaim-migrate @ 1498]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1484
diff
changeset
|
2428 fputs(buf, fp_new); |
|
55246babdeb3
[gaim-migrate @ 1498]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1484
diff
changeset
|
2429 fclose(fp_old); |
|
55246babdeb3
[gaim-migrate @ 1498]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1484
diff
changeset
|
2430 fclose(fp_new); |
|
55246babdeb3
[gaim-migrate @ 1498]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1484
diff
changeset
|
2431 |
|
55246babdeb3
[gaim-migrate @ 1498]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1484
diff
changeset
|
2432 gtk_widget_destroy(filesel); |
|
55246babdeb3
[gaim-migrate @ 1498]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1484
diff
changeset
|
2433 |
|
55246babdeb3
[gaim-migrate @ 1498]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1484
diff
changeset
|
2434 return; |
|
55246babdeb3
[gaim-migrate @ 1498]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1484
diff
changeset
|
2435 } |
|
55246babdeb3
[gaim-migrate @ 1498]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1484
diff
changeset
|
2436 |
|
2372
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
2437 static void show_save_log(GtkWidget *w, gchar *name) |
|
1488
55246babdeb3
[gaim-migrate @ 1498]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1484
diff
changeset
|
2438 { |
|
55246babdeb3
[gaim-migrate @ 1498]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1484
diff
changeset
|
2439 GtkWidget *filesel; |
|
55246babdeb3
[gaim-migrate @ 1498]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1484
diff
changeset
|
2440 gchar buf[BUF_LEN]; |
|
55246babdeb3
[gaim-migrate @ 1498]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1484
diff
changeset
|
2441 |
| 3630 | 2442 g_snprintf(buf, BUF_LEN - 1, "%s" G_DIR_SEPARATOR_S "%s%s", gaim_home_dir(), |
|
2372
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
2443 name ? normalize(name) : "system", name ? ".log" : ""); |
|
1488
55246babdeb3
[gaim-migrate @ 1498]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1484
diff
changeset
|
2444 |
| 4703 | 2445 filesel = gtk_file_selection_new(_("Save Log File")); |
|
5314
1f901484599d
[gaim-migrate @ 5686]
Christian Hammond <chipx86@chipx86.com>
parents:
5294
diff
changeset
|
2446 g_signal_connect(G_OBJECT(filesel), "delete_event", |
|
4162
d3c8d2b40494
[gaim-migrate @ 4391]
Christian Hammond <chipx86@chipx86.com>
parents:
4142
diff
changeset
|
2447 G_CALLBACK(destroy_dialog), filesel); |
|
1488
55246babdeb3
[gaim-migrate @ 1498]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1484
diff
changeset
|
2448 |
|
55246babdeb3
[gaim-migrate @ 1498]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1484
diff
changeset
|
2449 gtk_file_selection_hide_fileop_buttons(GTK_FILE_SELECTION(filesel)); |
|
55246babdeb3
[gaim-migrate @ 1498]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1484
diff
changeset
|
2450 gtk_file_selection_set_filename(GTK_FILE_SELECTION(filesel), buf); |
|
5314
1f901484599d
[gaim-migrate @ 5686]
Christian Hammond <chipx86@chipx86.com>
parents:
5294
diff
changeset
|
2451 g_signal_connect(G_OBJECT(GTK_FILE_SELECTION(filesel)->ok_button), |
|
4162
d3c8d2b40494
[gaim-migrate @ 4391]
Christian Hammond <chipx86@chipx86.com>
parents:
4142
diff
changeset
|
2452 "clicked", G_CALLBACK(do_save_log), filesel); |
|
5314
1f901484599d
[gaim-migrate @ 5686]
Christian Hammond <chipx86@chipx86.com>
parents:
5294
diff
changeset
|
2453 g_signal_connect(G_OBJECT(GTK_FILE_SELECTION(filesel)->cancel_button), |
|
4162
d3c8d2b40494
[gaim-migrate @ 4391]
Christian Hammond <chipx86@chipx86.com>
parents:
4142
diff
changeset
|
2454 "clicked", G_CALLBACK(destroy_dialog), filesel); |
| 4635 | 2455 g_object_set_data(G_OBJECT(filesel), "name", name); |
|
1488
55246babdeb3
[gaim-migrate @ 1498]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1484
diff
changeset
|
2456 |
|
55246babdeb3
[gaim-migrate @ 1498]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1484
diff
changeset
|
2457 gtk_widget_realize(filesel); |
|
55246babdeb3
[gaim-migrate @ 1498]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1484
diff
changeset
|
2458 gtk_widget_show(filesel); |
|
55246babdeb3
[gaim-migrate @ 1498]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1484
diff
changeset
|
2459 |
|
55246babdeb3
[gaim-migrate @ 1498]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1484
diff
changeset
|
2460 return; |
|
55246babdeb3
[gaim-migrate @ 1498]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1484
diff
changeset
|
2461 } |
|
55246babdeb3
[gaim-migrate @ 1498]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1484
diff
changeset
|
2462 |
|
2372
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
2463 static void do_clear_log_file(GtkWidget *w, gchar *name) |
|
1488
55246babdeb3
[gaim-migrate @ 1498]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1484
diff
changeset
|
2464 { |
|
55246babdeb3
[gaim-migrate @ 1498]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1484
diff
changeset
|
2465 gchar buf[256]; |
|
55246babdeb3
[gaim-migrate @ 1498]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1484
diff
changeset
|
2466 gchar filename[256]; |
|
55246babdeb3
[gaim-migrate @ 1498]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1484
diff
changeset
|
2467 GtkWidget *window; |
|
1722
1edc8b545d6f
[gaim-migrate @ 1732]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1710
diff
changeset
|
2468 char *tmp; |
|
1edc8b545d6f
[gaim-migrate @ 1732]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1710
diff
changeset
|
2469 |
|
1edc8b545d6f
[gaim-migrate @ 1732]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1710
diff
changeset
|
2470 tmp = gaim_user_dir(); |
| 3630 | 2471 g_snprintf(filename, 256, "%s" G_DIR_SEPARATOR_S "logs" G_DIR_SEPARATOR_S "%s%s", tmp, |
|
2372
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
2472 name ? normalize(name) : "system", name ? ".log" : ""); |
|
1488
55246babdeb3
[gaim-migrate @ 1498]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1484
diff
changeset
|
2473 |
|
55246babdeb3
[gaim-migrate @ 1498]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1484
diff
changeset
|
2474 if ((remove(filename)) == -1) { |
| 3427 | 2475 g_snprintf(buf, 256, _("Couldn't remove file %s." ), filename); |
|
5436
ad445074d239
[gaim-migrate @ 5818]
Christian Hammond <chipx86@chipx86.com>
parents:
5411
diff
changeset
|
2476 gaim_notify_error(NULL, NULL, buf, strerror(errno)); |
|
1488
55246babdeb3
[gaim-migrate @ 1498]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1484
diff
changeset
|
2477 } |
|
55246babdeb3
[gaim-migrate @ 1498]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1484
diff
changeset
|
2478 |
| 4635 | 2479 window = g_object_get_data(G_OBJECT(w), "log_window"); |
|
1488
55246babdeb3
[gaim-migrate @ 1498]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1484
diff
changeset
|
2480 destroy_dialog(NULL, window); |
|
55246babdeb3
[gaim-migrate @ 1498]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1484
diff
changeset
|
2481 } |
|
55246babdeb3
[gaim-migrate @ 1498]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1484
diff
changeset
|
2482 |
|
2372
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
2483 static void show_clear_log(GtkWidget *w, gchar *name) |
|
1488
55246babdeb3
[gaim-migrate @ 1498]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1484
diff
changeset
|
2484 { |
|
55246babdeb3
[gaim-migrate @ 1498]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1484
diff
changeset
|
2485 GtkWidget *window; |
|
55246babdeb3
[gaim-migrate @ 1498]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1484
diff
changeset
|
2486 GtkWidget *box; |
|
55246babdeb3
[gaim-migrate @ 1498]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1484
diff
changeset
|
2487 GtkWidget *hbox; |
|
55246babdeb3
[gaim-migrate @ 1498]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1484
diff
changeset
|
2488 GtkWidget *button; |
|
55246babdeb3
[gaim-migrate @ 1498]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1484
diff
changeset
|
2489 GtkWidget *label; |
|
55246babdeb3
[gaim-migrate @ 1498]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1484
diff
changeset
|
2490 GtkWidget *hsep; |
|
55246babdeb3
[gaim-migrate @ 1498]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1484
diff
changeset
|
2491 |
|
2725
f3c094e78609
[gaim-migrate @ 2738]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2681
diff
changeset
|
2492 GAIM_DIALOG(window); |
| 4074 | 2493 gtk_window_set_role(GTK_WINDOW(window), "dialog"); |
| 4703 | 2494 gtk_window_set_title(GTK_WINDOW(window), _("Clear Log")); |
|
1488
55246babdeb3
[gaim-migrate @ 1498]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1484
diff
changeset
|
2495 gtk_container_set_border_width(GTK_CONTAINER(window), 10); |
| 4635 | 2496 gtk_window_set_resizable(GTK_WINDOW(window), TRUE); |
|
5314
1f901484599d
[gaim-migrate @ 5686]
Christian Hammond <chipx86@chipx86.com>
parents:
5294
diff
changeset
|
2497 g_signal_connect(G_OBJECT(window), "delete_event", G_CALLBACK(destroy_dialog), window); |
|
1488
55246babdeb3
[gaim-migrate @ 1498]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1484
diff
changeset
|
2498 gtk_widget_realize(window); |
|
55246babdeb3
[gaim-migrate @ 1498]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1484
diff
changeset
|
2499 |
|
55246babdeb3
[gaim-migrate @ 1498]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1484
diff
changeset
|
2500 box = gtk_vbox_new(FALSE, 5); |
|
55246babdeb3
[gaim-migrate @ 1498]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1484
diff
changeset
|
2501 gtk_container_add(GTK_CONTAINER(window), box); |
|
55246babdeb3
[gaim-migrate @ 1498]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1484
diff
changeset
|
2502 |
|
55246babdeb3
[gaim-migrate @ 1498]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1484
diff
changeset
|
2503 label = gtk_label_new(_("Really clear log?")); |
|
55246babdeb3
[gaim-migrate @ 1498]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1484
diff
changeset
|
2504 gtk_box_pack_start(GTK_BOX(box), label, TRUE, TRUE, 15); |
|
55246babdeb3
[gaim-migrate @ 1498]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1484
diff
changeset
|
2505 |
|
55246babdeb3
[gaim-migrate @ 1498]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1484
diff
changeset
|
2506 hsep = gtk_hseparator_new(); |
|
55246babdeb3
[gaim-migrate @ 1498]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1484
diff
changeset
|
2507 gtk_box_pack_start(GTK_BOX(box), hsep, FALSE, FALSE, 0); |
|
55246babdeb3
[gaim-migrate @ 1498]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1484
diff
changeset
|
2508 |
|
55246babdeb3
[gaim-migrate @ 1498]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1484
diff
changeset
|
2509 hbox = gtk_hbox_new(FALSE, 0); |
|
2372
2927c2c26fe6
[gaim-migrate @ 2385]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2370
diff
changeset
|
2510 gtk_box_pack_start(GTK_BOX(box), hbox, FALSE, FALSE, 0); |
| 5024 | 2511 |
| 2512 button = gaim_pixbuf_button_from_stock(_("OK"), GTK_STOCK_OK, GAIM_BUTTON_HORIZONTAL); | |
| 4635 | 2513 g_object_set_data(G_OBJECT(button), "log_window", g_object_get_data(G_OBJECT(w), |
| 2514 "log_window")); | |
|
5314
1f901484599d
[gaim-migrate @ 5686]
Christian Hammond <chipx86@chipx86.com>
parents:
5294
diff
changeset
|
2515 g_signal_connect(G_OBJECT(button), "clicked", G_CALLBACK(do_clear_log_file), name); |
|
1f901484599d
[gaim-migrate @ 5686]
Christian Hammond <chipx86@chipx86.com>
parents:
5294
diff
changeset
|
2516 g_signal_connect(G_OBJECT(button), "clicked", G_CALLBACK(destroy_dialog), window); |
|
1488
55246babdeb3
[gaim-migrate @ 1498]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1484
diff
changeset
|
2517 gtk_box_pack_end(GTK_BOX(hbox), button, FALSE, FALSE, 5); |
| 5024 | 2518 |
| 2519 button = gaim_pixbuf_button_from_stock(_("Cancel"), GTK_STOCK_CANCEL, GAIM_BUTTON_HORIZONTAL); | |
|
5314
1f901484599d
[gaim-migrate @ 5686]
Christian Hammond <chipx86@chipx86.com>
parents:
5294
diff
changeset
|
2520 g_signal_connect(G_OBJECT(button), "clicked", G_CALLBACK(destroy_dialog), window); |
|
1488
55246babdeb3
[gaim-migrate @ 1498]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1484
diff
changeset
|
2521 gtk_box_pack_end(GTK_BOX(hbox), button, FALSE, FALSE, 5); |
|
55246babdeb3
[gaim-migrate @ 1498]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1484
diff
changeset
|
2522 |
|
55246babdeb3
[gaim-migrate @ 1498]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1484
diff
changeset
|
2523 gtk_widget_show_all(window); |
|
55246babdeb3
[gaim-migrate @ 1498]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1484
diff
changeset
|
2524 |
|
55246babdeb3
[gaim-migrate @ 1498]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1484
diff
changeset
|
2525 return; |
|
55246babdeb3
[gaim-migrate @ 1498]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1484
diff
changeset
|
2526 } |
|
55246babdeb3
[gaim-migrate @ 1498]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1484
diff
changeset
|
2527 |
| 4635 | 2528 static void log_show_convo(struct view_log *view) |
|
1477
1d0fc2622b29
[gaim-migrate @ 1487]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1456
diff
changeset
|
2529 { |
|
1d0fc2622b29
[gaim-migrate @ 1487]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1456
diff
changeset
|
2530 gchar buf[BUF_LONG]; |
|
1d0fc2622b29
[gaim-migrate @ 1487]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1456
diff
changeset
|
2531 FILE *fp; |
| 2570 | 2532 char filename[256]; |
| 2533 int i=0; | |
| 2534 GString *string; | |
| 2602 | 2535 guint block; |
| 2536 | |
|
1477
1d0fc2622b29
[gaim-migrate @ 1487]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1456
diff
changeset
|
2537 string = g_string_new(""); |
|
1d0fc2622b29
[gaim-migrate @ 1487]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1456
diff
changeset
|
2538 |
|
2621
f8b02cf4af94
[gaim-migrate @ 2634]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2613
diff
changeset
|
2539 if (view->name) { |
|
1634
d029dc28a61e
[gaim-migrate @ 1644]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1535
diff
changeset
|
2540 char *tmp = gaim_user_dir(); |
| 3630 | 2541 g_snprintf(filename, 256, "%s" G_DIR_SEPARATOR_S "logs" G_DIR_SEPARATOR_S "%s.log", tmp, normalize(view->name)); |
|
1634
d029dc28a61e
[gaim-migrate @ 1644]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1535
diff
changeset
|
2542 } else { |
|
d029dc28a61e
[gaim-migrate @ 1644]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1535
diff
changeset
|
2543 char *tmp = gaim_user_dir(); |
| 3630 | 2544 g_snprintf(filename, 256, "%s" G_DIR_SEPARATOR_S "logs" G_DIR_SEPARATOR_S "system", tmp); |
|
1634
d029dc28a61e
[gaim-migrate @ 1644]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1535
diff
changeset
|
2545 } |
|
1477
1d0fc2622b29
[gaim-migrate @ 1487]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1456
diff
changeset
|
2546 if ((fp = fopen(filename, "r")) == NULL) { |
|
4923
e96261d0dba8
[gaim-migrate @ 5257]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
4918
diff
changeset
|
2547 if (view->name) { |
|
e96261d0dba8
[gaim-migrate @ 5257]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
4918
diff
changeset
|
2548 g_snprintf(buf, BUF_LONG, _("Couldn't open log file %s."), filename); |
|
5436
ad445074d239
[gaim-migrate @ 5818]
Christian Hammond <chipx86@chipx86.com>
parents:
5411
diff
changeset
|
2549 gaim_notify_error(NULL, NULL, buf, strerror(errno)); |
|
4923
e96261d0dba8
[gaim-migrate @ 5257]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
4918
diff
changeset
|
2550 } |
|
e96261d0dba8
[gaim-migrate @ 5257]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
4918
diff
changeset
|
2551 /* If the system log doesn't exist.. no message just show empty system log window. |
|
e96261d0dba8
[gaim-migrate @ 5257]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
4918
diff
changeset
|
2552 That way user knows that the log is empty :) |
|
e96261d0dba8
[gaim-migrate @ 5257]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
4918
diff
changeset
|
2553 */ |
|
1477
1d0fc2622b29
[gaim-migrate @ 1487]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1456
diff
changeset
|
2554 return; |
|
1d0fc2622b29
[gaim-migrate @ 1487]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1456
diff
changeset
|
2555 } |
|
1d0fc2622b29
[gaim-migrate @ 1487]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1456
diff
changeset
|
2556 |
|
2621
f8b02cf4af94
[gaim-migrate @ 2634]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2613
diff
changeset
|
2557 gtk_widget_set_sensitive(view->bbox, FALSE); |
| 4635 | 2558 g_signal_handlers_disconnect_by_func(G_OBJECT(view->window), |
|
4162
d3c8d2b40494
[gaim-migrate @ 4391]
Christian Hammond <chipx86@chipx86.com>
parents:
4142
diff
changeset
|
2559 G_CALLBACK(destroy_dialog), view->window); |
|
5314
1f901484599d
[gaim-migrate @ 5686]
Christian Hammond <chipx86@chipx86.com>
parents:
5294
diff
changeset
|
2560 block = g_signal_connect(G_OBJECT(view->window), "delete_event", |
|
4162
d3c8d2b40494
[gaim-migrate @ 4391]
Christian Hammond <chipx86@chipx86.com>
parents:
4142
diff
changeset
|
2561 G_CALLBACK(dont_destroy), view->window); |
|
2621
f8b02cf4af94
[gaim-migrate @ 2634]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2613
diff
changeset
|
2562 |
|
f8b02cf4af94
[gaim-migrate @ 2634]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2613
diff
changeset
|
2563 fseek(fp, view->offset, SEEK_SET); |
|
f8b02cf4af94
[gaim-migrate @ 2634]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2613
diff
changeset
|
2564 gtk_imhtml_clear(GTK_IMHTML(view->layout)); |
|
f8b02cf4af94
[gaim-migrate @ 2634]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2613
diff
changeset
|
2565 /* |
| 2570 | 2566 while (gtk_events_pending()) |
| 2567 gtk_main_iteration(); | |
|
2621
f8b02cf4af94
[gaim-migrate @ 2634]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2613
diff
changeset
|
2568 */ |
| 2570 | 2569 |
| 6431 | 2570 while (fgets(buf, BUF_LONG, fp) && !strstr(buf, "---- New C")) { |
| 2570 | 2571 i++; |
| 2572 if (strlen(buf) >= 5 && (!strncmp(buf + strlen(buf) - 5, "<BR>\n", 5))) | |
| 2573 /* take off the \n */ | |
| 2574 buf[strlen(buf) - 1] = '\0'; | |
| 2575 | |
|
2642
b6cf22276d4b
[gaim-migrate @ 2655]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2623
diff
changeset
|
2576 /* don't lose the thirtieth line of conversation. thanks FeRD */ |
|
b6cf22276d4b
[gaim-migrate @ 2655]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2623
diff
changeset
|
2577 g_string_append(string, buf); |
|
b6cf22276d4b
[gaim-migrate @ 2655]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2623
diff
changeset
|
2578 |
| 2570 | 2579 if (i == 30) { |
| 6982 | 2580 gtk_imhtml_append_text(GTK_IMHTML(view->layout), string->str, view->options); |
| 2570 | 2581 g_string_free(string, TRUE); |
| 2582 string = g_string_new(""); | |
|
2621
f8b02cf4af94
[gaim-migrate @ 2634]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2613
diff
changeset
|
2583 /* you can't have these anymore. if someone clicks on another item while one is |
|
f8b02cf4af94
[gaim-migrate @ 2634]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2613
diff
changeset
|
2584 * drawing, it will try to move to that item, and that causes problems here. |
| 2570 | 2585 while (gtk_events_pending()) |
| 2586 gtk_main_iteration(); | |
|
2621
f8b02cf4af94
[gaim-migrate @ 2634]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2613
diff
changeset
|
2587 */ |
| 2570 | 2588 i = 0; |
| 2589 } | |
| 2590 | |
| 2591 } | |
| 6982 | 2592 gtk_imhtml_append_text(GTK_IMHTML(view->layout), string->str, view->options); |
| 2593 gtk_imhtml_append_text(GTK_IMHTML(view->layout), "<BR>", view->options); | |
|
2621
f8b02cf4af94
[gaim-migrate @ 2634]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2613
diff
changeset
|
2594 |
|
f8b02cf4af94
[gaim-migrate @ 2634]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2613
diff
changeset
|
2595 gtk_widget_set_sensitive(view->bbox, TRUE); |
| 4635 | 2596 g_signal_handler_disconnect(G_OBJECT(view->window), block); |
|
5314
1f901484599d
[gaim-migrate @ 5686]
Christian Hammond <chipx86@chipx86.com>
parents:
5294
diff
changeset
|
2597 g_signal_connect(G_OBJECT(view->window), "delete_event", |
|
4162
d3c8d2b40494
[gaim-migrate @ 4391]
Christian Hammond <chipx86@chipx86.com>
parents:
4142
diff
changeset
|
2598 G_CALLBACK(destroy_dialog), view->window); |
| 2570 | 2599 g_string_free(string, TRUE); |
| 2600 fclose(fp); | |
| 2601 } | |
| 2602 | |
| 4635 | 2603 static void log_select_convo(GtkTreeSelection *sel, GtkTreeModel *model) |
| 2604 { | |
| 2605 GValue val = { 0, }; | |
| 2606 GtkTreeIter iter; | |
| 2607 | |
| 2608 if(!gtk_tree_selection_get_selected(sel, &model, &iter)) | |
| 2609 return; | |
| 2610 gtk_tree_model_get_value(model, &iter, 1, &val); | |
| 2611 log_show_convo(g_value_get_pointer(&val)); | |
| 2612 } | |
| 2613 | |
|
2621
f8b02cf4af94
[gaim-migrate @ 2634]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2613
diff
changeset
|
2614 static void des_view_item(GtkObject *obj, struct view_log *view) |
|
f8b02cf4af94
[gaim-migrate @ 2634]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2613
diff
changeset
|
2615 { |
|
f8b02cf4af94
[gaim-migrate @ 2634]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2613
diff
changeset
|
2616 if (view->name) |
|
f8b02cf4af94
[gaim-migrate @ 2634]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2613
diff
changeset
|
2617 g_free(view->name); |
|
f8b02cf4af94
[gaim-migrate @ 2634]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2613
diff
changeset
|
2618 g_free(view); |
|
f8b02cf4af94
[gaim-migrate @ 2634]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2613
diff
changeset
|
2619 } |
|
f8b02cf4af94
[gaim-migrate @ 2634]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2613
diff
changeset
|
2620 |
| 4635 | 2621 static void des_log_win(GObject *win, gpointer data) |
|
2623
66164831c228
[gaim-migrate @ 2636]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2621
diff
changeset
|
2622 { |
| 4635 | 2623 char *x = g_object_get_data(win, "log_window"); |
|
2623
66164831c228
[gaim-migrate @ 2636]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2621
diff
changeset
|
2624 if (x) |
|
66164831c228
[gaim-migrate @ 2636]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2621
diff
changeset
|
2625 g_free(x); |
| 4874 | 2626 x = g_object_get_data(win, "name"); |
| 2627 if (x) | |
| 2628 g_free(x); | |
|
2623
66164831c228
[gaim-migrate @ 2636]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2621
diff
changeset
|
2629 } |
|
66164831c228
[gaim-migrate @ 2636]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2621
diff
changeset
|
2630 |
| 3484 | 2631 void conv_show_log(GtkWidget *w, gpointer data) |
| 2632 { | |
| 2633 char *name = g_strdup(data); | |
| 2634 show_log(name); | |
| 2635 g_free(name); | |
| 2636 } | |
| 2637 | |
| 3532 | 2638 void chat_show_log(GtkWidget *w, gpointer data) |
| 2639 { | |
|
3716
d7e83b4db191
[gaim-migrate @ 3849]
Herman Bloggs <hermanator12002@yahoo.com>
parents:
3671
diff
changeset
|
2640 char *name = g_strdup_printf("%s.chat", (char*)data); |
| 3532 | 2641 show_log(name); |
| 2642 g_free(name); | |
| 2643 } | |
| 2644 | |
|
6465
fb64cc87bc96
[gaim-migrate @ 6974]
Christian Hammond <chipx86@chipx86.com>
parents:
6431
diff
changeset
|
2645 static void |
|
fb64cc87bc96
[gaim-migrate @ 6974]
Christian Hammond <chipx86@chipx86.com>
parents:
6431
diff
changeset
|
2646 url_clicked_cb(GtkWidget *widget, const char *uri) |
|
fb64cc87bc96
[gaim-migrate @ 6974]
Christian Hammond <chipx86@chipx86.com>
parents:
6431
diff
changeset
|
2647 { |
|
fb64cc87bc96
[gaim-migrate @ 6974]
Christian Hammond <chipx86@chipx86.com>
parents:
6431
diff
changeset
|
2648 gaim_notify_uri(NULL, uri); |
|
fb64cc87bc96
[gaim-migrate @ 6974]
Christian Hammond <chipx86@chipx86.com>
parents:
6431
diff
changeset
|
2649 } |
|
fb64cc87bc96
[gaim-migrate @ 6974]
Christian Hammond <chipx86@chipx86.com>
parents:
6431
diff
changeset
|
2650 |
|
2623
66164831c228
[gaim-migrate @ 2636]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2621
diff
changeset
|
2651 void show_log(char *nm) |
| 2570 | 2652 { |
| 2653 gchar filename[256]; | |
| 2654 gchar buf[BUF_LONG]; | |
| 2655 FILE *fp; | |
| 2656 GtkWidget *window; | |
| 2657 GtkWidget *box; | |
| 2658 GtkWidget *hbox; | |
| 2602 | 2659 GtkWidget *bbox; |
| 2570 | 2660 GtkWidget *sw; |
| 2661 GtkWidget *layout; | |
| 2662 GtkWidget *close_button; | |
| 2663 GtkWidget *clear_button; | |
| 2664 GtkWidget *save_button; | |
| 4635 | 2665 GtkListStore *list_store; |
| 2666 GtkWidget *tree_view; | |
| 2667 GtkTreeSelection *sel = NULL; | |
| 2668 GtkTreePath *path; | |
| 2612 | 2669 GtkWidget *item = NULL; |
| 2670 GtkWidget *last = NULL; | |
| 2570 | 2671 GtkWidget *frame; |
|
2621
f8b02cf4af94
[gaim-migrate @ 2634]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2613
diff
changeset
|
2672 struct view_log *view; |
|
2623
66164831c228
[gaim-migrate @ 2636]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2621
diff
changeset
|
2673 char *name = nm ? g_strdup(nm) : NULL; |
| 2570 | 2674 |
| 2675 int options; | |
| 2676 guint block; | |
| 2677 char convo_start[32]; | |
| 2678 long offset = 0; | |
| 2679 | |
|
1477
1d0fc2622b29
[gaim-migrate @ 1487]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1456
diff
changeset
|
2680 options = GTK_IMHTML_NO_COMMENTS | GTK_IMHTML_NO_TITLE | GTK_IMHTML_NO_SCROLL; |
|
5545
7a64114641c3
[gaim-migrate @ 5946]
Christian Hammond <chipx86@chipx86.com>
parents:
5498
diff
changeset
|
2681 |
|
7a64114641c3
[gaim-migrate @ 5946]
Christian Hammond <chipx86@chipx86.com>
parents:
5498
diff
changeset
|
2682 if (gaim_prefs_get_bool("/gaim/gtk/conversations/ignore_colors")) |
|
1477
1d0fc2622b29
[gaim-migrate @ 1487]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1456
diff
changeset
|
2683 options ^= GTK_IMHTML_NO_COLOURS; |
|
5545
7a64114641c3
[gaim-migrate @ 5946]
Christian Hammond <chipx86@chipx86.com>
parents:
5498
diff
changeset
|
2684 |
|
7a64114641c3
[gaim-migrate @ 5946]
Christian Hammond <chipx86@chipx86.com>
parents:
5498
diff
changeset
|
2685 if (gaim_prefs_get_bool("/gaim/gtk/conversations/ignore_fonts")) |
|
1477
1d0fc2622b29
[gaim-migrate @ 1487]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1456
diff
changeset
|
2686 options ^= GTK_IMHTML_NO_FONTS; |
|
5545
7a64114641c3
[gaim-migrate @ 5946]
Christian Hammond <chipx86@chipx86.com>
parents:
5498
diff
changeset
|
2687 |
|
7a64114641c3
[gaim-migrate @ 5946]
Christian Hammond <chipx86@chipx86.com>
parents:
5498
diff
changeset
|
2688 if (gaim_prefs_get_bool("/gaim/gtk/conversations/ignore_font_sizes")) |
|
1477
1d0fc2622b29
[gaim-migrate @ 1487]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1456
diff
changeset
|
2689 options ^= GTK_IMHTML_NO_SIZES; |
|
1d0fc2622b29
[gaim-migrate @ 1487]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1456
diff
changeset
|
2690 |
|
1d0fc2622b29
[gaim-migrate @ 1487]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1456
diff
changeset
|
2691 window = gtk_window_new(GTK_WINDOW_TOPLEVEL); |
| 4635 | 2692 g_object_set_data(G_OBJECT(window), "name", name); |
|
5314
1f901484599d
[gaim-migrate @ 5686]
Christian Hammond <chipx86@chipx86.com>
parents:
5294
diff
changeset
|
2693 g_signal_connect(G_OBJECT(window), "destroy", G_CALLBACK(des_log_win), NULL); |
| 4074 | 2694 gtk_window_set_role(GTK_WINDOW(window), "log"); |
|
1648
09445224e2d9
[gaim-migrate @ 1658]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1634
diff
changeset
|
2695 if (name) |
| 4703 | 2696 g_snprintf(buf, BUF_LONG, _("Conversations with %s"), name); |
|
1648
09445224e2d9
[gaim-migrate @ 1658]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1634
diff
changeset
|
2697 else |
| 4703 | 2698 g_snprintf(buf, BUF_LONG, _("System Log")); |
|
1477
1d0fc2622b29
[gaim-migrate @ 1487]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1456
diff
changeset
|
2699 gtk_window_set_title(GTK_WINDOW(window), buf); |
|
1488
55246babdeb3
[gaim-migrate @ 1498]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1484
diff
changeset
|
2700 gtk_container_set_border_width(GTK_CONTAINER(window), 10); |
| 4635 | 2701 gtk_window_set_resizable(GTK_WINDOW(window), TRUE); |
|
5314
1f901484599d
[gaim-migrate @ 5686]
Christian Hammond <chipx86@chipx86.com>
parents:
5294
diff
changeset
|
2702 block = g_signal_connect(G_OBJECT(window), "delete_event", |
|
4162
d3c8d2b40494
[gaim-migrate @ 4391]
Christian Hammond <chipx86@chipx86.com>
parents:
4142
diff
changeset
|
2703 G_CALLBACK(dont_destroy), window); |
|
1477
1d0fc2622b29
[gaim-migrate @ 1487]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1456
diff
changeset
|
2704 gtk_widget_realize(window); |
|
1d0fc2622b29
[gaim-migrate @ 1487]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1456
diff
changeset
|
2705 |
| 2570 | 2706 layout = gtk_imhtml_new(NULL, NULL); |
| 2602 | 2707 bbox = gtk_hbox_new(FALSE, 0); |
| 2708 | |
|
1488
55246babdeb3
[gaim-migrate @ 1498]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1484
diff
changeset
|
2709 box = gtk_vbox_new(FALSE, 5); |
|
1477
1d0fc2622b29
[gaim-migrate @ 1487]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1456
diff
changeset
|
2710 gtk_container_add(GTK_CONTAINER(window), box); |
|
1d0fc2622b29
[gaim-migrate @ 1487]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1456
diff
changeset
|
2711 |
| 2570 | 2712 hbox = gtk_hbox_new(FALSE, 5); |
| 2713 gtk_box_pack_start(GTK_BOX(box), hbox, TRUE, TRUE, 0); | |
| 2714 | |
| 2715 if (name) { | |
| 2716 char *tmp = gaim_user_dir(); | |
| 3630 | 2717 g_snprintf(filename, 256, "%s" G_DIR_SEPARATOR_S "logs" G_DIR_SEPARATOR_S "%s.log", tmp, normalize(name)); |
| 2570 | 2718 if ((fp = fopen(filename, "r")) == NULL) { |
| 6623 | 2719 g_snprintf(buf, BUF_LONG, _("Couldn't open log file %s."), filename); |
|
5436
ad445074d239
[gaim-migrate @ 5818]
Christian Hammond <chipx86@chipx86.com>
parents:
5411
diff
changeset
|
2720 gaim_notify_error(NULL, NULL, buf, strerror(errno)); |
| 2570 | 2721 return; |
| 2722 } | |
| 2723 | |
| 4635 | 2724 list_store = gtk_list_store_new(2, |
| 2725 G_TYPE_STRING, | |
| 2726 G_TYPE_POINTER); | |
| 2727 | |
| 2728 tree_view = gtk_tree_view_new_with_model(GTK_TREE_MODEL(list_store)); | |
| 2729 | |
| 2730 gtk_tree_view_set_headers_visible(GTK_TREE_VIEW(tree_view), FALSE); | |
| 2731 | |
| 2732 gtk_tree_view_insert_column_with_attributes(GTK_TREE_VIEW(tree_view), | |
| 2733 -1, "", gtk_cell_renderer_text_new(), "text", 0, NULL); | |
| 2734 | |
| 2735 sel = gtk_tree_view_get_selection(GTK_TREE_VIEW(tree_view)); | |
| 2736 g_signal_connect(G_OBJECT(sel), "changed", | |
| 2737 G_CALLBACK(log_select_convo), | |
| 2738 NULL); | |
| 2570 | 2739 |
| 2740 frame = gtk_frame_new(_("Date")); | |
| 2741 gtk_widget_show(frame); | |
| 2742 | |
| 2743 sw = gtk_scrolled_window_new(NULL, NULL); | |
| 2744 gtk_container_set_border_width(GTK_CONTAINER(sw), 5); | |
| 4635 | 2745 gtk_scrolled_window_add_with_viewport(GTK_SCROLLED_WINDOW(sw), tree_view); |
|
2613
6f7e1fc3e132
[gaim-migrate @ 2626]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2612
diff
changeset
|
2746 gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(sw), |
|
6f7e1fc3e132
[gaim-migrate @ 2626]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2612
diff
changeset
|
2747 GTK_POLICY_AUTOMATIC, GTK_POLICY_ALWAYS); |
| 4635 | 2748 gtk_widget_set_size_request(sw, 220, 220); |
| 2570 | 2749 gtk_container_add(GTK_CONTAINER(frame), sw); |
| 2750 gtk_box_pack_start(GTK_BOX(hbox), frame, TRUE, TRUE, 0); | |
| 2751 | |
| 2752 while (fgets(buf, BUF_LONG, fp)) { | |
| 6431 | 2753 if (strstr(buf, "---- New C")) { |
| 2570 | 2754 int length; |
| 2755 char *temp = strchr(buf, '@'); | |
| 4635 | 2756 GtkTreeIter iter; |
| 2612 | 2757 |
| 2570 | 2758 if (temp == NULL || strlen(temp) < 2) |
| 2759 continue; | |
| 2612 | 2760 |
| 2570 | 2761 temp++; |
| 2762 length = strcspn(temp, "-"); | |
| 2763 if (length > 31) length = 31; | |
|
6465
fb64cc87bc96
[gaim-migrate @ 6974]
Christian Hammond <chipx86@chipx86.com>
parents:
6431
diff
changeset
|
2764 |
| 2570 | 2765 offset = ftell(fp); |
| 2766 g_snprintf(convo_start, length, "%s", temp); | |
| 4635 | 2767 gtk_list_store_append(list_store, &iter); |
|
2621
f8b02cf4af94
[gaim-migrate @ 2634]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2613
diff
changeset
|
2768 view = g_new0(struct view_log, 1); |
|
f8b02cf4af94
[gaim-migrate @ 2634]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2613
diff
changeset
|
2769 view->options = options; |
|
f8b02cf4af94
[gaim-migrate @ 2634]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2613
diff
changeset
|
2770 view->offset = offset; |
|
f8b02cf4af94
[gaim-migrate @ 2634]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2613
diff
changeset
|
2771 view->name = g_strdup(name); |
|
f8b02cf4af94
[gaim-migrate @ 2634]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2613
diff
changeset
|
2772 view->bbox = bbox; |
|
f8b02cf4af94
[gaim-migrate @ 2634]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2613
diff
changeset
|
2773 view->window = window; |
|
f8b02cf4af94
[gaim-migrate @ 2634]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2613
diff
changeset
|
2774 view->layout = layout; |
| 4635 | 2775 gtk_list_store_set(list_store, &iter, |
| 2776 0, convo_start, | |
| 2777 1, view, | |
| 2778 -1); | |
| 2779 g_signal_connect(G_OBJECT(window), "destroy", | |
|
4162
d3c8d2b40494
[gaim-migrate @ 4391]
Christian Hammond <chipx86@chipx86.com>
parents:
4142
diff
changeset
|
2780 G_CALLBACK(des_view_item), view); |
| 2612 | 2781 last = item; |
| 2570 | 2782 } |
| 2783 } | |
| 2784 fclose(fp); | |
| 4635 | 2785 |
| 2786 path = gtk_tree_path_new_first(); | |
| 2787 gtk_tree_selection_select_path(sel, path); | |
| 2788 gtk_tree_path_free(path); | |
| 2789 | |
| 2790 g_object_unref(G_OBJECT(list_store)); | |
| 2612 | 2791 } |
| 2792 | |
| 4635 | 2793 |
|
5314
1f901484599d
[gaim-migrate @ 5686]
Christian Hammond <chipx86@chipx86.com>
parents:
5294
diff
changeset
|
2794 g_signal_handler_disconnect(G_OBJECT(window), block); |
|
1f901484599d
[gaim-migrate @ 5686]
Christian Hammond <chipx86@chipx86.com>
parents:
5294
diff
changeset
|
2795 g_signal_connect(G_OBJECT(window), "delete_event", G_CALLBACK(destroy_dialog), window); |
| 2602 | 2796 |
| 5400 | 2797 frame = gtk_frame_new(_("Log")); |
| 2570 | 2798 gtk_widget_show(frame); |
| 2799 | |
|
1477
1d0fc2622b29
[gaim-migrate @ 1487]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1456
diff
changeset
|
2800 sw = gtk_scrolled_window_new(NULL, NULL); |
| 2570 | 2801 gtk_container_set_border_width(GTK_CONTAINER(sw), 5); |
|
1477
1d0fc2622b29
[gaim-migrate @ 1487]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1456
diff
changeset
|
2802 gtk_scrolled_window_set_policy(GTK_SCROLLED_WINDOW(sw), GTK_POLICY_AUTOMATIC, GTK_POLICY_ALWAYS); |
| 4333 | 2803 gtk_scrolled_window_set_shadow_type(GTK_SCROLLED_WINDOW(sw), GTK_SHADOW_IN); |
| 4635 | 2804 gtk_widget_set_size_request(sw, 390, 220); |
| 2570 | 2805 gtk_container_add(GTK_CONTAINER(frame), sw); |
| 2806 gtk_box_pack_start(GTK_BOX(hbox), frame, TRUE, TRUE, 0); | |
| 2807 | |
|
6465
fb64cc87bc96
[gaim-migrate @ 6974]
Christian Hammond <chipx86@chipx86.com>
parents:
6431
diff
changeset
|
2808 g_signal_connect(G_OBJECT(layout), "url_clicked", |
|
fb64cc87bc96
[gaim-migrate @ 6974]
Christian Hammond <chipx86@chipx86.com>
parents:
6431
diff
changeset
|
2809 G_CALLBACK(url_clicked_cb), NULL); |
|
1477
1d0fc2622b29
[gaim-migrate @ 1487]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1456
diff
changeset
|
2810 gtk_container_add(GTK_CONTAINER(sw), layout); |
|
1815
f15d449b3167
[gaim-migrate @ 1825]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1805
diff
changeset
|
2811 gaim_setup_imhtml(layout); |
|
1477
1d0fc2622b29
[gaim-migrate @ 1487]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1456
diff
changeset
|
2812 |
| 2602 | 2813 gtk_box_pack_start(GTK_BOX(box), bbox, FALSE, FALSE, 0); |
| 2814 gtk_widget_set_sensitive(bbox, FALSE); | |
|
1488
55246babdeb3
[gaim-migrate @ 1498]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1484
diff
changeset
|
2815 |
| 5024 | 2816 close_button = gaim_pixbuf_button_from_stock(_("Close"), GTK_STOCK_CLOSE, GAIM_BUTTON_HORIZONTAL); |
| 2602 | 2817 gtk_box_pack_end(GTK_BOX(bbox), close_button, FALSE, FALSE, 5); |
|
5314
1f901484599d
[gaim-migrate @ 5686]
Christian Hammond <chipx86@chipx86.com>
parents:
5294
diff
changeset
|
2818 g_signal_connect(G_OBJECT(close_button), "clicked", G_CALLBACK(destroy_dialog), window); |
|
1488
55246babdeb3
[gaim-migrate @ 1498]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1484
diff
changeset
|
2819 |
| 5024 | 2820 clear_button = gaim_pixbuf_button_from_stock(_("Clear"), GTK_STOCK_CLEAR, GAIM_BUTTON_HORIZONTAL); |
| 4635 | 2821 g_object_set_data(G_OBJECT(clear_button), "log_window", window); |
| 2602 | 2822 gtk_box_pack_end(GTK_BOX(bbox), clear_button, FALSE, FALSE, 5); |
|
5314
1f901484599d
[gaim-migrate @ 5686]
Christian Hammond <chipx86@chipx86.com>
parents:
5294
diff
changeset
|
2823 g_signal_connect(G_OBJECT(clear_button), "clicked", G_CALLBACK(show_clear_log), name); |
|
1488
55246babdeb3
[gaim-migrate @ 1498]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1484
diff
changeset
|
2824 |
| 5024 | 2825 save_button = gaim_pixbuf_button_from_stock(_("Save"), GTK_STOCK_SAVE, GAIM_BUTTON_HORIZONTAL); |
| 2602 | 2826 gtk_box_pack_end(GTK_BOX(bbox), save_button, FALSE, FALSE, 5); |
|
5314
1f901484599d
[gaim-migrate @ 5686]
Christian Hammond <chipx86@chipx86.com>
parents:
5294
diff
changeset
|
2827 g_signal_connect(G_OBJECT(save_button), "clicked", G_CALLBACK(show_save_log), name); |
|
1488
55246babdeb3
[gaim-migrate @ 1498]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1484
diff
changeset
|
2828 |
| 4635 | 2829 gtk_widget_show_all(window); |
| 2830 | |
| 2570 | 2831 if (!name) { |
|
2621
f8b02cf4af94
[gaim-migrate @ 2634]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2613
diff
changeset
|
2832 view = g_new0(struct view_log, 1); |
|
f8b02cf4af94
[gaim-migrate @ 2634]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2613
diff
changeset
|
2833 view->options = options; |
|
f8b02cf4af94
[gaim-migrate @ 2634]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2613
diff
changeset
|
2834 view->name = NULL; |
|
f8b02cf4af94
[gaim-migrate @ 2634]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2613
diff
changeset
|
2835 view->bbox = bbox; |
|
f8b02cf4af94
[gaim-migrate @ 2634]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2613
diff
changeset
|
2836 view->window = window; |
|
f8b02cf4af94
[gaim-migrate @ 2634]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
2613
diff
changeset
|
2837 view->layout = layout; |
| 4635 | 2838 log_show_convo(view); |
|
5314
1f901484599d
[gaim-migrate @ 5686]
Christian Hammond <chipx86@chipx86.com>
parents:
5294
diff
changeset
|
2839 g_signal_connect(G_OBJECT(layout), "destroy", G_CALLBACK(des_view_item), view); |
|
1477
1d0fc2622b29
[gaim-migrate @ 1487]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1456
diff
changeset
|
2840 } |
| 4635 | 2841 |
| 2602 | 2842 gtk_widget_set_sensitive(bbox, TRUE); |
|
1477
1d0fc2622b29
[gaim-migrate @ 1487]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1456
diff
changeset
|
2843 |
|
1d0fc2622b29
[gaim-migrate @ 1487]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1456
diff
changeset
|
2844 return; |
|
1d0fc2622b29
[gaim-migrate @ 1487]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1456
diff
changeset
|
2845 } |
|
1729
251c19bf5763
[gaim-migrate @ 1739]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1722
diff
changeset
|
2846 |
|
251c19bf5763
[gaim-migrate @ 1739]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1722
diff
changeset
|
2847 /*------------------------------------------------------------------------*/ |
|
251c19bf5763
[gaim-migrate @ 1739]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1722
diff
changeset
|
2848 /* The dialog for renaming groups */ |
|
251c19bf5763
[gaim-migrate @ 1739]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1722
diff
changeset
|
2849 /*------------------------------------------------------------------------*/ |
|
251c19bf5763
[gaim-migrate @ 1739]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1722
diff
changeset
|
2850 |
| 6695 | 2851 static void do_rename_group(GaimGroup *g, const char *new_name) |
|
1729
251c19bf5763
[gaim-migrate @ 1739]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1722
diff
changeset
|
2852 { |
| 6322 | 2853 gaim_blist_rename_group(g, new_name); |
| 2854 gaim_blist_save(); | |
|
1729
251c19bf5763
[gaim-migrate @ 1739]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1722
diff
changeset
|
2855 } |
|
251c19bf5763
[gaim-migrate @ 1739]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1722
diff
changeset
|
2856 |
| 6695 | 2857 void show_rename_group(GtkWidget *unused, GaimGroup *g) |
|
1729
251c19bf5763
[gaim-migrate @ 1739]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1722
diff
changeset
|
2858 { |
|
6328
cbe2f320c214
[gaim-migrate @ 6827]
Christian Hammond <chipx86@chipx86.com>
parents:
6327
diff
changeset
|
2859 gaim_request_input(NULL, _("Rename Group"), _("New group name"), |
|
cbe2f320c214
[gaim-migrate @ 6827]
Christian Hammond <chipx86@chipx86.com>
parents:
6327
diff
changeset
|
2860 _("Please enter a new name for the selected group."), |
|
cbe2f320c214
[gaim-migrate @ 6827]
Christian Hammond <chipx86@chipx86.com>
parents:
6327
diff
changeset
|
2861 g->name, FALSE, FALSE, |
|
cbe2f320c214
[gaim-migrate @ 6827]
Christian Hammond <chipx86@chipx86.com>
parents:
6327
diff
changeset
|
2862 _("OK"), G_CALLBACK(do_rename_group), |
|
cbe2f320c214
[gaim-migrate @ 6827]
Christian Hammond <chipx86@chipx86.com>
parents:
6327
diff
changeset
|
2863 _("Cancel"), NULL, g); |
|
1729
251c19bf5763
[gaim-migrate @ 1739]
Eric Warmenhoven <eric@warmenhoven.org>
parents:
1722
diff
changeset
|
2864 } |
