1
0
Fork 0
mirror of https://github.com/transmission/transmission synced 2025-03-11 22:52:53 +00:00

make the `new torrent' dialog a little prettier

This commit is contained in:
Charles Kerr 2008-06-02 15:07:26 +00:00
parent 8ba474b868
commit ff5e97a6db
6 changed files with 35 additions and 50 deletions

View file

@ -1116,7 +1116,7 @@ tracker_page_new( TrTorrent * gtor )
t = hig_workarea_create( );
hig_workarea_add_section_title( t, &row, _( "Trackers" ) );
w = tracker_list_new( gtor, GTK_POS_RIGHT );
w = tracker_list_new( gtor );
hig_workarea_add_wide_control( t, &row, w );
hig_workarea_add_section_divider( t, &row );

View file

@ -699,8 +699,7 @@ wannaquit( void * vdata )
gtk_table_attach_defaults( GTK_TABLE( p ), w, 1, 2, 1, 2 );
b = gtk_alignment_new(0.0, 1.0, 0.01, 0.01);
w = gtk_button_new_with_label( _( "_Quit Now" ) );
gtk_button_set_image( GTK_BUTTON(w), gtk_image_new_from_stock( GTK_STOCK_QUIT, GTK_ICON_SIZE_BUTTON ) );
w = tr_button_new_from_stock( GTK_STOCK_QUIT, _( "_Quit Now" ) );
g_signal_connect(w, "clicked", G_CALLBACK(do_exit_cb), NULL);
gtk_container_add(GTK_CONTAINER(b), w);
gtk_table_attach(GTK_TABLE(p), b, 1, 2, 2, 3, GTK_FILL, GTK_FILL, 0, 10 );

View file

@ -305,10 +305,11 @@ GtkWidget*
make_meta_ui( GtkWindow * parent, tr_handle * handle )
{
int row = 0;
GtkWidget *d, *t, *w, *h, *h2, *v, *focusMe, *extras;
GtkWidget *b1, *b2, *d, *t, *w, *h, *h2, *v, *focusMe, *extras;
GtkBox * main_vbox;
MakeMetaUI * ui = g_new0 ( MakeMetaUI, 1 );
ui->handle = handle;
int width, height;
d = gtk_dialog_new_with_buttons( _("New Torrent"),
parent,
@ -344,11 +345,11 @@ make_meta_ui( GtkWindow * parent, tr_handle * handle )
gtk_box_pack_start( GTK_BOX( v ), h2, FALSE, FALSE, 0 );
gtk_box_pack_start_defaults( GTK_BOX( h ), v );
v = gtk_vbox_new( FALSE, GUI_PAD_SMALL );
w = tr_button_new_from_stock( GTK_STOCK_DIRECTORY, _( "F_older" ) );
w = b1 = tr_button_new_from_stock( GTK_STOCK_DIRECTORY, _( "F_older" ) );
focusMe = w;
g_signal_connect( w, "clicked", G_CALLBACK( onChooseDirectoryClicked ), ui );
gtk_box_pack_start_defaults( GTK_BOX( v ), w );
w = tr_button_new_from_stock( GTK_STOCK_FILE, _( "_File" ) );
w = b2 = tr_button_new_from_stock( GTK_STOCK_FILE, _( "_File" ) );
g_signal_connect( w, "clicked", G_CALLBACK( onChooseFileClicked ), ui );
gtk_box_pack_start_defaults( GTK_BOX( v ), w );
gtk_box_pack_start( GTK_BOX( h ), v, FALSE, FALSE, 0 );
@ -357,9 +358,12 @@ make_meta_ui( GtkWindow * parent, tr_handle * handle )
hig_workarea_add_section_divider( t, &row );
hig_workarea_add_section_title( t, &row, _( "Trackers" ) );
w = tracker_list_new( NULL, GTK_POS_RIGHT );
w = tracker_list_new( NULL );
ui->announce_list = w;
hig_workarea_add_wide_control( t, &row, w );
tracker_list_get_button_size( w, &width, &height );
gtk_widget_set_size_request( b1, width, height );
gtk_widget_set_size_request( b2, width, height );
hig_workarea_add_section_divider( t, &row );
w = extras = gtk_expander_new_with_mnemonic( _( "<b>E_xtras</b>" ) );

View file

@ -250,7 +250,7 @@ onTierEdited( GtkCellRendererText * renderer UNUSED,
}
GtkWidget*
tracker_list_new( TrTorrent * gtor, GtkPositionType buttonPos )
tracker_list_new( TrTorrent * gtor )
{
GtkWidget * w;
GtkWidget * buttons;
@ -265,18 +265,9 @@ tracker_list_new( TrTorrent * gtor, GtkPositionType buttonPos )
page->gtor = gtor;
if( buttonPos == GTK_POS_LEFT || buttonPos == GTK_POS_RIGHT )
{
top = gtk_hbox_new( FALSE, GUI_PAD );
box = gtk_vbox_new( FALSE, GUI_PAD );
buttons = gtk_vbox_new( TRUE, GUI_PAD );
}
else
{
top = gtk_vbox_new( FALSE, GUI_PAD );
box = gtk_hbox_new( FALSE, 0 );
buttons = gtk_hbox_new( TRUE, GUI_PAD );
}
top = gtk_hbox_new( FALSE, GUI_PAD );
box = gtk_vbox_new( FALSE, GUI_PAD );
buttons = gtk_vbox_new( TRUE, GUI_PAD );
m = tracker_model_new( tr_torrent_handle( gtor ) );
page->store = GTK_LIST_STORE( m );
@ -344,20 +335,9 @@ tracker_list_new( TrTorrent * gtor, GtkPositionType buttonPos )
page->revert_button = w;
}
if( buttonPos == GTK_POS_LEFT || buttonPos == GTK_POS_RIGHT ) {
gtk_box_pack_start( GTK_BOX( box ), buttons, FALSE, FALSE, 0 );
} else {
gtk_box_pack_end( GTK_BOX( box ), buttons, FALSE, FALSE, 0 );
}
if( buttonPos == GTK_POS_LEFT || buttonPos == GTK_POS_TOP ) {
gtk_box_pack_start( GTK_BOX( top ), box, FALSE, FALSE, 0 );
gtk_box_pack_start_defaults( GTK_BOX( top ), fr );
} else {
gtk_box_pack_start_defaults( GTK_BOX( top ), fr );
gtk_box_pack_start( GTK_BOX( top ), box, FALSE, FALSE, 0 );
}
gtk_box_pack_start( GTK_BOX( box ), buttons, FALSE, FALSE, 0 );
gtk_box_pack_start_defaults( GTK_BOX( top ), fr );
gtk_box_pack_start( GTK_BOX( top ), box, FALSE, FALSE, 0 );
onTrackerSelectionChanged( sel, page );
@ -391,3 +371,14 @@ tracker_list_get_trackers( GtkWidget * list,
return trackers;
}
void
tracker_list_get_button_size( GtkWidget * list,
gint * width,
gint * height )
{
struct tracker_page * page = g_object_get_data( G_OBJECT( list ), "page" );
GtkRequisition req;
gtk_widget_size_request( page->remove_button, &req );
if( width ) *width = req.width;
if( height ) *height = req.height;
}

View file

@ -4,8 +4,11 @@
#include <gtk/gtkwidget.h>
#include "tr-torrent.h"
GtkWidget* tracker_list_new( TrTorrent * gtor,
GtkPositionType buttonsPosition );
GtkWidget* tracker_list_new( TrTorrent * gtor );
void tracker_list_get_button_size( GtkWidget * list,
gint * width,
gint * height );
/**
* @return an array of tr_tracker_info's. It's the caller's responsibility

View file

@ -483,20 +483,8 @@ GtkWidget *
tr_button_new_from_stock( const char * stock,
const char * mnemonic )
{
GtkWidget * button = gtk_button_new( );
GtkWidget * label = gtk_label_new_with_mnemonic( mnemonic );
gtk_label_set_mnemonic_widget( GTK_LABEL( label ), GTK_WIDGET( button ) );
GtkWidget * image = gtk_image_new_from_stock( stock, GTK_ICON_SIZE_BUTTON );
GtkWidget * hbox = gtk_hbox_new( FALSE, GUI_PAD );
GtkWidget * align = gtk_alignment_new( 0.5, 0.5, 0.0, 0.0 );
gtk_box_pack_start( GTK_BOX( hbox ), image, FALSE, FALSE, 0 );
gtk_box_pack_end( GTK_BOX( hbox ), label, FALSE, FALSE, 0 );
gtk_container_add( GTK_CONTAINER( align ), hbox );
gtk_container_add( GTK_CONTAINER( button ), align );
gtk_widget_show_all( align );
GtkWidget * button = gtk_button_new_with_mnemonic( mnemonic );
gtk_button_set_image( GTK_BUTTON( button ), image );
return button;
}