4 * Copyright (C) 2008 Adam Williams <broadcast at earthling dot net>
6 * This program is free software; you can redistribute it and/or modify
7 * it under the terms of the GNU General Public License as published by
8 * the Free Software Foundation; either version 2 of the License, or
9 * (at your option) any later version.
11 * This program is distributed in the hope that it will be useful,
12 * but WITHOUT ANY WARRANTY; without even the implied warranty of
13 * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
14 * GNU General Public License for more details.
16 * You should have received a copy of the GNU General Public License
17 * along with this program; if not, write to the Free Software
18 * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
22 #ifndef APPEARANCEPREFS_H
23 #define APPEARANCEPREFS_H
25 #include "appearanceprefs.inc"
26 #include "browsebutton.h"
27 #include "deleteallindexes.inc"
28 #include "mwindow.inc"
29 #include "preferencesthread.h"
30 #include "shbtnprefs.inc"
33 class AppearancePrefs : public PreferencesDialog
36 AppearancePrefs(MWindow *mwindow, PreferencesWindow *pwindow);
39 void create_objects();
41 int update(int new_value);
44 TimeFormatSamples *samples;
46 TimeFormatFrames *frames;
48 TimeFormatSeconds *seconds;
49 ViewThumbnails *thumbnails;
50 YuvColorSpace *yuv_color_space;
51 YuvColorRange *yuv_color_range;
55 class TimeFormatHMS : public BC_Radial
58 TimeFormatHMS(PreferencesWindow *pwindow, AppearancePrefs *tfwindow, int value, int x, int y);
60 PreferencesWindow *pwindow;
61 AppearancePrefs *tfwindow;
64 class TimeFormatHMSF : public BC_Radial
67 TimeFormatHMSF(PreferencesWindow *pwindow, AppearancePrefs *tfwindow, int value, int x, int y);
69 PreferencesWindow *pwindow;
70 AppearancePrefs *tfwindow;
73 class TimeFormatSamples : public BC_Radial
76 TimeFormatSamples(PreferencesWindow *pwindow, AppearancePrefs *tfwindow, int value, int x, int y);
78 PreferencesWindow *pwindow;
79 AppearancePrefs *tfwindow;
82 class TimeFormatFrames : public BC_Radial
85 TimeFormatFrames(PreferencesWindow *pwindow, AppearancePrefs *tfwindow, int value, int x, int y);
87 PreferencesWindow *pwindow;
88 AppearancePrefs *tfwindow;
91 class TimeFormatHex : public BC_Radial
94 TimeFormatHex(PreferencesWindow *pwindow, AppearancePrefs *tfwindow, int value, int x, int y);
96 PreferencesWindow *pwindow;
97 AppearancePrefs *tfwindow;
100 class TimeFormatFeet : public BC_Radial
103 TimeFormatFeet(PreferencesWindow *pwindow, AppearancePrefs *tfwindow, int value, int x, int y);
105 PreferencesWindow *pwindow;
106 AppearancePrefs *tfwindow;
109 class TimeFormatSeconds : public BC_Radial
112 TimeFormatSeconds(PreferencesWindow *pwindow, AppearancePrefs *tfwindow, int value, int x, int y);
114 PreferencesWindow *pwindow;
115 AppearancePrefs *tfwindow;
118 class TimeFormatFeetSetting : public BC_TextBox
121 TimeFormatFeetSetting(PreferencesWindow *pwindow, int x, int y, char *string);
123 PreferencesWindow *pwindow;
128 class ViewTheme : public BC_PopupMenu
131 ViewTheme(int x, int y, PreferencesWindow *pwindow);
134 void create_objects();
137 PreferencesWindow *pwindow;
140 class ViewThemeItem : public BC_MenuItem
143 ViewThemeItem(ViewTheme *popup, const char *text);
148 class ViewPluginIcons : public BC_PopupMenu
151 ViewPluginIcons(int x, int y, PreferencesWindow *pwindow);
154 void create_objects();
157 PreferencesWindow *pwindow;
160 class ViewPluginIconItem : public BC_MenuItem
163 ViewPluginIconItem(ViewPluginIcons *popup, const char *text);
165 ViewPluginIcons *popup;
168 class ViewThumbnails : public BC_CheckBox
171 ViewThumbnails(int x, int y, PreferencesWindow *pwindow);
173 PreferencesWindow *pwindow;
176 class UseTipWindow : public BC_CheckBox
179 UseTipWindow(PreferencesWindow *pwindow, int x, int y);
181 PreferencesWindow *pwindow;
184 class UseWarnIndecies : public BC_CheckBox
187 UseWarnIndecies(PreferencesWindow *pwindow, int x, int y);
189 PreferencesWindow *pwindow;
192 class UseWarnVersion : public BC_CheckBox
195 UseWarnVersion(PreferencesWindow *pwindow, int x, int y);
197 PreferencesWindow *pwindow;
200 class BD_WarnRoot : public BC_CheckBox
203 BD_WarnRoot(PreferencesWindow *pwindow, int x, int y);
205 PreferencesWindow *pwindow;
208 class PopupMenuBtnup : public BC_CheckBox
211 PopupMenuBtnup(PreferencesWindow *pwindow, int x, int y);
213 PreferencesWindow *pwindow;
216 class GrabFocusPolicy : public BC_CheckBox
219 GrabFocusPolicy(PreferencesWindow *pwindow, int x, int y);
221 PreferencesWindow *pwindow;
224 class ActivateFocusPolicy : public BC_CheckBox
227 ActivateFocusPolicy(PreferencesWindow *pwindow, int x, int y);
229 PreferencesWindow *pwindow;
232 class DeactivateFocusPolicy : public BC_CheckBox
235 DeactivateFocusPolicy(PreferencesWindow *pwindow, int x, int y);
237 PreferencesWindow *pwindow;
240 class ForwardRenderDisplacement : public BC_CheckBox
243 ForwardRenderDisplacement(PreferencesWindow *pwindow, int x, int y);
245 PreferencesWindow *pwindow;
248 class HighlightInverseColor : public BC_TextBox
251 HighlightInverseColor(PreferencesWindow *pwindow, int x, int y, const char *hex);
253 PreferencesWindow *pwindow;
256 class YuvColorSpace : public BC_PopupMenu
258 static const char *color_space[3];
260 YuvColorSpace(int x, int y, PreferencesWindow *pwindow);
263 void create_objects();
266 PreferencesWindow *pwindow;
269 class YuvColorSpaceItem : public BC_MenuItem
272 YuvColorSpaceItem(YuvColorSpace *popup, const char *text, int id);
274 YuvColorSpace *popup;
278 class YuvColorRange : public BC_PopupMenu
280 static const char *color_range[2];
282 YuvColorRange(int x, int y, PreferencesWindow *pwindow);
285 void create_objects();
288 PreferencesWindow *pwindow;
291 class YuvColorRangeItem : public BC_MenuItem
294 YuvColorRangeItem(YuvColorRange *popup, const char *text, int id);
296 YuvColorRange *popup;
300 class PerpetualSession : public BC_CheckBox
303 PerpetualSession(int x, int y, PreferencesWindow *pwindow);
305 PreferencesWindow *pwindow;