2 * DO NOT EDIT THIS FILE - it is generated by Glade.
16 #include "gnome_callbacks.h"
17 #include "gnome_interface.h"
18 #include "gnome_support.h"
20 static GnomeUIInfo file_menu_menu_uiinfo[] =
22 GNOMEUIINFO_MENU_OPEN_ITEM (on_open_activate, NULL),
23 GNOMEUIINFO_SEPARATOR,
24 GNOMEUIINFO_MENU_EXIT_ITEM (on_exit_activate, NULL),
28 static GnomeUIInfo channel_menu_uiinfo[] =
31 GNOME_APP_UI_ITEM, N_("None"),
33 on_channel0_activate, NULL, NULL,
34 GNOME_APP_PIXMAP_NONE, NULL,
38 GNOME_APP_UI_ITEM, N_("1"),
40 on_channel1_activate, NULL, NULL,
41 GNOME_APP_PIXMAP_NONE, NULL,
45 GNOME_APP_UI_ITEM, N_("2"),
47 on_channel2_activate, NULL, NULL,
48 GNOME_APP_PIXMAP_NONE, NULL,
52 GNOME_APP_UI_ITEM, N_("3"),
54 on_channel3_activate, NULL, NULL,
55 GNOME_APP_PIXMAP_NONE, NULL,
59 GNOME_APP_UI_ITEM, N_("4"),
61 on_channel4_activate, NULL, NULL,
62 GNOME_APP_PIXMAP_NONE, NULL,
66 GNOME_APP_UI_ITEM, N_("5"),
68 on_channel5_activate, NULL, NULL,
69 GNOME_APP_PIXMAP_NONE, NULL,
73 GNOME_APP_UI_ITEM, N_("Configure..."),
75 on_config_channels_activate, NULL, NULL,
76 GNOME_APP_PIXMAP_NONE, NULL,
82 static GnomeUIInfo view_menu_menu_uiinfo[] =
85 GNOME_APP_UI_ITEM, N_("Control window"),
87 on_control_activate, NULL, NULL,
88 GNOME_APP_PIXMAP_STOCK, GNOME_STOCK_MENU_EXEC,
92 GNOME_APP_UI_ITEM, N_("Playlist"),
94 on_playlist_activate, NULL, NULL,
95 GNOME_APP_PIXMAP_STOCK, GNOME_STOCK_MENU_INDEX,
99 GNOME_APP_UI_SUBTREE, N_("Channel"),
101 channel_menu_uiinfo, NULL, NULL,
102 GNOME_APP_PIXMAP_NONE, NULL,
108 static GnomeUIInfo settings_menu_menu_uiinfo[] =
110 GNOMEUIINFO_MENU_PREFERENCES_ITEM (on_preferences_activate, NULL),
112 GNOME_APP_UI_ITEM, N_("Plugins..."),
114 on_plugins_activate, NULL, NULL,
115 GNOME_APP_PIXMAP_NONE, NULL,
121 static GnomeUIInfo help_menu_menu_uiinfo[] =
124 GNOME_APP_UI_ITEM, N_("User guide"),
126 on_user_guide_activate, NULL, NULL,
127 GNOME_APP_PIXMAP_NONE, NULL,
130 GNOMEUIINFO_MENU_ABOUT_ITEM (on_about_activate, NULL),
134 static GnomeUIInfo menubar_uiinfo[] =
136 GNOMEUIINFO_MENU_FILE_TREE (file_menu_menu_uiinfo),
137 GNOMEUIINFO_MENU_VIEW_TREE (view_menu_menu_uiinfo),
138 GNOMEUIINFO_MENU_SETTINGS_TREE (settings_menu_menu_uiinfo),
139 GNOMEUIINFO_MENU_HELP_TREE (help_menu_menu_uiinfo),
144 create_intf_window (void)
146 GtkWidget *intf_window;
149 GtkWidget *tmp_toolbar_icon;
152 GtkWidget *vseparator1;
158 GtkWidget *vseparator2;
165 intf_window = gnome_app_new ("Vlc", _("VideoLAN Client"));
166 gtk_object_set_data (GTK_OBJECT (intf_window), "intf_window", intf_window);
168 dock = GNOME_APP (intf_window)->dock;
169 gtk_widget_ref (dock);
170 gtk_object_set_data_full (GTK_OBJECT (intf_window), "dock", dock,
171 (GtkDestroyNotify) gtk_widget_unref);
172 gtk_widget_show (dock);
174 gnome_app_create_menus (GNOME_APP (intf_window), menubar_uiinfo);
176 gtk_widget_ref (menubar_uiinfo[0].widget);
177 gtk_object_set_data_full (GTK_OBJECT (intf_window), "file_menu",
178 menubar_uiinfo[0].widget,
179 (GtkDestroyNotify) gtk_widget_unref);
181 gtk_widget_ref (file_menu_menu_uiinfo[0].widget);
182 gtk_object_set_data_full (GTK_OBJECT (intf_window), "open",
183 file_menu_menu_uiinfo[0].widget,
184 (GtkDestroyNotify) gtk_widget_unref);
186 gtk_widget_ref (file_menu_menu_uiinfo[1].widget);
187 gtk_object_set_data_full (GTK_OBJECT (intf_window), "separator1",
188 file_menu_menu_uiinfo[1].widget,
189 (GtkDestroyNotify) gtk_widget_unref);
191 gtk_widget_ref (file_menu_menu_uiinfo[2].widget);
192 gtk_object_set_data_full (GTK_OBJECT (intf_window), "exit",
193 file_menu_menu_uiinfo[2].widget,
194 (GtkDestroyNotify) gtk_widget_unref);
196 gtk_widget_ref (menubar_uiinfo[1].widget);
197 gtk_object_set_data_full (GTK_OBJECT (intf_window), "view_menu",
198 menubar_uiinfo[1].widget,
199 (GtkDestroyNotify) gtk_widget_unref);
201 gtk_widget_ref (view_menu_menu_uiinfo[0].widget);
202 gtk_object_set_data_full (GTK_OBJECT (intf_window), "control",
203 view_menu_menu_uiinfo[0].widget,
204 (GtkDestroyNotify) gtk_widget_unref);
206 gtk_widget_ref (view_menu_menu_uiinfo[1].widget);
207 gtk_object_set_data_full (GTK_OBJECT (intf_window), "playlist",
208 view_menu_menu_uiinfo[1].widget,
209 (GtkDestroyNotify) gtk_widget_unref);
211 gtk_widget_ref (view_menu_menu_uiinfo[2].widget);
212 gtk_object_set_data_full (GTK_OBJECT (intf_window), "channel",
213 view_menu_menu_uiinfo[2].widget,
214 (GtkDestroyNotify) gtk_widget_unref);
216 gtk_widget_ref (channel_menu_uiinfo[0].widget);
217 gtk_object_set_data_full (GTK_OBJECT (intf_window), "channel0",
218 channel_menu_uiinfo[0].widget,
219 (GtkDestroyNotify) gtk_widget_unref);
221 gtk_widget_ref (channel_menu_uiinfo[1].widget);
222 gtk_object_set_data_full (GTK_OBJECT (intf_window), "channel1",
223 channel_menu_uiinfo[1].widget,
224 (GtkDestroyNotify) gtk_widget_unref);
226 gtk_widget_ref (channel_menu_uiinfo[2].widget);
227 gtk_object_set_data_full (GTK_OBJECT (intf_window), "channel2",
228 channel_menu_uiinfo[2].widget,
229 (GtkDestroyNotify) gtk_widget_unref);
231 gtk_widget_ref (channel_menu_uiinfo[3].widget);
232 gtk_object_set_data_full (GTK_OBJECT (intf_window), "channel3",
233 channel_menu_uiinfo[3].widget,
234 (GtkDestroyNotify) gtk_widget_unref);
236 gtk_widget_ref (channel_menu_uiinfo[4].widget);
237 gtk_object_set_data_full (GTK_OBJECT (intf_window), "channel4",
238 channel_menu_uiinfo[4].widget,
239 (GtkDestroyNotify) gtk_widget_unref);
241 gtk_widget_ref (channel_menu_uiinfo[5].widget);
242 gtk_object_set_data_full (GTK_OBJECT (intf_window), "channel5",
243 channel_menu_uiinfo[5].widget,
244 (GtkDestroyNotify) gtk_widget_unref);
246 gtk_widget_ref (channel_menu_uiinfo[6].widget);
247 gtk_object_set_data_full (GTK_OBJECT (intf_window), "config_channels",
248 channel_menu_uiinfo[6].widget,
249 (GtkDestroyNotify) gtk_widget_unref);
251 gtk_widget_ref (menubar_uiinfo[2].widget);
252 gtk_object_set_data_full (GTK_OBJECT (intf_window), "settings_menu",
253 menubar_uiinfo[2].widget,
254 (GtkDestroyNotify) gtk_widget_unref);
256 gtk_widget_ref (settings_menu_menu_uiinfo[0].widget);
257 gtk_object_set_data_full (GTK_OBJECT (intf_window), "preferences",
258 settings_menu_menu_uiinfo[0].widget,
259 (GtkDestroyNotify) gtk_widget_unref);
261 gtk_widget_ref (settings_menu_menu_uiinfo[1].widget);
262 gtk_object_set_data_full (GTK_OBJECT (intf_window), "plugins",
263 settings_menu_menu_uiinfo[1].widget,
264 (GtkDestroyNotify) gtk_widget_unref);
266 gtk_widget_ref (menubar_uiinfo[3].widget);
267 gtk_object_set_data_full (GTK_OBJECT (intf_window), "help_menu",
268 menubar_uiinfo[3].widget,
269 (GtkDestroyNotify) gtk_widget_unref);
271 gtk_widget_ref (help_menu_menu_uiinfo[0].widget);
272 gtk_object_set_data_full (GTK_OBJECT (intf_window), "user_guide",
273 help_menu_menu_uiinfo[0].widget,
274 (GtkDestroyNotify) gtk_widget_unref);
276 gtk_widget_ref (help_menu_menu_uiinfo[1].widget);
277 gtk_object_set_data_full (GTK_OBJECT (intf_window), "about",
278 help_menu_menu_uiinfo[1].widget,
279 (GtkDestroyNotify) gtk_widget_unref);
281 toolbar = gtk_toolbar_new (GTK_ORIENTATION_HORIZONTAL, GTK_TOOLBAR_BOTH);
282 gtk_widget_ref (toolbar);
283 gtk_object_set_data_full (GTK_OBJECT (intf_window), "toolbar", toolbar,
284 (GtkDestroyNotify) gtk_widget_unref);
285 gtk_widget_show (toolbar);
286 gnome_app_add_toolbar (GNOME_APP (intf_window), GTK_TOOLBAR (toolbar), "toolbar",
287 GNOME_DOCK_ITEM_BEH_EXCLUSIVE,
288 GNOME_DOCK_TOP, 1, 0, 0);
289 gtk_toolbar_set_button_relief (GTK_TOOLBAR (toolbar), GTK_RELIEF_NONE);
291 tmp_toolbar_icon = gnome_stock_pixmap_widget (intf_window, GNOME_STOCK_PIXMAP_OPEN);
292 open = gtk_toolbar_append_element (GTK_TOOLBAR (toolbar),
293 GTK_TOOLBAR_CHILD_BUTTON,
297 tmp_toolbar_icon, NULL, NULL);
298 gtk_widget_ref (open);
299 gtk_object_set_data_full (GTK_OBJECT (intf_window), "open", open,
300 (GtkDestroyNotify) gtk_widget_unref);
301 gtk_widget_show (open);
303 tmp_toolbar_icon = gnome_stock_pixmap_widget (intf_window, GNOME_STOCK_PIXMAP_JUMP_TO);
304 jump = gtk_toolbar_append_element (GTK_TOOLBAR (toolbar),
305 GTK_TOOLBAR_CHILD_BUTTON,
309 tmp_toolbar_icon, NULL, NULL);
310 gtk_widget_ref (jump);
311 gtk_object_set_data_full (GTK_OBJECT (intf_window), "jump", jump,
312 (GtkDestroyNotify) gtk_widget_unref);
313 gtk_widget_show (jump);
315 vseparator1 = gtk_vseparator_new ();
316 gtk_widget_ref (vseparator1);
317 gtk_object_set_data_full (GTK_OBJECT (intf_window), "vseparator1", vseparator1,
318 (GtkDestroyNotify) gtk_widget_unref);
319 gtk_widget_show (vseparator1);
320 gtk_toolbar_append_widget (GTK_TOOLBAR (toolbar), vseparator1, NULL, NULL);
321 gtk_widget_set_usize (vseparator1, 16, 32);
323 tmp_toolbar_icon = gnome_stock_pixmap_widget (intf_window, GNOME_STOCK_PIXMAP_FIRST);
324 prev = gtk_toolbar_append_element (GTK_TOOLBAR (toolbar),
325 GTK_TOOLBAR_CHILD_BUTTON,
329 tmp_toolbar_icon, NULL, NULL);
330 gtk_widget_ref (prev);
331 gtk_object_set_data_full (GTK_OBJECT (intf_window), "prev", prev,
332 (GtkDestroyNotify) gtk_widget_unref);
333 gtk_widget_show (prev);
335 tmp_toolbar_icon = gnome_stock_pixmap_widget (intf_window, GNOME_STOCK_PIXMAP_BACK);
336 rewind = gtk_toolbar_append_element (GTK_TOOLBAR (toolbar),
337 GTK_TOOLBAR_CHILD_BUTTON,
341 tmp_toolbar_icon, NULL, NULL);
342 gtk_widget_ref (rewind);
343 gtk_object_set_data_full (GTK_OBJECT (intf_window), "rewind", rewind,
344 (GtkDestroyNotify) gtk_widget_unref);
345 gtk_widget_show (rewind);
347 tmp_toolbar_icon = gnome_stock_pixmap_widget (intf_window, GNOME_STOCK_PIXMAP_STOP);
348 stop = gtk_toolbar_append_element (GTK_TOOLBAR (toolbar),
349 GTK_TOOLBAR_CHILD_BUTTON,
353 tmp_toolbar_icon, NULL, NULL);
354 gtk_widget_ref (stop);
355 gtk_object_set_data_full (GTK_OBJECT (intf_window), "stop", stop,
356 (GtkDestroyNotify) gtk_widget_unref);
357 gtk_widget_show (stop);
359 tmp_toolbar_icon = gnome_stock_pixmap_widget (intf_window, GNOME_STOCK_PIXMAP_FORWARD);
360 play = gtk_toolbar_append_element (GTK_TOOLBAR (toolbar),
361 GTK_TOOLBAR_CHILD_BUTTON,
365 tmp_toolbar_icon, NULL, NULL);
366 gtk_widget_ref (play);
367 gtk_object_set_data_full (GTK_OBJECT (intf_window), "play", play,
368 (GtkDestroyNotify) gtk_widget_unref);
369 gtk_widget_show (play);
371 tmp_toolbar_icon = gnome_stock_pixmap_widget (intf_window, GNOME_STOCK_PIXMAP_LAST);
372 next = gtk_toolbar_append_element (GTK_TOOLBAR (toolbar),
373 GTK_TOOLBAR_CHILD_BUTTON,
377 tmp_toolbar_icon, NULL, NULL);
378 gtk_widget_ref (next);
379 gtk_object_set_data_full (GTK_OBJECT (intf_window), "next", next,
380 (GtkDestroyNotify) gtk_widget_unref);
381 gtk_widget_show (next);
383 vseparator2 = gtk_vseparator_new ();
384 gtk_widget_ref (vseparator2);
385 gtk_object_set_data_full (GTK_OBJECT (intf_window), "vseparator2", vseparator2,
386 (GtkDestroyNotify) gtk_widget_unref);
387 gtk_widget_show (vseparator2);
388 gtk_toolbar_append_widget (GTK_TOOLBAR (toolbar), vseparator2, NULL, NULL);
389 gtk_widget_set_usize (vseparator2, 16, 32);
391 tmp_toolbar_icon = gnome_stock_pixmap_widget (intf_window, GNOME_STOCK_PIXMAP_TIMER_STOP);
392 pause = gtk_toolbar_append_element (GTK_TOOLBAR (toolbar),
393 GTK_TOOLBAR_CHILD_BUTTON,
397 tmp_toolbar_icon, NULL, NULL);
398 gtk_widget_ref (pause);
399 gtk_object_set_data_full (GTK_OBJECT (intf_window), "pause", pause,
400 (GtkDestroyNotify) gtk_widget_unref);
401 gtk_widget_show (pause);
403 tmp_toolbar_icon = gnome_stock_pixmap_widget (intf_window, GNOME_STOCK_PIXMAP_VOLUME);
404 mute = gtk_toolbar_append_element (GTK_TOOLBAR (toolbar),
405 GTK_TOOLBAR_CHILD_BUTTON,
409 tmp_toolbar_icon, NULL, NULL);
410 gtk_widget_ref (mute);
411 gtk_object_set_data_full (GTK_OBJECT (intf_window), "mute", mute,
412 (GtkDestroyNotify) gtk_widget_unref);
413 gtk_widget_show (mute);
415 table1 = gtk_table_new (4, 3, FALSE);
416 gtk_widget_ref (table1);
417 gtk_object_set_data_full (GTK_OBJECT (intf_window), "table1", table1,
418 (GtkDestroyNotify) gtk_widget_unref);
419 gtk_widget_show (table1);
420 gnome_app_set_contents (GNOME_APP (intf_window), table1);
422 hscale1 = gtk_hscale_new (GTK_ADJUSTMENT (gtk_adjustment_new (0, 0, 12, 0.1, 1, 1)));
423 gtk_widget_ref (hscale1);
424 gtk_object_set_data_full (GTK_OBJECT (intf_window), "hscale1", hscale1,
425 (GtkDestroyNotify) gtk_widget_unref);
426 gtk_widget_show (hscale1);
427 gtk_table_attach (GTK_TABLE (table1), hscale1, 1, 2, 1, 2,
428 (GtkAttachOptions) (GTK_EXPAND | GTK_FILL),
429 (GtkAttachOptions) (GTK_EXPAND | GTK_FILL), 0, 0);
431 appbar = gnome_appbar_new (TRUE, TRUE, GNOME_PREFERENCES_NEVER);
432 gtk_widget_ref (appbar);
433 gtk_object_set_data_full (GTK_OBJECT (intf_window), "appbar", appbar,
434 (GtkDestroyNotify) gtk_widget_unref);
435 gtk_widget_show (appbar);
436 gnome_app_set_statusbar (GNOME_APP (intf_window), appbar);
438 gtk_signal_connect (GTK_OBJECT (intf_window), "destroy",
439 GTK_SIGNAL_FUNC (on_intf_window_destroy),
441 gtk_signal_connect (GTK_OBJECT (open), "clicked",
442 GTK_SIGNAL_FUNC (on_open_clicked),
444 gtk_signal_connect (GTK_OBJECT (stop), "clicked",
445 GTK_SIGNAL_FUNC (on_stop_clicked),
447 gtk_signal_connect (GTK_OBJECT (play), "clicked",
448 GTK_SIGNAL_FUNC (on_play_clicked),
450 gtk_signal_connect (GTK_OBJECT (pause), "clicked",
451 GTK_SIGNAL_FUNC (on_pause_clicked),
453 gtk_signal_connect (GTK_OBJECT (mute), "clicked",
454 GTK_SIGNAL_FUNC (on_mute_clicked),
461 create_intf_about (void)
463 const gchar *authors[] = {
464 "too many to list here ...",
465 "see http://www.videolan.org/ for more details",
468 GtkWidget *intf_about;
470 intf_about = gnome_about_new ("Vlc", VERSION,
471 _("(C) 1996-2000 the VideoLAN Team"),
473 _("This is the VideoLAN client.\nIt plays MPEG streams from a file or a network source."),
475 gtk_object_set_data (GTK_OBJECT (intf_about), "intf_about", intf_about);
480 static GnomeUIInfo popup_channel_menu_uiinfo[] =
483 GNOME_APP_UI_ITEM, N_("None"),
485 on_popup_channel0_activate, NULL, NULL,
486 GNOME_APP_PIXMAP_NONE, NULL,
490 GNOME_APP_UI_ITEM, N_("1"),
492 on_popup_channel1_activate, NULL, NULL,
493 GNOME_APP_PIXMAP_NONE, NULL,
497 GNOME_APP_UI_ITEM, N_("2"),
499 on_popup_channel2_activate, NULL, NULL,
500 GNOME_APP_PIXMAP_NONE, NULL,
504 GNOME_APP_UI_ITEM, N_("3"),
506 on_popup_channel3_activate, NULL, NULL,
507 GNOME_APP_PIXMAP_NONE, NULL,
511 GNOME_APP_UI_ITEM, N_("4"),
513 on_popup_channel4_activate, NULL, NULL,
514 GNOME_APP_PIXMAP_NONE, NULL,
518 GNOME_APP_UI_ITEM, N_("5"),
520 on_popup_channel5_activate, NULL, NULL,
521 GNOME_APP_PIXMAP_NONE, NULL,
525 GNOME_APP_UI_ITEM, N_("Configure..."),
527 on_popup_config_channels_activate, NULL, NULL,
528 GNOME_APP_PIXMAP_NONE, NULL,
534 static GnomeUIInfo intf_popup_uiinfo[] =
537 GNOME_APP_UI_ITEM, N_("Play"),
539 on_popup_play_activate, NULL, NULL,
540 GNOME_APP_PIXMAP_STOCK, GNOME_STOCK_MENU_FORWARD,
544 GNOME_APP_UI_ITEM, N_("Stop"),
546 on_popup_stop_activate, NULL, NULL,
547 GNOME_APP_PIXMAP_STOCK, GNOME_STOCK_MENU_STOP,
550 GNOMEUIINFO_SEPARATOR,
552 GNOME_APP_UI_ITEM, N_("Pause"),
554 on_popup_pause_activate, NULL, NULL,
555 GNOME_APP_PIXMAP_STOCK, GNOME_STOCK_MENU_TIMER_STOP,
559 GNOME_APP_UI_ITEM, N_("Mute"),
561 on_popup_mute_activate, NULL, NULL,
562 GNOME_APP_PIXMAP_STOCK, GNOME_STOCK_MENU_VOLUME,
566 GNOME_APP_UI_SUBTREE, N_("Channel"),
568 popup_channel_menu_uiinfo, NULL, NULL,
569 GNOME_APP_PIXMAP_NONE, NULL,
572 GNOMEUIINFO_SEPARATOR,
574 GNOME_APP_UI_ITEM, N_("Control window"),
576 on_popup_control_activate, NULL, NULL,
577 GNOME_APP_PIXMAP_STOCK, GNOME_STOCK_MENU_EXEC,
581 GNOME_APP_UI_ITEM, N_("Playlist"),
583 on_popup_playlist_activate, NULL, NULL,
584 GNOME_APP_PIXMAP_STOCK, GNOME_STOCK_MENU_INDEX,
587 GNOMEUIINFO_SEPARATOR,
588 GNOMEUIINFO_MENU_ABOUT_ITEM (on_popup_about_activate, NULL),
589 GNOMEUIINFO_MENU_EXIT_ITEM (on_popup_exit_activate, NULL),
594 create_intf_popup (void)
596 GtkWidget *intf_popup;
598 intf_popup = gtk_menu_new ();
599 gtk_object_set_data (GTK_OBJECT (intf_popup), "intf_popup", intf_popup);
600 gnome_app_fill_menu (GTK_MENU_SHELL (intf_popup), intf_popup_uiinfo,
603 gtk_widget_ref (intf_popup_uiinfo[0].widget);
604 gtk_object_set_data_full (GTK_OBJECT (intf_popup), "popup_play",
605 intf_popup_uiinfo[0].widget,
606 (GtkDestroyNotify) gtk_widget_unref);
608 gtk_widget_ref (intf_popup_uiinfo[1].widget);
609 gtk_object_set_data_full (GTK_OBJECT (intf_popup), "popup_stop",
610 intf_popup_uiinfo[1].widget,
611 (GtkDestroyNotify) gtk_widget_unref);
613 gtk_widget_ref (intf_popup_uiinfo[2].widget);
614 gtk_object_set_data_full (GTK_OBJECT (intf_popup), "separator2",
615 intf_popup_uiinfo[2].widget,
616 (GtkDestroyNotify) gtk_widget_unref);
618 gtk_widget_ref (intf_popup_uiinfo[3].widget);
619 gtk_object_set_data_full (GTK_OBJECT (intf_popup), "popup_pause",
620 intf_popup_uiinfo[3].widget,
621 (GtkDestroyNotify) gtk_widget_unref);
623 gtk_widget_ref (intf_popup_uiinfo[4].widget);
624 gtk_object_set_data_full (GTK_OBJECT (intf_popup), "popup_mute",
625 intf_popup_uiinfo[4].widget,
626 (GtkDestroyNotify) gtk_widget_unref);
628 gtk_widget_ref (intf_popup_uiinfo[5].widget);
629 gtk_object_set_data_full (GTK_OBJECT (intf_popup), "popup_channel",
630 intf_popup_uiinfo[5].widget,
631 (GtkDestroyNotify) gtk_widget_unref);
633 gtk_widget_ref (popup_channel_menu_uiinfo[0].widget);
634 gtk_object_set_data_full (GTK_OBJECT (intf_popup), "popup_channel0",
635 popup_channel_menu_uiinfo[0].widget,
636 (GtkDestroyNotify) gtk_widget_unref);
638 gtk_widget_ref (popup_channel_menu_uiinfo[1].widget);
639 gtk_object_set_data_full (GTK_OBJECT (intf_popup), "popup_channel1",
640 popup_channel_menu_uiinfo[1].widget,
641 (GtkDestroyNotify) gtk_widget_unref);
643 gtk_widget_ref (popup_channel_menu_uiinfo[2].widget);
644 gtk_object_set_data_full (GTK_OBJECT (intf_popup), "popup_channel2",
645 popup_channel_menu_uiinfo[2].widget,
646 (GtkDestroyNotify) gtk_widget_unref);
648 gtk_widget_ref (popup_channel_menu_uiinfo[3].widget);
649 gtk_object_set_data_full (GTK_OBJECT (intf_popup), "popup_channel3",
650 popup_channel_menu_uiinfo[3].widget,
651 (GtkDestroyNotify) gtk_widget_unref);
653 gtk_widget_ref (popup_channel_menu_uiinfo[4].widget);
654 gtk_object_set_data_full (GTK_OBJECT (intf_popup), "popup_channel4",
655 popup_channel_menu_uiinfo[4].widget,
656 (GtkDestroyNotify) gtk_widget_unref);
658 gtk_widget_ref (popup_channel_menu_uiinfo[5].widget);
659 gtk_object_set_data_full (GTK_OBJECT (intf_popup), "popup_channel5",
660 popup_channel_menu_uiinfo[5].widget,
661 (GtkDestroyNotify) gtk_widget_unref);
663 gtk_widget_ref (popup_channel_menu_uiinfo[6].widget);
664 gtk_object_set_data_full (GTK_OBJECT (intf_popup), "popup_config_channels",
665 popup_channel_menu_uiinfo[6].widget,
666 (GtkDestroyNotify) gtk_widget_unref);
668 gtk_widget_ref (intf_popup_uiinfo[6].widget);
669 gtk_object_set_data_full (GTK_OBJECT (intf_popup), "separator3",
670 intf_popup_uiinfo[6].widget,
671 (GtkDestroyNotify) gtk_widget_unref);
673 gtk_widget_ref (intf_popup_uiinfo[7].widget);
674 gtk_object_set_data_full (GTK_OBJECT (intf_popup), "popup_control",
675 intf_popup_uiinfo[7].widget,
676 (GtkDestroyNotify) gtk_widget_unref);
678 gtk_widget_ref (intf_popup_uiinfo[8].widget);
679 gtk_object_set_data_full (GTK_OBJECT (intf_popup), "popup_playlist",
680 intf_popup_uiinfo[8].widget,
681 (GtkDestroyNotify) gtk_widget_unref);
683 gtk_widget_ref (intf_popup_uiinfo[9].widget);
684 gtk_object_set_data_full (GTK_OBJECT (intf_popup), "separator2",
685 intf_popup_uiinfo[9].widget,
686 (GtkDestroyNotify) gtk_widget_unref);
688 gtk_widget_ref (intf_popup_uiinfo[10].widget);
689 gtk_object_set_data_full (GTK_OBJECT (intf_popup), "popup_about",
690 intf_popup_uiinfo[10].widget,
691 (GtkDestroyNotify) gtk_widget_unref);
693 gtk_widget_ref (intf_popup_uiinfo[11].widget);
694 gtk_object_set_data_full (GTK_OBJECT (intf_popup), "popup_exit",
695 intf_popup_uiinfo[11].widget,
696 (GtkDestroyNotify) gtk_widget_unref);
702 create_intf_playlist (void)
704 GtkWidget *intf_playlist;
706 GtkWidget *scrolledwindow;
708 GtkWidget *label_name;
709 GtkWidget *label_type;
710 GtkWidget *label_length;
711 GtkWidget *hbuttonbox;
712 GtkWidget *playlist_load;
713 GtkWidget *playlist_close;
714 GtkWidget *playlist_help;
716 intf_playlist = gtk_window_new (GTK_WINDOW_TOPLEVEL);
717 gtk_object_set_data (GTK_OBJECT (intf_playlist), "intf_playlist", intf_playlist);
718 gtk_window_set_title (GTK_WINDOW (intf_playlist), _("Playlist"));
719 gtk_window_set_default_size (GTK_WINDOW (intf_playlist), -1, 400);
720 gtk_window_set_policy (GTK_WINDOW (intf_playlist), TRUE, TRUE, FALSE);
722 vbox1 = gtk_vbox_new (FALSE, 0);
723 gtk_widget_ref (vbox1);
724 gtk_object_set_data_full (GTK_OBJECT (intf_playlist), "vbox1", vbox1,
725 (GtkDestroyNotify) gtk_widget_unref);
726 gtk_widget_show (vbox1);
727 gtk_container_add (GTK_CONTAINER (intf_playlist), vbox1);
729 scrolledwindow = gtk_scrolled_window_new (NULL, NULL);
730 gtk_widget_ref (scrolledwindow);
731 gtk_object_set_data_full (GTK_OBJECT (intf_playlist), "scrolledwindow", scrolledwindow,
732 (GtkDestroyNotify) gtk_widget_unref);
733 gtk_widget_show (scrolledwindow);
734 gtk_box_pack_start (GTK_BOX (vbox1), scrolledwindow, TRUE, TRUE, 0);
735 gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (scrolledwindow), GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC);
737 clist = gtk_clist_new (3);
738 gtk_widget_ref (clist);
739 gtk_object_set_data_full (GTK_OBJECT (intf_playlist), "clist", clist,
740 (GtkDestroyNotify) gtk_widget_unref);
741 gtk_widget_show (clist);
742 gtk_container_add (GTK_CONTAINER (scrolledwindow), clist);
743 gtk_clist_set_column_width (GTK_CLIST (clist), 0, 147);
744 gtk_clist_set_column_width (GTK_CLIST (clist), 1, 76);
745 gtk_clist_set_column_width (GTK_CLIST (clist), 2, 98);
746 gtk_clist_set_selection_mode (GTK_CLIST (clist), GTK_SELECTION_MULTIPLE);
747 gtk_clist_column_titles_show (GTK_CLIST (clist));
749 label_name = gtk_label_new (_("Name"));
750 gtk_widget_ref (label_name);
751 gtk_object_set_data_full (GTK_OBJECT (intf_playlist), "label_name", label_name,
752 (GtkDestroyNotify) gtk_widget_unref);
753 gtk_widget_show (label_name);
754 gtk_clist_set_column_widget (GTK_CLIST (clist), 0, label_name);
756 label_type = gtk_label_new (_("Type"));
757 gtk_widget_ref (label_type);
758 gtk_object_set_data_full (GTK_OBJECT (intf_playlist), "label_type", label_type,
759 (GtkDestroyNotify) gtk_widget_unref);
760 gtk_widget_show (label_type);
761 gtk_clist_set_column_widget (GTK_CLIST (clist), 1, label_type);
763 label_length = gtk_label_new (_("Length"));
764 gtk_widget_ref (label_length);
765 gtk_object_set_data_full (GTK_OBJECT (intf_playlist), "label_length", label_length,
766 (GtkDestroyNotify) gtk_widget_unref);
767 gtk_widget_show (label_length);
768 gtk_clist_set_column_widget (GTK_CLIST (clist), 2, label_length);
770 hbuttonbox = gtk_hbutton_box_new ();
771 gtk_widget_ref (hbuttonbox);
772 gtk_object_set_data_full (GTK_OBJECT (intf_playlist), "hbuttonbox", hbuttonbox,
773 (GtkDestroyNotify) gtk_widget_unref);
774 gtk_widget_show (hbuttonbox);
775 gtk_box_pack_start (GTK_BOX (vbox1), hbuttonbox, FALSE, FALSE, 0);
776 gtk_container_set_border_width (GTK_CONTAINER (hbuttonbox), 5);
778 playlist_load = gtk_button_new_with_label (_("Load"));
779 gtk_widget_ref (playlist_load);
780 gtk_object_set_data_full (GTK_OBJECT (intf_playlist), "playlist_load", playlist_load,
781 (GtkDestroyNotify) gtk_widget_unref);
782 gtk_widget_show (playlist_load);
783 gtk_container_add (GTK_CONTAINER (hbuttonbox), playlist_load);
784 GTK_WIDGET_SET_FLAGS (playlist_load, GTK_CAN_DEFAULT);
786 playlist_close = gnome_stock_button (GNOME_STOCK_BUTTON_CLOSE);
787 gtk_widget_ref (playlist_close);
788 gtk_object_set_data_full (GTK_OBJECT (intf_playlist), "playlist_close", playlist_close,
789 (GtkDestroyNotify) gtk_widget_unref);
790 gtk_widget_show (playlist_close);
791 gtk_container_add (GTK_CONTAINER (hbuttonbox), playlist_close);
792 GTK_WIDGET_SET_FLAGS (playlist_close, GTK_CAN_DEFAULT);
794 playlist_help = gnome_stock_button (GNOME_STOCK_BUTTON_HELP);
795 gtk_widget_ref (playlist_help);
796 gtk_object_set_data_full (GTK_OBJECT (intf_playlist), "playlist_help", playlist_help,
797 (GtkDestroyNotify) gtk_widget_unref);
798 gtk_widget_show (playlist_help);
799 gtk_container_add (GTK_CONTAINER (hbuttonbox), playlist_help);
800 GTK_WIDGET_SET_FLAGS (playlist_help, GTK_CAN_DEFAULT);
802 gtk_signal_connect (GTK_OBJECT (intf_playlist), "destroy",
803 GTK_SIGNAL_FUNC (on_intf_playlist_destroy),
805 gtk_signal_connect (GTK_OBJECT (playlist_close), "clicked",
806 GTK_SIGNAL_FUNC (on_playlist_close_clicked),
809 return intf_playlist;