#include "render.inc"
#include "timeentry.h"
-#define BATCHRENDER_COLUMNS 4
-
-
-
+enum {
+ ENABLED_COL, LABELED_COL, FARMED_COL,
+ OUTPUT_COL, EDL_COL, ELAPSED_COL,
+ BATCHRENDER_COLUMNS
+};
class BatchRenderMenuItem : public BC_MenuItem
{
class BatchRenderJob
{
public:
- BatchRenderJob(Preferences *preferences);
+ BatchRenderJob(Preferences *preferences, int labeled=0, int farmed=-1);
~BatchRenderJob();
void copy_from(BatchRenderJob *src);
void load(FileXML *file);
void save(FileXML *file);
- void fix_strategy();
+ int get_strategy();
// Source EDL to render
char edl_path[BCTEXTLEN];
// Destination file for output
Asset *asset;
- int strategy;
+ int labeled, farmed;
int enabled;
// Amount of time elapsed in last render operation
double elapsed;
Preferences *preferences;
Render *render;
BatchRenderGUI *gui;
- int column_width[BATCHRENDER_COLUMNS];
+
+ static const char *column_titles[BATCHRENDER_COLUMNS];
+ static int column_widths[BATCHRENDER_COLUMNS];
+ int list_width[BATCHRENDER_COLUMNS];
// job being edited
int current_job;
// job being rendered
int rendering_job;
int is_rendering;
int warn;
- ArrayList<BC_ListBoxItem*> *file_entries;
};
BatchRenderThread *thread;
BC_FileBox *gui;
void run();
+ void stop();
virtual int keypress_event();
Mutex *startup_lock;
};
BatchRenderThread *thread;
BC_FileBox *gui;
void run();
+ void stop();
virtual int keypress_event();
Mutex *startup_lock;
};
MWindow *mwindow;
};
+class BatchRenderUseFarm : public BC_CheckBox
+{
+public:
+ BatchRenderUseFarm(BatchRenderThread *thread, int x, int y, int *output);
+ int handle_event();
+ void update(int *output);
+
+ BatchRenderThread *thread;
+ int *output;
+};
+
class BatchRenderGUI : public BC_Window
{
void button_enable();
void button_disable();
- ArrayList<BC_ListBoxItem*> list_columns[BATCHRENDER_COLUMNS];
+ ArrayList<BC_ListBoxItem*> list_items[BATCHRENDER_COLUMNS];
+ const char *list_titles[BATCHRENDER_COLUMNS];
+ int list_width[BATCHRENDER_COLUMNS], list_columns;
MWindow *mwindow;
BatchRenderThread *thread;
BatchRenderCancel *cancel_button;
BatchRenderCurrentEDL *use_current_edl;
BatchRenderUpdateEDL *update_selected_edl;
+ BatchRenderUseFarm *use_renderfarm;
};