]> git.sesse.net Git - vlc/blob - plugins/gtk/gtk_interface.c
Added a menu in the GTK and gnome interfaces to change the current program
[vlc] / plugins / gtk / gtk_interface.c
1 /* This file was created automatically by glade and fixed by fixfiles.sh */
2
3 #include <videolan/vlc.h>
4
5 #include <sys/types.h>
6 #include <sys/stat.h>
7 #include <unistd.h>
8 #include <string.h>
9
10 #include <gdk/gdkkeysyms.h>
11 #include <gtk/gtk.h>
12
13 #include "gtk_callbacks.h"
14 #include "gtk_interface.h"
15 #include "gtk_support.h"
16
17 GtkWidget*
18 create_intf_window (void)
19 {
20   GtkWidget *intf_window;
21   GtkWidget *window_vbox;
22   GtkWidget *menubar_handlebox;
23   GtkWidget *menubar;
24   guint tmp_key;
25   GtkWidget *menubar_file;
26   GtkWidget *menubar_file_menu;
27   GtkAccelGroup *menubar_file_menu_accels;
28   GtkWidget *menubar_open;
29   GtkWidget *menubar_disc;
30   GtkWidget *menubar_network;
31   GtkWidget *separator4;
32   GtkWidget *menubar_eject;
33   GtkWidget *separator14;
34   GtkWidget *menubar_exit;
35   GtkWidget *menubar_view;
36   GtkWidget *menubar_view_menu;
37   GtkAccelGroup *menubar_view_menu_accels;
38   GtkWidget *menubar_interface_hide;
39   GtkWidget *menubar_fullscreen;
40   GtkWidget *separator13;
41   GtkWidget *menubar_program;
42   GtkWidget *menubar_title;
43   GtkWidget *menubar_chapter;
44   GtkWidget *menubar_angle;
45   GtkWidget *separator11;
46   GtkWidget *menubar_playlist;
47   GtkWidget *menubar_modules;
48   GtkWidget *menubar_messages;
49   GtkWidget *menubar_settings;
50   GtkWidget *menubar_settings_menu;
51   GtkAccelGroup *menubar_settings_menu_accels;
52   GtkWidget *menubar_audio;
53   GtkWidget *menubar_subpictures;
54   GtkWidget *separator8;
55   GtkWidget *menubar_preferences;
56   GtkWidget *menubar_help;
57   GtkWidget *menubar_help_menu;
58   GtkAccelGroup *menubar_help_menu_accels;
59   GtkWidget *menubar_about;
60   GtkWidget *toolbar_handlebox;
61   GtkWidget *toolbar;
62   GtkWidget *toolbar_open;
63   GtkWidget *toolbar_disc;
64   GtkWidget *toolbar_network;
65   GtkWidget *toolbar_back;
66   GtkWidget *toolbar_stop;
67   GtkWidget *toolbar_eject;
68   GtkWidget *toolbar_play;
69   GtkWidget *toolbar_pause;
70   GtkWidget *toolbar_slow;
71   GtkWidget *toolbar_fast;
72   GtkWidget *toolbar_playlist;
73   GtkWidget *toolbar_prev;
74   GtkWidget *toolbar_next;
75   GtkWidget *slider_frame;
76   GtkWidget *slider;
77   GtkWidget *file_box;
78   GtkWidget *label_status;
79   GtkWidget *dvd_box;
80   GtkWidget *dvd_label;
81   GtkWidget *title_box;
82   GtkWidget *title;
83   GtkWidget *title_label;
84   GtkWidget *title_prev_button;
85   GtkWidget *title_next_button;
86   GtkWidget *dvd_separator;
87   GtkWidget *chapter_box;
88   GtkWidget *chapter;
89   GtkWidget *chapter_label;
90   GtkWidget *chapter_prev_button;
91   GtkWidget *chapter_next_button;
92   GtkWidget *network_box;
93   GtkWidget *network_address_label;
94   GtkWidget *network_channel_box;
95   GtkWidget *channel_label;
96   GtkObject *network_channel_spinbutton_adj;
97   GtkWidget *network_channel_spinbutton;
98   GtkWidget *network_channel_go_button;
99   GtkWidget *intf_statusbar;
100   GtkAccelGroup *accel_group;
101   GtkTooltips *tooltips;
102
103   tooltips = gtk_tooltips_new ();
104
105   accel_group = gtk_accel_group_new ();
106
107   intf_window = gtk_window_new (GTK_WINDOW_TOPLEVEL);
108   gtk_object_set_data (GTK_OBJECT (intf_window), "intf_window", intf_window);
109   gtk_window_set_title (GTK_WINDOW (intf_window), _("VideoLAN Client"));
110   gtk_window_set_policy (GTK_WINDOW (intf_window), TRUE, TRUE, TRUE);
111
112   window_vbox = gtk_vbox_new (FALSE, 0);
113   gtk_widget_ref (window_vbox);
114   gtk_object_set_data_full (GTK_OBJECT (intf_window), "window_vbox", window_vbox,
115                             (GtkDestroyNotify) gtk_widget_unref);
116   gtk_widget_show (window_vbox);
117   gtk_container_add (GTK_CONTAINER (intf_window), window_vbox);
118
119   menubar_handlebox = gtk_handle_box_new ();
120   gtk_widget_ref (menubar_handlebox);
121   gtk_object_set_data_full (GTK_OBJECT (intf_window), "menubar_handlebox", menubar_handlebox,
122                             (GtkDestroyNotify) gtk_widget_unref);
123   gtk_widget_show (menubar_handlebox);
124   gtk_box_pack_start (GTK_BOX (window_vbox), menubar_handlebox, FALSE, TRUE, 0);
125
126   menubar = gtk_menu_bar_new ();
127   gtk_widget_ref (menubar);
128   gtk_object_set_data_full (GTK_OBJECT (intf_window), "menubar", menubar,
129                             (GtkDestroyNotify) gtk_widget_unref);
130   gtk_widget_show (menubar);
131   gtk_container_add (GTK_CONTAINER (menubar_handlebox), menubar);
132
133   menubar_file = gtk_menu_item_new_with_label ("");
134   tmp_key = gtk_label_parse_uline (GTK_LABEL (GTK_BIN (menubar_file)->child),
135                                    _("_File"));
136   gtk_widget_add_accelerator (menubar_file, "activate_item", accel_group,
137                               tmp_key, GDK_MOD1_MASK, (GtkAccelFlags) 0);
138   gtk_widget_ref (menubar_file);
139   gtk_object_set_data_full (GTK_OBJECT (intf_window), "menubar_file", menubar_file,
140                             (GtkDestroyNotify) gtk_widget_unref);
141   gtk_widget_show (menubar_file);
142   gtk_container_add (GTK_CONTAINER (menubar), menubar_file);
143
144   menubar_file_menu = gtk_menu_new ();
145   gtk_widget_ref (menubar_file_menu);
146   gtk_object_set_data_full (GTK_OBJECT (intf_window), "menubar_file_menu", menubar_file_menu,
147                             (GtkDestroyNotify) gtk_widget_unref);
148   gtk_menu_item_set_submenu (GTK_MENU_ITEM (menubar_file), menubar_file_menu);
149   menubar_file_menu_accels = gtk_menu_ensure_uline_accel_group (GTK_MENU (menubar_file_menu));
150
151   menubar_open = gtk_menu_item_new_with_label ("");
152   tmp_key = gtk_label_parse_uline (GTK_LABEL (GTK_BIN (menubar_open)->child),
153                                    _("_Open File..."));
154   gtk_widget_add_accelerator (menubar_open, "activate_item", menubar_file_menu_accels,
155                               tmp_key, 0, 0);
156   gtk_widget_ref (menubar_open);
157   gtk_object_set_data_full (GTK_OBJECT (intf_window), "menubar_open", menubar_open,
158                             (GtkDestroyNotify) gtk_widget_unref);
159   gtk_widget_show (menubar_open);
160   gtk_container_add (GTK_CONTAINER (menubar_file_menu), menubar_open);
161   gtk_tooltips_set_tip (tooltips, menubar_open, _("Open a File"), NULL);
162   gtk_widget_add_accelerator (menubar_open, "activate", accel_group,
163                               GDK_F3, 0,
164                               GTK_ACCEL_VISIBLE);
165
166   menubar_disc = gtk_menu_item_new_with_label ("");
167   tmp_key = gtk_label_parse_uline (GTK_LABEL (GTK_BIN (menubar_disc)->child),
168                                    _("Open _Disc..."));
169   gtk_widget_add_accelerator (menubar_disc, "activate_item", menubar_file_menu_accels,
170                               tmp_key, 0, 0);
171   gtk_widget_ref (menubar_disc);
172   gtk_object_set_data_full (GTK_OBJECT (intf_window), "menubar_disc", menubar_disc,
173                             (GtkDestroyNotify) gtk_widget_unref);
174   gtk_widget_show (menubar_disc);
175   gtk_container_add (GTK_CONTAINER (menubar_file_menu), menubar_disc);
176   gtk_tooltips_set_tip (tooltips, menubar_disc, _("Open a DVD or VCD"), NULL);
177   gtk_widget_add_accelerator (menubar_disc, "activate", accel_group,
178                               GDK_F4, 0,
179                               GTK_ACCEL_VISIBLE);
180
181   menubar_network = gtk_menu_item_new_with_label ("");
182   tmp_key = gtk_label_parse_uline (GTK_LABEL (GTK_BIN (menubar_network)->child),
183                                    _("_Network Stream..."));
184   gtk_widget_add_accelerator (menubar_network, "activate_item", menubar_file_menu_accels,
185                               tmp_key, 0, 0);
186   gtk_widget_ref (menubar_network);
187   gtk_object_set_data_full (GTK_OBJECT (intf_window), "menubar_network", menubar_network,
188                             (GtkDestroyNotify) gtk_widget_unref);
189   gtk_widget_show (menubar_network);
190   gtk_container_add (GTK_CONTAINER (menubar_file_menu), menubar_network);
191   gtk_tooltips_set_tip (tooltips, menubar_network, _("Select a Network Stream"), NULL);
192   gtk_widget_add_accelerator (menubar_network, "activate", accel_group,
193                               GDK_F5, 0,
194                               GTK_ACCEL_VISIBLE);
195
196   separator4 = gtk_menu_item_new ();
197   gtk_widget_ref (separator4);
198   gtk_object_set_data_full (GTK_OBJECT (intf_window), "separator4", separator4,
199                             (GtkDestroyNotify) gtk_widget_unref);
200   gtk_widget_show (separator4);
201   gtk_container_add (GTK_CONTAINER (menubar_file_menu), separator4);
202   gtk_widget_set_sensitive (separator4, FALSE);
203
204   menubar_eject = gtk_menu_item_new_with_label ("");
205   tmp_key = gtk_label_parse_uline (GTK_LABEL (GTK_BIN (menubar_eject)->child),
206                                    _("_Eject Disc"));
207   gtk_widget_add_accelerator (menubar_eject, "activate_item", menubar_file_menu_accels,
208                               tmp_key, 0, 0);
209   gtk_widget_ref (menubar_eject);
210   gtk_object_set_data_full (GTK_OBJECT (intf_window), "menubar_eject", menubar_eject,
211                             (GtkDestroyNotify) gtk_widget_unref);
212   gtk_widget_show (menubar_eject);
213   gtk_container_add (GTK_CONTAINER (menubar_file_menu), menubar_eject);
214   gtk_tooltips_set_tip (tooltips, menubar_eject, _("Eject disc"), NULL);
215
216   separator14 = gtk_menu_item_new ();
217   gtk_widget_ref (separator14);
218   gtk_object_set_data_full (GTK_OBJECT (intf_window), "separator14", separator14,
219                             (GtkDestroyNotify) gtk_widget_unref);
220   gtk_widget_show (separator14);
221   gtk_container_add (GTK_CONTAINER (menubar_file_menu), separator14);
222   gtk_widget_set_sensitive (separator14, FALSE);
223
224   menubar_exit = gtk_menu_item_new_with_label ("");
225   tmp_key = gtk_label_parse_uline (GTK_LABEL (GTK_BIN (menubar_exit)->child),
226                                    _("E_xit"));
227   gtk_widget_add_accelerator (menubar_exit, "activate_item", menubar_file_menu_accels,
228                               tmp_key, 0, 0);
229   gtk_widget_ref (menubar_exit);
230   gtk_object_set_data_full (GTK_OBJECT (intf_window), "menubar_exit", menubar_exit,
231                             (GtkDestroyNotify) gtk_widget_unref);
232   gtk_widget_show (menubar_exit);
233   gtk_container_add (GTK_CONTAINER (menubar_file_menu), menubar_exit);
234   gtk_tooltips_set_tip (tooltips, menubar_exit, _("Exit the program"), NULL);
235   gtk_widget_add_accelerator (menubar_exit, "activate", accel_group,
236                               GDK_Q, GDK_CONTROL_MASK,
237                               GTK_ACCEL_VISIBLE);
238
239   menubar_view = gtk_menu_item_new_with_label ("");
240   tmp_key = gtk_label_parse_uline (GTK_LABEL (GTK_BIN (menubar_view)->child),
241                                    _("_View"));
242   gtk_widget_add_accelerator (menubar_view, "activate_item", accel_group,
243                               tmp_key, GDK_MOD1_MASK, (GtkAccelFlags) 0);
244   gtk_widget_ref (menubar_view);
245   gtk_object_set_data_full (GTK_OBJECT (intf_window), "menubar_view", menubar_view,
246                             (GtkDestroyNotify) gtk_widget_unref);
247   gtk_widget_show (menubar_view);
248   gtk_container_add (GTK_CONTAINER (menubar), menubar_view);
249
250   menubar_view_menu = gtk_menu_new ();
251   gtk_widget_ref (menubar_view_menu);
252   gtk_object_set_data_full (GTK_OBJECT (intf_window), "menubar_view_menu", menubar_view_menu,
253                             (GtkDestroyNotify) gtk_widget_unref);
254   gtk_menu_item_set_submenu (GTK_MENU_ITEM (menubar_view), menubar_view_menu);
255   menubar_view_menu_accels = gtk_menu_ensure_uline_accel_group (GTK_MENU (menubar_view_menu));
256
257   menubar_interface_hide = gtk_menu_item_new_with_label ("");
258   tmp_key = gtk_label_parse_uline (GTK_LABEL (GTK_BIN (menubar_interface_hide)->child),
259                                    _("_Hide interface"));
260   gtk_widget_add_accelerator (menubar_interface_hide, "activate_item", menubar_view_menu_accels,
261                               tmp_key, 0, 0);
262   gtk_widget_ref (menubar_interface_hide);
263   gtk_object_set_data_full (GTK_OBJECT (intf_window), "menubar_interface_hide", menubar_interface_hide,
264                             (GtkDestroyNotify) gtk_widget_unref);
265   gtk_widget_show (menubar_interface_hide);
266   gtk_container_add (GTK_CONTAINER (menubar_view_menu), menubar_interface_hide);
267   gtk_tooltips_set_tip (tooltips, menubar_interface_hide, _("Hide the main interface window"), NULL);
268
269   menubar_fullscreen = gtk_menu_item_new_with_label ("");
270   tmp_key = gtk_label_parse_uline (GTK_LABEL (GTK_BIN (menubar_fullscreen)->child),
271                                    _("_Fullscreen"));
272   gtk_widget_add_accelerator (menubar_fullscreen, "activate_item", menubar_view_menu_accels,
273                               tmp_key, 0, 0);
274   gtk_widget_ref (menubar_fullscreen);
275   gtk_object_set_data_full (GTK_OBJECT (intf_window), "menubar_fullscreen", menubar_fullscreen,
276                             (GtkDestroyNotify) gtk_widget_unref);
277   gtk_widget_show (menubar_fullscreen);
278   gtk_container_add (GTK_CONTAINER (menubar_view_menu), menubar_fullscreen);
279
280   separator13 = gtk_menu_item_new ();
281   gtk_widget_ref (separator13);
282   gtk_object_set_data_full (GTK_OBJECT (intf_window), "separator13", separator13,
283                             (GtkDestroyNotify) gtk_widget_unref);
284   gtk_widget_show (separator13);
285   gtk_container_add (GTK_CONTAINER (menubar_view_menu), separator13);
286   gtk_widget_set_sensitive (separator13, FALSE);
287
288   menubar_program = gtk_menu_item_new_with_label ("");
289   tmp_key = gtk_label_parse_uline (GTK_LABEL (GTK_BIN (menubar_program)->child),
290                                    _("Progr_am"));
291   gtk_widget_add_accelerator (menubar_program, "activate_item", menubar_view_menu_accels,
292                               tmp_key, 0, 0);
293   gtk_widget_ref (menubar_program);
294   gtk_object_set_data_full (GTK_OBJECT (intf_window), "menubar_program", menubar_program,
295                             (GtkDestroyNotify) gtk_widget_unref);
296   gtk_widget_show (menubar_program);
297   gtk_container_add (GTK_CONTAINER (menubar_view_menu), menubar_program);
298   gtk_widget_set_sensitive (menubar_program, FALSE);
299   gtk_tooltips_set_tip (tooltips, menubar_program, _("Choose the program"), NULL);
300
301   menubar_title = gtk_menu_item_new_with_label ("");
302   tmp_key = gtk_label_parse_uline (GTK_LABEL (GTK_BIN (menubar_title)->child),
303                                    _("_Title"));
304   gtk_widget_add_accelerator (menubar_title, "activate_item", menubar_view_menu_accels,
305                               tmp_key, 0, 0);
306   gtk_widget_ref (menubar_title);
307   gtk_object_set_data_full (GTK_OBJECT (intf_window), "menubar_title", menubar_title,
308                             (GtkDestroyNotify) gtk_widget_unref);
309   gtk_widget_show (menubar_title);
310   gtk_container_add (GTK_CONTAINER (menubar_view_menu), menubar_title);
311   gtk_widget_set_sensitive (menubar_title, FALSE);
312   gtk_tooltips_set_tip (tooltips, menubar_title, _("Navigate through the stream"), NULL);
313
314   menubar_chapter = gtk_menu_item_new_with_label ("");
315   tmp_key = gtk_label_parse_uline (GTK_LABEL (GTK_BIN (menubar_chapter)->child),
316                                    _("_Chapter"));
317   gtk_widget_add_accelerator (menubar_chapter, "activate_item", menubar_view_menu_accels,
318                               tmp_key, 0, 0);
319   gtk_widget_ref (menubar_chapter);
320   gtk_object_set_data_full (GTK_OBJECT (intf_window), "menubar_chapter", menubar_chapter,
321                             (GtkDestroyNotify) gtk_widget_unref);
322   gtk_widget_show (menubar_chapter);
323   gtk_container_add (GTK_CONTAINER (menubar_view_menu), menubar_chapter);
324   gtk_widget_set_sensitive (menubar_chapter, FALSE);
325
326   menubar_angle = gtk_menu_item_new_with_label ("");
327   tmp_key = gtk_label_parse_uline (GTK_LABEL (GTK_BIN (menubar_angle)->child),
328                                    _("An_gle"));
329   gtk_widget_add_accelerator (menubar_angle, "activate_item", menubar_view_menu_accels,
330                               tmp_key, 0, 0);
331   gtk_widget_ref (menubar_angle);
332   gtk_object_set_data_full (GTK_OBJECT (intf_window), "menubar_angle", menubar_angle,
333                             (GtkDestroyNotify) gtk_widget_unref);
334   gtk_widget_show (menubar_angle);
335   gtk_container_add (GTK_CONTAINER (menubar_view_menu), menubar_angle);
336   gtk_widget_set_sensitive (menubar_angle, FALSE);
337
338   separator11 = gtk_menu_item_new ();
339   gtk_widget_ref (separator11);
340   gtk_object_set_data_full (GTK_OBJECT (intf_window), "separator11", separator11,
341                             (GtkDestroyNotify) gtk_widget_unref);
342   gtk_widget_show (separator11);
343   gtk_container_add (GTK_CONTAINER (menubar_view_menu), separator11);
344   gtk_widget_set_sensitive (separator11, FALSE);
345
346   menubar_playlist = gtk_menu_item_new_with_label ("");
347   tmp_key = gtk_label_parse_uline (GTK_LABEL (GTK_BIN (menubar_playlist)->child),
348                                    _("_Playlist..."));
349   gtk_widget_add_accelerator (menubar_playlist, "activate_item", menubar_view_menu_accels,
350                               tmp_key, 0, 0);
351   gtk_widget_ref (menubar_playlist);
352   gtk_object_set_data_full (GTK_OBJECT (intf_window), "menubar_playlist", menubar_playlist,
353                             (GtkDestroyNotify) gtk_widget_unref);
354   gtk_widget_show (menubar_playlist);
355   gtk_container_add (GTK_CONTAINER (menubar_view_menu), menubar_playlist);
356   gtk_tooltips_set_tip (tooltips, menubar_playlist, _("Open the playlist window"), NULL);
357
358   menubar_modules = gtk_menu_item_new_with_label ("");
359   tmp_key = gtk_label_parse_uline (GTK_LABEL (GTK_BIN (menubar_modules)->child),
360                                    _("_Modules..."));
361   gtk_widget_add_accelerator (menubar_modules, "activate_item", menubar_view_menu_accels,
362                               tmp_key, 0, 0);
363   gtk_widget_ref (menubar_modules);
364   gtk_object_set_data_full (GTK_OBJECT (intf_window), "menubar_modules", menubar_modules,
365                             (GtkDestroyNotify) gtk_widget_unref);
366   gtk_widget_show (menubar_modules);
367   gtk_container_add (GTK_CONTAINER (menubar_view_menu), menubar_modules);
368   gtk_widget_set_sensitive (menubar_modules, FALSE);
369   gtk_tooltips_set_tip (tooltips, menubar_modules, _("Open the plugin manager"), NULL);
370
371   menubar_messages = gtk_menu_item_new_with_label (_("Messages..."));
372   gtk_widget_ref (menubar_messages);
373   gtk_object_set_data_full (GTK_OBJECT (intf_window), "menubar_messages", menubar_messages,
374                             (GtkDestroyNotify) gtk_widget_unref);
375   gtk_widget_show (menubar_messages);
376   gtk_container_add (GTK_CONTAINER (menubar_view_menu), menubar_messages);
377   gtk_tooltips_set_tip (tooltips, menubar_messages, _("Open the messages window"), NULL);
378
379   menubar_settings = gtk_menu_item_new_with_label ("");
380   tmp_key = gtk_label_parse_uline (GTK_LABEL (GTK_BIN (menubar_settings)->child),
381                                    _("_Settings"));
382   gtk_widget_add_accelerator (menubar_settings, "activate_item", accel_group,
383                               tmp_key, GDK_MOD1_MASK, (GtkAccelFlags) 0);
384   gtk_widget_ref (menubar_settings);
385   gtk_object_set_data_full (GTK_OBJECT (intf_window), "menubar_settings", menubar_settings,
386                             (GtkDestroyNotify) gtk_widget_unref);
387   gtk_widget_show (menubar_settings);
388   gtk_container_add (GTK_CONTAINER (menubar), menubar_settings);
389
390   menubar_settings_menu = gtk_menu_new ();
391   gtk_widget_ref (menubar_settings_menu);
392   gtk_object_set_data_full (GTK_OBJECT (intf_window), "menubar_settings_menu", menubar_settings_menu,
393                             (GtkDestroyNotify) gtk_widget_unref);
394   gtk_menu_item_set_submenu (GTK_MENU_ITEM (menubar_settings), menubar_settings_menu);
395   menubar_settings_menu_accels = gtk_menu_ensure_uline_accel_group (GTK_MENU (menubar_settings_menu));
396
397   menubar_audio = gtk_menu_item_new_with_label ("");
398   tmp_key = gtk_label_parse_uline (GTK_LABEL (GTK_BIN (menubar_audio)->child),
399                                    _("A_udio"));
400   gtk_widget_add_accelerator (menubar_audio, "activate_item", menubar_settings_menu_accels,
401                               tmp_key, 0, 0);
402   gtk_widget_ref (menubar_audio);
403   gtk_object_set_data_full (GTK_OBJECT (intf_window), "menubar_audio", menubar_audio,
404                             (GtkDestroyNotify) gtk_widget_unref);
405   gtk_widget_show (menubar_audio);
406   gtk_container_add (GTK_CONTAINER (menubar_settings_menu), menubar_audio);
407   gtk_widget_set_sensitive (menubar_audio, FALSE);
408   gtk_tooltips_set_tip (tooltips, menubar_audio, _("Select audio language"), NULL);
409
410   menubar_subpictures = gtk_menu_item_new_with_label ("");
411   tmp_key = gtk_label_parse_uline (GTK_LABEL (GTK_BIN (menubar_subpictures)->child),
412                                    _("_Subtitles"));
413   gtk_widget_add_accelerator (menubar_subpictures, "activate_item", menubar_settings_menu_accels,
414                               tmp_key, 0, 0);
415   gtk_widget_ref (menubar_subpictures);
416   gtk_object_set_data_full (GTK_OBJECT (intf_window), "menubar_subpictures", menubar_subpictures,
417                             (GtkDestroyNotify) gtk_widget_unref);
418   gtk_widget_show (menubar_subpictures);
419   gtk_container_add (GTK_CONTAINER (menubar_settings_menu), menubar_subpictures);
420   gtk_widget_set_sensitive (menubar_subpictures, FALSE);
421   gtk_tooltips_set_tip (tooltips, menubar_subpictures, _("Select sub-title"), NULL);
422
423   separator8 = gtk_menu_item_new ();
424   gtk_widget_ref (separator8);
425   gtk_object_set_data_full (GTK_OBJECT (intf_window), "separator8", separator8,
426                             (GtkDestroyNotify) gtk_widget_unref);
427   gtk_widget_show (separator8);
428   gtk_container_add (GTK_CONTAINER (menubar_settings_menu), separator8);
429   gtk_widget_set_sensitive (separator8, FALSE);
430
431   menubar_preferences = gtk_menu_item_new_with_label ("");
432   tmp_key = gtk_label_parse_uline (GTK_LABEL (GTK_BIN (menubar_preferences)->child),
433                                    _("_Preferences..."));
434   gtk_widget_add_accelerator (menubar_preferences, "activate_item", menubar_settings_menu_accels,
435                               tmp_key, 0, 0);
436   gtk_widget_ref (menubar_preferences);
437   gtk_object_set_data_full (GTK_OBJECT (intf_window), "menubar_preferences", menubar_preferences,
438                             (GtkDestroyNotify) gtk_widget_unref);
439   gtk_widget_show (menubar_preferences);
440   gtk_container_add (GTK_CONTAINER (menubar_settings_menu), menubar_preferences);
441   gtk_tooltips_set_tip (tooltips, menubar_preferences, _("Configure the application"), NULL);
442
443   menubar_help = gtk_menu_item_new_with_label ("");
444   tmp_key = gtk_label_parse_uline (GTK_LABEL (GTK_BIN (menubar_help)->child),
445                                    _("_Help"));
446   gtk_widget_add_accelerator (menubar_help, "activate_item", accel_group,
447                               tmp_key, GDK_MOD1_MASK, (GtkAccelFlags) 0);
448   gtk_widget_ref (menubar_help);
449   gtk_object_set_data_full (GTK_OBJECT (intf_window), "menubar_help", menubar_help,
450                             (GtkDestroyNotify) gtk_widget_unref);
451   gtk_widget_show (menubar_help);
452   gtk_container_add (GTK_CONTAINER (menubar), menubar_help);
453
454   menubar_help_menu = gtk_menu_new ();
455   gtk_widget_ref (menubar_help_menu);
456   gtk_object_set_data_full (GTK_OBJECT (intf_window), "menubar_help_menu", menubar_help_menu,
457                             (GtkDestroyNotify) gtk_widget_unref);
458   gtk_menu_item_set_submenu (GTK_MENU_ITEM (menubar_help), menubar_help_menu);
459   menubar_help_menu_accels = gtk_menu_ensure_uline_accel_group (GTK_MENU (menubar_help_menu));
460
461   menubar_about = gtk_menu_item_new_with_label ("");
462   tmp_key = gtk_label_parse_uline (GTK_LABEL (GTK_BIN (menubar_about)->child),
463                                    _("_About..."));
464   gtk_widget_add_accelerator (menubar_about, "activate_item", menubar_help_menu_accels,
465                               tmp_key, 0, 0);
466   gtk_widget_ref (menubar_about);
467   gtk_object_set_data_full (GTK_OBJECT (intf_window), "menubar_about", menubar_about,
468                             (GtkDestroyNotify) gtk_widget_unref);
469   gtk_widget_show (menubar_about);
470   gtk_container_add (GTK_CONTAINER (menubar_help_menu), menubar_about);
471   gtk_tooltips_set_tip (tooltips, menubar_about, _("About this application"), NULL);
472
473   toolbar_handlebox = gtk_handle_box_new ();
474   gtk_widget_ref (toolbar_handlebox);
475   gtk_object_set_data_full (GTK_OBJECT (intf_window), "toolbar_handlebox", toolbar_handlebox,
476                             (GtkDestroyNotify) gtk_widget_unref);
477   gtk_widget_show (toolbar_handlebox);
478   gtk_box_pack_start (GTK_BOX (window_vbox), toolbar_handlebox, FALSE, TRUE, 0);
479
480   toolbar = gtk_toolbar_new (GTK_ORIENTATION_HORIZONTAL, GTK_TOOLBAR_BOTH);
481   gtk_widget_ref (toolbar);
482   gtk_object_set_data_full (GTK_OBJECT (intf_window), "toolbar", toolbar,
483                             (GtkDestroyNotify) gtk_widget_unref);
484   gtk_widget_show (toolbar);
485   gtk_container_add (GTK_CONTAINER (toolbar_handlebox), toolbar);
486   gtk_container_set_border_width (GTK_CONTAINER (toolbar), 1);
487   gtk_toolbar_set_space_size (GTK_TOOLBAR (toolbar), 16);
488   gtk_toolbar_set_space_style (GTK_TOOLBAR (toolbar), GTK_TOOLBAR_SPACE_LINE);
489   gtk_toolbar_set_button_relief (GTK_TOOLBAR (toolbar), GTK_RELIEF_NONE);
490
491   toolbar_open = gtk_toolbar_append_element (GTK_TOOLBAR (toolbar),
492                                 GTK_TOOLBAR_CHILD_BUTTON,
493                                 NULL,
494                                 _("File"),
495                                 _("Open a File"), NULL,
496                                 NULL, NULL, NULL);
497   gtk_widget_ref (toolbar_open);
498   gtk_object_set_data_full (GTK_OBJECT (intf_window), "toolbar_open", toolbar_open,
499                             (GtkDestroyNotify) gtk_widget_unref);
500   gtk_widget_show (toolbar_open);
501
502   toolbar_disc = gtk_toolbar_append_element (GTK_TOOLBAR (toolbar),
503                                 GTK_TOOLBAR_CHILD_BUTTON,
504                                 NULL,
505                                 _("Disc"),
506                                 _("Open a DVD or VCD"), NULL,
507                                 NULL, NULL, NULL);
508   gtk_widget_ref (toolbar_disc);
509   gtk_object_set_data_full (GTK_OBJECT (intf_window), "toolbar_disc", toolbar_disc,
510                             (GtkDestroyNotify) gtk_widget_unref);
511   gtk_widget_show (toolbar_disc);
512
513   toolbar_network = gtk_toolbar_append_element (GTK_TOOLBAR (toolbar),
514                                 GTK_TOOLBAR_CHILD_BUTTON,
515                                 NULL,
516                                 _("Net"),
517                                 _("Select a Network Stream"), NULL,
518                                 NULL, NULL, NULL);
519   gtk_widget_ref (toolbar_network);
520   gtk_object_set_data_full (GTK_OBJECT (intf_window), "toolbar_network", toolbar_network,
521                             (GtkDestroyNotify) gtk_widget_unref);
522   gtk_widget_show (toolbar_network);
523
524   gtk_toolbar_append_space (GTK_TOOLBAR (toolbar));
525
526   toolbar_back = gtk_toolbar_append_element (GTK_TOOLBAR (toolbar),
527                                 GTK_TOOLBAR_CHILD_BUTTON,
528                                 NULL,
529                                 _("Back"),
530                                 _("Go Backwards"), NULL,
531                                 NULL, NULL, NULL);
532   gtk_widget_ref (toolbar_back);
533   gtk_object_set_data_full (GTK_OBJECT (intf_window), "toolbar_back", toolbar_back,
534                             (GtkDestroyNotify) gtk_widget_unref);
535   gtk_widget_show (toolbar_back);
536   gtk_widget_set_sensitive (toolbar_back, FALSE);
537
538   toolbar_stop = gtk_toolbar_append_element (GTK_TOOLBAR (toolbar),
539                                 GTK_TOOLBAR_CHILD_BUTTON,
540                                 NULL,
541                                 _("Stop"),
542                                 _("Stop Stream"), NULL,
543                                 NULL, NULL, NULL);
544   gtk_widget_ref (toolbar_stop);
545   gtk_object_set_data_full (GTK_OBJECT (intf_window), "toolbar_stop", toolbar_stop,
546                             (GtkDestroyNotify) gtk_widget_unref);
547   gtk_widget_show (toolbar_stop);
548
549   toolbar_eject = gtk_toolbar_append_element (GTK_TOOLBAR (toolbar),
550                                 GTK_TOOLBAR_CHILD_BUTTON,
551                                 NULL,
552                                 _("Eject"),
553                                 NULL, NULL,
554                                 NULL, NULL, NULL);
555   gtk_widget_ref (toolbar_eject);
556   gtk_object_set_data_full (GTK_OBJECT (intf_window), "toolbar_eject", toolbar_eject,
557                             (GtkDestroyNotify) gtk_widget_unref);
558   gtk_widget_show (toolbar_eject);
559
560   toolbar_play = gtk_toolbar_append_element (GTK_TOOLBAR (toolbar),
561                                 GTK_TOOLBAR_CHILD_BUTTON,
562                                 NULL,
563                                 _("Play"),
564                                 _("Play Stream"), NULL,
565                                 NULL, NULL, NULL);
566   gtk_widget_ref (toolbar_play);
567   gtk_object_set_data_full (GTK_OBJECT (intf_window), "toolbar_play", toolbar_play,
568                             (GtkDestroyNotify) gtk_widget_unref);
569   gtk_widget_show (toolbar_play);
570
571   toolbar_pause = gtk_toolbar_append_element (GTK_TOOLBAR (toolbar),
572                                 GTK_TOOLBAR_CHILD_BUTTON,
573                                 NULL,
574                                 _("Pause"),
575                                 _("Pause Stream"), NULL,
576                                 NULL, NULL, NULL);
577   gtk_widget_ref (toolbar_pause);
578   gtk_object_set_data_full (GTK_OBJECT (intf_window), "toolbar_pause", toolbar_pause,
579                             (GtkDestroyNotify) gtk_widget_unref);
580   gtk_widget_show (toolbar_pause);
581   gtk_widget_set_sensitive (toolbar_pause, FALSE);
582
583   toolbar_slow = gtk_toolbar_append_element (GTK_TOOLBAR (toolbar),
584                                 GTK_TOOLBAR_CHILD_BUTTON,
585                                 NULL,
586                                 _("Slow"),
587                                 _("Play Slower"), NULL,
588                                 NULL, NULL, NULL);
589   gtk_widget_ref (toolbar_slow);
590   gtk_object_set_data_full (GTK_OBJECT (intf_window), "toolbar_slow", toolbar_slow,
591                             (GtkDestroyNotify) gtk_widget_unref);
592   gtk_widget_show (toolbar_slow);
593   gtk_widget_set_sensitive (toolbar_slow, FALSE);
594
595   toolbar_fast = gtk_toolbar_append_element (GTK_TOOLBAR (toolbar),
596                                 GTK_TOOLBAR_CHILD_BUTTON,
597                                 NULL,
598                                 _("Fast"),
599                                 _("Play Faster"), NULL,
600                                 NULL, NULL, NULL);
601   gtk_widget_ref (toolbar_fast);
602   gtk_object_set_data_full (GTK_OBJECT (intf_window), "toolbar_fast", toolbar_fast,
603                             (GtkDestroyNotify) gtk_widget_unref);
604   gtk_widget_show (toolbar_fast);
605   gtk_widget_set_sensitive (toolbar_fast, FALSE);
606
607   gtk_toolbar_append_space (GTK_TOOLBAR (toolbar));
608
609   toolbar_playlist = gtk_toolbar_append_element (GTK_TOOLBAR (toolbar),
610                                 GTK_TOOLBAR_CHILD_BUTTON,
611                                 NULL,
612                                 _("Playlist"),
613                                 _("Open Playlist"), NULL,
614                                 NULL, NULL, NULL);
615   gtk_widget_ref (toolbar_playlist);
616   gtk_object_set_data_full (GTK_OBJECT (intf_window), "toolbar_playlist", toolbar_playlist,
617                             (GtkDestroyNotify) gtk_widget_unref);
618   gtk_widget_show (toolbar_playlist);
619
620   toolbar_prev = gtk_toolbar_append_element (GTK_TOOLBAR (toolbar),
621                                 GTK_TOOLBAR_CHILD_BUTTON,
622                                 NULL,
623                                 _("Prev"),
624                                 _("Previous File"), NULL,
625                                 NULL, NULL, NULL);
626   gtk_widget_ref (toolbar_prev);
627   gtk_object_set_data_full (GTK_OBJECT (intf_window), "toolbar_prev", toolbar_prev,
628                             (GtkDestroyNotify) gtk_widget_unref);
629   gtk_widget_show (toolbar_prev);
630
631   toolbar_next = gtk_toolbar_append_element (GTK_TOOLBAR (toolbar),
632                                 GTK_TOOLBAR_CHILD_BUTTON,
633                                 NULL,
634                                 _("Next"),
635                                 _("Next File"), NULL,
636                                 NULL, NULL, NULL);
637   gtk_widget_ref (toolbar_next);
638   gtk_object_set_data_full (GTK_OBJECT (intf_window), "toolbar_next", toolbar_next,
639                             (GtkDestroyNotify) gtk_widget_unref);
640   gtk_widget_show (toolbar_next);
641
642   slider_frame = gtk_frame_new (_("-:--:--"));
643   gtk_widget_ref (slider_frame);
644   gtk_object_set_data_full (GTK_OBJECT (intf_window), "slider_frame", slider_frame,
645                             (GtkDestroyNotify) gtk_widget_unref);
646   gtk_box_pack_start (GTK_BOX (window_vbox), slider_frame, TRUE, TRUE, 0);
647   gtk_frame_set_label_align (GTK_FRAME (slider_frame), 0.05, 0.5);
648
649   slider = gtk_hscale_new (GTK_ADJUSTMENT (gtk_adjustment_new (0, 0, 100, 1, 6.25, 0)));
650   gtk_widget_ref (slider);
651   gtk_object_set_data_full (GTK_OBJECT (intf_window), "slider", slider,
652                             (GtkDestroyNotify) gtk_widget_unref);
653   gtk_widget_show (slider);
654   gtk_container_add (GTK_CONTAINER (slider_frame), slider);
655   gtk_widget_set_usize (slider, 500, 15);
656   gtk_scale_set_draw_value (GTK_SCALE (slider), FALSE);
657   gtk_scale_set_digits (GTK_SCALE (slider), 3);
658
659   file_box = gtk_hbox_new (FALSE, 0);
660   gtk_widget_ref (file_box);
661   gtk_object_set_data_full (GTK_OBJECT (intf_window), "file_box", file_box,
662                             (GtkDestroyNotify) gtk_widget_unref);
663   gtk_widget_show (file_box);
664   gtk_box_pack_start (GTK_BOX (window_vbox), file_box, TRUE, TRUE, 0);
665   gtk_widget_set_usize (file_box, 500, 24);
666
667   label_status = gtk_label_new ("");
668   gtk_widget_ref (label_status);
669   gtk_object_set_data_full (GTK_OBJECT (intf_window), "label_status", label_status,
670                             (GtkDestroyNotify) gtk_widget_unref);
671   gtk_widget_show (label_status);
672   gtk_box_pack_start (GTK_BOX (file_box), label_status, TRUE, TRUE, 0);
673
674   dvd_box = gtk_hbox_new (FALSE, 0);
675   gtk_widget_ref (dvd_box);
676   gtk_object_set_data_full (GTK_OBJECT (intf_window), "dvd_box", dvd_box,
677                             (GtkDestroyNotify) gtk_widget_unref);
678   gtk_box_pack_start (GTK_BOX (window_vbox), dvd_box, TRUE, TRUE, 0);
679   gtk_widget_set_usize (dvd_box, 500, 24);
680
681   dvd_label = gtk_label_new (_("Disc"));
682   gtk_widget_ref (dvd_label);
683   gtk_object_set_data_full (GTK_OBJECT (intf_window), "dvd_label", dvd_label,
684                             (GtkDestroyNotify) gtk_widget_unref);
685   gtk_widget_show (dvd_label);
686   gtk_box_pack_start (GTK_BOX (dvd_box), dvd_label, TRUE, FALSE, 0);
687
688   title_box = gtk_hbox_new (FALSE, 0);
689   gtk_widget_ref (title_box);
690   gtk_object_set_data_full (GTK_OBJECT (intf_window), "title_box", title_box,
691                             (GtkDestroyNotify) gtk_widget_unref);
692   gtk_widget_show (title_box);
693   gtk_box_pack_start (GTK_BOX (dvd_box), title_box, TRUE, TRUE, 0);
694
695   title = gtk_label_new (_("Title:  "));
696   gtk_widget_ref (title);
697   gtk_object_set_data_full (GTK_OBJECT (intf_window), "title", title,
698                             (GtkDestroyNotify) gtk_widget_unref);
699   gtk_widget_show (title);
700   gtk_box_pack_start (GTK_BOX (title_box), title, FALSE, FALSE, 5);
701
702   title_label = gtk_label_new (_("--"));
703   gtk_widget_ref (title_label);
704   gtk_object_set_data_full (GTK_OBJECT (intf_window), "title_label", title_label,
705                             (GtkDestroyNotify) gtk_widget_unref);
706   gtk_widget_show (title_label);
707   gtk_box_pack_start (GTK_BOX (title_box), title_label, FALSE, FALSE, 5);
708
709   title_prev_button = gtk_button_new_with_label (_("Prev"));
710   gtk_widget_ref (title_prev_button);
711   gtk_object_set_data_full (GTK_OBJECT (intf_window), "title_prev_button", title_prev_button,
712                             (GtkDestroyNotify) gtk_widget_unref);
713   gtk_widget_show (title_prev_button);
714   gtk_box_pack_start (GTK_BOX (title_box), title_prev_button, FALSE, FALSE, 5);
715   gtk_button_set_relief (GTK_BUTTON (title_prev_button), GTK_RELIEF_NONE);
716
717   title_next_button = gtk_button_new_with_label (_("Next"));
718   gtk_widget_ref (title_next_button);
719   gtk_object_set_data_full (GTK_OBJECT (intf_window), "title_next_button", title_next_button,
720                             (GtkDestroyNotify) gtk_widget_unref);
721   gtk_widget_show (title_next_button);
722   gtk_box_pack_start (GTK_BOX (title_box), title_next_button, FALSE, FALSE, 5);
723   gtk_button_set_relief (GTK_BUTTON (title_next_button), GTK_RELIEF_NONE);
724
725   dvd_separator = gtk_vseparator_new ();
726   gtk_widget_ref (dvd_separator);
727   gtk_object_set_data_full (GTK_OBJECT (intf_window), "dvd_separator", dvd_separator,
728                             (GtkDestroyNotify) gtk_widget_unref);
729   gtk_widget_show (dvd_separator);
730   gtk_box_pack_start (GTK_BOX (dvd_box), dvd_separator, TRUE, TRUE, 0);
731
732   chapter_box = gtk_hbox_new (FALSE, 0);
733   gtk_widget_ref (chapter_box);
734   gtk_object_set_data_full (GTK_OBJECT (intf_window), "chapter_box", chapter_box,
735                             (GtkDestroyNotify) gtk_widget_unref);
736   gtk_widget_show (chapter_box);
737   gtk_box_pack_start (GTK_BOX (dvd_box), chapter_box, TRUE, TRUE, 0);
738
739   chapter = gtk_label_new (_("Chapter:  "));
740   gtk_widget_ref (chapter);
741   gtk_object_set_data_full (GTK_OBJECT (intf_window), "chapter", chapter,
742                             (GtkDestroyNotify) gtk_widget_unref);
743   gtk_widget_show (chapter);
744   gtk_box_pack_start (GTK_BOX (chapter_box), chapter, FALSE, FALSE, 5);
745
746   chapter_label = gtk_label_new (_("---"));
747   gtk_widget_ref (chapter_label);
748   gtk_object_set_data_full (GTK_OBJECT (intf_window), "chapter_label", chapter_label,
749                             (GtkDestroyNotify) gtk_widget_unref);
750   gtk_widget_show (chapter_label);
751   gtk_box_pack_start (GTK_BOX (chapter_box), chapter_label, FALSE, FALSE, 5);
752
753   chapter_prev_button = gtk_button_new_with_label (_("Prev"));
754   gtk_widget_ref (chapter_prev_button);
755   gtk_object_set_data_full (GTK_OBJECT (intf_window), "chapter_prev_button", chapter_prev_button,
756                             (GtkDestroyNotify) gtk_widget_unref);
757   gtk_widget_show (chapter_prev_button);
758   gtk_box_pack_start (GTK_BOX (chapter_box), chapter_prev_button, FALSE, FALSE, 5);
759   gtk_button_set_relief (GTK_BUTTON (chapter_prev_button), GTK_RELIEF_NONE);
760
761   chapter_next_button = gtk_button_new_with_label (_("Next"));
762   gtk_widget_ref (chapter_next_button);
763   gtk_object_set_data_full (GTK_OBJECT (intf_window), "chapter_next_button", chapter_next_button,
764                             (GtkDestroyNotify) gtk_widget_unref);
765   gtk_widget_show (chapter_next_button);
766   gtk_box_pack_start (GTK_BOX (chapter_box), chapter_next_button, FALSE, FALSE, 5);
767   gtk_button_set_relief (GTK_BUTTON (chapter_next_button), GTK_RELIEF_NONE);
768
769   network_box = gtk_hbox_new (FALSE, 0);
770   gtk_widget_ref (network_box);
771   gtk_object_set_data_full (GTK_OBJECT (intf_window), "network_box", network_box,
772                             (GtkDestroyNotify) gtk_widget_unref);
773   gtk_box_pack_start (GTK_BOX (window_vbox), network_box, TRUE, TRUE, 0);
774   gtk_widget_set_usize (network_box, 500, 24);
775
776   network_address_label = gtk_label_new (_("No server !"));
777   gtk_widget_ref (network_address_label);
778   gtk_object_set_data_full (GTK_OBJECT (intf_window), "network_address_label", network_address_label,
779                             (GtkDestroyNotify) gtk_widget_unref);
780   gtk_widget_show (network_address_label);
781   gtk_box_pack_start (GTK_BOX (network_box), network_address_label, TRUE, TRUE, 0);
782
783   network_channel_box = gtk_hbox_new (FALSE, 0);
784   gtk_widget_ref (network_channel_box);
785   gtk_object_set_data_full (GTK_OBJECT (intf_window), "network_channel_box", network_channel_box,
786                             (GtkDestroyNotify) gtk_widget_unref);
787   gtk_widget_show (network_channel_box);
788   gtk_box_pack_start (GTK_BOX (network_box), network_channel_box, TRUE, FALSE, 0);
789
790   channel_label = gtk_label_new (_("Channel:  "));
791   gtk_widget_ref (channel_label);
792   gtk_object_set_data_full (GTK_OBJECT (intf_window), "channel_label", channel_label,
793                             (GtkDestroyNotify) gtk_widget_unref);
794   gtk_widget_show (channel_label);
795   gtk_box_pack_start (GTK_BOX (network_channel_box), channel_label, FALSE, FALSE, 5);
796
797   network_channel_spinbutton_adj = gtk_adjustment_new (0, 0, 100, 1, 10, 10);
798   network_channel_spinbutton = gtk_spin_button_new (GTK_ADJUSTMENT (network_channel_spinbutton_adj), 1, 0);
799   gtk_widget_ref (network_channel_spinbutton);
800   gtk_object_set_data_full (GTK_OBJECT (intf_window), "network_channel_spinbutton", network_channel_spinbutton,
801                             (GtkDestroyNotify) gtk_widget_unref);
802   gtk_widget_show (network_channel_spinbutton);
803   gtk_box_pack_start (GTK_BOX (network_channel_box), network_channel_spinbutton, FALSE, TRUE, 0);
804
805   network_channel_go_button = gtk_button_new_with_label (_("Go!"));
806   gtk_widget_ref (network_channel_go_button);
807   gtk_object_set_data_full (GTK_OBJECT (intf_window), "network_channel_go_button", network_channel_go_button,
808                             (GtkDestroyNotify) gtk_widget_unref);
809   gtk_widget_show (network_channel_go_button);
810   gtk_box_pack_start (GTK_BOX (network_channel_box), network_channel_go_button, FALSE, FALSE, 0);
811   gtk_button_set_relief (GTK_BUTTON (network_channel_go_button), GTK_RELIEF_NONE);
812
813   intf_statusbar = gtk_statusbar_new ();
814   gtk_widget_ref (intf_statusbar);
815   gtk_object_set_data_full (GTK_OBJECT (intf_window), "intf_statusbar", intf_statusbar,
816                             (GtkDestroyNotify) gtk_widget_unref);
817   gtk_widget_show (intf_statusbar);
818   gtk_box_pack_start (GTK_BOX (window_vbox), intf_statusbar, FALSE, FALSE, 0);
819   gtk_widget_set_usize (intf_statusbar, 500, -2);
820
821   gtk_signal_connect (GTK_OBJECT (intf_window), "drag_data_received",
822                       GTK_SIGNAL_FUNC (GtkWindowDrag),
823                       "intf_window");
824   gtk_signal_connect (GTK_OBJECT (intf_window), "delete_event",
825                       GTK_SIGNAL_FUNC (GtkWindowDelete),
826                       "intf_window");
827   gtk_signal_connect (GTK_OBJECT (menubar_open), "activate",
828                       GTK_SIGNAL_FUNC (GtkFileOpenActivate),
829                       NULL);
830   gtk_signal_connect (GTK_OBJECT (menubar_disc), "activate",
831                       GTK_SIGNAL_FUNC (GtkDiscOpenActivate),
832                       NULL);
833   gtk_signal_connect (GTK_OBJECT (menubar_network), "activate",
834                       GTK_SIGNAL_FUNC (GtkNetworkOpenActivate),
835                       NULL);
836   gtk_signal_connect (GTK_OBJECT (menubar_eject), "activate",
837                       GTK_SIGNAL_FUNC (GtkEjectDiscActivate),
838                       NULL);
839   gtk_signal_connect (GTK_OBJECT (menubar_exit), "activate",
840                       GTK_SIGNAL_FUNC (GtkExitActivate),
841                       NULL);
842   gtk_signal_connect (GTK_OBJECT (menubar_interface_hide), "activate",
843                       GTK_SIGNAL_FUNC (GtkWindowToggleActivate),
844                       NULL);
845   gtk_signal_connect (GTK_OBJECT (menubar_fullscreen), "activate",
846                       GTK_SIGNAL_FUNC (GtkFullscreenActivate),
847                       NULL);
848   gtk_signal_connect (GTK_OBJECT (menubar_playlist), "activate",
849                       GTK_SIGNAL_FUNC (GtkPlaylistActivate),
850                       NULL);
851   gtk_signal_connect (GTK_OBJECT (menubar_modules), "activate",
852                       GTK_SIGNAL_FUNC (GtkModulesActivate),
853                       NULL);
854   gtk_signal_connect (GTK_OBJECT (menubar_messages), "activate",
855                       GTK_SIGNAL_FUNC (GtkMessagesActivate),
856                       NULL);
857   gtk_signal_connect (GTK_OBJECT (menubar_preferences), "activate",
858                       GTK_SIGNAL_FUNC (GtkPreferencesActivate),
859                       NULL);
860   gtk_signal_connect (GTK_OBJECT (menubar_about), "activate",
861                       GTK_SIGNAL_FUNC (GtkAboutActivate),
862                       NULL);
863   gtk_signal_connect (GTK_OBJECT (toolbar_open), "button_press_event",
864                       GTK_SIGNAL_FUNC (GtkFileOpenShow),
865                       "intf_window");
866   gtk_signal_connect (GTK_OBJECT (toolbar_disc), "button_press_event",
867                       GTK_SIGNAL_FUNC (GtkDiscOpenShow),
868                       "intf_window");
869   gtk_signal_connect (GTK_OBJECT (toolbar_network), "button_press_event",
870                       GTK_SIGNAL_FUNC (GtkNetworkOpenShow),
871                       "intf_window");
872   gtk_signal_connect (GTK_OBJECT (toolbar_back), "button_press_event",
873                       GTK_SIGNAL_FUNC (GtkControlBack),
874                       "intf_window");
875   gtk_signal_connect (GTK_OBJECT (toolbar_stop), "button_press_event",
876                       GTK_SIGNAL_FUNC (GtkControlStop),
877                       "intf_window");
878   gtk_signal_connect (GTK_OBJECT (toolbar_eject), "button_press_event",
879                       GTK_SIGNAL_FUNC (GtkDiscEject),
880                       "intf_window");
881   gtk_signal_connect (GTK_OBJECT (toolbar_play), "button_press_event",
882                       GTK_SIGNAL_FUNC (GtkControlPlay),
883                       "intf_window");
884   gtk_signal_connect (GTK_OBJECT (toolbar_pause), "button_press_event",
885                       GTK_SIGNAL_FUNC (GtkControlPause),
886                       "intf_window");
887   gtk_signal_connect (GTK_OBJECT (toolbar_slow), "button_press_event",
888                       GTK_SIGNAL_FUNC (GtkControlSlow),
889                       "intf_window");
890   gtk_signal_connect (GTK_OBJECT (toolbar_fast), "button_press_event",
891                       GTK_SIGNAL_FUNC (GtkControlFast),
892                       "intf_window");
893   gtk_signal_connect (GTK_OBJECT (toolbar_playlist), "button_press_event",
894                       GTK_SIGNAL_FUNC (GtkPlaylistShow),
895                       "intf_window");
896   gtk_signal_connect (GTK_OBJECT (toolbar_prev), "button_press_event",
897                       GTK_SIGNAL_FUNC (GtkPlaylistPrev),
898                       "intf_window");
899   gtk_signal_connect (GTK_OBJECT (toolbar_next), "button_press_event",
900                       GTK_SIGNAL_FUNC (GtkPlaylistNext),
901                       "intf_window");
902   gtk_signal_connect (GTK_OBJECT (slider), "button_release_event",
903                       GTK_SIGNAL_FUNC (GtkSliderRelease),
904                       "intf_window");
905   gtk_signal_connect (GTK_OBJECT (slider), "button_press_event",
906                       GTK_SIGNAL_FUNC (GtkSliderPress),
907                       "intf_window");
908   gtk_signal_connect (GTK_OBJECT (title_prev_button), "clicked",
909                       GTK_SIGNAL_FUNC (GtkTitlePrev),
910                       "intf_window");
911   gtk_signal_connect (GTK_OBJECT (title_next_button), "clicked",
912                       GTK_SIGNAL_FUNC (GtkTitleNext),
913                       "intf_window");
914   gtk_signal_connect (GTK_OBJECT (chapter_prev_button), "clicked",
915                       GTK_SIGNAL_FUNC (GtkChapterPrev),
916                       "intf_window");
917   gtk_signal_connect (GTK_OBJECT (chapter_next_button), "clicked",
918                       GTK_SIGNAL_FUNC (GtkChapterNext),
919                       "intf_window");
920   gtk_signal_connect (GTK_OBJECT (network_channel_spinbutton), "activate",
921                       GTK_SIGNAL_FUNC (GtkNetworkJoin),
922                       "intf_window");
923   gtk_signal_connect (GTK_OBJECT (network_channel_go_button), "clicked",
924                       GTK_SIGNAL_FUNC (GtkChannelGo),
925                       "intf_window");
926
927   gtk_object_set_data (GTK_OBJECT (intf_window), "tooltips", tooltips);
928
929   gtk_window_add_accel_group (GTK_WINDOW (intf_window), accel_group);
930
931   return intf_window;
932 }
933
934 GtkWidget*
935 create_intf_popup (void)
936 {
937   GtkWidget *intf_popup;
938   GtkAccelGroup *intf_popup_accels;
939   guint tmp_key;
940   GtkWidget *popup_play;
941   GtkWidget *popup_pause;
942   GtkWidget *popup_stop;
943   GtkWidget *popup_back;
944   GtkWidget *popup_slow;
945   GtkWidget *popup_fast;
946   GtkWidget *separator6;
947   GtkWidget *popup_interface_toggle;
948   GtkWidget *popup_fullscreen;
949   GtkWidget *separator5;
950   GtkWidget *popup_next;
951   GtkWidget *popup_prev;
952   GtkWidget *popup_jump;
953   GtkWidget *popup_navigation;
954   GtkWidget *popup_angle;
955   GtkWidget *popup_audio;
956   GtkWidget *popup_subpictures;
957   GtkWidget *popup_open;
958   GtkWidget *popup_open_menu;
959   GtkAccelGroup *popup_open_menu_accels;
960   GtkWidget *popup_file;
961   GtkWidget *popup_disc;
962   GtkWidget *popup_network;
963   GtkWidget *separator12;
964   GtkWidget *popup_about;
965   GtkWidget *popup_playlist;
966   GtkWidget *popup_preferences;
967   GtkWidget *separator9;
968   GtkWidget *popup_exit;
969   GtkTooltips *tooltips;
970
971   tooltips = gtk_tooltips_new ();
972
973   intf_popup = gtk_menu_new ();
974   gtk_object_set_data (GTK_OBJECT (intf_popup), "intf_popup", intf_popup);
975   intf_popup_accels = gtk_menu_ensure_uline_accel_group (GTK_MENU (intf_popup));
976
977   popup_play = gtk_menu_item_new_with_label ("");
978   tmp_key = gtk_label_parse_uline (GTK_LABEL (GTK_BIN (popup_play)->child),
979                                    _("_Play"));
980   gtk_widget_add_accelerator (popup_play, "activate_item", intf_popup_accels,
981                               tmp_key, 0, 0);
982   gtk_widget_ref (popup_play);
983   gtk_object_set_data_full (GTK_OBJECT (intf_popup), "popup_play", popup_play,
984                             (GtkDestroyNotify) gtk_widget_unref);
985   gtk_widget_show (popup_play);
986   gtk_container_add (GTK_CONTAINER (intf_popup), popup_play);
987
988   popup_pause = gtk_menu_item_new_with_label (_("Pause"));
989   gtk_widget_ref (popup_pause);
990   gtk_object_set_data_full (GTK_OBJECT (intf_popup), "popup_pause", popup_pause,
991                             (GtkDestroyNotify) gtk_widget_unref);
992   gtk_widget_show (popup_pause);
993   gtk_container_add (GTK_CONTAINER (intf_popup), popup_pause);
994   gtk_widget_set_sensitive (popup_pause, FALSE);
995
996   popup_stop = gtk_menu_item_new_with_label (_("Stop"));
997   gtk_widget_ref (popup_stop);
998   gtk_object_set_data_full (GTK_OBJECT (intf_popup), "popup_stop", popup_stop,
999                             (GtkDestroyNotify) gtk_widget_unref);
1000   gtk_widget_show (popup_stop);
1001   gtk_container_add (GTK_CONTAINER (intf_popup), popup_stop);
1002
1003   popup_back = gtk_menu_item_new_with_label (_("Back"));
1004   gtk_widget_ref (popup_back);
1005   gtk_object_set_data_full (GTK_OBJECT (intf_popup), "popup_back", popup_back,
1006                             (GtkDestroyNotify) gtk_widget_unref);
1007   gtk_widget_show (popup_back);
1008   gtk_container_add (GTK_CONTAINER (intf_popup), popup_back);
1009   gtk_widget_set_sensitive (popup_back, FALSE);
1010
1011   popup_slow = gtk_menu_item_new_with_label (_("Slow"));
1012   gtk_widget_ref (popup_slow);
1013   gtk_object_set_data_full (GTK_OBJECT (intf_popup), "popup_slow", popup_slow,
1014                             (GtkDestroyNotify) gtk_widget_unref);
1015   gtk_widget_show (popup_slow);
1016   gtk_container_add (GTK_CONTAINER (intf_popup), popup_slow);
1017   gtk_widget_set_sensitive (popup_slow, FALSE);
1018
1019   popup_fast = gtk_menu_item_new_with_label (_("Fast"));
1020   gtk_widget_ref (popup_fast);
1021   gtk_object_set_data_full (GTK_OBJECT (intf_popup), "popup_fast", popup_fast,
1022                             (GtkDestroyNotify) gtk_widget_unref);
1023   gtk_widget_show (popup_fast);
1024   gtk_container_add (GTK_CONTAINER (intf_popup), popup_fast);
1025   gtk_widget_set_sensitive (popup_fast, FALSE);
1026
1027   separator6 = gtk_menu_item_new ();
1028   gtk_widget_ref (separator6);
1029   gtk_object_set_data_full (GTK_OBJECT (intf_popup), "separator6", separator6,
1030                             (GtkDestroyNotify) gtk_widget_unref);
1031   gtk_widget_show (separator6);
1032   gtk_container_add (GTK_CONTAINER (intf_popup), separator6);
1033   gtk_widget_set_sensitive (separator6, FALSE);
1034
1035   popup_interface_toggle = gtk_menu_item_new_with_label ("");
1036   tmp_key = gtk_label_parse_uline (GTK_LABEL (GTK_BIN (popup_interface_toggle)->child),
1037                                    _("Toggle _Interface"));
1038   gtk_widget_add_accelerator (popup_interface_toggle, "activate_item", intf_popup_accels,
1039                               tmp_key, 0, 0);
1040   gtk_widget_ref (popup_interface_toggle);
1041   gtk_object_set_data_full (GTK_OBJECT (intf_popup), "popup_interface_toggle", popup_interface_toggle,
1042                             (GtkDestroyNotify) gtk_widget_unref);
1043   gtk_widget_show (popup_interface_toggle);
1044   gtk_container_add (GTK_CONTAINER (intf_popup), popup_interface_toggle);
1045
1046   popup_fullscreen = gtk_menu_item_new_with_label ("");
1047   tmp_key = gtk_label_parse_uline (GTK_LABEL (GTK_BIN (popup_fullscreen)->child),
1048                                    _("_Fullscreen"));
1049   gtk_widget_add_accelerator (popup_fullscreen, "activate_item", intf_popup_accels,
1050                               tmp_key, 0, 0);
1051   gtk_widget_ref (popup_fullscreen);
1052   gtk_object_set_data_full (GTK_OBJECT (intf_popup), "popup_fullscreen", popup_fullscreen,
1053                             (GtkDestroyNotify) gtk_widget_unref);
1054   gtk_widget_show (popup_fullscreen);
1055   gtk_container_add (GTK_CONTAINER (intf_popup), popup_fullscreen);
1056
1057   separator5 = gtk_menu_item_new ();
1058   gtk_widget_ref (separator5);
1059   gtk_object_set_data_full (GTK_OBJECT (intf_popup), "separator5", separator5,
1060                             (GtkDestroyNotify) gtk_widget_unref);
1061   gtk_widget_show (separator5);
1062   gtk_container_add (GTK_CONTAINER (intf_popup), separator5);
1063   gtk_widget_set_sensitive (separator5, FALSE);
1064
1065   popup_next = gtk_menu_item_new_with_label (_("Next"));
1066   gtk_widget_ref (popup_next);
1067   gtk_object_set_data_full (GTK_OBJECT (intf_popup), "popup_next", popup_next,
1068                             (GtkDestroyNotify) gtk_widget_unref);
1069   gtk_widget_show (popup_next);
1070   gtk_container_add (GTK_CONTAINER (intf_popup), popup_next);
1071
1072   popup_prev = gtk_menu_item_new_with_label (_("Prev"));
1073   gtk_widget_ref (popup_prev);
1074   gtk_object_set_data_full (GTK_OBJECT (intf_popup), "popup_prev", popup_prev,
1075                             (GtkDestroyNotify) gtk_widget_unref);
1076   gtk_widget_show (popup_prev);
1077   gtk_container_add (GTK_CONTAINER (intf_popup), popup_prev);
1078
1079   popup_jump = gtk_menu_item_new_with_label ("");
1080   tmp_key = gtk_label_parse_uline (GTK_LABEL (GTK_BIN (popup_jump)->child),
1081                                    _("_Jump..."));
1082   gtk_widget_add_accelerator (popup_jump, "activate_item", intf_popup_accels,
1083                               tmp_key, 0, 0);
1084   gtk_widget_ref (popup_jump);
1085   gtk_object_set_data_full (GTK_OBJECT (intf_popup), "popup_jump", popup_jump,
1086                             (GtkDestroyNotify) gtk_widget_unref);
1087   gtk_widget_show (popup_jump);
1088   gtk_container_add (GTK_CONTAINER (intf_popup), popup_jump);
1089
1090   popup_navigation = gtk_menu_item_new_with_label ("");
1091   tmp_key = gtk_label_parse_uline (GTK_LABEL (GTK_BIN (popup_navigation)->child),
1092                                    _("_Navigation"));
1093   gtk_widget_add_accelerator (popup_navigation, "activate_item", intf_popup_accels,
1094                               tmp_key, 0, 0);
1095   gtk_widget_ref (popup_navigation);
1096   gtk_object_set_data_full (GTK_OBJECT (intf_popup), "popup_navigation", popup_navigation,
1097                             (GtkDestroyNotify) gtk_widget_unref);
1098   gtk_widget_show (popup_navigation);
1099   gtk_container_add (GTK_CONTAINER (intf_popup), popup_navigation);
1100   gtk_widget_set_sensitive (popup_navigation, FALSE);
1101
1102   popup_angle = gtk_menu_item_new_with_label ("");
1103   tmp_key = gtk_label_parse_uline (GTK_LABEL (GTK_BIN (popup_angle)->child),
1104                                    _("An_gle"));
1105   gtk_widget_add_accelerator (popup_angle, "activate_item", intf_popup_accels,
1106                               tmp_key, 0, 0);
1107   gtk_widget_ref (popup_angle);
1108   gtk_object_set_data_full (GTK_OBJECT (intf_popup), "popup_angle", popup_angle,
1109                             (GtkDestroyNotify) gtk_widget_unref);
1110   gtk_widget_show (popup_angle);
1111   gtk_container_add (GTK_CONTAINER (intf_popup), popup_angle);
1112   gtk_widget_set_sensitive (popup_angle, FALSE);
1113
1114   popup_audio = gtk_menu_item_new_with_label ("");
1115   tmp_key = gtk_label_parse_uline (GTK_LABEL (GTK_BIN (popup_audio)->child),
1116                                    _("_Audio"));
1117   gtk_widget_add_accelerator (popup_audio, "activate_item", intf_popup_accels,
1118                               tmp_key, 0, 0);
1119   gtk_widget_ref (popup_audio);
1120   gtk_object_set_data_full (GTK_OBJECT (intf_popup), "popup_audio", popup_audio,
1121                             (GtkDestroyNotify) gtk_widget_unref);
1122   gtk_widget_show (popup_audio);
1123   gtk_container_add (GTK_CONTAINER (intf_popup), popup_audio);
1124   gtk_widget_set_sensitive (popup_audio, FALSE);
1125
1126   popup_subpictures = gtk_menu_item_new_with_label ("");
1127   tmp_key = gtk_label_parse_uline (GTK_LABEL (GTK_BIN (popup_subpictures)->child),
1128                                    _("_Subtitles"));
1129   gtk_widget_add_accelerator (popup_subpictures, "activate_item", intf_popup_accels,
1130                               tmp_key, 0, 0);
1131   gtk_widget_ref (popup_subpictures);
1132   gtk_object_set_data_full (GTK_OBJECT (intf_popup), "popup_subpictures", popup_subpictures,
1133                             (GtkDestroyNotify) gtk_widget_unref);
1134   gtk_widget_show (popup_subpictures);
1135   gtk_container_add (GTK_CONTAINER (intf_popup), popup_subpictures);
1136   gtk_widget_set_sensitive (popup_subpictures, FALSE);
1137
1138   popup_open = gtk_menu_item_new_with_label ("");
1139   tmp_key = gtk_label_parse_uline (GTK_LABEL (GTK_BIN (popup_open)->child),
1140                                    _("_File"));
1141   gtk_widget_add_accelerator (popup_open, "activate_item", intf_popup_accels,
1142                               tmp_key, 0, 0);
1143   gtk_widget_ref (popup_open);
1144   gtk_object_set_data_full (GTK_OBJECT (intf_popup), "popup_open", popup_open,
1145                             (GtkDestroyNotify) gtk_widget_unref);
1146   gtk_widget_show (popup_open);
1147   gtk_container_add (GTK_CONTAINER (intf_popup), popup_open);
1148
1149   popup_open_menu = gtk_menu_new ();
1150   gtk_widget_ref (popup_open_menu);
1151   gtk_object_set_data_full (GTK_OBJECT (intf_popup), "popup_open_menu", popup_open_menu,
1152                             (GtkDestroyNotify) gtk_widget_unref);
1153   gtk_menu_item_set_submenu (GTK_MENU_ITEM (popup_open), popup_open_menu);
1154   popup_open_menu_accels = gtk_menu_ensure_uline_accel_group (GTK_MENU (popup_open_menu));
1155
1156   popup_file = gtk_menu_item_new_with_label ("");
1157   tmp_key = gtk_label_parse_uline (GTK_LABEL (GTK_BIN (popup_file)->child),
1158                                    _("_Open File..."));
1159   gtk_widget_add_accelerator (popup_file, "activate_item", popup_open_menu_accels,
1160                               tmp_key, 0, 0);
1161   gtk_widget_ref (popup_file);
1162   gtk_object_set_data_full (GTK_OBJECT (intf_popup), "popup_file", popup_file,
1163                             (GtkDestroyNotify) gtk_widget_unref);
1164   gtk_widget_show (popup_file);
1165   gtk_container_add (GTK_CONTAINER (popup_open_menu), popup_file);
1166   gtk_tooltips_set_tip (tooltips, popup_file, _("Open a File"), NULL);
1167
1168   popup_disc = gtk_menu_item_new_with_label ("");
1169   tmp_key = gtk_label_parse_uline (GTK_LABEL (GTK_BIN (popup_disc)->child),
1170                                    _("Open _Disc..."));
1171   gtk_widget_add_accelerator (popup_disc, "activate_item", popup_open_menu_accels,
1172                               tmp_key, 0, 0);
1173   gtk_widget_ref (popup_disc);
1174   gtk_object_set_data_full (GTK_OBJECT (intf_popup), "popup_disc", popup_disc,
1175                             (GtkDestroyNotify) gtk_widget_unref);
1176   gtk_widget_show (popup_disc);
1177   gtk_container_add (GTK_CONTAINER (popup_open_menu), popup_disc);
1178   gtk_tooltips_set_tip (tooltips, popup_disc, _("Open a DVD or VCD"), NULL);
1179
1180   popup_network = gtk_menu_item_new_with_label ("");
1181   tmp_key = gtk_label_parse_uline (GTK_LABEL (GTK_BIN (popup_network)->child),
1182                                    _("_Network Stream..."));
1183   gtk_widget_add_accelerator (popup_network, "activate_item", popup_open_menu_accels,
1184                               tmp_key, 0, 0);
1185   gtk_widget_ref (popup_network);
1186   gtk_object_set_data_full (GTK_OBJECT (intf_popup), "popup_network", popup_network,
1187                             (GtkDestroyNotify) gtk_widget_unref);
1188   gtk_widget_show (popup_network);
1189   gtk_container_add (GTK_CONTAINER (popup_open_menu), popup_network);
1190   gtk_tooltips_set_tip (tooltips, popup_network, _("Select a Network Stream"), NULL);
1191
1192   separator12 = gtk_menu_item_new ();
1193   gtk_widget_ref (separator12);
1194   gtk_object_set_data_full (GTK_OBJECT (intf_popup), "separator12", separator12,
1195                             (GtkDestroyNotify) gtk_widget_unref);
1196   gtk_widget_show (separator12);
1197   gtk_container_add (GTK_CONTAINER (popup_open_menu), separator12);
1198   gtk_widget_set_sensitive (separator12, FALSE);
1199
1200   popup_about = gtk_menu_item_new_with_label ("");
1201   tmp_key = gtk_label_parse_uline (GTK_LABEL (GTK_BIN (popup_about)->child),
1202                                    _("_About..."));
1203   gtk_widget_add_accelerator (popup_about, "activate_item", popup_open_menu_accels,
1204                               tmp_key, 0, 0);
1205   gtk_widget_ref (popup_about);
1206   gtk_object_set_data_full (GTK_OBJECT (intf_popup), "popup_about", popup_about,
1207                             (GtkDestroyNotify) gtk_widget_unref);
1208   gtk_widget_show (popup_about);
1209   gtk_container_add (GTK_CONTAINER (popup_open_menu), popup_about);
1210
1211   popup_playlist = gtk_menu_item_new_with_label (_("Playlist..."));
1212   gtk_widget_ref (popup_playlist);
1213   gtk_object_set_data_full (GTK_OBJECT (intf_popup), "popup_playlist", popup_playlist,
1214                             (GtkDestroyNotify) gtk_widget_unref);
1215   gtk_widget_show (popup_playlist);
1216   gtk_container_add (GTK_CONTAINER (intf_popup), popup_playlist);
1217
1218   popup_preferences = gtk_menu_item_new_with_label ("");
1219   tmp_key = gtk_label_parse_uline (GTK_LABEL (GTK_BIN (popup_preferences)->child),
1220                                    _("_Preferences..."));
1221   gtk_widget_add_accelerator (popup_preferences, "activate_item", intf_popup_accels,
1222                               tmp_key, 0, 0);
1223   gtk_widget_ref (popup_preferences);
1224   gtk_object_set_data_full (GTK_OBJECT (intf_popup), "popup_preferences", popup_preferences,
1225                             (GtkDestroyNotify) gtk_widget_unref);
1226   gtk_widget_show (popup_preferences);
1227   gtk_container_add (GTK_CONTAINER (intf_popup), popup_preferences);
1228
1229   separator9 = gtk_menu_item_new ();
1230   gtk_widget_ref (separator9);
1231   gtk_object_set_data_full (GTK_OBJECT (intf_popup), "separator9", separator9,
1232                             (GtkDestroyNotify) gtk_widget_unref);
1233   gtk_widget_show (separator9);
1234   gtk_container_add (GTK_CONTAINER (intf_popup), separator9);
1235   gtk_widget_set_sensitive (separator9, FALSE);
1236
1237   popup_exit = gtk_menu_item_new_with_label ("");
1238   tmp_key = gtk_label_parse_uline (GTK_LABEL (GTK_BIN (popup_exit)->child),
1239                                    _("E_xit"));
1240   gtk_widget_add_accelerator (popup_exit, "activate_item", intf_popup_accels,
1241                               tmp_key, 0, 0);
1242   gtk_widget_ref (popup_exit);
1243   gtk_object_set_data_full (GTK_OBJECT (intf_popup), "popup_exit", popup_exit,
1244                             (GtkDestroyNotify) gtk_widget_unref);
1245   gtk_widget_show (popup_exit);
1246   gtk_container_add (GTK_CONTAINER (intf_popup), popup_exit);
1247
1248   gtk_signal_connect (GTK_OBJECT (popup_play), "activate",
1249                       GTK_SIGNAL_FUNC (GtkPlayActivate),
1250                       "intf_popup");
1251   gtk_signal_connect (GTK_OBJECT (popup_pause), "activate",
1252                       GTK_SIGNAL_FUNC (GtkPauseActivate),
1253                       "intf_popup");
1254   gtk_signal_connect (GTK_OBJECT (popup_stop), "activate",
1255                       GTK_SIGNAL_FUNC (GtKStopActivate),
1256                       "intf_popup");
1257   gtk_signal_connect (GTK_OBJECT (popup_back), "activate",
1258                       GTK_SIGNAL_FUNC (GtkBackActivate),
1259                       "intf_popup");
1260   gtk_signal_connect (GTK_OBJECT (popup_slow), "activate",
1261                       GTK_SIGNAL_FUNC (GtkSlowActivate),
1262                       "intf_popup");
1263   gtk_signal_connect (GTK_OBJECT (popup_fast), "activate",
1264                       GTK_SIGNAL_FUNC (GtkFastActivate),
1265                       "intf_popup");
1266   gtk_signal_connect (GTK_OBJECT (popup_interface_toggle), "activate",
1267                       GTK_SIGNAL_FUNC (GtkWindowToggleActivate),
1268                       "intf_popup");
1269   gtk_signal_connect (GTK_OBJECT (popup_fullscreen), "activate",
1270                       GTK_SIGNAL_FUNC (GtkFullscreenActivate),
1271                       "intf_popup");
1272   gtk_signal_connect (GTK_OBJECT (popup_next), "activate",
1273                       GTK_SIGNAL_FUNC (GtkNextActivate),
1274                       "intf_popup");
1275   gtk_signal_connect (GTK_OBJECT (popup_prev), "activate",
1276                       GTK_SIGNAL_FUNC (GtkPrevActivate),
1277                       "intf_popup");
1278   gtk_signal_connect (GTK_OBJECT (popup_jump), "activate",
1279                       GTK_SIGNAL_FUNC (GtkJumpActivate),
1280                       "intf_popup");
1281   gtk_signal_connect (GTK_OBJECT (popup_file), "activate",
1282                       GTK_SIGNAL_FUNC (GtkFileOpenActivate),
1283                       "intf_popup");
1284   gtk_signal_connect (GTK_OBJECT (popup_disc), "activate",
1285                       GTK_SIGNAL_FUNC (GtkDiscOpenActivate),
1286                       "intf_popup");
1287   gtk_signal_connect (GTK_OBJECT (popup_network), "activate",
1288                       GTK_SIGNAL_FUNC (GtkNetworkOpenActivate),
1289                       "intf_popup");
1290   gtk_signal_connect (GTK_OBJECT (popup_about), "activate",
1291                       GTK_SIGNAL_FUNC (GtkAboutActivate),
1292                       "intf_popup");
1293   gtk_signal_connect (GTK_OBJECT (popup_playlist), "activate",
1294                       GTK_SIGNAL_FUNC (GtkPlaylistActivate),
1295                       "intf_popup");
1296   gtk_signal_connect (GTK_OBJECT (popup_preferences), "activate",
1297                       GTK_SIGNAL_FUNC (GtkPreferencesActivate),
1298                       "intf_popup");
1299   gtk_signal_connect (GTK_OBJECT (popup_exit), "activate",
1300                       GTK_SIGNAL_FUNC (GtkExitActivate),
1301                       "intf_popup");
1302
1303   gtk_object_set_data (GTK_OBJECT (intf_popup), "tooltips", tooltips);
1304
1305   return intf_popup;
1306 }
1307
1308 GtkWidget*
1309 create_intf_about (void)
1310 {
1311   GtkWidget *intf_about;
1312   GtkWidget *dialog_vbox1;
1313   GtkWidget *vbox3;
1314   GtkWidget *label14;
1315   GtkWidget *label18;
1316   GtkWidget *frame1;
1317   GtkWidget *label16;
1318   GtkWidget *label17;
1319   GtkWidget *dialog_action_area;
1320   GtkWidget *about_ok;
1321
1322   intf_about = gtk_dialog_new ();
1323   gtk_object_set_data (GTK_OBJECT (intf_about), "intf_about", intf_about);
1324   gtk_container_set_border_width (GTK_CONTAINER (intf_about), 5);
1325   gtk_window_set_title (GTK_WINDOW (intf_about), _("About"));
1326   gtk_window_set_position (GTK_WINDOW (intf_about), GTK_WIN_POS_CENTER);
1327   gtk_window_set_policy (GTK_WINDOW (intf_about), FALSE, FALSE, FALSE);
1328
1329   dialog_vbox1 = GTK_DIALOG (intf_about)->vbox;
1330   gtk_object_set_data (GTK_OBJECT (intf_about), "dialog_vbox1", dialog_vbox1);
1331   gtk_widget_show (dialog_vbox1);
1332
1333   vbox3 = gtk_vbox_new (FALSE, 0);
1334   gtk_widget_ref (vbox3);
1335   gtk_object_set_data_full (GTK_OBJECT (intf_about), "vbox3", vbox3,
1336                             (GtkDestroyNotify) gtk_widget_unref);
1337   gtk_widget_show (vbox3);
1338   gtk_box_pack_start (GTK_BOX (dialog_vbox1), vbox3, TRUE, TRUE, 0);
1339
1340   label14 = gtk_label_new (_("VideoLAN Client"));
1341   gtk_widget_ref (label14);
1342   gtk_object_set_data_full (GTK_OBJECT (intf_about), "label14", label14,
1343                             (GtkDestroyNotify) gtk_widget_unref);
1344   gtk_widget_show (label14);
1345   gtk_box_pack_start (GTK_BOX (vbox3), label14, TRUE, TRUE, 0);
1346   gtk_misc_set_padding (GTK_MISC (label14), 0, 10);
1347
1348   label18 = gtk_label_new (_("(C) 1996, 1997, 1998, 1999, 2000, 2001 - the VideoLAN Team"));
1349   gtk_widget_ref (label18);
1350   gtk_object_set_data_full (GTK_OBJECT (intf_about), "label18", label18,
1351                             (GtkDestroyNotify) gtk_widget_unref);
1352   gtk_widget_show (label18);
1353   gtk_box_pack_start (GTK_BOX (vbox3), label18, FALSE, FALSE, 0);
1354   gtk_label_set_justify (GTK_LABEL (label18), GTK_JUSTIFY_LEFT);
1355   gtk_misc_set_padding (GTK_MISC (label18), 0, 5);
1356
1357   frame1 = gtk_frame_new (_("Authors"));
1358   gtk_widget_ref (frame1);
1359   gtk_object_set_data_full (GTK_OBJECT (intf_about), "frame1", frame1,
1360                             (GtkDestroyNotify) gtk_widget_unref);
1361   gtk_widget_show (frame1);
1362   gtk_box_pack_start (GTK_BOX (vbox3), frame1, FALSE, FALSE, 0);
1363
1364   label16 = gtk_label_new (_("Régis Duchesne <regis@via.ecp.fr>\nMichel Lespinasse <walken@zoy.org>\nOlivier Pomel <pomel@via.ecp.fr>\nPierre Baillet <oct@zoy.org>\nJean-Philippe Grimaldi <jeanphi@via.ecp.fr>\nAndres Krapf <dae@via.ecp.fr>\nChristophe Massiot <massiot@via.ecp.fr>\nVincent Seguin <seguin@via.ecp.fr>\nBenoit Steiner <benny@via.ecp.fr>\nArnaud de Bossoreille de Ribou <bozo@via.ecp.fr>\nJean-Marc Dressler <polux@via.ecp.fr>\nGaël Hendryckx <jimmy@via.ecp.fr>\nSamuel Hocevar <sam@zoy.org>\nBrieuc Jeunhomme <bbp@via.ecp.fr>\nMichel Kaempf <maxx@via.ecp.fr>\nStéphane Borel <stef@via.ecp.fr>\nRenaud Dartus <reno@via.ecp.fr>\nHenri Fallon <henri@via.ecp.fr>"));
1365   gtk_widget_ref (label16);
1366   gtk_object_set_data_full (GTK_OBJECT (intf_about), "label16", label16,
1367                             (GtkDestroyNotify) gtk_widget_unref);
1368   gtk_widget_show (label16);
1369   gtk_container_add (GTK_CONTAINER (frame1), label16);
1370   gtk_label_set_justify (GTK_LABEL (label16), GTK_JUSTIFY_LEFT);
1371   gtk_misc_set_alignment (GTK_MISC (label16), 0.5, 0);
1372   gtk_misc_set_padding (GTK_MISC (label16), 5, 5);
1373
1374   label17 = gtk_label_new (_("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."));
1375   gtk_widget_ref (label17);
1376   gtk_object_set_data_full (GTK_OBJECT (intf_about), "label17", label17,
1377                             (GtkDestroyNotify) gtk_widget_unref);
1378   gtk_widget_show (label17);
1379   gtk_box_pack_start (GTK_BOX (vbox3), label17, FALSE, FALSE, 0);
1380   gtk_label_set_justify (GTK_LABEL (label17), GTK_JUSTIFY_LEFT);
1381   gtk_label_set_line_wrap (GTK_LABEL (label17), TRUE);
1382   gtk_misc_set_padding (GTK_MISC (label17), 0, 5);
1383
1384   dialog_action_area = GTK_DIALOG (intf_about)->action_area;
1385   gtk_object_set_data (GTK_OBJECT (intf_about), "dialog_action_area", dialog_action_area);
1386   gtk_widget_show (dialog_action_area);
1387   gtk_container_set_border_width (GTK_CONTAINER (dialog_action_area), 10);
1388
1389   about_ok = gtk_button_new_with_label (_("OK"));
1390   gtk_widget_ref (about_ok);
1391   gtk_object_set_data_full (GTK_OBJECT (intf_about), "about_ok", about_ok,
1392                             (GtkDestroyNotify) gtk_widget_unref);
1393   gtk_widget_show (about_ok);
1394   gtk_box_pack_start (GTK_BOX (dialog_action_area), about_ok, FALSE, TRUE, 0);
1395   GTK_WIDGET_SET_FLAGS (about_ok, GTK_CAN_DEFAULT);
1396
1397   gtk_signal_connect (GTK_OBJECT (about_ok), "clicked",
1398                       GTK_SIGNAL_FUNC (GtkAboutOk),
1399                       "intf_about");
1400
1401   gtk_widget_grab_default (about_ok);
1402   return intf_about;
1403 }
1404
1405 GtkWidget*
1406 create_intf_fileopen (void)
1407 {
1408   GtkWidget *intf_fileopen;
1409   GtkWidget *fileopen_ok;
1410   GtkWidget *fileopen_cancel;
1411
1412   intf_fileopen = gtk_file_selection_new (_("Select File"));
1413   gtk_object_set_data (GTK_OBJECT (intf_fileopen), "intf_fileopen", intf_fileopen);
1414   gtk_container_set_border_width (GTK_CONTAINER (intf_fileopen), 10);
1415   gtk_window_set_modal (GTK_WINDOW (intf_fileopen), TRUE);
1416
1417   fileopen_ok = GTK_FILE_SELECTION (intf_fileopen)->ok_button;
1418   gtk_object_set_data (GTK_OBJECT (intf_fileopen), "fileopen_ok", fileopen_ok);
1419   gtk_widget_show (fileopen_ok);
1420   GTK_WIDGET_SET_FLAGS (fileopen_ok, GTK_CAN_DEFAULT);
1421
1422   fileopen_cancel = GTK_FILE_SELECTION (intf_fileopen)->cancel_button;
1423   gtk_object_set_data (GTK_OBJECT (intf_fileopen), "fileopen_cancel", fileopen_cancel);
1424   gtk_widget_show (fileopen_cancel);
1425   GTK_WIDGET_SET_FLAGS (fileopen_cancel, GTK_CAN_DEFAULT);
1426
1427   gtk_signal_connect (GTK_OBJECT (fileopen_ok), "clicked",
1428                       GTK_SIGNAL_FUNC (GtkFileOpenOk),
1429                       "intf_fileopen");
1430   gtk_signal_connect (GTK_OBJECT (fileopen_cancel), "clicked",
1431                       GTK_SIGNAL_FUNC (GtkFileOpenCancel),
1432                       "intf_fileopen");
1433
1434   return intf_fileopen;
1435 }
1436
1437 GtkWidget*
1438 create_intf_disc (void)
1439 {
1440   GtkWidget *intf_disc;
1441   GtkWidget *dialog_vbox2;
1442   GtkWidget *vbox4;
1443   GtkWidget *hbox3;
1444   GtkWidget *frame2;
1445   GtkWidget *vbox5;
1446   GSList *disc_group = NULL;
1447   GtkWidget *disc_dvd;
1448   GtkWidget *disc_vcd;
1449   GtkWidget *frame3;
1450   GtkWidget *table1;
1451   GtkObject *disc_title_adj;
1452   GtkWidget *disc_title;
1453   GtkObject *disc_chapter_adj;
1454   GtkWidget *disc_chapter;
1455   GtkWidget *label20;
1456   GtkWidget *label21;
1457   GtkWidget *hbox2;
1458   GtkWidget *label19;
1459   GtkWidget *disc_name;
1460   GtkWidget *dialog_action_area1;
1461   GtkWidget *hbox1;
1462   GtkWidget *disc_ok;
1463   GtkWidget *disc_cancel;
1464
1465   intf_disc = gtk_dialog_new ();
1466   gtk_object_set_data (GTK_OBJECT (intf_disc), "intf_disc", intf_disc);
1467   gtk_window_set_title (GTK_WINDOW (intf_disc), _("Open Disc"));
1468   gtk_window_set_modal (GTK_WINDOW (intf_disc), TRUE);
1469   gtk_window_set_policy (GTK_WINDOW (intf_disc), FALSE, FALSE, FALSE);
1470
1471   dialog_vbox2 = GTK_DIALOG (intf_disc)->vbox;
1472   gtk_object_set_data (GTK_OBJECT (intf_disc), "dialog_vbox2", dialog_vbox2);
1473   gtk_widget_show (dialog_vbox2);
1474   gtk_container_set_border_width (GTK_CONTAINER (dialog_vbox2), 5);
1475
1476   vbox4 = gtk_vbox_new (FALSE, 5);
1477   gtk_widget_ref (vbox4);
1478   gtk_object_set_data_full (GTK_OBJECT (intf_disc), "vbox4", vbox4,
1479                             (GtkDestroyNotify) gtk_widget_unref);
1480   gtk_widget_show (vbox4);
1481   gtk_box_pack_start (GTK_BOX (dialog_vbox2), vbox4, TRUE, TRUE, 0);
1482   gtk_container_set_border_width (GTK_CONTAINER (vbox4), 5);
1483
1484   hbox3 = gtk_hbox_new (FALSE, 5);
1485   gtk_widget_ref (hbox3);
1486   gtk_object_set_data_full (GTK_OBJECT (intf_disc), "hbox3", hbox3,
1487                             (GtkDestroyNotify) gtk_widget_unref);
1488   gtk_widget_show (hbox3);
1489   gtk_box_pack_start (GTK_BOX (vbox4), hbox3, TRUE, TRUE, 0);
1490
1491   frame2 = gtk_frame_new (_("Disc type"));
1492   gtk_widget_ref (frame2);
1493   gtk_object_set_data_full (GTK_OBJECT (intf_disc), "frame2", frame2,
1494                             (GtkDestroyNotify) gtk_widget_unref);
1495   gtk_widget_show (frame2);
1496   gtk_box_pack_start (GTK_BOX (hbox3), frame2, TRUE, TRUE, 0);
1497
1498   vbox5 = gtk_vbox_new (FALSE, 0);
1499   gtk_widget_ref (vbox5);
1500   gtk_object_set_data_full (GTK_OBJECT (intf_disc), "vbox5", vbox5,
1501                             (GtkDestroyNotify) gtk_widget_unref);
1502   gtk_widget_show (vbox5);
1503   gtk_container_add (GTK_CONTAINER (frame2), vbox5);
1504
1505   disc_dvd = gtk_radio_button_new_with_label (disc_group, _("DVD"));
1506   disc_group = gtk_radio_button_group (GTK_RADIO_BUTTON (disc_dvd));
1507   gtk_widget_ref (disc_dvd);
1508   gtk_object_set_data_full (GTK_OBJECT (intf_disc), "disc_dvd", disc_dvd,
1509                             (GtkDestroyNotify) gtk_widget_unref);
1510   gtk_widget_show (disc_dvd);
1511   gtk_box_pack_start (GTK_BOX (vbox5), disc_dvd, FALSE, FALSE, 0);
1512
1513   disc_vcd = gtk_radio_button_new_with_label (disc_group, _("VCD"));
1514   disc_group = gtk_radio_button_group (GTK_RADIO_BUTTON (disc_vcd));
1515   gtk_widget_ref (disc_vcd);
1516   gtk_object_set_data_full (GTK_OBJECT (intf_disc), "disc_vcd", disc_vcd,
1517                             (GtkDestroyNotify) gtk_widget_unref);
1518   gtk_widget_show (disc_vcd);
1519   gtk_box_pack_start (GTK_BOX (vbox5), disc_vcd, FALSE, FALSE, 0);
1520
1521   frame3 = gtk_frame_new (_("Starting position"));
1522   gtk_widget_ref (frame3);
1523   gtk_object_set_data_full (GTK_OBJECT (intf_disc), "frame3", frame3,
1524                             (GtkDestroyNotify) gtk_widget_unref);
1525   gtk_widget_show (frame3);
1526   gtk_box_pack_start (GTK_BOX (hbox3), frame3, TRUE, TRUE, 0);
1527
1528   table1 = gtk_table_new (2, 2, FALSE);
1529   gtk_widget_ref (table1);
1530   gtk_object_set_data_full (GTK_OBJECT (intf_disc), "table1", table1,
1531                             (GtkDestroyNotify) gtk_widget_unref);
1532   gtk_widget_show (table1);
1533   gtk_container_add (GTK_CONTAINER (frame3), table1);
1534   gtk_container_set_border_width (GTK_CONTAINER (table1), 5);
1535   gtk_table_set_row_spacings (GTK_TABLE (table1), 5);
1536   gtk_table_set_col_spacings (GTK_TABLE (table1), 5);
1537
1538   disc_title_adj = gtk_adjustment_new (1, 1, 65536, 1, 10, 10);
1539   disc_title = gtk_spin_button_new (GTK_ADJUSTMENT (disc_title_adj), 1, 0);
1540   gtk_widget_ref (disc_title);
1541   gtk_object_set_data_full (GTK_OBJECT (intf_disc), "disc_title", disc_title,
1542                             (GtkDestroyNotify) gtk_widget_unref);
1543   gtk_widget_show (disc_title);
1544   gtk_table_attach (GTK_TABLE (table1), disc_title, 1, 2, 0, 1,
1545                     (GtkAttachOptions) (GTK_EXPAND | GTK_FILL),
1546                     (GtkAttachOptions) (0), 0, 0);
1547
1548   disc_chapter_adj = gtk_adjustment_new (1, 1, 65536, 1, 10, 10);
1549   disc_chapter = gtk_spin_button_new (GTK_ADJUSTMENT (disc_chapter_adj), 1, 0);
1550   gtk_widget_ref (disc_chapter);
1551   gtk_object_set_data_full (GTK_OBJECT (intf_disc), "disc_chapter", disc_chapter,
1552                             (GtkDestroyNotify) gtk_widget_unref);
1553   gtk_widget_show (disc_chapter);
1554   gtk_table_attach (GTK_TABLE (table1), disc_chapter, 1, 2, 1, 2,
1555                     (GtkAttachOptions) (GTK_EXPAND | GTK_FILL),
1556                     (GtkAttachOptions) (0), 0, 0);
1557
1558   label20 = gtk_label_new (_("Chapter"));
1559   gtk_widget_ref (label20);
1560   gtk_object_set_data_full (GTK_OBJECT (intf_disc), "label20", label20,
1561                             (GtkDestroyNotify) gtk_widget_unref);
1562   gtk_widget_show (label20);
1563   gtk_table_attach (GTK_TABLE (table1), label20, 0, 1, 1, 2,
1564                     (GtkAttachOptions) (GTK_FILL),
1565                     (GtkAttachOptions) (0), 0, 0);
1566   gtk_misc_set_alignment (GTK_MISC (label20), 0, 0.5);
1567
1568   label21 = gtk_label_new (_("Title"));
1569   gtk_widget_ref (label21);
1570   gtk_object_set_data_full (GTK_OBJECT (intf_disc), "label21", label21,
1571                             (GtkDestroyNotify) gtk_widget_unref);
1572   gtk_widget_show (label21);
1573   gtk_table_attach (GTK_TABLE (table1), label21, 0, 1, 0, 1,
1574                     (GtkAttachOptions) (GTK_FILL),
1575                     (GtkAttachOptions) (0), 0, 0);
1576   gtk_misc_set_alignment (GTK_MISC (label21), 0, 0.5);
1577
1578   hbox2 = gtk_hbox_new (FALSE, 5);
1579   gtk_widget_ref (hbox2);
1580   gtk_object_set_data_full (GTK_OBJECT (intf_disc), "hbox2", hbox2,
1581                             (GtkDestroyNotify) gtk_widget_unref);
1582   gtk_widget_show (hbox2);
1583   gtk_box_pack_start (GTK_BOX (vbox4), hbox2, TRUE, TRUE, 0);
1584
1585   label19 = gtk_label_new (_("Device name"));
1586   gtk_widget_ref (label19);
1587   gtk_object_set_data_full (GTK_OBJECT (intf_disc), "label19", label19,
1588                             (GtkDestroyNotify) gtk_widget_unref);
1589   gtk_widget_show (label19);
1590   gtk_box_pack_start (GTK_BOX (hbox2), label19, FALSE, FALSE, 0);
1591
1592   disc_name = gtk_entry_new ();
1593   gtk_widget_ref (disc_name);
1594   gtk_object_set_data_full (GTK_OBJECT (intf_disc), "disc_name", disc_name,
1595                             (GtkDestroyNotify) gtk_widget_unref);
1596   gtk_widget_show (disc_name);
1597   gtk_box_pack_start (GTK_BOX (hbox2), disc_name, TRUE, TRUE, 0);
1598   gtk_entry_set_text (GTK_ENTRY (disc_name), DVD_DEVICE);
1599
1600   dialog_action_area1 = GTK_DIALOG (intf_disc)->action_area;
1601   gtk_object_set_data (GTK_OBJECT (intf_disc), "dialog_action_area1", dialog_action_area1);
1602   gtk_widget_show (dialog_action_area1);
1603   gtk_container_set_border_width (GTK_CONTAINER (dialog_action_area1), 5);
1604
1605   hbox1 = gtk_hbox_new (TRUE, 5);
1606   gtk_widget_ref (hbox1);
1607   gtk_object_set_data_full (GTK_OBJECT (intf_disc), "hbox1", hbox1,
1608                             (GtkDestroyNotify) gtk_widget_unref);
1609   gtk_widget_show (hbox1);
1610   gtk_box_pack_end (GTK_BOX (dialog_action_area1), hbox1, FALSE, TRUE, 0);
1611
1612   disc_ok = gtk_button_new_with_label (_("OK"));
1613   gtk_widget_ref (disc_ok);
1614   gtk_object_set_data_full (GTK_OBJECT (intf_disc), "disc_ok", disc_ok,
1615                             (GtkDestroyNotify) gtk_widget_unref);
1616   gtk_widget_show (disc_ok);
1617   gtk_box_pack_start (GTK_BOX (hbox1), disc_ok, FALSE, TRUE, 0);
1618
1619   disc_cancel = gtk_button_new_with_label (_("Cancel"));
1620   gtk_widget_ref (disc_cancel);
1621   gtk_object_set_data_full (GTK_OBJECT (intf_disc), "disc_cancel", disc_cancel,
1622                             (GtkDestroyNotify) gtk_widget_unref);
1623   gtk_widget_show (disc_cancel);
1624   gtk_box_pack_start (GTK_BOX (hbox1), disc_cancel, FALSE, TRUE, 0);
1625
1626   gtk_signal_connect (GTK_OBJECT (disc_dvd), "toggled",
1627                       GTK_SIGNAL_FUNC (GtkDiscOpenDvd),
1628                       "intf_disc");
1629   gtk_signal_connect (GTK_OBJECT (disc_vcd), "toggled",
1630                       GTK_SIGNAL_FUNC (GtkDiscOpenVcd),
1631                       "intf_disc");
1632   gtk_signal_connect (GTK_OBJECT (disc_ok), "clicked",
1633                       GTK_SIGNAL_FUNC (GtkDiscOpenOk),
1634                       "intf_disc");
1635   gtk_signal_connect (GTK_OBJECT (disc_cancel), "clicked",
1636                       GTK_SIGNAL_FUNC (GtkDiscOpenCancel),
1637                       "intf_disc");
1638
1639   return intf_disc;
1640 }
1641
1642 GtkWidget*
1643 create_intf_network (void)
1644 {
1645   GtkWidget *intf_network;
1646   GtkWidget *vbox7;
1647   GtkWidget *vbox8;
1648   GtkWidget *hbox6;
1649   GtkWidget *frame4;
1650   GtkWidget *vbox9;
1651   GSList *network_group = NULL;
1652   GtkWidget *network_ts;
1653   GtkWidget *network_rtp;
1654   GtkWidget *network_http;
1655   GtkWidget *frame5;
1656   GtkWidget *table2;
1657   GtkObject *network_port_adj;
1658   GtkWidget *network_port;
1659   GtkWidget *network_port_label;
1660   GtkWidget *network_server_label;
1661   GtkWidget *network_broadcast_check;
1662   GtkWidget *network_broadcast_combo;
1663   GtkWidget *network_broadcast;
1664   GtkWidget *network_server_combo;
1665   GList *network_server_combo_items = NULL;
1666   GtkWidget *network_server;
1667   GtkWidget *frame6;
1668   GtkWidget *hbox14;
1669   GtkWidget *network_channel_check;
1670   GtkWidget *network_channel_combo;
1671   GtkWidget *network_channel;
1672   GtkWidget *network_channel_port_label;
1673   GtkObject *network_channel_port_adj;
1674   GtkWidget *network_channel_port;
1675   GtkWidget *hbox4;
1676   GtkWidget *hbox5;
1677   GtkWidget *network_ok;
1678   GtkWidget *network_cancel;
1679
1680   intf_network = gtk_dialog_new ();
1681   gtk_object_set_data (GTK_OBJECT (intf_network), "intf_network", intf_network);
1682   gtk_window_set_title (GTK_WINDOW (intf_network), _("Open Network"));
1683   gtk_window_set_modal (GTK_WINDOW (intf_network), TRUE);
1684   gtk_window_set_policy (GTK_WINDOW (intf_network), FALSE, FALSE, FALSE);
1685
1686   vbox7 = GTK_DIALOG (intf_network)->vbox;
1687   gtk_object_set_data (GTK_OBJECT (intf_network), "vbox7", vbox7);
1688   gtk_widget_show (vbox7);
1689   gtk_container_set_border_width (GTK_CONTAINER (vbox7), 5);
1690
1691   vbox8 = gtk_vbox_new (FALSE, 5);
1692   gtk_widget_ref (vbox8);
1693   gtk_object_set_data_full (GTK_OBJECT (intf_network), "vbox8", vbox8,
1694                             (GtkDestroyNotify) gtk_widget_unref);
1695   gtk_widget_show (vbox8);
1696   gtk_box_pack_start (GTK_BOX (vbox7), vbox8, TRUE, TRUE, 0);
1697   gtk_container_set_border_width (GTK_CONTAINER (vbox8), 5);
1698
1699   hbox6 = gtk_hbox_new (FALSE, 5);
1700   gtk_widget_ref (hbox6);
1701   gtk_object_set_data_full (GTK_OBJECT (intf_network), "hbox6", hbox6,
1702                             (GtkDestroyNotify) gtk_widget_unref);
1703   gtk_widget_show (hbox6);
1704   gtk_box_pack_start (GTK_BOX (vbox8), hbox6, TRUE, TRUE, 0);
1705
1706   frame4 = gtk_frame_new (_("Protocol"));
1707   gtk_widget_ref (frame4);
1708   gtk_object_set_data_full (GTK_OBJECT (intf_network), "frame4", frame4,
1709                             (GtkDestroyNotify) gtk_widget_unref);
1710   gtk_widget_show (frame4);
1711   gtk_box_pack_start (GTK_BOX (hbox6), frame4, TRUE, TRUE, 0);
1712
1713   vbox9 = gtk_vbox_new (FALSE, 0);
1714   gtk_widget_ref (vbox9);
1715   gtk_object_set_data_full (GTK_OBJECT (intf_network), "vbox9", vbox9,
1716                             (GtkDestroyNotify) gtk_widget_unref);
1717   gtk_widget_show (vbox9);
1718   gtk_container_add (GTK_CONTAINER (frame4), vbox9);
1719
1720   network_ts = gtk_radio_button_new_with_label (network_group, _("TS"));
1721   network_group = gtk_radio_button_group (GTK_RADIO_BUTTON (network_ts));
1722   gtk_widget_ref (network_ts);
1723   gtk_object_set_data_full (GTK_OBJECT (intf_network), "network_ts", network_ts,
1724                             (GtkDestroyNotify) gtk_widget_unref);
1725   gtk_widget_show (network_ts);
1726   gtk_box_pack_start (GTK_BOX (vbox9), network_ts, FALSE, FALSE, 0);
1727
1728   network_rtp = gtk_radio_button_new_with_label (network_group, _("RTP"));
1729   network_group = gtk_radio_button_group (GTK_RADIO_BUTTON (network_rtp));
1730   gtk_widget_ref (network_rtp);
1731   gtk_object_set_data_full (GTK_OBJECT (intf_network), "network_rtp", network_rtp,
1732                             (GtkDestroyNotify) gtk_widget_unref);
1733   gtk_widget_show (network_rtp);
1734   gtk_box_pack_start (GTK_BOX (vbox9), network_rtp, FALSE, FALSE, 0);
1735   gtk_widget_set_sensitive (network_rtp, FALSE);
1736
1737   network_http = gtk_radio_button_new_with_label (network_group, _("HTTP"));
1738   network_group = gtk_radio_button_group (GTK_RADIO_BUTTON (network_http));
1739   gtk_widget_ref (network_http);
1740   gtk_object_set_data_full (GTK_OBJECT (intf_network), "network_http", network_http,
1741                             (GtkDestroyNotify) gtk_widget_unref);
1742   gtk_widget_show (network_http);
1743   gtk_box_pack_start (GTK_BOX (vbox9), network_http, FALSE, FALSE, 0);
1744
1745   frame5 = gtk_frame_new (_("Server"));
1746   gtk_widget_ref (frame5);
1747   gtk_object_set_data_full (GTK_OBJECT (intf_network), "frame5", frame5,
1748                             (GtkDestroyNotify) gtk_widget_unref);
1749   gtk_widget_show (frame5);
1750   gtk_box_pack_start (GTK_BOX (hbox6), frame5, TRUE, TRUE, 0);
1751
1752   table2 = gtk_table_new (3, 2, FALSE);
1753   gtk_widget_ref (table2);
1754   gtk_object_set_data_full (GTK_OBJECT (intf_network), "table2", table2,
1755                             (GtkDestroyNotify) gtk_widget_unref);
1756   gtk_widget_show (table2);
1757   gtk_container_add (GTK_CONTAINER (frame5), table2);
1758   gtk_container_set_border_width (GTK_CONTAINER (table2), 5);
1759   gtk_table_set_row_spacings (GTK_TABLE (table2), 5);
1760   gtk_table_set_col_spacings (GTK_TABLE (table2), 5);
1761
1762   network_port_adj = gtk_adjustment_new (1234, 0, 65535, 1, 10, 10);
1763   network_port = gtk_spin_button_new (GTK_ADJUSTMENT (network_port_adj), 1, 0);
1764   gtk_widget_ref (network_port);
1765   gtk_object_set_data_full (GTK_OBJECT (intf_network), "network_port", network_port,
1766                             (GtkDestroyNotify) gtk_widget_unref);
1767   gtk_widget_show (network_port);
1768   gtk_table_attach (GTK_TABLE (table2), network_port, 1, 2, 1, 2,
1769                     (GtkAttachOptions) (GTK_EXPAND | GTK_FILL),
1770                     (GtkAttachOptions) (0), 0, 0);
1771
1772   network_port_label = gtk_label_new (_("Port"));
1773   gtk_widget_ref (network_port_label);
1774   gtk_object_set_data_full (GTK_OBJECT (intf_network), "network_port_label", network_port_label,
1775                             (GtkDestroyNotify) gtk_widget_unref);
1776   gtk_widget_show (network_port_label);
1777   gtk_table_attach (GTK_TABLE (table2), network_port_label, 0, 1, 1, 2,
1778                     (GtkAttachOptions) (GTK_FILL),
1779                     (GtkAttachOptions) (0), 0, 0);
1780   gtk_misc_set_alignment (GTK_MISC (network_port_label), 0, 0.5);
1781
1782   network_server_label = gtk_label_new (_("Address"));
1783   gtk_widget_ref (network_server_label);
1784   gtk_object_set_data_full (GTK_OBJECT (intf_network), "network_server_label", network_server_label,
1785                             (GtkDestroyNotify) gtk_widget_unref);
1786   gtk_widget_show (network_server_label);
1787   gtk_table_attach (GTK_TABLE (table2), network_server_label, 0, 1, 0, 1,
1788                     (GtkAttachOptions) (GTK_FILL),
1789                     (GtkAttachOptions) (0), 0, 0);
1790   gtk_misc_set_alignment (GTK_MISC (network_server_label), 0, 0.5);
1791
1792   network_broadcast_check = gtk_check_button_new_with_label (_("Broadcast"));
1793   gtk_widget_ref (network_broadcast_check);
1794   gtk_object_set_data_full (GTK_OBJECT (intf_network), "network_broadcast_check", network_broadcast_check,
1795                             (GtkDestroyNotify) gtk_widget_unref);
1796   gtk_widget_show (network_broadcast_check);
1797   gtk_table_attach (GTK_TABLE (table2), network_broadcast_check, 0, 1, 2, 3,
1798                     (GtkAttachOptions) (GTK_FILL),
1799                     (GtkAttachOptions) (0), 0, 0);
1800
1801   network_broadcast_combo = gtk_combo_new ();
1802   gtk_widget_ref (network_broadcast_combo);
1803   gtk_object_set_data_full (GTK_OBJECT (intf_network), "network_broadcast_combo", network_broadcast_combo,
1804                             (GtkDestroyNotify) gtk_widget_unref);
1805   gtk_widget_show (network_broadcast_combo);
1806   gtk_table_attach (GTK_TABLE (table2), network_broadcast_combo, 1, 2, 2, 3,
1807                     (GtkAttachOptions) (GTK_EXPAND | GTK_FILL),
1808                     (GtkAttachOptions) (0), 0, 0);
1809   gtk_widget_set_sensitive (network_broadcast_combo, FALSE);
1810
1811   network_broadcast = GTK_COMBO (network_broadcast_combo)->entry;
1812   gtk_widget_ref (network_broadcast);
1813   gtk_object_set_data_full (GTK_OBJECT (intf_network), "network_broadcast", network_broadcast,
1814                             (GtkDestroyNotify) gtk_widget_unref);
1815   gtk_widget_show (network_broadcast);
1816   gtk_widget_set_sensitive (network_broadcast, FALSE);
1817   gtk_entry_set_text (GTK_ENTRY (network_broadcast), _("138.195.143.255"));
1818
1819   network_server_combo = gtk_combo_new ();
1820   gtk_widget_ref (network_server_combo);
1821   gtk_object_set_data_full (GTK_OBJECT (intf_network), "network_server_combo", network_server_combo,
1822                             (GtkDestroyNotify) gtk_widget_unref);
1823   gtk_widget_show (network_server_combo);
1824   gtk_table_attach (GTK_TABLE (table2), network_server_combo, 1, 2, 0, 1,
1825                     (GtkAttachOptions) (GTK_EXPAND | GTK_FILL),
1826                     (GtkAttachOptions) (0), 0, 0);
1827   network_server_combo_items = g_list_append (network_server_combo_items, (gpointer) _("vls"));
1828   gtk_combo_set_popdown_strings (GTK_COMBO (network_server_combo), network_server_combo_items);
1829   g_list_free (network_server_combo_items);
1830
1831   network_server = GTK_COMBO (network_server_combo)->entry;
1832   gtk_widget_ref (network_server);
1833   gtk_object_set_data_full (GTK_OBJECT (intf_network), "network_server", network_server,
1834                             (GtkDestroyNotify) gtk_widget_unref);
1835   gtk_widget_show (network_server);
1836   gtk_entry_set_text (GTK_ENTRY (network_server), _("vls"));
1837
1838   frame6 = gtk_frame_new (_("Channels"));
1839   gtk_widget_ref (frame6);
1840   gtk_object_set_data_full (GTK_OBJECT (intf_network), "frame6", frame6,
1841                             (GtkDestroyNotify) gtk_widget_unref);
1842   gtk_widget_show (frame6);
1843   gtk_box_pack_start (GTK_BOX (vbox8), frame6, TRUE, TRUE, 5);
1844   gtk_frame_set_label_align (GTK_FRAME (frame6), 0.05, 0.5);
1845
1846   hbox14 = gtk_hbox_new (FALSE, 0);
1847   gtk_widget_ref (hbox14);
1848   gtk_object_set_data_full (GTK_OBJECT (intf_network), "hbox14", hbox14,
1849                             (GtkDestroyNotify) gtk_widget_unref);
1850   gtk_widget_show (hbox14);
1851   gtk_container_add (GTK_CONTAINER (frame6), hbox14);
1852
1853   network_channel_check = gtk_check_button_new_with_label (_("Channel server:"));
1854   gtk_widget_ref (network_channel_check);
1855   gtk_object_set_data_full (GTK_OBJECT (intf_network), "network_channel_check", network_channel_check,
1856                             (GtkDestroyNotify) gtk_widget_unref);
1857   gtk_widget_show (network_channel_check);
1858   gtk_box_pack_start (GTK_BOX (hbox14), network_channel_check, FALSE, FALSE, 0);
1859
1860   network_channel_combo = gtk_combo_new ();
1861   gtk_widget_ref (network_channel_combo);
1862   gtk_object_set_data_full (GTK_OBJECT (intf_network), "network_channel_combo", network_channel_combo,
1863                             (GtkDestroyNotify) gtk_widget_unref);
1864   gtk_widget_show (network_channel_combo);
1865   gtk_box_pack_start (GTK_BOX (hbox14), network_channel_combo, TRUE, TRUE, 0);
1866
1867   network_channel = GTK_COMBO (network_channel_combo)->entry;
1868   gtk_widget_ref (network_channel);
1869   gtk_object_set_data_full (GTK_OBJECT (intf_network), "network_channel", network_channel,
1870                             (GtkDestroyNotify) gtk_widget_unref);
1871   gtk_widget_show (network_channel);
1872   gtk_entry_set_text (GTK_ENTRY (network_channel), _("138.195.143.120"));
1873
1874   network_channel_port_label = gtk_label_new (_("port:"));
1875   gtk_widget_ref (network_channel_port_label);
1876   gtk_object_set_data_full (GTK_OBJECT (intf_network), "network_channel_port_label", network_channel_port_label,
1877                             (GtkDestroyNotify) gtk_widget_unref);
1878   gtk_widget_show (network_channel_port_label);
1879   gtk_box_pack_start (GTK_BOX (hbox14), network_channel_port_label, FALSE, FALSE, 5);
1880
1881   network_channel_port_adj = gtk_adjustment_new (6010, 1024, 100, 1, 10, 10);
1882   network_channel_port = gtk_spin_button_new (GTK_ADJUSTMENT (network_channel_port_adj), 1, 0);
1883   gtk_widget_ref (network_channel_port);
1884   gtk_object_set_data_full (GTK_OBJECT (intf_network), "network_channel_port", network_channel_port,
1885                             (GtkDestroyNotify) gtk_widget_unref);
1886   gtk_widget_show (network_channel_port);
1887   gtk_box_pack_start (GTK_BOX (hbox14), network_channel_port, TRUE, TRUE, 0);
1888   gtk_widget_set_usize (network_channel_port, 62, -2);
1889
1890   hbox4 = GTK_DIALOG (intf_network)->action_area;
1891   gtk_object_set_data (GTK_OBJECT (intf_network), "hbox4", hbox4);
1892   gtk_widget_show (hbox4);
1893   gtk_container_set_border_width (GTK_CONTAINER (hbox4), 5);
1894
1895   hbox5 = gtk_hbox_new (TRUE, 5);
1896   gtk_widget_ref (hbox5);
1897   gtk_object_set_data_full (GTK_OBJECT (intf_network), "hbox5", hbox5,
1898                             (GtkDestroyNotify) gtk_widget_unref);
1899   gtk_widget_show (hbox5);
1900   gtk_box_pack_end (GTK_BOX (hbox4), hbox5, FALSE, TRUE, 0);
1901
1902   network_ok = gtk_button_new_with_label (_("OK"));
1903   gtk_widget_ref (network_ok);
1904   gtk_object_set_data_full (GTK_OBJECT (intf_network), "network_ok", network_ok,
1905                             (GtkDestroyNotify) gtk_widget_unref);
1906   gtk_widget_show (network_ok);
1907   gtk_box_pack_start (GTK_BOX (hbox5), network_ok, FALSE, TRUE, 0);
1908
1909   network_cancel = gtk_button_new_with_label (_("Cancel"));
1910   gtk_widget_ref (network_cancel);
1911   gtk_object_set_data_full (GTK_OBJECT (intf_network), "network_cancel", network_cancel,
1912                             (GtkDestroyNotify) gtk_widget_unref);
1913   gtk_widget_show (network_cancel);
1914   gtk_box_pack_start (GTK_BOX (hbox5), network_cancel, FALSE, TRUE, 0);
1915
1916   gtk_signal_connect (GTK_OBJECT (network_broadcast_check), "toggled",
1917                       GTK_SIGNAL_FUNC (GtkNetworkOpenBroadcast),
1918                       "intf_network");
1919   gtk_signal_connect (GTK_OBJECT (network_channel_check), "toggled",
1920                       GTK_SIGNAL_FUNC (GtkNetworkOpenChannel),
1921                       "intf_network");
1922   gtk_signal_connect (GTK_OBJECT (network_ok), "clicked",
1923                       GTK_SIGNAL_FUNC (GtkNetworkOpenOk),
1924                       "intf_network");
1925   gtk_signal_connect (GTK_OBJECT (network_cancel), "clicked",
1926                       GTK_SIGNAL_FUNC (GtkNetworkOpenCancel),
1927                       "intf_network");
1928
1929   return intf_network;
1930 }
1931
1932 GtkWidget*
1933 create_intf_jump (void)
1934 {
1935   GtkWidget *intf_jump;
1936   GtkWidget *dialog_vbox3;
1937   GtkWidget *jump_frame;
1938   GtkWidget *hbox13;
1939   GtkWidget *jump_second_label;
1940   GtkObject *jump_second_spinbutton_adj;
1941   GtkWidget *jump_second_spinbutton;
1942   GtkWidget *jump_minute_label;
1943   GtkObject *jump_minute_spinbutton_adj;
1944   GtkWidget *jump_minute_spinbutton;
1945   GtkWidget *jump_hour_label;
1946   GtkObject *jump_hour_spinbutton_adj;
1947   GtkWidget *jump_hour_spinbutton;
1948   GtkWidget *dialog_action_area2;
1949   GtkWidget *jump_ok_button;
1950   GtkWidget *jump_cancel_button;
1951
1952   intf_jump = gtk_dialog_new ();
1953   gtk_object_set_data (GTK_OBJECT (intf_jump), "intf_jump", intf_jump);
1954   gtk_window_set_title (GTK_WINDOW (intf_jump), _("Jump"));
1955   gtk_window_set_policy (GTK_WINDOW (intf_jump), TRUE, TRUE, FALSE);
1956
1957   dialog_vbox3 = GTK_DIALOG (intf_jump)->vbox;
1958   gtk_object_set_data (GTK_OBJECT (intf_jump), "dialog_vbox3", dialog_vbox3);
1959   gtk_widget_show (dialog_vbox3);
1960
1961   jump_frame = gtk_frame_new (_("Go to:"));
1962   gtk_widget_ref (jump_frame);
1963   gtk_object_set_data_full (GTK_OBJECT (intf_jump), "jump_frame", jump_frame,
1964                             (GtkDestroyNotify) gtk_widget_unref);
1965   gtk_widget_show (jump_frame);
1966   gtk_box_pack_start (GTK_BOX (dialog_vbox3), jump_frame, TRUE, TRUE, 0);
1967   gtk_container_set_border_width (GTK_CONTAINER (jump_frame), 5);
1968   gtk_frame_set_label_align (GTK_FRAME (jump_frame), 0.05, 0.5);
1969
1970   hbox13 = gtk_hbox_new (FALSE, 0);
1971   gtk_widget_ref (hbox13);
1972   gtk_object_set_data_full (GTK_OBJECT (intf_jump), "hbox13", hbox13,
1973                             (GtkDestroyNotify) gtk_widget_unref);
1974   gtk_widget_show (hbox13);
1975   gtk_container_add (GTK_CONTAINER (jump_frame), hbox13);
1976
1977   jump_second_label = gtk_label_new (_("s."));
1978   gtk_widget_ref (jump_second_label);
1979   gtk_object_set_data_full (GTK_OBJECT (intf_jump), "jump_second_label", jump_second_label,
1980                             (GtkDestroyNotify) gtk_widget_unref);
1981   gtk_widget_show (jump_second_label);
1982   gtk_box_pack_end (GTK_BOX (hbox13), jump_second_label, FALSE, FALSE, 5);
1983
1984   jump_second_spinbutton_adj = gtk_adjustment_new (0, 0, 60, 1, 10, 10);
1985   jump_second_spinbutton = gtk_spin_button_new (GTK_ADJUSTMENT (jump_second_spinbutton_adj), 1, 0);
1986   gtk_widget_ref (jump_second_spinbutton);
1987   gtk_object_set_data_full (GTK_OBJECT (intf_jump), "jump_second_spinbutton", jump_second_spinbutton,
1988                             (GtkDestroyNotify) gtk_widget_unref);
1989   gtk_widget_show (jump_second_spinbutton);
1990   gtk_box_pack_end (GTK_BOX (hbox13), jump_second_spinbutton, FALSE, TRUE, 0);
1991
1992   jump_minute_label = gtk_label_new (_("m:"));
1993   gtk_widget_ref (jump_minute_label);
1994   gtk_object_set_data_full (GTK_OBJECT (intf_jump), "jump_minute_label", jump_minute_label,
1995                             (GtkDestroyNotify) gtk_widget_unref);
1996   gtk_widget_show (jump_minute_label);
1997   gtk_box_pack_end (GTK_BOX (hbox13), jump_minute_label, FALSE, FALSE, 5);
1998
1999   jump_minute_spinbutton_adj = gtk_adjustment_new (0, 0, 60, 1, 10, 10);
2000   jump_minute_spinbutton = gtk_spin_button_new (GTK_ADJUSTMENT (jump_minute_spinbutton_adj), 1, 0);
2001   gtk_widget_ref (jump_minute_spinbutton);
2002   gtk_object_set_data_full (GTK_OBJECT (intf_jump), "jump_minute_spinbutton", jump_minute_spinbutton,
2003                             (GtkDestroyNotify) gtk_widget_unref);
2004   gtk_widget_show (jump_minute_spinbutton);
2005   gtk_box_pack_end (GTK_BOX (hbox13), jump_minute_spinbutton, FALSE, TRUE, 0);
2006
2007   jump_hour_label = gtk_label_new (_("h:"));
2008   gtk_widget_ref (jump_hour_label);
2009   gtk_object_set_data_full (GTK_OBJECT (intf_jump), "jump_hour_label", jump_hour_label,
2010                             (GtkDestroyNotify) gtk_widget_unref);
2011   gtk_widget_show (jump_hour_label);
2012   gtk_box_pack_end (GTK_BOX (hbox13), jump_hour_label, FALSE, FALSE, 5);
2013
2014   jump_hour_spinbutton_adj = gtk_adjustment_new (0, 0, 12, 1, 10, 10);
2015   jump_hour_spinbutton = gtk_spin_button_new (GTK_ADJUSTMENT (jump_hour_spinbutton_adj), 1, 0);
2016   gtk_widget_ref (jump_hour_spinbutton);
2017   gtk_object_set_data_full (GTK_OBJECT (intf_jump), "jump_hour_spinbutton", jump_hour_spinbutton,
2018                             (GtkDestroyNotify) gtk_widget_unref);
2019   gtk_widget_show (jump_hour_spinbutton);
2020   gtk_box_pack_end (GTK_BOX (hbox13), jump_hour_spinbutton, FALSE, TRUE, 0);
2021
2022   dialog_action_area2 = GTK_DIALOG (intf_jump)->action_area;
2023   gtk_object_set_data (GTK_OBJECT (intf_jump), "dialog_action_area2", dialog_action_area2);
2024   gtk_widget_show (dialog_action_area2);
2025   gtk_container_set_border_width (GTK_CONTAINER (dialog_action_area2), 10);
2026
2027   jump_ok_button = gtk_button_new_with_label (_("Ok"));
2028   gtk_widget_ref (jump_ok_button);
2029   gtk_object_set_data_full (GTK_OBJECT (intf_jump), "jump_ok_button", jump_ok_button,
2030                             (GtkDestroyNotify) gtk_widget_unref);
2031   gtk_widget_show (jump_ok_button);
2032   gtk_box_pack_start (GTK_BOX (dialog_action_area2), jump_ok_button, TRUE, TRUE, 0);
2033
2034   jump_cancel_button = gtk_button_new_with_label (_("Cancel"));
2035   gtk_widget_ref (jump_cancel_button);
2036   gtk_object_set_data_full (GTK_OBJECT (intf_jump), "jump_cancel_button", jump_cancel_button,
2037                             (GtkDestroyNotify) gtk_widget_unref);
2038   gtk_widget_show (jump_cancel_button);
2039   gtk_box_pack_start (GTK_BOX (dialog_action_area2), jump_cancel_button, TRUE, TRUE, 0);
2040
2041   gtk_signal_connect (GTK_OBJECT (jump_ok_button), "clicked",
2042                       GTK_SIGNAL_FUNC (GtkJumpOk),
2043                       "intf_jump");
2044   gtk_signal_connect (GTK_OBJECT (jump_cancel_button), "clicked",
2045                       GTK_SIGNAL_FUNC (GtkJumpCancel),
2046                       "intf_jump");
2047
2048   return intf_jump;
2049 }
2050
2051 GtkWidget*
2052 create_intf_playlist (void)
2053 {
2054   GtkWidget *intf_playlist;
2055   GtkWidget *dialog_vbox4;
2056   GtkWidget *playlist_menubar;
2057   GtkWidget *playlist_add;
2058   GtkWidget *playlist_add_menu;
2059   GtkAccelGroup *playlist_add_menu_accels;
2060   GtkWidget *playlist_add_disc;
2061   GtkWidget *playlist_add_file;
2062   GtkWidget *playlist_add_network;
2063   GtkWidget *playlist_add_url;
2064   GtkWidget *playlist_delete;
2065   GtkWidget *playlist_delete_menu;
2066   GtkAccelGroup *playlist_delete_menu_accels;
2067   GtkWidget *playlist_delete_all;
2068   GtkWidget *playlist_delete_selected;
2069   GtkWidget *playlist_selection;
2070   GtkWidget *playlist_selection_menu;
2071   GtkAccelGroup *playlist_selection_menu_accels;
2072   guint tmp_key;
2073   GtkWidget *playlist_selection_crop;
2074   GtkWidget *playlist_selection_invert;
2075   GtkWidget *playlist_selection_select;
2076   GtkWidget *scrolledwindow1;
2077   GtkWidget *playlist_clist;
2078   GtkWidget *label22;
2079   GtkWidget *label23;
2080   GtkWidget *dialog_action_area3;
2081   GtkWidget *playlist_ok_button;
2082   GtkWidget *playlist_cancel_button;
2083
2084   intf_playlist = gtk_dialog_new ();
2085   gtk_object_set_data (GTK_OBJECT (intf_playlist), "intf_playlist", intf_playlist);
2086   gtk_window_set_title (GTK_WINDOW (intf_playlist), _("Playlist"));
2087   gtk_window_set_default_size (GTK_WINDOW (intf_playlist), 400, 300);
2088   gtk_window_set_policy (GTK_WINDOW (intf_playlist), TRUE, TRUE, FALSE);
2089
2090   dialog_vbox4 = GTK_DIALOG (intf_playlist)->vbox;
2091   gtk_object_set_data (GTK_OBJECT (intf_playlist), "dialog_vbox4", dialog_vbox4);
2092   gtk_widget_show (dialog_vbox4);
2093
2094   playlist_menubar = gtk_menu_bar_new ();
2095   gtk_widget_ref (playlist_menubar);
2096   gtk_object_set_data_full (GTK_OBJECT (intf_playlist), "playlist_menubar", playlist_menubar,
2097                             (GtkDestroyNotify) gtk_widget_unref);
2098   gtk_widget_show (playlist_menubar);
2099   gtk_box_pack_start (GTK_BOX (dialog_vbox4), playlist_menubar, FALSE, FALSE, 0);
2100
2101   playlist_add = gtk_menu_item_new_with_label (_("Add"));
2102   gtk_widget_ref (playlist_add);
2103   gtk_object_set_data_full (GTK_OBJECT (intf_playlist), "playlist_add", playlist_add,
2104                             (GtkDestroyNotify) gtk_widget_unref);
2105   gtk_widget_show (playlist_add);
2106   gtk_container_add (GTK_CONTAINER (playlist_menubar), playlist_add);
2107
2108   playlist_add_menu = gtk_menu_new ();
2109   gtk_widget_ref (playlist_add_menu);
2110   gtk_object_set_data_full (GTK_OBJECT (intf_playlist), "playlist_add_menu", playlist_add_menu,
2111                             (GtkDestroyNotify) gtk_widget_unref);
2112   gtk_menu_item_set_submenu (GTK_MENU_ITEM (playlist_add), playlist_add_menu);
2113   playlist_add_menu_accels = gtk_menu_ensure_uline_accel_group (GTK_MENU (playlist_add_menu));
2114
2115   playlist_add_disc = gtk_menu_item_new_with_label (_("Disc"));
2116   gtk_widget_ref (playlist_add_disc);
2117   gtk_object_set_data_full (GTK_OBJECT (intf_playlist), "playlist_add_disc", playlist_add_disc,
2118                             (GtkDestroyNotify) gtk_widget_unref);
2119   gtk_widget_show (playlist_add_disc);
2120   gtk_container_add (GTK_CONTAINER (playlist_add_menu), playlist_add_disc);
2121
2122   playlist_add_file = gtk_menu_item_new_with_label (_("File"));
2123   gtk_widget_ref (playlist_add_file);
2124   gtk_object_set_data_full (GTK_OBJECT (intf_playlist), "playlist_add_file", playlist_add_file,
2125                             (GtkDestroyNotify) gtk_widget_unref);
2126   gtk_widget_show (playlist_add_file);
2127   gtk_container_add (GTK_CONTAINER (playlist_add_menu), playlist_add_file);
2128
2129   playlist_add_network = gtk_menu_item_new_with_label (_("Network"));
2130   gtk_widget_ref (playlist_add_network);
2131   gtk_object_set_data_full (GTK_OBJECT (intf_playlist), "playlist_add_network", playlist_add_network,
2132                             (GtkDestroyNotify) gtk_widget_unref);
2133   gtk_widget_show (playlist_add_network);
2134   gtk_container_add (GTK_CONTAINER (playlist_add_menu), playlist_add_network);
2135
2136   playlist_add_url = gtk_menu_item_new_with_label (_("Url"));
2137   gtk_widget_ref (playlist_add_url);
2138   gtk_object_set_data_full (GTK_OBJECT (intf_playlist), "playlist_add_url", playlist_add_url,
2139                             (GtkDestroyNotify) gtk_widget_unref);
2140   gtk_widget_show (playlist_add_url);
2141   gtk_container_add (GTK_CONTAINER (playlist_add_menu), playlist_add_url);
2142
2143   playlist_delete = gtk_menu_item_new_with_label (_("Delete"));
2144   gtk_widget_ref (playlist_delete);
2145   gtk_object_set_data_full (GTK_OBJECT (intf_playlist), "playlist_delete", playlist_delete,
2146                             (GtkDestroyNotify) gtk_widget_unref);
2147   gtk_widget_show (playlist_delete);
2148   gtk_container_add (GTK_CONTAINER (playlist_menubar), playlist_delete);
2149
2150   playlist_delete_menu = gtk_menu_new ();
2151   gtk_widget_ref (playlist_delete_menu);
2152   gtk_object_set_data_full (GTK_OBJECT (intf_playlist), "playlist_delete_menu", playlist_delete_menu,
2153                             (GtkDestroyNotify) gtk_widget_unref);
2154   gtk_menu_item_set_submenu (GTK_MENU_ITEM (playlist_delete), playlist_delete_menu);
2155   playlist_delete_menu_accels = gtk_menu_ensure_uline_accel_group (GTK_MENU (playlist_delete_menu));
2156
2157   playlist_delete_all = gtk_menu_item_new_with_label (_("All"));
2158   gtk_widget_ref (playlist_delete_all);
2159   gtk_object_set_data_full (GTK_OBJECT (intf_playlist), "playlist_delete_all", playlist_delete_all,
2160                             (GtkDestroyNotify) gtk_widget_unref);
2161   gtk_widget_show (playlist_delete_all);
2162   gtk_container_add (GTK_CONTAINER (playlist_delete_menu), playlist_delete_all);
2163
2164   playlist_delete_selected = gtk_menu_item_new_with_label (_("Selected"));
2165   gtk_widget_ref (playlist_delete_selected);
2166   gtk_object_set_data_full (GTK_OBJECT (intf_playlist), "playlist_delete_selected", playlist_delete_selected,
2167                             (GtkDestroyNotify) gtk_widget_unref);
2168   gtk_widget_show (playlist_delete_selected);
2169   gtk_container_add (GTK_CONTAINER (playlist_delete_menu), playlist_delete_selected);
2170
2171   playlist_selection = gtk_menu_item_new_with_label (_("Selection"));
2172   gtk_widget_ref (playlist_selection);
2173   gtk_object_set_data_full (GTK_OBJECT (intf_playlist), "playlist_selection", playlist_selection,
2174                             (GtkDestroyNotify) gtk_widget_unref);
2175   gtk_widget_show (playlist_selection);
2176   gtk_container_add (GTK_CONTAINER (playlist_menubar), playlist_selection);
2177
2178   playlist_selection_menu = gtk_menu_new ();
2179   gtk_widget_ref (playlist_selection_menu);
2180   gtk_object_set_data_full (GTK_OBJECT (intf_playlist), "playlist_selection_menu", playlist_selection_menu,
2181                             (GtkDestroyNotify) gtk_widget_unref);
2182   gtk_menu_item_set_submenu (GTK_MENU_ITEM (playlist_selection), playlist_selection_menu);
2183   playlist_selection_menu_accels = gtk_menu_ensure_uline_accel_group (GTK_MENU (playlist_selection_menu));
2184
2185   playlist_selection_crop = gtk_menu_item_new_with_label ("");
2186   tmp_key = gtk_label_parse_uline (GTK_LABEL (GTK_BIN (playlist_selection_crop)->child),
2187                                    _("_Crop"));
2188   gtk_widget_add_accelerator (playlist_selection_crop, "activate_item", playlist_selection_menu_accels,
2189                               tmp_key, 0, 0);
2190   gtk_widget_ref (playlist_selection_crop);
2191   gtk_object_set_data_full (GTK_OBJECT (intf_playlist), "playlist_selection_crop", playlist_selection_crop,
2192                             (GtkDestroyNotify) gtk_widget_unref);
2193   gtk_widget_show (playlist_selection_crop);
2194   gtk_container_add (GTK_CONTAINER (playlist_selection_menu), playlist_selection_crop);
2195
2196   playlist_selection_invert = gtk_menu_item_new_with_label ("");
2197   tmp_key = gtk_label_parse_uline (GTK_LABEL (GTK_BIN (playlist_selection_invert)->child),
2198                                    _("_Invert"));
2199   gtk_widget_add_accelerator (playlist_selection_invert, "activate_item", playlist_selection_menu_accels,
2200                               tmp_key, 0, 0);
2201   gtk_widget_ref (playlist_selection_invert);
2202   gtk_object_set_data_full (GTK_OBJECT (intf_playlist), "playlist_selection_invert", playlist_selection_invert,
2203                             (GtkDestroyNotify) gtk_widget_unref);
2204   gtk_widget_show (playlist_selection_invert);
2205   gtk_container_add (GTK_CONTAINER (playlist_selection_menu), playlist_selection_invert);
2206
2207   playlist_selection_select = gtk_menu_item_new_with_label ("");
2208   tmp_key = gtk_label_parse_uline (GTK_LABEL (GTK_BIN (playlist_selection_select)->child),
2209                                    _("_Select"));
2210   gtk_widget_add_accelerator (playlist_selection_select, "activate_item", playlist_selection_menu_accels,
2211                               tmp_key, 0, 0);
2212   gtk_widget_ref (playlist_selection_select);
2213   gtk_object_set_data_full (GTK_OBJECT (intf_playlist), "playlist_selection_select", playlist_selection_select,
2214                             (GtkDestroyNotify) gtk_widget_unref);
2215   gtk_widget_show (playlist_selection_select);
2216   gtk_container_add (GTK_CONTAINER (playlist_selection_menu), playlist_selection_select);
2217
2218   scrolledwindow1 = gtk_scrolled_window_new (NULL, NULL);
2219   gtk_widget_ref (scrolledwindow1);
2220   gtk_object_set_data_full (GTK_OBJECT (intf_playlist), "scrolledwindow1", scrolledwindow1,
2221                             (GtkDestroyNotify) gtk_widget_unref);
2222   gtk_widget_show (scrolledwindow1);
2223   gtk_box_pack_start (GTK_BOX (dialog_vbox4), scrolledwindow1, TRUE, TRUE, 0);
2224   gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (scrolledwindow1), GTK_POLICY_AUTOMATIC, GTK_POLICY_AUTOMATIC);
2225
2226   playlist_clist = gtk_clist_new (2);
2227   gtk_widget_ref (playlist_clist);
2228   gtk_object_set_data_full (GTK_OBJECT (intf_playlist), "playlist_clist", playlist_clist,
2229                             (GtkDestroyNotify) gtk_widget_unref);
2230   gtk_widget_show (playlist_clist);
2231   gtk_container_add (GTK_CONTAINER (scrolledwindow1), playlist_clist);
2232   gtk_container_set_border_width (GTK_CONTAINER (playlist_clist), 5);
2233   gtk_clist_set_column_width (GTK_CLIST (playlist_clist), 0, 257);
2234   gtk_clist_set_column_width (GTK_CLIST (playlist_clist), 1, 80);
2235   gtk_clist_set_selection_mode (GTK_CLIST (playlist_clist), GTK_SELECTION_EXTENDED);
2236   gtk_clist_column_titles_show (GTK_CLIST (playlist_clist));
2237   gtk_clist_set_shadow_type (GTK_CLIST (playlist_clist), GTK_SHADOW_OUT);
2238
2239   label22 = gtk_label_new (_("File"));
2240   gtk_widget_ref (label22);
2241   gtk_object_set_data_full (GTK_OBJECT (intf_playlist), "label22", label22,
2242                             (GtkDestroyNotify) gtk_widget_unref);
2243   gtk_widget_show (label22);
2244   gtk_clist_set_column_widget (GTK_CLIST (playlist_clist), 0, label22);
2245
2246   label23 = gtk_label_new (_("Duration"));
2247   gtk_widget_ref (label23);
2248   gtk_object_set_data_full (GTK_OBJECT (intf_playlist), "label23", label23,
2249                             (GtkDestroyNotify) gtk_widget_unref);
2250   gtk_widget_show (label23);
2251   gtk_clist_set_column_widget (GTK_CLIST (playlist_clist), 1, label23);
2252
2253   dialog_action_area3 = GTK_DIALOG (intf_playlist)->action_area;
2254   gtk_object_set_data (GTK_OBJECT (intf_playlist), "dialog_action_area3", dialog_action_area3);
2255   gtk_widget_show (dialog_action_area3);
2256   gtk_container_set_border_width (GTK_CONTAINER (dialog_action_area3), 10);
2257
2258   playlist_ok_button = gtk_button_new_with_label (_("Ok"));
2259   gtk_widget_ref (playlist_ok_button);
2260   gtk_object_set_data_full (GTK_OBJECT (intf_playlist), "playlist_ok_button", playlist_ok_button,
2261                             (GtkDestroyNotify) gtk_widget_unref);
2262   gtk_widget_show (playlist_ok_button);
2263   gtk_box_pack_start (GTK_BOX (dialog_action_area3), playlist_ok_button, TRUE, TRUE, 0);
2264
2265   playlist_cancel_button = gtk_button_new_with_label (_("Cancel"));
2266   gtk_widget_ref (playlist_cancel_button);
2267   gtk_object_set_data_full (GTK_OBJECT (intf_playlist), "playlist_cancel_button", playlist_cancel_button,
2268                             (GtkDestroyNotify) gtk_widget_unref);
2269   gtk_widget_show (playlist_cancel_button);
2270   gtk_box_pack_start (GTK_BOX (dialog_action_area3), playlist_cancel_button, TRUE, TRUE, 0);
2271
2272   gtk_signal_connect (GTK_OBJECT (intf_playlist), "destroy",
2273                       GTK_SIGNAL_FUNC (gtk_widget_hide),
2274                       NULL);
2275   gtk_signal_connect (GTK_OBJECT (intf_playlist), "delete_event",
2276                       GTK_SIGNAL_FUNC (gtk_widget_hide),
2277                       NULL);
2278   gtk_signal_connect (GTK_OBJECT (playlist_add_disc), "activate",
2279                       GTK_SIGNAL_FUNC (GtkDiscOpenActivate),
2280                       "intf_playlist");
2281   gtk_signal_connect (GTK_OBJECT (playlist_add_file), "activate",
2282                       GTK_SIGNAL_FUNC (GtkFileOpenActivate),
2283                       "intf_playlist");
2284   gtk_signal_connect (GTK_OBJECT (playlist_add_network), "activate",
2285                       GTK_SIGNAL_FUNC (GtkNetworkOpenActivate),
2286                       "intf_playlist");
2287   gtk_signal_connect (GTK_OBJECT (playlist_add_url), "activate",
2288                       GTK_SIGNAL_FUNC (GtkPlaylistAddUrl),
2289                       "intf_playlist");
2290   gtk_signal_connect (GTK_OBJECT (playlist_delete_all), "activate",
2291                       GTK_SIGNAL_FUNC (GtkPlaylistDeleteAll),
2292                       "intf_playlist");
2293   gtk_signal_connect (GTK_OBJECT (playlist_delete_selected), "activate",
2294                       GTK_SIGNAL_FUNC (GtkPlaylistDeleteSelected),
2295                       "intf_playlist");
2296   gtk_signal_connect (GTK_OBJECT (playlist_selection_crop), "activate",
2297                       GTK_SIGNAL_FUNC (GtkPlaylistCrop),
2298                       "intf_playlist");
2299   gtk_signal_connect (GTK_OBJECT (playlist_selection_invert), "activate",
2300                       GTK_SIGNAL_FUNC (GtkPlaylistInvert),
2301                       "intf_playlist");
2302   gtk_signal_connect (GTK_OBJECT (playlist_selection_select), "activate",
2303                       GTK_SIGNAL_FUNC (GtkPlaylistSelect),
2304                       "intf_playlist");
2305   gtk_signal_connect (GTK_OBJECT (playlist_clist), "event",
2306                       GTK_SIGNAL_FUNC (GtkPlaylistEvent),
2307                       "intf_playlist");
2308   gtk_signal_connect (GTK_OBJECT (playlist_clist), "drag_data_received",
2309                       GTK_SIGNAL_FUNC (GtkPlaylistDragData),
2310                       "intf_playlist");
2311   gtk_signal_connect (GTK_OBJECT (playlist_clist), "drag_motion",
2312                       GTK_SIGNAL_FUNC (GtkPlaylistDragMotion),
2313                       "intf_playlist");
2314   gtk_signal_connect (GTK_OBJECT (playlist_ok_button), "clicked",
2315                       GTK_SIGNAL_FUNC (GtkPlaylistOk),
2316                       "intf_playlist");
2317   gtk_signal_connect (GTK_OBJECT (playlist_cancel_button), "clicked",
2318                       GTK_SIGNAL_FUNC (GtkPlaylistCancel),
2319                       "intf_playlist");
2320
2321   return intf_playlist;
2322 }
2323
2324 GtkWidget*
2325 create_intf_preferences (void)
2326 {
2327   GtkWidget *intf_preferences;
2328   GtkWidget *dialog_vbox5;
2329   GtkWidget *preferences_notebook;
2330   GtkWidget *preferences_file_table;
2331   GtkWidget *preferences_file_path_label;
2332   GtkWidget *preferences_file_path_combo;
2333   GtkWidget *preferences_file_path_entry;
2334   GtkWidget *preferences_file_path_button;
2335   GtkWidget *preferences_file;
2336   GtkWidget *preferences_disc_table;
2337   GtkWidget *preferences_disc_vcd_label;
2338   GtkWidget *preference_disc_dvd_label;
2339   GtkWidget *preferences_disc_dvd_combo;
2340   GList *preferences_disc_dvd_combo_items = NULL;
2341   GtkWidget *preferences_disc_dvd_entry;
2342   GtkWidget *preferences_disc_vcd_combo;
2343   GList *preferences_disc_vcd_combo_items = NULL;
2344   GtkWidget *preferences_disc_vcd_entry;
2345   GtkWidget *preferences_disc_dvd_browse_button;
2346   GtkWidget *preferences_disc_vcd_browse_button;
2347   GtkWidget *preferences_disc;
2348   GtkWidget *preferences_network_table;
2349   GtkWidget *preferences_network_server_combo;
2350   GtkWidget *preferences_network_server_entry;
2351   GtkWidget *preferences_network_broadcast_combo;
2352   GtkWidget *preferences_network_broadcast_entry;
2353   GtkWidget *preferences_network_server_label;
2354   GtkWidget *preferences_network_port_label;
2355   GtkObject *preferences_network_port_spinbutton_adj;
2356   GtkWidget *preferences_network_port_spinbutton;
2357   GtkWidget *preferences_network_broadcast_label;
2358   GtkWidget *preferences_network_broadcast_checkbutton;
2359   GtkWidget *preferences_network_protocol_label;
2360   GSList *preferences_network_protocol_group_group = NULL;
2361   GtkWidget *preferences_network_ts_radiobutton;
2362   GtkWidget *preferences_network_rtp_radiobutton;
2363   GtkWidget *preferences_network_http_radiobutton;
2364   GtkWidget *preferences_network;
2365   GtkWidget *preferences_interface_table;
2366   GtkWidget *preferences_interface_combo;
2367   GList *preferences_interface_combo_items = NULL;
2368   GtkWidget *preferences_interface_entry;
2369   GtkWidget *preferences_interface_label;
2370   GtkWidget *preferences_interface;
2371   GtkWidget *preferences_video_table;
2372   GtkWidget *preferences_video_output_combo;
2373   GList *preferences_video_output_combo_items = NULL;
2374   GtkWidget *preferences_video_output_entry;
2375   GtkWidget *preferences_video_output_label;
2376   GtkWidget *preferences_video_width_label;
2377   GtkObject *preferences_video_height_spinbutton_adj;
2378   GtkWidget *preferences_video_height_spinbutton;
2379   GtkObject *preferences_video_width_spinbutton_adj;
2380   GtkWidget *preferences_video_width_spinbutton;
2381   GtkWidget *preferences_video_height_label;
2382   GtkWidget *preferences_depth_optionmenu;
2383   GtkWidget *preferences_depth_optionmenu_menu;
2384   GtkWidget *glade_menuitem;
2385   GtkWidget *preferences_video_depth_label;
2386   GtkWidget *preferences_video_fullscreen_depth_label;
2387   GtkWidget *preferences_video_fullscreen_depth_optionmenu;
2388   GtkWidget *preferences_video_fullscreen_depth_optionmenu_menu;
2389   GtkObject *preferences_video_gamma_spinbutton_adj;
2390   GtkWidget *preferences_video_gamma_spinbutton;
2391   GtkWidget *preferences_video_gamma_label;
2392   GtkWidget *preferences_video_fullscreen_checkbutton;
2393   GtkWidget *preferences_video_grayscale_checkbutton;
2394   GtkWidget *preferences_video;
2395   GtkWidget *preferences_audio_table;
2396   GtkWidget *preferences_audio_quality_optionmenu;
2397   GtkWidget *preferences_audio_quality_optionmenu_menu;
2398   GtkWidget *preferences_audio_frequency_optionmenu;
2399   GtkWidget *preferences_audio_frequency_optionmenu_menu;
2400   GtkWidget *preferences_audio_channels_optionmenu;
2401   GtkWidget *preferences_audio_channels_optionmenu_menu;
2402   GtkWidget *preferences_audio_output_label;
2403   GtkWidget *preferences_audio_device_label;
2404   GtkWidget *preferences_audio_quality_label;
2405   GtkWidget *preferences_audio_frequency_label;
2406   GtkWidget *preferences_audio_channel_label;
2407   GtkWidget *preferences_audio_spdif_checkbutton;
2408   GtkWidget *preferences_audio_output_combo;
2409   GList *preferences_audio_output_combo_items = NULL;
2410   GtkWidget *preferences_audio_output_entry;
2411   GtkWidget *preferences_audio_device_combo;
2412   GList *preferences_audio_device_combo_items = NULL;
2413   GtkWidget *preferences_audio_device_entry;
2414   GtkWidget *preferences_audio;
2415   GtkWidget *preferences_playlist_table;
2416   GtkWidget *preferences_playlist_startup_checkbutton;
2417   GtkWidget *preferences_playlist_enqueue_checkbutton;
2418   GtkWidget *preferences_playlist_loop_checkbutton;
2419   GtkWidget *preferences_playlist;
2420   GtkWidget *preferences_misc_table;
2421   GtkWidget *preferences_misc_associated_frame;
2422   GtkWidget *preferences_misc_associated_table;
2423   GtkWidget *preferences_misc_associated_checkbutton;
2424   GtkWidget *preferences_misc_mp2_checkbutton;
2425   GtkWidget *preferences_misc_vob_checkbutton;
2426   GtkWidget *preferences_misc_ts_checkbutton;
2427   GtkWidget *preferences_misc_message_frame;
2428   GtkWidget *preferences_misc_messages_table;
2429   GtkWidget *preferences_misc_messages_label;
2430   GtkObject *preferences_misc_messages_spinbutton_adj;
2431   GtkWidget *preferences_misc_messages_spinbutton;
2432   GtkWidget *preferences_misc;
2433   GtkWidget *dialog_action_area4;
2434   GtkWidget *preferences_ok_button;
2435   GtkWidget *preferences_apply_button;
2436   GtkWidget *preferences_cancel_button;
2437
2438   intf_preferences = gtk_dialog_new ();
2439   gtk_object_set_data (GTK_OBJECT (intf_preferences), "intf_preferences", intf_preferences);
2440   gtk_window_set_title (GTK_WINDOW (intf_preferences), _("Preferences"));
2441   gtk_window_set_policy (GTK_WINDOW (intf_preferences), TRUE, TRUE, FALSE);
2442
2443   dialog_vbox5 = GTK_DIALOG (intf_preferences)->vbox;
2444   gtk_object_set_data (GTK_OBJECT (intf_preferences), "dialog_vbox5", dialog_vbox5);
2445   gtk_widget_show (dialog_vbox5);
2446   gtk_container_set_border_width (GTK_CONTAINER (dialog_vbox5), 5);
2447
2448   preferences_notebook = gtk_notebook_new ();
2449   gtk_widget_ref (preferences_notebook);
2450   gtk_object_set_data_full (GTK_OBJECT (intf_preferences), "preferences_notebook", preferences_notebook,
2451                             (GtkDestroyNotify) gtk_widget_unref);
2452   gtk_widget_show (preferences_notebook);
2453   gtk_box_pack_start (GTK_BOX (dialog_vbox5), preferences_notebook, TRUE, TRUE, 0);
2454
2455   preferences_file_table = gtk_table_new (1, 3, FALSE);
2456   gtk_widget_ref (preferences_file_table);
2457   gtk_object_set_data_full (GTK_OBJECT (intf_preferences), "preferences_file_table", preferences_file_table,
2458                             (GtkDestroyNotify) gtk_widget_unref);
2459   gtk_widget_show (preferences_file_table);
2460   gtk_container_add (GTK_CONTAINER (preferences_notebook), preferences_file_table);
2461   gtk_container_set_border_width (GTK_CONTAINER (preferences_file_table), 5);
2462   gtk_table_set_row_spacings (GTK_TABLE (preferences_file_table), 5);
2463   gtk_table_set_col_spacings (GTK_TABLE (preferences_file_table), 5);
2464
2465   preferences_file_path_label = gtk_label_new (_("Default path:"));
2466   gtk_widget_ref (preferences_file_path_label);
2467   gtk_object_set_data_full (GTK_OBJECT (intf_preferences), "preferences_file_path_label", preferences_file_path_label,
2468                             (GtkDestroyNotify) gtk_widget_unref);
2469   gtk_widget_show (preferences_file_path_label);
2470   gtk_table_attach (GTK_TABLE (preferences_file_table), preferences_file_path_label, 0, 1, 0, 1,
2471                     (GtkAttachOptions) (GTK_FILL),
2472                     (GtkAttachOptions) (GTK_EXPAND), 0, 0);
2473   gtk_misc_set_alignment (GTK_MISC (preferences_file_path_label), 0, 0.5);
2474
2475   preferences_file_path_combo = gtk_combo_new ();
2476   gtk_widget_ref (preferences_file_path_combo);
2477   gtk_object_set_data_full (GTK_OBJECT (intf_preferences), "preferences_file_path_combo", preferences_file_path_combo,
2478                             (GtkDestroyNotify) gtk_widget_unref);
2479   gtk_widget_show (preferences_file_path_combo);
2480   gtk_table_attach (GTK_TABLE (preferences_file_table), preferences_file_path_combo, 1, 2, 0, 1,
2481                     (GtkAttachOptions) (GTK_EXPAND | GTK_FILL),
2482                     (GtkAttachOptions) (GTK_EXPAND), 0, 0);
2483
2484   preferences_file_path_entry = GTK_COMBO (preferences_file_path_combo)->entry;
2485   gtk_widget_ref (preferences_file_path_entry);
2486   gtk_object_set_data_full (GTK_OBJECT (intf_preferences), "preferences_file_path_entry", preferences_file_path_entry,
2487                             (GtkDestroyNotify) gtk_widget_unref);
2488   gtk_widget_show (preferences_file_path_entry);
2489
2490   preferences_file_path_button = gtk_button_new_with_label (_("Browse"));
2491   gtk_widget_ref (preferences_file_path_button);
2492   gtk_object_set_data_full (GTK_OBJECT (intf_preferences), "preferences_file_path_button", preferences_file_path_button,
2493                             (GtkDestroyNotify) gtk_widget_unref);
2494   gtk_widget_show (preferences_file_path_button);
2495   gtk_table_attach (GTK_TABLE (preferences_file_table), preferences_file_path_button, 2, 3, 0, 1,
2496                     (GtkAttachOptions) (GTK_EXPAND | GTK_FILL),
2497                     (GtkAttachOptions) (GTK_EXPAND), 0, 0);
2498
2499   preferences_file = gtk_label_new (_("File"));
2500   gtk_widget_ref (preferences_file);
2501   gtk_object_set_data_full (GTK_OBJECT (intf_preferences), "preferences_file", preferences_file,
2502                             (GtkDestroyNotify) gtk_widget_unref);
2503   gtk_widget_show (preferences_file);
2504   gtk_notebook_set_tab_label (GTK_NOTEBOOK (preferences_notebook), gtk_notebook_get_nth_page (GTK_NOTEBOOK (preferences_notebook), 0), preferences_file);
2505
2506   preferences_disc_table = gtk_table_new (2, 3, FALSE);
2507   gtk_widget_ref (preferences_disc_table);
2508   gtk_object_set_data_full (GTK_OBJECT (intf_preferences), "preferences_disc_table", preferences_disc_table,
2509                             (GtkDestroyNotify) gtk_widget_unref);
2510   gtk_widget_show (preferences_disc_table);
2511   gtk_container_add (GTK_CONTAINER (preferences_notebook), preferences_disc_table);
2512   gtk_container_set_border_width (GTK_CONTAINER (preferences_disc_table), 5);
2513   gtk_table_set_row_spacings (GTK_TABLE (preferences_disc_table), 5);
2514   gtk_table_set_col_spacings (GTK_TABLE (preferences_disc_table), 5);
2515
2516   preferences_disc_vcd_label = gtk_label_new (_("Default VCD path"));
2517   gtk_widget_ref (preferences_disc_vcd_label);
2518   gtk_object_set_data_full (GTK_OBJECT (intf_preferences), "preferences_disc_vcd_label", preferences_disc_vcd_label,
2519                             (GtkDestroyNotify) gtk_widget_unref);
2520   gtk_widget_show (preferences_disc_vcd_label);
2521   gtk_table_attach (GTK_TABLE (preferences_disc_table), preferences_disc_vcd_label, 0, 1, 1, 2,
2522                     (GtkAttachOptions) (GTK_FILL),
2523                     (GtkAttachOptions) (GTK_EXPAND), 0, 0);
2524   gtk_misc_set_alignment (GTK_MISC (preferences_disc_vcd_label), 0, 0.5);
2525
2526   preference_disc_dvd_label = gtk_label_new (_("Default DVD path:"));
2527   gtk_widget_ref (preference_disc_dvd_label);
2528   gtk_object_set_data_full (GTK_OBJECT (intf_preferences), "preference_disc_dvd_label", preference_disc_dvd_label,
2529                             (GtkDestroyNotify) gtk_widget_unref);
2530   gtk_widget_show (preference_disc_dvd_label);
2531   gtk_table_attach (GTK_TABLE (preferences_disc_table), preference_disc_dvd_label, 0, 1, 0, 1,
2532                     (GtkAttachOptions) (GTK_FILL),
2533                     (GtkAttachOptions) (GTK_EXPAND), 0, 0);
2534   gtk_misc_set_alignment (GTK_MISC (preference_disc_dvd_label), 0, 0.5);
2535
2536   preferences_disc_dvd_combo = gtk_combo_new ();
2537   gtk_widget_ref (preferences_disc_dvd_combo);
2538   gtk_object_set_data_full (GTK_OBJECT (intf_preferences), "preferences_disc_dvd_combo", preferences_disc_dvd_combo,
2539                             (GtkDestroyNotify) gtk_widget_unref);
2540   gtk_widget_show (preferences_disc_dvd_combo);
2541   gtk_table_attach (GTK_TABLE (preferences_disc_table), preferences_disc_dvd_combo, 1, 2, 0, 1,
2542                     (GtkAttachOptions) (GTK_EXPAND | GTK_FILL),
2543                     (GtkAttachOptions) (GTK_EXPAND), 0, 0);
2544   preferences_disc_dvd_combo_items = g_list_append (preferences_disc_dvd_combo_items, (gpointer) DVD_DEVICE);
2545   gtk_combo_set_popdown_strings (GTK_COMBO (preferences_disc_dvd_combo), preferences_disc_dvd_combo_items);
2546   g_list_free (preferences_disc_dvd_combo_items);
2547
2548   preferences_disc_dvd_entry = GTK_COMBO (preferences_disc_dvd_combo)->entry;
2549   gtk_widget_ref (preferences_disc_dvd_entry);
2550   gtk_object_set_data_full (GTK_OBJECT (intf_preferences), "preferences_disc_dvd_entry", preferences_disc_dvd_entry,
2551                             (GtkDestroyNotify) gtk_widget_unref);
2552   gtk_widget_show (preferences_disc_dvd_entry);
2553   gtk_entry_set_text (GTK_ENTRY (preferences_disc_dvd_entry), DVD_DEVICE);
2554
2555   preferences_disc_vcd_combo = gtk_combo_new ();
2556   gtk_widget_ref (preferences_disc_vcd_combo);
2557   gtk_object_set_data_full (GTK_OBJECT (intf_preferences), "preferences_disc_vcd_combo", preferences_disc_vcd_combo,
2558                             (GtkDestroyNotify) gtk_widget_unref);
2559   gtk_widget_show (preferences_disc_vcd_combo);
2560   gtk_table_attach (GTK_TABLE (preferences_disc_table), preferences_disc_vcd_combo, 1, 2, 1, 2,
2561                     (GtkAttachOptions) (GTK_EXPAND | GTK_FILL),
2562                     (GtkAttachOptions) (GTK_EXPAND), 0, 0);
2563   preferences_disc_vcd_combo_items = g_list_append (preferences_disc_vcd_combo_items, (gpointer) _("/dev/cdrom"));
2564   gtk_combo_set_popdown_strings (GTK_COMBO (preferences_disc_vcd_combo), preferences_disc_vcd_combo_items);
2565   g_list_free (preferences_disc_vcd_combo_items);
2566
2567   preferences_disc_vcd_entry = GTK_COMBO (preferences_disc_vcd_combo)->entry;
2568   gtk_widget_ref (preferences_disc_vcd_entry);
2569   gtk_object_set_data_full (GTK_OBJECT (intf_preferences), "preferences_disc_vcd_entry", preferences_disc_vcd_entry,
2570                             (GtkDestroyNotify) gtk_widget_unref);
2571   gtk_widget_show (preferences_disc_vcd_entry);
2572   gtk_entry_set_text (GTK_ENTRY (preferences_disc_vcd_entry), _("/dev/cdrom"));
2573
2574   preferences_disc_dvd_browse_button = gtk_button_new_with_label (_("Browse"));
2575   gtk_widget_ref (preferences_disc_dvd_browse_button);
2576   gtk_object_set_data_full (GTK_OBJECT (intf_preferences), "preferences_disc_dvd_browse_button", preferences_disc_dvd_browse_button,
2577                             (GtkDestroyNotify) gtk_widget_unref);
2578   gtk_widget_show (preferences_disc_dvd_browse_button);
2579   gtk_table_attach (GTK_TABLE (preferences_disc_table), preferences_disc_dvd_browse_button, 2, 3, 0, 1,
2580                     (GtkAttachOptions) (GTK_EXPAND | GTK_FILL),
2581                     (GtkAttachOptions) (GTK_EXPAND), 0, 0);
2582
2583   preferences_disc_vcd_browse_button = gtk_button_new_with_label (_("Browse"));
2584   gtk_widget_ref (preferences_disc_vcd_browse_button);
2585   gtk_object_set_data_full (GTK_OBJECT (intf_preferences), "preferences_disc_vcd_browse_button", preferences_disc_vcd_browse_button,
2586                             (GtkDestroyNotify) gtk_widget_unref);
2587   gtk_widget_show (preferences_disc_vcd_browse_button);
2588   gtk_table_attach (GTK_TABLE (preferences_disc_table), preferences_disc_vcd_browse_button, 2, 3, 1, 2,
2589                     (GtkAttachOptions) (GTK_EXPAND | GTK_FILL),
2590                     (GtkAttachOptions) (GTK_EXPAND), 0, 0);
2591
2592   preferences_disc = gtk_label_new (_("Disc"));
2593   gtk_widget_ref (preferences_disc);
2594   gtk_object_set_data_full (GTK_OBJECT (intf_preferences), "preferences_disc", preferences_disc,
2595                             (GtkDestroyNotify) gtk_widget_unref);
2596   gtk_widget_show (preferences_disc);
2597   gtk_notebook_set_tab_label (GTK_NOTEBOOK (preferences_notebook), gtk_notebook_get_nth_page (GTK_NOTEBOOK (preferences_notebook), 1), preferences_disc);
2598
2599   preferences_network_table = gtk_table_new (7, 2, FALSE);
2600   gtk_widget_ref (preferences_network_table);
2601   gtk_object_set_data_full (GTK_OBJECT (intf_preferences), "preferences_network_table", preferences_network_table,
2602                             (GtkDestroyNotify) gtk_widget_unref);
2603   gtk_widget_show (preferences_network_table);
2604   gtk_container_add (GTK_CONTAINER (preferences_notebook), preferences_network_table);
2605   gtk_container_set_border_width (GTK_CONTAINER (preferences_network_table), 5);
2606   gtk_table_set_row_spacings (GTK_TABLE (preferences_network_table), 5);
2607   gtk_table_set_col_spacings (GTK_TABLE (preferences_network_table), 5);
2608
2609   preferences_network_server_combo = gtk_combo_new ();
2610   gtk_widget_ref (preferences_network_server_combo);
2611   gtk_object_set_data_full (GTK_OBJECT (intf_preferences), "preferences_network_server_combo", preferences_network_server_combo,
2612                             (GtkDestroyNotify) gtk_widget_unref);
2613   gtk_widget_show (preferences_network_server_combo);
2614   gtk_table_attach (GTK_TABLE (preferences_network_table), preferences_network_server_combo, 1, 2, 0, 1,
2615                     (GtkAttachOptions) (GTK_EXPAND | GTK_FILL),
2616                     (GtkAttachOptions) (GTK_EXPAND), 0, 0);
2617
2618   preferences_network_server_entry = GTK_COMBO (preferences_network_server_combo)->entry;
2619   gtk_widget_ref (preferences_network_server_entry);
2620   gtk_object_set_data_full (GTK_OBJECT (intf_preferences), "preferences_network_server_entry", preferences_network_server_entry,
2621                             (GtkDestroyNotify) gtk_widget_unref);
2622   gtk_widget_show (preferences_network_server_entry);
2623   gtk_entry_set_text (GTK_ENTRY (preferences_network_server_entry), _("vls "));
2624
2625   preferences_network_broadcast_combo = gtk_combo_new ();
2626   gtk_widget_ref (preferences_network_broadcast_combo);
2627   gtk_object_set_data_full (GTK_OBJECT (intf_preferences), "preferences_network_broadcast_combo", preferences_network_broadcast_combo,
2628                             (GtkDestroyNotify) gtk_widget_unref);
2629   gtk_widget_show (preferences_network_broadcast_combo);
2630   gtk_table_attach (GTK_TABLE (preferences_network_table), preferences_network_broadcast_combo, 1, 2, 2, 3,
2631                     (GtkAttachOptions) (GTK_EXPAND | GTK_FILL),
2632                     (GtkAttachOptions) (GTK_EXPAND), 0, 0);
2633
2634   preferences_network_broadcast_entry = GTK_COMBO (preferences_network_broadcast_combo)->entry;
2635   gtk_widget_ref (preferences_network_broadcast_entry);
2636   gtk_object_set_data_full (GTK_OBJECT (intf_preferences), "preferences_network_broadcast_entry", preferences_network_broadcast_entry,
2637                             (GtkDestroyNotify) gtk_widget_unref);
2638   gtk_widget_show (preferences_network_broadcast_entry);
2639
2640   preferences_network_server_label = gtk_label_new (_("Default server:"));
2641   gtk_widget_ref (preferences_network_server_label);
2642   gtk_object_set_data_full (GTK_OBJECT (intf_preferences), "preferences_network_server_label", preferences_network_server_label,
2643                             (GtkDestroyNotify) gtk_widget_unref);
2644   gtk_widget_show (preferences_network_server_label);
2645   gtk_table_attach (GTK_TABLE (preferences_network_table), preferences_network_server_label, 0, 1, 0, 1,
2646                     (GtkAttachOptions) (GTK_EXPAND),
2647                     (GtkAttachOptions) (GTK_EXPAND), 0, 0);
2648   gtk_misc_set_alignment (GTK_MISC (preferences_network_server_label), 0, 0.5);
2649
2650   preferences_network_port_label = gtk_label_new (_("Default port:"));
2651   gtk_widget_ref (preferences_network_port_label);
2652   gtk_object_set_data_full (GTK_OBJECT (intf_preferences), "preferences_network_port_label", preferences_network_port_label,
2653                             (GtkDestroyNotify) gtk_widget_unref);
2654   gtk_widget_show (preferences_network_port_label);
2655   gtk_table_attach (GTK_TABLE (preferences_network_table), preferences_network_port_label, 0, 1, 1, 2,
2656                     (GtkAttachOptions) (GTK_EXPAND),
2657                     (GtkAttachOptions) (GTK_EXPAND), 0, 0);
2658   gtk_misc_set_alignment (GTK_MISC (preferences_network_port_label), 0, 0.5);
2659
2660   preferences_network_port_spinbutton_adj = gtk_adjustment_new (1234, 0, 65535, 1, 10, 10);
2661   preferences_network_port_spinbutton = gtk_spin_button_new (GTK_ADJUSTMENT (preferences_network_port_spinbutton_adj), 1, 0);
2662   gtk_widget_ref (preferences_network_port_spinbutton);
2663   gtk_object_set_data_full (GTK_OBJECT (intf_preferences), "preferences_network_port_spinbutton", preferences_network_port_spinbutton,
2664                             (GtkDestroyNotify) gtk_widget_unref);
2665   gtk_widget_show (preferences_network_port_spinbutton);
2666   gtk_table_attach (GTK_TABLE (preferences_network_table), preferences_network_port_spinbutton, 1, 2, 1, 2,
2667                     (GtkAttachOptions) (GTK_EXPAND | GTK_FILL),
2668                     (GtkAttachOptions) (GTK_EXPAND), 0, 0);
2669
2670   preferences_network_broadcast_label = gtk_label_new (_("Broadcast address:"));
2671   gtk_widget_ref (preferences_network_broadcast_label);
2672   gtk_object_set_data_full (GTK_OBJECT (intf_preferences), "preferences_network_broadcast_label", preferences_network_broadcast_label,
2673                             (GtkDestroyNotify) gtk_widget_unref);
2674   gtk_widget_show (preferences_network_broadcast_label);
2675   gtk_table_attach (GTK_TABLE (preferences_network_table), preferences_network_broadcast_label, 0, 1, 2, 3,
2676                     (GtkAttachOptions) (GTK_EXPAND),
2677                     (GtkAttachOptions) (GTK_EXPAND), 0, 0);
2678   gtk_misc_set_alignment (GTK_MISC (preferences_network_broadcast_label), 0, 0.5);
2679
2680   preferences_network_broadcast_checkbutton = gtk_check_button_new_with_label (_("Broadcast mode"));
2681   gtk_widget_ref (preferences_network_broadcast_checkbutton);
2682   gtk_object_set_data_full (GTK_OBJECT (intf_preferences), "preferences_network_broadcast_checkbutton", preferences_network_broadcast_checkbutton,
2683                             (GtkDestroyNotify) gtk_widget_unref);
2684   gtk_widget_show (preferences_network_broadcast_checkbutton);
2685   gtk_table_attach (GTK_TABLE (preferences_network_table), preferences_network_broadcast_checkbutton, 0, 1, 3, 4,
2686                     (GtkAttachOptions) (GTK_EXPAND),
2687                     (GtkAttachOptions) (GTK_EXPAND), 0, 0);
2688
2689   preferences_network_protocol_label = gtk_label_new (_("Default protocol:"));
2690   gtk_widget_ref (preferences_network_protocol_label);
2691   gtk_object_set_data_full (GTK_OBJECT (intf_preferences), "preferences_network_protocol_label", preferences_network_protocol_label,
2692                             (GtkDestroyNotify) gtk_widget_unref);
2693   gtk_widget_show (preferences_network_protocol_label);
2694   gtk_table_attach (GTK_TABLE (preferences_network_table), preferences_network_protocol_label, 0, 1, 4, 7,
2695                     (GtkAttachOptions) (GTK_EXPAND),
2696                     (GtkAttachOptions) (GTK_EXPAND), 0, 0);
2697   gtk_misc_set_alignment (GTK_MISC (preferences_network_protocol_label), 0, 0.5);
2698
2699   preferences_network_ts_radiobutton = gtk_radio_button_new_with_label (preferences_network_protocol_group_group, _("TS"));
2700   preferences_network_protocol_group_group = gtk_radio_button_group (GTK_RADIO_BUTTON (preferences_network_ts_radiobutton));
2701   gtk_widget_ref (preferences_network_ts_radiobutton);
2702   gtk_object_set_data_full (GTK_OBJECT (intf_preferences), "preferences_network_ts_radiobutton", preferences_network_ts_radiobutton,
2703                             (GtkDestroyNotify) gtk_widget_unref);
2704   gtk_widget_show (preferences_network_ts_radiobutton);
2705   gtk_table_attach (GTK_TABLE (preferences_network_table), preferences_network_ts_radiobutton, 1, 2, 4, 5,
2706                     (GtkAttachOptions) (GTK_EXPAND | GTK_FILL),
2707                     (GtkAttachOptions) (GTK_EXPAND), 0, 0);
2708
2709   preferences_network_rtp_radiobutton = gtk_radio_button_new_with_label (preferences_network_protocol_group_group, _("RTP"));
2710   preferences_network_protocol_group_group = gtk_radio_button_group (GTK_RADIO_BUTTON (preferences_network_rtp_radiobutton));
2711   gtk_widget_ref (preferences_network_rtp_radiobutton);
2712   gtk_object_set_data_full (GTK_OBJECT (intf_preferences), "preferences_network_rtp_radiobutton", preferences_network_rtp_radiobutton,
2713                             (GtkDestroyNotify) gtk_widget_unref);
2714   gtk_widget_show (preferences_network_rtp_radiobutton);
2715   gtk_table_attach (GTK_TABLE (preferences_network_table), preferences_network_rtp_radiobutton, 1, 2, 5, 6,
2716                     (GtkAttachOptions) (GTK_EXPAND | GTK_FILL),
2717                     (GtkAttachOptions) (GTK_EXPAND), 0, 0);
2718
2719   preferences_network_http_radiobutton = gtk_radio_button_new_with_label (preferences_network_protocol_group_group, _("HTTP"));
2720   preferences_network_protocol_group_group = gtk_radio_button_group (GTK_RADIO_BUTTON (preferences_network_http_radiobutton));
2721   gtk_widget_ref (preferences_network_http_radiobutton);
2722   gtk_object_set_data_full (GTK_OBJECT (intf_preferences), "preferences_network_http_radiobutton", preferences_network_http_radiobutton,
2723                             (GtkDestroyNotify) gtk_widget_unref);
2724   gtk_widget_show (preferences_network_http_radiobutton);
2725   gtk_table_attach (GTK_TABLE (preferences_network_table), preferences_network_http_radiobutton, 1, 2, 6, 7,
2726                     (GtkAttachOptions) (GTK_EXPAND | GTK_FILL),
2727                     (GtkAttachOptions) (GTK_EXPAND), 0, 0);
2728
2729   preferences_network = gtk_label_new (_("Network"));
2730   gtk_widget_ref (preferences_network);
2731   gtk_object_set_data_full (GTK_OBJECT (intf_preferences), "preferences_network", preferences_network,
2732                             (GtkDestroyNotify) gtk_widget_unref);
2733   gtk_widget_show (preferences_network);
2734   gtk_notebook_set_tab_label (GTK_NOTEBOOK (preferences_notebook), gtk_notebook_get_nth_page (GTK_NOTEBOOK (preferences_notebook), 2), preferences_network);
2735
2736   preferences_interface_table = gtk_table_new (1, 2, FALSE);
2737   gtk_widget_ref (preferences_interface_table);
2738   gtk_object_set_data_full (GTK_OBJECT (intf_preferences), "preferences_interface_table", preferences_interface_table,
2739                             (GtkDestroyNotify) gtk_widget_unref);
2740   gtk_widget_show (preferences_interface_table);
2741   gtk_container_add (GTK_CONTAINER (preferences_notebook), preferences_interface_table);
2742   gtk_container_set_border_width (GTK_CONTAINER (preferences_interface_table), 5);
2743   gtk_table_set_row_spacings (GTK_TABLE (preferences_interface_table), 5);
2744   gtk_table_set_col_spacings (GTK_TABLE (preferences_interface_table), 5);
2745
2746   preferences_interface_combo = gtk_combo_new ();
2747   gtk_widget_ref (preferences_interface_combo);
2748   gtk_object_set_data_full (GTK_OBJECT (intf_preferences), "preferences_interface_combo", preferences_interface_combo,
2749                             (GtkDestroyNotify) gtk_widget_unref);
2750   gtk_widget_show (preferences_interface_combo);
2751   gtk_table_attach (GTK_TABLE (preferences_interface_table), preferences_interface_combo, 1, 2, 0, 1,
2752                     (GtkAttachOptions) (GTK_EXPAND | GTK_FILL),
2753                     (GtkAttachOptions) (GTK_EXPAND), 0, 0);
2754   preferences_interface_combo_items = g_list_append (preferences_interface_combo_items, (gpointer) _("Gtk+"));
2755   preferences_interface_combo_items = g_list_append (preferences_interface_combo_items, (gpointer) _("Gnome"));
2756   gtk_combo_set_popdown_strings (GTK_COMBO (preferences_interface_combo), preferences_interface_combo_items);
2757   g_list_free (preferences_interface_combo_items);
2758
2759   preferences_interface_entry = GTK_COMBO (preferences_interface_combo)->entry;
2760   gtk_widget_ref (preferences_interface_entry);
2761   gtk_object_set_data_full (GTK_OBJECT (intf_preferences), "preferences_interface_entry", preferences_interface_entry,
2762                             (GtkDestroyNotify) gtk_widget_unref);
2763   gtk_widget_show (preferences_interface_entry);
2764   gtk_entry_set_text (GTK_ENTRY (preferences_interface_entry), _("Gtk+"));
2765
2766   preferences_interface_label = gtk_label_new (_("Default interface:"));
2767   gtk_widget_ref (preferences_interface_label);
2768   gtk_object_set_data_full (GTK_OBJECT (intf_preferences), "preferences_interface_label", preferences_interface_label,
2769                             (GtkDestroyNotify) gtk_widget_unref);
2770   gtk_widget_show (preferences_interface_label);
2771   gtk_table_attach (GTK_TABLE (preferences_interface_table), preferences_interface_label, 0, 1, 0, 1,
2772                     (GtkAttachOptions) (GTK_EXPAND),
2773                     (GtkAttachOptions) (0), 0, 0);
2774   gtk_misc_set_alignment (GTK_MISC (preferences_interface_label), 0, 0.5);
2775
2776   preferences_interface = gtk_label_new (_("Interface"));
2777   gtk_widget_ref (preferences_interface);
2778   gtk_object_set_data_full (GTK_OBJECT (intf_preferences), "preferences_interface", preferences_interface,
2779                             (GtkDestroyNotify) gtk_widget_unref);
2780   gtk_widget_show (preferences_interface);
2781   gtk_notebook_set_tab_label (GTK_NOTEBOOK (preferences_notebook), gtk_notebook_get_nth_page (GTK_NOTEBOOK (preferences_notebook), 3), preferences_interface);
2782
2783   preferences_video_table = gtk_table_new (7, 2, FALSE);
2784   gtk_widget_ref (preferences_video_table);
2785   gtk_object_set_data_full (GTK_OBJECT (intf_preferences), "preferences_video_table", preferences_video_table,
2786                             (GtkDestroyNotify) gtk_widget_unref);
2787   gtk_widget_show (preferences_video_table);
2788   gtk_container_add (GTK_CONTAINER (preferences_notebook), preferences_video_table);
2789   gtk_container_set_border_width (GTK_CONTAINER (preferences_video_table), 5);
2790   gtk_table_set_row_spacings (GTK_TABLE (preferences_video_table), 5);
2791   gtk_table_set_col_spacings (GTK_TABLE (preferences_video_table), 5);
2792
2793   preferences_video_output_combo = gtk_combo_new ();
2794   gtk_widget_ref (preferences_video_output_combo);
2795   gtk_object_set_data_full (GTK_OBJECT (intf_preferences), "preferences_video_output_combo", preferences_video_output_combo,
2796                             (GtkDestroyNotify) gtk_widget_unref);
2797   gtk_widget_show (preferences_video_output_combo);
2798   gtk_table_attach (GTK_TABLE (preferences_video_table), preferences_video_output_combo, 1, 2, 0, 1,
2799                     (GtkAttachOptions) (GTK_EXPAND | GTK_FILL),
2800                     (GtkAttachOptions) (GTK_EXPAND), 0, 0);
2801   preferences_video_output_combo_items = g_list_append (preferences_video_output_combo_items, (gpointer) _("sdl"));
2802   preferences_video_output_combo_items = g_list_append (preferences_video_output_combo_items, (gpointer) _("xvideo"));
2803   preferences_video_output_combo_items = g_list_append (preferences_video_output_combo_items, (gpointer) _("x11"));
2804   gtk_combo_set_popdown_strings (GTK_COMBO (preferences_video_output_combo), preferences_video_output_combo_items);
2805   g_list_free (preferences_video_output_combo_items);
2806
2807   preferences_video_output_entry = GTK_COMBO (preferences_video_output_combo)->entry;
2808   gtk_widget_ref (preferences_video_output_entry);
2809   gtk_object_set_data_full (GTK_OBJECT (intf_preferences), "preferences_video_output_entry", preferences_video_output_entry,
2810                             (GtkDestroyNotify) gtk_widget_unref);
2811   gtk_widget_show (preferences_video_output_entry);
2812   gtk_entry_set_text (GTK_ENTRY (preferences_video_output_entry), _("sdl"));
2813
2814   preferences_video_output_label = gtk_label_new (_("Default output:"));
2815   gtk_widget_ref (preferences_video_output_label);
2816   gtk_object_set_data_full (GTK_OBJECT (intf_preferences), "preferences_video_output_label", preferences_video_output_label,
2817                             (GtkDestroyNotify) gtk_widget_unref);
2818   gtk_widget_show (preferences_video_output_label);
2819   gtk_table_attach (GTK_TABLE (preferences_video_table), preferences_video_output_label, 0, 1, 0, 1,
2820                     (GtkAttachOptions) (GTK_EXPAND),
2821                     (GtkAttachOptions) (GTK_EXPAND), 0, 0);
2822   gtk_misc_set_alignment (GTK_MISC (preferences_video_output_label), 0, 0.5);
2823
2824   preferences_video_width_label = gtk_label_new (_("Default width:"));
2825   gtk_widget_ref (preferences_video_width_label);
2826   gtk_object_set_data_full (GTK_OBJECT (intf_preferences), "preferences_video_width_label", preferences_video_width_label,
2827                             (GtkDestroyNotify) gtk_widget_unref);
2828   gtk_widget_show (preferences_video_width_label);
2829   gtk_table_attach (GTK_TABLE (preferences_video_table), preferences_video_width_label, 0, 1, 1, 2,
2830                     (GtkAttachOptions) (GTK_EXPAND),
2831                     (GtkAttachOptions) (GTK_EXPAND), 0, 0);
2832   gtk_misc_set_alignment (GTK_MISC (preferences_video_width_label), 0, 0.5);
2833
2834   preferences_video_height_spinbutton_adj = gtk_adjustment_new (576, 0, 1200, 1, 10, 10);
2835   preferences_video_height_spinbutton = gtk_spin_button_new (GTK_ADJUSTMENT (preferences_video_height_spinbutton_adj), 1, 0);
2836   gtk_widget_ref (preferences_video_height_spinbutton);
2837   gtk_object_set_data_full (GTK_OBJECT (intf_preferences), "preferences_video_height_spinbutton", preferences_video_height_spinbutton,
2838                             (GtkDestroyNotify) gtk_widget_unref);
2839   gtk_widget_show (preferences_video_height_spinbutton);
2840   gtk_table_attach (GTK_TABLE (preferences_video_table), preferences_video_height_spinbutton, 1, 2, 2, 3,
2841                     (GtkAttachOptions) (GTK_EXPAND | GTK_FILL),
2842                     (GtkAttachOptions) (GTK_EXPAND), 0, 0);
2843
2844   preferences_video_width_spinbutton_adj = gtk_adjustment_new (720, 100, 1600, 1, 10, 10);
2845   preferences_video_width_spinbutton = gtk_spin_button_new (GTK_ADJUSTMENT (preferences_video_width_spinbutton_adj), 1, 0);
2846   gtk_widget_ref (preferences_video_width_spinbutton);
2847   gtk_object_set_data_full (GTK_OBJECT (intf_preferences), "preferences_video_width_spinbutton", preferences_video_width_spinbutton,
2848                             (GtkDestroyNotify) gtk_widget_unref);
2849   gtk_widget_show (preferences_video_width_spinbutton);
2850   gtk_table_attach (GTK_TABLE (preferences_video_table), preferences_video_width_spinbutton, 1, 2, 1, 2,
2851                     (GtkAttachOptions) (GTK_EXPAND | GTK_FILL),
2852                     (GtkAttachOptions) (GTK_EXPAND), 0, 0);
2853
2854   preferences_video_height_label = gtk_label_new (_("Default height:"));
2855   gtk_widget_ref (preferences_video_height_label);
2856   gtk_object_set_data_full (GTK_OBJECT (intf_preferences), "preferences_video_height_label", preferences_video_height_label,
2857                             (GtkDestroyNotify) gtk_widget_unref);
2858   gtk_widget_show (preferences_video_height_label);
2859   gtk_table_attach (GTK_TABLE (preferences_video_table), preferences_video_height_label, 0, 1, 2, 3,
2860                     (GtkAttachOptions) (GTK_EXPAND),
2861                     (GtkAttachOptions) (GTK_EXPAND), 0, 0);
2862   gtk_misc_set_alignment (GTK_MISC (preferences_video_height_label), 0, 0.5);
2863
2864   preferences_depth_optionmenu = gtk_option_menu_new ();
2865   gtk_widget_ref (preferences_depth_optionmenu);
2866   gtk_object_set_data_full (GTK_OBJECT (intf_preferences), "preferences_depth_optionmenu", preferences_depth_optionmenu,
2867                             (GtkDestroyNotify) gtk_widget_unref);
2868   gtk_widget_show (preferences_depth_optionmenu);
2869   gtk_table_attach (GTK_TABLE (preferences_video_table), preferences_depth_optionmenu, 1, 2, 3, 4,
2870                     (GtkAttachOptions) (GTK_EXPAND | GTK_FILL),
2871                     (GtkAttachOptions) (GTK_EXPAND), 0, 0);
2872   preferences_depth_optionmenu_menu = gtk_menu_new ();
2873   glade_menuitem = gtk_menu_item_new_with_label (_("15 bits"));
2874   gtk_widget_show (glade_menuitem);
2875   gtk_menu_append (GTK_MENU (preferences_depth_optionmenu_menu), glade_menuitem);
2876   glade_menuitem = gtk_menu_item_new_with_label (_("16 bits"));
2877   gtk_widget_show (glade_menuitem);
2878   gtk_menu_append (GTK_MENU (preferences_depth_optionmenu_menu), glade_menuitem);
2879   glade_menuitem = gtk_menu_item_new_with_label (_("32 bits"));
2880   gtk_widget_show (glade_menuitem);
2881   gtk_menu_append (GTK_MENU (preferences_depth_optionmenu_menu), glade_menuitem);
2882   gtk_option_menu_set_menu (GTK_OPTION_MENU (preferences_depth_optionmenu), preferences_depth_optionmenu_menu);
2883   gtk_option_menu_set_history (GTK_OPTION_MENU (preferences_depth_optionmenu), 1);
2884
2885   preferences_video_depth_label = gtk_label_new (_("Default depth:"));
2886   gtk_widget_ref (preferences_video_depth_label);
2887   gtk_object_set_data_full (GTK_OBJECT (intf_preferences), "preferences_video_depth_label", preferences_video_depth_label,
2888                             (GtkDestroyNotify) gtk_widget_unref);
2889   gtk_widget_show (preferences_video_depth_label);
2890   gtk_table_attach (GTK_TABLE (preferences_video_table), preferences_video_depth_label, 0, 1, 3, 4,
2891                     (GtkAttachOptions) (GTK_EXPAND),
2892                     (GtkAttachOptions) (GTK_EXPAND), 0, 0);
2893   gtk_misc_set_alignment (GTK_MISC (preferences_video_depth_label), 0, 0.5);
2894
2895   preferences_video_fullscreen_depth_label = gtk_label_new (_("Fullscreen depth:"));
2896   gtk_widget_ref (preferences_video_fullscreen_depth_label);
2897   gtk_object_set_data_full (GTK_OBJECT (intf_preferences), "preferences_video_fullscreen_depth_label", preferences_video_fullscreen_depth_label,
2898                             (GtkDestroyNotify) gtk_widget_unref);
2899   gtk_widget_show (preferences_video_fullscreen_depth_label);
2900   gtk_table_attach (GTK_TABLE (preferences_video_table), preferences_video_fullscreen_depth_label, 0, 1, 4, 5,
2901                     (GtkAttachOptions) (GTK_EXPAND),
2902                     (GtkAttachOptions) (GTK_EXPAND), 0, 0);
2903   gtk_misc_set_alignment (GTK_MISC (preferences_video_fullscreen_depth_label), 0, 0.5);
2904
2905   preferences_video_fullscreen_depth_optionmenu = gtk_option_menu_new ();
2906   gtk_widget_ref (preferences_video_fullscreen_depth_optionmenu);
2907   gtk_object_set_data_full (GTK_OBJECT (intf_preferences), "preferences_video_fullscreen_depth_optionmenu", preferences_video_fullscreen_depth_optionmenu,
2908                             (GtkDestroyNotify) gtk_widget_unref);
2909   gtk_widget_show (preferences_video_fullscreen_depth_optionmenu);
2910   gtk_table_attach (GTK_TABLE (preferences_video_table), preferences_video_fullscreen_depth_optionmenu, 1, 2, 4, 5,
2911                     (GtkAttachOptions) (GTK_EXPAND | GTK_FILL),
2912                     (GtkAttachOptions) (GTK_EXPAND), 0, 0);
2913   preferences_video_fullscreen_depth_optionmenu_menu = gtk_menu_new ();
2914   glade_menuitem = gtk_menu_item_new_with_label (_("15 bits"));
2915   gtk_widget_show (glade_menuitem);
2916   gtk_menu_append (GTK_MENU (preferences_video_fullscreen_depth_optionmenu_menu), glade_menuitem);
2917   glade_menuitem = gtk_menu_item_new_with_label (_("16 bits"));
2918   gtk_widget_show (glade_menuitem);
2919   gtk_menu_append (GTK_MENU (preferences_video_fullscreen_depth_optionmenu_menu), glade_menuitem);
2920   glade_menuitem = gtk_menu_item_new_with_label (_("32 bits"));
2921   gtk_widget_show (glade_menuitem);
2922   gtk_menu_append (GTK_MENU (preferences_video_fullscreen_depth_optionmenu_menu), glade_menuitem);
2923   gtk_option_menu_set_menu (GTK_OPTION_MENU (preferences_video_fullscreen_depth_optionmenu), preferences_video_fullscreen_depth_optionmenu_menu);
2924   gtk_option_menu_set_history (GTK_OPTION_MENU (preferences_video_fullscreen_depth_optionmenu), 2);
2925
2926   preferences_video_gamma_spinbutton_adj = gtk_adjustment_new (0, 0, 10, 0.1, 1, 1);
2927   preferences_video_gamma_spinbutton = gtk_spin_button_new (GTK_ADJUSTMENT (preferences_video_gamma_spinbutton_adj), 1, 1);
2928   gtk_widget_ref (preferences_video_gamma_spinbutton);
2929   gtk_object_set_data_full (GTK_OBJECT (intf_preferences), "preferences_video_gamma_spinbutton", preferences_video_gamma_spinbutton,
2930                             (GtkDestroyNotify) gtk_widget_unref);
2931   gtk_widget_show (preferences_video_gamma_spinbutton);
2932   gtk_table_attach (GTK_TABLE (preferences_video_table), preferences_video_gamma_spinbutton, 1, 2, 5, 6,
2933                     (GtkAttachOptions) (GTK_EXPAND | GTK_FILL),
2934                     (GtkAttachOptions) (GTK_EXPAND), 0, 0);
2935
2936   preferences_video_gamma_label = gtk_label_new (_("Gamma:"));
2937   gtk_widget_ref (preferences_video_gamma_label);
2938   gtk_object_set_data_full (GTK_OBJECT (intf_preferences), "preferences_video_gamma_label", preferences_video_gamma_label,
2939                             (GtkDestroyNotify) gtk_widget_unref);
2940   gtk_widget_show (preferences_video_gamma_label);
2941   gtk_table_attach (GTK_TABLE (preferences_video_table), preferences_video_gamma_label, 0, 1, 5, 6,
2942                     (GtkAttachOptions) (GTK_EXPAND),
2943                     (GtkAttachOptions) (GTK_EXPAND), 0, 0);
2944   gtk_misc_set_alignment (GTK_MISC (preferences_video_gamma_label), 0, 0.5);
2945
2946   preferences_video_fullscreen_checkbutton = gtk_check_button_new_with_label (_("Fullscreen on play"));
2947   gtk_widget_ref (preferences_video_fullscreen_checkbutton);
2948   gtk_object_set_data_full (GTK_OBJECT (intf_preferences), "preferences_video_fullscreen_checkbutton", preferences_video_fullscreen_checkbutton,
2949                             (GtkDestroyNotify) gtk_widget_unref);
2950   gtk_widget_show (preferences_video_fullscreen_checkbutton);
2951   gtk_table_attach (GTK_TABLE (preferences_video_table), preferences_video_fullscreen_checkbutton, 0, 1, 6, 7,
2952                     (GtkAttachOptions) (GTK_EXPAND),
2953                     (GtkAttachOptions) (GTK_EXPAND), 0, 0);
2954
2955   preferences_video_grayscale_checkbutton = gtk_check_button_new_with_label (_("Grayscale"));
2956   gtk_widget_ref (preferences_video_grayscale_checkbutton);
2957   gtk_object_set_data_full (GTK_OBJECT (intf_preferences), "preferences_video_grayscale_checkbutton", preferences_video_grayscale_checkbutton,
2958                             (GtkDestroyNotify) gtk_widget_unref);
2959   gtk_widget_show (preferences_video_grayscale_checkbutton);
2960   gtk_table_attach (GTK_TABLE (preferences_video_table), preferences_video_grayscale_checkbutton, 1, 2, 6, 7,
2961                     (GtkAttachOptions) (GTK_EXPAND),
2962                     (GtkAttachOptions) (GTK_EXPAND), 0, 0);
2963
2964   preferences_video = gtk_label_new (_("Video"));
2965   gtk_widget_ref (preferences_video);
2966   gtk_object_set_data_full (GTK_OBJECT (intf_preferences), "preferences_video", preferences_video,
2967                             (GtkDestroyNotify) gtk_widget_unref);
2968   gtk_widget_show (preferences_video);
2969   gtk_notebook_set_tab_label (GTK_NOTEBOOK (preferences_notebook), gtk_notebook_get_nth_page (GTK_NOTEBOOK (preferences_notebook), 4), preferences_video);
2970
2971   preferences_audio_table = gtk_table_new (6, 2, FALSE);
2972   gtk_widget_ref (preferences_audio_table);
2973   gtk_object_set_data_full (GTK_OBJECT (intf_preferences), "preferences_audio_table", preferences_audio_table,
2974                             (GtkDestroyNotify) gtk_widget_unref);
2975   gtk_widget_show (preferences_audio_table);
2976   gtk_container_add (GTK_CONTAINER (preferences_notebook), preferences_audio_table);
2977   gtk_container_set_border_width (GTK_CONTAINER (preferences_audio_table), 5);
2978   gtk_table_set_row_spacings (GTK_TABLE (preferences_audio_table), 5);
2979   gtk_table_set_col_spacings (GTK_TABLE (preferences_audio_table), 5);
2980
2981   preferences_audio_quality_optionmenu = gtk_option_menu_new ();
2982   gtk_widget_ref (preferences_audio_quality_optionmenu);
2983   gtk_object_set_data_full (GTK_OBJECT (intf_preferences), "preferences_audio_quality_optionmenu", preferences_audio_quality_optionmenu,
2984                             (GtkDestroyNotify) gtk_widget_unref);
2985   gtk_widget_show (preferences_audio_quality_optionmenu);
2986   gtk_table_attach (GTK_TABLE (preferences_audio_table), preferences_audio_quality_optionmenu, 1, 2, 2, 3,
2987                     (GtkAttachOptions) (GTK_FILL),
2988                     (GtkAttachOptions) (0), 0, 0);
2989   preferences_audio_quality_optionmenu_menu = gtk_menu_new ();
2990   glade_menuitem = gtk_menu_item_new_with_label (_("8 bits"));
2991   gtk_widget_show (glade_menuitem);
2992   gtk_menu_append (GTK_MENU (preferences_audio_quality_optionmenu_menu), glade_menuitem);
2993   glade_menuitem = gtk_menu_item_new_with_label (_("16 bits"));
2994   gtk_widget_show (glade_menuitem);
2995   gtk_menu_append (GTK_MENU (preferences_audio_quality_optionmenu_menu), glade_menuitem);
2996   gtk_option_menu_set_menu (GTK_OPTION_MENU (preferences_audio_quality_optionmenu), preferences_audio_quality_optionmenu_menu);
2997   gtk_option_menu_set_history (GTK_OPTION_MENU (preferences_audio_quality_optionmenu), 1);
2998
2999   preferences_audio_frequency_optionmenu = gtk_option_menu_new ();
3000   gtk_widget_ref (preferences_audio_frequency_optionmenu);
3001   gtk_object_set_data_full (GTK_OBJECT (intf_preferences), "preferences_audio_frequency_optionmenu", preferences_audio_frequency_optionmenu,
3002                             (GtkDestroyNotify) gtk_widget_unref);
3003   gtk_widget_show (preferences_audio_frequency_optionmenu);
3004   gtk_table_attach (GTK_TABLE (preferences_audio_table), preferences_audio_frequency_optionmenu, 1, 2, 3, 4,
3005                     (GtkAttachOptions) (GTK_FILL),
3006                     (GtkAttachOptions) (0), 0, 0);
3007   preferences_audio_frequency_optionmenu_menu = gtk_menu_new ();
3008   glade_menuitem = gtk_menu_item_new_with_label (_("48000 Hz"));
3009   gtk_widget_show (glade_menuitem);
3010   gtk_menu_append (GTK_MENU (preferences_audio_frequency_optionmenu_menu), glade_menuitem);
3011   glade_menuitem = gtk_menu_item_new_with_label (_("44100 Hz"));
3012   gtk_widget_show (glade_menuitem);
3013   gtk_menu_append (GTK_MENU (preferences_audio_frequency_optionmenu_menu), glade_menuitem);
3014   gtk_option_menu_set_menu (GTK_OPTION_MENU (preferences_audio_frequency_optionmenu), preferences_audio_frequency_optionmenu_menu);
3015
3016   preferences_audio_channels_optionmenu = gtk_option_menu_new ();
3017   gtk_widget_ref (preferences_audio_channels_optionmenu);
3018   gtk_object_set_data_full (GTK_OBJECT (intf_preferences), "preferences_audio_channels_optionmenu", preferences_audio_channels_optionmenu,
3019                             (GtkDestroyNotify) gtk_widget_unref);
3020   gtk_widget_show (preferences_audio_channels_optionmenu);
3021   gtk_table_attach (GTK_TABLE (preferences_audio_table), preferences_audio_channels_optionmenu, 1, 2, 4, 5,
3022                     (GtkAttachOptions) (GTK_FILL),
3023                     (GtkAttachOptions) (0), 0, 0);
3024   preferences_audio_channels_optionmenu_menu = gtk_menu_new ();
3025   glade_menuitem = gtk_menu_item_new_with_label (_("Mono"));
3026   gtk_widget_show (glade_menuitem);
3027   gtk_menu_append (GTK_MENU (preferences_audio_channels_optionmenu_menu), glade_menuitem);
3028   glade_menuitem = gtk_menu_item_new_with_label (_("Stereo"));
3029   gtk_widget_show (glade_menuitem);
3030   gtk_menu_append (GTK_MENU (preferences_audio_channels_optionmenu_menu), glade_menuitem);
3031   gtk_option_menu_set_menu (GTK_OPTION_MENU (preferences_audio_channels_optionmenu), preferences_audio_channels_optionmenu_menu);
3032   gtk_option_menu_set_history (GTK_OPTION_MENU (preferences_audio_channels_optionmenu), 1);
3033
3034   preferences_audio_output_label = gtk_label_new (_("Default output:"));
3035   gtk_widget_ref (preferences_audio_output_label);
3036   gtk_object_set_data_full (GTK_OBJECT (intf_preferences), "preferences_audio_output_label", preferences_audio_output_label,
3037                             (GtkDestroyNotify) gtk_widget_unref);
3038   gtk_widget_show (preferences_audio_output_label);
3039   gtk_table_attach (GTK_TABLE (preferences_audio_table), preferences_audio_output_label, 0, 1, 0, 1,
3040                     (GtkAttachOptions) (GTK_EXPAND),
3041                     (GtkAttachOptions) (GTK_EXPAND), 0, 0);
3042   gtk_misc_set_alignment (GTK_MISC (preferences_audio_output_label), 0, 0.5);
3043
3044   preferences_audio_device_label = gtk_label_new (_("Default device:"));
3045   gtk_widget_ref (preferences_audio_device_label);
3046   gtk_object_set_data_full (GTK_OBJECT (intf_preferences), "preferences_audio_device_label", preferences_audio_device_label,
3047                             (GtkDestroyNotify) gtk_widget_unref);
3048   gtk_widget_show (preferences_audio_device_label);
3049   gtk_table_attach (GTK_TABLE (preferences_audio_table), preferences_audio_device_label, 0, 1, 1, 2,
3050                     (GtkAttachOptions) (GTK_EXPAND),
3051                     (GtkAttachOptions) (GTK_EXPAND), 0, 0);
3052   gtk_misc_set_alignment (GTK_MISC (preferences_audio_device_label), 0, 0.5);
3053
3054   preferences_audio_quality_label = gtk_label_new (_("Quality:"));
3055   gtk_widget_ref (preferences_audio_quality_label);
3056   gtk_object_set_data_full (GTK_OBJECT (intf_preferences), "preferences_audio_quality_label", preferences_audio_quality_label,
3057                             (GtkDestroyNotify) gtk_widget_unref);
3058   gtk_widget_show (preferences_audio_quality_label);
3059   gtk_table_attach (GTK_TABLE (preferences_audio_table), preferences_audio_quality_label, 0, 1, 2, 3,
3060                     (GtkAttachOptions) (GTK_EXPAND),
3061                     (GtkAttachOptions) (GTK_EXPAND), 0, 0);
3062   gtk_misc_set_alignment (GTK_MISC (preferences_audio_quality_label), 0, 0.5);
3063
3064   preferences_audio_frequency_label = gtk_label_new (_("Frequency:"));
3065   gtk_widget_ref (preferences_audio_frequency_label);
3066   gtk_object_set_data_full (GTK_OBJECT (intf_preferences), "preferences_audio_frequency_label", preferences_audio_frequency_label,
3067                             (GtkDestroyNotify) gtk_widget_unref);
3068   gtk_widget_show (preferences_audio_frequency_label);
3069   gtk_table_attach (GTK_TABLE (preferences_audio_table), preferences_audio_frequency_label, 0, 1, 3, 4,
3070                     (GtkAttachOptions) (GTK_EXPAND),
3071                     (GtkAttachOptions) (GTK_EXPAND), 0, 0);
3072   gtk_misc_set_alignment (GTK_MISC (preferences_audio_frequency_label), 0, 0.5);
3073
3074   preferences_audio_channel_label = gtk_label_new (_("Channels:"));
3075   gtk_widget_ref (preferences_audio_channel_label);
3076   gtk_object_set_data_full (GTK_OBJECT (intf_preferences), "preferences_audio_channel_label", preferences_audio_channel_label,
3077                             (GtkDestroyNotify) gtk_widget_unref);
3078   gtk_widget_show (preferences_audio_channel_label);
3079   gtk_table_attach (GTK_TABLE (preferences_audio_table), preferences_audio_channel_label, 0, 1, 4, 5,
3080                     (GtkAttachOptions) (GTK_EXPAND),
3081                     (GtkAttachOptions) (GTK_EXPAND), 0, 0);
3082   gtk_misc_set_alignment (GTK_MISC (preferences_audio_channel_label), 0, 0.5);
3083
3084   preferences_audio_spdif_checkbutton = gtk_check_button_new_with_label (_("Spdif output"));
3085   gtk_widget_ref (preferences_audio_spdif_checkbutton);
3086   gtk_object_set_data_full (GTK_OBJECT (intf_preferences), "preferences_audio_spdif_checkbutton", preferences_audio_spdif_checkbutton,
3087                             (GtkDestroyNotify) gtk_widget_unref);
3088   gtk_widget_show (preferences_audio_spdif_checkbutton);
3089   gtk_table_attach (GTK_TABLE (preferences_audio_table), preferences_audio_spdif_checkbutton, 0, 2, 5, 6,
3090                     (GtkAttachOptions) (GTK_EXPAND),
3091                     (GtkAttachOptions) (GTK_EXPAND), 0, 0);
3092
3093   preferences_audio_output_combo = gtk_combo_new ();
3094   gtk_widget_ref (preferences_audio_output_combo);
3095   gtk_object_set_data_full (GTK_OBJECT (intf_preferences), "preferences_audio_output_combo", preferences_audio_output_combo,
3096                             (GtkDestroyNotify) gtk_widget_unref);
3097   gtk_widget_show (preferences_audio_output_combo);
3098   gtk_table_attach (GTK_TABLE (preferences_audio_table), preferences_audio_output_combo, 1, 2, 0, 1,
3099                     (GtkAttachOptions) (GTK_EXPAND | GTK_FILL),
3100                     (GtkAttachOptions) (GTK_EXPAND), 0, 0);
3101   preferences_audio_output_combo_items = g_list_append (preferences_audio_output_combo_items, (gpointer) _("dsp"));
3102   preferences_audio_output_combo_items = g_list_append (preferences_audio_output_combo_items, (gpointer) _("alsa"));
3103   gtk_combo_set_popdown_strings (GTK_COMBO (preferences_audio_output_combo), preferences_audio_output_combo_items);
3104   g_list_free (preferences_audio_output_combo_items);
3105
3106   preferences_audio_output_entry = GTK_COMBO (preferences_audio_output_combo)->entry;
3107   gtk_widget_ref (preferences_audio_output_entry);
3108   gtk_object_set_data_full (GTK_OBJECT (intf_preferences), "preferences_audio_output_entry", preferences_audio_output_entry,
3109                             (GtkDestroyNotify) gtk_widget_unref);
3110   gtk_widget_show (preferences_audio_output_entry);
3111   gtk_entry_set_text (GTK_ENTRY (preferences_audio_output_entry), _("dsp"));
3112
3113   preferences_audio_device_combo = gtk_combo_new ();
3114   gtk_widget_ref (preferences_audio_device_combo);
3115   gtk_object_set_data_full (GTK_OBJECT (intf_preferences), "preferences_audio_device_combo", preferences_audio_device_combo,
3116                             (GtkDestroyNotify) gtk_widget_unref);
3117   gtk_widget_show (preferences_audio_device_combo);
3118   gtk_table_attach (GTK_TABLE (preferences_audio_table), preferences_audio_device_combo, 1, 2, 1, 2,
3119                     (GtkAttachOptions) (GTK_EXPAND | GTK_FILL),
3120                     (GtkAttachOptions) (GTK_EXPAND), 0, 0);
3121   preferences_audio_device_combo_items = g_list_append (preferences_audio_device_combo_items, (gpointer) _("/dev/dsp"));
3122   gtk_combo_set_popdown_strings (GTK_COMBO (preferences_audio_device_combo), preferences_audio_device_combo_items);
3123   g_list_free (preferences_audio_device_combo_items);
3124
3125   preferences_audio_device_entry = GTK_COMBO (preferences_audio_device_combo)->entry;
3126   gtk_widget_ref (preferences_audio_device_entry);
3127   gtk_object_set_data_full (GTK_OBJECT (intf_preferences), "preferences_audio_device_entry", preferences_audio_device_entry,
3128                             (GtkDestroyNotify) gtk_widget_unref);
3129   gtk_widget_show (preferences_audio_device_entry);
3130   gtk_entry_set_text (GTK_ENTRY (preferences_audio_device_entry), _("/dev/dsp"));
3131
3132   preferences_audio = gtk_label_new (_("Audio"));
3133   gtk_widget_ref (preferences_audio);
3134   gtk_object_set_data_full (GTK_OBJECT (intf_preferences), "preferences_audio", preferences_audio,
3135                             (GtkDestroyNotify) gtk_widget_unref);
3136   gtk_widget_show (preferences_audio);
3137   gtk_notebook_set_tab_label (GTK_NOTEBOOK (preferences_notebook), gtk_notebook_get_nth_page (GTK_NOTEBOOK (preferences_notebook), 5), preferences_audio);
3138
3139   preferences_playlist_table = gtk_table_new (3, 1, FALSE);
3140   gtk_widget_ref (preferences_playlist_table);
3141   gtk_object_set_data_full (GTK_OBJECT (intf_preferences), "preferences_playlist_table", preferences_playlist_table,
3142                             (GtkDestroyNotify) gtk_widget_unref);
3143   gtk_widget_show (preferences_playlist_table);
3144   gtk_container_add (GTK_CONTAINER (preferences_notebook), preferences_playlist_table);
3145   gtk_container_set_border_width (GTK_CONTAINER (preferences_playlist_table), 5);
3146   gtk_table_set_row_spacings (GTK_TABLE (preferences_playlist_table), 5);
3147   gtk_table_set_col_spacings (GTK_TABLE (preferences_playlist_table), 5);
3148
3149   preferences_playlist_startup_checkbutton = gtk_check_button_new_with_label (_("Launch on startup"));
3150   gtk_widget_ref (preferences_playlist_startup_checkbutton);
3151   gtk_object_set_data_full (GTK_OBJECT (intf_preferences), "preferences_playlist_startup_checkbutton", preferences_playlist_startup_checkbutton,
3152                             (GtkDestroyNotify) gtk_widget_unref);
3153   gtk_widget_show (preferences_playlist_startup_checkbutton);
3154   gtk_table_attach (GTK_TABLE (preferences_playlist_table), preferences_playlist_startup_checkbutton, 0, 1, 0, 1,
3155                     (GtkAttachOptions) (GTK_EXPAND),
3156                     (GtkAttachOptions) (GTK_EXPAND), 0, 0);
3157
3158   preferences_playlist_enqueue_checkbutton = gtk_check_button_new_with_label (_("Enqueue as default"));
3159   gtk_widget_ref (preferences_playlist_enqueue_checkbutton);
3160   gtk_object_set_data_full (GTK_OBJECT (intf_preferences), "preferences_playlist_enqueue_checkbutton", preferences_playlist_enqueue_checkbutton,
3161                             (GtkDestroyNotify) gtk_widget_unref);
3162   gtk_widget_show (preferences_playlist_enqueue_checkbutton);
3163   gtk_table_attach (GTK_TABLE (preferences_playlist_table), preferences_playlist_enqueue_checkbutton, 0, 1, 1, 2,
3164                     (GtkAttachOptions) (GTK_EXPAND),
3165                     (GtkAttachOptions) (GTK_EXPAND), 0, 0);
3166
3167   preferences_playlist_loop_checkbutton = gtk_check_button_new_with_label (_("Loop on playlist end"));
3168   gtk_widget_ref (preferences_playlist_loop_checkbutton);
3169   gtk_object_set_data_full (GTK_OBJECT (intf_preferences), "preferences_playlist_loop_checkbutton", preferences_playlist_loop_checkbutton,
3170                             (GtkDestroyNotify) gtk_widget_unref);
3171   gtk_widget_show (preferences_playlist_loop_checkbutton);
3172   gtk_table_attach (GTK_TABLE (preferences_playlist_table), preferences_playlist_loop_checkbutton, 0, 1, 2, 3,
3173                     (GtkAttachOptions) (GTK_EXPAND),
3174                     (GtkAttachOptions) (GTK_EXPAND), 0, 0);
3175
3176   preferences_playlist = gtk_label_new (_("Playlist"));
3177   gtk_widget_ref (preferences_playlist);
3178   gtk_object_set_data_full (GTK_OBJECT (intf_preferences), "preferences_playlist", preferences_playlist,
3179                             (GtkDestroyNotify) gtk_widget_unref);
3180   gtk_widget_show (preferences_playlist);
3181   gtk_notebook_set_tab_label (GTK_NOTEBOOK (preferences_notebook), gtk_notebook_get_nth_page (GTK_NOTEBOOK (preferences_notebook), 6), preferences_playlist);
3182
3183   preferences_misc_table = gtk_table_new (1, 2, FALSE);
3184   gtk_widget_ref (preferences_misc_table);
3185   gtk_object_set_data_full (GTK_OBJECT (intf_preferences), "preferences_misc_table", preferences_misc_table,
3186                             (GtkDestroyNotify) gtk_widget_unref);
3187   gtk_widget_show (preferences_misc_table);
3188   gtk_container_add (GTK_CONTAINER (preferences_notebook), preferences_misc_table);
3189   gtk_container_set_border_width (GTK_CONTAINER (preferences_misc_table), 5);
3190   gtk_table_set_row_spacings (GTK_TABLE (preferences_misc_table), 5);
3191   gtk_table_set_col_spacings (GTK_TABLE (preferences_misc_table), 5);
3192
3193   preferences_misc_associated_frame = gtk_frame_new (_("Types associated with vlc"));
3194   gtk_widget_ref (preferences_misc_associated_frame);
3195   gtk_object_set_data_full (GTK_OBJECT (intf_preferences), "preferences_misc_associated_frame", preferences_misc_associated_frame,
3196                             (GtkDestroyNotify) gtk_widget_unref);
3197   gtk_widget_show (preferences_misc_associated_frame);
3198   gtk_table_attach (GTK_TABLE (preferences_misc_table), preferences_misc_associated_frame, 0, 1, 0, 1,
3199                     (GtkAttachOptions) (GTK_EXPAND),
3200                     (GtkAttachOptions) (GTK_FILL), 0, 0);
3201
3202   preferences_misc_associated_table = gtk_table_new (4, 1, FALSE);
3203   gtk_widget_ref (preferences_misc_associated_table);
3204   gtk_object_set_data_full (GTK_OBJECT (intf_preferences), "preferences_misc_associated_table", preferences_misc_associated_table,
3205                             (GtkDestroyNotify) gtk_widget_unref);
3206   gtk_widget_show (preferences_misc_associated_table);
3207   gtk_container_add (GTK_CONTAINER (preferences_misc_associated_frame), preferences_misc_associated_table);
3208
3209   preferences_misc_associated_checkbutton = gtk_check_button_new_with_label (_("mpeg"));
3210   gtk_widget_ref (preferences_misc_associated_checkbutton);
3211   gtk_object_set_data_full (GTK_OBJECT (intf_preferences), "preferences_misc_associated_checkbutton", preferences_misc_associated_checkbutton,
3212                             (GtkDestroyNotify) gtk_widget_unref);
3213   gtk_widget_show (preferences_misc_associated_checkbutton);
3214   gtk_table_attach (GTK_TABLE (preferences_misc_associated_table), preferences_misc_associated_checkbutton, 0, 1, 0, 1,
3215                     (GtkAttachOptions) (GTK_FILL),
3216                     (GtkAttachOptions) (0), 0, 0);
3217
3218   preferences_misc_mp2_checkbutton = gtk_check_button_new_with_label (_("mp2"));
3219   gtk_widget_ref (preferences_misc_mp2_checkbutton);
3220   gtk_object_set_data_full (GTK_OBJECT (intf_preferences), "preferences_misc_mp2_checkbutton", preferences_misc_mp2_checkbutton,
3221                             (GtkDestroyNotify) gtk_widget_unref);
3222   gtk_widget_show (preferences_misc_mp2_checkbutton);
3223   gtk_table_attach (GTK_TABLE (preferences_misc_associated_table), preferences_misc_mp2_checkbutton, 0, 1, 1, 2,
3224                     (GtkAttachOptions) (GTK_FILL),
3225                     (GtkAttachOptions) (0), 0, 0);
3226
3227   preferences_misc_vob_checkbutton = gtk_check_button_new_with_label (_("vob"));
3228   gtk_widget_ref (preferences_misc_vob_checkbutton);
3229   gtk_object_set_data_full (GTK_OBJECT (intf_preferences), "preferences_misc_vob_checkbutton", preferences_misc_vob_checkbutton,
3230                             (GtkDestroyNotify) gtk_widget_unref);
3231   gtk_widget_show (preferences_misc_vob_checkbutton);
3232   gtk_table_attach (GTK_TABLE (preferences_misc_associated_table), preferences_misc_vob_checkbutton, 0, 1, 2, 3,
3233                     (GtkAttachOptions) (GTK_FILL),
3234                     (GtkAttachOptions) (0), 0, 0);
3235
3236   preferences_misc_ts_checkbutton = gtk_check_button_new_with_label (_("ts"));
3237   gtk_widget_ref (preferences_misc_ts_checkbutton);
3238   gtk_object_set_data_full (GTK_OBJECT (intf_preferences), "preferences_misc_ts_checkbutton", preferences_misc_ts_checkbutton,
3239                             (GtkDestroyNotify) gtk_widget_unref);
3240   gtk_widget_show (preferences_misc_ts_checkbutton);
3241   gtk_table_attach (GTK_TABLE (preferences_misc_associated_table), preferences_misc_ts_checkbutton, 0, 1, 3, 4,
3242                     (GtkAttachOptions) (GTK_FILL),
3243                     (GtkAttachOptions) (0), 0, 0);
3244
3245   preferences_misc_message_frame = gtk_frame_new (_("Messages"));
3246   gtk_widget_ref (preferences_misc_message_frame);
3247   gtk_object_set_data_full (GTK_OBJECT (intf_preferences), "preferences_misc_message_frame", preferences_misc_message_frame,
3248                             (GtkDestroyNotify) gtk_widget_unref);
3249   gtk_widget_show (preferences_misc_message_frame);
3250   gtk_table_attach (GTK_TABLE (preferences_misc_table), preferences_misc_message_frame, 1, 2, 0, 1,
3251                     (GtkAttachOptions) (GTK_EXPAND),
3252                     (GtkAttachOptions) (GTK_FILL), 0, 0);
3253
3254   preferences_misc_messages_table = gtk_table_new (1, 2, FALSE);
3255   gtk_widget_ref (preferences_misc_messages_table);
3256   gtk_object_set_data_full (GTK_OBJECT (intf_preferences), "preferences_misc_messages_table", preferences_misc_messages_table,
3257                             (GtkDestroyNotify) gtk_widget_unref);
3258   gtk_widget_show (preferences_misc_messages_table);
3259   gtk_container_add (GTK_CONTAINER (preferences_misc_message_frame), preferences_misc_messages_table);
3260
3261   preferences_misc_messages_label = gtk_label_new (_("Warning level: "));
3262   gtk_widget_ref (preferences_misc_messages_label);
3263   gtk_object_set_data_full (GTK_OBJECT (intf_preferences), "preferences_misc_messages_label", preferences_misc_messages_label,
3264                             (GtkDestroyNotify) gtk_widget_unref);
3265   gtk_widget_show (preferences_misc_messages_label);
3266   gtk_table_attach (GTK_TABLE (preferences_misc_messages_table), preferences_misc_messages_label, 0, 1, 0, 1,
3267                     (GtkAttachOptions) (GTK_FILL),
3268                     (GtkAttachOptions) (0), 0, 0);
3269   gtk_misc_set_alignment (GTK_MISC (preferences_misc_messages_label), 0, 0.5);
3270
3271   preferences_misc_messages_spinbutton_adj = gtk_adjustment_new (0, 0, 100, 1, 10, 10);
3272   preferences_misc_messages_spinbutton = gtk_spin_button_new (GTK_ADJUSTMENT (preferences_misc_messages_spinbutton_adj), 1, 0);
3273   gtk_widget_ref (preferences_misc_messages_spinbutton);
3274   gtk_object_set_data_full (GTK_OBJECT (intf_preferences), "preferences_misc_messages_spinbutton", preferences_misc_messages_spinbutton,
3275                             (GtkDestroyNotify) gtk_widget_unref);
3276   gtk_widget_show (preferences_misc_messages_spinbutton);
3277   gtk_table_attach (GTK_TABLE (preferences_misc_messages_table), preferences_misc_messages_spinbutton, 1, 2, 0, 1,
3278                     (GtkAttachOptions) (GTK_EXPAND),
3279                     (GtkAttachOptions) (0), 0, 0);
3280
3281   preferences_misc = gtk_label_new (_("Misc"));
3282   gtk_widget_ref (preferences_misc);
3283   gtk_object_set_data_full (GTK_OBJECT (intf_preferences), "preferences_misc", preferences_misc,
3284                             (GtkDestroyNotify) gtk_widget_unref);
3285   gtk_widget_show (preferences_misc);
3286   gtk_notebook_set_tab_label (GTK_NOTEBOOK (preferences_notebook), gtk_notebook_get_nth_page (GTK_NOTEBOOK (preferences_notebook), 7), preferences_misc);
3287
3288   dialog_action_area4 = GTK_DIALOG (intf_preferences)->action_area;
3289   gtk_object_set_data (GTK_OBJECT (intf_preferences), "dialog_action_area4", dialog_action_area4);
3290   gtk_widget_show (dialog_action_area4);
3291   gtk_container_set_border_width (GTK_CONTAINER (dialog_action_area4), 10);
3292
3293   preferences_ok_button = gtk_button_new_with_label (_("Ok"));
3294   gtk_widget_ref (preferences_ok_button);
3295   gtk_object_set_data_full (GTK_OBJECT (intf_preferences), "preferences_ok_button", preferences_ok_button,
3296                             (GtkDestroyNotify) gtk_widget_unref);
3297   gtk_widget_show (preferences_ok_button);
3298   gtk_box_pack_start (GTK_BOX (dialog_action_area4), preferences_ok_button, TRUE, TRUE, 0);
3299
3300   preferences_apply_button = gtk_button_new_with_label (_("Apply"));
3301   gtk_widget_ref (preferences_apply_button);
3302   gtk_object_set_data_full (GTK_OBJECT (intf_preferences), "preferences_apply_button", preferences_apply_button,
3303                             (GtkDestroyNotify) gtk_widget_unref);
3304   gtk_widget_show (preferences_apply_button);
3305   gtk_box_pack_start (GTK_BOX (dialog_action_area4), preferences_apply_button, TRUE, TRUE, 0);
3306
3307   preferences_cancel_button = gtk_button_new_with_label (_("Cancel"));
3308   gtk_widget_ref (preferences_cancel_button);
3309   gtk_object_set_data_full (GTK_OBJECT (intf_preferences), "preferences_cancel_button", preferences_cancel_button,
3310                             (GtkDestroyNotify) gtk_widget_unref);
3311   gtk_widget_show (preferences_cancel_button);
3312   gtk_box_pack_start (GTK_BOX (dialog_action_area4), preferences_cancel_button, TRUE, TRUE, 0);
3313
3314   gtk_signal_connect (GTK_OBJECT (preferences_ok_button), "clicked",
3315                       GTK_SIGNAL_FUNC (GtkPreferencesOk),
3316                       "intf_preferences");
3317   gtk_signal_connect (GTK_OBJECT (preferences_apply_button), "clicked",
3318                       GTK_SIGNAL_FUNC (GtkPreferencesApply),
3319                       "intf_preferences");
3320   gtk_signal_connect (GTK_OBJECT (preferences_cancel_button), "clicked",
3321                       GTK_SIGNAL_FUNC (GtkPreferencesCancel),
3322                       "intf_preferences");
3323
3324   return intf_preferences;
3325 }
3326
3327 GtkWidget*
3328 create_intf_messages (void)
3329 {
3330   GtkWidget *intf_messages;
3331   GtkWidget *dialog_vbox6;
3332   GtkWidget *scrolledwindow2;
3333   GtkWidget *messages_textbox;
3334   GtkWidget *dialog_action_area5;
3335   GtkWidget *messages_ok;
3336
3337   intf_messages = gtk_dialog_new ();
3338   gtk_object_set_data (GTK_OBJECT (intf_messages), "intf_messages", intf_messages);
3339   gtk_window_set_title (GTK_WINDOW (intf_messages), _("Messages"));
3340   gtk_window_set_default_size (GTK_WINDOW (intf_messages), 600, 400);
3341   gtk_window_set_policy (GTK_WINDOW (intf_messages), TRUE, TRUE, FALSE);
3342
3343   dialog_vbox6 = GTK_DIALOG (intf_messages)->vbox;
3344   gtk_object_set_data (GTK_OBJECT (intf_messages), "dialog_vbox6", dialog_vbox6);
3345   gtk_widget_show (dialog_vbox6);
3346
3347   scrolledwindow2 = gtk_scrolled_window_new (NULL, NULL);
3348   gtk_widget_ref (scrolledwindow2);
3349   gtk_object_set_data_full (GTK_OBJECT (intf_messages), "scrolledwindow2", scrolledwindow2,
3350                             (GtkDestroyNotify) gtk_widget_unref);
3351   gtk_widget_show (scrolledwindow2);
3352   gtk_box_pack_start (GTK_BOX (dialog_vbox6), scrolledwindow2, TRUE, TRUE, 0);
3353   gtk_scrolled_window_set_policy (GTK_SCROLLED_WINDOW (scrolledwindow2), GTK_POLICY_NEVER, GTK_POLICY_ALWAYS);
3354
3355   messages_textbox = gtk_text_new (NULL, NULL);
3356   gtk_widget_ref (messages_textbox);
3357   gtk_object_set_data_full (GTK_OBJECT (intf_messages), "messages_textbox", messages_textbox,
3358                             (GtkDestroyNotify) gtk_widget_unref);
3359   gtk_widget_show (messages_textbox);
3360   gtk_container_add (GTK_CONTAINER (scrolledwindow2), messages_textbox);
3361
3362   dialog_action_area5 = GTK_DIALOG (intf_messages)->action_area;
3363   gtk_object_set_data (GTK_OBJECT (intf_messages), "dialog_action_area5", dialog_action_area5);
3364   gtk_widget_show (dialog_action_area5);
3365   gtk_container_set_border_width (GTK_CONTAINER (dialog_action_area5), 10);
3366
3367   messages_ok = gtk_button_new_with_label (_("OK"));
3368   gtk_widget_ref (messages_ok);
3369   gtk_object_set_data_full (GTK_OBJECT (intf_messages), "messages_ok", messages_ok,
3370                             (GtkDestroyNotify) gtk_widget_unref);
3371   gtk_widget_show (messages_ok);
3372   gtk_box_pack_start (GTK_BOX (dialog_action_area5), messages_ok, FALSE, TRUE, 0);
3373   GTK_WIDGET_SET_FLAGS (messages_ok, GTK_CAN_DEFAULT);
3374
3375   gtk_signal_connect (GTK_OBJECT (intf_messages), "delete_event",
3376                       GTK_SIGNAL_FUNC (GtkMessagesDelete),
3377                       "intf_messages");
3378   gtk_signal_connect (GTK_OBJECT (messages_ok), "clicked",
3379                       GTK_SIGNAL_FUNC (GtkMessagesOk),
3380                       "intf_messages");
3381
3382   gtk_widget_grab_default (messages_ok);
3383   return intf_messages;
3384 }
3385