add binfolder path relative filters, fix gbrp color model, vwdw timebar tweaks, title...
[goodguy/history.git] / cinelerra-5.1 / cinelerra / formattools.h
index d4c7761b0f7f635151a0759379e7a805a89e0203..35415ae0a7d7858bcfc49a64c3775b2105c26d10 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:
-       FormatTools(MWindow *mwindow,
-                               BC_WindowBase *window,
-                               Asset *asset);
+       FormatTools(MWindow *mwindow, BC_WindowBase *window, Asset *asset);
        virtual ~FormatTools();
 
-       void create_objects(int &init_x,
-                                               int &init_y,
-                                               int do_audio,    // Include tools for audio
-                                               int do_video,   // Include tools for video
-                                               int prompt_audio,  // Include checkbox for audio
-                                               int prompt_video,  // Include checkbox for video
-                                               int prompt_audio_channels,
-                                               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 brender,   // Supply file formats for background rendering
-                                               int horizontal_layout = 0);
+       void create_objects(int &init_x, int &init_y,
+               int do_audio, int do_video,   // Include tools for audio, video
+               int prompt_audio,  int prompt_video,  // Include checkbox for audio, video
+               int prompt_audio_channels, int prompt_video_compression,
+               const char *locked_compressor,  // Select compressors to be offered
+               int recording, // Change captions for recording
+               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);
@@ -75,7 +56,7 @@ public:
 
        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,19 +85,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;
 
-       ArrayList<PluginServer*> *plugindb;
        MWindow *mwindow;
        const char *locked_compressor;
        int recording;
@@ -127,7 +104,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;
@@ -254,33 +231,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;
 };