#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;
int test_edl_files();
void calculate_dest_paths(ArrayList<char*> *paths,
Preferences *preferences);
- void reset(int warn=0);
+ void reset(const char *path=0);
// Load batch rendering jobs
void load_jobs(char *path, Preferences *preferences);
// Not applicable to western civilizations
- void save_jobs(char *path);
+ void save_jobs(char *path=0);
void load_defaults(BC_Hash *defaults);
void save_defaults(BC_Hash *defaults);
// Create path for persistent storage functions
static void trap_hook(FILE *fp, void *vp);
MWindow *mwindow;
+ char batch_path[BCTEXTLEN];
double current_start;
double current_end;
BatchRenderJob *default_job;
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;
};
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;
// BC_Title *status_text;
// BC_ProgressBar *progress_bar;
BC_Title *list_title;
+ BC_Title *batch_path;
BatchRenderNew *new_batch;
BatchRenderDelete *delete_batch;
BatchRenderSaveList *savelist_batch;
BatchRenderCancel *cancel_button;
BatchRenderCurrentEDL *use_current_edl;
BatchRenderUpdateEDL *update_selected_edl;
+ BatchRenderUseFarm *use_renderfarm;
};