Changeset 13388


Ignore:
Timestamp:
Jul 14, 2012, 7:26:55 PM (9 years ago)
Author:
jordan
Message:

(trunk gtk) #4970 remove deprecated GTK+ API calls, raise GTK+ dependency to 3.2

Location:
trunk
Files:
16 edited

Legend:

Unmodified
Added
Removed
  • trunk/configure.ac

    r13376 r13388  
    5252##
    5353
    54 GTK2_MINIMUM=2.22.0
    55 AC_SUBST(GTK2_MINIMUM)
    56 GTK3_MINIMUM=3.2.0
    57 AC_SUBST(GTK3_MINIMUM)
    58 GLIB_MINIMUM=2.28.0
     54GTK_MINIMUM=3.2.0
     55AC_SUBST(GTK_MINIMUM)
     56GLIB_MINIMUM=2.32.0
    5957AC_SUBST(GLIB_MINIMUM)
    6058GIO_MINIMUM=2.26.0
     
    352350dnl  detection for the GTK+ client
    353351
    354 
    355 gtk_version="none"
    356 with_gtk_default="no"
    357 PKG_CHECK_EXISTS([gtk+-2.0 >= $GTK2_MINIMUM],[gtk_version="2" with_gtk_default="yes"])
    358 PKG_CHECK_EXISTS([gtk+-3.0 >= $GTK3_MINIMUM],[gtk_version="3" with_gtk_default="yes"])
    359 AC_ARG_WITH([gtk], AC_HELP_STRING([--with-gtk],[with Gtk]),
    360             [with_gtk=$withval],
    361             [with_gtk=$with_gtk_default])
    362 if test "x$with_gtk" = "x2" ; then
    363     PKG_CHECK_EXISTS([gtk+-2.0 >= $GTK2_MINIMUM],[gtk_version="2" with_gtk="yes"],[gtk_version="none" with_gtk="no"])
    364 fi
    365 if test "x$with_gtk" = "x3" ; then
    366     PKG_CHECK_EXISTS([gtk+-3.0 >= $GTK3_MINIMUM],[gtk_version="3" with_gtk="yes"],[gtk_version="none" with_gtk="no"])
    367 fi
    368352AC_ARG_ENABLE([nls],
    369353              [AS_HELP_STRING([--enable-nls],[enable native language support])],,
    370354              [enable_nls=yes])
     355AC_ARG_WITH([gtk],
     356            AC_HELP_STRING([--with-gtk],[with Gtk]),
     357            [with_gtk=$withval],
     358            [with_gtk=yes])
    371359AM_CONDITIONAL([BUILD_GTK],[test "x$with_gtk" = "xyes"])
    372360use_libappindicator=no
    373361if test "x$with_gtk" = "xyes" ; then
    374362
    375     if test "x$gtk_version" = "xnone" ; then
    376         AC_MSG_ERROR("GTK+ not found!")
    377     fi
    378363    if test "x$enable_nls" = "xno" ; then
    379364        AC_MSG_ERROR("The gtk client cannot be built without nls support.  Try adding either --enable-nls or --without-gtk" )
    380365    fi
    381366
    382     if test "x$gtk_version" = "x3"; then
    383 
    384         PKG_CHECK_MODULES([GTK], [gtk+-3.0 >= $GTK3_MINIMUM
    385                                   glib-2.0 >= $GLIB_MINIMUM
    386                                   gio-2.0 >= $GIO_MINIMUM,
    387                                   gmodule-2.0 >= $GLIB_MINIMUM
    388                                   gthread-2.0 >= $GLIB_MINIMUM])
    389         PKG_CHECK_MODULES([LIBAPPINDICATOR],
    390                           [appindicator3-0.1 >= $LIBAPPINDICATOR_MINIMUM],
    391                           [have_libappindicator=yes],
    392                           [have_libappindicator=no])
    393         AC_MSG_NOTICE([using GTK+ 3])
    394     else
    395 
    396         PKG_CHECK_MODULES([GTK], [gtk+-2.0 >= $GTK2_MINIMUM
    397                                   glib-2.0 >= $GLIB_MINIMUM
    398                                   gio-2.0 >= $GIO_MINIMUM,
    399                                   gmodule-2.0 >= $GLIB_MINIMUM
    400                                   gthread-2.0 >= $GLIB_MINIMUM])
    401         PKG_CHECK_MODULES([LIBAPPINDICATOR],
    402                           [appindicator-0.1 >= $LIBAPPINDICATOR_MINIMUM],
    403                           [have_libappindicator=yes],
    404                           [have_libappindicator=no])
    405         AC_MSG_NOTICE([using GTK+ 2])
    406 
    407     fi
     367    PKG_CHECK_MODULES([GTK], [gtk+-3.0 >= $GTK_MINIMUM
     368                              glib-2.0 >= $GLIB_MINIMUM
     369                              gio-2.0 >= $GIO_MINIMUM,
     370                              gmodule-2.0 >= $GLIB_MINIMUM
     371                              gthread-2.0 >= $GLIB_MINIMUM])
     372    PKG_CHECK_MODULES([LIBAPPINDICATOR],
     373                      [appindicator3-0.1 >= $LIBAPPINDICATOR_MINIMUM],
     374                      [have_libappindicator=yes],
     375                      [have_libappindicator=no])
     376    AC_MSG_NOTICE([using GTK+ 3])
    408377
    409378    if test "x$have_libappindicator" = "xyes"; then
     
    570539   Build Command-Line client:                         ${build_cli}
    571540
    572    Build GTK+ client:                                 ${with_gtk} (GTK+ $gtk_version)
     541   Build GTK+ client:                                 ${with_gtk}
    573542      * libappindicator for an Ubuntu-style tray:     ${use_libappindicator}
    574543
  • trunk/gtk/details.c

    r13361 r13388  
    515515    hig_workarea_add_section_title( t, &row, _( "Seeding Limits" ) );
    516516
    517     h = gtr_hbox_new( FALSE, GUI_PAD );
     517    h = gtk_box_new( GTK_ORIENTATION_HORIZONTAL, GUI_PAD );
    518518    w = d->ratio_combo = ratio_combo_new( );
    519519    d->ratio_combo_tag = g_signal_connect( w, "changed", G_CALLBACK( onComboEnumChanged ), d );
     
    525525    hig_workarea_add_row( t, &row, _( "_Ratio:" ), h, NULL );
    526526
    527     h = gtr_hbox_new( FALSE, GUI_PAD );
     527    h = gtk_box_new( GTK_ORIENTATION_HORIZONTAL, GUI_PAD );
    528528    w = d->idle_combo = idle_combo_new( );
    529529    d->idle_combo_tag = g_signal_connect( w, "changed", G_CALLBACK( onComboEnumChanged ), d );
     
    543543    d->max_peers_spin_tag = tag;
    544544
    545     hig_workarea_finish( t, &row );
    546545    return t;
    547546}
     
    10261025
    10271026    hig_workarea_add_section_divider( t, &row );
    1028     hig_workarea_finish( t, &row );
    1029     return t;
    1030 
    1031     hig_workarea_finish( t, &row );
    10321027    return t;
    10331028}
     
    17291724    gtk_container_add( GTK_CONTAINER( w ), v );
    17301725
    1731     vbox = gtr_vbox_new( FALSE, GUI_PAD );
     1726    vbox = gtk_box_new( GTK_ORIENTATION_VERTICAL, GUI_PAD );
    17321727    gtk_container_set_border_width( GTK_CONTAINER( vbox ), GUI_PAD_BIG );
    17331728
    1734 #if GTK_CHECK_VERSION(3,2,0)
    17351729    v = gtk_paned_new( GTK_ORIENTATION_VERTICAL );
    1736 #else
    1737     v = gtk_vpaned_new( );
    1738 #endif
    17391730    gtk_paned_pack1( GTK_PANED( v ), webtree, FALSE, TRUE );
    17401731    gtk_paned_pack2( GTK_PANED( v ), sw, TRUE, TRUE );
     
    22332224        hig_workarea_add_wide_tall_control( t, &row, fr );
    22342225
    2235         hig_workarea_finish( t, &row );
    22362226        gtr_dialog_set_content( GTK_DIALOG( d ), t );
    22372227
     
    23742364    const int pad = ( GUI_PAD + GUI_PAD_BIG ) / 2;
    23752365
    2376     vbox = gtr_vbox_new( FALSE, GUI_PAD );
     2366    vbox = gtk_box_new( GTK_ORIENTATION_VERTICAL, GUI_PAD );
    23772367    gtk_container_set_border_width( GTK_CONTAINER( vbox ), GUI_PAD_BIG );
    23782368
     
    23922382                                            trackerVisibleFunc, di, NULL );
    23932383
    2394     hbox = gtr_hbox_new( FALSE, GUI_PAD_BIG );
     2384    hbox = gtk_box_new( GTK_ORIENTATION_HORIZONTAL, GUI_PAD_BIG );
    23952385
    23962386        v = di->tracker_view = gtk_tree_view_new_with_model( GTK_TREE_MODEL( di->trackers_filtered ) );
     
    24272417    gtk_box_pack_start( GTK_BOX( hbox ), w, TRUE, TRUE, 0 );
    24282418
    2429         v = gtr_vbox_new( FALSE, GUI_PAD );
     2419        v = gtk_box_new( GTK_ORIENTATION_VERTICAL, GUI_PAD );
    24302420
    24312421        w = gtk_button_new_with_mnemonic( _( "_Add" ) );
     
    25522542    gtk_notebook_append_page( GTK_NOTEBOOK( n ), w, l );
    25532543
    2554     v = gtr_vbox_new( FALSE, 0 );
     2544    v = gtk_box_new( GTK_ORIENTATION_VERTICAL, 0 );
    25552545    di->file_list = gtr_file_list_new( core, 0 );
    25562546    di->file_label = gtk_label_new( _( "File listing not available for combined torrent properties" ) );
  • trunk/gtk/filter.c

    r13284 r13388  
    989989
    990990
    991     h = gtr_hbox_new( FALSE, GUI_PAD_SMALL );
     991    h = gtk_box_new( GTK_ORIENTATION_HORIZONTAL, GUI_PAD_SMALL );
    992992
    993993    /* add the activity combobox */
  • trunk/gtk/hig.c

    r12963 r13388  
    1313#include <gtk/gtk.h>
    1414#include "hig.h"
    15 #include "util.h" /* gtr_hbox_new */
    1615
    1716GtkWidget*
    1817hig_workarea_create( void )
    1918{
    20     GtkWidget * t = gtk_table_new( 1, 2, FALSE );
     19    GtkWidget * grid = gtk_grid_new( );
    2120
    22     gtk_container_set_border_width( GTK_CONTAINER( t ), GUI_PAD_BIG );
    23     gtk_table_set_col_spacing( GTK_TABLE( t ), 0, GUI_PAD_BIG );
    24     gtk_table_set_row_spacings( GTK_TABLE( t ), GUI_PAD );
    25     return t;
     21    gtk_container_set_border_width( GTK_CONTAINER( grid ), GUI_PAD_BIG );
     22    gtk_grid_set_row_spacing( GTK_GRID( grid ), GUI_PAD );
     23    gtk_grid_set_column_spacing( GTK_GRID( grid ), GUI_PAD_BIG );
     24
     25    return grid;
    2626}
    2727
     
    3232
    3333    gtk_widget_set_size_request( w, 0u, 6u );
    34     gtk_table_attach( GTK_TABLE( t ), w, 0, 2, *row, *row + 1, 0, 0, 0, 0 );
     34    gtk_grid_attach( GTK_GRID( t ), w, 0, *row, 2, 1 );
    3535    ++ * row;
    3636}
     
    3939hig_workarea_add_section_title_widget( GtkWidget * t, guint * row, GtkWidget * w )
    4040{
    41     gtk_table_attach( GTK_TABLE( t ), w, 0, 2, *row, *row + 1, ~0, 0, 0, 0 );
     41    gtk_widget_set_hexpand( w, TRUE );
     42    gtk_grid_attach( GTK_GRID( t ), w, 0, *row, 2, 1 );
    4243    ++ * row;
    4344}
     
    5657}
    5758
    58 static GtkWidget*
    59 rowNew( GtkWidget * w )
    60 {
    61     GtkWidget * a;
    62     GtkWidget * h = gtr_hbox_new( FALSE, 0 );
    63 
    64     /* spacer */
    65     a = gtk_alignment_new( 0.0f, 0.0f, 0.0f, 0.0f );
    66     gtk_widget_set_size_request( a, 18u, 0u );
    67     gtk_box_pack_start( GTK_BOX( h ), a, FALSE, FALSE, 0 );
    68 
    69     /* lhs widget */
    70     if( GTK_IS_MISC( w ) )
    71         gtk_misc_set_alignment( GTK_MISC( w ), 0.0f, 0.5f );
    72     if( GTK_IS_LABEL( w ) )
    73         gtk_label_set_use_markup( GTK_LABEL( w ), TRUE );
    74     gtk_box_pack_start( GTK_BOX( h ), w, TRUE, TRUE, 0 );
    75 
    76     return h;
    77 }
    78 
    7959void
    8060hig_workarea_add_wide_control( GtkWidget * t, guint * row, GtkWidget * w )
    8161{
    82     GtkWidget * r = rowNew( w );
    83 
    84     gtk_table_attach( GTK_TABLE( t ), r, 0, 2, *row, *row + 1, GTK_FILL, 0, 0, 0 );
     62    gtk_widget_set_hexpand( w, TRUE );
     63    gtk_widget_set_margin_left( w, 18 );
     64    gtk_grid_attach( GTK_GRID( t ), w, 0, *row, 2, 1 );
    8565    ++ * row;
    8666}
    87 
    8867void
    8968hig_workarea_add_wide_tall_control( GtkWidget * t, guint * row, GtkWidget * w )
    9069{
    91     GtkWidget * r = rowNew( w );
    92 
    93     gtk_table_attach( GTK_TABLE( t ), r, 0, 2, *row, *row + 1,
    94                       GTK_EXPAND | GTK_SHRINK | GTK_FILL,
    95                       GTK_EXPAND | GTK_SHRINK | GTK_FILL,
    96                       0, 0 );
    97 
    98     ++ * row;
     70    gtk_widget_set_hexpand( w, TRUE );
     71    hig_workarea_add_wide_control( t, row, w );
    9972}
    10073
     
    11386
    11487void
    115 hig_workarea_add_label_w( GtkWidget * t, guint row, GtkWidget * l )
     88hig_workarea_add_label_w( GtkWidget * t, guint row, GtkWidget * w )
    11689{
    117     GtkWidget * w = rowNew( l );
    118 
    119     gtk_table_attach( GTK_TABLE( t ), w, 0, 1, row, row + 1, GTK_FILL, GTK_FILL, 0, 0 );
    120 }
    121 
    122 GtkWidget*
    123 hig_workarea_add_label( GtkWidget * t, guint row, const char * mnemonic_string )
    124 {
    125     GtkWidget * l = gtk_label_new_with_mnemonic( mnemonic_string );
    126 
    127     hig_workarea_add_label_w( t, row, l );
    128     return l;
     90    gtk_widget_set_margin_left( w, 18 );
     91    if( GTK_IS_MISC( w ) )
     92        gtk_misc_set_alignment( GTK_MISC( w ), 0.0f, 0.5f );
     93    if( GTK_IS_LABEL( w ) )
     94        gtk_label_set_use_markup( GTK_LABEL( w ), TRUE );
     95    gtk_grid_attach( GTK_GRID( t ), w, 0, row, 1, 1 );
    12996}
    13097
     
    135102        gtk_misc_set_alignment( GTK_MISC( control ), 0.0f, 0.5f );
    136103
    137     gtk_table_attach( GTK_TABLE( t ), control,
    138                       1, 2, row, row + 1,
    139                       GTK_EXPAND | GTK_SHRINK | GTK_FILL,
    140                       GTK_EXPAND | GTK_SHRINK | GTK_FILL,
    141                       0, 0 );
     104    g_object_set( control, "expand", TRUE, NULL );
     105    gtk_grid_attach( GTK_GRID( t ), control, 1, row, 1, 1 );
    142106}
    143107
     
    148112        gtk_misc_set_alignment( GTK_MISC( control ), 0.0f, 0.5f );
    149113
    150     gtk_table_attach( GTK_TABLE( t ), control,
    151                       1, 2, row, row + 1,
    152                       GTK_EXPAND | GTK_SHRINK | GTK_FILL, 0, 0, 0 );
     114    gtk_widget_set_hexpand( control, TRUE );
     115    gtk_grid_attach( GTK_GRID( t ), control, 1, row, 1, 1 );
    153116}
    154117
     
    189152{
    190153    GtkWidget * l = gtk_label_new_with_mnemonic( mnemonic_string );
    191     GtkWidget * h = gtr_hbox_new( FALSE, 0 );
    192     GtkWidget * v = gtr_vbox_new( FALSE, 0 );
     154    GtkWidget * h = gtk_box_new( GTK_ORIENTATION_HORIZONTAL, 0 );
     155    GtkWidget * v = gtk_box_new( GTK_ORIENTATION_VERTICAL, 0 );
    193156    gtk_box_pack_start( GTK_BOX( h ), l, FALSE, FALSE, 0 );
    194157    gtk_box_pack_start( GTK_BOX( v ), h, FALSE, FALSE, GUI_PAD_SMALL );
     
    204167    return l;
    205168}
    206 
    207 void
    208 hig_workarea_finish( GtkWidget * t, guint * row )
    209 {
    210     gtk_table_resize( GTK_TABLE( t ), *row, 2 );
    211 }
  • trunk/gtk/hig.h

    r12679 r13388  
    4747                                              gboolean     is_active );
    4848
    49 GtkWidget* hig_workarea_add_label( GtkWidget  * table,
    50                                    guint        row,
    51                                    const char * mnemonic_string );
    52 
    5349void       hig_workarea_add_label_w( GtkWidget * table,
    5450                                     guint       row,
     
    7369                                   GtkWidget * mnemonic_or_null_for_control );
    7470
    75 void       hig_workarea_finish( GtkWidget * table,
    76                                 guint     * row );
    77 
    7871enum
    7972{
  • trunk/gtk/main.c

    r13237 r13388  
    441441        case TR_RPC_TORRENT_STARTED:
    442442        case TR_RPC_TORRENT_STOPPED:
     443        case TR_RPC_SESSION_QUEUE_POSITIONS_CHANGED:
    443444            /* nothing interesting to do here */
    444445            break;
     
    612613
    613614    /* init glib/gtk */
    614     g_thread_init (NULL);
    615615    g_type_init ();
    616616    gtk_init (&argc, &argv);
     
    923923    gtk_container_add( GTK_CONTAINER( c ), r );
    924924
    925     p = gtk_table_new( 3, 2, FALSE );
    926     gtk_table_set_col_spacings( GTK_TABLE( p ), GUI_PAD_BIG );
     925    p = gtk_grid_new( );
     926    gtk_grid_set_column_spacing( GTK_GRID( p ), GUI_PAD_BIG );
    927927    gtk_container_add( GTK_CONTAINER( r ), p );
    928928
    929929    w = gtk_image_new_from_stock( GTK_STOCK_NETWORK, GTK_ICON_SIZE_DIALOG );
    930     gtk_table_attach_defaults( GTK_TABLE( p ), w, 0, 1, 0, 2 );
     930    gtk_grid_attach( GTK_GRID( p ), w, 0, 0, 1, 2 );
    931931
    932932    w = gtk_label_new( NULL );
    933933    gtk_label_set_markup( GTK_LABEL( w ), _( "<b>Closing Connections</b>" ) );
    934934    gtk_misc_set_alignment( GTK_MISC( w ), 0.0, 0.5 );
    935     gtk_table_attach_defaults( GTK_TABLE( p ), w, 1, 2, 0, 1 );
     935    gtk_grid_attach( GTK_GRID( p ), w, 1, 0, 1, 1 );
    936936
    937937    w = gtk_label_new( _( "Sending upload/download totals to tracker
" ) );
    938938    gtk_misc_set_alignment( GTK_MISC( w ), 0.0, 0.5 );
    939     gtk_table_attach_defaults( GTK_TABLE( p ), w, 1, 2, 1, 2 );
     939    gtk_grid_attach( GTK_GRID( p ), w, 1, 1, 1, 1 );
    940940
    941941    b = gtk_alignment_new( 0.0, 1.0, 0.01, 0.01 );
     
    943943    g_signal_connect( w, "clicked", G_CALLBACK( exit_now_cb ), NULL );
    944944    gtk_container_add( GTK_CONTAINER( b ), w );
    945     gtk_table_attach( GTK_TABLE( p ), b, 1, 2, 2, 3, GTK_FILL, GTK_FILL, 0, 10 );
     945    gtk_grid_attach( GTK_GRID( p ), b, 1, 2, 1, 1 );
    946946
    947947    gtk_widget_show_all( r );
     
    960960
    961961    /* shut down libT */
    962     g_thread_create( session_close_threadfunc, vdata, TRUE, NULL );
     962    g_thread_new( "shutdown-thread", session_close_threadfunc, vdata );
    963963}
    964964
  • trunk/gtk/makemeta-ui.c

    r13188 r13388  
    178178    gtk_container_set_border_width( GTK_CONTAINER( fr ), GUI_PAD_BIG );
    179179    gtk_frame_set_shadow_type( GTK_FRAME( fr ), GTK_SHADOW_NONE );
    180     v = gtr_vbox_new( TRUE, GUI_PAD );
     180    v = gtk_box_new( GTK_ORIENTATION_VERTICAL, GUI_PAD );
    181181    gtk_container_add( GTK_CONTAINER( fr ), v );
    182182
     
    474474
    475475        str = _( "_Trackers:" );
    476         v = gtr_vbox_new( FALSE, GUI_PAD_SMALL );
     476        v = gtk_box_new( GTK_ORIENTATION_VERTICAL, GUI_PAD_SMALL );
    477477        ui->announce_text_buffer = gtk_text_buffer_new( NULL );
    478478        w = gtk_text_view_new_with_buffer( ui->announce_text_buffer );
     
    507507        ui->private_check = w;
    508508
    509     hig_workarea_finish( t, &row );
    510509    gtr_dialog_set_content( GTK_DIALOG( d ), t );
    511510
  • trunk/gtk/msgwin.c

    r13205 r13388  
    457457    gtk_window_set_default_size( GTK_WINDOW( win ), 560, 350 );
    458458    gtk_window_set_role( GTK_WINDOW( win ), "message-log" );
    459     vbox = gtr_vbox_new( FALSE, 0 );
     459    vbox = gtk_box_new( GTK_ORIENTATION_VERTICAL, 0 );
    460460
    461461    /**
     
    465465    toolbar = gtk_toolbar_new( );
    466466    gtk_toolbar_set_style( GTK_TOOLBAR( toolbar ), GTK_TOOLBAR_BOTH_HORIZ );
    467 #if GTK_CHECK_VERSION( 3,0,0 )
    468467    gtk_style_context_add_class( gtk_widget_get_style_context( toolbar ),
    469468                                 GTK_STYLE_CLASS_PRIMARY_TOOLBAR );
    470 #endif
    471469
    472470    item = gtk_tool_button_new_from_stock( GTK_STOCK_SAVE_AS );
  • trunk/gtk/open-dialog.c

    r13267 r13388  
    255255gtr_torrent_options_dialog_new( GtkWindow * parent, TrCore * core, tr_ctor * ctor )
    256256{
    257     guint            row;
    258     guint            col;
    259257    const char *     str;
    260258    GtkWidget *      w;
    261259    GtkWidget *      d;
    262     GtkWidget *      t;
     260    GtkGrid        * grid;
     261    int              row;
    263262    GtkWidget *      l;
    264263    GtkWidget *      source_chooser;
     
    302301                      G_CALLBACK( addResponseCB ), data );
    303302
    304     t = gtk_table_new( 6, 2, FALSE );
    305     gtk_container_set_border_width( GTK_CONTAINER( t ), GUI_PAD_BIG );
    306     gtk_table_set_row_spacings( GTK_TABLE( t ), GUI_PAD );
    307     gtk_table_set_col_spacings( GTK_TABLE( t ), GUI_PAD_BIG );
    308 
    309     row = col = 0;
     303    row = 0;
     304    grid = GTK_GRID( gtk_grid_new( ) );
     305    gtk_container_set_border_width( GTK_CONTAINER( grid ), GUI_PAD_BIG );
     306    gtk_grid_set_row_spacing( grid, GUI_PAD );
     307    gtk_grid_set_column_spacing( grid, GUI_PAD_BIG );
     308
     309    // "torrent file" row
    310310    l = gtk_label_new_with_mnemonic( _( "_Torrent file:" ) );
    311311    gtk_misc_set_alignment( GTK_MISC( l ), 0.0f, 0.5f );
    312     gtk_table_attach( GTK_TABLE( t ), l, col, col + 1, row, row + 1, GTK_FILL, 0, 0, 0 );
    313     ++col;
     312    gtk_grid_attach( grid, l, 0, row, 1, 1 );
    314313    w = gtk_file_chooser_button_new( _( "Select Source File" ),
    315314                                     GTK_FILE_CHOOSER_ACTION_OPEN );
    316315    source_chooser = w;
    317     gtk_table_attach( GTK_TABLE( t ), w, col, col + 1, row, row + 1, ~0, 0, 0, 0 );
     316    gtk_widget_set_hexpand( w, TRUE );
     317    gtk_grid_attach_next_to( grid, w, l, GTK_POS_RIGHT, 1, 1 );
    318318    gtk_label_set_mnemonic_widget( GTK_LABEL( l ), w );
    319319    addTorrentFilters( GTK_FILE_CHOOSER( w ) );
     
    321321                      G_CALLBACK( sourceChanged ), data );
    322322
    323     ++row;
    324     col = 0;
     323    // "destination folder" row
     324    row++;
    325325    l = gtk_label_new_with_mnemonic( _( "_Destination folder:" ) );
    326326    gtk_misc_set_alignment( GTK_MISC( l ), 0.0f, 0.5f );
    327     gtk_table_attach( GTK_TABLE( t ), l, col, col + 1, row, row + 1, GTK_FILL, 0, 0, 0 );
    328     ++col;
     327    gtk_grid_attach( grid, l, 0, row, 1, 1 );
    329328    w = gtk_file_chooser_button_new( _( "Select Destination Folder" ),
    330329                                     GTK_FILE_CHOOSER_ACTION_SELECT_FOLDER );
     
    336335        gtk_file_chooser_add_shortcut_folder( GTK_FILE_CHOOSER( w ), walk->data, NULL );
    337336    g_slist_free( list );
    338     gtk_table_attach( GTK_TABLE( t ), w, col, col + 1, row, row + 1, ~0, 0, 0, 0 );
     337    gtk_grid_attach_next_to( grid, w, l, GTK_POS_RIGHT, 1, 1 );
    339338    gtk_label_set_mnemonic_widget( GTK_LABEL( l ), w );
    340339    g_signal_connect( w, "selection-changed",
    341340                      G_CALLBACK( downloadDirChanged ), data );
    342341
    343     ++row;
    344     col = 0;
     342    // file list row
     343    row++;
    345344    w = data->file_list;
     345    gtk_widget_set_vexpand( w, TRUE );
    346346    gtk_widget_set_size_request ( w, 466u, 300u );
    347     gtk_table_attach_defaults( GTK_TABLE( t ), w, col, col + 2, row, row + 1 );
    348 
    349     ++row;
    350     col = 0;
    351     w = gtk_label_new_with_mnemonic( _( "Torrent _priority:" ) );
    352     gtk_misc_set_alignment( GTK_MISC( w ), 0.0f, 0.5f );
    353     gtk_table_attach( GTK_TABLE( t ), w, col, col + 1, row, row + 1, ~0, 0, 0, 0 );
    354     ++col;
    355     gtk_table_attach( GTK_TABLE( t ), data->priority_combo, col, col + 1, row, row + 1, ~0, 0, 0, 0 );
    356     gtk_label_set_mnemonic_widget( GTK_LABEL( w ), data->priority_combo );
    357 
    358     ++row;
    359     col = 0;
     347    gtk_grid_attach( grid, w, 0, row, 2, 1 );
     348
     349    // torrent priority row
     350    row++;
     351    l = gtk_label_new_with_mnemonic( _( "Torrent _priority:" ) );
     352    gtk_misc_set_alignment( GTK_MISC( l ), 0.0f, 0.5f );
     353    gtk_grid_attach( grid, l, 0, row, 1, 1 );
     354    w = data->priority_combo;
     355    gtk_label_set_mnemonic_widget( GTK_LABEL( l ), w );
     356    gtk_grid_attach_next_to( grid, w, l, GTK_POS_RIGHT, 1, 1 );
     357
     358    // torrent priority row
     359    row++;
    360360    w = data->run_check;
    361361    if( tr_ctorGetPaused( ctor, TR_FORCE, &flag ) )
    362362        g_assert_not_reached( );
    363363    gtk_toggle_button_set_active( GTK_TOGGLE_BUTTON( w ), !flag );
    364     gtk_table_attach( GTK_TABLE( t ), w, col, col + 2, row, row + 1, GTK_FILL, 0, 0, 0 );
    365 
    366     ++row;
    367     col = 0;
     364    gtk_grid_attach( grid, w, 0, row, 2, 1 );
     365
     366    // "trash .torrent file" row
     367    row++;
    368368    w = data->trash_check;
    369369    if( tr_ctorGetDeleteSource( ctor, &flag ) )
    370370        g_assert_not_reached( );
    371371    gtk_toggle_button_set_active( GTK_TOGGLE_BUTTON( w ), flag );
    372     gtk_table_attach( GTK_TABLE( t ), w, col, col + 2, row, row + 1, GTK_FILL, 0, 0, 0 );
     372    gtk_grid_attach( grid, w, 0, row, 2, 1 );
    373373
    374374    /* trigger sourceChanged, either directly or indirectly,
     
    380380        sourceChanged( GTK_FILE_CHOOSER_BUTTON( w ), data );
    381381
    382     gtr_dialog_set_content( GTK_DIALOG( d ), t );
     382    gtr_dialog_set_content( GTK_DIALOG( d ), GTK_WIDGET( grid ) );
    383383    w = gtk_dialog_get_widget_for_response( GTK_DIALOG( d ), GTK_RESPONSE_ACCEPT );
    384384    gtk_widget_grab_focus( w );
  • trunk/gtk/relocate.c

    r13188 r13388  
    183183    w = gtk_radio_button_new_with_mnemonic_from_widget( GTK_RADIO_BUTTON( w ), _( "Local data is _already there" ) );
    184184    hig_workarea_add_wide_control( t, &row, w );
    185     hig_workarea_finish( t, &row );
    186185    gtr_dialog_set_content( GTK_DIALOG( d ), t );
    187186
  • trunk/gtk/stats.c

    r12679 r13388  
    177177    gtk_label_set_single_line_mode( GTK_LABEL( l ), TRUE );
    178178    hig_workarea_add_row( t, &row, _( "Duration:" ), l, NULL );
    179     hig_workarea_finish( t, &row );
    180179    gtr_dialog_set_content( GTK_DIALOG( d ), t );
    181180
  • trunk/gtk/torrent-cell-renderer.c

    r12827 r13388  
    363363                                      GtkRequisition   * natural_size )
    364364{
    365 #if GTK_CHECK_VERSION( 3,0,0 )
    366 
    367365    gtk_cell_renderer_get_preferred_size( renderer, widget, minimum_size, natural_size );
    368 
    369 #else
    370 
    371     GtkRequisition r;
    372     gtk_cell_renderer_get_size( renderer, widget, NULL, NULL, NULL, &r.width, &r.height );
    373     if( minimum_size ) *minimum_size = r;
    374     if( natural_size ) *natural_size = r;
    375 
    376 #endif
    377366}
    378367
     
    481470torrent_cell_renderer_get_size( GtkCellRenderer     * cell,
    482471                                GtkWidget           * widget,
    483 #if GTK_CHECK_VERSION( 3,0,0 )
    484472                                const GdkRectangle  * cell_area,
    485 #else
    486                                 GdkRectangle        * cell_area,
    487 #endif
    488473                                gint                * x_offset,
    489474                                gint                * y_offset,
     
    520505}
    521506
    522 #if GTK_CHECK_VERSION( 3,0,0 )
    523     typedef GdkRGBA GtrColor;
    524     #define FOREGROUND_COLOR_KEY "foreground-rgba"
    525 #else
    526     typedef GdkColor GtrColor;
    527     #define FOREGROUND_COLOR_KEY "foreground-gdk"
    528 #endif
     507typedef GdkRGBA GtrColor;
     508#define FOREGROUND_COLOR_KEY "foreground-rgba"
    529509
    530510static void
    531511get_text_color( GtkWidget * w, const tr_stat * st, GtrColor * setme )
    532512{
    533 #if GTK_CHECK_VERSION( 3,0,0 )
    534 
    535513    static const GdkRGBA red = { 1.0, 0, 0, 0 };
    536514    if( st->error )
     
    540518    else
    541519        gtk_style_context_get_color( gtk_widget_get_style_context( w ), GTK_STATE_FLAG_NORMAL, setme );
    542 
    543 #else
    544 
    545     static const GdkColor red = { 0, 65535, 0, 0 };
    546     if( st->error )
    547         *setme = red;
    548     else if( st->activity == TR_STATUS_STOPPED )
    549         *setme = gtk_widget_get_style(w)->text[GTK_STATE_INSENSITIVE];
    550     else
    551         *setme = gtk_widget_get_style(w)->text[GTK_STATE_NORMAL];
    552 
    553 #endif
    554520}
    555521
     
    574540}
    575541
    576 #if GTK_CHECK_VERSION( 3,0,0 )
    577     typedef cairo_t GtrDrawable;
    578 #else
    579     typedef GdkDrawable GtrDrawable;
    580 #endif
     542typedef cairo_t GtrDrawable;
    581543
    582544static void
     
    587549                          GtkCellRendererState    flags)
    588550{
    589 #if GTK_CHECK_VERSION( 3,0,0 )
    590551    gtk_cell_renderer_render( renderer, drawable, widget, area, area, flags );
    591 #else
    592     gtk_cell_renderer_render( renderer, drawable, widget, area, area, area, flags );
    593 #endif
    594552}
    595553
     
    787745                              GtrDrawable           * window,
    788746                              GtkWidget             * widget,
    789 #if GTK_CHECK_VERSION( 3,0,0 )
    790747                              const GdkRectangle    * background_area,
    791748                              const GdkRectangle    * cell_area,
    792 #else
    793                               GdkRectangle          * background_area,
    794                               GdkRectangle          * cell_area,
    795                               GdkRectangle          * expose_area UNUSED,
    796 #endif
    797749                              GtkCellRendererState    flags )
    798750{
  • trunk/gtk/tr-prefs.c

    r13192 r13388  
    304304    hig_workarea_add_row_w( t, &row, l, w, NULL );
    305305
    306     hig_workarea_finish( t, &row );
    307306    return t;
    308307}
     
    361360    hig_workarea_add_row_w( t, &row, w, w2, NULL );
    362361
    363     hig_workarea_finish( t, &row );
    364362    return t;
    365363}
     
    403401    hig_workarea_add_wide_control( t, &row, w );
    404402
    405     hig_workarea_finish( t, &row );
    406403    return t;
    407404}
     
    550547    updateBlocklistText( w, TR_CORE( core ) );
    551548    data->label = w;
    552     h = gtr_hbox_new( FALSE, GUI_PAD_BIG );
     549    h = gtk_box_new( GTK_ORIENTATION_HORIZONTAL, GUI_PAD_BIG );
    553550    gtk_box_pack_start( GTK_BOX( h ), w, TRUE, TRUE, 0 );
    554551    b = data->updateBlocklistButton = gtk_button_new_with_mnemonic( _( "_Update" ) );
     
    592589    hig_workarea_add_wide_control( t, &row, w );
    593590
    594     hig_workarea_finish( t, &row );
    595591    g_object_weak_ref( G_OBJECT( t ), privacyPageDestroyed, data );
    596592    return t;
     
    812808    page->rpc_tb = GTK_TOGGLE_BUTTON( w );
    813809    g_signal_connect( w, "clicked", G_CALLBACK( onRPCToggled ), page );
    814     h = gtr_hbox_new( FALSE, GUI_PAD_BIG );
     810    h = gtk_box_new( GTK_ORIENTATION_HORIZONTAL, GUI_PAD_BIG );
    815811    gtk_box_pack_start( GTK_BOX( h ), w, TRUE, TRUE, 0 );
    816812    w = gtk_button_new_with_mnemonic( _( "_Open web client" ) );
     
    903899        page->whitelist_widgets = g_slist_prepend( page->whitelist_widgets, w );
    904900
    905         h = gtr_hbox_new( TRUE, GUI_PAD );
     901        h = gtk_box_new( GTK_ORIENTATION_HORIZONTAL, GUI_PAD );
    906902        w = gtk_button_new_from_stock( GTK_STOCK_REMOVE );
    907903        g_signal_connect( w, "clicked", G_CALLBACK(
     
    914910        g_signal_connect( w, "clicked", G_CALLBACK( onAddWhitelistClicked ), page );
    915911        gtk_box_pack_start( GTK_BOX( h ), w, TRUE, TRUE, 0 );
    916         w = gtr_hbox_new( FALSE, 0 );
     912        w = gtk_box_new( GTK_ORIENTATION_HORIZONTAL, 0 );
    917913        gtk_box_pack_start( GTK_BOX( w ), gtk_alignment_new( 0, 0, 0, 0 ),
    918914                            TRUE, TRUE, 0 );
     
    922918
    923919    refreshRPCSensitivity( page );
    924     hig_workarea_finish( t, &row );
    925920    return t;
    926921}
     
    10721067
    10731068    hig_workarea_add_section_divider( t, &row );
    1074     h = gtr_hbox_new( FALSE, GUI_PAD );
     1069    h = gtk_box_new( GTK_ORIENTATION_HORIZONTAL, GUI_PAD );
    10751070    w = gtk_image_new_from_stock( "alt-speed-on", -1 );
    10761071    gtk_box_pack_start( GTK_BOX( h ), w, FALSE, FALSE, 0 );
     
    10981093
    10991094        s = _( "_Scheduled times:" );
    1100         h = gtr_hbox_new( FALSE, 0 );
     1095        h = gtk_box_new( GTK_ORIENTATION_HORIZONTAL, 0 );
    11011096        w2 = new_time_combo( core, TR_PREFS_KEY_ALT_SPEED_TIME_BEGIN );
    11021097        page->sched_widgets = g_slist_prepend( page->sched_widgets, w2 );
     
    11191114        page->sched_widgets = g_slist_prepend( page->sched_widgets, w );
    11201115
    1121     hig_workarea_finish( t, &row );
    11221116    g_object_set_data_full( G_OBJECT( t ), "page", page, bandwidthPageFree );
    11231117
     
    12121206    hig_workarea_add_row( t, &row, s, w, NULL );
    12131207
    1214     h = gtr_hbox_new( FALSE, GUI_PAD_BIG );
     1208    h = gtk_box_new( GTK_ORIENTATION_HORIZONTAL, GUI_PAD_BIG );
    12151209    l = data->portLabel = gtk_label_new( _( "Status unknown" ) );
    12161210    gtk_misc_set_alignment( GTK_MISC( l ), 0.0f, 0.5f );
     
    12501244#endif
    12511245
    1252     hig_workarea_finish( t, &row );
    12531246    return t;
    12541247}
  • trunk/gtk/tr-window.c

    r13195 r13388  
    197197         * its fixed-height mode values. Unfortunately there's not an API call
    198198         * for that, but it *does* revalidate when it thinks the style's been tweaked */
    199 #if GTK_CHECK_VERSION( 3,0,0 )
    200199        g_signal_emit_by_name( p->view, "style-updated", NULL, NULL );
    201 #else
    202         g_signal_emit_by_name( p->view, "style-set", NULL, NULL );
    203 #endif
    204200    }
    205201    else if( !strcmp( key, PREF_KEY_STATUSBAR ) )
     
    613609
    614610    /* window's main container */
    615     vbox = gtr_vbox_new ( FALSE, 0 );
     611    vbox = gtk_box_new( GTK_ORIENTATION_VERTICAL, 0 );
    616612    gtk_container_add ( GTK_CONTAINER( self ), vbox );
    617613
     
    623619    /* toolbar */
    624620    toolbar = p->toolbar = gtr_action_get_widget( "/main-window-toolbar" );
    625 #if GTK_CHECK_VERSION( 3,0,0 )
    626621    gtk_style_context_add_class( gtk_widget_get_style_context( toolbar ),
    627622                                 GTK_STYLE_CLASS_PRIMARY_TOOLBAR );
    628 #endif
    629623    gtr_action_set_important( "open-torrent-toolbar", TRUE );
    630624    gtr_action_set_important( "show-torrent-properties", TRUE );
     
    657651
    658652    /* status */
    659     h = status = p->status = gtr_hbox_new( FALSE, GUI_PAD_BIG );
     653    h = status = p->status = gtk_box_new( GTK_ORIENTATION_HORIZONTAL, GUI_PAD_BIG );
    660654    gtk_container_set_border_width( GTK_CONTAINER( h ), GUI_PAD_SMALL );
    661655
     
    679673        gtk_box_pack_start( GTK_BOX( h ), w, 1, 1, GUI_PAD );
    680674
    681         hbox = gtr_hbox_new( FALSE, GUI_PAD );
     675        hbox = gtk_box_new( GTK_ORIENTATION_HORIZONTAL, GUI_PAD );
    682676            w = gtk_alignment_new( 0.0f, 0.0f, 0.0f, 0.0f );
    683677            gtk_widget_set_size_request( w, GUI_PAD, 0u );
     
    690684        gtk_box_pack_end( GTK_BOX( h ), hbox, FALSE, FALSE, 0 );
    691685
    692         hbox = gtr_hbox_new( FALSE, GUI_PAD );
     686        hbox = gtk_box_new( GTK_ORIENTATION_HORIZONTAL, GUI_PAD );
    693687            w = gtk_alignment_new( 0.0f, 0.0f, 0.0f, 0.0f );
    694688            gtk_widget_set_size_request( w, GUI_PAD, 0u );
     
    701695        gtk_box_pack_end( GTK_BOX( h ), hbox, FALSE, FALSE, 0 );
    702696
    703         hbox = gtr_hbox_new( FALSE, GUI_PAD );
     697        hbox = gtk_box_new( GTK_ORIENTATION_HORIZONTAL, GUI_PAD );
    704698            w = gtk_button_new( );
    705699            gtk_widget_set_tooltip_text( w, _( "Statistics" ) );
     
    895889        gdk_display_flush( display );
    896890
    897         if( cursor ) {
    898 #if GTK_CHECK_VERSION( 3,0,0 )
    899             g_object_unref( cursor );
    900 #else
    901             gdk_cursor_unref( cursor );
    902 #endif
    903         }
    904     }
    905 }
     891        g_clear_object (&cursor);
     892    }
     893}
  • trunk/gtk/util.c

    r13195 r13388  
    473473***/
    474474
    475 GtkWidget*
    476 gtr_hbox_new( gboolean homogenous UNUSED, gint spacing )
    477 {
    478 #if GTK_CHECK_VERSION( 3,2,0 )
    479     return gtk_box_new( GTK_ORIENTATION_HORIZONTAL, spacing );
    480 #else
    481     return gtk_hbox_new( homogenous, spacing );
    482 #endif
    483 }
    484 
    485 GtkWidget*
    486 gtr_vbox_new( gboolean homogenous UNUSED, gint spacing )
    487 {
    488 #if GTK_CHECK_VERSION( 3,2,0 )
    489     return gtk_box_new( GTK_ORIENTATION_VERTICAL, spacing );
    490 #else
    491     return gtk_vbox_new( homogenous, spacing );
    492 #endif
    493 }
    494 
    495475#define GTR_CHILD_HIDDEN "gtr-child-hidden"
    496476
  • trunk/gtk/util.h

    r12963 r13388  
    8989***/
    9090
    91 /* backwards-compatible wrapper around gtk_hbox_new() */
    92 GtkWidget* gtr_hbox_new( gboolean homogenous, gint spacing );
    93 
    94 /* backwards-compatible wrapper around gtk_vbox_new() */
    95 GtkWidget* gtr_vbox_new( gboolean homogenous, gint spacing );
    96 
    9791/* backwards-compatible wrapper around gtk_widget_set_visible() */
    9892void gtr_widget_set_visible( GtkWidget *, gboolean );
Note: See TracChangeset for help on using the changeset viewer.