class InterlacemodePulldown;
class ColormodelPulldown;
-class New : public BC_MenuItem
+class New
{
public:
New(MWindow *mwindow);
~New();
- void create_objects();
+ virtual void create_objects() = 0;
int handle_event();
- int run_script(FileXML *script);
- int create_new_project();
+ int create_new_project(int load_mode);
void create_new_edl();
MWindow *mwindow;
NewThread *thread;
EDL *new_edl;
+};
-private:
- FileXML *script;
+class NewProject : public BC_MenuItem, public New
+{
+public:
+ NewProject(MWindow *mwindow);
+ ~NewProject();
+
+ void create_objects();
+ int handle_event() { return New::handle_event(); }
+};
+
+class AppendTracks : public BC_MenuItem, public New
+{
+public:
+ AppendTracks(MWindow *mwindow);
+ ~AppendTracks();
+
+ void create_objects();
+ int handle_event() { return New::handle_event(); }
};
class NewThread : public BC_DialogThread
{
public:
- NewThread(MWindow *mwindow, New *new_project);
+ NewThread(MWindow *mwindow, New *new_project, const char *title, int load_mode);
~NewThread();
BC_Window* new_gui();
+ void handle_done_event(int result);
void handle_close_event(int result);
int load_defaults();
NewWindow *nwindow;
MWindow *mwindow;
New *new_project;
+ const char *title;
+ int load_mode;
};
class NewWindow : public BC_Window
BC_TextBox *frame_rate;
BC_TextBox *aspect_w_text, *aspect_h_text;
BC_TextBox *output_w_text, *output_h_text;
+ BC_TextBox *folder, *name;
+ BC_RecentList *recent_folder;
InterlacemodePulldown *interlace_pulldown;
ColormodelPulldown *color_model;
NewPresets *format_presets;