From a348e739c004f544f4c7ae129b61aed905d49621 Mon Sep 17 00:00:00 2001 From: Alan F Date: Wed, 12 Mar 2014 19:28:54 +0000 Subject: sync hig.c from transmission-gtk to use GtkGrid instead of deprecated GtkTable, and remove most other usage of GtkTable. --- src/hig.c | 258 ++++++++++++++++++------------------------- src/hig.h | 99 ++++++++--------- src/trg-file-parser.h | 1 + src/trg-preferences-dialog.c | 18 +-- src/trg-torrent-add-dialog.c | 53 +++------ 5 files changed, 174 insertions(+), 255 deletions(-) (limited to 'src') diff --git a/src/hig.c b/src/hig.c index 32432fe..be32a9b 100644 --- a/src/hig.c +++ b/src/hig.c @@ -1,213 +1,169 @@ /* - * This file Copyright (C) 2007-2010 Mnemosyne LLC + * This file Copyright (C) Mnemosyne LLC * - * This file is licensed by the GPL version 2. Works owned by the - * Transmission project are granted a special exemption to clause 2(b) + * This file is licensed by the GPL version 2. Works owned by the + * Transmission project are granted a special exemption to clause 2 (b) * so that the bulk of its code can remain under the MIT license. * This exemption does not extend to derived works not owned by * the Transmission project. * - * $Id: hig.c 9868 2010-01-04 21:00:47Z charles $ + * $Id: hig.c 13677 2012-12-16 22:51:29Z jordan $ */ #include #include "hig.h" -#include "util.h" -GtkWidget *hig_workarea_create(void) +GtkWidget* +hig_workarea_create (void) { - GtkWidget *t = gtk_table_new(1, 2, FALSE); + GtkWidget * grid = gtk_grid_new (); - gtk_container_set_border_width(GTK_CONTAINER(t), GUI_PAD_BIG); - gtk_table_set_col_spacing(GTK_TABLE(t), 0, GUI_PAD_BIG); - gtk_table_set_row_spacings(GTK_TABLE(t), GUI_PAD); - return t; + gtk_container_set_border_width (GTK_CONTAINER (grid), GUI_PAD_BIG); + gtk_grid_set_row_spacing (GTK_GRID (grid), GUI_PAD); + gtk_grid_set_column_spacing (GTK_GRID (grid), GUI_PAD_BIG); + + return grid; } -void hig_workarea_add_section_divider(GtkWidget * t, guint * row) +void +hig_workarea_add_section_divider (GtkWidget * t, guint * row) { - GtkWidget *w = gtk_alignment_new(0.0f, 0.0f, 0.0f, 0.0f); + GtkWidget * w = gtk_alignment_new (0.0f, 0.0f, 0.0f, 0.0f); - gtk_widget_set_size_request(w, 0u, 6u); - gtk_table_attach(GTK_TABLE(t), w, 0, 2, *row, *row + 1, 0, 0, 0, 0); - ++*row; + gtk_widget_set_size_request (w, 0u, 6u); + gtk_grid_attach (GTK_GRID (t), w, 0, *row, 2, 1); + ++ * row; } void -hig_workarea_add_section_title_widget(GtkWidget * t, guint * row, - GtkWidget * w) +hig_workarea_add_section_title_widget (GtkWidget * t, guint * row, GtkWidget * w) { - gtk_table_attach(GTK_TABLE(t), w, 0, 2, *row, *row + 1, ~0, 0, 0, 0); - ++*row; + gtk_widget_set_hexpand (w, TRUE); + gtk_grid_attach (GTK_GRID (t), w, 0, *row, 2, 1); + ++ * row; } void -hig_workarea_add_section_title(GtkWidget * t, - guint * row, const char *section_title) +hig_workarea_add_section_title (GtkWidget * t, guint * row, const char * section_title) { char buf[512]; - GtkWidget *l; - - g_snprintf(buf, sizeof(buf), "%s", section_title); - l = gtk_label_new(buf); - gtk_misc_set_alignment(GTK_MISC(l), 0.0f, 0.5f); - gtk_label_set_use_markup(GTK_LABEL(l), TRUE); - hig_workarea_add_section_title_widget(t, row, l); -} + GtkWidget * l; -static GtkWidget *rowNew(GtkWidget * w) -{ - GtkWidget *a; - GtkWidget *h = trg_hbox_new(FALSE, 0); - - /* spacer */ - a = gtk_alignment_new(0.0f, 0.0f, 0.0f, 0.0f); - gtk_widget_set_size_request(a, 18u, 0u); - gtk_box_pack_start(GTK_BOX(h), a, FALSE, FALSE, 0); - - /* lhs widget */ - if (GTK_IS_MISC(w)) - gtk_misc_set_alignment(GTK_MISC(w), 0.0f, 0.5f); - if (GTK_IS_LABEL(w)) - gtk_label_set_use_markup(GTK_LABEL(w), TRUE); - gtk_box_pack_start(GTK_BOX(h), w, TRUE, TRUE, 0); - - return h; + g_snprintf (buf, sizeof (buf), "%s", section_title); + l = gtk_label_new (buf); + gtk_misc_set_alignment (GTK_MISC (l), 0.0f, 0.5f); + gtk_label_set_use_markup (GTK_LABEL (l), TRUE); + hig_workarea_add_section_title_widget (t, row, l); } -void hig_workarea_add_wide_control(GtkWidget * t, guint * row, - GtkWidget * w) +void +hig_workarea_add_wide_control (GtkWidget * t, guint * row, GtkWidget * w) { - GtkWidget *r = rowNew(w); - - gtk_table_attach(GTK_TABLE(t), r, 0, 2, *row, *row + 1, GTK_FILL, - 0, 0, 0); - ++*row; + gtk_widget_set_hexpand (w, TRUE); + gtk_widget_set_margin_left (w, 18); + gtk_grid_attach (GTK_GRID (t), w, 0, *row, 2, 1); + ++ * row; } - void -hig_workarea_add_wide_tall_control(GtkWidget * t, guint * row, - GtkWidget * w) +hig_workarea_add_wide_tall_control (GtkWidget * t, guint * row, GtkWidget * w) { - GtkWidget *r = rowNew(w); - - gtk_table_attach(GTK_TABLE(t), r, 0, 2, *row, *row + 1, - GTK_EXPAND | GTK_SHRINK | GTK_FILL, - GTK_EXPAND | GTK_SHRINK | GTK_FILL, 0, 0); - - ++*row; + gtk_widget_set_hexpand (w, TRUE); + gtk_widget_set_vexpand (w, TRUE); + hig_workarea_add_wide_control (t, row, w); } -GtkWidget *hig_workarea_add_wide_checkbutton(GtkWidget * t, - guint * row, - const char *mnemonic_string, - gboolean is_active) +GtkWidget * +hig_workarea_add_wide_checkbutton (GtkWidget * t, + guint * row, + const char * mnemonic_string, + gboolean is_active) { - GtkWidget *w = gtk_check_button_new_with_mnemonic(mnemonic_string); + GtkWidget * w = gtk_check_button_new_with_mnemonic (mnemonic_string); - gtk_toggle_button_set_active(GTK_TOGGLE_BUTTON(w), is_active); - hig_workarea_add_wide_control(t, row, w); + gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (w), is_active); + hig_workarea_add_wide_control (t, row, w); return w; } -void hig_workarea_add_label_w(GtkWidget * t, guint row, GtkWidget * l) -{ - GtkWidget *w = rowNew(l); - - gtk_table_attach(GTK_TABLE(t), w, 0, 1, row, row + 1, GTK_FILL, - GTK_FILL, 0, 0); -} - -GtkWidget *hig_workarea_add_label(GtkWidget * t, guint row, - const char *mnemonic_string) +void +hig_workarea_add_label_w (GtkWidget * t, guint row, GtkWidget * w) { - GtkWidget *l = gtk_label_new_with_mnemonic(mnemonic_string); - - hig_workarea_add_label_w(t, row, l); - return l; + gtk_widget_set_margin_left (w, 18); + if (GTK_IS_MISC (w)) + gtk_misc_set_alignment (GTK_MISC (w), 0.0f, 0.5f); + if (GTK_IS_LABEL (w)) + gtk_label_set_use_markup (GTK_LABEL (w), TRUE); + gtk_grid_attach (GTK_GRID (t), w, 0, row, 1, 1); } static void -hig_workarea_add_tall_control(GtkWidget * t, guint row, - GtkWidget * control) +hig_workarea_add_tall_control (GtkWidget * t, guint row, GtkWidget * control) { - if (GTK_IS_MISC(control)) - gtk_misc_set_alignment(GTK_MISC(control), 0.0f, 0.5f); + if (GTK_IS_MISC (control)) + gtk_misc_set_alignment (GTK_MISC (control), 0.0f, 0.5f); - gtk_table_attach(GTK_TABLE(t), control, - 1, 2, row, row + 1, - GTK_EXPAND | GTK_SHRINK | GTK_FILL, - GTK_EXPAND | GTK_SHRINK | GTK_FILL, 0, 0); + g_object_set (control, "expand", TRUE, NULL); + gtk_grid_attach (GTK_GRID (t), control, 1, row, 1, 1); } -void hig_workarea_add_control(GtkWidget * t, guint row, - GtkWidget * control) +static void +hig_workarea_add_control (GtkWidget * t, guint row, GtkWidget * control) { - if (GTK_IS_MISC(control)) - gtk_misc_set_alignment(GTK_MISC(control), 0.0f, 0.5f); + if (GTK_IS_MISC (control)) + gtk_misc_set_alignment (GTK_MISC (control), 0.0f, 0.5f); - gtk_table_attach(GTK_TABLE(t), control, - 1, 2, row, row + 1, - GTK_EXPAND | GTK_SHRINK | GTK_FILL, 0, 0, 0); + gtk_widget_set_hexpand (control, TRUE); + gtk_grid_attach (GTK_GRID (t), control, 1, row, 1, 1); } void -hig_workarea_add_row_w(GtkWidget * t, - guint * row, - GtkWidget * label, - GtkWidget * control, GtkWidget * mnemonic) -{ - hig_workarea_add_label_w(t, *row, label); - hig_workarea_add_control(t, *row, control); - if (GTK_IS_LABEL(label)) - gtk_label_set_mnemonic_widget(GTK_LABEL(label), - mnemonic ? mnemonic : control); - ++*row; -} - -GtkWidget *hig_workarea_add_row(GtkWidget * t, - guint * row, - const char *mnemonic_string, - GtkWidget * control, GtkWidget * mnemonic) -{ - GtkWidget *l = gtk_label_new_with_mnemonic(mnemonic_string); - - hig_workarea_add_row_w(t, row, l, control, mnemonic); +hig_workarea_add_row_w (GtkWidget * t, + guint * row, + GtkWidget * label, + GtkWidget * control, + GtkWidget * mnemonic) +{ + hig_workarea_add_label_w (t, *row, label); + hig_workarea_add_control (t, *row, control); + if (GTK_IS_LABEL (label)) + gtk_label_set_mnemonic_widget (GTK_LABEL (label), + mnemonic ? mnemonic : control); + ++ * row; +} + +GtkWidget* +hig_workarea_add_row (GtkWidget * t, + guint * row, + const char * mnemonic_string, + GtkWidget * control, + GtkWidget * mnemonic) +{ + GtkWidget * l = gtk_label_new_with_mnemonic (mnemonic_string); + + hig_workarea_add_row_w (t, row, l, control, mnemonic); return l; } -GtkWidget *hig_workarea_add_tall_row(GtkWidget * table, - guint * row, - const char *mnemonic_string, - GtkWidget * control, - GtkWidget * mnemonic) +GtkWidget* +hig_workarea_add_tall_row (GtkWidget * table, + guint * row, + const char * mnemonic_string, + GtkWidget * control, + GtkWidget * mnemonic) { - GtkWidget *l = gtk_label_new_with_mnemonic(mnemonic_string); - GtkWidget *h = trg_hbox_new(FALSE, 0); - GtkWidget *v = trg_vbox_new(FALSE, 0); - gtk_box_pack_start(GTK_BOX(h), l, FALSE, FALSE, 0); - gtk_box_pack_start(GTK_BOX(v), h, FALSE, FALSE, GUI_PAD_SMALL); + GtkWidget * l = gtk_label_new_with_mnemonic (mnemonic_string); + GtkWidget * h = gtk_box_new (GTK_ORIENTATION_HORIZONTAL, 0); + GtkWidget * v = gtk_box_new (GTK_ORIENTATION_VERTICAL, 0); + gtk_box_pack_start (GTK_BOX (h), l, FALSE, FALSE, 0); + gtk_box_pack_start (GTK_BOX (v), h, FALSE, FALSE, GUI_PAD_SMALL); - hig_workarea_add_label_w(table, *row, v); - hig_workarea_add_tall_control(table, *row, control); + hig_workarea_add_label_w (table, *row, v); + hig_workarea_add_tall_control (table, *row, control); - if (GTK_IS_LABEL(l)) - gtk_label_set_mnemonic_widget(GTK_LABEL(l), - mnemonic ? mnemonic : control); + if (GTK_IS_LABEL (l)) + gtk_label_set_mnemonic_widget (GTK_LABEL (l), + mnemonic ? mnemonic : control); - ++*row; + ++ * row; return l; } - -void hig_workarea_finish(GtkWidget * t, guint * row) -{ - gtk_table_resize(GTK_TABLE(t), *row, 2); -} - -void -hig_message_dialog_set_text(GtkMessageDialog * dialog, - const char *primary, const char *secondary) -{ - gtk_message_dialog_set_markup(dialog, primary); - gtk_message_dialog_format_secondary_text(dialog, "%s", secondary); -} diff --git a/src/hig.h b/src/hig.h index de4a8bc..ae83c90 100644 --- a/src/hig.h +++ b/src/hig.h @@ -1,17 +1,17 @@ /* - * This file Copyright (C) 2007-2010 Mnemosyne LLC + * This file Copyright (C) Mnemosyne LLC * - * This file is licensed by the GPL version 2. Works owned by the - * Transmission project are granted a special exemption to clause 2(b) + * This file is licensed by the GPL version 2. Works owned by the + * Transmission project are granted a special exemption to clause 2 (b) * so that the bulk of its code can remain under the MIT license. * This exemption does not extend to derived works not owned by * the Transmission project. * - * $Id: hig.h 9868 2010-01-04 21:00:47Z charles $ + * $Id: hig.h 13625 2012-12-05 17:29:46Z jordan $ */ -#ifndef __HIG_H__ -#define __HIG_H__ +#ifndef GTR_HIG_H +#define GTR_HIG_H #include @@ -20,67 +20,60 @@ *** see section 8.2.2, Visual Design > Window Layout > Dialogs. **/ -GtkWidget *hig_workarea_create(void); +GtkWidget* hig_workarea_create (void); -void hig_workarea_add_section_divider(GtkWidget * table, guint * row); +void hig_workarea_add_section_divider (GtkWidget * table, + guint * row); -void hig_workarea_add_section_title_widget(GtkWidget * t, - guint * row, GtkWidget * w); +void hig_workarea_add_section_title_widget (GtkWidget * t, + guint * row, + GtkWidget * w); -void hig_workarea_add_section_title(GtkWidget * table, - guint * row, - const char *section_title); +void hig_workarea_add_section_title (GtkWidget * table, + guint * row, + const char * section_title); -void hig_workarea_add_wide_tall_control(GtkWidget * table, - guint * row, GtkWidget * w); +void hig_workarea_add_wide_tall_control (GtkWidget * table, + guint * row, + GtkWidget * w); -void hig_workarea_add_wide_control(GtkWidget * table, - guint * row, GtkWidget * w); +void hig_workarea_add_wide_control (GtkWidget * table, + guint * row, + GtkWidget * w); -GtkWidget *hig_workarea_add_wide_checkbutton(GtkWidget * table, - guint * row, - const char *mnemonic_string, - gboolean is_active); +GtkWidget* hig_workarea_add_wide_checkbutton (GtkWidget * table, + guint * row, + const char * mnemonic_string, + gboolean is_active); -GtkWidget *hig_workarea_add_label(GtkWidget * table, - guint row, const char *mnemonic_string); +void hig_workarea_add_label_w (GtkWidget * table, + guint row, + GtkWidget * label_widget); -void hig_workarea_add_label_w(GtkWidget * table, - guint row, GtkWidget * label_widget); +GtkWidget* hig_workarea_add_tall_row (GtkWidget * table, + guint * row, + const char * mnemonic_string, + GtkWidget * control, + GtkWidget * mnemonic_or_null_for_control); -void hig_workarea_add_control(GtkWidget * table, - guint row, GtkWidget * control); +GtkWidget* hig_workarea_add_row (GtkWidget * table, + guint * row, + const char * mnemonic_string, + GtkWidget * control, + GtkWidget * mnemonic_or_null_for_control); -GtkWidget *hig_workarea_add_tall_row(GtkWidget * table, - guint * row, - const char *mnemonic_string, - GtkWidget * control, - GtkWidget * - mnemonic_or_null_for_control); +void hig_workarea_add_row_w (GtkWidget * table, + guint * row, + GtkWidget * label, + GtkWidget * control, + GtkWidget * mnemonic_or_null_for_control); -GtkWidget *hig_workarea_add_row(GtkWidget * table, - guint * row, - const char *mnemonic_string, - GtkWidget * control, - GtkWidget * mnemonic_or_null_for_control); - -void hig_workarea_add_row_w(GtkWidget * table, - guint * row, - GtkWidget * label, - GtkWidget * control, - GtkWidget * mnemonic_or_null_for_control); - -void hig_workarea_finish(GtkWidget * table, guint * row); - -void hig_message_dialog_set_text(GtkMessageDialog * dialog, - const char *primary, - const char *secondary); - -enum { +enum +{ GUI_PAD_SMALL = 3, GUI_PAD = 6, GUI_PAD_BIG = 12, GUI_PAD_LARGE = 12 }; -#endif /* __HIG_H__ */ +#endif /* GTR_HIG_H */ diff --git a/src/trg-file-parser.h b/src/trg-file-parser.h index 1344be2..caec42f 100644 --- a/src/trg-file-parser.h +++ b/src/trg-file-parser.h @@ -26,3 +26,4 @@ typedef struct { void trg_torrent_file_free(trg_torrent_file * t); trg_torrent_file *trg_parse_torrent_file(const gchar * filename); +trg_torrent_file *trg_parse_torrent_data(const gchar *data, gsize length); diff --git a/src/trg-preferences-dialog.c b/src/trg-preferences-dialog.c index 53e4fe9..5c0204f 100644 --- a/src/trg-preferences-dialog.c +++ b/src/trg-preferences-dialog.c @@ -613,9 +613,7 @@ static GtkWidget *trg_prefs_openExecPage(TrgPreferencesDialog * dlg) trg_pref_widget_refresh(dlg, wd); priv->widgets = g_list_append(priv->widgets, wd); - gtk_table_attach(GTK_TABLE(t), GTK_WIDGET(ptv), 1, 2, row, row + 1, - GTK_EXPAND | GTK_SHRINK | GTK_FILL, - GTK_FILL | GTK_EXPAND | GTK_SHRINK, 0, 0); + hig_workarea_add_wide_tall_control(t, &row, GTK_WIDGET(ptv)); return t; } @@ -652,9 +650,7 @@ static GtkWidget *trg_prefs_rss_page(TrgPreferencesDialog * dlg) { trg_pref_widget_refresh(dlg, wd); priv->widgets = g_list_append(priv->widgets, wd); - gtk_table_attach(GTK_TABLE(t), GTK_WIDGET(ptv), 1, 2, row, row + 1, - GTK_EXPAND | GTK_SHRINK | GTK_FILL, - GTK_FILL | GTK_EXPAND | GTK_SHRINK, 0, 0); + hig_workarea_add_wide_tall_control(t, &row, GTK_WIDGET(ptv)); return t; } @@ -691,9 +687,7 @@ static GtkWidget *trg_prefs_dirsPage(TrgPreferencesDialog * dlg) trg_pref_widget_refresh(dlg, wd); priv->widgets = g_list_append(priv->widgets, wd); - gtk_table_attach(GTK_TABLE(t), GTK_WIDGET(ptv), 1, 2, row, row + 1, - GTK_EXPAND | GTK_SHRINK | GTK_FILL, - GTK_FILL | GTK_EXPAND | GTK_SHRINK, 0, 0); + hig_workarea_add_wide_tall_control(t, &row, GTK_WIDGET(ptv)); return t; } @@ -838,10 +832,7 @@ static GtkWidget *trg_prefs_serverPage(TrgPreferencesDialog * dlg) hig_workarea_add_row(t, &row, _("Name:"), priv->profileNameEntry, NULL); - gtk_table_attach(GTK_TABLE(t), profileButtonsHbox, 1, 2, row, row + 1, - GTK_EXPAND | GTK_SHRINK, 0, 0, 0); - - row++; + hig_workarea_add_wide_control(t, &row, profileButtonsHbox); hig_workarea_add_section_title(t, &row, _("Connection")); @@ -890,6 +881,7 @@ static GtkWidget *trg_prefs_serverPage(TrgPreferencesDialog * dlg) gtk_box_pack_start(GTK_BOX(frameHbox), priv->profileComboBox, FALSE, FALSE, 4); gtk_frame_set_label_widget(GTK_FRAME(frame), frameHbox); + gtk_container_set_border_width(GTK_CONTAINER(frame), 5); gtk_container_add(GTK_CONTAINER(frame), t); return frame; diff --git a/src/trg-torrent-add-dialog.c b/src/trg-torrent-add-dialog.c index aa63166..e49a7cd 100644 --- a/src/trg-torrent-add-dialog.c +++ b/src/trg-torrent-add-dialog.c @@ -695,7 +695,8 @@ static GObject *trg_torrent_add_dialog_constructor(GType type, TRG_TORRENT_ADD_DIALOG_GET_PRIVATE(obj); TrgPrefs *prefs = trg_client_get_prefs(priv->client); - GtkWidget *t, *l, *applyall_combo; + GtkWidget *t, *applyall_combo; + guint row = 0; /* window */ gtk_window_set_title(GTK_WINDOW(obj), _("Add Torrent")); @@ -714,10 +715,8 @@ static GObject *trg_torrent_add_dialog_constructor(GType type, gtk_dialog_set_default_response(GTK_DIALOG(obj), GTK_RESPONSE_ACCEPT); /* workspace */ - t = gtk_table_new(6, 2, FALSE); - gtk_container_set_border_width(GTK_CONTAINER(t), GUI_PAD_BIG); - gtk_table_set_row_spacings(GTK_TABLE(t), GUI_PAD); - gtk_table_set_col_spacings(GTK_TABLE(t), GUI_PAD_BIG); + t = hig_workarea_create(); + //gtk_container_set_border_width(GTK_CONTAINER(t), GUI_PAD_BIG); priv->file_list = gtr_file_list_new(&priv->store); gtk_widget_set_sensitive(priv->file_list, FALSE); @@ -739,11 +738,9 @@ static GObject *trg_torrent_add_dialog_constructor(GType type, priv->priority_combo = gtr_priority_combo_new(); gtk_combo_box_set_active(GTK_COMBO_BOX(priv->priority_combo), 1); - l = gtk_label_new_with_mnemonic(_("_Torrent file:")); - gtk_misc_set_alignment(GTK_MISC(l), 0.0f, 0.5f); - gtk_table_attach(GTK_TABLE(t), l, 0, 1, 0, 1, GTK_FILL, 0, 0, 0); - priv->source_chooser = gtk_button_new(); + hig_workarea_add_row(t, &row, _("_Torrent file:"), priv->source_chooser, NULL); + gtk_button_set_alignment(GTK_BUTTON(priv->source_chooser), 0.0f, 0.5f); if (priv->filenames) @@ -752,50 +749,30 @@ static GObject *trg_torrent_add_dialog_constructor(GType type, else if (priv->upload) trg_torrent_add_dialog_set_upload(TRG_TORRENT_ADD_DIALOG(obj), priv->upload); - gtk_table_attach(GTK_TABLE(t), priv->source_chooser, 1, 2, 0, - 1, ~0, 0, 0, 0); - gtk_label_set_mnemonic_widget(GTK_LABEL(l), priv->source_chooser); + g_signal_connect(priv->source_chooser, "clicked", G_CALLBACK(trg_torrent_add_dialog_source_click_cb), obj); - l = gtk_label_new_with_mnemonic(_("_Destination folder:")); - gtk_misc_set_alignment(GTK_MISC(l), 0.0f, 0.5f); - gtk_table_attach(GTK_TABLE(t), l, 0, 1, 1, 2, GTK_FILL, 0, 0, 0); - priv->dest_combo = trg_destination_combo_new(priv->client, TRG_PREFS_KEY_LAST_ADD_DESTINATION); - gtk_table_attach(GTK_TABLE(t), priv->dest_combo, 1, 2, 1, - 2, ~0, 0, 0, 0); - gtk_label_set_mnemonic_widget(GTK_LABEL(l), priv->dest_combo); + + hig_workarea_add_row(t, &row, _("_Destination folder:"), priv->dest_combo, NULL); gtk_widget_set_size_request(priv->file_list, 466u, 300u); - gtk_table_attach_defaults(GTK_TABLE(t), priv->file_list, 0, 2, 2, 3); - l = gtk_label_new_with_mnemonic(_("Apply to all:")); - gtk_misc_set_alignment(GTK_MISC(l), 0.0f, 0.5f); - gtk_table_attach(GTK_TABLE(t), l, 0, 1, 3, 4, ~0, 0, 0, 0); + hig_workarea_add_wide_tall_control(t, &row, priv->file_list); applyall_combo = - trg_torrent_add_dialog_apply_all_combo_new(TRG_TORRENT_ADD_DIALOG - (obj)); - gtk_table_attach(GTK_TABLE(t), applyall_combo, 1, 2, 3, 4, ~0, 0, 0, - 0); - - l = gtk_label_new_with_mnemonic(_("Torrent _priority:")); - gtk_misc_set_alignment(GTK_MISC(l), 0.0f, 0.5f); - gtk_table_attach(GTK_TABLE(t), l, 0, 1, 4, 5, ~0, 0, 0, 0); + trg_torrent_add_dialog_apply_all_combo_new(TRG_TORRENT_ADD_DIALOG(obj)); - gtk_table_attach(GTK_TABLE(t), priv->priority_combo, 1, 2, 4, - 5, ~0, 0, 0, 0); - gtk_label_set_mnemonic_widget(GTK_LABEL(l), priv->priority_combo); + hig_workarea_add_row(t, &row, _("Apply to all:"), applyall_combo, NULL); - gtk_table_attach(GTK_TABLE(t), priv->paused_check, 0, 2, 5, - 6, GTK_FILL, 0, 0, 0); + hig_workarea_add_row(t, &row, _("Torrent _priority:"), priv->priority_combo, NULL); - gtk_table_attach(GTK_TABLE(t), priv->delete_check, 0, 2, 6, - 7, GTK_FILL, 0, 0, 0); + hig_workarea_add_wide_control(t, &row, priv->paused_check); + hig_workarea_add_wide_control(t, &row, priv->delete_check); gtr_dialog_set_content(GTK_DIALOG(obj), t); -- cgit v1.2.3