Mercurial > hg > xmms-sid
comparison src/xs_fileinfo.c @ 614:52a6c114e505
Sub-tune info selector fixed in file information dialog.
author | Matti Hamalainen <ccr@tnsp.org> |
---|---|
date | Sun, 02 Sep 2007 17:31:01 +0000 |
parents | 32fc27395220 |
children | 8fe2e757fa4a |
comparison
equal
deleted
inserted
replaced
613:353dae3b8505 | 614:52a6c114e505 |
---|---|
282 XS_MUTEX_UNLOCK(xs_status); | 282 XS_MUTEX_UNLOCK(xs_status); |
283 | 283 |
284 xs_fileinfostil = xs_stil_get(pcFilename); | 284 xs_fileinfostil = xs_stil_get(pcFilename); |
285 | 285 |
286 /* Check if there already is an open fileinfo window */ | 286 /* Check if there already is an open fileinfo window */ |
287 if (xs_fileinfowin) { | 287 if (xs_fileinfowin) |
288 /* Raise old window */ | |
289 gdk_window_raise(xs_fileinfowin->window); | 288 gdk_window_raise(xs_fileinfowin->window); |
290 | 289 else { |
291 /* Delete items */ | |
292 tmpOptionMenu = LUW("fileinfo_sub_tune"); | |
293 gtk_widget_destroy(GTK_OPTION_MENU(tmpOptionMenu)->menu); | |
294 GTK_OPTION_MENU(tmpOptionMenu)->menu = gtk_menu_new(); | |
295 } else { | |
296 /* If not, create a new one */ | |
297 xs_fileinfowin = create_xs_fileinfowin(); | 290 xs_fileinfowin = create_xs_fileinfowin(); |
298 | 291 gtk_signal_connect( |
299 /* Connect additional signals */ | 292 GTK_OBJECT(gtk_range_get_adjustment(GTK_RANGE(LUW("fileinfo_subctrl_adj")))), |
300 gtk_signal_connect(GTK_OBJECT(gtk_range_get_adjustment(GTK_RANGE(LUW("fileinfo_subctrl_adj")))), | 293 "value_changed", GTK_SIGNAL_FUNC(xs_fileinfo_setsong), NULL); |
301 "value_changed", GTK_SIGNAL_FUNC(xs_fileinfo_setsong), NULL); | 294 } |
302 } | 295 |
296 /* Delete current items */ | |
297 tmpOptionMenu = LUW("fileinfo_sub_tune"); | |
298 tmpMenu = gtk_option_menu_get_menu(GTK_OPTION_MENU(tmpOptionMenu)); | |
299 gtk_widget_destroy(tmpMenu); | |
300 gtk_option_menu_remove_menu(GTK_OPTION_MENU(tmpOptionMenu)); | |
301 tmpMenu = gtk_menu_new(); | |
303 | 302 |
304 | 303 |
305 /* Set the generic song information */ | 304 /* Set the generic song information */ |
306 gtk_entry_set_text(GTK_ENTRY(LUW("fileinfo_filename")), pcFilename); | 305 gtk_entry_set_text(GTK_ENTRY(LUW("fileinfo_filename")), pcFilename); |
307 gtk_entry_set_text(GTK_ENTRY(LUW("fileinfo_songname")), tmpInfo->sidName); | 306 gtk_entry_set_text(GTK_ENTRY(LUW("fileinfo_songname")), tmpInfo->sidName); |
308 gtk_entry_set_text(GTK_ENTRY(LUW("fileinfo_composer")), tmpInfo->sidComposer); | 307 gtk_entry_set_text(GTK_ENTRY(LUW("fileinfo_composer")), tmpInfo->sidComposer); |
309 gtk_entry_set_text(GTK_ENTRY(LUW("fileinfo_copyright")), tmpInfo->sidCopyright); | 308 gtk_entry_set_text(GTK_ENTRY(LUW("fileinfo_copyright")), tmpInfo->sidCopyright); |
310 | 309 |
311 | 310 |
312 /* Main tune - the pseudo tune */ | 311 /* Main tune - the pseudo tune */ |
313 tmpOptionMenu = LUW("fileinfo_sub_tune"); | |
314 tmpMenu = GTK_OPTION_MENU(tmpOptionMenu)->menu; | |
315 | |
316 tmpMenuItem = gtk_menu_item_new_with_label(_("General info")); | 312 tmpMenuItem = gtk_menu_item_new_with_label(_("General info")); |
317 gtk_widget_show(tmpMenuItem); | 313 gtk_widget_show(tmpMenuItem); |
318 gtk_menu_append(GTK_MENU(tmpMenu), tmpMenuItem); | 314 gtk_menu_append(GTK_MENU(tmpMenu), tmpMenuItem); |
319 gtk_signal_connect(GTK_OBJECT(tmpMenuItem), "activate", GTK_SIGNAL_FUNC(xs_fileinfo_subtune), tmpMenu); | 315 gtk_signal_connect(GTK_OBJECT(tmpMenuItem), "activate", |
316 GTK_SIGNAL_FUNC(xs_fileinfo_subtune), tmpMenu); | |
320 | 317 |
321 /* Other menu items */ | 318 /* Other menu items */ |
322 for (n = 1; n <= tmpInfo->nsubTunes; n++) { | 319 for (n = 1; n <= tmpInfo->nsubTunes; n++) { |
323 gchar tmpStr[64]; | 320 gchar tmpStr[64]; |
324 if (xs_fileinfostil && n <= xs_fileinfostil->nsubTunes && xs_fileinfostil->subTunes[n]) { | 321 if (xs_fileinfostil && n <= xs_fileinfostil->nsubTunes && xs_fileinfostil->subTunes[n]) { |
340 | 337 |
341 tmpMenuItem = gtk_menu_item_new_with_label(tmpStr); | 338 tmpMenuItem = gtk_menu_item_new_with_label(tmpStr); |
342 gtk_widget_show(tmpMenuItem); | 339 gtk_widget_show(tmpMenuItem); |
343 gtk_menu_append(GTK_MENU(tmpMenu), tmpMenuItem); | 340 gtk_menu_append(GTK_MENU(tmpMenu), tmpMenuItem); |
344 | 341 |
345 gtk_signal_connect(GTK_OBJECT(tmpMenuItem), "activate", GTK_SIGNAL_FUNC(xs_fileinfo_subtune), tmpMenu); | 342 gtk_signal_connect(GTK_OBJECT(tmpMenuItem), "activate", |
346 } | 343 GTK_SIGNAL_FUNC(xs_fileinfo_subtune), tmpMenu); |
344 } | |
345 | |
346 gtk_option_menu_set_menu(GTK_OPTION_MENU(tmpOptionMenu), tmpMenu); | |
347 gtk_widget_show(tmpOptionMenu); | |
347 | 348 |
348 /* Set the subtune information */ | 349 /* Set the subtune information */ |
349 xs_fileinfo_subtune(NULL, tmpMenu); | 350 xs_fileinfo_subtune(NULL, tmpMenu); |
350 | 351 |
351 /* Free temporary tuneinfo */ | 352 /* Free temporary tuneinfo */ |