| 1353 static void |
1353 static void |
| 1354 file_yes_no_cb(GaimGtkRequestData *data, gint id) |
1354 file_yes_no_cb(GaimGtkRequestData *data, gint id) |
| 1355 { |
1355 { |
| 1356 if (data->cbs[id] != NULL) |
1356 if (data->cbs[id] != NULL) |
| 1357 ((GaimRequestFileCb)data->cbs[id])(data->user_data, data->u.file.name); |
1357 ((GaimRequestFileCb)data->cbs[id])(data->user_data, data->u.file.name); |
| 1358 g_free(data->u.file.name); |
|
| 1359 |
1358 |
| 1360 if (id == 1) |
1359 if (id == 1) |
| 1361 gaim_request_close(GAIM_REQUEST_FILE, data); |
1360 gaim_request_close(GAIM_REQUEST_FILE, data); |
| 1362 } |
1361 } |
| 1363 |
1362 |
| 1377 file_ok_check_if_exists_cb(GtkWidget *button, GaimGtkRequestData *data) |
1376 file_ok_check_if_exists_cb(GtkWidget *button, GaimGtkRequestData *data) |
| 1378 { |
1377 { |
| 1379 const gchar *name; |
1378 const gchar *name; |
| 1380 |
1379 |
| 1381 name = gtk_file_selection_get_filename(GTK_FILE_SELECTION(data->dialog)); |
1380 name = gtk_file_selection_get_filename(GTK_FILE_SELECTION(data->dialog)); |
| |
1381 |
| |
1382 /* If name is a directory then change directories */ |
| 1382 if (gaim_gtk_check_if_dir(name, GTK_FILE_SELECTION(data->dialog))) |
1383 if (gaim_gtk_check_if_dir(name, GTK_FILE_SELECTION(data->dialog))) |
| 1383 /* Descend into directory? */ |
|
| 1384 /* Close dialog? */ |
|
| 1385 return; |
1384 return; |
| |
1385 |
| 1386 data->u.file.name = g_strdup(name); |
1386 data->u.file.name = g_strdup(name); |
| 1387 #endif /* FILECHOOSER */ |
1387 #endif /* FILECHOOSER */ |
| 1388 |
1388 |
| 1389 if ((data->u.file.savedialog == TRUE) && |
1389 if ((data->u.file.savedialog == TRUE) && |
| 1390 (g_file_test(data->u.file.name, G_FILE_TEST_EXISTS))) { |
1390 (g_file_test(data->u.file.name, G_FILE_TEST_EXISTS))) { |