]> lisas.de Git - terminatorX.git/blob - src/tX_vttgui.h
Fix preferences for UI colors.
[terminatorX.git] / src / tX_vttgui.h
1 /*
2     terminatorX - realtime audio scratching software
3     Copyright (C) 1999-2016  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, see <http://www.gnu.org/licenses/>.
17  
18     File: tX_vttgui.h
19  
20     Description: Header to tX_vttgui.cc
21 */    
22
23 #ifndef _h_tX_vttgui
24 #define _h_tX_vttgui
25
26 #include <gtk/gtk.h>
27 #include <config.h>
28 #include "tX_types.h"
29 #include "tX_extdial.h"
30 #include "tX_panel.h"
31 #include <list>
32 #include "tX_seqpar.h"
33
34 struct vtt_gui
35 {
36         GtkWidget *control_box;
37         GtkWidget *audio_box;
38         GtkWidget *adjust_dialog;
39         
40         /* Control Box Widgets */
41         GtkWidget *control_label;
42         GtkWidget *control_minimize;
43         GtkWidget *scrolled_win;
44         GtkWidget *control_subbox;
45         GtkWidget *fx_box;
46         GtkWidget *stereo_fx_box;
47         GtkWidget *ladspa_menu;
48         GtkWidget *par_menu;
49
50         /* Main */
51         tX_panel  *main_panel;
52         GtkWidget *name;
53         GtkWidget *show_audio;
54         GtkWidget *del;
55         GtkWidget *adjust_button;
56         GtkWidget *fx_button;
57         GtkWidget *stereo_fx_button;
58         
59         /* Trigger */
60         tX_panel  *trigger_panel;
61         GtkWidget *trigger;
62         GtkWidget *stop;
63         GtkWidget *autotrigger;
64         GtkWidget *loop;
65         GtkWidget *sync_master;
66         GtkWidget *sync_client;
67         GtkAdjustment *cycles;
68         
69         /* Output Panel */
70         tX_extdial *pitchd;
71         tX_extdial *pand;
72         GtkAdjustment *pitch;
73         GtkAdjustment *pan;
74         GtkAdjustment *volume; 
75         GtkWidget *mute;
76         GtkWidget *solo;
77         GtkWidget *flash;
78
79         /* Widgets in Lowpass Panel */
80         tX_panel *lp_panel;
81         GtkWidget *lp_enable;
82         tX_extdial *lp_gaind;
83         tX_extdial *lp_resod;
84         tX_extdial *lp_freqd;
85         GtkAdjustment *lp_gain;
86         GtkAdjustment *lp_reso;
87         GtkAdjustment *lp_freq;
88         
89         /* Widgets in Echo Panel */
90         tX_panel *ec_panel;
91         GtkWidget *ec_enable;
92         tX_extdial *ec_lengthd;
93         tX_extdial *ec_feedbackd;
94         tX_extdial *ec_pand;
95         tX_extdial *ec_volumed;
96         GtkAdjustment *ec_length;
97         GtkAdjustment *ec_feedback;
98         GtkAdjustment *ec_pan;
99         GtkAdjustment *ec_volume;
100
101         int32_t current_gui;
102
103         /* Audio Box Widgets */
104         GtkWidget *audio_label;
105         GtkWidget *audio_minimize;
106         GtkWidget *display;
107         GtkWidget *zoom;
108         GtkWidget *file;
109         GtkWidget *file_menu;
110
111         GtkWidget *mouse_mapping;
112         GtkWidget *mouse_mapping_menu;
113         GtkWidget *mouse_mapping_menu_x;
114         GtkWidget *mouse_mapping_menu_y;
115
116 #ifdef USE_ALSA_MIDI_IN
117         GtkWidget *midi_mapping;
118 #endif  
119
120         GtkWidget *audio_minimized_panel_bar_button;
121         GtkWidget *control_minimized_panel_bar_button;
122
123         GtkWidget *audio_minimized_panel_bar_label;
124         GtkWidget *control_minimized_panel_bar_label;
125 };
126
127 extern void cleanup_all_vtts();
128 extern void update_all_vtts();
129 extern void vg_enable_critical_buttons(int enable);
130 extern void vg_init_all_non_seqpars();
131 extern void vg_adjust_zoom(GtkWidget *wid, vtt_class *vtt);
132 extern void gui_scroll_callback(GtkWidget *tx, GdkEventScroll *eventScroll, gpointer userdata);
133 extern GCallback load_file(GtkWidget *wid, vtt_class *vtt);
134 #endif