Mercurial > gftp.yaz
comparison src/gtk/chmod_dialog.c @ 19:3b2dcdefc7e9
2002-09-15 Brian Masney <masneyb@gftp.org>
* lib/gftp.h (struct gftp_transfer) - changed the type of numfiles and
numdirs from unsigned long to long. This must be a signed field. This
is a bug I introduced a few days ago.
* lib/local.c (local_put_file) - remove the + off of the ab mode to
fdopen. This is also a bug I introduced a few days ago.
* src/gtk/transfer.c (gftp_gtk_calc_kbs) - make sure that the variable
difftime isn't a negative number when computing the KB/s
* src/gtk/menu-items.c (save_directory_listing) - remove casts to
GTK_OBJECT for the str variable
* src/gtk/gftp-gtk.c - use GTK_STOCK_* icons in place of left.xpm,
right.xpm, up.xpm, down.xpm and stop.xpm in GTK+ 2.0 port
* src/gtk/bookmarks.c - show GTK_STOCK_* icons on the popup menu
* src/gtk/bookmarks.c, src/gtk/chmod_dialog.c, src/gtk/menu-items.c,
src/gtk/misc-gtk.c, src/gtk/options_dialog.c and
src/gtk/view_dialog.c - use gtk_dialog_new_with_buttons in GTK+ 2.0
port to create the dialog. Also, associate gFTP icon with this dialog
* src/gtk/misc-gtk.c - changed the interface of MakeEditDialog and
MakeYesNoDialog. In the GTK+ 2.0 port, I now use stock icons in the
dialog buttons.
author | masneyb |
---|---|
date | Mon, 16 Sep 2002 12:27:50 +0000 |
parents | 8b1883341c6f |
children | c8ec7877432e |
comparison
equal
deleted
inserted
replaced
18:6b2e606554aa | 19:3b2dcdefc7e9 |
---|---|
28 static GtkWidget *suid, *sgid, *sticky, *ur, *uw, *ux, *gr, *gw, *gx, *or, *ow, | 28 static GtkWidget *suid, *sgid, *sticky, *ur, *uw, *ux, *gr, *gw, *gx, *or, *ow, |
29 *ox; | 29 *ox; |
30 static sigjmp_buf chmodenvir; | 30 static sigjmp_buf chmodenvir; |
31 static int mode; | 31 static int mode; |
32 | 32 |
33 #if !(GTK_MAJOR_VERSION == 1 && GTK_MINOR_VERSION == 2) | |
34 static void | |
35 chmod_action (GtkWidget * widget, gint response, gpointer wdata) | |
36 { | |
37 switch (response) | |
38 { | |
39 case GTK_RESPONSE_OK: | |
40 dochmod (widget, wdata); | |
41 /* no break */ | |
42 default: | |
43 gtk_widget_destroy (widget); | |
44 } | |
45 } | |
46 #endif | |
47 | |
48 | |
33 void | 49 void |
34 chmod_dialog (gpointer data) | 50 chmod_dialog (gpointer data) |
35 { | 51 { |
36 GtkWidget *tempwid, *dialog, *hbox, *vbox; | 52 GtkWidget *tempwid, *dialog, *hbox, *vbox; |
37 GList * templist, * filelist; | 53 GList * templist, * filelist; |
42 wdata = data; | 58 wdata = data; |
43 if (!check_status (_("Chmod"), wdata, wdata->request->use_threads, 1, 1, | 59 if (!check_status (_("Chmod"), wdata, wdata->request->use_threads, 1, 1, |
44 wdata->request->chmod != NULL)) | 60 wdata->request->chmod != NULL)) |
45 return; | 61 return; |
46 | 62 |
63 #if GTK_MAJOR_VERSION == 1 && GTK_MINOR_VERSION == 2 | |
47 dialog = gtk_dialog_new (); | 64 dialog = gtk_dialog_new (); |
48 gtk_window_set_title (GTK_WINDOW (dialog), _("Chmod")); | 65 gtk_window_set_title (GTK_WINDOW (dialog), _("Chmod")); |
49 gtk_window_set_wmclass (GTK_WINDOW(dialog), "Chmod", "gFTP"); | |
50 gtk_container_border_width (GTK_CONTAINER (GTK_DIALOG (dialog)->vbox), 10); | |
51 gtk_container_border_width (GTK_CONTAINER (GTK_DIALOG (dialog)->action_area), | 66 gtk_container_border_width (GTK_CONTAINER (GTK_DIALOG (dialog)->action_area), |
52 5); | 67 5); |
68 gtk_box_set_homogeneous (GTK_BOX (GTK_DIALOG (dialog)->action_area), TRUE); | |
69 #else | |
70 dialog = gtk_dialog_new_with_buttons (_("Chmod"), NULL, 0, | |
71 GTK_STOCK_OK, | |
72 GTK_RESPONSE_OK, | |
73 GTK_STOCK_CANCEL, | |
74 GTK_RESPONSE_CANCEL, | |
75 NULL); | |
76 #endif | |
77 gtk_window_set_wmclass (GTK_WINDOW(dialog), "Chmod", "gFTP"); | |
78 gtk_window_set_position (GTK_WINDOW (dialog), GTK_WIN_POS_MOUSE); | |
53 gtk_box_set_spacing (GTK_BOX (GTK_DIALOG (dialog)->vbox), 5); | 79 gtk_box_set_spacing (GTK_BOX (GTK_DIALOG (dialog)->vbox), 5); |
54 gtk_box_set_homogeneous (GTK_BOX (GTK_DIALOG (dialog)->action_area), TRUE); | 80 gtk_container_border_width (GTK_CONTAINER (GTK_DIALOG (dialog)->vbox), 10); |
55 gtk_window_set_position (GTK_WINDOW (dialog), GTK_WIN_POS_MOUSE); | 81 gtk_widget_realize (dialog); |
56 gtk_signal_connect_object (GTK_OBJECT (dialog), "delete_event", | 82 |
57 GTK_SIGNAL_FUNC (gtk_widget_destroy), | 83 if (gftp_icon != NULL) |
58 GTK_OBJECT (dialog)); | 84 { |
85 gdk_window_set_icon (dialog->window, NULL, gftp_icon->pixmap, | |
86 gftp_icon->bitmap); | |
87 gdk_window_set_icon_name (dialog->window, _("gFTP Icon")); | |
88 } | |
59 | 89 |
60 tempwid = gtk_label_new (_("You can now adjust the attributes of your file(s)\nNote: Not all ftp servers support the chmod feature")); | 90 tempwid = gtk_label_new (_("You can now adjust the attributes of your file(s)\nNote: Not all ftp servers support the chmod feature")); |
61 gtk_box_pack_start (GTK_BOX (GTK_DIALOG (dialog)->vbox), tempwid, FALSE, | 91 gtk_box_pack_start (GTK_BOX (GTK_DIALOG (dialog)->vbox), tempwid, FALSE, |
62 FALSE, 0); | 92 FALSE, 0); |
63 gtk_widget_show (tempwid); | 93 gtk_widget_show (tempwid); |
145 | 175 |
146 ox = gtk_check_button_new_with_label (_("Execute")); | 176 ox = gtk_check_button_new_with_label (_("Execute")); |
147 gtk_box_pack_start (GTK_BOX (vbox), ox, FALSE, FALSE, 0); | 177 gtk_box_pack_start (GTK_BOX (vbox), ox, FALSE, FALSE, 0); |
148 gtk_widget_show (ox); | 178 gtk_widget_show (ox); |
149 | 179 |
150 tempwid = gtk_button_new_with_label (_("Change")); | 180 #if GTK_MAJOR_VERSION == 1 && GTK_MINOR_VERSION == 2 |
181 tempwid = gtk_button_new_with_label (_("OK")); | |
151 GTK_WIDGET_SET_FLAGS (tempwid, GTK_CAN_DEFAULT); | 182 GTK_WIDGET_SET_FLAGS (tempwid, GTK_CAN_DEFAULT); |
152 gtk_box_pack_start (GTK_BOX (GTK_DIALOG (dialog)->action_area), tempwid, | 183 gtk_box_pack_start (GTK_BOX (GTK_DIALOG (dialog)->action_area), tempwid, |
153 TRUE, TRUE, 0); | 184 TRUE, TRUE, 0); |
154 gtk_signal_connect (GTK_OBJECT (tempwid), "clicked", | 185 gtk_signal_connect (GTK_OBJECT (tempwid), "clicked", |
155 GTK_SIGNAL_FUNC (dochmod), (gpointer) wdata); | 186 GTK_SIGNAL_FUNC (dochmod), (gpointer) wdata); |
165 TRUE, TRUE, 0); | 196 TRUE, TRUE, 0); |
166 gtk_signal_connect_object (GTK_OBJECT (tempwid), "clicked", | 197 gtk_signal_connect_object (GTK_OBJECT (tempwid), "clicked", |
167 GTK_SIGNAL_FUNC (gtk_widget_destroy), | 198 GTK_SIGNAL_FUNC (gtk_widget_destroy), |
168 GTK_OBJECT (dialog)); | 199 GTK_OBJECT (dialog)); |
169 gtk_widget_show (tempwid); | 200 gtk_widget_show (tempwid); |
201 #else | |
202 g_signal_connect (GTK_OBJECT (dialog), "response", | |
203 G_CALLBACK (chmod_action), wdata); | |
204 #endif | |
170 | 205 |
171 if (IS_ONE_SELECTED (wdata)) | 206 if (IS_ONE_SELECTED (wdata)) |
172 { | 207 { |
173 filelist = wdata->files; | 208 filelist = wdata->files; |
174 templist = GTK_CLIST (wdata->listbox)->selection; | 209 templist = GTK_CLIST (wdata->listbox)->selection; |