Mercurial > pidgin.yaz
comparison pidgin/gtkft.c @ 15501:d75099d2567e
gaim_gtk to pidgin. I hope
author | Sean Egan <seanegan@gmail.com> |
---|---|
date | Sat, 03 Feb 2007 07:23:11 +0000 |
parents | 5fe8042783c1 |
children | 23ca11f8a8c4 |
comparison
equal
deleted
inserted
replaced
15500:45ecefd0ce3a | 15501:d75099d2567e |
---|---|
36 #include "prefs.h" | 36 #include "prefs.h" |
37 #include "gtkexpander.h" | 37 #include "gtkexpander.h" |
38 #include "gaimstock.h" | 38 #include "gaimstock.h" |
39 #include "gtkutils.h" | 39 #include "gtkutils.h" |
40 | 40 |
41 #define GAIM_GTKXFER(xfer) \ | 41 #define PIDGINXFER(xfer) \ |
42 (GaimGtkXferUiData *)(xfer)->ui_data | 42 (PidginXferUiData *)(xfer)->ui_data |
43 | 43 |
44 struct _GaimGtkXferDialog | 44 struct _PidginXferDialog |
45 { | 45 { |
46 gboolean keep_open; | 46 gboolean keep_open; |
47 gboolean auto_clear; | 47 gboolean auto_clear; |
48 | 48 |
49 gint num_transfers; | 49 gint num_transfers; |
87 time_t last_updated_time; | 87 time_t last_updated_time; |
88 gboolean in_list; | 88 gboolean in_list; |
89 | 89 |
90 char *name; | 90 char *name; |
91 | 91 |
92 } GaimGtkXferUiData; | 92 } PidginXferUiData; |
93 | 93 |
94 static GaimGtkXferDialog *xfer_dialog = NULL; | 94 static PidginXferDialog *xfer_dialog = NULL; |
95 | 95 |
96 enum | 96 enum |
97 { | 97 { |
98 COLUMN_STATUS = 0, | 98 COLUMN_STATUS = 0, |
99 COLUMN_PROGRESS, | 99 COLUMN_PROGRESS, |
110 **************************************************************************/ | 110 **************************************************************************/ |
111 static void | 111 static void |
112 get_xfer_info_strings(GaimXfer *xfer, char **kbsec, char **time_elapsed, | 112 get_xfer_info_strings(GaimXfer *xfer, char **kbsec, char **time_elapsed, |
113 char **time_remaining) | 113 char **time_remaining) |
114 { | 114 { |
115 GaimGtkXferUiData *data; | 115 PidginXferUiData *data; |
116 double kb_sent, kb_rem; | 116 double kb_sent, kb_rem; |
117 double kbps = 0.0; | 117 double kbps = 0.0; |
118 time_t elapsed, now; | 118 time_t elapsed, now; |
119 | 119 |
120 data = GAIM_GTKXFER(xfer); | 120 data = PIDGINXFER(xfer); |
121 | 121 |
122 if (xfer->end_time != 0) | 122 if (xfer->end_time != 0) |
123 now = xfer->end_time; | 123 now = xfer->end_time; |
124 else | 124 else |
125 now = time(NULL); | 125 now = time(NULL); |
181 } | 181 } |
182 } | 182 } |
183 } | 183 } |
184 | 184 |
185 static void | 185 static void |
186 update_title_progress(GaimGtkXferDialog *dialog) | 186 update_title_progress(PidginXferDialog *dialog) |
187 { | 187 { |
188 gboolean valid; | 188 gboolean valid; |
189 GtkTreeIter iter; | 189 GtkTreeIter iter; |
190 int num_active_xfers = 0; | 190 int num_active_xfers = 0; |
191 guint64 total_bytes_xferred = 0; | 191 guint64 total_bytes_xferred = 0; |
233 gtk_window_set_title(GTK_WINDOW(dialog->window), _("File Transfers")); | 233 gtk_window_set_title(GTK_WINDOW(dialog->window), _("File Transfers")); |
234 } | 234 } |
235 } | 235 } |
236 | 236 |
237 static void | 237 static void |
238 update_detailed_info(GaimGtkXferDialog *dialog, GaimXfer *xfer) | 238 update_detailed_info(PidginXferDialog *dialog, GaimXfer *xfer) |
239 { | 239 { |
240 GaimGtkXferUiData *data; | 240 PidginXferUiData *data; |
241 char *kbsec, *time_elapsed, *time_remaining; | 241 char *kbsec, *time_elapsed, *time_remaining; |
242 char *status, *utf8; | 242 char *status, *utf8; |
243 | 243 |
244 if (dialog == NULL || xfer == NULL) | 244 if (dialog == NULL || xfer == NULL) |
245 return; | 245 return; |
246 | 246 |
247 data = GAIM_GTKXFER(xfer); | 247 data = PIDGINXFER(xfer); |
248 | 248 |
249 get_xfer_info_strings(xfer, &kbsec, &time_elapsed, &time_remaining); | 249 get_xfer_info_strings(xfer, &kbsec, &time_elapsed, &time_remaining); |
250 | 250 |
251 status = g_strdup_printf("%ld%% (%ld of %ld bytes)", | 251 status = g_strdup_printf("%ld%% (%ld of %ld bytes)", |
252 (unsigned long)(gaim_xfer_get_progress(xfer)*100), | 252 (unsigned long)(gaim_xfer_get_progress(xfer)*100), |
320 g_free(time_remaining); | 320 g_free(time_remaining); |
321 g_free(status); | 321 g_free(status); |
322 } | 322 } |
323 | 323 |
324 static void | 324 static void |
325 update_buttons(GaimGtkXferDialog *dialog, GaimXfer *xfer) | 325 update_buttons(PidginXferDialog *dialog, GaimXfer *xfer) |
326 { | 326 { |
327 if (dialog->selected_xfer == NULL) { | 327 if (dialog->selected_xfer == NULL) { |
328 gtk_widget_set_sensitive(dialog->expander, FALSE); | 328 gtk_widget_set_sensitive(dialog->expander, FALSE); |
329 gtk_widget_set_sensitive(dialog->open_button, FALSE); | 329 gtk_widget_set_sensitive(dialog->open_button, FALSE); |
330 gtk_widget_set_sensitive(dialog->pause_button, FALSE); | 330 gtk_widget_set_sensitive(dialog->pause_button, FALSE); |
383 gtk_widget_set_sensitive(dialog->stop_button, TRUE); | 383 gtk_widget_set_sensitive(dialog->stop_button, TRUE); |
384 } | 384 } |
385 } | 385 } |
386 | 386 |
387 static void | 387 static void |
388 ensure_row_selected(GaimGtkXferDialog *dialog) | 388 ensure_row_selected(PidginXferDialog *dialog) |
389 { | 389 { |
390 GtkTreeIter iter; | 390 GtkTreeIter iter; |
391 GtkTreeSelection *selection; | 391 GtkTreeSelection *selection; |
392 | 392 |
393 selection = gtk_tree_view_get_selection(GTK_TREE_VIEW(dialog->tree)); | 393 selection = gtk_tree_view_get_selection(GTK_TREE_VIEW(dialog->tree)); |
403 * Callbacks | 403 * Callbacks |
404 **************************************************************************/ | 404 **************************************************************************/ |
405 static gint | 405 static gint |
406 delete_win_cb(GtkWidget *w, GdkEventAny *e, gpointer d) | 406 delete_win_cb(GtkWidget *w, GdkEventAny *e, gpointer d) |
407 { | 407 { |
408 GaimGtkXferDialog *dialog; | 408 PidginXferDialog *dialog; |
409 | 409 |
410 dialog = (GaimGtkXferDialog *)d; | 410 dialog = (PidginXferDialog *)d; |
411 | 411 |
412 gaim_gtkxfer_dialog_hide(dialog); | 412 pidginxfer_dialog_hide(dialog); |
413 | 413 |
414 return TRUE; | 414 return TRUE; |
415 } | 415 } |
416 | 416 |
417 static void | 417 static void |
418 toggle_keep_open_cb(GtkWidget *w, GaimGtkXferDialog *dialog) | 418 toggle_keep_open_cb(GtkWidget *w, PidginXferDialog *dialog) |
419 { | 419 { |
420 dialog->keep_open = !dialog->keep_open; | 420 dialog->keep_open = !dialog->keep_open; |
421 gaim_prefs_set_bool("/gaim/gtk/filetransfer/keep_open", | 421 gaim_prefs_set_bool("/gaim/gtk/filetransfer/keep_open", |
422 dialog->keep_open); | 422 dialog->keep_open); |
423 } | 423 } |
424 | 424 |
425 static void | 425 static void |
426 toggle_clear_finished_cb(GtkWidget *w, GaimGtkXferDialog *dialog) | 426 toggle_clear_finished_cb(GtkWidget *w, PidginXferDialog *dialog) |
427 { | 427 { |
428 dialog->auto_clear = !dialog->auto_clear; | 428 dialog->auto_clear = !dialog->auto_clear; |
429 gaim_prefs_set_bool("/gaim/gtk/filetransfer/clear_finished", | 429 gaim_prefs_set_bool("/gaim/gtk/filetransfer/clear_finished", |
430 dialog->auto_clear); | 430 dialog->auto_clear); |
431 } | 431 } |
432 | 432 |
433 static void | 433 static void |
434 selection_changed_cb(GtkTreeSelection *selection, GaimGtkXferDialog *dialog) | 434 selection_changed_cb(GtkTreeSelection *selection, PidginXferDialog *dialog) |
435 { | 435 { |
436 GtkTreeIter iter; | 436 GtkTreeIter iter; |
437 GaimXfer *xfer = NULL; | 437 GaimXfer *xfer = NULL; |
438 | 438 |
439 if (gtk_tree_selection_get_selected(selection, NULL, &iter)) { | 439 if (gtk_tree_selection_get_selected(selection, NULL, &iter)) { |
462 | 462 |
463 update_buttons(dialog, xfer); | 463 update_buttons(dialog, xfer); |
464 } | 464 } |
465 | 465 |
466 static void | 466 static void |
467 open_button_cb(GtkButton *button, GaimGtkXferDialog *dialog) | 467 open_button_cb(GtkButton *button, PidginXferDialog *dialog) |
468 { | 468 { |
469 #ifdef _WIN32 | 469 #ifdef _WIN32 |
470 /* If using Win32... */ | 470 /* If using Win32... */ |
471 int code; | 471 int code; |
472 if (G_WIN32_HAVE_WIDECHAR_API ()) { | 472 if (G_WIN32_HAVE_WIDECHAR_API ()) { |
554 } | 554 } |
555 #endif | 555 #endif |
556 } | 556 } |
557 | 557 |
558 static void | 558 static void |
559 pause_button_cb(GtkButton *button, GaimGtkXferDialog *dialog) | 559 pause_button_cb(GtkButton *button, PidginXferDialog *dialog) |
560 { | 560 { |
561 } | 561 } |
562 | 562 |
563 static void | 563 static void |
564 resume_button_cb(GtkButton *button, GaimGtkXferDialog *dialog) | 564 resume_button_cb(GtkButton *button, PidginXferDialog *dialog) |
565 { | 565 { |
566 } | 566 } |
567 | 567 |
568 static void | 568 static void |
569 remove_button_cb(GtkButton *button, GaimGtkXferDialog *dialog) | 569 remove_button_cb(GtkButton *button, PidginXferDialog *dialog) |
570 { | 570 { |
571 gaim_gtkxfer_dialog_remove_xfer(dialog, dialog->selected_xfer); | 571 pidginxfer_dialog_remove_xfer(dialog, dialog->selected_xfer); |
572 } | 572 } |
573 | 573 |
574 static void | 574 static void |
575 stop_button_cb(GtkButton *button, GaimGtkXferDialog *dialog) | 575 stop_button_cb(GtkButton *button, PidginXferDialog *dialog) |
576 { | 576 { |
577 gaim_xfer_cancel_local(dialog->selected_xfer); | 577 gaim_xfer_cancel_local(dialog->selected_xfer); |
578 } | 578 } |
579 | 579 |
580 static void | 580 static void |
581 close_button_cb(GtkButton *button, GaimGtkXferDialog *dialog) | 581 close_button_cb(GtkButton *button, PidginXferDialog *dialog) |
582 { | 582 { |
583 gaim_gtkxfer_dialog_hide(dialog); | 583 pidginxfer_dialog_hide(dialog); |
584 } | 584 } |
585 | 585 |
586 | 586 |
587 /************************************************************************** | 587 /************************************************************************** |
588 * Dialog Building Functions | 588 * Dialog Building Functions |
589 **************************************************************************/ | 589 **************************************************************************/ |
590 static GtkWidget * | 590 static GtkWidget * |
591 setup_tree(GaimGtkXferDialog *dialog) | 591 setup_tree(PidginXferDialog *dialog) |
592 { | 592 { |
593 GtkWidget *sw; | 593 GtkWidget *sw; |
594 GtkWidget *tree; | 594 GtkWidget *tree; |
595 GtkListStore *model; | 595 GtkListStore *model; |
596 GtkCellRenderer *renderer; | 596 GtkCellRenderer *renderer; |
638 gtk_tree_view_column_set_fixed_width(GTK_TREE_VIEW_COLUMN(column), 25); | 638 gtk_tree_view_column_set_fixed_width(GTK_TREE_VIEW_COLUMN(column), 25); |
639 gtk_tree_view_column_set_resizable(GTK_TREE_VIEW_COLUMN(column), TRUE); | 639 gtk_tree_view_column_set_resizable(GTK_TREE_VIEW_COLUMN(column), TRUE); |
640 gtk_tree_view_append_column(GTK_TREE_VIEW(tree), column); | 640 gtk_tree_view_append_column(GTK_TREE_VIEW(tree), column); |
641 | 641 |
642 /* Progress bar column */ | 642 /* Progress bar column */ |
643 renderer = gaim_gtk_cell_renderer_progress_new(); | 643 renderer = pidgin_cell_renderer_progress_new(); |
644 column = gtk_tree_view_column_new_with_attributes(_("Progress"), renderer, | 644 column = gtk_tree_view_column_new_with_attributes(_("Progress"), renderer, |
645 "percentage", COLUMN_PROGRESS, NULL); | 645 "percentage", COLUMN_PROGRESS, NULL); |
646 gtk_tree_view_column_set_resizable(GTK_TREE_VIEW_COLUMN(column), TRUE); | 646 gtk_tree_view_column_set_resizable(GTK_TREE_VIEW_COLUMN(column), TRUE); |
647 gtk_tree_view_append_column(GTK_TREE_VIEW(tree), column); | 647 gtk_tree_view_append_column(GTK_TREE_VIEW(tree), column); |
648 | 648 |
674 | 674 |
675 return sw; | 675 return sw; |
676 } | 676 } |
677 | 677 |
678 static GtkWidget * | 678 static GtkWidget * |
679 make_info_table(GaimGtkXferDialog *dialog) | 679 make_info_table(PidginXferDialog *dialog) |
680 { | 680 { |
681 GtkWidget *table; | 681 GtkWidget *table; |
682 GtkWidget *label; | 682 GtkWidget *label; |
683 int i; | 683 int i; |
684 | 684 |
736 gtk_widget_show(dialog->progress); | 736 gtk_widget_show(dialog->progress); |
737 | 737 |
738 return table; | 738 return table; |
739 } | 739 } |
740 | 740 |
741 GaimGtkXferDialog * | 741 PidginXferDialog * |
742 gaim_gtkxfer_dialog_new(void) | 742 pidginxfer_dialog_new(void) |
743 { | 743 { |
744 GaimGtkXferDialog *dialog; | 744 PidginXferDialog *dialog; |
745 GtkWidget *window; | 745 GtkWidget *window; |
746 GtkWidget *vbox1, *vbox2; | 746 GtkWidget *vbox1, *vbox2; |
747 GtkWidget *bbox; | 747 GtkWidget *bbox; |
748 GtkWidget *sw; | 748 GtkWidget *sw; |
749 GtkWidget *button; | 749 GtkWidget *button; |
750 GtkWidget *expander; | 750 GtkWidget *expander; |
751 GtkWidget *table; | 751 GtkWidget *table; |
752 GtkWidget *checkbox; | 752 GtkWidget *checkbox; |
753 | 753 |
754 dialog = g_new0(GaimGtkXferDialog, 1); | 754 dialog = g_new0(PidginXferDialog, 1); |
755 dialog->keep_open = | 755 dialog->keep_open = |
756 gaim_prefs_get_bool("/gaim/gtk/filetransfer/keep_open"); | 756 gaim_prefs_get_bool("/gaim/gtk/filetransfer/keep_open"); |
757 dialog->auto_clear = | 757 dialog->auto_clear = |
758 gaim_prefs_get_bool("/gaim/gtk/filetransfer/clear_finished"); | 758 gaim_prefs_get_bool("/gaim/gtk/filetransfer/clear_finished"); |
759 | 759 |
886 | 886 |
887 return dialog; | 887 return dialog; |
888 } | 888 } |
889 | 889 |
890 void | 890 void |
891 gaim_gtkxfer_dialog_destroy(GaimGtkXferDialog *dialog) | 891 pidginxfer_dialog_destroy(PidginXferDialog *dialog) |
892 { | 892 { |
893 g_return_if_fail(dialog != NULL); | 893 g_return_if_fail(dialog != NULL); |
894 | 894 |
895 gaim_notify_close_with_handle(dialog); | 895 gaim_notify_close_with_handle(dialog); |
896 | 896 |
898 | 898 |
899 g_free(dialog); | 899 g_free(dialog); |
900 } | 900 } |
901 | 901 |
902 void | 902 void |
903 gaim_gtkxfer_dialog_show(GaimGtkXferDialog *dialog) | 903 pidginxfer_dialog_show(PidginXferDialog *dialog) |
904 { | 904 { |
905 GaimGtkXferDialog *tmp; | 905 PidginXferDialog *tmp; |
906 | 906 |
907 if (dialog == NULL) { | 907 if (dialog == NULL) { |
908 tmp = gaim_get_gtkxfer_dialog(); | 908 tmp = gaim_get_gtkxfer_dialog(); |
909 | 909 |
910 if (tmp == NULL) { | 910 if (tmp == NULL) { |
911 tmp = gaim_gtkxfer_dialog_new(); | 911 tmp = pidginxfer_dialog_new(); |
912 gaim_set_gtkxfer_dialog(tmp); | 912 gaim_set_gtkxfer_dialog(tmp); |
913 } | 913 } |
914 | 914 |
915 gtk_widget_show(tmp->window); | 915 gtk_widget_show(tmp->window); |
916 } else { | 916 } else { |
917 gtk_widget_show(dialog->window); | 917 gtk_widget_show(dialog->window); |
918 } | 918 } |
919 } | 919 } |
920 | 920 |
921 void | 921 void |
922 gaim_gtkxfer_dialog_hide(GaimGtkXferDialog *dialog) | 922 pidginxfer_dialog_hide(PidginXferDialog *dialog) |
923 { | 923 { |
924 g_return_if_fail(dialog != NULL); | 924 g_return_if_fail(dialog != NULL); |
925 | 925 |
926 gaim_notify_close_with_handle(dialog); | 926 gaim_notify_close_with_handle(dialog); |
927 | 927 |
928 gtk_widget_hide(dialog->window); | 928 gtk_widget_hide(dialog->window); |
929 } | 929 } |
930 | 930 |
931 void | 931 void |
932 gaim_gtkxfer_dialog_add_xfer(GaimGtkXferDialog *dialog, GaimXfer *xfer) | 932 pidginxfer_dialog_add_xfer(PidginXferDialog *dialog, GaimXfer *xfer) |
933 { | 933 { |
934 GaimGtkXferUiData *data; | 934 PidginXferUiData *data; |
935 GaimXferType type; | 935 GaimXferType type; |
936 GdkPixbuf *pixbuf; | 936 GdkPixbuf *pixbuf; |
937 char *size_str, *remaining_str; | 937 char *size_str, *remaining_str; |
938 char *lfilename, *utf8; | 938 char *lfilename, *utf8; |
939 | 939 |
940 g_return_if_fail(dialog != NULL); | 940 g_return_if_fail(dialog != NULL); |
941 g_return_if_fail(xfer != NULL); | 941 g_return_if_fail(xfer != NULL); |
942 | 942 |
943 gaim_xfer_ref(xfer); | 943 gaim_xfer_ref(xfer); |
944 | 944 |
945 data = GAIM_GTKXFER(xfer); | 945 data = PIDGINXFER(xfer); |
946 data->in_list = TRUE; | 946 data->in_list = TRUE; |
947 | 947 |
948 gaim_gtkxfer_dialog_show(dialog); | 948 pidginxfer_dialog_show(dialog); |
949 | 949 |
950 data->last_updated_time = 0; | 950 data->last_updated_time = 0; |
951 | 951 |
952 type = gaim_xfer_get_type(xfer); | 952 type = gaim_xfer_get_type(xfer); |
953 | 953 |
989 ensure_row_selected(dialog); | 989 ensure_row_selected(dialog); |
990 update_title_progress(dialog); | 990 update_title_progress(dialog); |
991 } | 991 } |
992 | 992 |
993 void | 993 void |
994 gaim_gtkxfer_dialog_remove_xfer(GaimGtkXferDialog *dialog, | 994 pidginxfer_dialog_remove_xfer(PidginXferDialog *dialog, |
995 GaimXfer *xfer) | 995 GaimXfer *xfer) |
996 { | 996 { |
997 GaimGtkXferUiData *data; | 997 PidginXferUiData *data; |
998 | 998 |
999 g_return_if_fail(dialog != NULL); | 999 g_return_if_fail(dialog != NULL); |
1000 g_return_if_fail(xfer != NULL); | 1000 g_return_if_fail(xfer != NULL); |
1001 | 1001 |
1002 data = GAIM_GTKXFER(xfer); | 1002 data = PIDGINXFER(xfer); |
1003 | 1003 |
1004 if (data == NULL) | 1004 if (data == NULL) |
1005 return; | 1005 return; |
1006 | 1006 |
1007 if (!data->in_list) | 1007 if (!data->in_list) |
1018 update_title_progress(dialog); | 1018 update_title_progress(dialog); |
1019 gaim_xfer_unref(xfer); | 1019 gaim_xfer_unref(xfer); |
1020 } | 1020 } |
1021 | 1021 |
1022 void | 1022 void |
1023 gaim_gtkxfer_dialog_cancel_xfer(GaimGtkXferDialog *dialog, | 1023 pidginxfer_dialog_cancel_xfer(PidginXferDialog *dialog, |
1024 GaimXfer *xfer) | 1024 GaimXfer *xfer) |
1025 { | 1025 { |
1026 GaimGtkXferUiData *data; | 1026 PidginXferUiData *data; |
1027 GdkPixbuf *pixbuf; | 1027 GdkPixbuf *pixbuf; |
1028 const gchar *status; | 1028 const gchar *status; |
1029 | 1029 |
1030 g_return_if_fail(dialog != NULL); | 1030 g_return_if_fail(dialog != NULL); |
1031 g_return_if_fail(xfer != NULL); | 1031 g_return_if_fail(xfer != NULL); |
1032 | 1032 |
1033 data = GAIM_GTKXFER(xfer); | 1033 data = PIDGINXFER(xfer); |
1034 | 1034 |
1035 if (data == NULL) | 1035 if (data == NULL) |
1036 return; | 1036 return; |
1037 | 1037 |
1038 if (!data->in_list) | 1038 if (!data->in_list) |
1039 return; | 1039 return; |
1040 | 1040 |
1041 if ((gaim_xfer_get_status(xfer) == GAIM_XFER_STATUS_CANCEL_LOCAL) && (dialog->auto_clear)) { | 1041 if ((gaim_xfer_get_status(xfer) == GAIM_XFER_STATUS_CANCEL_LOCAL) && (dialog->auto_clear)) { |
1042 gaim_gtkxfer_dialog_remove_xfer(dialog, xfer); | 1042 pidginxfer_dialog_remove_xfer(dialog, xfer); |
1043 return; | 1043 return; |
1044 } | 1044 } |
1045 | 1045 |
1046 data = GAIM_GTKXFER(xfer); | 1046 data = PIDGINXFER(xfer); |
1047 | 1047 |
1048 update_detailed_info(dialog, xfer); | 1048 update_detailed_info(dialog, xfer); |
1049 update_title_progress(dialog); | 1049 update_title_progress(dialog); |
1050 | 1050 |
1051 pixbuf = gtk_widget_render_icon(dialog->window, | 1051 pixbuf = gtk_widget_render_icon(dialog->window, |
1066 | 1066 |
1067 update_buttons(dialog, xfer); | 1067 update_buttons(dialog, xfer); |
1068 } | 1068 } |
1069 | 1069 |
1070 void | 1070 void |
1071 gaim_gtkxfer_dialog_update_xfer(GaimGtkXferDialog *dialog, | 1071 pidginxfer_dialog_update_xfer(PidginXferDialog *dialog, |
1072 GaimXfer *xfer) | 1072 GaimXfer *xfer) |
1073 { | 1073 { |
1074 GaimGtkXferUiData *data; | 1074 PidginXferUiData *data; |
1075 char *size_str, *remaining_str; | 1075 char *size_str, *remaining_str; |
1076 GtkTreeSelection *selection; | 1076 GtkTreeSelection *selection; |
1077 time_t current_time; | 1077 time_t current_time; |
1078 GtkTreeIter iter; | 1078 GtkTreeIter iter; |
1079 gboolean valid; | 1079 gboolean valid; |
1080 | 1080 |
1081 g_return_if_fail(dialog != NULL); | 1081 g_return_if_fail(dialog != NULL); |
1082 g_return_if_fail(xfer != NULL); | 1082 g_return_if_fail(xfer != NULL); |
1083 | 1083 |
1084 if ((data = GAIM_GTKXFER(xfer)) == NULL) | 1084 if ((data = PIDGINXFER(xfer)) == NULL) |
1085 return; | 1085 return; |
1086 | 1086 |
1087 if (data->in_list == FALSE) | 1087 if (data->in_list == FALSE) |
1088 return; | 1088 return; |
1089 | 1089 |
1126 update_title_progress(dialog); | 1126 update_title_progress(dialog); |
1127 if (xfer == dialog->selected_xfer) | 1127 if (xfer == dialog->selected_xfer) |
1128 update_detailed_info(xfer_dialog, xfer); | 1128 update_detailed_info(xfer_dialog, xfer); |
1129 | 1129 |
1130 if (gaim_xfer_is_completed(xfer) && dialog->auto_clear) | 1130 if (gaim_xfer_is_completed(xfer) && dialog->auto_clear) |
1131 gaim_gtkxfer_dialog_remove_xfer(dialog, xfer); | 1131 pidginxfer_dialog_remove_xfer(dialog, xfer); |
1132 else | 1132 else |
1133 update_buttons(dialog, xfer); | 1133 update_buttons(dialog, xfer); |
1134 | 1134 |
1135 /* | 1135 /* |
1136 * If all transfers are finished, and the pref is set, then | 1136 * If all transfers are finished, and the pref is set, then |
1155 | 1155 |
1156 valid = gtk_tree_model_iter_next(GTK_TREE_MODEL(dialog->model), &iter); | 1156 valid = gtk_tree_model_iter_next(GTK_TREE_MODEL(dialog->model), &iter); |
1157 } | 1157 } |
1158 | 1158 |
1159 /* If we got to this point then we know everything is finished */ | 1159 /* If we got to this point then we know everything is finished */ |
1160 gaim_gtkxfer_dialog_hide(dialog); | 1160 pidginxfer_dialog_hide(dialog); |
1161 } | 1161 } |
1162 | 1162 |
1163 /************************************************************************** | 1163 /************************************************************************** |
1164 * File Transfer UI Ops | 1164 * File Transfer UI Ops |
1165 **************************************************************************/ | 1165 **************************************************************************/ |
1166 static void | 1166 static void |
1167 gaim_gtkxfer_new_xfer(GaimXfer *xfer) | 1167 pidginxfer_new_xfer(GaimXfer *xfer) |
1168 { | 1168 { |
1169 GaimGtkXferUiData *data; | 1169 PidginXferUiData *data; |
1170 | 1170 |
1171 /* This is where we're setting xfer->ui_data for the first time. */ | 1171 /* This is where we're setting xfer->ui_data for the first time. */ |
1172 data = g_new0(GaimGtkXferUiData, 1); | 1172 data = g_new0(PidginXferUiData, 1); |
1173 xfer->ui_data = data; | 1173 xfer->ui_data = data; |
1174 } | 1174 } |
1175 | 1175 |
1176 static void | 1176 static void |
1177 gaim_gtkxfer_destroy(GaimXfer *xfer) | 1177 pidginxfer_destroy(GaimXfer *xfer) |
1178 { | 1178 { |
1179 GaimGtkXferUiData *data; | 1179 PidginXferUiData *data; |
1180 | 1180 |
1181 data = GAIM_GTKXFER(xfer); | 1181 data = PIDGINXFER(xfer); |
1182 if (data) { | 1182 if (data) { |
1183 g_free(data->name); | 1183 g_free(data->name); |
1184 g_free(data); | 1184 g_free(data); |
1185 xfer->ui_data = NULL; | 1185 xfer->ui_data = NULL; |
1186 } | 1186 } |
1187 } | 1187 } |
1188 | 1188 |
1189 static void | 1189 static void |
1190 gaim_gtkxfer_add_xfer(GaimXfer *xfer) | 1190 pidginxfer_add_xfer(GaimXfer *xfer) |
1191 { | 1191 { |
1192 if (xfer_dialog == NULL) | 1192 if (xfer_dialog == NULL) |
1193 xfer_dialog = gaim_gtkxfer_dialog_new(); | 1193 xfer_dialog = pidginxfer_dialog_new(); |
1194 | 1194 |
1195 gaim_gtkxfer_dialog_add_xfer(xfer_dialog, xfer); | 1195 pidginxfer_dialog_add_xfer(xfer_dialog, xfer); |
1196 } | 1196 } |
1197 | 1197 |
1198 static void | 1198 static void |
1199 gaim_gtkxfer_update_progress(GaimXfer *xfer, double percent) | 1199 pidginxfer_update_progress(GaimXfer *xfer, double percent) |
1200 { | 1200 { |
1201 gaim_gtkxfer_dialog_update_xfer(xfer_dialog, xfer); | 1201 pidginxfer_dialog_update_xfer(xfer_dialog, xfer); |
1202 } | 1202 } |
1203 | 1203 |
1204 static void | 1204 static void |
1205 gaim_gtkxfer_cancel_local(GaimXfer *xfer) | 1205 pidginxfer_cancel_local(GaimXfer *xfer) |
1206 { | 1206 { |
1207 if (xfer_dialog) | 1207 if (xfer_dialog) |
1208 gaim_gtkxfer_dialog_cancel_xfer(xfer_dialog, xfer); | 1208 pidginxfer_dialog_cancel_xfer(xfer_dialog, xfer); |
1209 } | 1209 } |
1210 | 1210 |
1211 static void | 1211 static void |
1212 gaim_gtkxfer_cancel_remote(GaimXfer *xfer) | 1212 pidginxfer_cancel_remote(GaimXfer *xfer) |
1213 { | 1213 { |
1214 if (xfer_dialog) | 1214 if (xfer_dialog) |
1215 gaim_gtkxfer_dialog_cancel_xfer(xfer_dialog, xfer); | 1215 pidginxfer_dialog_cancel_xfer(xfer_dialog, xfer); |
1216 } | 1216 } |
1217 | 1217 |
1218 static GaimXferUiOps ops = | 1218 static GaimXferUiOps ops = |
1219 { | 1219 { |
1220 gaim_gtkxfer_new_xfer, | 1220 pidginxfer_new_xfer, |
1221 gaim_gtkxfer_destroy, | 1221 pidginxfer_destroy, |
1222 gaim_gtkxfer_add_xfer, | 1222 pidginxfer_add_xfer, |
1223 gaim_gtkxfer_update_progress, | 1223 pidginxfer_update_progress, |
1224 gaim_gtkxfer_cancel_local, | 1224 pidginxfer_cancel_local, |
1225 gaim_gtkxfer_cancel_remote | 1225 pidginxfer_cancel_remote |
1226 }; | 1226 }; |
1227 | 1227 |
1228 /************************************************************************** | 1228 /************************************************************************** |
1229 * GTK+ File Transfer API | 1229 * GTK+ File Transfer API |
1230 **************************************************************************/ | 1230 **************************************************************************/ |
1231 void | 1231 void |
1232 gaim_gtk_xfers_init(void) | 1232 pidgin_xfers_init(void) |
1233 { | 1233 { |
1234 gaim_prefs_add_none("/gaim/gtk/filetransfer"); | 1234 gaim_prefs_add_none("/gaim/gtk/filetransfer"); |
1235 gaim_prefs_add_bool("/gaim/gtk/filetransfer/clear_finished", TRUE); | 1235 gaim_prefs_add_bool("/gaim/gtk/filetransfer/clear_finished", TRUE); |
1236 gaim_prefs_add_bool("/gaim/gtk/filetransfer/keep_open", FALSE); | 1236 gaim_prefs_add_bool("/gaim/gtk/filetransfer/keep_open", FALSE); |
1237 } | 1237 } |
1238 | 1238 |
1239 void | 1239 void |
1240 gaim_gtk_xfers_uninit(void) | 1240 pidgin_xfers_uninit(void) |
1241 { | 1241 { |
1242 if (xfer_dialog != NULL) | 1242 if (xfer_dialog != NULL) |
1243 gaim_gtkxfer_dialog_destroy(xfer_dialog); | 1243 pidginxfer_dialog_destroy(xfer_dialog); |
1244 } | 1244 } |
1245 | 1245 |
1246 void | 1246 void |
1247 gaim_set_gtkxfer_dialog(GaimGtkXferDialog *dialog) | 1247 gaim_set_gtkxfer_dialog(PidginXferDialog *dialog) |
1248 { | 1248 { |
1249 xfer_dialog = dialog; | 1249 xfer_dialog = dialog; |
1250 } | 1250 } |
1251 | 1251 |
1252 GaimGtkXferDialog * | 1252 PidginXferDialog * |
1253 gaim_get_gtkxfer_dialog(void) | 1253 gaim_get_gtkxfer_dialog(void) |
1254 { | 1254 { |
1255 return xfer_dialog; | 1255 return xfer_dialog; |
1256 } | 1256 } |
1257 | 1257 |
1258 GaimXferUiOps * | 1258 GaimXferUiOps * |
1259 gaim_gtk_xfers_get_ui_ops(void) | 1259 pidgin_xfers_get_ui_ops(void) |
1260 { | 1260 { |
1261 return &ops; | 1261 return &ops; |
1262 } | 1262 } |