Commit 4ef97a3cb8a60429024846882b740471a87de0ce
1 parent
2e903b03
Exists in
master
and in
1 other branch
Adjusting ft layout for windows.
Showing
2 changed files
with
89 additions
and
44 deletions
Show diff stats
src/filetransfer/v3270ft.c
| ... | ... | @@ -352,7 +352,6 @@ static void v3270ft_init(v3270ft *dialog) { |
| 352 | 352 | // Initialize |
| 353 | 353 | gtk_window_set_title(GTK_WINDOW(dialog),_( "3270 File transfer")); |
| 354 | 354 | gtk_window_set_resizable(GTK_WINDOW(dialog),FALSE); |
| 355 | - gtk_container_set_border_width(GTK_CONTAINER(box),18); | |
| 356 | 355 | dialog->files = dialog->active = g_list_append(NULL,v3270ft_create_entry()); |
| 357 | 356 | |
| 358 | 357 | // Buttons |
| ... | ... | @@ -476,50 +475,72 @@ static void v3270ft_init(v3270ft *dialog) { |
| 476 | 475 | }; |
| 477 | 476 | |
| 478 | 477 | #if HAVE_GTK_HEADER_BAR |
| 479 | - widget = gtk_dialog_get_header_bar(GTK_DIALOG(dialog)); | |
| 478 | + { | |
| 479 | + gboolean use_header; | |
| 480 | + g_object_get(gtk_settings_get_default(), "gtk-dialogs-use-header", &use_header, NULL); | |
| 480 | 481 | |
| 481 | - for(f=0;f< (int) G_N_ELEMENTS(action);f++) { | |
| 482 | + if(use_header) { | |
| 483 | + widget = gtk_dialog_get_header_bar(GTK_DIALOG(dialog)); | |
| 484 | + } else { | |
| 485 | + widget = NULL; | |
| 486 | + } | |
| 482 | 487 | |
| 483 | - GtkWidget *button = gtk_button_new_from_icon_name(action[f].name,GTK_ICON_SIZE_BUTTON); | |
| 488 | + } | |
| 489 | +#else | |
| 490 | + widget = NULL; | |
| 491 | +#endif // HAVE_GTK_HEADER_BAR | |
| 484 | 492 | |
| 485 | - gtk_widget_set_tooltip_markup(button,g_dgettext(GETTEXT_PACKAGE,action[f].tooltip)); | |
| 493 | + if(widget) { | |
| 486 | 494 | |
| 487 | - if(action[f].start) { | |
| 488 | - gtk_header_bar_pack_start(GTK_HEADER_BAR(widget),button); | |
| 489 | - } else { | |
| 490 | - gtk_header_bar_pack_end(GTK_HEADER_BAR(widget),button); | |
| 491 | - } | |
| 495 | + gtk_container_set_border_width(GTK_CONTAINER(box),18); | |
| 492 | 496 | |
| 493 | - g_signal_connect(button,"clicked",action[f].callback,dialog); | |
| 497 | + for(f=0;f< (int) G_N_ELEMENTS(action);f++) { | |
| 494 | 498 | |
| 495 | - dialog->button[action[f].id] = button; | |
| 496 | - gtk_widget_set_sensitive(button,FALSE); | |
| 499 | + GtkWidget *button = gtk_button_new_from_icon_name(action[f].name,GTK_ICON_SIZE_BUTTON); | |
| 497 | 500 | |
| 498 | - } | |
| 501 | + gtk_widget_set_tooltip_markup(button,g_dgettext(GETTEXT_PACKAGE,action[f].tooltip)); | |
| 499 | 502 | |
| 500 | -#else | |
| 503 | + if(action[f].start) { | |
| 504 | + gtk_header_bar_pack_start(GTK_HEADER_BAR(widget),button); | |
| 505 | + } else { | |
| 506 | + gtk_header_bar_pack_end(GTK_HEADER_BAR(widget),button); | |
| 507 | + } | |
| 501 | 508 | |
| 502 | - widget = gtk_toolbar_new(); | |
| 503 | - gtk_toolbar_set_icon_size(GTK_TOOLBAR(widget),GTK_ICON_SIZE_SMALL_TOOLBAR); | |
| 509 | + g_signal_connect(button,"clicked",action[f].callback,dialog); | |
| 504 | 510 | |
| 505 | - gtk_box_pack_start(box,GTK_WIDGET(widget),FALSE,FALSE,2); | |
| 511 | + dialog->button[action[f].id] = button; | |
| 512 | + gtk_widget_set_sensitive(button,FALSE); | |
| 506 | 513 | |
| 507 | - for(f=0;f<G_N_ELEMENTS(action);f++) { | |
| 514 | + } | |
| 508 | 515 | |
| 509 | - GtkWidget *button = GTK_WIDGET(gtk_tool_button_new(gtk_image_new_from_icon_name(action[f].name,GTK_ICON_SIZE_SMALL_TOOLBAR),NULL)); | |
| 516 | + } else { | |
| 510 | 517 | |
| 511 | - gtk_widget_set_tooltip_markup(button,g_dgettext(GETTEXT_PACKAGE,action[f].tooltip)); | |
| 518 | + widget = gtk_toolbar_new(); | |
| 519 | + gtk_toolbar_set_icon_size(GTK_TOOLBAR(widget),GTK_ICON_SIZE_SMALL_TOOLBAR); | |
| 512 | 520 | |
| 513 | - gtk_toolbar_insert(GTK_TOOLBAR(widget),GTK_TOOL_ITEM(button),-1); | |
| 521 | + gtk_box_pack_start(box,GTK_WIDGET(widget),FALSE,FALSE,0); | |
| 514 | 522 | |
| 515 | - g_signal_connect(button,"clicked",action[f].callback,dialog); | |
| 523 | + for(f=0;f< (int) G_N_ELEMENTS(action);f++) { | |
| 516 | 524 | |
| 517 | - dialog->button[action[f].id] = button; | |
| 518 | - gtk_widget_set_sensitive(button,FALSE); | |
| 525 | + GtkWidget *button = GTK_WIDGET(gtk_tool_button_new(gtk_image_new_from_icon_name(action[f].name,GTK_ICON_SIZE_SMALL_TOOLBAR),NULL)); | |
| 519 | 526 | |
| 520 | - } | |
| 527 | + gtk_widget_set_tooltip_markup(button,g_dgettext(GETTEXT_PACKAGE,action[f].tooltip)); | |
| 521 | 528 | |
| 522 | -#endif | |
| 529 | + gtk_toolbar_insert(GTK_TOOLBAR(widget),GTK_TOOL_ITEM(button),-1); | |
| 530 | + | |
| 531 | + g_signal_connect(button,"clicked",action[f].callback,dialog); | |
| 532 | + | |
| 533 | + dialog->button[action[f].id] = button; | |
| 534 | + gtk_widget_set_sensitive(button,FALSE); | |
| 535 | + } | |
| 536 | + | |
| 537 | + // Create inner box | |
| 538 | + widget = gtk_box_new(GTK_ORIENTATION_VERTICAL,0); | |
| 539 | + gtk_box_pack_start(box,widget,TRUE,TRUE,0); | |
| 540 | + gtk_container_set_border_width(GTK_CONTAINER(widget),18); | |
| 541 | + box = GTK_BOX(widget); | |
| 542 | + | |
| 543 | + } | |
| 523 | 544 | |
| 524 | 545 | gtk_widget_set_sensitive(dialog->button[FT_BUTTON_LOAD_LIST],TRUE); |
| 525 | 546 | gtk_widget_set_sensitive(dialog->button[FT_BUTTON_REMOVE_FILE],TRUE); |
| ... | ... | @@ -703,7 +724,28 @@ static void v3270ft_init(v3270ft *dialog) { |
| 703 | 724 | */ |
| 704 | 725 | LIB3270_EXPORT GtkWidget * v3270ft_new(GtkWidget *parent) { |
| 705 | 726 | |
| 706 | - GtkWidget * dialog = GTK_WIDGET(g_object_new(GTK_TYPE_V3270FT, "use-header-bar", (gint) 1, NULL)); | |
| 727 | +#if GTK_CHECK_VERSION(3,12,0) | |
| 728 | + | |
| 729 | + gboolean use_header; | |
| 730 | + g_object_get(gtk_settings_get_default(), "gtk-dialogs-use-header", &use_header, NULL); | |
| 731 | + | |
| 732 | + GtkWidget * dialog = | |
| 733 | + GTK_WIDGET(g_object_new( | |
| 734 | + GTK_TYPE_V3270FT, | |
| 735 | + "use-header-bar", (use_header ? 1 : 0), | |
| 736 | + NULL | |
| 737 | + )); | |
| 738 | + | |
| 739 | +#else | |
| 740 | + | |
| 741 | + GtkWidget * dialog = | |
| 742 | + GTK_WIDGET(g_object_new( | |
| 743 | + GTK_TYPE_V3270FT, | |
| 744 | + NULL | |
| 745 | + )); | |
| 746 | + | |
| 747 | +#endif | |
| 748 | + | |
| 707 | 749 | gtk_window_set_transient_for(GTK_WINDOW(dialog),GTK_WINDOW(gtk_widget_get_toplevel(parent))); |
| 708 | 750 | |
| 709 | 751 | return dialog; | ... | ... |
src/testprogram/toolbar.c
| ... | ... | @@ -117,6 +117,7 @@ |
| 117 | 117 | { |
| 118 | 118 | // v3270_error_popup(terminal,"title","summary","body"); |
| 119 | 119 | |
| 120 | + /* | |
| 120 | 121 | { |
| 121 | 122 | GtkWidget * dialog = v3270_dialog_new_with_buttons("Testing dialog", terminal, "Ok", GTK_RESPONSE_OK, "Cancel", GTK_RESPONSE_CANCEL, NULL); |
| 122 | 123 | |
| ... | ... | @@ -126,6 +127,7 @@ |
| 126 | 127 | gtk_widget_show_all(dialog); |
| 127 | 128 | |
| 128 | 129 | } |
| 130 | + */ | |
| 129 | 131 | |
| 130 | 132 | |
| 131 | 133 | /* |
| ... | ... | @@ -156,24 +158,25 @@ |
| 156 | 158 | v3270_ft_activity_set_options(activity,LIB3270_FT_OPTION_RECEIVE|LIB3270_FT_OPTION_ASCII|LIB3270_FT_OPTION_REMAP); |
| 157 | 159 | */ |
| 158 | 160 | |
| 159 | - /* | |
| 160 | - // | |
| 161 | - // Test settings dialog | |
| 162 | - // | |
| 163 | - // GtkWidget * dialog = v3270_ft_settings_dialog_new(terminal); | |
| 164 | - // v3270_ft_settings_dialog_append_activity(dialog,activity,NULL); | |
| 165 | 161 | |
| 166 | - // | |
| 167 | - // V5.1 dialog | |
| 168 | - // | |
| 169 | - GtkWidget *dialog = v3270ft_new(GTK_WIDGET(button)); | |
| 170 | - */ | |
| 162 | + { | |
| 163 | + // | |
| 164 | + // Test V3270 FT Dialog | |
| 165 | + // | |
| 166 | + // | |
| 167 | + // GtkWidget * dialog = v3270_ft_settings_dialog_new(terminal); | |
| 168 | + // v3270_ft_settings_dialog_append_activity(dialog,activity,NULL); | |
| 169 | + | |
| 170 | + // | |
| 171 | + // V5.1 dialog | |
| 172 | + // | |
| 173 | + GtkWidget *dialog = v3270ft_new(GTK_WIDGET(button)); | |
| 174 | + | |
| 175 | + g_signal_connect(dialog,"response",G_CALLBACK(gtk_widget_destroy),NULL); | |
| 176 | + gtk_widget_show_all(dialog); | |
| 177 | + | |
| 178 | + } | |
| 171 | 179 | |
| 172 | - /* | |
| 173 | - gtk_widget_show_all(dialog); | |
| 174 | - gtk_dialog_run(GTK_DIALOG(dialog)); | |
| 175 | - gtk_widget_destroy(dialog); | |
| 176 | - */ | |
| 177 | 180 | |
| 178 | 181 | } |
| 179 | 182 | ... | ... |