r105: This commit was manufactured by cvs2svn to create tag
[cinelerra_cv/mob.git] / hvirtual / cinelerra / interfaceprefs.h
blobb08e56b3a9e1f4a71880e1ca33a0bcaaaddce01e
1 #ifndef INTERFACEPREFS_H
2 #define INTERFACEPREFS_H
4 class IndexSize;
5 class IndexCount;
6 class IndexPathText;
7 class TimeFormatHMS;
8 class TimeFormatHMSF;
9 class TimeFormatSamples;
10 class TimeFormatFrames;
11 class TimeFormatHex;
12 class TimeFormatFeet;
13 class MeterMinDB;
14 class MeterVUDB;
15 class MeterVUInt;
16 class ViewBehaviourText;
17 class ViewThumbnails;
19 #include "browsebutton.h"
20 #include "deleteallindexes.inc"
21 #include "mwindow.inc"
22 #include "preferencesthread.h"
25 class InterfacePrefs : public PreferencesDialog
27 public:
28 InterfacePrefs(MWindow *mwindow, PreferencesWindow *pwindow);
29 ~InterfacePrefs();
31 int create_objects();
32 // must delete each derived class
33 int update(int new_value);
34 char* behavior_to_text(int mode);
36 BrowseButton *ipath;
37 IndexSize *isize;
38 IndexCount *icount;
39 IndexPathText *ipathtext;
40 DeleteAllIndexes *deleteall;
42 TimeFormatHMS *hms;
43 TimeFormatHMSF *hmsf;
44 TimeFormatSamples *samples;
45 TimeFormatHex *hex;
46 TimeFormatFrames *frames;
47 TimeFormatFeet *feet;
49 MeterMinDB *min_db;
50 MeterVUDB *vu_db;
51 // MeterVUInt *vu_int;
52 ViewBehaviourText *button1, *button2, *button3;
53 ViewThumbnails *thumbnails;
57 class IndexPathText : public BC_TextBox
59 public:
60 IndexPathText(int x, int y, PreferencesWindow *pwindow, char *text);
61 ~IndexPathText();
62 int handle_event();
63 PreferencesWindow *pwindow;
66 class IndexSize : public BC_TextBox
68 public:
69 IndexSize(int x, int y, PreferencesWindow *pwindow, char *text);
70 int handle_event();
71 PreferencesWindow *pwindow;
75 class IndexCount : public BC_TextBox
77 public:
78 IndexCount(int x, int y, PreferencesWindow *pwindow, char *text);
79 int handle_event();
80 PreferencesWindow *pwindow;
83 class TimeFormatHMS : public BC_Radial
85 public:
86 TimeFormatHMS(PreferencesWindow *pwindow, InterfacePrefs *tfwindow, int value, int x, int y);
87 int handle_event();
88 PreferencesWindow *pwindow;
89 InterfacePrefs *tfwindow;
92 class TimeFormatHMSF : public BC_Radial
94 public:
95 TimeFormatHMSF(PreferencesWindow *pwindow, InterfacePrefs *tfwindow, int value, int x, int y);
96 int handle_event();
97 PreferencesWindow *pwindow;
98 InterfacePrefs *tfwindow;
101 class TimeFormatSamples : public BC_Radial
103 public:
104 TimeFormatSamples(PreferencesWindow *pwindow, InterfacePrefs *tfwindow, int value, int x, int y);
105 int handle_event();
106 PreferencesWindow *pwindow;
107 InterfacePrefs *tfwindow;
110 class TimeFormatFrames : public BC_Radial
112 public:
113 TimeFormatFrames(PreferencesWindow *pwindow, InterfacePrefs *tfwindow, int value, int x, int y);
114 int handle_event();
115 PreferencesWindow *pwindow;
116 InterfacePrefs *tfwindow;
119 class TimeFormatHex : public BC_Radial
121 public:
122 TimeFormatHex(PreferencesWindow *pwindow, InterfacePrefs *tfwindow, int value, int x, int y);
123 int handle_event();
124 PreferencesWindow *pwindow;
125 InterfacePrefs *tfwindow;
128 class TimeFormatFeet : public BC_Radial
130 public:
131 TimeFormatFeet(PreferencesWindow *pwindow, InterfacePrefs *tfwindow, int value, int x, int y);
132 int handle_event();
133 PreferencesWindow *pwindow;
134 InterfacePrefs *tfwindow;
137 class TimeFormatFeetSetting : public BC_TextBox
139 public:
140 TimeFormatFeetSetting(PreferencesWindow *pwindow, int x, int y, char *string);
141 int handle_event();
142 PreferencesWindow *pwindow;
147 class MeterMinDB : public BC_TextBox
149 public:
150 MeterMinDB(PreferencesWindow *pwindow, char *text, int y);
151 int handle_event();
152 PreferencesWindow *pwindow;
155 class MeterVUDB : public BC_Radial
157 public:
158 MeterVUDB(PreferencesWindow *pwindow, char *text, int y);
159 int handle_event();
160 // MeterVUInt *vu_int;
161 PreferencesWindow *pwindow;
164 class MeterVUInt : public BC_Radial
166 public:
167 MeterVUInt(PreferencesWindow *pwindow, char *text, int y);
168 int handle_event();
169 MeterVUDB *vu_db;
170 PreferencesWindow *pwindow;
173 class ViewBehaviourText : public BC_PopupMenu
175 public:
176 ViewBehaviourText(int x,
177 int y,
178 char *text,
179 PreferencesWindow *pwindow,
180 int *output);
181 ~ViewBehaviourText();
183 int handle_event(); // user copies text to value here
184 int create_objects(); // add initial items
185 InterfacePrefs *tfwindow;
186 int *output;
189 class ViewBehaviourItem : public BC_MenuItem
191 public:
192 ViewBehaviourItem(ViewBehaviourText *popup, char *text, int behaviour);
193 ~ViewBehaviourItem();
195 int handle_event();
196 ViewBehaviourText *popup;
197 int behaviour;
200 class ViewTheme : public BC_PopupMenu
202 public:
203 ViewTheme(int x, int y, PreferencesWindow *pwindow);
204 ~ViewTheme();
206 void create_objects();
207 int handle_event();
209 PreferencesWindow *pwindow;
212 class ViewThumbnails : public BC_CheckBox
214 public:
215 ViewThumbnails(int x, int y, PreferencesWindow *pwindow);
216 int handle_event();
217 PreferencesWindow *pwindow;
220 class ViewThemeItem : public BC_MenuItem
222 public:
223 ViewThemeItem(ViewTheme *popup, char *text);
224 int handle_event();
225 ViewTheme *popup;
230 #endif