rework batchrender, renderfarm improvements, ffmpeg audio quality, a few fixes
[goodguy/history.git] / cinelerra-5.1 / cinelerra / formattools.h
index 3929bbff5ec02f0058f5c6e001e8d6a73dcfacb3..e0946a1fa41827e53ba2a8553f204292c6cd154a 100644 (file)
 #include "file.inc"
 #include "ffmpeg.h"
 #include "formatpopup.h"
+#include "formattools.inc"
 #include "mwindow.inc"
 
-class FormatAParams;
-class FormatVParams;
-class FormatAThread;
-class FormatVThread;
-class FormatChannels;
-class FormatPathButton;
-class FormatPathText;
-class FormatFormat;
-class FormatFFMPEG;
-class FFMpegType;
-class FormatAudio;
-class FormatVideo;
-class FormatMultiple;
-
 class FormatTools
 {
 public:
@@ -64,18 +51,18 @@ public:
                                                int prompt_video_compression,
                                                const char *locked_compressor,  // Select compressors to be offered
                                                int recording, // Change captions for recording
-                                               int *strategy,  // If nonzero, prompt for insertion strategy
+                                               int *file_per_label,  // prompt if nonzero
                                                int brender,   // Supply file formats for background rendering
                                                int horizontal_layout = 0);
 // In recording preferences, aspects of the format are locked
 // depending on the driver used.
        void update_driver(int driver);
-       void update_format();
+       virtual void update_format();
 
 
        void reposition_window(int &init_x, int &init_y);
 // Put new asset's parameters in and change asset.
-       void update(Asset *asset, int *strategy);
+       void update(Asset *asset, int *file_per_label);
 // Update filename extension when format is changed.
        void update_extension();
        void close_format_windows();
@@ -104,20 +91,15 @@ public:
        BC_TextBox *format_text;
        FormatFFMPEG *format_ffmpeg;
        FFMpegType *ffmpeg_type;
-       BC_ITumbler *channels_tumbler;
 
        BC_Title *audio_title;
-       BC_Title *channels_title;
-       FormatChannels *channels_button;
        FormatAudio *audio_switch;
 
        BC_Title *video_title;
        FormatVideo *video_switch;
 
-       FormatMultiple *multiple_files;
+       FormatFilePerLabel *labeled_files;
 
-// Suggestions for the textbox
-       ArrayList<BC_ListBoxItem*> *file_entries;
        ArrayList<PluginServer*> *plugindb;
        MWindow *mwindow;
        const char *locked_compressor;
@@ -129,7 +111,7 @@ public:
        int prompt_audio_channels;
        int prompt_video;
        int prompt_video_compression;
-       int *strategy;
+       int *file_per_label;
        int w;
 // Determines what the configuration buttons do.
        int video_driver;
@@ -256,33 +238,16 @@ public:
 };
 
 
-class FormatChannels : public BC_TextBox
-{
-public:
-       FormatChannels(int x, int y, FormatTools *format);
-       ~FormatChannels();
-       int handle_event();
-       FormatTools *format;
-};
-
-class FormatToTracks : public BC_CheckBox
-{
-public:
-       FormatToTracks(int x, int y, int *output);
-       ~FormatToTracks();
-       int handle_event();
-       int *output;
-};
-
-class FormatMultiple : public BC_CheckBox
+class FormatFilePerLabel : public BC_CheckBox
 {
 public:
-       FormatMultiple(MWindow *mwindow, int x, int y, int *output);
-       ~FormatMultiple();
+       FormatFilePerLabel(FormatTools *format, int x, int y, int *output);
+       ~FormatFilePerLabel();
        int handle_event();
        void update(int *output);
+
+       FormatTools *format;
        int *output;
-       MWindow *mwindow;
 };