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 menubar_file_menu_uiinfo[] =
22 GNOMEUIINFO_MENU_OPEN_ITEM (on_menubar_open_activate, NULL),
23 GNOMEUIINFO_SEPARATOR,
24 GNOMEUIINFO_MENU_EXIT_ITEM (on_menubar_exit_activate, NULL),
28 static GnomeUIInfo menubar_view_menu_uiinfo[] =
31 GNOME_APP_UI_ITEM, N_("_Playlist..."),
32 N_("Open the playlist window"),
33 (gpointer) on_menubar_playlist_activate, NULL, NULL,
34 GNOME_APP_PIXMAP_STOCK, GNOME_STOCK_MENU_INDEX,
35 0, (GdkModifierType) 0, NULL
38 GNOME_APP_UI_ITEM, N_("_Modules..."),
39 N_("Open the plugin manager"),
40 (gpointer) on_menubar_modules_activate, NULL, NULL,
41 GNOME_APP_PIXMAP_STOCK, GNOME_STOCK_MENU_ATTACH,
42 0, (GdkModifierType) 0, NULL
47 static GnomeUIInfo menubar_settings_menu_uiinfo[] =
50 GNOME_APP_UI_ITEM, N_("_Audio"),
51 N_("Select audio channel"),
52 (gpointer) on_menubar_audio_activate, NULL, NULL,
53 GNOME_APP_PIXMAP_NONE, NULL,
54 0, (GdkModifierType) 0, NULL
57 GNOME_APP_UI_ITEM, N_("_Subtitles"),
58 N_("Select subtitle unit"),
59 (gpointer) on_menubar_subtitles_activate, NULL, NULL,
60 GNOME_APP_PIXMAP_NONE, NULL,
61 0, (GdkModifierType) 0, NULL
63 GNOMEUIINFO_SEPARATOR,
64 GNOMEUIINFO_MENU_PREFERENCES_ITEM (on_menubar_preferences_activate, NULL),
68 static GnomeUIInfo menubar_help_menu_uiinfo[] =
70 GNOMEUIINFO_MENU_ABOUT_ITEM (on_menubar_about_activate, NULL),
74 static GnomeUIInfo menubar_uiinfo[] =
76 GNOMEUIINFO_MENU_FILE_TREE (menubar_file_menu_uiinfo),
77 GNOMEUIINFO_MENU_VIEW_TREE (menubar_view_menu_uiinfo),
78 GNOMEUIINFO_MENU_SETTINGS_TREE (menubar_settings_menu_uiinfo),
79 GNOMEUIINFO_MENU_HELP_TREE (menubar_help_menu_uiinfo),
84 create_intf_window (void)
86 GtkWidget *intf_window;
89 GtkWidget *tmp_toolbar_icon;
90 GtkWidget *toolbar_open;
91 GtkWidget *toolbar_back;
92 GtkWidget *toolbar_stop;
93 GtkWidget *toolbar_play;
94 GtkWidget *toolbar_pause;
95 GtkWidget *toolbar_slow;
96 GtkWidget *toolbar_fast;
97 GtkWidget *toolbar_playlist;
98 GtkWidget *toolbar_prev;
99 GtkWidget *toolbar_next;
107 intf_window = gnome_app_new ("VideoLAN Client", _("VideoLAN Client"));
108 gtk_object_set_data (GTK_OBJECT (intf_window), "intf_window", intf_window);
110 dockitem = GNOME_APP (intf_window)->dock;
111 gtk_widget_ref (dockitem);
112 gtk_object_set_data_full (GTK_OBJECT (intf_window), "dockitem", dockitem,
113 (GtkDestroyNotify) gtk_widget_unref);
114 gtk_widget_show (dockitem);
116 gnome_app_create_menus (GNOME_APP (intf_window), menubar_uiinfo);
118 gtk_widget_ref (menubar_uiinfo[0].widget);
119 gtk_object_set_data_full (GTK_OBJECT (intf_window), "menubar_file",
120 menubar_uiinfo[0].widget,
121 (GtkDestroyNotify) gtk_widget_unref);
123 gtk_widget_ref (menubar_file_menu_uiinfo[0].widget);
124 gtk_object_set_data_full (GTK_OBJECT (intf_window), "menubar_open",
125 menubar_file_menu_uiinfo[0].widget,
126 (GtkDestroyNotify) gtk_widget_unref);
128 gtk_widget_ref (menubar_file_menu_uiinfo[1].widget);
129 gtk_object_set_data_full (GTK_OBJECT (intf_window), "separator1",
130 menubar_file_menu_uiinfo[1].widget,
131 (GtkDestroyNotify) gtk_widget_unref);
133 gtk_widget_ref (menubar_file_menu_uiinfo[2].widget);
134 gtk_object_set_data_full (GTK_OBJECT (intf_window), "menubar_exit",
135 menubar_file_menu_uiinfo[2].widget,
136 (GtkDestroyNotify) gtk_widget_unref);
138 gtk_widget_ref (menubar_uiinfo[1].widget);
139 gtk_object_set_data_full (GTK_OBJECT (intf_window), "menubar_view",
140 menubar_uiinfo[1].widget,
141 (GtkDestroyNotify) gtk_widget_unref);
143 gtk_widget_ref (menubar_view_menu_uiinfo[0].widget);
144 gtk_object_set_data_full (GTK_OBJECT (intf_window), "menubar_playlist",
145 menubar_view_menu_uiinfo[0].widget,
146 (GtkDestroyNotify) gtk_widget_unref);
147 gtk_widget_set_sensitive (menubar_view_menu_uiinfo[0].widget, FALSE);
149 gtk_widget_ref (menubar_view_menu_uiinfo[1].widget);
150 gtk_object_set_data_full (GTK_OBJECT (intf_window), "menubar_modules",
151 menubar_view_menu_uiinfo[1].widget,
152 (GtkDestroyNotify) gtk_widget_unref);
153 gtk_widget_set_sensitive (menubar_view_menu_uiinfo[1].widget, FALSE);
155 gtk_widget_ref (menubar_uiinfo[2].widget);
156 gtk_object_set_data_full (GTK_OBJECT (intf_window), "menubar_settings",
157 menubar_uiinfo[2].widget,
158 (GtkDestroyNotify) gtk_widget_unref);
160 gtk_widget_ref (menubar_settings_menu_uiinfo[0].widget);
161 gtk_object_set_data_full (GTK_OBJECT (intf_window), "menubar_audio",
162 menubar_settings_menu_uiinfo[0].widget,
163 (GtkDestroyNotify) gtk_widget_unref);
165 gtk_widget_ref (menubar_settings_menu_uiinfo[1].widget);
166 gtk_object_set_data_full (GTK_OBJECT (intf_window), "menubar_subtitles",
167 menubar_settings_menu_uiinfo[1].widget,
168 (GtkDestroyNotify) gtk_widget_unref);
170 gtk_widget_ref (menubar_settings_menu_uiinfo[2].widget);
171 gtk_object_set_data_full (GTK_OBJECT (intf_window), "separator5",
172 menubar_settings_menu_uiinfo[2].widget,
173 (GtkDestroyNotify) gtk_widget_unref);
175 gtk_widget_ref (menubar_settings_menu_uiinfo[3].widget);
176 gtk_object_set_data_full (GTK_OBJECT (intf_window), "menubar_preferences",
177 menubar_settings_menu_uiinfo[3].widget,
178 (GtkDestroyNotify) gtk_widget_unref);
179 gtk_widget_set_sensitive (menubar_settings_menu_uiinfo[3].widget, FALSE);
181 gtk_widget_ref (menubar_uiinfo[3].widget);
182 gtk_object_set_data_full (GTK_OBJECT (intf_window), "menubar_help",
183 menubar_uiinfo[3].widget,
184 (GtkDestroyNotify) gtk_widget_unref);
186 gtk_widget_ref (menubar_help_menu_uiinfo[0].widget);
187 gtk_object_set_data_full (GTK_OBJECT (intf_window), "menubar_about",
188 menubar_help_menu_uiinfo[0].widget,
189 (GtkDestroyNotify) gtk_widget_unref);
191 toolbar = gtk_toolbar_new (GTK_ORIENTATION_HORIZONTAL, GTK_TOOLBAR_BOTH);
192 gtk_widget_ref (toolbar);
193 gtk_object_set_data_full (GTK_OBJECT (intf_window), "toolbar", toolbar,
194 (GtkDestroyNotify) gtk_widget_unref);
195 gtk_widget_show (toolbar);
196 gnome_app_add_toolbar (GNOME_APP (intf_window), GTK_TOOLBAR (toolbar), "toolbar",
197 GNOME_DOCK_ITEM_BEH_EXCLUSIVE,
198 GNOME_DOCK_TOP, 1, 0, 2);
199 gtk_container_set_border_width (GTK_CONTAINER (toolbar), 1);
200 gtk_toolbar_set_space_size (GTK_TOOLBAR (toolbar), 16);
201 gtk_toolbar_set_space_style (GTK_TOOLBAR (toolbar), GTK_TOOLBAR_SPACE_LINE);
202 gtk_toolbar_set_button_relief (GTK_TOOLBAR (toolbar), GTK_RELIEF_NONE);
204 tmp_toolbar_icon = gnome_stock_pixmap_widget (intf_window, GNOME_STOCK_PIXMAP_OPEN);
205 toolbar_open = gtk_toolbar_append_element (GTK_TOOLBAR (toolbar),
206 GTK_TOOLBAR_CHILD_BUTTON,
209 _("Open File"), NULL,
210 tmp_toolbar_icon, NULL, NULL);
211 gtk_widget_ref (toolbar_open);
212 gtk_object_set_data_full (GTK_OBJECT (intf_window), "toolbar_open", toolbar_open,
213 (GtkDestroyNotify) gtk_widget_unref);
214 gtk_widget_show (toolbar_open);
216 gtk_toolbar_append_space (GTK_TOOLBAR (toolbar));
218 tmp_toolbar_icon = gnome_stock_pixmap_widget (intf_window, GNOME_STOCK_PIXMAP_BACK);
219 toolbar_back = gtk_toolbar_append_element (GTK_TOOLBAR (toolbar),
220 GTK_TOOLBAR_CHILD_BUTTON,
223 _("Go Backwards"), NULL,
224 tmp_toolbar_icon, NULL, NULL);
225 gtk_widget_ref (toolbar_back);
226 gtk_object_set_data_full (GTK_OBJECT (intf_window), "toolbar_back", toolbar_back,
227 (GtkDestroyNotify) gtk_widget_unref);
228 gtk_widget_show (toolbar_back);
229 gtk_widget_set_sensitive (toolbar_back, FALSE);
231 tmp_toolbar_icon = gnome_stock_pixmap_widget (intf_window, GNOME_STOCK_PIXMAP_STOP);
232 toolbar_stop = gtk_toolbar_append_element (GTK_TOOLBAR (toolbar),
233 GTK_TOOLBAR_CHILD_BUTTON,
236 _("Stop Stream"), NULL,
237 tmp_toolbar_icon, NULL, NULL);
238 gtk_widget_ref (toolbar_stop);
239 gtk_object_set_data_full (GTK_OBJECT (intf_window), "toolbar_stop", toolbar_stop,
240 (GtkDestroyNotify) gtk_widget_unref);
241 gtk_widget_show (toolbar_stop);
242 gtk_widget_set_sensitive (toolbar_stop, FALSE);
244 tmp_toolbar_icon = gnome_stock_pixmap_widget (intf_window, GNOME_STOCK_PIXMAP_FORWARD);
245 toolbar_play = gtk_toolbar_append_element (GTK_TOOLBAR (toolbar),
246 GTK_TOOLBAR_CHILD_BUTTON,
249 _("Play Stream"), NULL,
250 tmp_toolbar_icon, NULL, NULL);
251 gtk_widget_ref (toolbar_play);
252 gtk_object_set_data_full (GTK_OBJECT (intf_window), "toolbar_play", toolbar_play,
253 (GtkDestroyNotify) gtk_widget_unref);
254 gtk_widget_show (toolbar_play);
256 tmp_toolbar_icon = gnome_stock_pixmap_widget (intf_window, GNOME_STOCK_PIXMAP_BOTTOM);
257 toolbar_pause = gtk_toolbar_append_element (GTK_TOOLBAR (toolbar),
258 GTK_TOOLBAR_CHILD_BUTTON,
261 _("Pause Stream"), NULL,
262 tmp_toolbar_icon, NULL, NULL);
263 gtk_widget_ref (toolbar_pause);
264 gtk_object_set_data_full (GTK_OBJECT (intf_window), "toolbar_pause", toolbar_pause,
265 (GtkDestroyNotify) gtk_widget_unref);
266 gtk_widget_show (toolbar_pause);
268 tmp_toolbar_icon = gnome_stock_pixmap_widget (intf_window, GNOME_STOCK_PIXMAP_TIMER_STOP);
269 toolbar_slow = gtk_toolbar_append_element (GTK_TOOLBAR (toolbar),
270 GTK_TOOLBAR_CHILD_BUTTON,
273 _("Play Slower"), NULL,
274 tmp_toolbar_icon, NULL, NULL);
275 gtk_widget_ref (toolbar_slow);
276 gtk_object_set_data_full (GTK_OBJECT (intf_window), "toolbar_slow", toolbar_slow,
277 (GtkDestroyNotify) gtk_widget_unref);
278 gtk_widget_show (toolbar_slow);
280 tmp_toolbar_icon = gnome_stock_pixmap_widget (intf_window, GNOME_STOCK_PIXMAP_TIMER);
281 toolbar_fast = gtk_toolbar_append_element (GTK_TOOLBAR (toolbar),
282 GTK_TOOLBAR_CHILD_BUTTON,
285 _("Play Faster"), NULL,
286 tmp_toolbar_icon, NULL, NULL);
287 gtk_widget_ref (toolbar_fast);
288 gtk_object_set_data_full (GTK_OBJECT (intf_window), "toolbar_fast", toolbar_fast,
289 (GtkDestroyNotify) gtk_widget_unref);
290 gtk_widget_show (toolbar_fast);
292 gtk_toolbar_append_space (GTK_TOOLBAR (toolbar));
294 tmp_toolbar_icon = gnome_stock_pixmap_widget (intf_window, GNOME_STOCK_PIXMAP_INDEX);
295 toolbar_playlist = gtk_toolbar_append_element (GTK_TOOLBAR (toolbar),
296 GTK_TOOLBAR_CHILD_BUTTON,
299 _("Open Playlist"), NULL,
300 tmp_toolbar_icon, NULL, NULL);
301 gtk_widget_ref (toolbar_playlist);
302 gtk_object_set_data_full (GTK_OBJECT (intf_window), "toolbar_playlist", toolbar_playlist,
303 (GtkDestroyNotify) gtk_widget_unref);
304 gtk_widget_show (toolbar_playlist);
305 gtk_widget_set_sensitive (toolbar_playlist, FALSE);
307 tmp_toolbar_icon = gnome_stock_pixmap_widget (intf_window, GNOME_STOCK_PIXMAP_FIRST);
308 toolbar_prev = gtk_toolbar_append_element (GTK_TOOLBAR (toolbar),
309 GTK_TOOLBAR_CHILD_BUTTON,
312 _("Previous File"), NULL,
313 tmp_toolbar_icon, NULL, NULL);
314 gtk_widget_ref (toolbar_prev);
315 gtk_object_set_data_full (GTK_OBJECT (intf_window), "toolbar_prev", toolbar_prev,
316 (GtkDestroyNotify) gtk_widget_unref);
317 gtk_widget_show (toolbar_prev);
319 tmp_toolbar_icon = gnome_stock_pixmap_widget (intf_window, GNOME_STOCK_PIXMAP_LAST);
320 toolbar_next = gtk_toolbar_append_element (GTK_TOOLBAR (toolbar),
321 GTK_TOOLBAR_CHILD_BUTTON,
324 _("Next File"), NULL,
325 tmp_toolbar_icon, NULL, NULL);
326 gtk_widget_ref (toolbar_next);
327 gtk_object_set_data_full (GTK_OBJECT (intf_window), "toolbar_next", toolbar_next,
328 (GtkDestroyNotify) gtk_widget_unref);
329 gtk_widget_show (toolbar_next);
331 vbox2 = gtk_vbox_new (FALSE, 0);
332 gtk_widget_ref (vbox2);
333 gtk_object_set_data_full (GTK_OBJECT (intf_window), "vbox2", vbox2,
334 (GtkDestroyNotify) gtk_widget_unref);
335 gtk_widget_show (vbox2);
336 gnome_app_set_contents (GNOME_APP (intf_window), vbox2);
338 entry1 = gtk_entry_new ();
339 gtk_widget_ref (entry1);
340 gtk_object_set_data_full (GTK_OBJECT (intf_window), "entry1", entry1,
341 (GtkDestroyNotify) gtk_widget_unref);
342 gtk_widget_show (entry1);
343 gtk_box_pack_start (GTK_BOX (vbox2), entry1, FALSE, FALSE, 0);
344 gtk_entry_set_text (GTK_ENTRY (entry1), _("Tired of boring stub messages ? Write your own exciting message here !!"));
346 label6 = gtk_label_new (_("This part of the interface doesn't work yet. You can drag the slider below, though:"));
347 gtk_widget_ref (label6);
348 gtk_object_set_data_full (GTK_OBJECT (intf_window), "label6", label6,
349 (GtkDestroyNotify) gtk_widget_unref);
350 gtk_widget_show (label6);
351 gtk_box_pack_start (GTK_BOX (vbox2), label6, FALSE, FALSE, 0);
352 gtk_label_set_justify (GTK_LABEL (label6), GTK_JUSTIFY_LEFT);
353 gtk_misc_set_alignment (GTK_MISC (label6), 0, 0.5);
354 gtk_misc_set_padding (GTK_MISC (label6), 5, 0);
356 hscale = gtk_hscale_new (GTK_ADJUSTMENT (gtk_adjustment_new (0, 0, 100, 1, 6.25, 0)));
357 gtk_widget_ref (hscale);
358 gtk_object_set_data_full (GTK_OBJECT (intf_window), "hscale", hscale,
359 (GtkDestroyNotify) gtk_widget_unref);
360 gtk_widget_show (hscale);
361 gtk_box_pack_start (GTK_BOX (vbox2), hscale, FALSE, FALSE, 0);
362 gtk_scale_set_value_pos (GTK_SCALE (hscale), GTK_POS_BOTTOM);
363 gtk_range_set_update_policy (GTK_RANGE (hscale), GTK_UPDATE_DELAYED);
365 label13 = gtk_label_new (_("HEY ! YOU CAN DROP A FILE ON VLC TOO :-)"));
366 gtk_widget_ref (label13);
367 gtk_object_set_data_full (GTK_OBJECT (intf_window), "label13", label13,
368 (GtkDestroyNotify) gtk_widget_unref);
369 gtk_widget_show (label13);
370 gtk_box_pack_start (GTK_BOX (vbox2), label13, FALSE, FALSE, 0);
371 gtk_misc_set_padding (GTK_MISC (label13), 0, 5);
373 appbar = gnome_appbar_new (TRUE, TRUE, GNOME_PREFERENCES_NEVER);
374 gtk_widget_ref (appbar);
375 gtk_object_set_data_full (GTK_OBJECT (intf_window), "appbar", appbar,
376 (GtkDestroyNotify) gtk_widget_unref);
377 gtk_widget_show (appbar);
378 gnome_app_set_statusbar (GNOME_APP (intf_window), appbar);
380 gtk_signal_connect (GTK_OBJECT (intf_window), "destroy",
381 GTK_SIGNAL_FUNC (on_intf_window_destroy),
383 gtk_signal_connect (GTK_OBJECT (intf_window), "drag_data_received",
384 GTK_SIGNAL_FUNC (on_intf_window_drag_data_received),
386 gnome_app_install_menu_hints (GNOME_APP (intf_window), menubar_uiinfo);
387 gtk_signal_connect (GTK_OBJECT (toolbar_open), "clicked",
388 GTK_SIGNAL_FUNC (on_toolbar_open_clicked),
390 gtk_signal_connect (GTK_OBJECT (toolbar_back), "clicked",
391 GTK_SIGNAL_FUNC (on_toolbar_back_clicked),
393 gtk_signal_connect (GTK_OBJECT (toolbar_stop), "clicked",
394 GTK_SIGNAL_FUNC (on_toolbar_stop_clicked),
396 gtk_signal_connect (GTK_OBJECT (toolbar_play), "clicked",
397 GTK_SIGNAL_FUNC (on_toolbar_play_clicked),
399 gtk_signal_connect (GTK_OBJECT (toolbar_pause), "clicked",
400 GTK_SIGNAL_FUNC (on_toolbar_pause_clicked),
402 gtk_signal_connect (GTK_OBJECT (toolbar_slow), "clicked",
403 GTK_SIGNAL_FUNC (on_toolbar_slow_clicked),
405 gtk_signal_connect (GTK_OBJECT (toolbar_fast), "clicked",
406 GTK_SIGNAL_FUNC (on_toolbar_fast_clicked),
408 gtk_signal_connect (GTK_OBJECT (toolbar_playlist), "clicked",
409 GTK_SIGNAL_FUNC (on_toolbar_playlist_clicked),
411 gtk_signal_connect (GTK_OBJECT (toolbar_prev), "clicked",
412 GTK_SIGNAL_FUNC (on_toolbar_prev_clicked),
414 gtk_signal_connect (GTK_OBJECT (toolbar_next), "clicked",
415 GTK_SIGNAL_FUNC (on_toolbar_next_clicked),
417 gtk_signal_connect (GTK_OBJECT (hscale), "button_release_event",
418 GTK_SIGNAL_FUNC (on_hscale_button_release_event),
420 gtk_signal_connect (GTK_OBJECT (hscale), "button_press_event",
421 GTK_SIGNAL_FUNC (on_hscale_button_press_event),
427 static GnomeUIInfo popup_title_menu_uiinfo[] =
430 GNOME_APP_UI_ITEM, N_("_Chapter"),
432 (gpointer) on_popup_chapter_activate, NULL, NULL,
433 GNOME_APP_PIXMAP_NONE, NULL,
434 0, (GdkModifierType) 0, NULL
439 static GnomeUIInfo intf_popup_uiinfo[] =
442 GNOME_APP_UI_ITEM, N_("_Play"),
444 (gpointer) on_popup_play_activate, NULL, NULL,
445 GNOME_APP_PIXMAP_STOCK, GNOME_STOCK_MENU_FORWARD,
446 0, (GdkModifierType) 0, NULL
449 GNOME_APP_UI_ITEM, N_("Pause"),
451 (gpointer) on_popup_pause_activate, NULL, NULL,
452 GNOME_APP_PIXMAP_STOCK, GNOME_STOCK_MENU_BOTTOM,
453 0, (GdkModifierType) 0, NULL
456 GNOME_APP_UI_ITEM, N_("Slow"),
458 (gpointer) on_popup_slow_activate, NULL, NULL,
459 GNOME_APP_PIXMAP_STOCK, GNOME_STOCK_MENU_TIMER_STOP,
460 0, (GdkModifierType) 0, NULL
463 GNOME_APP_UI_ITEM, N_("Fast"),
465 (gpointer) on_popup_fast_activate, NULL, NULL,
466 GNOME_APP_PIXMAP_STOCK, GNOME_STOCK_MENU_TIMER,
467 0, (GdkModifierType) 0, NULL
469 GNOMEUIINFO_SEPARATOR,
470 GNOMEUIINFO_MENU_OPEN_ITEM (on_popup_open_activate, NULL),
471 GNOMEUIINFO_SEPARATOR,
473 GNOME_APP_UI_SUBTREE, N_("_Title"),
475 popup_title_menu_uiinfo, NULL, NULL,
476 GNOME_APP_PIXMAP_NONE, NULL,
477 0, (GdkModifierType) 0, NULL
480 GNOME_APP_UI_ITEM, N_("Audio"),
481 N_("Select audio channel"),
482 (gpointer) on_popup_audio_activate, NULL, NULL,
483 GNOME_APP_PIXMAP_NONE, NULL,
484 0, (GdkModifierType) 0, NULL
487 GNOME_APP_UI_ITEM, N_("_Subtitle"),
489 (gpointer) on_popup_subtitle_activate, NULL, NULL,
490 GNOME_APP_PIXMAP_NONE, NULL,
491 0, (GdkModifierType) 0, NULL
493 GNOMEUIINFO_SEPARATOR,
494 GNOMEUIINFO_MENU_ABOUT_ITEM (on_popup_about_activate, NULL),
495 GNOMEUIINFO_MENU_EXIT_ITEM (on_popup_exit_activate, NULL),
500 create_intf_popup (void)
502 GtkWidget *intf_popup;
504 intf_popup = gtk_menu_new ();
505 gtk_object_set_data (GTK_OBJECT (intf_popup), "intf_popup", intf_popup);
506 gnome_app_fill_menu (GTK_MENU_SHELL (intf_popup), intf_popup_uiinfo,
509 gtk_widget_ref (intf_popup_uiinfo[0].widget);
510 gtk_object_set_data_full (GTK_OBJECT (intf_popup), "popup_play",
511 intf_popup_uiinfo[0].widget,
512 (GtkDestroyNotify) gtk_widget_unref);
514 gtk_widget_ref (intf_popup_uiinfo[1].widget);
515 gtk_object_set_data_full (GTK_OBJECT (intf_popup), "popup_pause",
516 intf_popup_uiinfo[1].widget,
517 (GtkDestroyNotify) gtk_widget_unref);
519 gtk_widget_ref (intf_popup_uiinfo[2].widget);
520 gtk_object_set_data_full (GTK_OBJECT (intf_popup), "popup_slow",
521 intf_popup_uiinfo[2].widget,
522 (GtkDestroyNotify) gtk_widget_unref);
524 gtk_widget_ref (intf_popup_uiinfo[3].widget);
525 gtk_object_set_data_full (GTK_OBJECT (intf_popup), "popup_fast",
526 intf_popup_uiinfo[3].widget,
527 (GtkDestroyNotify) gtk_widget_unref);
529 gtk_widget_ref (intf_popup_uiinfo[4].widget);
530 gtk_object_set_data_full (GTK_OBJECT (intf_popup), "separator2",
531 intf_popup_uiinfo[4].widget,
532 (GtkDestroyNotify) gtk_widget_unref);
534 gtk_widget_ref (intf_popup_uiinfo[5].widget);
535 gtk_object_set_data_full (GTK_OBJECT (intf_popup), "popup_open",
536 intf_popup_uiinfo[5].widget,
537 (GtkDestroyNotify) gtk_widget_unref);
539 gtk_widget_ref (intf_popup_uiinfo[6].widget);
540 gtk_object_set_data_full (GTK_OBJECT (intf_popup), "separator3",
541 intf_popup_uiinfo[6].widget,
542 (GtkDestroyNotify) gtk_widget_unref);
544 gtk_widget_ref (intf_popup_uiinfo[7].widget);
545 gtk_object_set_data_full (GTK_OBJECT (intf_popup), "popup_title",
546 intf_popup_uiinfo[7].widget,
547 (GtkDestroyNotify) gtk_widget_unref);
549 gtk_widget_ref (popup_title_menu_uiinfo[0].widget);
550 gtk_object_set_data_full (GTK_OBJECT (intf_popup), "popup_chapter",
551 popup_title_menu_uiinfo[0].widget,
552 (GtkDestroyNotify) gtk_widget_unref);
554 gtk_widget_ref (intf_popup_uiinfo[8].widget);
555 gtk_object_set_data_full (GTK_OBJECT (intf_popup), "popup_audio",
556 intf_popup_uiinfo[8].widget,
557 (GtkDestroyNotify) gtk_widget_unref);
559 gtk_widget_ref (intf_popup_uiinfo[9].widget);
560 gtk_object_set_data_full (GTK_OBJECT (intf_popup), "popup_subtitle",
561 intf_popup_uiinfo[9].widget,
562 (GtkDestroyNotify) gtk_widget_unref);
564 gtk_widget_ref (intf_popup_uiinfo[10].widget);
565 gtk_object_set_data_full (GTK_OBJECT (intf_popup), "separator4",
566 intf_popup_uiinfo[10].widget,
567 (GtkDestroyNotify) gtk_widget_unref);
569 gtk_widget_ref (intf_popup_uiinfo[11].widget);
570 gtk_object_set_data_full (GTK_OBJECT (intf_popup), "popup_about",
571 intf_popup_uiinfo[11].widget,
572 (GtkDestroyNotify) gtk_widget_unref);
574 gtk_widget_ref (intf_popup_uiinfo[12].widget);
575 gtk_object_set_data_full (GTK_OBJECT (intf_popup), "popup_exit",
576 intf_popup_uiinfo[12].widget,
577 (GtkDestroyNotify) gtk_widget_unref);
583 create_intf_about (void)
585 const gchar *authors[] = {
586 "Régis Duchesne <regis@via.ecp.fr>",
587 "Michel Lespinasse <walken@zoy.org>",
588 "Olivier Pomel <pomel@via.ecp.fr>",
589 "Pierre Baillet <oct@zoy.org>",
590 "Jean-Philippe Grimaldi <jeanphi@via.ecp.fr>",
591 "Andres Krapf <dae@via.ecp.fr>",
592 "Christophe Massiot <massiot@via.ecp.fr>",
593 "Vincent Seguin <seguin@via.ecp.fr>",
594 "Benoit Steiner <benny@via.ecp.fr>",
595 "Arnaud de Bossoreille de Ribou <bozo@via.ecp.fr>",
596 "Jean-Marc Dressler <polux@via.ecp.fr>",
597 "Gaël Hendryckx <jimmy@via.ecp.fr>",
598 "Samuel Hocevar <sam@zoy.org>",
599 "Brieuc Jeunhomme <bbp@via.ecp.fr>",
600 "Michel Kaempf <maxx@via.ecp.fr>",
601 "Stéphane Borel <stef@via.ecp.fr>",
602 "Renaud Dartus <reno@via.ecp.fr>",
603 "Henri Fallon <henri@via.ecp.fr>",
606 GtkWidget *intf_about;
608 intf_about = gnome_about_new ("VideoLAN Client", VERSION,
609 _("(C) 1996, 1997, 1998, 1999, 2000, 2001 - the VideoLAN Team"),
611 _("This is the VideoLAN client, a DVD and MPEG player. It can play MPEG and MPEG 2 files from a file or from a network source."),
613 gtk_object_set_data (GTK_OBJECT (intf_about), "intf_about", intf_about);
619 create_intf_fileopen (void)
621 GtkWidget *intf_fileopen;
622 GtkWidget *fileopen_ok;
623 GtkWidget *fileopen_cancel;
625 intf_fileopen = gtk_file_selection_new (_("Open File"));
626 gtk_object_set_data (GTK_OBJECT (intf_fileopen), "intf_fileopen", intf_fileopen);
627 gtk_container_set_border_width (GTK_CONTAINER (intf_fileopen), 10);
629 fileopen_ok = GTK_FILE_SELECTION (intf_fileopen)->ok_button;
630 gtk_object_set_data (GTK_OBJECT (intf_fileopen), "fileopen_ok", fileopen_ok);
631 gtk_widget_show (fileopen_ok);
632 GTK_WIDGET_SET_FLAGS (fileopen_ok, GTK_CAN_DEFAULT);
634 fileopen_cancel = GTK_FILE_SELECTION (intf_fileopen)->cancel_button;
635 gtk_object_set_data (GTK_OBJECT (intf_fileopen), "fileopen_cancel", fileopen_cancel);
636 gtk_widget_show (fileopen_cancel);
637 GTK_WIDGET_SET_FLAGS (fileopen_cancel, GTK_CAN_DEFAULT);
639 gtk_signal_connect (GTK_OBJECT (intf_fileopen), "destroy",
640 GTK_SIGNAL_FUNC (on_intf_fileopen_destroy),
642 gtk_signal_connect (GTK_OBJECT (fileopen_ok), "clicked",
643 GTK_SIGNAL_FUNC (on_fileopen_ok_clicked),
645 gtk_signal_connect (GTK_OBJECT (fileopen_cancel), "clicked",
646 GTK_SIGNAL_FUNC (on_fileopen_cancel_clicked),
649 return intf_fileopen;
653 create_intf_modules (void)
655 GtkWidget *intf_modules;
656 GtkWidget *dialog_vbox1;
658 GtkWidget *dialog_action_area1;
659 GtkWidget *modules_ok;
660 GtkWidget *modules_apply;
661 GtkWidget *modules_cancel;
663 intf_modules = gnome_dialog_new (_("Modules"), NULL);
664 gtk_object_set_data (GTK_OBJECT (intf_modules), "intf_modules", intf_modules);
665 gtk_window_set_policy (GTK_WINDOW (intf_modules), FALSE, FALSE, FALSE);
667 dialog_vbox1 = GNOME_DIALOG (intf_modules)->vbox;
668 gtk_object_set_data (GTK_OBJECT (intf_modules), "dialog_vbox1", dialog_vbox1);
669 gtk_widget_show (dialog_vbox1);
671 label12 = gtk_label_new (_("Sorry, the module manager isn't functional yet. Please retry in a later version."));
672 gtk_widget_ref (label12);
673 gtk_object_set_data_full (GTK_OBJECT (intf_modules), "label12", label12,
674 (GtkDestroyNotify) gtk_widget_unref);
675 gtk_widget_show (label12);
676 gtk_box_pack_start (GTK_BOX (dialog_vbox1), label12, FALSE, FALSE, 0);
678 dialog_action_area1 = GNOME_DIALOG (intf_modules)->action_area;
679 gtk_object_set_data (GTK_OBJECT (intf_modules), "dialog_action_area1", dialog_action_area1);
680 gtk_widget_show (dialog_action_area1);
681 gtk_button_box_set_layout (GTK_BUTTON_BOX (dialog_action_area1), GTK_BUTTONBOX_END);
682 gtk_button_box_set_spacing (GTK_BUTTON_BOX (dialog_action_area1), 8);
684 gnome_dialog_append_button (GNOME_DIALOG (intf_modules), GNOME_STOCK_BUTTON_OK);
685 modules_ok = GTK_WIDGET (g_list_last (GNOME_DIALOG (intf_modules)->buttons)->data);
686 gtk_widget_ref (modules_ok);
687 gtk_object_set_data_full (GTK_OBJECT (intf_modules), "modules_ok", modules_ok,
688 (GtkDestroyNotify) gtk_widget_unref);
689 gtk_widget_show (modules_ok);
690 GTK_WIDGET_SET_FLAGS (modules_ok, GTK_CAN_DEFAULT);
692 gnome_dialog_append_button (GNOME_DIALOG (intf_modules), GNOME_STOCK_BUTTON_APPLY);
693 modules_apply = GTK_WIDGET (g_list_last (GNOME_DIALOG (intf_modules)->buttons)->data);
694 gtk_widget_ref (modules_apply);
695 gtk_object_set_data_full (GTK_OBJECT (intf_modules), "modules_apply", modules_apply,
696 (GtkDestroyNotify) gtk_widget_unref);
697 gtk_widget_show (modules_apply);
698 GTK_WIDGET_SET_FLAGS (modules_apply, GTK_CAN_DEFAULT);
700 gnome_dialog_append_button (GNOME_DIALOG (intf_modules), GNOME_STOCK_BUTTON_CANCEL);
701 modules_cancel = GTK_WIDGET (g_list_last (GNOME_DIALOG (intf_modules)->buttons)->data);
702 gtk_widget_ref (modules_cancel);
703 gtk_object_set_data_full (GTK_OBJECT (intf_modules), "modules_cancel", modules_cancel,
704 (GtkDestroyNotify) gtk_widget_unref);
705 gtk_widget_show (modules_cancel);
706 GTK_WIDGET_SET_FLAGS (modules_cancel, GTK_CAN_DEFAULT);
708 gtk_signal_connect (GTK_OBJECT (intf_modules), "destroy",
709 GTK_SIGNAL_FUNC (on_intf_modules_destroy),
711 gtk_signal_connect (GTK_OBJECT (modules_ok), "clicked",
712 GTK_SIGNAL_FUNC (on_modules_ok_clicked),
714 gtk_signal_connect (GTK_OBJECT (modules_apply), "clicked",
715 GTK_SIGNAL_FUNC (on_modules_apply_clicked),
717 gtk_signal_connect (GTK_OBJECT (modules_cancel), "clicked",
718 GTK_SIGNAL_FUNC (on_modules_cancel_clicked),
725 create_intf_playlist (void)
727 GtkWidget *intf_playlist;
728 GtkWidget *dialog_vbox2;
730 GtkWidget *scrolledwindow3;
735 GtkWidget *dialog_action_area2;
736 GtkWidget *playlist_ok;
738 intf_playlist = gnome_dialog_new (_("Playlist"), NULL);
739 gtk_object_set_data (GTK_OBJECT (intf_playlist), "intf_playlist", intf_playlist);
741 dialog_vbox2 = GNOME_DIALOG (intf_playlist)->vbox;
742 gtk_object_set_data (GTK_OBJECT (intf_playlist), "dialog_vbox2", dialog_vbox2);
743 gtk_widget_show (dialog_vbox2);
745 label11 = gtk_label_new (_("Sorry, the playlist isn't functional yet. Please retry in a later version."));
746 gtk_widget_ref (label11);
747 gtk_object_set_data_full (GTK_OBJECT (intf_playlist), "label11", label11,
748 (GtkDestroyNotify) gtk_widget_unref);
749 gtk_widget_show (label11);
750 gtk_box_pack_start (GTK_BOX (dialog_vbox2), label11, FALSE, FALSE, 0);
752 scrolledwindow3 = gtk_scrolled_window_new (NULL, NULL);
753 gtk_widget_ref (scrolledwindow3);
754 gtk_object_set_data_full (GTK_OBJECT (intf_playlist), "scrolledwindow3", scrolledwindow3,
755 (GtkDestroyNotify) gtk_widget_unref);
756 gtk_widget_show (scrolledwindow3);
757 gtk_box_pack_start (GTK_BOX (dialog_vbox2), scrolledwindow3, TRUE, TRUE, 0);
759 clist2 = gtk_clist_new (3);
760 gtk_widget_ref (clist2);
761 gtk_object_set_data_full (GTK_OBJECT (intf_playlist), "clist2", clist2,
762 (GtkDestroyNotify) gtk_widget_unref);
763 gtk_widget_show (clist2);
764 gtk_container_add (GTK_CONTAINER (scrolledwindow3), clist2);
765 gtk_clist_set_column_width (GTK_CLIST (clist2), 0, 211);
766 gtk_clist_set_column_width (GTK_CLIST (clist2), 1, 49);
767 gtk_clist_set_column_width (GTK_CLIST (clist2), 2, 35);
768 gtk_clist_column_titles_hide (GTK_CLIST (clist2));
770 label8 = gtk_label_new (_("Name"));
771 gtk_widget_ref (label8);
772 gtk_object_set_data_full (GTK_OBJECT (intf_playlist), "label8", label8,
773 (GtkDestroyNotify) gtk_widget_unref);
774 gtk_widget_show (label8);
775 gtk_clist_set_column_widget (GTK_CLIST (clist2), 0, label8);
777 label9 = gtk_label_new (_("Type"));
778 gtk_widget_ref (label9);
779 gtk_object_set_data_full (GTK_OBJECT (intf_playlist), "label9", label9,
780 (GtkDestroyNotify) gtk_widget_unref);
781 gtk_widget_show (label9);
782 gtk_clist_set_column_widget (GTK_CLIST (clist2), 1, label9);
784 label10 = gtk_label_new (_("Length"));
785 gtk_widget_ref (label10);
786 gtk_object_set_data_full (GTK_OBJECT (intf_playlist), "label10", label10,
787 (GtkDestroyNotify) gtk_widget_unref);
788 gtk_widget_show (label10);
789 gtk_clist_set_column_widget (GTK_CLIST (clist2), 2, label10);
791 dialog_action_area2 = GNOME_DIALOG (intf_playlist)->action_area;
792 gtk_object_set_data (GTK_OBJECT (intf_playlist), "dialog_action_area2", dialog_action_area2);
793 gtk_widget_show (dialog_action_area2);
794 gtk_button_box_set_layout (GTK_BUTTON_BOX (dialog_action_area2), GTK_BUTTONBOX_END);
795 gtk_button_box_set_spacing (GTK_BUTTON_BOX (dialog_action_area2), 8);
797 gnome_dialog_append_button (GNOME_DIALOG (intf_playlist), GNOME_STOCK_BUTTON_OK);
798 playlist_ok = GTK_WIDGET (g_list_last (GNOME_DIALOG (intf_playlist)->buttons)->data);
799 gtk_widget_ref (playlist_ok);
800 gtk_object_set_data_full (GTK_OBJECT (intf_playlist), "playlist_ok", playlist_ok,
801 (GtkDestroyNotify) gtk_widget_unref);
802 gtk_widget_show (playlist_ok);
803 GTK_WIDGET_SET_FLAGS (playlist_ok, GTK_CAN_DEFAULT);
805 gtk_signal_connect (GTK_OBJECT (intf_playlist), "destroy",
806 GTK_SIGNAL_FUNC (on_intf_playlist_destroy),
808 gtk_signal_connect (GTK_OBJECT (playlist_ok), "clicked",
809 GTK_SIGNAL_FUNC (on_playlist_ok_clicked),
812 return intf_playlist;