#ifndef MAINMENU_H
#define MAINMENU_H
-class AEffectMenu;
-class LabelsFollowEdits;
-class PluginsFollowEdits;
-class KeyframesFollowEdits;
-class CursorOnFrames;
-class TypelessKeyframes;
-class SetBRenderActive;
-class LoopPlayback;
-
-class Redo;
-class ShowVWindow;
-class ShowAWindow;
-class ShowGWindow;
-class ShowCWindow;
-class ShowLWindow;
-class Undo;
-class KeyframeCurveType;
-class KeyframeCurveTypeMenu;
-class KeyframeCurveTypeItem;
-class SplitX;
-class SplitY;
-class MixerViewer;
-
-
#include "arraylist.h"
#include "guicast.h"
#include "bchash.inc"
#include "loadfile.inc"
+#include "mainmenu.inc"
#include "mwindow.inc"
#include "mwindowgui.inc"
#include "maxchannels.h"
#define TOTAL_LOADS 10 // number of files to cache
#define TOTAL_EFFECTS 10 // number of effects to cache
+#define LAYOUT_LOAD 0
+#define LAYOUT_SAVE 1
+
class MainMenu : public BC_MenuBar
{
public:
MenuAEffectItem *aeffect[TOTAL_EFFECTS];
MenuVEffectItem *veffect[TOTAL_EFFECTS];
Quit *quit_program; // affected by save
+ MainDumpsMenu *dump_menu;
Undo *undo;
Redo *redo;
int total_aeffects;
SplitX *split_x;
SplitY *split_y;
MixerViewer *mixer_viewer;
+ LoadLayout *load_layout;
+ LoadLayout *save_layout;
};
// ========================================= edit
MWindow *mwindow;
};
+class MainDumpsSubMenu : public BC_SubMenu
+{
+public:
+ MainDumpsSubMenu(BC_MenuItem *menu_item);
+ ~MainDumpsSubMenu();
+
+ BC_MenuItem *menu_item;
+};
+
+class MainDumpsMenu : public BC_MenuItem
+{
+public:
+ MainDumpsMenu(MWindow *mwindow);
+ ~MainDumpsMenu();
+ void create_objects();
+ MWindow *mwindow;
+ MainDumpsSubMenu *dumps_menu;
+};
class DumpCICache : public BC_MenuItem
{
MWindow *mwindow;
};
+class DumpUndo : public BC_MenuItem
+{
+public:
+ DumpUndo(MWindow *mwindow);
+ int handle_event();
+ MWindow *mwindow;
+};
+
class Redo : public BC_MenuItem
{
public:
MWindow *mwindow;
};
+
+class LoadLayoutItem : public BC_MenuItem
+{
+public:
+ LoadLayoutItem(LoadLayout *load_layout, const char *text, int no, int hotkey);
+ int handle_event();
+
+ int no;
+ LoadLayout *load_layout;
+};
+
+class LoadLayout : public BC_MenuItem
+{
+public:
+ LoadLayout(MWindow *mwindow, const char *text, int action);
+ void create_objects();
+
+ MWindow *mwindow;
+ int action;
+};
+
#endif