Commit 4bd5a87add0c4870328c488b5a9846c0f971b0e7
1 parent
19537083
Exists in
master
and in
5 other branches
Compatibilizando novos diálogos com gtk2
Showing
3 changed files
with
194 additions
and
42 deletions
Show diff stats
src/pw3270/ft/ftdialog.c
... | ... | @@ -113,11 +113,7 @@ static void v3270FTD_class_init(v3270FTDClass *klass) |
113 | 113 | // GtkDialogClass * widget_class = GTK_DIALOG_CLASS(klass); |
114 | 114 | |
115 | 115 | #if GTK_CHECK_VERSION(3,0,0) |
116 | - | |
117 | 116 | #else |
118 | - | |
119 | - #error Implementar | |
120 | - | |
121 | 117 | #endif // GTK_CHECK_VERSION |
122 | 118 | |
123 | 119 | } |
... | ... | @@ -171,21 +167,38 @@ static void toggle_option(GtkToggleButton *button, v3270FTD *dialog) |
171 | 167 | static GtkWidget * ftoption_new(v3270FTD *dialog, const struct ftoptions *opt) |
172 | 168 | { |
173 | 169 | GtkContainer * frame = GTK_CONTAINER(gtk_frame_new(_("Transfer options"))); |
174 | - GtkGrid * grid = GTK_GRID(gtk_grid_new()); | |
175 | 170 | int f; |
176 | 171 | |
172 | +#if GTK_CHECK_VERSION(3,0,0) | |
173 | + | |
174 | + GtkGrid * grid = GTK_GRID(gtk_grid_new()); | |
175 | + | |
177 | 176 | gtk_grid_set_row_homogeneous(grid,TRUE); |
178 | 177 | gtk_grid_set_column_homogeneous(grid,TRUE); |
179 | 178 | gtk_grid_set_column_spacing(grid,5); |
180 | 179 | gtk_grid_set_row_spacing(grid,5); |
181 | 180 | |
181 | +#else | |
182 | + | |
183 | + GtkTable * grid = GTK_TABLE(gtk_table_new(2,3,FALSE)); | |
184 | + | |
185 | + gtk_table_set_row_spacings(grid,5); | |
186 | + gtk_table_set_col_spacings(grid,5); | |
187 | + | |
188 | +#endif // GTK_CHECK_VERSION | |
189 | + | |
190 | + | |
182 | 191 | for(f=0;opt[f].label;f++) |
183 | 192 | { |
184 | 193 | GtkWidget * button = gtk_check_button_new_with_mnemonic(gettext(opt[f].label)); |
185 | 194 | gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(button),(dialog->options & opt[f].flag) != 0); |
186 | 195 | gtk_widget_set_tooltip_text(GTK_WIDGET(button),gettext(opt[f].tooltip)); |
196 | +#if GTK_CHECK_VERSION(3,0,0) | |
187 | 197 | gtk_widget_set_hexpand(button,TRUE); |
188 | 198 | gtk_grid_attach(grid,button,f&1,f/2,1,1); |
199 | +#else | |
200 | + gtk_table_attach_defaults(grid,button,f&1,(f&1)+1,f/2,(f/2)+1); | |
201 | +#endif // GTK_CHECK_VERSION | |
189 | 202 | g_object_set_data(G_OBJECT(button),"cfg",(gpointer) &opt[f]); |
190 | 203 | g_signal_connect(G_OBJECT(button),"toggled",G_CALLBACK(toggle_option),dialog); |
191 | 204 | dialog->button[opt->id] = GTK_TOGGLE_BUTTON(button); |
... | ... | @@ -196,7 +209,11 @@ static GtkWidget * ftoption_new(v3270FTD *dialog, const struct ftoptions *opt) |
196 | 209 | return GTK_WIDGET(frame); |
197 | 210 | } |
198 | 211 | |
212 | +#if GTK_CHECK_VERSION(3,0,0) | |
199 | 213 | static GtkWidget * ftvalue_new(v3270FTD *dialog, GtkGrid *grid, int r, const struct ftvalues *val) |
214 | +#else | |
215 | +static GtkWidget * ftvalue_new(v3270FTD *dialog, GtkTable *grid, int r, const struct ftvalues *val) | |
216 | +#endif // GTK_CHECK_VERSION | |
200 | 217 | { |
201 | 218 | int f; |
202 | 219 | |
... | ... | @@ -209,7 +226,6 @@ static GtkWidget * ftvalue_new(v3270FTD *dialog, GtkGrid *grid, int r, const str |
209 | 226 | |
210 | 227 | dialog->value[id] = GTK_SPIN_BUTTON(gtk_spin_button_new_with_range(0,99999,1)); |
211 | 228 | |
212 | - gtk_widget_set_hexpand(GTK_WIDGET(label),TRUE); | |
213 | 229 | gtk_misc_set_alignment(GTK_MISC(label),0,0.5); |
214 | 230 | |
215 | 231 | gtk_label_set_mnemonic_widget(GTK_LABEL(label),GTK_WIDGET(dialog->value[id])); |
... | ... | @@ -222,8 +238,15 @@ static GtkWidget * ftvalue_new(v3270FTD *dialog, GtkGrid *grid, int r, const str |
222 | 238 | |
223 | 239 | g_object_set_data(G_OBJECT(dialog->value[id]),"cfg",(gpointer) &val[f]); |
224 | 240 | |
241 | +#if GTK_CHECK_VERSION(3,0,0) | |
242 | + gtk_widget_set_hexpand(GTK_WIDGET(label),TRUE); | |
225 | 243 | gtk_grid_attach(grid,GTK_WIDGET(label),col,row,1,1); |
226 | 244 | gtk_grid_attach(grid,GTK_WIDGET(dialog->value[id]),col+1,row,1,1); |
245 | +#else | |
246 | + gtk_table_attach(grid,GTK_WIDGET(label),col,col+1,row,row+1,GTK_EXPAND|GTK_FILL,GTK_FILL,0,0); | |
247 | + gtk_table_attach(grid,GTK_WIDGET(dialog->value[id]),col+1,col+2,row,row+1,GTK_EXPAND|GTK_FILL,GTK_FILL,0,0); | |
248 | +#endif // GTK_CHECK_VERSION | |
249 | + | |
227 | 250 | |
228 | 251 | } |
229 | 252 | |
... | ... | @@ -234,7 +257,11 @@ static GtkWidget * ftvalue_new(v3270FTD *dialog, GtkGrid *grid, int r, const str |
234 | 257 | static GtkWidget * ftradio_new(v3270FTD *dialog, GtkToggleButton **button, LIB3270_FT_OPTION option, const gchar *title, const gchar *tooltip, const struct rdoptions *opt) |
235 | 258 | { |
236 | 259 | GtkContainer * frame = GTK_CONTAINER(gtk_frame_new(title)); |
260 | +#if GTK_CHECK_VERSION(3,0,0) | |
237 | 261 | GtkBox * box = GTK_BOX(gtk_box_new(GTK_ORIENTATION_HORIZONTAL,2)); |
262 | +#else | |
263 | + GtkBox * box = GTK_BOX(gtk_hbox_new(FALSE,2)); | |
264 | +#endif // GTK_CHECK_VERSION | |
238 | 265 | GSList * lst = NULL; |
239 | 266 | int f; |
240 | 267 | |
... | ... | @@ -335,19 +362,33 @@ GtkWidget * v3270_ft_dialog_new(GtkWidget *parent, LIB3270_FT_OPTION options) |
335 | 362 | { |
336 | 363 | dialog->filename[f] = gtk_entry_new(); |
337 | 364 | gtk_label_set_mnemonic_widget(GTK_LABEL(label[f]),dialog->filename[f]); |
365 | +#if GTK_CHECK_VERSION(3,0,0) | |
338 | 366 | gtk_widget_set_hexpand(dialog->filename[f],TRUE); |
367 | +#endif // GTK_CHECK_VERSION | |
339 | 368 | } |
340 | 369 | |
370 | +#if GTK_CHECK_VERSION(3,0,0) | |
371 | + | |
341 | 372 | GtkGrid *grid = GTK_GRID(gtk_grid_new()); |
373 | + | |
342 | 374 | gtk_grid_set_row_homogeneous(grid,FALSE); |
343 | 375 | gtk_grid_set_column_homogeneous(grid,FALSE); |
344 | 376 | gtk_grid_set_column_spacing(grid,5); |
345 | 377 | gtk_grid_set_row_spacing(grid,5); |
346 | 378 | |
379 | +#else | |
380 | + GtkTable *grid = gtk_table_new(2,3,FALSE); | |
381 | + | |
382 | + gtk_table_set_row_spacings(grid,5); | |
383 | + gtk_table_set_col_spacings(grid,5); | |
384 | + | |
385 | +#endif // GTK_CHECK_VERSION | |
386 | + | |
387 | + | |
347 | 388 | #if GTK_CHECK_VERSION(3,10,0) |
348 | 389 | GtkButton * browse = GTK_BUTTON(gtk_button_new_from_icon_name("text-x-generic",GTK_ICON_SIZE_BUTTON)); |
349 | 390 | #else |
350 | - GtkButton * browse = GTK_BUTTON(gtk_button_new_from_stock(GTK_STOCK_FILE)); | |
391 | + GtkButton * browse = GTK_BUTTON(gtk_button_new_with_mnemonic(_( "_Browse" ))); | |
351 | 392 | #endif // GTK_CHECK_VERSION |
352 | 393 | |
353 | 394 | gtk_button_set_focus_on_click(browse,FALSE); |
... | ... | @@ -371,13 +412,28 @@ GtkWidget * v3270_ft_dialog_new(GtkWidget *parent, LIB3270_FT_OPTION options) |
371 | 412 | g_signal_connect(G_OBJECT(dialog->filename[FILENAME_LOCAL]),"changed",G_CALLBACK(test_path_exists),dialog); |
372 | 413 | |
373 | 414 | |
415 | +#if GTK_CHECK_VERSION(3,0,0) | |
416 | + | |
374 | 417 | gtk_grid_attach(grid,label[FILENAME_HOST],0,0,1,1); |
375 | 418 | gtk_grid_attach(grid,label[FILENAME_LOCAL],0,1,1,1); |
376 | 419 | |
377 | 420 | gtk_grid_attach(grid,dialog->filename[FILENAME_HOST],1,0,3,1); |
378 | 421 | gtk_grid_attach(grid,dialog->filename[FILENAME_LOCAL],1,1,3,1); |
422 | + | |
379 | 423 | gtk_grid_attach(grid,GTK_WIDGET(browse),5,1,1,1); |
380 | 424 | |
425 | +#else | |
426 | + | |
427 | + gtk_table_attach(grid,label[FILENAME_HOST],0,1,0,1,GTK_EXPAND|GTK_FILL,GTK_FILL,0,0); | |
428 | + gtk_table_attach(grid,label[FILENAME_LOCAL],0,1,1,2,GTK_EXPAND|GTK_FILL,GTK_FILL,0,0); | |
429 | + | |
430 | + gtk_table_attach(grid,dialog->filename[FILENAME_HOST],1,2,0,1,GTK_EXPAND|GTK_FILL,GTK_FILL,0,0); | |
431 | + gtk_table_attach(grid,dialog->filename[FILENAME_LOCAL],1,2,1,2,GTK_EXPAND|GTK_FILL,GTK_FILL,0,0); | |
432 | + | |
433 | + gtk_table_attach(grid,GTK_WIDGET(browse),2,3,1,2,GTK_FILL,GTK_FILL,0,0); | |
434 | + | |
435 | +#endif | |
436 | + | |
381 | 437 | gtk_widget_set_tooltip_text(dialog->filename[FILENAME_HOST],_("Name of the source file.")); |
382 | 438 | gtk_widget_set_tooltip_text(dialog->filename[FILENAME_LOCAL],_("Where to save the received file.")); |
383 | 439 | |
... | ... | @@ -421,7 +477,12 @@ GtkWidget * v3270_ft_dialog_new(GtkWidget *parent, LIB3270_FT_OPTION options) |
421 | 477 | gtk_box_pack_start(GTK_BOX(gtk_dialog_get_content_area(GTK_DIALOG(dialog))),ftoption_new(dialog,opt),FALSE,TRUE,2); |
422 | 478 | |
423 | 479 | // Create DFT |
480 | +#if GTK_CHECK_VERSION(3,0,0) | |
424 | 481 | GtkBox * box = GTK_BOX(gtk_box_new(GTK_ORIENTATION_HORIZONTAL,2)); |
482 | +#else | |
483 | + GtkBox * box = GTK_BOX(gtk_hbox_new(FALSE,2)); | |
484 | +#endif // GTK_CHECK_VERSION | |
485 | + | |
425 | 486 | GtkWidget * label = gtk_label_new_with_mnemonic(_("DFT B_uffer size:")); |
426 | 487 | dialog->value[VALUE_DFT] = GTK_SPIN_BUTTON(gtk_spin_button_new_with_range(256,32768,1)); |
427 | 488 | gtk_misc_set_alignment(GTK_MISC(label),0,0.5); |
... | ... | @@ -438,17 +499,31 @@ GtkWidget * v3270_ft_dialog_new(GtkWidget *parent, LIB3270_FT_OPTION options) |
438 | 499 | { |
439 | 500 | // It's sending file first local filename, then hostfilename |
440 | 501 | gtk_window_set_title(GTK_WINDOW(dialog),_( "Send file to host" )); |
502 | + g_signal_connect(G_OBJECT(dialog->filename[FILENAME_LOCAL]),"changed",G_CALLBACK(test_file_exists),dialog); | |
503 | + | |
504 | +#if GTK_CHECK_VERSION(3,0,0) | |
441 | 505 | |
442 | 506 | gtk_grid_attach(grid,label[FILENAME_LOCAL],0,0,1,1); |
443 | 507 | gtk_grid_attach(grid,label[FILENAME_HOST],0,1,1,1); |
444 | 508 | |
445 | - g_signal_connect(G_OBJECT(dialog->filename[FILENAME_LOCAL]),"changed",G_CALLBACK(test_file_exists),dialog); | |
446 | - | |
447 | 509 | gtk_grid_attach(grid,dialog->filename[FILENAME_LOCAL],1,0,3,1); |
448 | 510 | gtk_grid_attach(grid,GTK_WIDGET(browse),5,0,1,1); |
449 | 511 | |
450 | 512 | gtk_grid_attach(grid,dialog->filename[FILENAME_HOST],1,1,3,1); |
451 | 513 | |
514 | +#else | |
515 | + | |
516 | + gtk_table_attach(grid,label[FILENAME_LOCAL],0,1,0,1,GTK_FILL,GTK_FILL,0,0); | |
517 | + gtk_table_attach(grid,label[FILENAME_HOST],0,1,1,2,GTK_FILL,GTK_FILL,0,0); | |
518 | + | |
519 | + gtk_table_attach(grid,dialog->filename[FILENAME_LOCAL],1,2,0,1,GTK_EXPAND|GTK_FILL,GTK_FILL,0,0); | |
520 | + gtk_table_attach(grid,dialog->filename[FILENAME_HOST],1,2,1,2,GTK_EXPAND|GTK_FILL,GTK_FILL,0,0); | |
521 | + | |
522 | + gtk_table_attach(grid,GTK_WIDGET(browse),2,3,0,1,GTK_FILL,GTK_FILL,0,0); | |
523 | + | |
524 | +#endif // GTK_CHECK_VERSION | |
525 | + | |
526 | + | |
452 | 527 | gtk_widget_set_tooltip_text(dialog->filename[FILENAME_HOST],_("Name of the target file.")); |
453 | 528 | gtk_widget_set_tooltip_text(dialog->filename[FILENAME_LOCAL],_("Path of the local file to send.")); |
454 | 529 | |
... | ... | @@ -493,10 +568,21 @@ GtkWidget * v3270_ft_dialog_new(GtkWidget *parent, LIB3270_FT_OPTION options) |
493 | 568 | |
494 | 569 | |
495 | 570 | // Create format box |
571 | + | |
572 | +#if GTK_CHECK_VERSION(3,0,0) | |
573 | + | |
496 | 574 | GtkGrid * grid = GTK_GRID(gtk_grid_new()); |
497 | 575 | gtk_grid_set_column_spacing(grid,5); |
498 | 576 | gtk_grid_set_row_spacing(grid,5); |
499 | 577 | |
578 | +#else | |
579 | + GtkTable *grid = gtk_table_new(4,4,FALSE); | |
580 | + | |
581 | + gtk_table_set_row_spacings(grid,5); | |
582 | + gtk_table_set_col_spacings(grid,5); | |
583 | + | |
584 | +#endif // GTK_CHECK_VERSION | |
585 | + | |
500 | 586 | // Create record format box |
501 | 587 | static const struct rdoptions recfm[] = |
502 | 588 | { |
... | ... | @@ -527,10 +613,18 @@ GtkWidget * v3270_ft_dialog_new(GtkWidget *parent, LIB3270_FT_OPTION options) |
527 | 613 | } |
528 | 614 | }; |
529 | 615 | |
616 | +#if GTK_CHECK_VERSION(3,0,0) | |
530 | 617 | gtk_grid_attach( grid, |
531 | 618 | ftradio_new(dialog,dialog->recfm,dialog->options,_("Record format"),_("Specifies the record format of the data set."),recfm), |
532 | 619 | 0,0,2,1 |
533 | 620 | ); |
621 | +#else | |
622 | + gtk_table_attach( grid, | |
623 | + ftradio_new(dialog,dialog->recfm,dialog->options,_("Record format"),_("Specifies the record format of the data set."),recfm), | |
624 | + 0,2,0,1,GTK_EXPAND|GTK_FILL,GTK_FILL,0,0 | |
625 | + ); | |
626 | +#endif // GTK_CHECK_VERSION | |
627 | + | |
534 | 628 | |
535 | 629 | |
536 | 630 | // Create allocation unit box |
... | ... | @@ -565,11 +659,17 @@ GtkWidget * v3270_ft_dialog_new(GtkWidget *parent, LIB3270_FT_OPTION options) |
565 | 659 | |
566 | 660 | dialog->units = ftradio_new(dialog,dialog->btnUnits,dialog->options,_("Space allocation units"),_("Specifies the units for the TSO host primary and secondary space options."),units); |
567 | 661 | |
662 | +#if GTK_CHECK_VERSION(3,0,0) | |
568 | 663 | gtk_grid_attach( grid, |
569 | 664 | dialog->units, |
570 | 665 | 2,0,2,1 |
571 | 666 | ); |
572 | - | |
667 | +#else | |
668 | + gtk_table_attach( grid, | |
669 | + dialog->units, | |
670 | + 2,4,0,1,GTK_EXPAND|GTK_FILL,GTK_FILL,0,0 | |
671 | + ); | |
672 | +#endif // GTK_CHECK_VERSION | |
573 | 673 | |
574 | 674 | // Create values box |
575 | 675 | static const struct ftvalues val[] = | ... | ... |
src/pw3270/ft/ftprogress.c
... | ... | @@ -52,7 +52,11 @@ |
52 | 52 | |
53 | 53 | struct _v3270FTProgress |
54 | 54 | { |
55 | +#if GTK_CHECK_VERSION(3,0,0) | |
55 | 56 | GtkBin parent; |
57 | +#else | |
58 | + GtkVBox parent; | |
59 | +#endif // GTK_CHECK_VERSION | |
56 | 60 | GtkLabel * text[TEXT_COUNT]; |
57 | 61 | GtkLabel * value[VALUE_COUNT]; |
58 | 62 | GtkProgressBar * progress; |
... | ... | @@ -60,35 +64,39 @@ |
60 | 64 | |
61 | 65 | struct _v3270FTProgressClass |
62 | 66 | { |
67 | +#if GTK_CHECK_VERSION(3,0,0) | |
63 | 68 | GtkBinClass parent_class; |
64 | - | |
69 | +#else | |
70 | + GtkVBoxClass parent_class; | |
71 | +#endif // GTK_CHECK_VERSION | |
65 | 72 | }; |
66 | 73 | |
74 | +#if GTK_CHECK_VERSION(3,0,0) | |
67 | 75 | G_DEFINE_TYPE(v3270FTProgress, v3270FTProgress, GTK_TYPE_BIN); |
68 | - | |
76 | +#else | |
77 | + G_DEFINE_TYPE(v3270FTProgress, v3270FTProgress, GTK_TYPE_VBOX); | |
78 | +#endif // GTK_CHECK_VERSION | |
69 | 79 | |
70 | 80 | /*--[ Implement ]------------------------------------------------------------------------------------*/ |
71 | 81 | |
72 | 82 | static void v3270FTProgress_class_init(v3270FTProgressClass *klass) |
73 | 83 | { |
74 | -// GtkDialogClass * widget_class = GTK_DIALOG_CLASS(klass); | |
75 | - | |
76 | 84 | #if GTK_CHECK_VERSION(3,0,0) |
77 | - | |
78 | 85 | #else |
79 | - | |
80 | - #error Implementar | |
81 | - | |
82 | 86 | #endif // GTK_CHECK_VERSION |
83 | - | |
84 | 87 | } |
85 | 88 | |
86 | 89 | static void v3270FTProgress_init(v3270FTProgress *widget) |
87 | 90 | { |
88 | 91 | GtkWidget * frame; |
92 | +#if GTK_CHECK_VERSION(3,0,0) | |
89 | 93 | GtkGrid * grid; |
90 | - int f; | |
91 | 94 | GtkWidget * box = gtk_box_new(GTK_ORIENTATION_VERTICAL,3); |
95 | +#else | |
96 | + GtkTable * grid; | |
97 | + GtkWidget * box = GTK_WIDGET(widget); | |
98 | +#endif // GTK_CHECK_VERSION | |
99 | + int f; | |
92 | 100 | |
93 | 101 | gtk_container_set_border_width(GTK_CONTAINER(box),3); |
94 | 102 | |
... | ... | @@ -96,13 +104,25 @@ static void v3270FTProgress_init(v3270FTProgress *widget) |
96 | 104 | static const gchar * label[TEXT_COUNT] = { N_("From"), N_("To"), N_("Status") }; |
97 | 105 | |
98 | 106 | frame = gtk_frame_new( _( "Informations" ) ); |
107 | + | |
108 | +#if GTK_CHECK_VERSION(3,0,0) | |
109 | + | |
99 | 110 | grid = GTK_GRID(gtk_grid_new()); |
100 | 111 | |
101 | - gtk_container_set_border_width(GTK_CONTAINER(grid),3); | |
102 | 112 | gtk_grid_set_column_spacing(grid,5); |
103 | 113 | gtk_grid_set_row_spacing(grid,5); |
104 | 114 | gtk_widget_set_hexpand(GTK_WIDGET(grid),TRUE); |
105 | 115 | |
116 | +#else | |
117 | + | |
118 | + grid = GTK_TABLE(gtk_table_new(2,2,FALSE)); | |
119 | + | |
120 | + gtk_table_set_row_spacings(grid,5); | |
121 | + gtk_table_set_col_spacings(grid,5); | |
122 | + | |
123 | +#endif // GTK_CHECK_VERSION | |
124 | + | |
125 | + gtk_container_set_border_width(GTK_CONTAINER(grid),3); | |
106 | 126 | |
107 | 127 | for(f=0;f<TEXT_COUNT;f++) |
108 | 128 | { |
... | ... | @@ -113,16 +133,25 @@ static void v3270FTProgress_init(v3270FTProgress *widget) |
113 | 133 | gtk_misc_set_alignment(GTK_MISC(l),0,0); |
114 | 134 | g_free(ptr); |
115 | 135 | |
116 | - gtk_grid_attach(grid,l,0,f,1,1); | |
117 | 136 | |
118 | 137 | widget->text[f] = GTK_LABEL(gtk_label_new("-")); |
119 | 138 | gtk_label_set_ellipsize(widget->text[f],PANGO_ELLIPSIZE_START); |
120 | 139 | gtk_label_set_width_chars(widget->text[f],50); |
121 | 140 | gtk_misc_set_alignment(GTK_MISC(widget->text[f]),0,0); |
122 | - gtk_widget_set_hexpand(GTK_WIDGET(widget->text[f]),TRUE); | |
123 | 141 | |
142 | +#if GTK_CHECK_VERSION(3,0,0) | |
143 | + | |
144 | + gtk_widget_set_hexpand(GTK_WIDGET(widget->text[f]),TRUE); | |
145 | + gtk_grid_attach(grid,l,0,f,1,1); | |
124 | 146 | gtk_grid_attach(grid,GTK_WIDGET(widget->text[f]),1,f,1,1); |
125 | 147 | |
148 | +#else | |
149 | + | |
150 | + gtk_table_attach(grid,l,0,1,f,f+1,GTK_FILL,GTK_FILL,0,0); | |
151 | + gtk_table_attach(grid,GTK_WIDGET(widget->text[f]),1,2,f,f+1,GTK_EXPAND|GTK_FILL,GTK_FILL,0,0); | |
152 | + | |
153 | +#endif // GTK_CHECK_VERSION | |
154 | + | |
126 | 155 | |
127 | 156 | } |
128 | 157 | gtk_container_add(GTK_CONTAINER(frame),GTK_WIDGET(grid)); |
... | ... | @@ -132,14 +161,27 @@ static void v3270FTProgress_init(v3270FTProgress *widget) |
132 | 161 | static const gchar *progressLabel[VALUE_COUNT] = { N_( "Total" ), N_( "Current" ), N_( "Speed" ), N_( "ETA" ) }; |
133 | 162 | |
134 | 163 | frame = gtk_frame_new( _( "Progress" ) ); |
164 | + | |
165 | +#if GTK_CHECK_VERSION(3,0,0) | |
166 | + | |
135 | 167 | grid = GTK_GRID(gtk_grid_new()); |
136 | 168 | |
137 | - gtk_container_set_border_width(GTK_CONTAINER(grid),3); | |
138 | 169 | gtk_grid_set_column_spacing(grid,5); |
139 | 170 | gtk_grid_set_row_spacing(grid,5); |
140 | 171 | gtk_widget_set_hexpand(GTK_WIDGET(grid),TRUE); |
141 | 172 | gtk_grid_set_column_homogeneous(grid,TRUE); |
142 | 173 | |
174 | +#else | |
175 | + | |
176 | + grid = GTK_TABLE(gtk_table_new(3,4,FALSE)); | |
177 | + | |
178 | + gtk_table_set_row_spacings(grid,5); | |
179 | + gtk_table_set_col_spacings(grid,5); | |
180 | + | |
181 | +#endif // GTK_CHECK_VERSION | |
182 | + | |
183 | + gtk_container_set_border_width(GTK_CONTAINER(grid),3); | |
184 | + | |
143 | 185 | for(f=0;f<VALUE_COUNT;f++) |
144 | 186 | { |
145 | 187 | GtkWidget * l = gtk_label_new(_("N/A")); |
... | ... | @@ -151,26 +193,40 @@ static void v3270FTProgress_init(v3270FTProgress *widget) |
151 | 193 | gtk_misc_set_alignment(GTK_MISC(l),0,0); |
152 | 194 | g_free(ptr); |
153 | 195 | |
154 | - gtk_grid_attach(grid,l,c,r,1,1); | |
155 | - | |
156 | 196 | widget->value[f] = GTK_LABEL(gtk_label_new(_("N/A"))); |
157 | 197 | gtk_misc_set_alignment(GTK_MISC(widget->value[f]),1,0); |
158 | - gtk_widget_set_hexpand(GTK_WIDGET(widget->value[f]),TRUE); | |
159 | 198 | |
199 | +#if GTK_CHECK_VERSION(3,0,0) | |
200 | + | |
201 | + gtk_widget_set_hexpand(GTK_WIDGET(widget->value[f]),TRUE); | |
202 | + gtk_grid_attach(grid,l,c,r,1,1); | |
160 | 203 | gtk_grid_attach(grid,GTK_WIDGET(widget->value[f]),c+1,r,1,1); |
161 | 204 | |
205 | +#else | |
206 | + | |
207 | + gtk_table_attach(grid,l,c,c+1,r,r+1,GTK_FILL,GTK_FILL,0,0); | |
208 | + gtk_table_attach(grid,GTK_WIDGET(widget->value[f]),c+1,c+2,r,r+1,GTK_EXPAND|GTK_FILL,GTK_FILL,0,0); | |
209 | + | |
210 | +#endif // GTK_CHECK_VERSION | |
162 | 211 | |
163 | 212 | } |
164 | 213 | |
165 | 214 | widget->progress = GTK_PROGRESS_BAR(gtk_progress_bar_new()); |
215 | + | |
216 | +#if GTK_CHECK_VERSION(3,0,0) | |
166 | 217 | gtk_widget_set_hexpand(GTK_WIDGET(widget->progress),TRUE); |
167 | 218 | gtk_grid_attach(grid,GTK_WIDGET(widget->progress),0,2,4,1); |
219 | +#else | |
220 | + gtk_table_attach(grid,GTK_WIDGET(widget->progress),0,4,2,3,GTK_EXPAND|GTK_FILL,GTK_FILL,0,0); | |
221 | +#endif // GTK_CHECK_VERSION | |
168 | 222 | |
169 | 223 | gtk_container_add(GTK_CONTAINER(frame),GTK_WIDGET(grid)); |
170 | 224 | gtk_container_add(GTK_CONTAINER(box),GTK_WIDGET(frame)); |
171 | 225 | |
172 | 226 | // Add box on parent widget |
173 | - gtk_container_add(GTK_CONTAINER(widget),GTK_WIDGET(box)); | |
227 | +#if GTK_CHECK_VERSION(3,0,0) | |
228 | + gtk_container_add(GTK_CONTAINER(widget),box); | |
229 | +#endif // GTK_CHECK_VERSION | |
174 | 230 | |
175 | 231 | } |
176 | 232 | ... | ... |
src/pw3270/ft/testprogram.c
... | ... | @@ -38,32 +38,28 @@ int main (int argc, char *argv[]) |
38 | 38 | |
39 | 39 | gtk_init (&argc, &argv); |
40 | 40 | |
41 | - /* | |
42 | 41 | { |
43 | 42 | GtkWidget *win = v3270_ft_dialog_new(NULL,LIB3270_FT_OPTION_RECEIVE); |
44 | 43 | v3270_ft_dialog_set_options(win,LIB3270_FT_OPTION_REMAP); |
45 | 44 | gtk_dialog_run(GTK_DIALOG(win)); |
46 | 45 | } |
47 | - */ | |
48 | 46 | |
47 | + /* | |
49 | 48 | { |
50 | 49 | GtkWidget *win = v3270_ft_dialog_new(NULL,LIB3270_FT_OPTION_SEND|LIB3270_FT_RECORD_FORMAT_VARIABLE); |
51 | 50 | v3270_ft_dialog_set_tso(win,FALSE); |
52 | 51 | gtk_dialog_run(GTK_DIALOG(win)); |
53 | 52 | } |
53 | + */ | |
54 | 54 | |
55 | - | |
56 | -// gtk_dialog_run(GTK_DIALOG(v3270_ft_dialog_new(NULL,LIB3270_FT_OPTION_SEND|LIB3270_FT_OPTION_REMAP))); | |
57 | - | |
58 | - | |
59 | -// v3270_ft_dialog_set_tso(win,TRUE); | |
60 | - | |
61 | -// win = gtk_window_new(GTK_WINDOW_TOPLEVEL); | |
62 | -// gtk_container_add(GTK_CONTAINER(win),v3270_ft_progress_new()); | |
63 | - | |
64 | - | |
65 | -// gtk_widget_show_all(win); | |
66 | -// gtk_main (); | |
55 | + /* | |
56 | + { | |
57 | + GtkWidget *win = gtk_window_new(GTK_WINDOW_TOPLEVEL); | |
58 | + gtk_container_add(GTK_CONTAINER(win),v3270_ft_progress_new()); | |
59 | + gtk_widget_show_all(win); | |
60 | + gtk_main (); | |
61 | + } | |
62 | + */ | |
67 | 63 | |
68 | 64 | return 0; |
69 | 65 | ... | ... |