From 31e198f772cca46b76faf1e8d0599e25d1a99808 Mon Sep 17 00:00:00 2001 From: deepend Date: Fri, 23 Jan 2026 20:18:49 -0700 Subject: [PATCH] Added GTK3 halign/valign handling (and GTK3 label margins) across setup UI elements, including spin widgets, color buttons, sound labels, and page headers while keeping GTK2 fallbacks intact. Applied GTK3 alignment updates to DCC detail labels in the DCC GUI. Updated join dialog widgets to use GTK3 alignment calls for the image and labels, retaining legacy alignment for GTK2. Added GTK3 alignment handling for server list dialogs and labels in the server list UI. --- src/fe-gtk/dccgui.c | 10 ++++ src/fe-gtk/joind.c | 30 +++++++++++ src/fe-gtk/servlistgui.c | 40 ++++++++++++++ src/fe-gtk/setup.c | 112 +++++++++++++++++++++++++++++++++++++++ 4 files changed, 192 insertions(+) diff --git a/src/fe-gtk/dccgui.c b/src/fe-gtk/dccgui.c index 59a77373..b4b66777 100644 --- a/src/fe-gtk/dccgui.c +++ b/src/fe-gtk/dccgui.c @@ -750,12 +750,22 @@ dcc_detail_label (char *text, GtkWidget *box, int num) label = gtk_label_new (NULL); g_snprintf (buf, sizeof (buf), "%s", text); gtk_label_set_markup (GTK_LABEL (label), buf); +#if HAVE_GTK3 + gtk_widget_set_halign (label, GTK_ALIGN_START); + gtk_widget_set_valign (label, GTK_ALIGN_START); +#else gtk_misc_set_alignment (GTK_MISC (label), 0, 0); +#endif gtk_table_attach (GTK_TABLE (box), label, 0, 1, 0 + num, 1 + num, GTK_FILL, GTK_FILL, 0, 0); label = gtk_label_new (NULL); gtk_label_set_selectable (GTK_LABEL (label), TRUE); +#if HAVE_GTK3 + gtk_widget_set_halign (label, GTK_ALIGN_START); + gtk_widget_set_valign (label, GTK_ALIGN_START); +#else gtk_misc_set_alignment (GTK_MISC (label), 0, 0); +#endif gtk_table_attach (GTK_TABLE (box), label, 1, 2, 0 + num, 1 + num, GTK_FILL, GTK_FILL, 0, 0); return label; diff --git a/src/fe-gtk/joind.c b/src/fe-gtk/joind.c index 9dc14e2b..0d3349a9 100644 --- a/src/fe-gtk/joind.c +++ b/src/fe-gtk/joind.c @@ -152,7 +152,12 @@ joind_show_dialog (server *serv) image1 = gtk_image_new_from_stock (GTK_STOCK_NETWORK, GTK_ICON_SIZE_LARGE_TOOLBAR); gtk_widget_show (image1); gtk_box_pack_start (GTK_BOX (hbox1), image1, FALSE, TRUE, 24); +#if HAVE_GTK3 + gtk_widget_set_halign (image1, GTK_ALIGN_CENTER); + gtk_widget_set_valign (image1, GTK_ALIGN_START); +#else gtk_misc_set_alignment (GTK_MISC (image1), 0.5f, 0.06f); +#endif vbox2 = gtk_vbox_new (FALSE, 10); gtk_container_set_border_width (GTK_CONTAINER (vbox2), 6); @@ -166,18 +171,33 @@ joind_show_dialog (server *serv) gtk_widget_show (label); gtk_box_pack_start (GTK_BOX (vbox2), label, FALSE, FALSE, 0); gtk_label_set_use_markup (GTK_LABEL (label), TRUE); +#if HAVE_GTK3 + gtk_widget_set_halign (label, GTK_ALIGN_START); + gtk_widget_set_valign (label, GTK_ALIGN_CENTER); +#else gtk_misc_set_alignment (GTK_MISC (label), 0, 0.5); +#endif label = gtk_label_new (_("In the server list window, no channel (chat room) has been entered to be automatically joined for this network.")); gtk_widget_show (label); gtk_box_pack_start (GTK_BOX (vbox2), label, FALSE, FALSE, 0); gtk_label_set_line_wrap (GTK_LABEL (label), TRUE); +#if HAVE_GTK3 + gtk_widget_set_halign (label, GTK_ALIGN_START); + gtk_widget_set_valign (label, GTK_ALIGN_CENTER); +#else gtk_misc_set_alignment (GTK_MISC (label), 0, 0.5); +#endif label = gtk_label_new (_("What would you like to do next?")); gtk_widget_show (label); gtk_box_pack_start (GTK_BOX (vbox2), label, FALSE, FALSE, 0); +#if HAVE_GTK3 + gtk_widget_set_halign (label, GTK_ALIGN_START); + gtk_widget_set_valign (label, GTK_ALIGN_CENTER); +#else gtk_misc_set_alignment (GTK_MISC (label), 0, 0.5); +#endif serv->gui->joind_radio1 = radiobutton1 = gtk_radio_button_new_with_mnemonic (NULL, _("_Nothing, I'll join a channel later.")); gtk_widget_show (radiobutton1); @@ -205,7 +225,12 @@ joind_show_dialog (server *serv) gtk_widget_show (label); gtk_box_pack_start (GTK_BOX (vbox2), label, FALSE, FALSE, 0); gtk_label_set_use_markup (GTK_LABEL (label), TRUE); +#if HAVE_GTK3 + gtk_widget_set_halign (label, GTK_ALIGN_START); + gtk_widget_set_valign (label, GTK_ALIGN_CENTER); +#else gtk_misc_set_alignment (GTK_MISC (label), 0, 0.5); +#endif radiobutton3 = gtk_radio_button_new_with_mnemonic (NULL, _("O_pen the channel list.")); gtk_widget_show (radiobutton3); @@ -218,7 +243,12 @@ joind_show_dialog (server *serv) gtk_widget_show (label); gtk_box_pack_start (GTK_BOX (vbox2), label, FALSE, FALSE, 0); gtk_label_set_use_markup (GTK_LABEL (label), TRUE); +#if HAVE_GTK3 + gtk_widget_set_halign (label, GTK_ALIGN_START); + gtk_widget_set_valign (label, GTK_ALIGN_CENTER); +#else gtk_misc_set_alignment (GTK_MISC (label), 0, 0.5); +#endif serv->gui->joind_check = checkbutton1 = gtk_check_button_new_with_mnemonic (_("_Always show this dialog after connecting.")); if (prefs.hex_gui_join_dialog) diff --git a/src/fe-gtk/servlistgui.c b/src/fe-gtk/servlistgui.c index 80a50516..368b6fb2 100644 --- a/src/fe-gtk/servlistgui.c +++ b/src/fe-gtk/servlistgui.c @@ -1277,7 +1277,12 @@ servlist_create_entry (GtkWidget *table, char *labeltext, int row, *label_ret = label; gtk_widget_show (label); gtk_table_attach (GTK_TABLE (table), label, 0, 1, row, row+1, GTK_FILL, 0, SERVLIST_X_PADDING, SERVLIST_Y_PADDING); +#if HAVE_GTK3 + gtk_widget_set_halign (label, GTK_ALIGN_START); + gtk_widget_set_valign (label, GTK_ALIGN_CENTER); +#else gtk_misc_set_alignment (GTK_MISC (label), 0, 0.5); +#endif entry = gtk_entry_new (); gtk_widget_set_tooltip_text (entry, tip); @@ -1706,7 +1711,12 @@ bold_label (char *text) g_snprintf (buf, sizeof (buf), "%s", text); label = gtk_label_new (buf); gtk_label_set_use_markup (GTK_LABEL (label), TRUE); +#if HAVE_GTK3 + gtk_widget_set_halign (label, GTK_ALIGN_START); + gtk_widget_set_valign (label, GTK_ALIGN_CENTER); +#else gtk_misc_set_alignment (GTK_MISC (label), 0, 0.5); +#endif gtk_widget_show (label); return label; @@ -1922,7 +1932,12 @@ servlist_open_edit (GtkWidget *parent, ircnet *net) label_logintype = gtk_label_new (_("Login method:")); gtk_table_attach (GTK_TABLE (table3), label_logintype, 0, 1, 10, 11, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), SERVLIST_X_PADDING, SERVLIST_Y_PADDING); +#if HAVE_GTK3 + gtk_widget_set_halign (label_logintype, GTK_ALIGN_START); + gtk_widget_set_valign (label_logintype, GTK_ALIGN_CENTER); +#else gtk_misc_set_alignment (GTK_MISC (label_logintype), 0, 0.5); +#endif combobox_logintypes = servlist_create_logintypecombo (notebook); gtk_table_attach (GTK_TABLE (table3), combobox_logintypes, 1, 2, 10, 11, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (GTK_FILL), 4, 2); @@ -1933,7 +1948,12 @@ servlist_open_edit (GtkWidget *parent, ircnet *net) label34 = gtk_label_new (_("Character set:")); gtk_table_attach (GTK_TABLE (table3), label34, 0, 1, 12, 13, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), SERVLIST_X_PADDING, SERVLIST_Y_PADDING); +#if HAVE_GTK3 + gtk_widget_set_halign (label34, GTK_ALIGN_START); + gtk_widget_set_valign (label34, GTK_ALIGN_CENTER); +#else gtk_misc_set_alignment (GTK_MISC (label34), 0, 0.5); +#endif comboboxentry_charset = servlist_create_charsetcombo (); gtk_table_attach (GTK_TABLE (table3), comboboxentry_charset, 1, 2, 12, 13, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (GTK_FILL), 4, 2); @@ -2039,28 +2059,48 @@ servlist_open_networks (void) gtk_table_attach (GTK_TABLE (table1), label3, 0, 1, 0, 1, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 0, 0); +#if HAVE_GTK3 + gtk_widget_set_halign (label3, GTK_ALIGN_START); + gtk_widget_set_valign (label3, GTK_ALIGN_CENTER); +#else gtk_misc_set_alignment (GTK_MISC (label3), 0, 0.5); +#endif label4 = gtk_label_new (_("Second choice:")); gtk_widget_show (label4); gtk_table_attach (GTK_TABLE (table1), label4, 0, 1, 1, 2, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 0, 0); +#if HAVE_GTK3 + gtk_widget_set_halign (label4, GTK_ALIGN_START); + gtk_widget_set_valign (label4, GTK_ALIGN_CENTER); +#else gtk_misc_set_alignment (GTK_MISC (label4), 0, 0.5); +#endif label5 = gtk_label_new (_("Third choice:")); gtk_widget_show (label5); gtk_table_attach (GTK_TABLE (table1), label5, 0, 1, 2, 3, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 0, 0); +#if HAVE_GTK3 + gtk_widget_set_halign (label5, GTK_ALIGN_START); + gtk_widget_set_valign (label5, GTK_ALIGN_CENTER); +#else gtk_misc_set_alignment (GTK_MISC (label5), 0, 0.5); +#endif label6 = gtk_label_new_with_mnemonic (_("_User name:")); gtk_widget_show (label6); gtk_table_attach (GTK_TABLE (table1), label6, 0, 1, 3, 4, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 0, 0); +#if HAVE_GTK3 + gtk_widget_set_halign (label6, GTK_ALIGN_START); + gtk_widget_set_valign (label6, GTK_ALIGN_CENTER); +#else gtk_misc_set_alignment (GTK_MISC (label6), 0, 0.5); +#endif /* label7 = gtk_label_new_with_mnemonic (_("Rea_l name:")); gtk_widget_show (label7); diff --git a/src/fe-gtk/setup.c b/src/fe-gtk/setup.c index f41d4c2e..c273d527 100644 --- a/src/fe-gtk/setup.c +++ b/src/fe-gtk/setup.c @@ -727,7 +727,12 @@ setup_headlabel (GtkWidget *tab, int row, int col, char *text) label = gtk_label_new (NULL); gtk_label_set_markup (GTK_LABEL (label), buf); +#if HAVE_GTK3 + gtk_widget_set_halign (label, GTK_ALIGN_START); + gtk_widget_set_valign (label, GTK_ALIGN_CENTER); +#else gtk_misc_set_alignment (GTK_MISC (label), 0.0, 0.5); +#endif gtk_table_attach (GTK_TABLE (tab), label, col, col + 1, row, row + 1, 0, 0, 4, 0); } @@ -748,7 +753,12 @@ setup_create_3oggle (GtkWidget *tab, int row, const setting *set) int *offsets = (int *)set->list; label = gtk_label_new (_(set->label)); +#if HAVE_GTK3 + gtk_widget_set_halign (label, GTK_ALIGN_START); + gtk_widget_set_valign (label, GTK_ALIGN_CENTER); +#else gtk_misc_set_alignment (GTK_MISC (label), 0.0, 0.5); +#endif if (set->tooltip) { gtk_widget_set_tooltip_text (label, _(set->tooltip)); @@ -862,16 +872,29 @@ setup_create_spin (GtkWidget *table, int row, const setting *set) char *text; label = gtk_label_new (_(set->label)); +#if HAVE_GTK3 + gtk_widget_set_halign (label, GTK_ALIGN_START); + gtk_widget_set_valign (label, GTK_ALIGN_CENTER); +#else gtk_misc_set_alignment (GTK_MISC (label), 0.0, 0.5); +#endif gtk_table_attach (GTK_TABLE (table), label, 2, 3, row, row + 1, GTK_SHRINK | GTK_FILL, GTK_SHRINK | GTK_FILL, LABEL_INDENT, 0); +#if HAVE_GTK3 + rbox = gtk_hbox_new (0, 0); + gtk_widget_set_halign (rbox, GTK_ALIGN_START); + gtk_widget_set_valign (rbox, GTK_ALIGN_CENTER); + gtk_table_attach (GTK_TABLE (table), rbox, 3, 4, row, row + 1, + GTK_EXPAND | GTK_FILL, GTK_SHRINK | GTK_FILL, 0, 0); +#else align = gtk_alignment_new (0.0, 0.5, 0.0, 0.0); gtk_table_attach (GTK_TABLE (table), align, 3, 4, row, row + 1, GTK_EXPAND | GTK_FILL, GTK_SHRINK | GTK_FILL, 0, 0); rbox = gtk_hbox_new (0, 0); gtk_container_add (GTK_CONTAINER (align), rbox); +#endif wid = gtk_spin_button_new_with_range (0, set->extra, 1); g_object_set_data (G_OBJECT (wid), "lbl", label); @@ -927,7 +950,12 @@ setup_create_hscale (GtkWidget *table, int row, const setting *set) GtkWidget *wid; wid = gtk_label_new (_(set->label)); +#if HAVE_GTK3 + gtk_widget_set_halign (wid, GTK_ALIGN_START); + gtk_widget_set_valign (wid, GTK_ALIGN_CENTER); +#else gtk_misc_set_alignment (GTK_MISC (wid), 0.0, 0.5); +#endif gtk_table_attach (GTK_TABLE (table), wid, 2, 3, row, row + 1, GTK_SHRINK | GTK_FILL, GTK_SHRINK | GTK_FILL, LABEL_INDENT, 0); @@ -986,7 +1014,12 @@ setup_create_radio (GtkWidget *table, int row, const setting *set) GSList *group; wid = gtk_label_new (_(set->label)); +#if HAVE_GTK3 + gtk_widget_set_halign (wid, GTK_ALIGN_START); + gtk_widget_set_valign (wid, GTK_ALIGN_CENTER); +#else gtk_misc_set_alignment (GTK_MISC (wid), 0.0, 0.5); +#endif gtk_table_attach (GTK_TABLE (table), wid, 2, 3, row, row + 1, GTK_SHRINK | GTK_FILL, GTK_SHRINK | GTK_FILL, LABEL_INDENT, 0); @@ -1049,7 +1082,12 @@ setup_create_id_menu (GtkWidget *table, char *label, int row, char *dest) }; wid = gtk_label_new (label); +#if HAVE_GTK3 + gtk_widget_set_halign (wid, GTK_ALIGN_START); + gtk_widget_set_valign (wid, GTK_ALIGN_CENTER); +#else gtk_misc_set_alignment (GTK_MISC (wid), 0.0, 0.5); +#endif gtk_table_attach (GTK_TABLE (table), wid, 2, 3, row, row + 1, GTK_SHRINK | GTK_FILL, GTK_SHRINK | GTK_FILL, LABEL_INDENT, 0); @@ -1095,7 +1133,12 @@ setup_create_menu (GtkWidget *table, int row, const setting *set) int i; wid = gtk_label_new (_(set->label)); +#if HAVE_GTK3 + gtk_widget_set_halign (wid, GTK_ALIGN_START); + gtk_widget_set_valign (wid, GTK_ALIGN_CENTER); +#else gtk_misc_set_alignment (GTK_MISC (wid), 0.0, 0.5); +#endif gtk_table_attach (GTK_TABLE (table), wid, 2, 3, row, row + 1, GTK_SHRINK | GTK_FILL, GTK_SHRINK | GTK_FILL, LABEL_INDENT, 0); @@ -1256,7 +1299,12 @@ setup_create_entry (GtkWidget *table, int row, const setting *set) GtkWidget *wid, *bwid; label = gtk_label_new (_(set->label)); +#if HAVE_GTK3 + gtk_widget_set_halign (label, GTK_ALIGN_START); + gtk_widget_set_valign (label, GTK_ALIGN_CENTER); +#else gtk_misc_set_alignment (GTK_MISC (label), 0.0, 0.5); +#endif gtk_table_attach (GTK_TABLE (table), label, 2, 3, row, row + 1, GTK_SHRINK | GTK_FILL, GTK_SHRINK | GTK_FILL, LABEL_INDENT, 0); @@ -1319,7 +1367,12 @@ setup_create_header (GtkWidget *table, int row, char *labeltext) label = gtk_label_new (NULL); gtk_label_set_markup (GTK_LABEL (label), buf); +#if HAVE_GTK3 + gtk_widget_set_halign (label, GTK_ALIGN_START); + gtk_widget_set_valign (label, GTK_ALIGN_CENTER); +#else gtk_misc_set_alignment (GTK_MISC (label), 0.0, 0.5); +#endif gtk_table_attach (GTK_TABLE (table), label, 0, 4, row, row + 1, GTK_SHRINK | GTK_FILL, GTK_SHRINK | GTK_FILL, 0, 5); } @@ -1462,7 +1515,12 @@ setup_create_dark_mode_menu (GtkWidget *table, int row, const setting *set) int i; wid = gtk_label_new (_(set->label)); +#if HAVE_GTK3 + gtk_widget_set_halign (wid, GTK_ALIGN_START); + gtk_widget_set_valign (wid, GTK_ALIGN_CENTER); +#else gtk_misc_set_alignment (GTK_MISC (wid), 0.0, 0.5); +#endif gtk_table_attach (GTK_TABLE (table), wid, 2, 3, row, row + 1, GTK_SHRINK | GTK_FILL, GTK_SHRINK | GTK_FILL, LABEL_INDENT, 0); @@ -1686,8 +1744,13 @@ setup_create_color_button (GtkWidget *table, int num, int row, int col) alignment = gtk_bin_get_child (GTK_BIN (but)); if (GTK_IS_ALIGNMENT (alignment)) { +#if HAVE_GTK3 + gtk_widget_set_halign (alignment, GTK_ALIGN_CENTER); + gtk_widget_set_valign (alignment, GTK_ALIGN_CENTER); +#else gtk_alignment_set (GTK_ALIGNMENT (alignment), 0.5, 0.5, 1.0, 1.0); gtk_alignment_set_padding (GTK_ALIGNMENT (alignment), 0, 0, 0, 0); +#endif } gtk_widget_show (label); gtk_widget_show (box); @@ -1710,7 +1773,12 @@ setup_create_other_colorR (char *text, int num, int row, GtkWidget *tab) GtkWidget *label; label = gtk_label_new (text); +#if HAVE_GTK3 + gtk_widget_set_halign (label, GTK_ALIGN_START); + gtk_widget_set_valign (label, GTK_ALIGN_CENTER); +#else gtk_misc_set_alignment (GTK_MISC (label), 0.0, 0.5); +#endif gtk_table_attach (GTK_TABLE (tab), label, 5, 9, row, row + 1, GTK_SHRINK | GTK_FILL, GTK_SHRINK | GTK_FILL, LABEL_INDENT, 0); setup_create_color_button (tab, num, row, 9); @@ -1722,7 +1790,12 @@ setup_create_other_color (char *text, int num, int row, GtkWidget *tab) GtkWidget *label; label = gtk_label_new (text); +#if HAVE_GTK3 + gtk_widget_set_halign (label, GTK_ALIGN_START); + gtk_widget_set_valign (label, GTK_ALIGN_CENTER); +#else gtk_misc_set_alignment (GTK_MISC (label), 0.0, 0.5); +#endif gtk_table_attach (GTK_TABLE (tab), label, 2, 3, row, row + 1, GTK_SHRINK | GTK_FILL, GTK_SHRINK | GTK_FILL, LABEL_INDENT, 0); setup_create_color_button (tab, num, row, 3); @@ -1748,7 +1821,12 @@ setup_create_color_page (void) setup_create_header (tab, 0, N_("Text Colors")); label = gtk_label_new (_("mIRC colors:")); +#if HAVE_GTK3 + gtk_widget_set_halign (label, GTK_ALIGN_START); + gtk_widget_set_valign (label, GTK_ALIGN_CENTER); +#else gtk_misc_set_alignment (GTK_MISC (label), 0.0, 0.5); +#endif gtk_table_attach (GTK_TABLE (tab), label, 2, 3, 1, 2, GTK_SHRINK | GTK_FILL, GTK_SHRINK | GTK_FILL, LABEL_INDENT, 0); @@ -1756,7 +1834,12 @@ setup_create_color_page (void) setup_create_color_button (tab, i, 1, i+3); label = gtk_label_new (_("Local colors:")); +#if HAVE_GTK3 + gtk_widget_set_halign (label, GTK_ALIGN_START); + gtk_widget_set_valign (label, GTK_ALIGN_CENTER); +#else gtk_misc_set_alignment (GTK_MISC (label), 0.0, 0.5); +#endif gtk_table_attach (GTK_TABLE (tab), label, 2, 3, 2, 3, GTK_SHRINK | GTK_FILL, GTK_SHRINK | GTK_FILL, LABEL_INDENT, 0); @@ -1784,7 +1867,12 @@ setup_create_color_page (void) setup_create_header (tab, 15, N_("Color Stripping")); /* label = gtk_label_new (_("Strip colors from:")); +#if HAVE_GTK3 + gtk_widget_set_halign (label, GTK_ALIGN_START); + gtk_widget_set_valign (label, GTK_ALIGN_CENTER); +#else gtk_misc_set_alignment (GTK_MISC (label), 0.0, 0.5); +#endif gtk_table_attach (GTK_TABLE (tab), label, 2, 3, 16, 17, GTK_SHRINK | GTK_FILL, GTK_SHRINK | GTK_FILL, LABEL_INDENT, 0); */ @@ -1994,7 +2082,12 @@ setup_create_theme_page (void) label = gtk_label_new (NULL); gtk_label_set_markup (GTK_LABEL (label), markup); gtk_label_set_line_wrap (GTK_LABEL (label), TRUE); +#if HAVE_GTK3 + gtk_widget_set_halign (label, GTK_ALIGN_START); + gtk_widget_set_valign (label, GTK_ALIGN_CENTER); +#else gtk_misc_set_alignment (GTK_MISC (label), 0.0, 0.5); +#endif gtk_box_pack_start (GTK_BOX (box), label, FALSE, FALSE, 0); g_free (markup); g_free (themes_dir); @@ -2026,7 +2119,12 @@ setup_create_theme_page (void) G_CALLBACK (setup_theme_open_folder_cb), ui); ui->status_label = gtk_label_new (NULL); +#if HAVE_GTK3 + gtk_widget_set_halign (ui->status_label, GTK_ALIGN_START); + gtk_widget_set_valign (ui->status_label, GTK_ALIGN_CENTER); +#else gtk_misc_set_alignment (GTK_MISC (ui->status_label), 0.0, 0.5); +#endif gtk_box_pack_start (GTK_BOX (box), ui->status_label, FALSE, FALSE, 0); setup_theme_populate (ui); @@ -2257,7 +2355,12 @@ setup_create_sound_page (void) gtk_table_attach (GTK_TABLE (table1), sound_label, 0, 1, 0, 1, (GtkAttachOptions) (GTK_FILL), (GtkAttachOptions) (0), 0, 0); +#if HAVE_GTK3 + gtk_widget_set_halign (sound_label, GTK_ALIGN_START); + gtk_widget_set_valign (sound_label, GTK_ALIGN_CENTER); +#else gtk_misc_set_alignment (GTK_MISC (sound_label), 0, 0.5); +#endif sndfile_entry = gtk_entry_new (); g_signal_connect (G_OBJECT (sndfile_entry), "changed", @@ -2305,8 +2408,17 @@ setup_add_page (const char *title, GtkWidget *book, GtkWidget *tab) label = gtk_label_new (NULL); g_snprintf (buf, sizeof (buf), "%s", _(title)); gtk_label_set_markup (GTK_LABEL (label), buf); +#if HAVE_GTK3 + gtk_widget_set_halign (label, GTK_ALIGN_START); + gtk_widget_set_valign (label, GTK_ALIGN_CENTER); + gtk_widget_set_margin_start (label, 2); + gtk_widget_set_margin_end (label, 2); + gtk_widget_set_margin_top (label, 1); + gtk_widget_set_margin_bottom (label, 1); +#else gtk_misc_set_alignment (GTK_MISC (label), 0.0, 0.5); gtk_misc_set_padding (GTK_MISC (label), 2, 1); +#endif gtk_box_pack_start (GTK_BOX (vvbox), label, FALSE, FALSE, 2); gtk_container_add (GTK_CONTAINER (vvbox), tab);