00001 #ifndef BLONDTHEME_H
00002 #define BLONDTHEME_H
00003
00004 #include "new.inc"
00005 #include "plugintclient.h"
00006 #include "preferencesthread.inc"
00007 #include "statusbar.inc"
00008 #include "theme.h"
00009 #include "timebar.inc"
00010
00011 class BlondTheme : public Theme
00012 {
00013 public:
00014 BlondTheme();
00015 ~BlondTheme();
00016
00017 void initialize();
00018 void draw_mwindow_bg(MWindowGUI *gui);
00019
00020 void draw_rwindow_bg(RecordGUI *gui);
00021 void draw_rmonitor_bg(RecordMonitorGUI *gui);
00022 void draw_cwindow_bg(CWindowGUI *gui);
00023 void draw_vwindow_bg(VWindowGUI *gui);
00024 void draw_preferences_bg(PreferencesWindow *gui);
00025
00026 void get_mwindow_sizes(MWindowGUI *gui, int w, int h);
00027 void get_cwindow_sizes(CWindowGUI *gui, int cwindow_controls);
00028 void get_vwindow_sizes(VWindowGUI *gui);
00029 void get_preferences_sizes();
00030 void get_recordgui_sizes(RecordGUI *gui, int w, int h);
00031 void get_rmonitor_sizes(int do_audio,
00032 int do_video,
00033 int do_channel,
00034 int do_interlace,
00035 int do_avc,
00036 int audio_channels);
00037
00038 void get_new_sizes(NewWindow *gui);
00039 void draw_new_bg(NewWindow *gui);
00040 void draw_setformat_bg(SetFormatWindow *gui);
00041 void get_plugindialog_sizes();
00042
00043 private:
00044 void build_icons();
00045 void build_bg_data();
00046 void build_patches();
00047 void build_overlays();
00048
00049
00050
00051
00052
00053
00054 VFrame *rgui_batch;
00055 VFrame *rgui_controls;
00056 VFrame *rgui_list;
00057 VFrame *rmonitor_panel;
00058 VFrame *rmonitor_meters;
00059 };
00060
00061
00062
00063 class BlondThemeMain : public PluginTClient
00064 {
00065 public:
00066 BlondThemeMain(PluginServer *server);
00067 ~BlondThemeMain();
00068
00069 char* plugin_title();
00070 Theme* new_theme();
00071
00072 BlondTheme *theme;
00073 };
00074
00075
00076 #endif