Alex: Added the new sources for terminatorX 3.5
[terminatorX.git] / src / tX_vttgui.h
1 /*
2     terminatorX - realtime audio scratching software
3     Copyright (C) 1999  Alexander K├Ânig
4  
5     This program is free software; you can redistribute it and/or modify
6     it under the terms of the GNU General Public License as published by
7     the Free Software Foundation; either version 2 of the License, or
8     (at your option) any later version.
9  
10     This program is distributed in the hope that it will be useful,
11     but WITHOUT ANY WARRANTY; without even the implied warranty of
12     MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
13     GNU General Public License for more details.
14  
15     You should have received a copy of the GNU General Public License
16     along with this program; if not, write to the Free Software
17     Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
18  
19     File: tX_vttgui.h
20  
21     Description: Header to tX_vttgui.cc
22 */    
23
24 #ifndef _h_tX_vttgui
25 #define _h_tX_vttgui
26
27 #include <gtk/gtk.h>
28
29 #ifndef DONT_USE_FLASH
30 #define USE_FLASH
31 #endif
32
33 typedef struct vtt_gui
34 {
35         GtkWidget *frame;
36         
37         GtkWidget *notebook;
38         GtkWidget *display;
39 #ifdef USE_FLASH
40         GtkWidget *flash;
41 #endif
42         
43         /* Widgets in Main Panel */
44         GtkWidget *name;
45         GtkWidget *file;
46         GtkAdjustment *volume;
47         GtkAdjustment *pitch;
48         GtkWidget *del;
49         GtkWidget *clone;
50         
51         /* Widgets in Trigger Panel */
52         GtkWidget *trigger;
53         GtkWidget *stop;
54         GtkWidget *autotrigger;
55         GtkWidget *loop;
56         GtkWidget *sync_master;
57         GtkWidget *sync_client;
58         GtkAdjustment *cycles;
59         
60         /* Widgets in X-Control Panel */
61         GtkWidget *x_scratch;
62         GtkWidget *x_volume;
63         GtkWidget *x_lp_cutoff;
64         GtkWidget *x_ec_feedback;
65         GtkWidget *x_nothing;
66
67         /* Widgets in Y-Control Panel */
68         GtkWidget *y_scratch;
69         GtkWidget *y_volume;
70         GtkWidget *y_lp_cutoff;
71         GtkWidget *y_ec_feedback;
72         GtkWidget *y_nothing;
73         
74         /* Widgets in Lowpass Panel */
75         GtkWidget *lp_enable;
76         GtkAdjustment *lp_gain;
77         GtkAdjustment *lp_reso;
78         GtkAdjustment *lp_freq;
79         
80         /* Widgets in Echo Panel */
81         GtkWidget *ec_enable;
82         GtkAdjustment *ec_length;
83         GtkAdjustment *ec_feedback;
84         GdkWindow *file_dialog;
85         GtkWidget *fs;
86 };
87
88 extern void cleanup_all_vtts();
89 extern void update_all_vtts();
90 extern void show_all_guis(int);
91
92 #endif