Changeset 5007


Ignore:
Timestamp:
Feb 12, 2008, 4:56:44 PM (14 years ago)
Author:
charles
Message:

(gtk) HIG window layout

Location:
trunk/gtk
Files:
6 edited

Legend:

Unmodified
Added
Removed
  • trunk/gtk/hig.c

    r4927 r5007  
    1717hig_workarea_create (void)
    1818{
    19         GtkWidget * t = gtk_table_new (4, 100, FALSE);
    20         gtk_table_set_row_spacings (GTK_TABLE(t), 6);
    21         gtk_container_set_border_width (GTK_CONTAINER(t), 12);
    22         return t;
     19    GtkWidget * t = gtk_table_new( 1, 2, FALSE );
     20    gtk_container_set_border_width( GTK_CONTAINER( t ), 12 );
     21    gtk_table_set_col_spacings( GTK_TABLE( t ), 12 );
     22    gtk_table_set_row_spacings( GTK_TABLE( t ), 6 );
     23    return t;
    2324}
    2425
    2526void
    26 hig_workarea_add_section_divider  (GtkWidget   * table,
    27                                    int         * row)
     27hig_workarea_add_section_divider( GtkWidget   * t,
     28                                  int         * row )
    2829{
    29         GtkWidget * w = gtk_alignment_new (0.0f, 0.0f, 0.0f, 0.0f);
    30         gtk_widget_set_size_request (w, 0u, 6u);
    31         gtk_table_attach (GTK_TABLE(table), w, 0, 4, *row, *row+1, 0, 0, 0, 0);
    32         ++*row;
     30    GtkWidget * w = gtk_alignment_new( 0.0f, 0.0f, 0.0f, 0.0f );
     31    gtk_widget_set_size_request( w, 0u, 6u );
     32    gtk_table_attach( GTK_TABLE( t ), w, 0, 2, *row, *row+1, 0, 0, 0, 0 );
     33    ++*row;
    3334}
    3435
    3536void
    36 hig_workarea_add_section_title    (GtkWidget   * table,
    37                                    int         * row,
    38                                    const char  * section_title)
     37hig_workarea_add_section_title( GtkWidget   * t,
     38                                int         * row,
     39                                const char  * section_title )
    3940{
    40         char buf[512];
    41         GtkWidget * l;
     41    char buf[512];
     42    GtkWidget * l;
    4243
    43         g_snprintf (buf, sizeof(buf), "<b>%s</b>", section_title);
    44         l = gtk_label_new (buf);
    45         gtk_misc_set_alignment (GTK_MISC(l), 0.0f, 0.5f);
    46         gtk_label_set_use_markup (GTK_LABEL(l), TRUE);
    47         gtk_table_attach (GTK_TABLE(table), l, 0, 4, *row, *row+1, GTK_EXPAND|GTK_SHRINK|GTK_FILL, 0, 0, 0);
    48         ++*row;
     44    g_snprintf( buf, sizeof(buf), "<b>%s</b>", section_title );
     45    l = gtk_label_new( buf );
     46    gtk_misc_set_alignment( GTK_MISC( l ), 0.0f, 0.5f );
     47    gtk_label_set_use_markup( GTK_LABEL( l ), TRUE );
     48    gtk_table_attach( GTK_TABLE( t ), l, 0, 2, *row, *row+1, GTK_FILL, 0, 0, 0 );
     49    ++*row;
     50}
     51
     52static GtkWidget*
     53control_row_new( GtkWidget * w )
     54{
     55    GtkWidget * a;
     56    GtkWidget * h = gtk_hbox_new( FALSE, 0 );
     57
     58    /* spacer */
     59    a = gtk_alignment_new( 0.0f, 0.0f, 0.0f, 0.0f );
     60    gtk_widget_set_size_request( a, 18u, 0u );
     61    gtk_box_pack_start( GTK_BOX( h ), a, FALSE, FALSE, 0 );
     62
     63    /* lhs widget */
     64    if( GTK_IS_MISC( w ) )
     65        gtk_misc_set_alignment( GTK_MISC( w ), 0.0f, 0.5f );
     66    if( GTK_IS_LABEL( w ) )
     67        gtk_label_set_use_markup( GTK_LABEL( w ), TRUE );
     68    gtk_box_pack_start( GTK_BOX( h ), w, TRUE, TRUE, 0 );
     69
     70    return h;
    4971}
    5072
    5173void
    52 hig_workarea_add_section_spacer  (GtkWidget   * table,
    53                                   int          row,
    54                                   int           items_in_section)
     74hig_workarea_add_wide_control( GtkWidget * t,
     75                               int       * row,
     76                               GtkWidget * w )
    5577{
    56         GtkWidget * w;
     78    GtkWidget * r = control_row_new( w );
     79    gtk_table_attach( GTK_TABLE( t ), r, 0, 2, *row, *row+1, GTK_FILL, 0, 0, 0 );
     80    ++*row;
     81}
    5782
    58         /* spacer to move the fields a little to the right of the name header */
    59         w = gtk_alignment_new (0.0f, 0.0f, 0.0f, 0.0f);
    60         gtk_widget_set_size_request (w, 12u, 0u);
    61         gtk_table_attach (GTK_TABLE(table), w, 0, 1, row, row+items_in_section, 0, 0, 0, 0);
    62 
    63         /* spacer between the controls and their labels */
    64         w = gtk_alignment_new (0.0f, 0.0f, 0.0f, 0.0f);
    65         gtk_widget_set_size_request (w, 12u, 0u);
    66         gtk_table_attach (GTK_TABLE(table), w, 2, 3, row, row+items_in_section, 0, 0, 0, 0);
     83GtkWidget *
     84hig_workarea_add_wide_checkbutton( GtkWidget   * t,
     85                                   int         * row,
     86                                   const char  * mnemonic_string,
     87                                   gboolean      is_active)
     88{
     89    GtkWidget * w = gtk_check_button_new_with_mnemonic( mnemonic_string );
     90    gtk_toggle_button_set_active( GTK_TOGGLE_BUTTON( w ), is_active );
     91    hig_workarea_add_wide_control( t, row, w);
     92    return w;
    6793}
    6894
    6995void
    70 hig_workarea_add_wide_control (GtkWidget * table,
    71                                int       * row,
    72                                GtkWidget * w)
     96hig_workarea_add_label_w( GtkWidget   * t,
     97                          int          row,
     98                          GtkWidget   * l )
    7399{
    74   gtk_table_attach (GTK_TABLE(table), w,
    75                     1, 4, *row, *row+1,
    76                     GTK_EXPAND|GTK_SHRINK|GTK_FILL, 0, 0, 0);
    77   ++*row;
     100    GtkWidget * w = control_row_new( l );
     101    gtk_table_attach( GTK_TABLE( t ), w, 0, 1, row, row+1, GTK_FILL, GTK_FILL, 0, 0 );
     102}
     103
     104GtkWidget*
     105hig_workarea_add_label( GtkWidget   * t,
     106                        int           row,
     107                        const char  * mnemonic_string )
     108{
     109    GtkWidget * l = gtk_label_new_with_mnemonic( mnemonic_string );
     110    hig_workarea_add_label_w( t, row, l );
     111    return l;
    78112}
    79113
    80114void
    81 hig_workarea_add_double_control (GtkWidget * table,
    82                                int       * row,
    83                                GtkWidget * wl,
    84                                GtkWidget * wr)
     115hig_workarea_add_control( GtkWidget   * t,
     116                          int           row,
     117                          GtkWidget   * control )
    85118{
    86   gtk_table_attach (GTK_TABLE(table), wl,
    87                     1, 2, *row, *row+1,
    88                     GTK_EXPAND|GTK_SHRINK|GTK_FILL, 0, 0, 0);
     119    if ( GTK_IS_MISC( control ) )
     120        gtk_misc_set_alignment( GTK_MISC(control), 0.0f, 0.5f );
    89121
    90   gtk_table_attach (GTK_TABLE(table), wr,
    91                     3, 4, *row, *row+1,
    92                     GTK_EXPAND|GTK_SHRINK|GTK_FILL, 0, 0, 0);
    93 
    94   ++*row;
    95 }
    96 
    97 GtkWidget *
    98 hig_workarea_add_wide_checkbutton   (GtkWidget   * table,
    99                                      int         * row,
    100                                      const char  * mnemonic_string,
    101                                      gboolean      is_active)
    102 {
    103   GtkWidget * w = gtk_check_button_new_with_mnemonic (mnemonic_string);
    104   gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON(w), is_active);
    105   hig_workarea_add_wide_control (table, row, w);
    106   return w;
     122    gtk_table_attach( GTK_TABLE( t ), control,
     123                      1, 2, row, row+1,
     124                      GTK_EXPAND|GTK_SHRINK|GTK_FILL, 0, 0, 0 );
    107125}
    108126
    109127void
    110 hig_workarea_add_label_w (GtkWidget   * table,
    111                           int           row,
    112                           GtkWidget   * l)
     128hig_workarea_add_row_w( GtkWidget  * t,
     129                        int        * row,
     130                        GtkWidget  * label,
     131                        GtkWidget  * control,
     132                        GtkWidget  * mnemonic )
    113133{
    114   if (GTK_IS_MISC(l))
    115     gtk_misc_set_alignment (GTK_MISC(l), 0.0f, 0.5f);
    116   if (GTK_IS_LABEL(l))
    117     gtk_label_set_use_markup (GTK_LABEL(l), TRUE);
    118   gtk_table_attach (GTK_TABLE(table), l, 1, 2, row, row+1, GTK_FILL, GTK_FILL, 0, 0);
    119 }
    120 
    121 GtkWidget*
    122 hig_workarea_add_label   (GtkWidget   * table,
    123                           int           row,
    124                           const char  * mnemonic_string)
    125 {
    126   GtkWidget * l = gtk_label_new_with_mnemonic (mnemonic_string);
    127   hig_workarea_add_label_w (table, row, l);
    128   return l;
    129 }
    130 
    131 void
    132 hig_workarea_add_control (GtkWidget   * table,
    133                           int           row,
    134                           GtkWidget   * control)
    135 {
    136   if (GTK_IS_MISC(control))
    137     gtk_misc_set_alignment (GTK_MISC(control), 0.0f, 0.5f);
    138 
    139   gtk_table_attach (GTK_TABLE(table), control,
    140                     3, 4, row, row+1,
    141                     GTK_EXPAND|GTK_SHRINK|GTK_FILL, 0, 0, 0);
    142 }
    143 
    144 void
    145 hig_workarea_add_row_w (GtkWidget * table,
    146                        int        * row,
    147                        GtkWidget  * label,
    148                        GtkWidget  * control,
    149                        GtkWidget  * mnemonic)
    150 {
    151   hig_workarea_add_label_w (table, *row, label);
    152   hig_workarea_add_control (table, *row, control);
    153   if (GTK_IS_LABEL(label))
    154     gtk_label_set_mnemonic_widget (GTK_LABEL(label),
    155                                    mnemonic ? mnemonic : control);
     134   hig_workarea_add_label_w( t, *row, label );
     135   hig_workarea_add_control( t, *row, control );
     136   if ( GTK_IS_LABEL( label ) )
     137      gtk_label_set_mnemonic_widget( GTK_LABEL( label ),
     138                                      mnemonic ? mnemonic : control );
    156139  ++*row;
    157140}
    158141
    159142GtkWidget*
    160 hig_workarea_add_row  (GtkWidget   * table,
    161                        int         * row,
    162                        const char  * mnemonic_string,
    163                        GtkWidget   * control,
    164                        GtkWidget   * mnemonic)
     143hig_workarea_add_row( GtkWidget   * t,
     144                      int         * row,
     145                      const char  * mnemonic_string,
     146                      GtkWidget   * control,
     147                      GtkWidget   * mnemonic )
    165148{
    166   GtkWidget * l = gtk_label_new_with_mnemonic (mnemonic_string);
    167   hig_workarea_add_row_w (table, row, l, control, mnemonic);
    168   return l;
     149    GtkWidget * l = gtk_label_new_with_mnemonic( mnemonic_string );
     150    hig_workarea_add_row_w( t, row, l, control, mnemonic );
     151    return l;
    169152}
    170153
    171154void
    172 hig_workarea_finish (GtkWidget   * table,
    173                         int         * row)
     155hig_workarea_finish( GtkWidget   * t,
     156                     int         * row)
    174157{
    175   GtkWidget * w = gtk_alignment_new (0.0f, 0.0f, 0.0f, 0.0f);
    176   gtk_widget_set_size_request (w, 0u, 6u);
    177   gtk_table_attach_defaults (GTK_TABLE(table), w, 0, 4, *row, *row+1);
     158    GtkWidget * w = gtk_alignment_new( 0.0f, 0.0f, 0.0f, 0.0f );
     159    gtk_widget_set_size_request( w, 0u, 6u );
     160    gtk_table_attach_defaults( GTK_TABLE( t ), w, 0, 4, *row, *row+1 );
     161    ++*row;
     162    gtk_table_resize( GTK_TABLE( t ), *row, 2 );
    178163}
    179164
     
    183168                             const char       * secondary)
    184169{
    185   gtk_message_dialog_set_markup (dialog, primary);
    186   gtk_message_dialog_format_secondary_text (dialog, "%s", secondary);
     170    gtk_message_dialog_set_markup (dialog, primary);
     171    gtk_message_dialog_format_secondary_text (dialog, "%s", secondary);
    187172}
  • trunk/gtk/hig.h

    r4404 r5007  
    3333
    3434void
    35 hig_workarea_add_section_spacer (GtkWidget   * table,
    36                                  int           row,
    37                                  int           items_in_section);
    38 
    39 void
    4035hig_workarea_add_wide_control (GtkWidget   * table,
    4136                               int         * row,
    4237                               GtkWidget   * w);
    43 
    44 void
    45 hig_workarea_add_double_control (GtkWidget * table,
    46                                int       * row,
    47                                GtkWidget * wl,
    48                                GtkWidget * wr);
    4938
    5039GtkWidget*
  • trunk/gtk/makemeta-ui.c

    r4911 r5007  
    248248
    249249    hig_workarea_add_section_title (t, &row, _("Files"));
    250     hig_workarea_add_section_spacer (t, row, 3);
    251250
    252251        g_snprintf( name, sizeof(name), "%s:", _("File _Type"));
     
    286285    hig_workarea_add_section_divider( t, &row );
    287286    hig_workarea_add_section_title (t, &row, _("Torrent"));
    288     hig_workarea_add_section_spacer (t, row, 3);
    289287
    290288        g_snprintf( name, sizeof(name), _("Private to this Tracker") );
  • trunk/gtk/stats.c

    r4998 r5007  
    9595
    9696    hig_workarea_add_section_title( t, &row, _( "Current Session" ) );
    97     hig_workarea_add_section_spacer( t, row, 4 );
    9897        l = ui->one_up_lb = gtk_label_new( NULL );
    9998        hig_workarea_add_row( t, &row, _("Uploaded:"), l, NULL );
     
    106105    hig_workarea_add_section_divider( t, &row );
    107106    hig_workarea_add_section_title( t, &row, _("Cumulative") );
    108     hig_workarea_add_section_spacer( t, row, 5 );
    109107        l = ui->all_sessions_lb = gtk_label_new( _("Program started %d times") );
    110108        hig_workarea_add_label_w( t, row++, l );
  • trunk/gtk/torrent-inspector.c

    r5003 r5007  
    667667
    668668  hig_workarea_add_section_title (t, &row, _("Torrent Information"));
    669   hig_workarea_add_section_spacer (t, row, 5);
    670669
    671670    g_snprintf (name, sizeof(name), namefmt, _("Tracker"));
     
    713712  hig_workarea_add_section_divider (t, &row);
    714713  hig_workarea_add_section_title (t, &row, _("Created by"));
    715   hig_workarea_add_section_spacer (t, row, 2);
    716714 
    717715    g_snprintf (name, sizeof(name), namefmt, _("Creator"));
     
    727725  hig_workarea_add_section_divider (t, &row);
    728726  hig_workarea_add_section_title (t, &row, _("Location"));
    729   hig_workarea_add_section_spacer (t, row, 3);
    730727
    731728    g_snprintf (name, sizeof(name), namefmt, _("Downloaded data"));
     
    841838
    842839  hig_workarea_add_section_title (t, &row, _("Transfer"));
    843   hig_workarea_add_section_spacer (t, row, 8);
    844840
    845841    l = a->state_lb = gtk_label_new (NULL);
     
    872868  hig_workarea_add_section_divider (t, &row);
    873869  hig_workarea_add_section_title (t, &row, _("Completeness"));
    874   hig_workarea_add_section_spacer (t, row, 1);
    875870
    876871    w = a->availability_da = gtk_drawing_area_new ();
     
    882877  hig_workarea_add_section_divider (t, &row);
    883878  hig_workarea_add_section_title (t, &row, _("Dates"));
    884   hig_workarea_add_section_spacer (t, row, 3);
    885879
    886880    l = a->date_added_lb = gtk_label_new (NULL);
     
    984978  t = hig_workarea_create ();
    985979  hig_workarea_add_section_title (t, &row, _("Speed Limits") );
    986   hig_workarea_add_section_spacer (t, row, 2);
    987980
    988981    tb = gtk_check_button_new_with_mnemonic (_("Limit _download speed to:"));
     
    10221015  hig_workarea_add_section_divider (t, &row);
    10231016  hig_workarea_add_section_title (t, &row, _("Peer Connections"));
    1024   hig_workarea_add_section_spacer (t, row, 1);
    10251017
    10261018    maxConnectedPeers = tr_torrentGetMaxConnectedPeers( tor );
  • trunk/gtk/tr_prefs.c

    r4945 r5007  
    300300
    301301    hig_workarea_add_section_title (t, &row, _("Speed Limits"));
    302     hig_workarea_add_section_spacer (t, row, 2);
    303302
    304303        s = _("_Limit upload speed (KiB/s)");
     
    307306        gtk_widget_set_sensitive( GTK_WIDGET(w2), pref_flag_get( PREF_KEY_UL_LIMIT_ENABLED ) );
    308307        g_signal_connect( w, "toggled", G_CALLBACK(target_cb), w2 );
    309         hig_workarea_add_double_control( t, &row, w, w2 );
     308        hig_workarea_add_row_w( t, &row, w, w2, NULL );
    310309
    311310        s = _("Li_mit download speed (KiB/s)");
     
    314313        gtk_widget_set_sensitive( GTK_WIDGET(w2), pref_flag_get( PREF_KEY_DL_LIMIT_ENABLED ) );
    315314        g_signal_connect( w, "toggled", G_CALLBACK(target_cb), w2 );
    316         hig_workarea_add_double_control( t, &row, w, w2 );
     315        hig_workarea_add_row_w( t, &row, w, w2, NULL );
    317316
    318317    hig_workarea_add_section_divider( t, &row );
    319318    hig_workarea_add_section_title (t, &row, _("Downloads"));
    320     hig_workarea_add_section_spacer (t, row, 3);
    321319
    322320        s = _("P_rompt for download directory");
     
    325323        gtk_widget_set_sensitive( GTK_WIDGET(w2), !pref_flag_get( PREF_KEY_DIR_ASK ) );
    326324        g_signal_connect( w, "toggled", G_CALLBACK(target_invert_cb), w2 );
    327         hig_workarea_add_double_control( t, &row, w, w2 );
     325        hig_workarea_add_row_w( t, &row, w, w2, NULL );
    328326
    329327        w = new_action_combo( PREF_KEY_ADDSTD, core );
     
    337335    hig_workarea_add_section_divider( t, &row );
    338336    hig_workarea_add_section_title( t, &row, _( "Peer Connections" ) );
    339     hig_workarea_add_section_spacer(t , row, 2 );
    340337 
    341338        w = new_spin_button( PREF_KEY_MAX_PEERS_GLOBAL, core, 1, 3000, 5 );
     
    346343    hig_workarea_add_section_divider( t, &row );
    347344    hig_workarea_add_section_title (t, &row, _("Network"));
    348     hig_workarea_add_section_spacer (t, row, 2);
    349345       
    350346        s = _("_Automatically map port" );
     
    370366    hig_workarea_add_section_divider( t, &row );
    371367    hig_workarea_add_section_title (t, &row, _("Options"));
    372     hig_workarea_add_section_spacer (t, row, 3);
    373368       
    374369        s = _("Use peer _exchange if possible");
Note: See TracChangeset for help on using the changeset viewer.