Changeset 5310
- Timestamp:
- Mar 19, 2008, 7:23:54 PM (15 years ago)
- File:
-
- 1 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/gtk/makemeta-ui.c
r5299 r5310 171 171 172 172 static void 173 file_selection_changed_cb( GtkFileChooser *chooser, gpointer user_data )173 onSelectionChanged( GtkFileChooser *chooser, gpointer user_data ) 174 174 { 175 175 MakeMetaUI * ui = (MakeMetaUI *) user_data; … … 200 200 refreshButtons( ui ); 201 201 202 tr_strlsize( sizeStr, totalSize, sizeof(sizeStr) ); 203 g_snprintf( buf, sizeof( buf ), 204 /* %1$s is the torrent size, %2$s is its number of files */ 205 ngettext( "<i>%1$s; %2$d File</i>", 206 "<i>%1$s; %2$d Files</i>", fileCount ), 207 sizeStr, fileCount ); 202 if( !filename ) 203 g_snprintf( buf, sizeof( buf ), _( "<i>No files selected</i>" ) ); 204 else { 205 tr_strlsize( sizeStr, totalSize, sizeof(sizeStr) ); 206 g_snprintf( buf, sizeof( buf ), 207 /* %1$s is the torrent size, %2$s is its number of files */ 208 ngettext( "<i>%1$s; %2$d File</i>", 209 "<i>%1$s; %2$d Files</i>", fileCount ), 210 sizeStr, fileCount ); 211 } 208 212 gtk_label_set_markup ( GTK_LABEL(ui->size_lb), buf ); 209 213 210 tr_strlsize( sizeStr, pieceSize, sizeof(sizeStr) ); 211 g_snprintf( buf, sizeof( buf ), 212 /* %1$s is number of pieces; %2$s is how big each piece is */ 213 ngettext( "<i>%1$d Piece @ %2$s</i>", 214 "<i>%1$d Pieces @ %2$s</i>", 215 pieceCount ), 216 pieceCount, sizeStr ); 214 if( !filename ) 215 *buf = '\0'; 216 else { 217 tr_strlsize( sizeStr, pieceSize, sizeof(sizeStr) ); 218 g_snprintf( buf, sizeof( buf ), 219 /* %1$s is number of pieces; %2$s is how big each piece is */ 220 ngettext( "<i>%1$d Piece @ %2$s</i>", 221 "<i>%1$d Pieces @ %2$s</i>", 222 pieceCount ), 223 pieceCount, sizeStr ); 224 } 217 225 gtk_label_set_markup ( GTK_LABEL(ui->pieces_lb), buf ); 218 226 } 219 227 220 228 static void 221 file_chooser_shown_cb( GtkWidget *w, gpointer folder_toggle)222 { 223 const gboolean isFolder = gtk_toggle_button_get_active( folder_toggle);224 gtk_ file_chooser_set_action (GTK_FILE_CHOOSER(w), isFolder225 ? GTK_FILE_CHOOSER_ACTION_SELECT_FOLDER226 : GTK_FILE_CHOOSER_ACTION_OPEN);227 } 228 229 onFileModeToggled( GtkToggleButton * t, gpointer w ) 230 { 231 const gboolean active = gtk_toggle_button_get_active( t ); 232 gtk_widget_set_sensitive( w, active ); 233 if( active ) 234 g_signal_emit_by_name( w, "selection-changed", NULL ); 235 } 236 229 237 GtkWidget* 230 238 make_meta_ui( GtkWindow * parent, tr_handle * handle ) 231 239 { 240 GSList * group; 232 241 int row = 0; 233 GtkWidget * d, *t, *w, *h, *rb_file, *rb_dir;242 GtkWidget *l, *d, *t, *w, *h; 234 243 GtkBox * main_vbox; 235 char name[256];236 244 MakeMetaUI * ui = g_new0 ( MakeMetaUI, 1 ); 237 245 ui->handle = handle; … … 251 259 t = hig_workarea_create (); 252 260 253 hig_workarea_add_section_title (t, &row, _("Files")); 254 255 g_snprintf( name, sizeof(name), "%s:", _("File _Type")); 256 h = gtk_hbox_new( FALSE, GUI_PAD_SMALL ); 257 w = rb_dir = gtk_radio_button_new_with_mnemonic( NULL, _("Folder")); 258 gtk_box_pack_start ( GTK_BOX(h), w, FALSE, FALSE, 0 ); 259 w = rb_file = gtk_radio_button_new_with_mnemonic_from_widget( GTK_RADIO_BUTTON(w), _("Single File") ); 260 gtk_box_pack_start ( GTK_BOX(h), w, FALSE, FALSE, 0 ); 261 hig_workarea_add_row (t, &row, name, h, NULL); 262 263 g_snprintf( name, sizeof(name), "%s:", _("_File")); 264 265 w = gtk_file_chooser_dialog_new ( NULL, 266 NULL, 267 GTK_FILE_CHOOSER_ACTION_OPEN, 268 GTK_STOCK_CANCEL, GTK_RESPONSE_REJECT, 269 GTK_STOCK_OPEN, GTK_RESPONSE_ACCEPT, 270 NULL ); 271 g_signal_connect( w, "map", G_CALLBACK(file_chooser_shown_cb), rb_dir ); 272 w = gtk_file_chooser_button_new_with_dialog( w ); 273 g_signal_connect( w, "selection-changed", G_CALLBACK(file_selection_changed_cb), ui ); 274 hig_workarea_add_row (t, &row, name, w, NULL); 275 276 g_snprintf( name, sizeof(name), "<i>%s</i>", _("No files selected")); 261 hig_workarea_add_section_title (t, &row, _( "Content" )); 262 263 l = gtk_radio_button_new_with_mnemonic( NULL, _( "_Single File:" ) ); 264 w = gtk_file_chooser_button_new( NULL, GTK_FILE_CHOOSER_ACTION_OPEN ); 265 hig_workarea_add_row_w( t, &row, l, w, NULL ); 266 group = gtk_radio_button_get_group( GTK_RADIO_BUTTON( l ) ); 267 g_signal_connect( l, "toggled", G_CALLBACK(onFileModeToggled), w ); 268 g_signal_connect( w, "selection-changed", G_CALLBACK(onSelectionChanged), ui ); 269 270 l = gtk_radio_button_new_with_mnemonic( group, _( "_Folder:" ) ); 271 w = gtk_file_chooser_button_new( NULL, GTK_FILE_CHOOSER_ACTION_SELECT_FOLDER ); 272 hig_workarea_add_row_w( t, &row, l, w, NULL ); 273 g_signal_connect( l, "toggled", G_CALLBACK(onFileModeToggled), w ); 274 g_signal_connect( w, "selection-changed", G_CALLBACK(onSelectionChanged), ui ); 275 gtk_widget_set_sensitive( w, FALSE ); 276 277 277 h = gtk_hbox_new( FALSE, GUI_PAD_SMALL ); 278 278 w = ui->size_lb = gtk_label_new (NULL); 279 gtk_label_set_markup ( GTK_LABEL(w), name);279 gtk_label_set_markup ( GTK_LABEL(w), _( "<i>No files selected</i>" ) ); 280 280 gtk_box_pack_start( GTK_BOX(h), w, FALSE, FALSE, 0 ); 281 281 w = ui->pieces_lb = gtk_label_new (NULL); … … 288 288 289 289 hig_workarea_add_section_divider( t, &row ); 290 hig_workarea_add_section_title (t, &row, _("Torrent")); 291 292 g_snprintf( name, sizeof(name), _("Private to this tracker") ); 293 w = ui->private_check = hig_workarea_add_wide_checkbutton( t, &row, name, FALSE ); 294 295 g_snprintf( name, sizeof(name), "%s:", _("Announce _URL")); 290 hig_workarea_add_section_title (t, &row, _("Metainfo")); 291 292 w = ui->private_check = hig_workarea_add_wide_checkbutton( t, &row, _( "_Private to this tracker" ), FALSE ); 293 296 294 w = ui->announce_entry = gtk_entry_new( ); 297 295 gtk_entry_set_text(GTK_ENTRY(w), "http://"); 298 hig_workarea_add_row (t, &row, name, w, NULL ); 299 300 g_snprintf( name, sizeof(name), "%s:", _("Commen_t")); 296 hig_workarea_add_row (t, &row, _( "Announce _URL:" ), w, NULL ); 297 301 298 w = ui->comment_entry = gtk_entry_new( ); 302 hig_workarea_add_row (t, &row, name, w, NULL );299 hig_workarea_add_row (t, &row, _( "Commen_t:" ), w, NULL ); 303 300 304 301 hig_workarea_finish( t, &row );
Note: See TracChangeset
for help on using the changeset viewer.