Things for Sonar - Alex
[terminatorX.git] / src / tX_glade_interface.cc
1 /*
2  * DO NOT EDIT THIS FILE - it is generated by Glade.
3  */
4
5 #ifdef HAVE_CONFIG_H
6 #  include <config.h>
7 #endif
8
9 #include <sys/types.h>
10 #include <sys/stat.h>
11 #include <unistd.h>
12 #include <string.h>
13 #include <stdio.h>
14
15 #include <gdk/gdkkeysyms.h>
16 #include <gtk/gtk.h>
17
18 #include "tX_glade_callbacks.h"
19 #include "tX_glade_interface.h"
20 #include "tX_glade_support.h"
21
22 #define GLADE_HOOKUP_OBJECT(component,widget,name) \
23   g_object_set_data_full (G_OBJECT (component), name, \
24     gtk_widget_ref (widget), (GDestroyNotify) gtk_widget_unref)
25
26 #define GLADE_HOOKUP_OBJECT_NO_REF(component,widget,name) \
27   g_object_set_data (G_OBJECT (component), name, widget)
28
29 GtkWidget*
30 create_tx_adjust (void)
31 {
32   GtkWidget *tx_adjust;
33   GtkWidget *dialog_vbox2;
34   GtkWidget *vbox1;
35   GtkWidget *label34;
36   GtkWidget *table7;
37   GtkObject *master_cycles_adj;
38   GtkWidget *master_cycles;
39   GtkWidget *label36;
40   GtkWidget *label35;
41   GtkObject *cycles_adj;
42   GtkWidget *cycles;
43   GtkWidget *create_event;
44   GtkWidget *dialog_action_area2;
45   GtkWidget *cancel;
46   GtkWidget *ok;
47   GtkTooltips *tooltips;
48
49   tooltips = gtk_tooltips_new ();
50
51   tx_adjust = gtk_dialog_new ();
52   gtk_window_set_title (GTK_WINDOW (tx_adjust), "Compute Pitch");
53
54   dialog_vbox2 = GTK_DIALOG (tx_adjust)->vbox;
55   gtk_widget_show (dialog_vbox2);
56
57   vbox1 = gtk_vbox_new (FALSE, 4);
58   gtk_widget_show (vbox1);
59   gtk_box_pack_start (GTK_BOX (dialog_vbox2), vbox1, TRUE, TRUE, 0);
60   gtk_container_set_border_width (GTK_CONTAINER (vbox1), 4);
61
62   label34 = gtk_label_new ("In order to compute the optimum pitch value, please specify how many loops of this turntable should play as fast as how many loops of the masterturntable:");
63   gtk_widget_show (label34);
64   gtk_box_pack_start (GTK_BOX (vbox1), label34, FALSE, FALSE, 0);
65   gtk_label_set_justify (GTK_LABEL (label34), GTK_JUSTIFY_LEFT);
66   gtk_label_set_line_wrap (GTK_LABEL (label34), TRUE);
67
68   table7 = gtk_table_new (2, 2, FALSE);
69   gtk_widget_show (table7);
70   gtk_box_pack_start (GTK_BOX (vbox1), table7, TRUE, TRUE, 0);
71   gtk_table_set_col_spacings (GTK_TABLE (table7), 3);
72
73   master_cycles_adj = gtk_adjustment_new (1, 1, 100, 1, 10, 10);
74   master_cycles = gtk_spin_button_new (GTK_ADJUSTMENT (master_cycles_adj), 1, 0);
75   gtk_widget_show (master_cycles);
76   gtk_table_attach (GTK_TABLE (table7), master_cycles, 1, 2, 1, 2,
77                     (GtkAttachOptions) (GTK_EXPAND | GTK_FILL),
78                     (GtkAttachOptions) (0), 0, 0);
79   gtk_tooltips_set_tip (tooltips, master_cycles, "Specify the number of loops for the master turntable.", NULL);
80
81   label36 = gtk_label_new ("Loops of the master turntable:");
82   gtk_widget_show (label36);
83   gtk_table_attach (GTK_TABLE (table7), label36, 0, 1, 1, 2,
84                     (GtkAttachOptions) (GTK_FILL),
85                     (GtkAttachOptions) (0), 0, 0);
86   gtk_label_set_justify (GTK_LABEL (label36), GTK_JUSTIFY_LEFT);
87
88   label35 = gtk_label_new ("Loops of this turntable turntable:");
89   gtk_widget_show (label35);
90   gtk_table_attach (GTK_TABLE (table7), label35, 0, 1, 0, 1,
91                     (GtkAttachOptions) (GTK_FILL),
92                     (GtkAttachOptions) (0), 0, 0);
93   gtk_label_set_justify (GTK_LABEL (label35), GTK_JUSTIFY_LEFT);
94
95   cycles_adj = gtk_adjustment_new (1, 1, 100, 1, 10, 10);
96   cycles = gtk_spin_button_new (GTK_ADJUSTMENT (cycles_adj), 1, 0);
97   gtk_widget_show (cycles);
98   gtk_table_attach (GTK_TABLE (table7), cycles, 1, 2, 0, 1,
99                     (GtkAttachOptions) (GTK_EXPAND | GTK_FILL),
100                     (GtkAttachOptions) (0), 0, 0);
101   gtk_tooltips_set_tip (tooltips, cycles, "Specify the number of loops of _this_ turntable.", NULL);
102
103   create_event = gtk_check_button_new_with_mnemonic ("Record a sequencer event");
104   gtk_widget_show (create_event);
105   gtk_box_pack_start (GTK_BOX (vbox1), create_event, FALSE, FALSE, 0);
106   gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (create_event), TRUE);
107
108   dialog_action_area2 = GTK_DIALOG (tx_adjust)->action_area;
109   gtk_widget_show (dialog_action_area2);
110   gtk_button_box_set_layout (GTK_BUTTON_BOX (dialog_action_area2), GTK_BUTTONBOX_END);
111
112   cancel = gtk_button_new_from_stock ("gtk-cancel");
113   gtk_widget_show (cancel);
114   gtk_dialog_add_action_widget (GTK_DIALOG (tx_adjust), cancel, GTK_RESPONSE_CANCEL);
115   GTK_WIDGET_SET_FLAGS (cancel, GTK_CAN_DEFAULT);
116
117   ok = gtk_button_new_from_stock ("gtk-ok");
118   gtk_widget_show (ok);
119   gtk_dialog_add_action_widget (GTK_DIALOG (tx_adjust), ok, GTK_RESPONSE_OK);
120   GTK_WIDGET_SET_FLAGS (ok, GTK_CAN_DEFAULT);
121
122   /* Store pointers to all widgets, for use by lookup_widget(). */
123   GLADE_HOOKUP_OBJECT_NO_REF (tx_adjust, tx_adjust, "tx_adjust");
124   GLADE_HOOKUP_OBJECT_NO_REF (tx_adjust, dialog_vbox2, "dialog_vbox2");
125   GLADE_HOOKUP_OBJECT (tx_adjust, vbox1, "vbox1");
126   GLADE_HOOKUP_OBJECT (tx_adjust, label34, "label34");
127   GLADE_HOOKUP_OBJECT (tx_adjust, table7, "table7");
128   GLADE_HOOKUP_OBJECT (tx_adjust, master_cycles, "master_cycles");
129   GLADE_HOOKUP_OBJECT (tx_adjust, label36, "label36");
130   GLADE_HOOKUP_OBJECT (tx_adjust, label35, "label35");
131   GLADE_HOOKUP_OBJECT (tx_adjust, cycles, "cycles");
132   GLADE_HOOKUP_OBJECT (tx_adjust, create_event, "create_event");
133   GLADE_HOOKUP_OBJECT_NO_REF (tx_adjust, dialog_action_area2, "dialog_action_area2");
134   GLADE_HOOKUP_OBJECT (tx_adjust, cancel, "cancel");
135   GLADE_HOOKUP_OBJECT (tx_adjust, ok, "ok");
136   GLADE_HOOKUP_OBJECT_NO_REF (tx_adjust, tooltips, "tooltips");
137
138   return tx_adjust;
139 }
140
141 GtkWidget*
142 create_tx_options (void)
143 {
144   GtkWidget *tx_options;
145   GtkWidget *dialog_vbox3;
146   GtkWidget *notebook1;
147   GtkWidget *table4;
148   GtkWidget *label18;
149   GtkWidget *hbox2;
150   GtkWidget *oss_driver;
151   GSList *oss_driver_group = NULL;
152   GtkWidget *alsa_driver;
153   GtkWidget *jack_driver;
154   GtkWidget *label1;
155   GtkWidget *table5;
156   GtkWidget *label21;
157   GtkWidget *label22;
158   GtkWidget *label23;
159   GtkWidget *label24;
160   GtkWidget *oss_audio_device;
161   GtkWidget *combo_entry2;
162   GtkObject *oss_buffers_adj;
163   GtkWidget *oss_buffers;
164   GtkWidget *oss_buffersize;
165   GtkWidget *oss_samplerate;
166   GtkWidget *combo_entry3;
167   GtkWidget *label15;
168   GtkWidget *table6;
169   GtkWidget *label27;
170   GtkWidget *label29;
171   GtkWidget *label30;
172   GtkWidget *alsa_audio_device;
173   GtkWidget *combo_entry4;
174   GtkWidget *alsa_samplerate;
175   GtkWidget *combo_entry5;
176   GtkWidget *alsa_period_time;
177   GtkWidget *label32;
178   GtkWidget *alsa_buffer_time;
179   GtkWidget *label39;
180   GtkWidget *alsa_free_hwstats;
181   GtkWidget *label16;
182   GtkWidget *table1;
183   GtkWidget *label5;
184   GtkWidget *label6;
185   GtkWidget *label7;
186   GtkWidget *xinput_device;
187   GtkWidget *combo_entry1;
188   GtkWidget *mouse_speed;
189   GtkWidget *stop_sense_cycles;
190   GtkWidget *label25;
191   GtkWidget *xinput_enable;
192   GtkWidget *label37;
193   GtkWidget *vtt_inertia;
194   GtkWidget *label4;
195   GtkWidget *table2;
196   GtkWidget *label8;
197   GtkWidget *label9;
198   GtkWidget *label10;
199   GtkWidget *label11;
200   GtkWidget *mainwin_tooltips;
201   GtkWidget *update_idle;
202   GtkWidget *update_delay;
203   GtkWidget *vumeter_decay;
204   GtkWidget *label14;
205   GtkWidget *startup_nagbox;
206   GtkWidget *label12;
207   GtkWidget *hbox1;
208   GtkWidget *buttons_text_and_icon;
209   GSList *buttons_text_and_icon_group = NULL;
210   GtkWidget *buttons_icon_only;
211   GtkWidget *buttons_text_only;
212   GtkWidget *label38;
213   GtkObject *filename_length_adj;
214   GtkWidget *filename_length;
215   GtkWidget *label2;
216   GtkWidget *table3;
217   GtkWidget *label13;
218   GtkWidget *soundfile_editor;
219   GtkWidget *label26;
220   GtkWidget *prelisten_enabled;
221   GtkWidget *label31;
222   GtkWidget *ladspa_rdf_path;
223   GtkWidget *label33;
224   GtkWidget *compress_set_files;
225   GtkWidget *label3;
226   GtkWidget *dialog_action_area3;
227   GtkWidget *pref_reset;
228   GtkWidget *pref_cancel;
229   GtkWidget *pref_apply;
230   GtkWidget *pref_ok;
231   GtkTooltips *tooltips;
232
233   tooltips = gtk_tooltips_new ();
234
235   tx_options = gtk_dialog_new ();
236   gtk_window_set_title (GTK_WINDOW (tx_options), "terminatorX Preferences");
237
238   dialog_vbox3 = GTK_DIALOG (tx_options)->vbox;
239   gtk_widget_show (dialog_vbox3);
240
241   notebook1 = gtk_notebook_new ();
242   gtk_widget_show (notebook1);
243   gtk_box_pack_start (GTK_BOX (dialog_vbox3), notebook1, TRUE, TRUE, 0);
244
245   table4 = gtk_table_new (1, 2, FALSE);
246   gtk_widget_show (table4);
247   gtk_container_add (GTK_CONTAINER (notebook1), table4);
248   gtk_container_set_border_width (GTK_CONTAINER (table4), 4);
249   gtk_table_set_row_spacings (GTK_TABLE (table4), 2);
250   gtk_table_set_col_spacings (GTK_TABLE (table4), 2);
251
252   label18 = gtk_label_new ("Use Driver:");
253   gtk_widget_show (label18);
254   gtk_table_attach (GTK_TABLE (table4), label18, 0, 1, 0, 1,
255                     (GtkAttachOptions) (GTK_FILL),
256                     (GtkAttachOptions) (0), 0, 0);
257   gtk_label_set_justify (GTK_LABEL (label18), GTK_JUSTIFY_LEFT);
258   gtk_misc_set_alignment (GTK_MISC (label18), 0, 0.5);
259
260   hbox2 = gtk_hbox_new (FALSE, 5);
261   gtk_widget_show (hbox2);
262   gtk_table_attach (GTK_TABLE (table4), hbox2, 1, 2, 0, 1,
263                     (GtkAttachOptions) (GTK_EXPAND | GTK_FILL),
264                     (GtkAttachOptions) (GTK_FILL), 0, 0);
265
266   oss_driver = gtk_radio_button_new_with_mnemonic (NULL, "OSS");
267   gtk_widget_show (oss_driver);
268   gtk_box_pack_start (GTK_BOX (hbox2), oss_driver, FALSE, FALSE, 0);
269   gtk_tooltips_set_tip (tooltips, oss_driver, "Use the OSS (Open Sound System) driver for audio output.", NULL);
270   gtk_radio_button_set_group (GTK_RADIO_BUTTON (oss_driver), oss_driver_group);
271   oss_driver_group = gtk_radio_button_get_group (GTK_RADIO_BUTTON (oss_driver));
272
273   alsa_driver = gtk_radio_button_new_with_mnemonic (NULL, "ALSA");
274   gtk_widget_show (alsa_driver);
275   gtk_box_pack_start (GTK_BOX (hbox2), alsa_driver, FALSE, FALSE, 0);
276   gtk_tooltips_set_tip (tooltips, alsa_driver, "Use the ALSA (Advanced Linux Sound System) driver for audio output.", NULL);
277   gtk_radio_button_set_group (GTK_RADIO_BUTTON (alsa_driver), oss_driver_group);
278   oss_driver_group = gtk_radio_button_get_group (GTK_RADIO_BUTTON (alsa_driver));
279
280   jack_driver = gtk_radio_button_new_with_mnemonic (NULL, "JACK");
281   gtk_widget_show (jack_driver);
282   gtk_box_pack_start (GTK_BOX (hbox2), jack_driver, FALSE, FALSE, 0);
283   gtk_tooltips_set_tip (tooltips, jack_driver, "Use the JACK (JACK Audio Connection Kit) driver for audio output.", NULL);
284   gtk_radio_button_set_group (GTK_RADIO_BUTTON (jack_driver), oss_driver_group);
285   oss_driver_group = gtk_radio_button_get_group (GTK_RADIO_BUTTON (jack_driver));
286
287   label1 = gtk_label_new ("Audio");
288   gtk_widget_show (label1);
289   gtk_notebook_set_tab_label (GTK_NOTEBOOK (notebook1), gtk_notebook_get_nth_page (GTK_NOTEBOOK (notebook1), 0), label1);
290   gtk_label_set_justify (GTK_LABEL (label1), GTK_JUSTIFY_LEFT);
291
292   table5 = gtk_table_new (4, 2, FALSE);
293   gtk_widget_show (table5);
294   gtk_container_add (GTK_CONTAINER (notebook1), table5);
295   gtk_container_set_border_width (GTK_CONTAINER (table5), 4);
296   gtk_table_set_row_spacings (GTK_TABLE (table5), 2);
297   gtk_table_set_col_spacings (GTK_TABLE (table5), 2);
298
299   label21 = gtk_label_new ("Audio Device:");
300   gtk_widget_show (label21);
301   gtk_table_attach (GTK_TABLE (table5), label21, 0, 1, 0, 1,
302                     (GtkAttachOptions) (GTK_FILL),
303                     (GtkAttachOptions) (0), 0, 0);
304   gtk_label_set_justify (GTK_LABEL (label21), GTK_JUSTIFY_LEFT);
305   gtk_misc_set_alignment (GTK_MISC (label21), 0, 0.5);
306
307   label22 = gtk_label_new ("No. of Buffers:");
308   gtk_widget_show (label22);
309   gtk_table_attach (GTK_TABLE (table5), label22, 0, 1, 1, 2,
310                     (GtkAttachOptions) (GTK_FILL),
311                     (GtkAttachOptions) (0), 0, 0);
312   gtk_label_set_justify (GTK_LABEL (label22), GTK_JUSTIFY_LEFT);
313   gtk_misc_set_alignment (GTK_MISC (label22), 0, 0.5);
314
315   label23 = gtk_label_new ("Buffersize (2^x):");
316   gtk_widget_show (label23);
317   gtk_table_attach (GTK_TABLE (table5), label23, 0, 1, 2, 3,
318                     (GtkAttachOptions) (GTK_FILL),
319                     (GtkAttachOptions) (0), 0, 0);
320   gtk_label_set_justify (GTK_LABEL (label23), GTK_JUSTIFY_LEFT);
321   gtk_misc_set_alignment (GTK_MISC (label23), 0, 0.5);
322
323   label24 = gtk_label_new ("Samplerate (Hz):");
324   gtk_widget_show (label24);
325   gtk_table_attach (GTK_TABLE (table5), label24, 0, 1, 3, 4,
326                     (GtkAttachOptions) (GTK_FILL),
327                     (GtkAttachOptions) (0), 0, 0);
328   gtk_label_set_justify (GTK_LABEL (label24), GTK_JUSTIFY_LEFT);
329   gtk_misc_set_alignment (GTK_MISC (label24), 0, 0.5);
330
331   oss_audio_device = gtk_combo_new ();
332   g_object_set_data (G_OBJECT (GTK_COMBO (oss_audio_device)->popwin),
333                      "GladeParentKey", oss_audio_device);
334   gtk_widget_show (oss_audio_device);
335   gtk_table_attach (GTK_TABLE (table5), oss_audio_device, 1, 2, 0, 1,
336                     (GtkAttachOptions) (GTK_EXPAND | GTK_FILL),
337                     (GtkAttachOptions) (0), 0, 0);
338
339   combo_entry2 = GTK_COMBO (oss_audio_device)->entry;
340   gtk_widget_show (combo_entry2);
341   gtk_tooltips_set_tip (tooltips, combo_entry2, "Select the audiodevice you want terminatorX to send its output to.", NULL);
342
343   oss_buffers_adj = gtk_adjustment_new (2, 2, 5, 1, 10, 10);
344   oss_buffers = gtk_spin_button_new (GTK_ADJUSTMENT (oss_buffers_adj), 1, 0);
345   gtk_widget_show (oss_buffers);
346   gtk_table_attach (GTK_TABLE (table5), oss_buffers, 1, 2, 1, 2,
347                     (GtkAttachOptions) (GTK_EXPAND | GTK_FILL),
348                     (GtkAttachOptions) (0), 0, 0);
349   gtk_tooltips_set_tip (tooltips, oss_buffers, "Sets the number of kernel level audio buffers. Actually most systems should run just fine with two.", NULL);
350
351   oss_buffersize = gtk_hscale_new (GTK_ADJUSTMENT (gtk_adjustment_new (9, 8, 16, 1, 1, 1)));
352   gtk_widget_show (oss_buffersize);
353   gtk_table_attach (GTK_TABLE (table5), oss_buffersize, 1, 2, 2, 3,
354                     (GtkAttachOptions) (GTK_FILL),
355                     (GtkAttachOptions) (GTK_FILL), 0, 0);
356   gtk_scale_set_digits (GTK_SCALE (oss_buffersize), 0);
357
358   oss_samplerate = gtk_combo_new ();
359   g_object_set_data (G_OBJECT (GTK_COMBO (oss_samplerate)->popwin),
360                      "GladeParentKey", oss_samplerate);
361   gtk_widget_show (oss_samplerate);
362   gtk_table_attach (GTK_TABLE (table5), oss_samplerate, 1, 2, 3, 4,
363                     (GtkAttachOptions) (GTK_EXPAND | GTK_FILL),
364                     (GtkAttachOptions) (0), 0, 0);
365
366   combo_entry3 = GTK_COMBO (oss_samplerate)->entry;
367   gtk_widget_show (combo_entry3);
368   gtk_tooltips_set_tip (tooltips, combo_entry3, "Select the sampling to use for this audio device - the higher the better quality. Note that not all sampling rates are supported by all audio devices.", NULL);
369
370   label15 = gtk_label_new ("Audio: OSS");
371   gtk_widget_show (label15);
372   gtk_notebook_set_tab_label (GTK_NOTEBOOK (notebook1), gtk_notebook_get_nth_page (GTK_NOTEBOOK (notebook1), 1), label15);
373   gtk_label_set_justify (GTK_LABEL (label15), GTK_JUSTIFY_LEFT);
374
375   table6 = gtk_table_new (5, 2, FALSE);
376   gtk_widget_show (table6);
377   gtk_container_add (GTK_CONTAINER (notebook1), table6);
378   gtk_container_set_border_width (GTK_CONTAINER (table6), 4);
379   gtk_table_set_row_spacings (GTK_TABLE (table6), 2);
380   gtk_table_set_col_spacings (GTK_TABLE (table6), 2);
381
382   label27 = gtk_label_new ("Audio Device:");
383   gtk_widget_show (label27);
384   gtk_table_attach (GTK_TABLE (table6), label27, 0, 1, 0, 1,
385                     (GtkAttachOptions) (GTK_FILL),
386                     (GtkAttachOptions) (0), 0, 0);
387   gtk_label_set_justify (GTK_LABEL (label27), GTK_JUSTIFY_LEFT);
388   gtk_misc_set_alignment (GTK_MISC (label27), 0, 0.5);
389
390   label29 = gtk_label_new ("Period Time (ms):");
391   gtk_widget_show (label29);
392   gtk_table_attach (GTK_TABLE (table6), label29, 0, 1, 2, 3,
393                     (GtkAttachOptions) (GTK_FILL),
394                     (GtkAttachOptions) (0), 0, 0);
395   gtk_label_set_justify (GTK_LABEL (label29), GTK_JUSTIFY_LEFT);
396   gtk_misc_set_alignment (GTK_MISC (label29), 0, 0.5);
397
398   label30 = gtk_label_new ("Samplerate (Hz):");
399   gtk_widget_show (label30);
400   gtk_table_attach (GTK_TABLE (table6), label30, 0, 1, 3, 4,
401                     (GtkAttachOptions) (GTK_FILL),
402                     (GtkAttachOptions) (0), 0, 0);
403   gtk_label_set_justify (GTK_LABEL (label30), GTK_JUSTIFY_LEFT);
404   gtk_misc_set_alignment (GTK_MISC (label30), 0, 0.5);
405
406   alsa_audio_device = gtk_combo_new ();
407   g_object_set_data (G_OBJECT (GTK_COMBO (alsa_audio_device)->popwin),
408                      "GladeParentKey", alsa_audio_device);
409   gtk_widget_show (alsa_audio_device);
410   gtk_table_attach (GTK_TABLE (table6), alsa_audio_device, 1, 2, 0, 1,
411                     (GtkAttachOptions) (GTK_EXPAND | GTK_FILL),
412                     (GtkAttachOptions) (0), 0, 0);
413
414   combo_entry4 = GTK_COMBO (alsa_audio_device)->entry;
415   gtk_widget_show (combo_entry4);
416
417   alsa_samplerate = gtk_combo_new ();
418   g_object_set_data (G_OBJECT (GTK_COMBO (alsa_samplerate)->popwin),
419                      "GladeParentKey", alsa_samplerate);
420   gtk_widget_show (alsa_samplerate);
421   gtk_table_attach (GTK_TABLE (table6), alsa_samplerate, 1, 2, 3, 4,
422                     (GtkAttachOptions) (GTK_EXPAND | GTK_FILL),
423                     (GtkAttachOptions) (0), 0, 0);
424
425   combo_entry5 = GTK_COMBO (alsa_samplerate)->entry;
426   gtk_widget_show (combo_entry5);
427
428   alsa_period_time = gtk_hscale_new (GTK_ADJUSTMENT (gtk_adjustment_new (29, 10, 500, 1, 10, 10)));
429   gtk_widget_show (alsa_period_time);
430   gtk_table_attach (GTK_TABLE (table6), alsa_period_time, 1, 2, 2, 3,
431                     (GtkAttachOptions) (GTK_FILL),
432                     (GtkAttachOptions) (GTK_FILL), 0, 0);
433   gtk_scale_set_digits (GTK_SCALE (alsa_period_time), 0);
434
435   label32 = gtk_label_new ("Buffer Time (ms):");
436   gtk_widget_show (label32);
437   gtk_table_attach (GTK_TABLE (table6), label32, 0, 1, 1, 2,
438                     (GtkAttachOptions) (GTK_FILL),
439                     (GtkAttachOptions) (0), 0, 0);
440   gtk_label_set_justify (GTK_LABEL (label32), GTK_JUSTIFY_LEFT);
441   gtk_misc_set_alignment (GTK_MISC (label32), 0, 0.5);
442
443   alsa_buffer_time = gtk_hscale_new (GTK_ADJUSTMENT (gtk_adjustment_new (50, 10, 500, 1, 10, 10)));
444   gtk_widget_show (alsa_buffer_time);
445   gtk_table_attach (GTK_TABLE (table6), alsa_buffer_time, 1, 2, 1, 2,
446                     (GtkAttachOptions) (GTK_FILL),
447                     (GtkAttachOptions) (GTK_FILL), 0, 0);
448   gtk_scale_set_digits (GTK_SCALE (alsa_buffer_time), 0);
449
450   label39 = gtk_label_new ("Free HWstats:");
451   gtk_widget_show (label39);
452   gtk_table_attach (GTK_TABLE (table6), label39, 0, 1, 4, 5,
453                     (GtkAttachOptions) (GTK_FILL),
454                     (GtkAttachOptions) (0), 0, 0);
455   gtk_label_set_justify (GTK_LABEL (label39), GTK_JUSTIFY_LEFT);
456   gtk_misc_set_alignment (GTK_MISC (label39), 0, 0.5);
457
458   alsa_free_hwstats = gtk_check_button_new_with_mnemonic ("Enabled");
459   gtk_widget_show (alsa_free_hwstats);
460   gtk_table_attach (GTK_TABLE (table6), alsa_free_hwstats, 1, 2, 4, 5,
461                     (GtkAttachOptions) (GTK_FILL),
462                     (GtkAttachOptions) (0), 0, 0);
463   gtk_toggle_button_set_active (GTK_TOGGLE_BUTTON (alsa_free_hwstats), TRUE);
464
465   label16 = gtk_label_new ("Audio: ALSA");
466   gtk_widget_show (label16);
467   gtk_notebook_set_tab_label (GTK_NOTEBOOK (notebook1), gtk_notebook_get_nth_page (GTK_NOTEBOOK (notebook1), 2), label16);
468   gtk_label_set_justify (GTK_LABEL (label16), GTK_JUSTIFY_LEFT);
469
470   table1 = gtk_table_new (5, 2, FALSE);
471   gtk_widget_show (table1);
472   gtk_container_add (GTK_CONTAINER (notebook1), table1);
473   gtk_container_set_border_width (GTK_CONTAINER (table1), 4);
474   gtk_table_set_row_spacings (GTK_TABLE (table1), 2);
475   gtk_table_set_col_spacings (GTK_TABLE (table1), 2);
476
477   label5 = gtk_label_new ("XInput Device:");
478   gtk_widget_show (label5);
479   gtk_table_attach (GTK_TABLE (table1), label5, 0, 1, 1, 2,
480                     (GtkAttachOptions) (GTK_FILL),
481                     (GtkAttachOptions) (0), 0, 0);
482   gtk_label_set_justify (GTK_LABEL (label5), GTK_JUSTIFY_LEFT);
483   gtk_misc_set_alignment (GTK_MISC (label5), 0, 0.5);
484
485   label6 = gtk_label_new ("Mouse Speed:");
486   gtk_widget_show (label6);
487   gtk_table_attach (GTK_TABLE (table1), label6, 0, 1, 2, 3,
488                     (GtkAttachOptions) (GTK_FILL),
489                     (GtkAttachOptions) (0), 0, 0);
490   gtk_label_set_justify (GTK_LABEL (label6), GTK_JUSTIFY_LEFT);
491   gtk_misc_set_alignment (GTK_MISC (label6), 0, 0.5);
492
493   label7 = gtk_label_new ("Stop-Sense-Cycles:");
494   gtk_widget_show (label7);
495   gtk_table_attach (GTK_TABLE (table1), label7, 0, 1, 3, 4,
496                     (GtkAttachOptions) (GTK_FILL),
497                     (GtkAttachOptions) (0), 0, 0);
498   gtk_label_set_justify (GTK_LABEL (label7), GTK_JUSTIFY_LEFT);
499   gtk_misc_set_alignment (GTK_MISC (label7), 0, 0.5);
500
501   xinput_device = gtk_combo_new ();
502   g_object_set_data (G_OBJECT (GTK_COMBO (xinput_device)->popwin),
503                      "GladeParentKey", xinput_device);
504   gtk_widget_show (xinput_device);
505   gtk_table_attach (GTK_TABLE (table1), xinput_device, 1, 2, 1, 2,
506                     (GtkAttachOptions) (GTK_EXPAND | GTK_FILL),
507                     (GtkAttachOptions) (0), 0, 0);
508
509   combo_entry1 = GTK_COMBO (xinput_device)->entry;
510   gtk_widget_show (combo_entry1);
511   gtk_tooltips_set_tip (tooltips, combo_entry1, "Select the input device to use when XInput is enabled. Note: do not use this option if you plan on using your default device (standard mouse).", NULL);
512
513   mouse_speed = gtk_hscale_new (GTK_ADJUSTMENT (gtk_adjustment_new (0, -10, 10, 0.5, 0.1, 0.1)));
514   gtk_widget_show (mouse_speed);
515   gtk_table_attach (GTK_TABLE (table1), mouse_speed, 1, 2, 2, 3,
516                     (GtkAttachOptions) (GTK_FILL),
517                     (GtkAttachOptions) (GTK_FILL), 0, 0);
518
519   stop_sense_cycles = gtk_hscale_new (GTK_ADJUSTMENT (gtk_adjustment_new (80, 30, 250, 5, 1, 1)));
520   gtk_widget_show (stop_sense_cycles);
521   gtk_table_attach (GTK_TABLE (table1), stop_sense_cycles, 1, 2, 3, 4,
522                     (GtkAttachOptions) (GTK_FILL),
523                     (GtkAttachOptions) (GTK_FILL), 0, 0);
524   gtk_scale_set_digits (GTK_SCALE (stop_sense_cycles), 0);
525
526   label25 = gtk_label_new ("XInput:");
527   gtk_widget_show (label25);
528   gtk_table_attach (GTK_TABLE (table1), label25, 0, 1, 0, 1,
529                     (GtkAttachOptions) (GTK_FILL),
530                     (GtkAttachOptions) (0), 0, 0);
531   gtk_label_set_justify (GTK_LABEL (label25), GTK_JUSTIFY_LEFT);
532   gtk_misc_set_alignment (GTK_MISC (label25), 0, 0.5);
533
534   xinput_enable = gtk_check_button_new_with_mnemonic ("Enabled");
535   gtk_widget_show (xinput_enable);
536   gtk_table_attach (GTK_TABLE (table1), xinput_enable, 1, 2, 0, 1,
537                     (GtkAttachOptions) (GTK_FILL),
538                     (GtkAttachOptions) (0), 0, 0);
539   gtk_tooltips_set_tip (tooltips, xinput_enable, "CAREFUL! Enable this *only* if you want to use an input device than your default X-Pointer (yes, your mouse ;). You have to select your desired device as well. Selecting the default mouse pointer will crash terminatorX so if you want to use that keep this option disabled.", NULL);
540
541   label37 = gtk_label_new ("Turntable Inertia:");
542   gtk_widget_show (label37);
543   gtk_table_attach (GTK_TABLE (table1), label37, 0, 1, 4, 5,
544                     (GtkAttachOptions) (GTK_FILL),
545                     (GtkAttachOptions) (0), 0, 0);
546   gtk_label_set_justify (GTK_LABEL (label37), GTK_JUSTIFY_LEFT);
547   gtk_misc_set_alignment (GTK_MISC (label37), 0, 0.5);
548
549   vtt_inertia = gtk_hscale_new (GTK_ADJUSTMENT (gtk_adjustment_new (10, 1, 310, 0.01, 1, 10)));
550   gtk_widget_show (vtt_inertia);
551   gtk_table_attach (GTK_TABLE (table1), vtt_inertia, 1, 2, 4, 5,
552                     (GtkAttachOptions) (GTK_FILL),
553                     (GtkAttachOptions) (GTK_FILL), 0, 0);
554
555   label4 = gtk_label_new ("Input");
556   gtk_widget_show (label4);
557   gtk_notebook_set_tab_label (GTK_NOTEBOOK (notebook1), gtk_notebook_get_nth_page (GTK_NOTEBOOK (notebook1), 3), label4);
558   gtk_label_set_justify (GTK_LABEL (label4), GTK_JUSTIFY_LEFT);
559
560   table2 = gtk_table_new (7, 2, FALSE);
561   gtk_widget_show (table2);
562   gtk_container_add (GTK_CONTAINER (notebook1), table2);
563   gtk_container_set_border_width (GTK_CONTAINER (table2), 4);
564   gtk_table_set_row_spacings (GTK_TABLE (table2), 2);
565   gtk_table_set_col_spacings (GTK_TABLE (table2), 2);
566
567   label8 = gtk_label_new ("Main Window Tooltips:");
568   gtk_widget_show (label8);
569   gtk_table_attach (GTK_TABLE (table2), label8, 0, 1, 1, 2,
570                     (GtkAttachOptions) (GTK_FILL),
571                     (GtkAttachOptions) (0), 0, 0);
572   gtk_label_set_justify (GTK_LABEL (label8), GTK_JUSTIFY_LEFT);
573   gtk_misc_set_alignment (GTK_MISC (label8), 0, 0.5);
574
575   label9 = gtk_label_new ("Update Idle (ms):");
576   gtk_widget_show (label9);
577   gtk_table_attach (GTK_TABLE (table2), label9, 0, 1, 3, 4,
578                     (GtkAttachOptions) (GTK_FILL),
579                     (GtkAttachOptions) (0), 0, 0);
580   gtk_label_set_justify (GTK_LABEL (label9), GTK_JUSTIFY_LEFT);
581   gtk_misc_set_alignment (GTK_MISC (label9), 0, 0.5);
582
583   label10 = gtk_label_new ("Update Delay (cycles):");
584   gtk_widget_show (label10);
585   gtk_table_attach (GTK_TABLE (table2), label10, 0, 1, 4, 5,
586                     (GtkAttachOptions) (GTK_FILL),
587                     (GtkAttachOptions) (0), 0, 0);
588   gtk_label_set_justify (GTK_LABEL (label10), GTK_JUSTIFY_LEFT);
589   gtk_misc_set_alignment (GTK_MISC (label10), 0, 0.5);
590
591   label11 = gtk_label_new ("VU Meter Decay:");
592   gtk_widget_show (label11);
593   gtk_table_attach (GTK_TABLE (table2), label11, 0, 1, 5, 6,
594                     (GtkAttachOptions) (GTK_FILL),
595                     (GtkAttachOptions) (0), 0, 0);
596   gtk_label_set_justify (GTK_LABEL (label11), GTK_JUSTIFY_LEFT);
597   gtk_misc_set_alignment (GTK_MISC (label11), 0, 0.5);
598
599   mainwin_tooltips = gtk_check_button_new_with_mnemonic ("Enabled");
600   gtk_widget_show (mainwin_tooltips);
601   gtk_table_attach (GTK_TABLE (table2), mainwin_tooltips, 1, 2, 1, 2,
602                     (GtkAttachOptions) (GTK_FILL),
603                     (GtkAttachOptions) (0), 0, 0);
604   gtk_tooltips_set_tip (tooltips, mainwin_tooltips, "Enable tooltips for the terminatorX main window.", NULL);
605
606   update_idle = gtk_hscale_new (GTK_ADJUSTMENT (gtk_adjustment_new (11, 2, 100, 1, 10, 10)));
607   gtk_widget_show (update_idle);
608   gtk_table_attach (GTK_TABLE (table2), update_idle, 1, 2, 3, 4,
609                     (GtkAttachOptions) (GTK_FILL),
610                     (GtkAttachOptions) (GTK_FILL), 0, 0);
611   gtk_scale_set_digits (GTK_SCALE (update_idle), 0);
612
613   update_delay = gtk_hscale_new (GTK_ADJUSTMENT (gtk_adjustment_new (0, 0, 15, 1, 10, 10)));
614   gtk_widget_show (update_delay);
615   gtk_table_attach (GTK_TABLE (table2), update_delay, 1, 2, 4, 5,
616                     (GtkAttachOptions) (GTK_FILL),
617                     (GtkAttachOptions) (GTK_FILL), 0, 0);
618   gtk_scale_set_digits (GTK_SCALE (update_delay), 0);
619
620   vumeter_decay = gtk_hscale_new (GTK_ADJUSTMENT (gtk_adjustment_new (0.8, 0.8, 0.99, 0.01, 0.01, 0.001)));
621   gtk_widget_show (vumeter_decay);
622   gtk_table_attach (GTK_TABLE (table2), vumeter_decay, 1, 2, 5, 6,
623                     (GtkAttachOptions) (GTK_FILL),
624                     (GtkAttachOptions) (GTK_FILL), 0, 0);
625
626   label14 = gtk_label_new ("Startup-Nagbox:");
627   gtk_widget_show (label14);
628   gtk_table_attach (GTK_TABLE (table2), label14, 0, 1, 0, 1,
629                     (GtkAttachOptions) (GTK_FILL),
630                     (GtkAttachOptions) (0), 0, 0);
631   gtk_label_set_justify (GTK_LABEL (label14), GTK_JUSTIFY_LEFT);
632   gtk_misc_set_alignment (GTK_MISC (label14), 0, 0.5);
633
634   startup_nagbox = gtk_check_button_new_with_mnemonic ("Enabled");
635   gtk_widget_show (startup_nagbox);
636   gtk_table_attach (GTK_TABLE (table2), startup_nagbox, 1, 2, 0, 1,
637                     (GtkAttachOptions) (GTK_FILL),
638                     (GtkAttachOptions) (0), 0, 0);
639   gtk_tooltips_set_tip (tooltips, startup_nagbox, "Display nagbox on startup while loading data.", NULL);
640
641   label12 = gtk_label_new ("Buttons:");
642   gtk_widget_show (label12);
643   gtk_table_attach (GTK_TABLE (table2), label12, 0, 1, 2, 3,
644                     (GtkAttachOptions) (GTK_FILL),
645                     (GtkAttachOptions) (0), 0, 0);
646   gtk_label_set_justify (GTK_LABEL (label12), GTK_JUSTIFY_LEFT);
647   gtk_misc_set_alignment (GTK_MISC (label12), 0, 0.5);
648
649   hbox1 = gtk_hbox_new (FALSE, 5);
650   gtk_widget_show (hbox1);
651   gtk_table_attach (GTK_TABLE (table2), hbox1, 1, 2, 2, 3,
652                     (GtkAttachOptions) (GTK_EXPAND | GTK_FILL),
653                     (GtkAttachOptions) (GTK_FILL), 0, 0);
654
655   buttons_text_and_icon = gtk_radio_button_new_with_mnemonic (NULL, "Text + Icon");
656   gtk_widget_show (buttons_text_and_icon);
657   gtk_box_pack_start (GTK_BOX (hbox1), buttons_text_and_icon, FALSE, FALSE, 0);
658   gtk_radio_button_set_group (GTK_RADIO_BUTTON (buttons_text_and_icon), buttons_text_and_icon_group);
659   buttons_text_and_icon_group = gtk_radio_button_get_group (GTK_RADIO_BUTTON (buttons_text_and_icon));
660
661   buttons_icon_only = gtk_radio_button_new_with_mnemonic (NULL, "Icon Only");
662   gtk_widget_show (buttons_icon_only);
663   gtk_box_pack_start (GTK_BOX (hbox1), buttons_icon_only, FALSE, FALSE, 0);
664   gtk_radio_button_set_group (GTK_RADIO_BUTTON (buttons_icon_only), buttons_text_and_icon_group);
665   buttons_text_and_icon_group = gtk_radio_button_get_group (GTK_RADIO_BUTTON (buttons_icon_only));
666
667   buttons_text_only = gtk_radio_button_new_with_mnemonic (NULL, "Text Only");
668   gtk_widget_show (buttons_text_only);
669   gtk_box_pack_start (GTK_BOX (hbox1), buttons_text_only, FALSE, FALSE, 0);
670   gtk_radio_button_set_group (GTK_RADIO_BUTTON (buttons_text_only), buttons_text_and_icon_group);
671   buttons_text_and_icon_group = gtk_radio_button_get_group (GTK_RADIO_BUTTON (buttons_text_only));
672
673   label38 = gtk_label_new ("Filename Length:");
674   gtk_widget_show (label38);
675   gtk_table_attach (GTK_TABLE (table2), label38, 0, 1, 6, 7,
676                     (GtkAttachOptions) (GTK_FILL),
677                     (GtkAttachOptions) (0), 0, 0);
678   gtk_label_set_justify (GTK_LABEL (label38), GTK_JUSTIFY_LEFT);
679   gtk_misc_set_alignment (GTK_MISC (label38), 0, 0.5);
680
681   filename_length_adj = gtk_adjustment_new (8, 3, 255, 1, 10, 10);
682   filename_length = gtk_spin_button_new (GTK_ADJUSTMENT (filename_length_adj), 1, 0);
683   gtk_widget_show (filename_length);
684   gtk_table_attach (GTK_TABLE (table2), filename_length, 1, 2, 6, 7,
685                     (GtkAttachOptions) (GTK_EXPAND | GTK_FILL),
686                     (GtkAttachOptions) (0), 0, 0);
687
688   label2 = gtk_label_new ("User Interface");
689   gtk_widget_show (label2);
690   gtk_notebook_set_tab_label (GTK_NOTEBOOK (notebook1), gtk_notebook_get_nth_page (GTK_NOTEBOOK (notebook1), 4), label2);
691   gtk_label_set_justify (GTK_LABEL (label2), GTK_JUSTIFY_LEFT);
692
693   table3 = gtk_table_new (4, 2, FALSE);
694   gtk_widget_show (table3);
695   gtk_container_add (GTK_CONTAINER (notebook1), table3);
696   gtk_container_set_border_width (GTK_CONTAINER (table3), 4);
697   gtk_table_set_row_spacings (GTK_TABLE (table3), 2);
698   gtk_table_set_col_spacings (GTK_TABLE (table3), 2);
699
700   label13 = gtk_label_new ("Soundfile Editor:");
701   gtk_widget_show (label13);
702   gtk_table_attach (GTK_TABLE (table3), label13, 0, 1, 0, 1,
703                     (GtkAttachOptions) (GTK_FILL),
704                     (GtkAttachOptions) (0), 0, 0);
705   gtk_label_set_justify (GTK_LABEL (label13), GTK_JUSTIFY_LEFT);
706   gtk_misc_set_alignment (GTK_MISC (label13), 0, 0.5);
707
708   soundfile_editor = gtk_entry_new ();
709   gtk_widget_show (soundfile_editor);
710   gtk_table_attach (GTK_TABLE (table3), soundfile_editor, 1, 2, 0, 1,
711                     (GtkAttachOptions) (GTK_EXPAND | GTK_FILL),
712                     (GtkAttachOptions) (0), 0, 0);
713   gtk_tooltips_set_tip (tooltips, soundfile_editor, "Enter the command to run your favourite soundfile editor. It will be started when you choose \"Edit File\" from the turntable's file menu.", NULL);
714
715   label26 = gtk_label_new ("\"Pre-Listen\" to soundfiles:");
716   gtk_widget_show (label26);
717   gtk_table_attach (GTK_TABLE (table3), label26, 0, 1, 3, 4,
718                     (GtkAttachOptions) (GTK_FILL),
719                     (GtkAttachOptions) (0), 0, 0);
720   gtk_label_set_justify (GTK_LABEL (label26), GTK_JUSTIFY_LEFT);
721   gtk_misc_set_alignment (GTK_MISC (label26), 0, 0.5);
722
723   prelisten_enabled = gtk_check_button_new_with_mnemonic ("Enabled");
724   gtk_widget_show (prelisten_enabled);
725   gtk_table_attach (GTK_TABLE (table3), prelisten_enabled, 1, 2, 3, 4,
726                     (GtkAttachOptions) (GTK_FILL),
727                     (GtkAttachOptions) (0), 0, 0);
728   gtk_tooltips_set_tip (tooltips, prelisten_enabled, "When enabled soundfiles will be playedback when selected in a file dialog (before loading them).", NULL);
729
730   label31 = gtk_label_new ("LADSPA RDF Path:");
731   gtk_widget_show (label31);
732   gtk_table_attach (GTK_TABLE (table3), label31, 0, 1, 1, 2,
733                     (GtkAttachOptions) (GTK_FILL),
734                     (GtkAttachOptions) (0), 0, 0);
735   gtk_label_set_justify (GTK_LABEL (label31), GTK_JUSTIFY_LEFT);
736   gtk_misc_set_alignment (GTK_MISC (label31), 0, 0.5);
737
738   ladspa_rdf_path = gtk_entry_new ();
739   gtk_widget_show (ladspa_rdf_path);
740   gtk_table_attach (GTK_TABLE (table3), ladspa_rdf_path, 1, 2, 1, 2,
741                     (GtkAttachOptions) (GTK_EXPAND | GTK_FILL),
742                     (GtkAttachOptions) (0), 0, 0);
743
744   label33 = gtk_label_new ("Compress set files:");
745   gtk_widget_show (label33);
746   gtk_table_attach (GTK_TABLE (table3), label33, 0, 1, 2, 3,
747                     (GtkAttachOptions) (GTK_FILL),
748                     (GtkAttachOptions) (0), 0, 0);
749   gtk_label_set_justify (GTK_LABEL (label33), GTK_JUSTIFY_LEFT);
750   gtk_misc_set_alignment (GTK_MISC (label33), 0, 0.5);
751
752   compress_set_files = gtk_check_button_new_with_mnemonic ("Enabled");
753   gtk_widget_show (compress_set_files);
754   gtk_table_attach (GTK_TABLE (table3), compress_set_files, 1, 2, 2, 3,
755                     (GtkAttachOptions) (GTK_FILL),
756                     (GtkAttachOptions) (0), 0, 0);
757
758   label3 = gtk_label_new ("Misc");
759   gtk_widget_show (label3);
760   gtk_notebook_set_tab_label (GTK_NOTEBOOK (notebook1), gtk_notebook_get_nth_page (GTK_NOTEBOOK (notebook1), 5), label3);
761   gtk_label_set_justify (GTK_LABEL (label3), GTK_JUSTIFY_LEFT);
762
763   dialog_action_area3 = GTK_DIALOG (tx_options)->action_area;
764   gtk_widget_show (dialog_action_area3);
765   gtk_button_box_set_layout (GTK_BUTTON_BOX (dialog_action_area3), GTK_BUTTONBOX_END);
766
767   pref_reset = gtk_button_new_from_stock ("gtk-revert-to-saved");
768   gtk_widget_show (pref_reset);
769   gtk_dialog_add_action_widget (GTK_DIALOG (tx_options), pref_reset, 0);
770   GTK_WIDGET_SET_FLAGS (pref_reset, GTK_CAN_DEFAULT);
771
772   pref_cancel = gtk_button_new_from_stock ("gtk-cancel");
773   gtk_widget_show (pref_cancel);
774   gtk_dialog_add_action_widget (GTK_DIALOG (tx_options), pref_cancel, GTK_RESPONSE_CANCEL);
775   GTK_WIDGET_SET_FLAGS (pref_cancel, GTK_CAN_DEFAULT);
776
777   pref_apply = gtk_button_new_from_stock ("gtk-apply");
778   gtk_widget_show (pref_apply);
779   gtk_dialog_add_action_widget (GTK_DIALOG (tx_options), pref_apply, GTK_RESPONSE_APPLY);
780   GTK_WIDGET_SET_FLAGS (pref_apply, GTK_CAN_DEFAULT);
781
782   pref_ok = gtk_button_new_from_stock ("gtk-ok");
783   gtk_widget_show (pref_ok);
784   gtk_dialog_add_action_widget (GTK_DIALOG (tx_options), pref_ok, GTK_RESPONSE_OK);
785   GTK_WIDGET_SET_FLAGS (pref_ok, GTK_CAN_DEFAULT);
786
787   g_signal_connect ((gpointer) tx_options, "destroy",
788                     G_CALLBACK (on_tx_options_destroy),
789                     NULL);
790   g_signal_connect_swapped ((gpointer) alsa_buffer_time, "value_changed",
791                             G_CALLBACK (on_alsa_buffer_time_value_changed),
792                             GTK_OBJECT (alsa_period_time));
793   g_signal_connect ((gpointer) pref_reset, "clicked",
794                     G_CALLBACK (on_pref_reset_clicked),
795                     NULL);
796   g_signal_connect ((gpointer) pref_cancel, "clicked",
797                     G_CALLBACK (on_pref_cancel_clicked),
798                     NULL);
799   g_signal_connect ((gpointer) pref_apply, "clicked",
800                     G_CALLBACK (on_pref_apply_clicked),
801                     NULL);
802   g_signal_connect ((gpointer) pref_ok, "clicked",
803                     G_CALLBACK (on_pref_ok_clicked),
804                     NULL);
805
806   /* Store pointers to all widgets, for use by lookup_widget(). */
807   GLADE_HOOKUP_OBJECT_NO_REF (tx_options, tx_options, "tx_options");
808   GLADE_HOOKUP_OBJECT_NO_REF (tx_options, dialog_vbox3, "dialog_vbox3");
809   GLADE_HOOKUP_OBJECT (tx_options, notebook1, "notebook1");
810   GLADE_HOOKUP_OBJECT (tx_options, table4, "table4");
811   GLADE_HOOKUP_OBJECT (tx_options, label18, "label18");
812   GLADE_HOOKUP_OBJECT (tx_options, hbox2, "hbox2");
813   GLADE_HOOKUP_OBJECT (tx_options, oss_driver, "oss_driver");
814   GLADE_HOOKUP_OBJECT (tx_options, alsa_driver, "alsa_driver");
815   GLADE_HOOKUP_OBJECT (tx_options, jack_driver, "jack_driver");
816   GLADE_HOOKUP_OBJECT (tx_options, label1, "label1");
817   GLADE_HOOKUP_OBJECT (tx_options, table5, "table5");
818   GLADE_HOOKUP_OBJECT (tx_options, label21, "label21");
819   GLADE_HOOKUP_OBJECT (tx_options, label22, "label22");
820   GLADE_HOOKUP_OBJECT (tx_options, label23, "label23");
821   GLADE_HOOKUP_OBJECT (tx_options, label24, "label24");
822   GLADE_HOOKUP_OBJECT (tx_options, oss_audio_device, "oss_audio_device");
823   GLADE_HOOKUP_OBJECT (tx_options, combo_entry2, "combo_entry2");
824   GLADE_HOOKUP_OBJECT (tx_options, oss_buffers, "oss_buffers");
825   GLADE_HOOKUP_OBJECT (tx_options, oss_buffersize, "oss_buffersize");
826   GLADE_HOOKUP_OBJECT (tx_options, oss_samplerate, "oss_samplerate");
827   GLADE_HOOKUP_OBJECT (tx_options, combo_entry3, "combo_entry3");
828   GLADE_HOOKUP_OBJECT (tx_options, label15, "label15");
829   GLADE_HOOKUP_OBJECT (tx_options, table6, "table6");
830   GLADE_HOOKUP_OBJECT (tx_options, label27, "label27");
831   GLADE_HOOKUP_OBJECT (tx_options, label29, "label29");
832   GLADE_HOOKUP_OBJECT (tx_options, label30, "label30");
833   GLADE_HOOKUP_OBJECT (tx_options, alsa_audio_device, "alsa_audio_device");
834   GLADE_HOOKUP_OBJECT (tx_options, combo_entry4, "combo_entry4");
835   GLADE_HOOKUP_OBJECT (tx_options, alsa_samplerate, "alsa_samplerate");
836   GLADE_HOOKUP_OBJECT (tx_options, combo_entry5, "combo_entry5");
837   GLADE_HOOKUP_OBJECT (tx_options, alsa_period_time, "alsa_period_time");
838   GLADE_HOOKUP_OBJECT (tx_options, label32, "label32");
839   GLADE_HOOKUP_OBJECT (tx_options, alsa_buffer_time, "alsa_buffer_time");
840   GLADE_HOOKUP_OBJECT (tx_options, label39, "label39");
841   GLADE_HOOKUP_OBJECT (tx_options, alsa_free_hwstats, "alsa_free_hwstats");
842   GLADE_HOOKUP_OBJECT (tx_options, label16, "label16");
843   GLADE_HOOKUP_OBJECT (tx_options, table1, "table1");
844   GLADE_HOOKUP_OBJECT (tx_options, label5, "label5");
845   GLADE_HOOKUP_OBJECT (tx_options, label6, "label6");
846   GLADE_HOOKUP_OBJECT (tx_options, label7, "label7");
847   GLADE_HOOKUP_OBJECT (tx_options, xinput_device, "xinput_device");
848   GLADE_HOOKUP_OBJECT (tx_options, combo_entry1, "combo_entry1");
849   GLADE_HOOKUP_OBJECT (tx_options, mouse_speed, "mouse_speed");
850   GLADE_HOOKUP_OBJECT (tx_options, stop_sense_cycles, "stop_sense_cycles");
851   GLADE_HOOKUP_OBJECT (tx_options, label25, "label25");
852   GLADE_HOOKUP_OBJECT (tx_options, xinput_enable, "xinput_enable");
853   GLADE_HOOKUP_OBJECT (tx_options, label37, "label37");
854   GLADE_HOOKUP_OBJECT (tx_options, vtt_inertia, "vtt_inertia");
855   GLADE_HOOKUP_OBJECT (tx_options, label4, "label4");
856   GLADE_HOOKUP_OBJECT (tx_options, table2, "table2");
857   GLADE_HOOKUP_OBJECT (tx_options, label8, "label8");
858   GLADE_HOOKUP_OBJECT (tx_options, label9, "label9");
859   GLADE_HOOKUP_OBJECT (tx_options, label10, "label10");
860   GLADE_HOOKUP_OBJECT (tx_options, label11, "label11");
861   GLADE_HOOKUP_OBJECT (tx_options, mainwin_tooltips, "mainwin_tooltips");
862   GLADE_HOOKUP_OBJECT (tx_options, update_idle, "update_idle");
863   GLADE_HOOKUP_OBJECT (tx_options, update_delay, "update_delay");
864   GLADE_HOOKUP_OBJECT (tx_options, vumeter_decay, "vumeter_decay");
865   GLADE_HOOKUP_OBJECT (tx_options, label14, "label14");
866   GLADE_HOOKUP_OBJECT (tx_options, startup_nagbox, "startup_nagbox");
867   GLADE_HOOKUP_OBJECT (tx_options, label12, "label12");
868   GLADE_HOOKUP_OBJECT (tx_options, hbox1, "hbox1");
869   GLADE_HOOKUP_OBJECT (tx_options, buttons_text_and_icon, "buttons_text_and_icon");
870   GLADE_HOOKUP_OBJECT (tx_options, buttons_icon_only, "buttons_icon_only");
871   GLADE_HOOKUP_OBJECT (tx_options, buttons_text_only, "buttons_text_only");
872   GLADE_HOOKUP_OBJECT (tx_options, label38, "label38");
873   GLADE_HOOKUP_OBJECT (tx_options, filename_length, "filename_length");
874   GLADE_HOOKUP_OBJECT (tx_options, label2, "label2");
875   GLADE_HOOKUP_OBJECT (tx_options, table3, "table3");
876   GLADE_HOOKUP_OBJECT (tx_options, label13, "label13");
877   GLADE_HOOKUP_OBJECT (tx_options, soundfile_editor, "soundfile_editor");
878   GLADE_HOOKUP_OBJECT (tx_options, label26, "label26");
879   GLADE_HOOKUP_OBJECT (tx_options, prelisten_enabled, "prelisten_enabled");
880   GLADE_HOOKUP_OBJECT (tx_options, label31, "label31");
881   GLADE_HOOKUP_OBJECT (tx_options, ladspa_rdf_path, "ladspa_rdf_path");
882   GLADE_HOOKUP_OBJECT (tx_options, label33, "label33");
883   GLADE_HOOKUP_OBJECT (tx_options, compress_set_files, "compress_set_files");
884   GLADE_HOOKUP_OBJECT (tx_options, label3, "label3");
885   GLADE_HOOKUP_OBJECT_NO_REF (tx_options, dialog_action_area3, "dialog_action_area3");
886   GLADE_HOOKUP_OBJECT (tx_options, pref_reset, "pref_reset");
887   GLADE_HOOKUP_OBJECT (tx_options, pref_cancel, "pref_cancel");
888   GLADE_HOOKUP_OBJECT (tx_options, pref_apply, "pref_apply");
889   GLADE_HOOKUP_OBJECT (tx_options, pref_ok, "pref_ok");
890   GLADE_HOOKUP_OBJECT_NO_REF (tx_options, tooltips, "tooltips");
891
892   return tx_options;
893 }
894
895 GtkWidget*
896 create_tx_del_mode (void)
897 {
898   GtkWidget *tx_del_mode;
899   GtkWidget *dialog_vbox4;
900   GtkWidget *vbox2;
901   GtkWidget *delmode_label;
902   GtkWidget *hbox3;
903   GtkWidget *vbox3;
904   GtkWidget *all_events;
905   GSList *all_events_group = NULL;
906   GtkWidget *upto_current;
907   GtkWidget *from_current;
908   GtkWidget *dialog_action_area4;
909   GtkWidget *cancelbutton1;
910   GtkWidget *okbutton1;
911
912   tx_del_mode = gtk_dialog_new ();
913   gtk_window_set_title (GTK_WINDOW (tx_del_mode), "Choose Events to Delete");
914
915   dialog_vbox4 = GTK_DIALOG (tx_del_mode)->vbox;
916   gtk_widget_show (dialog_vbox4);
917
918   vbox2 = gtk_vbox_new (FALSE, 2);
919   gtk_widget_show (vbox2);
920   gtk_box_pack_start (GTK_BOX (dialog_vbox4), vbox2, TRUE, TRUE, 0);
921   gtk_container_set_border_width (GTK_CONTAINER (vbox2), 4);
922
923   delmode_label = gtk_label_new ("Select which events to delete.");
924   gtk_widget_show (delmode_label);
925   gtk_box_pack_start (GTK_BOX (vbox2), delmode_label, TRUE, FALSE, 0);
926   gtk_label_set_justify (GTK_LABEL (delmode_label), GTK_JUSTIFY_LEFT);
927
928   hbox3 = gtk_hbox_new (FALSE, 0);
929   gtk_widget_show (hbox3);
930   gtk_box_pack_start (GTK_BOX (vbox2), hbox3, TRUE, FALSE, 0);
931
932   vbox3 = gtk_vbox_new (FALSE, 0);
933   gtk_widget_show (vbox3);
934   gtk_box_pack_start (GTK_BOX (hbox3), vbox3, TRUE, FALSE, 0);
935
936   all_events = gtk_radio_button_new_with_mnemonic (NULL, "Complete song");
937   gtk_widget_show (all_events);
938   gtk_box_pack_start (GTK_BOX (vbox3), all_events, FALSE, FALSE, 0);
939   gtk_radio_button_set_group (GTK_RADIO_BUTTON (all_events), all_events_group);
940   all_events_group = gtk_radio_button_get_group (GTK_RADIO_BUTTON (all_events));
941
942   upto_current = gtk_radio_button_new_with_mnemonic (NULL, "Upto the current song position");
943   gtk_widget_show (upto_current);
944   gtk_box_pack_start (GTK_BOX (vbox3), upto_current, FALSE, FALSE, 0);
945   gtk_radio_button_set_group (GTK_RADIO_BUTTON (upto_current), all_events_group);
946   all_events_group = gtk_radio_button_get_group (GTK_RADIO_BUTTON (upto_current));
947
948   from_current = gtk_radio_button_new_with_mnemonic (NULL, "From the current song position");
949   gtk_widget_show (from_current);
950   gtk_box_pack_start (GTK_BOX (vbox3), from_current, FALSE, FALSE, 0);
951   gtk_radio_button_set_group (GTK_RADIO_BUTTON (from_current), all_events_group);
952   all_events_group = gtk_radio_button_get_group (GTK_RADIO_BUTTON (from_current));
953
954   dialog_action_area4 = GTK_DIALOG (tx_del_mode)->action_area;
955   gtk_widget_show (dialog_action_area4);
956   gtk_button_box_set_layout (GTK_BUTTON_BOX (dialog_action_area4), GTK_BUTTONBOX_END);
957
958   cancelbutton1 = gtk_button_new_from_stock ("gtk-cancel");
959   gtk_widget_show (cancelbutton1);
960   gtk_dialog_add_action_widget (GTK_DIALOG (tx_del_mode), cancelbutton1, GTK_RESPONSE_CANCEL);
961   GTK_WIDGET_SET_FLAGS (cancelbutton1, GTK_CAN_DEFAULT);
962
963   okbutton1 = gtk_button_new_from_stock ("gtk-ok");
964   gtk_widget_show (okbutton1);
965   gtk_dialog_add_action_widget (GTK_DIALOG (tx_del_mode), okbutton1, GTK_RESPONSE_OK);
966   GTK_WIDGET_SET_FLAGS (okbutton1, GTK_CAN_DEFAULT);
967
968   g_signal_connect ((gpointer) cancelbutton1, "clicked",
969                     G_CALLBACK (on_del_mode_cancel_clicked),
970                     NULL);
971   g_signal_connect ((gpointer) okbutton1, "clicked",
972                     G_CALLBACK (on_del_mode_ok_clicked),
973                     NULL);
974
975   /* Store pointers to all widgets, for use by lookup_widget(). */
976   GLADE_HOOKUP_OBJECT_NO_REF (tx_del_mode, tx_del_mode, "tx_del_mode");
977   GLADE_HOOKUP_OBJECT_NO_REF (tx_del_mode, dialog_vbox4, "dialog_vbox4");
978   GLADE_HOOKUP_OBJECT (tx_del_mode, vbox2, "vbox2");
979   GLADE_HOOKUP_OBJECT (tx_del_mode, delmode_label, "delmode_label");
980   GLADE_HOOKUP_OBJECT (tx_del_mode, hbox3, "hbox3");
981   GLADE_HOOKUP_OBJECT (tx_del_mode, vbox3, "vbox3");
982   GLADE_HOOKUP_OBJECT (tx_del_mode, all_events, "all_events");
983   GLADE_HOOKUP_OBJECT (tx_del_mode, upto_current, "upto_current");
984   GLADE_HOOKUP_OBJECT (tx_del_mode, from_current, "from_current");
985   GLADE_HOOKUP_OBJECT_NO_REF (tx_del_mode, dialog_action_area4, "dialog_action_area4");
986   GLADE_HOOKUP_OBJECT (tx_del_mode, cancelbutton1, "cancelbutton1");
987   GLADE_HOOKUP_OBJECT (tx_del_mode, okbutton1, "okbutton1");
988
989   return tx_del_mode;
990 }
991