add olaf's neophyte theme, honor numlock and use kp numerics
[goodguy/history.git] / cinelerra-5.1 / plugins / theme_neophyte / neophyte.h
1 /*
2  * Neophyte theme (2018-08-01)
3  * Design: Olaf Wolff <cinmail ยท womentie.de>
4  * Based on unflat theme, based on S.U.V. theme.
5  *
6  * CINELERRA
7  * Copyright (C) 2008 Adam Williams <broadcast at earthling dot net>
8  * by Paolo Rampino <info at tuttoainternet dot it>
9  *
10  * This program is free software; you can redistribute it and/or modify
11  * it under the terms of the GNU General Public License as published by
12  * the Free Software Foundation; either version 2 of the License, or
13  * (at your option) any later version.
14  *
15  * This program is distributed in the hope that it will be useful,
16  * but WITHOUT ANY WARRANTY; without even the implied warranty of
17  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
18  * GNU General Public License for more details.
19  *
20  * You should have received a copy of the GNU General Public License
21  * along with this program; if not, write to the Free Software
22  * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
23  *
24  */
25
26 #ifndef neophyte_H
27 #define neophyte_H
28
29 #include "new.inc"
30 #include "plugintclient.h"
31 #include "preferencesthread.inc"
32 #include "statusbar.inc"
33 #include "theme.h"
34 #include "timebar.inc"
35
36 class NEOPHYTETHEME : public Theme
37 {
38 public:
39         NEOPHYTETHEME();
40         ~NEOPHYTETHEME();
41
42         void initialize();
43         void draw_mwindow_bg(MWindowGUI *gui);
44
45         void draw_rwindow_bg(RecordGUI *gui);
46         void draw_rmonitor_bg(RecordMonitorGUI *gui);
47         void draw_cwindow_bg(CWindowGUI *gui);
48         void draw_vwindow_bg(VWindowGUI *gui);
49         void draw_preferences_bg(PreferencesWindow *gui);
50
51
52         void draw_new_bg(NewWindow *gui);
53         void draw_setformat_bg(SetFormatWindow *gui);
54
55 private:
56         void build_bg_data();
57         void build_patches();
58         void build_overlays();
59 };
60
61 class NEOPHYTETHEMEMain : public PluginTClient
62 {
63 public:
64         NEOPHYTETHEMEMain(PluginServer *server);
65         ~NEOPHYTETHEMEMain();
66
67         const char* plugin_title();
68         Theme* new_theme();
69
70         NEOPHYTETHEME *theme;
71 };
72
73 #endif