Commit 8c109bbc1bbdb5358817fcb6e3d7dba9f0253a99
1 parent
db0c09d7
Exists in
master
and in
5 other branches
Mudando dialogo de transferencia de arquivos para gtkgrid
Showing
1 changed file
with
104 additions
and
13 deletions
Show diff stats
src/pw3270/filetransfer.c
| @@ -177,7 +177,11 @@ static void check_entry(GtkEditable *editable, struct ftdialog *dlg) | @@ -177,7 +177,11 @@ static void check_entry(GtkEditable *editable, struct ftdialog *dlg) | ||
| 177 | gtk_widget_set_sensitive(dlg->ready,is_dialog_ok(editable,dlg)); | 177 | gtk_widget_set_sensitive(dlg->ready,is_dialog_ok(editable,dlg)); |
| 178 | } | 178 | } |
| 179 | 179 | ||
| 180 | +#if GTK_CHECK_VERSION(3,0,0) | ||
| 181 | +static GtkEntry * add_filename_entry(GObject *action, int ix, int row, struct ftdialog *dlg, GtkGrid *grid) | ||
| 182 | +#else | ||
| 180 | static GtkEntry * add_filename_entry(GObject *action, int ix, int row, struct ftdialog *dlg, GtkTable *table) | 183 | static GtkEntry * add_filename_entry(GObject *action, int ix, int row, struct ftdialog *dlg, GtkTable *table) |
| 184 | +#endif // GTK_CHECK_VERSION | ||
| 181 | { | 185 | { |
| 182 | static const gchar * label_text[] = { N_( "_Local file name:" ), N_( "_Host file name:" ) }; | 186 | static const gchar * label_text[] = { N_( "_Local file name:" ), N_( "_Host file name:" ) }; |
| 183 | static const gchar * attr[] = { "local", "remote" }; | 187 | static const gchar * attr[] = { "local", "remote" }; |
| @@ -187,52 +191,93 @@ static GtkEntry * add_filename_entry(GObject *action, int ix, int row, struct ft | @@ -187,52 +191,93 @@ static GtkEntry * add_filename_entry(GObject *action, int ix, int row, struct ft | ||
| 187 | gchar * val; | 191 | gchar * val; |
| 188 | 192 | ||
| 189 | gtk_misc_set_alignment(GTK_MISC(label),0,.5); | 193 | gtk_misc_set_alignment(GTK_MISC(label),0,.5); |
| 194 | + | ||
| 195 | +#if GTK_CHECK_VERSION(3,0,0) | ||
| 196 | + gtk_grid_attach(grid,label,0,row,1,1); | ||
| 197 | +#else | ||
| 190 | gtk_table_attach(GTK_TABLE(table),label,0,1,row,row+1,GTK_FILL,GTK_FILL,2,2); | 198 | gtk_table_attach(GTK_TABLE(table),label,0,1,row,row+1,GTK_FILL,GTK_FILL,2,2); |
| 199 | +#endif // GTK_CHECK_VERSION | ||
| 191 | 200 | ||
| 192 | gtk_widget_set_name(entry,attr[ix]); | 201 | gtk_widget_set_name(entry,attr[ix]); |
| 193 | 202 | ||
| 194 | val = get_attribute(action,dlg,attr[ix]); | 203 | val = get_attribute(action,dlg,attr[ix]); |
| 195 | - gtk_entry_set_text(dlg->file[ix],val); | 204 | + gtk_entry_set_text(GTK_ENTRY(entry),val); |
| 196 | g_free(val); | 205 | g_free(val); |
| 197 | 206 | ||
| 198 | gtk_entry_set_width_chars(GTK_ENTRY(entry),40); | 207 | gtk_entry_set_width_chars(GTK_ENTRY(entry),40); |
| 199 | 208 | ||
| 200 | gtk_label_set_mnemonic_widget(GTK_LABEL(label),entry); | 209 | gtk_label_set_mnemonic_widget(GTK_LABEL(label),entry); |
| 201 | 210 | ||
| 211 | +#if GTK_CHECK_VERSION(3,0,0) | ||
| 212 | + gtk_grid_attach(grid,entry,1,row,1,1); | ||
| 213 | +#else | ||
| 202 | gtk_table_attach(GTK_TABLE(table),entry,1,3,row,row+1,GTK_EXPAND|GTK_SHRINK|GTK_FILL,GTK_EXPAND|GTK_SHRINK|GTK_FILL,2,2); | 214 | gtk_table_attach(GTK_TABLE(table),entry,1,3,row,row+1,GTK_EXPAND|GTK_SHRINK|GTK_FILL,GTK_EXPAND|GTK_SHRINK|GTK_FILL,2,2); |
| 215 | +#endif // GTK_CHECK_VERSION | ||
| 203 | 216 | ||
| 204 | return GTK_ENTRY(entry); | 217 | return GTK_ENTRY(entry); |
| 205 | } | 218 | } |
| 206 | 219 | ||
| 207 | static void add_file_fields(GObject *action, struct ftdialog *dlg) | 220 | static void add_file_fields(GObject *action, struct ftdialog *dlg) |
| 208 | { | 221 | { |
| 209 | - GtkTable * table = GTK_TABLE(gtk_table_new(2,3,FALSE)); | ||
| 210 | GtkWidget * widget; | 222 | GtkWidget * widget; |
| 211 | 223 | ||
| 224 | +#if GTK_CHECK_VERSION(3,0,0) | ||
| 225 | + GtkGrid * grid = GTK_GRID(gtk_grid_new()); | ||
| 226 | + | ||
| 227 | + gtk_container_set_border_width(GTK_CONTAINER(grid),2); | ||
| 228 | + gtk_grid_set_column_spacing(grid,5); | ||
| 229 | + gtk_grid_set_row_spacing(grid,3); | ||
| 230 | + | ||
| 231 | +#else | ||
| 232 | + | ||
| 233 | + GtkTable * table = GTK_TABLE(gtk_table_new(2,3,FALSE)); | ||
| 234 | + | ||
| 212 | gtk_container_set_border_width(GTK_CONTAINER(table),2); | 235 | gtk_container_set_border_width(GTK_CONTAINER(table),2); |
| 213 | 236 | ||
| 237 | +#endif // GTK_CHECK_VERSION | ||
| 238 | + | ||
| 239 | + | ||
| 214 | if(dlg->option&LIB3270_FT_OPTION_RECEIVE) | 240 | if(dlg->option&LIB3270_FT_OPTION_RECEIVE) |
| 215 | { | 241 | { |
| 216 | // Receiving file, first the remote filename | 242 | // Receiving file, first the remote filename |
| 217 | - dlg->file[1] = add_filename_entry(action,1,0,dlg,table); | 243 | + widget = gtk_button_new_with_mnemonic( _( "_Browse" ) ); |
| 218 | 244 | ||
| 245 | +#if GTK_CHECK_VERSION(3,0,0) | ||
| 246 | + dlg->file[1] = add_filename_entry(action,1,0,dlg,grid); | ||
| 247 | + dlg->file[0] = add_filename_entry(action,0,1,dlg,grid); | ||
| 248 | + gtk_grid_attach(grid,widget,2,1,1,1); | ||
| 249 | +#else | ||
| 250 | + dlg->file[1] = add_filename_entry(action,1,0,dlg,table); | ||
| 219 | dlg->file[0] = add_filename_entry(action,0,1,dlg,table); | 251 | dlg->file[0] = add_filename_entry(action,0,1,dlg,table); |
| 220 | - widget = gtk_button_new_with_mnemonic( _( "_Browse" ) ); | ||
| 221 | - g_signal_connect(G_OBJECT(widget),"clicked",G_CALLBACK(browse_file),dlg); | ||
| 222 | gtk_table_attach(GTK_TABLE(table),widget,3,4,1,2,0,0,2,2); | 252 | gtk_table_attach(GTK_TABLE(table),widget,3,4,1,2,0,0,2,2); |
| 253 | +#endif // GTK_CHECK_VERSION | ||
| 254 | + | ||
| 255 | + g_signal_connect(G_OBJECT(widget),"clicked",G_CALLBACK(browse_file),dlg); | ||
| 223 | } | 256 | } |
| 224 | else | 257 | else |
| 225 | { | 258 | { |
| 226 | // Sending file, first the local filename | 259 | // Sending file, first the local filename |
| 227 | - dlg->file[0] = add_filename_entry(action,0,0,dlg,table); | ||
| 228 | widget = gtk_button_new_with_mnemonic( _( "_Browse" ) ); | 260 | widget = gtk_button_new_with_mnemonic( _( "_Browse" ) ); |
| 229 | - g_signal_connect(G_OBJECT(widget),"clicked",G_CALLBACK(browse_file),dlg); | ||
| 230 | - gtk_table_attach(GTK_TABLE(table),widget,3,4,0,1,0,0,2,2); | ||
| 231 | 261 | ||
| 262 | +#if GTK_CHECK_VERSION(3,0,0) | ||
| 263 | + dlg->file[0] = add_filename_entry(action,0,0,dlg,grid); | ||
| 264 | + dlg->file[1] = add_filename_entry(action,1,1,dlg,grid); | ||
| 265 | + gtk_grid_attach(grid,widget,2,0,1,1); | ||
| 266 | +#else | ||
| 267 | + dlg->file[0] = add_filename_entry(action,0,0,dlg,table); | ||
| 232 | dlg->file[1] = add_filename_entry(action,1,1,dlg,table); | 268 | dlg->file[1] = add_filename_entry(action,1,1,dlg,table); |
| 269 | + gtk_table_attach(GTK_TABLE(table),widget,3,4,0,1,0,0,2,2); | ||
| 270 | + | ||
| 271 | +#endif // GTK_CHECK_VERSION | ||
| 272 | + | ||
| 273 | + g_signal_connect(G_OBJECT(widget),"clicked",G_CALLBACK(browse_file),dlg); | ||
| 233 | } | 274 | } |
| 234 | 275 | ||
| 276 | +#if GTK_CHECK_VERSION(3,0,0) | ||
| 277 | + gtk_box_pack_start(GTK_BOX(gtk_dialog_get_content_area(GTK_DIALOG(dlg->dialog))),GTK_WIDGET(grid),TRUE,TRUE,2); | ||
| 278 | +#else | ||
| 235 | gtk_box_pack_start(GTK_BOX(gtk_dialog_get_content_area(GTK_DIALOG(dlg->dialog))),GTK_WIDGET(table),FALSE,FALSE,2); | 279 | gtk_box_pack_start(GTK_BOX(gtk_dialog_get_content_area(GTK_DIALOG(dlg->dialog))),GTK_WIDGET(table),FALSE,FALSE,2); |
| 280 | +#endif // GTK_CHECK_VERSION | ||
| 236 | 281 | ||
| 237 | } | 282 | } |
| 238 | 283 | ||
| @@ -260,10 +305,22 @@ static void add_transfer_options(GObject *action, struct ftdialog *dlg) | @@ -260,10 +305,22 @@ static void add_transfer_options(GObject *action, struct ftdialog *dlg) | ||
| 260 | { LIB3270_FT_OPTION_REMAP_ASCII, "remap", N_( "_Remap ASCII Characters" ) } | 305 | { LIB3270_FT_OPTION_REMAP_ASCII, "remap", N_( "_Remap ASCII Characters" ) } |
| 261 | }; | 306 | }; |
| 262 | 307 | ||
| 263 | - GtkTable * table = GTK_TABLE(gtk_table_new(3,2,TRUE)); | ||
| 264 | GtkWidget * frame = gtk_frame_new( _( "Transfer options" ) ); | 308 | GtkWidget * frame = gtk_frame_new( _( "Transfer options" ) ); |
| 265 | int row, col, f; | 309 | int row, col, f; |
| 266 | 310 | ||
| 311 | +#if GTK_CHECK_VERSION(3,0,0) | ||
| 312 | + GtkGrid * grid = GTK_GRID(gtk_grid_new()); | ||
| 313 | + | ||
| 314 | + gtk_grid_set_column_spacing(grid,5); | ||
| 315 | + gtk_grid_set_row_spacing(grid,3); | ||
| 316 | + gtk_container_set_border_width(GTK_CONTAINER(grid),2); | ||
| 317 | + | ||
| 318 | + gtk_grid_set_column_homogeneous(grid,TRUE); | ||
| 319 | + | ||
| 320 | +#else | ||
| 321 | + GtkTable * table = GTK_TABLE(gtk_table_new(3,2,TRUE)); | ||
| 322 | +#endif // GTK_CHECK_VERSION | ||
| 323 | + | ||
| 267 | row=0; | 324 | row=0; |
| 268 | col=0; | 325 | col=0; |
| 269 | for(f=0;f < G_N_ELEMENTS(option);f++) | 326 | for(f=0;f < G_N_ELEMENTS(option);f++) |
| @@ -288,7 +345,12 @@ static void add_transfer_options(GObject *action, struct ftdialog *dlg) | @@ -288,7 +345,12 @@ static void add_transfer_options(GObject *action, struct ftdialog *dlg) | ||
| 288 | g_object_set_data(G_OBJECT(widget),"dlg",(gpointer) dlg); | 345 | g_object_set_data(G_OBJECT(widget),"dlg",(gpointer) dlg); |
| 289 | g_signal_connect(G_OBJECT(widget),"toggled", G_CALLBACK(toggle_option),(gpointer) &option[f]); | 346 | g_signal_connect(G_OBJECT(widget),"toggled", G_CALLBACK(toggle_option),(gpointer) &option[f]); |
| 290 | 347 | ||
| 348 | +#if GTK_CHECK_VERSION(3,0,0) | ||
| 349 | + gtk_grid_attach(grid,widget,col,row,1,1); | ||
| 350 | +#else | ||
| 291 | gtk_table_attach(table,widget,col,col+1,row,row+1,GTK_EXPAND|GTK_SHRINK|GTK_FILL,GTK_EXPAND|GTK_SHRINK|GTK_FILL,2,2); | 351 | gtk_table_attach(table,widget,col,col+1,row,row+1,GTK_EXPAND|GTK_SHRINK|GTK_FILL,GTK_EXPAND|GTK_SHRINK|GTK_FILL,2,2); |
| 352 | +#endif // GTK_CHECK_VERSION | ||
| 353 | + | ||
| 292 | if(col++ > 0) | 354 | if(col++ > 0) |
| 293 | { | 355 | { |
| 294 | row++; | 356 | row++; |
| @@ -296,7 +358,12 @@ static void add_transfer_options(GObject *action, struct ftdialog *dlg) | @@ -296,7 +358,12 @@ static void add_transfer_options(GObject *action, struct ftdialog *dlg) | ||
| 296 | } | 358 | } |
| 297 | } | 359 | } |
| 298 | 360 | ||
| 361 | +#if GTK_CHECK_VERSION(3,0,0) | ||
| 362 | + gtk_container_add(GTK_CONTAINER(frame),GTK_WIDGET(grid)); | ||
| 363 | +#else | ||
| 299 | gtk_container_add(GTK_CONTAINER(frame),GTK_WIDGET(table)); | 364 | gtk_container_add(GTK_CONTAINER(frame),GTK_WIDGET(table)); |
| 365 | +#endif // GTK_CHECK_VERSION | ||
| 366 | + | ||
| 300 | gtk_box_pack_start(GTK_BOX(gtk_dialog_get_content_area(GTK_DIALOG(dlg->dialog))),GTK_WIDGET(frame),FALSE,FALSE,2); | 367 | gtk_box_pack_start(GTK_BOX(gtk_dialog_get_content_area(GTK_DIALOG(dlg->dialog))),GTK_WIDGET(frame),FALSE,FALSE,2); |
| 301 | 368 | ||
| 302 | } | 369 | } |
| @@ -403,8 +470,6 @@ static void run_ft_dialog(GObject *action, GtkWidget *widget, struct ftdialog *d | @@ -403,8 +470,6 @@ static void run_ft_dialog(GObject *action, GtkWidget *widget, struct ftdialog *d | ||
| 403 | for(f=0;f<2;f++) | 470 | for(f=0;f<2;f++) |
| 404 | gtk_widget_set_sensitive(dlg->ready,is_dialog_ok(GTK_EDITABLE(dlg->file[f]),dlg)); | 471 | gtk_widget_set_sensitive(dlg->ready,is_dialog_ok(GTK_EDITABLE(dlg->file[f]),dlg)); |
| 405 | 472 | ||
| 406 | - gtk_widget_show_all(dlg->dialog); | ||
| 407 | - | ||
| 408 | for(f=0;f<G_N_ELEMENTS(dlg->parm);f++) | 473 | for(f=0;f<G_N_ELEMENTS(dlg->parm);f++) |
| 409 | { | 474 | { |
| 410 | if(dlg->parm[f]) | 475 | if(dlg->parm[f]) |
| @@ -421,6 +486,8 @@ static void run_ft_dialog(GObject *action, GtkWidget *widget, struct ftdialog *d | @@ -421,6 +486,8 @@ static void run_ft_dialog(GObject *action, GtkWidget *widget, struct ftdialog *d | ||
| 421 | } | 486 | } |
| 422 | } | 487 | } |
| 423 | 488 | ||
| 489 | + gtk_widget_show_all(dlg->dialog); | ||
| 490 | + | ||
| 424 | if(gtk_dialog_run(GTK_DIALOG(dlg->dialog)) != GTK_RESPONSE_ACCEPT) | 491 | if(gtk_dialog_run(GTK_DIALOG(dlg->dialog)) != GTK_RESPONSE_ACCEPT) |
| 425 | { | 492 | { |
| 426 | gtk_widget_destroy(dlg->dialog); | 493 | gtk_widget_destroy(dlg->dialog); |
| @@ -849,12 +916,25 @@ void upload_action(GtkAction *action, GtkWidget *widget) | @@ -849,12 +916,25 @@ void upload_action(GtkAction *action, GtkWidget *widget) | ||
| 849 | { "dftsize", N_( "DFT B_uffer size:" ) } | 916 | { "dftsize", N_( "DFT B_uffer size:" ) } |
| 850 | }; | 917 | }; |
| 851 | 918 | ||
| 852 | - GtkTable * table = GTK_TABLE(gtk_table_new(2,2,FALSE)); | ||
| 853 | - | ||
| 854 | int row, col, f; | 919 | int row, col, f; |
| 920 | + gchar * dft = g_object_get_data(action,"dft"); | ||
| 921 | + | ||
| 922 | +#if GTK_CHECK_VERSION(3,0,0) | ||
| 923 | + | ||
| 924 | + GtkGrid * grid = GTK_GRID(gtk_grid_new()); | ||
| 925 | + | ||
| 926 | + gtk_grid_set_column_spacing(grid,5); | ||
| 927 | + gtk_grid_set_row_spacing(grid,3); | ||
| 928 | + gtk_grid_set_column_homogeneous(grid,TRUE); | ||
| 929 | + gtk_container_set_border_width(GTK_CONTAINER(grid),2); | ||
| 930 | + | ||
| 931 | +#else | ||
| 932 | + GtkTable * table = GTK_TABLE(gtk_table_new(2,2,FALSE)); | ||
| 855 | 933 | ||
| 856 | gtk_container_set_border_width(GTK_CONTAINER(table),2); | 934 | gtk_container_set_border_width(GTK_CONTAINER(table),2); |
| 857 | 935 | ||
| 936 | +#endif // GTK_CHECK_VERSION | ||
| 937 | + | ||
| 858 | row=0; | 938 | row=0; |
| 859 | col=0; | 939 | col=0; |
| 860 | for(f=0;f < 5;f++) | 940 | for(f=0;f < 5;f++) |
| @@ -868,8 +948,13 @@ void upload_action(GtkAction *action, GtkWidget *widget) | @@ -868,8 +948,13 @@ void upload_action(GtkAction *action, GtkWidget *widget) | ||
| 868 | 948 | ||
| 869 | gtk_label_set_mnemonic_widget(GTK_LABEL(label),GTK_WIDGET(dlg.parm[f])); | 949 | gtk_label_set_mnemonic_widget(GTK_LABEL(label),GTK_WIDGET(dlg.parm[f])); |
| 870 | 950 | ||
| 951 | +#if GTK_CHECK_VERSION(3,0,0) | ||
| 952 | + gtk_grid_attach(grid,label,col,row,1,1); | ||
| 953 | + gtk_grid_attach(grid,GTK_WIDGET(dlg.parm[f]),col+1,row,1,1); | ||
| 954 | +#else | ||
| 871 | gtk_table_attach(table,label,col,col+1,row,row+1,GTK_EXPAND|GTK_SHRINK|GTK_FILL,GTK_EXPAND|GTK_SHRINK|GTK_FILL,2,2); | 955 | gtk_table_attach(table,label,col,col+1,row,row+1,GTK_EXPAND|GTK_SHRINK|GTK_FILL,GTK_EXPAND|GTK_SHRINK|GTK_FILL,2,2); |
| 872 | gtk_table_attach(table,GTK_WIDGET(dlg.parm[f]),col+1,col+2,row,row+1,GTK_EXPAND|GTK_SHRINK|GTK_FILL,GTK_EXPAND|GTK_SHRINK|GTK_FILL,2,2); | 956 | gtk_table_attach(table,GTK_WIDGET(dlg.parm[f]),col+1,col+2,row,row+1,GTK_EXPAND|GTK_SHRINK|GTK_FILL,GTK_EXPAND|GTK_SHRINK|GTK_FILL,2,2); |
| 957 | +#endif // GTK_CHECK_VERSION | ||
| 873 | 958 | ||
| 874 | col += 2; | 959 | col += 2; |
| 875 | if(col++ > 3) | 960 | if(col++ > 3) |
| @@ -880,7 +965,13 @@ void upload_action(GtkAction *action, GtkWidget *widget) | @@ -880,7 +965,13 @@ void upload_action(GtkAction *action, GtkWidget *widget) | ||
| 880 | 965 | ||
| 881 | } | 966 | } |
| 882 | 967 | ||
| 968 | + gtk_entry_set_text(GTK_ENTRY(dlg.parm[4]),dft ? dft : "4096"); | ||
| 969 | + | ||
| 970 | +#if GTK_CHECK_VERSION(3,0,0) | ||
| 971 | + gtk_box_pack_start(GTK_BOX(gtk_dialog_get_content_area(GTK_DIALOG(dlg.dialog))),GTK_WIDGET(grid),TRUE,TRUE,2); | ||
| 972 | +#else | ||
| 883 | gtk_box_pack_start(GTK_BOX(gtk_dialog_get_content_area(GTK_DIALOG(dlg.dialog))),GTK_WIDGET(table),TRUE,TRUE,2); | 973 | gtk_box_pack_start(GTK_BOX(gtk_dialog_get_content_area(GTK_DIALOG(dlg.dialog))),GTK_WIDGET(table),TRUE,TRUE,2); |
| 974 | +#endif // GTK_CHECK_VERSION | ||
| 884 | 975 | ||
| 885 | 976 | ||
| 886 | } | 977 | } |