00001 #ifndef GWINDOWGUI_H
00002 #define GWINDOWGUI_H
00003
00004 #include "automation.inc"
00005 #include "guicast.h"
00006 #include "mwindow.inc"
00007
00008 class GWindowToggle;
00009
00010 #define ASSETS 0
00011 #define TITLES 1
00012 #define TRANSITIONS 2
00013 #define PLUGIN_AUTOS 3
00014 #define OTHER_TOGGLES 4
00015
00016 class GWindowGUI : public BC_Window
00017 {
00018 public:
00019 GWindowGUI(MWindow *mwindow, int w, int h);
00020 static void calculate_extents(BC_WindowBase *gui, int *w, int *h);
00021 void create_objects();
00022 int translation_event();
00023 int close_event();
00024 int keypress_event();
00025 void update_toggles(int use_lock);
00026 void update_mwindow();
00027
00028 MWindow *mwindow;
00029 GWindowToggle *other[OTHER_TOGGLES];
00030 GWindowToggle *auto_toggle[AUTOMATION_TOTAL];
00031 };
00032
00033 class GWindowToggle : public BC_CheckBox
00034 {
00035 public:
00036 GWindowToggle(MWindow *mwindow,
00037 GWindowGUI *gui,
00038 int x,
00039 int y,
00040 int subscript,
00041 int other,
00042 char *text);
00043 int handle_event();
00044 void update();
00045
00046 static int* get_main_value(MWindow *mwindow, int subscript, int other);
00047
00048 MWindow *mwindow;
00049 GWindowGUI *gui;
00050 int subscript;
00051 int other;
00052 };
00053
00054 #endif