Merge CV, ver=5.1; ops/methods from HV, and interface from CV where possible
[goodguy/history.git] / cinelerra-5.0 / cinelerra / recordgui.h
diff --git a/cinelerra-5.0/cinelerra/recordgui.h b/cinelerra-5.0/cinelerra/recordgui.h
deleted file mode 100644 (file)
index ddc77c7..0000000
+++ /dev/null
@@ -1,558 +0,0 @@
-
-/*
- * CINELERRA
- * Copyright (C) 2008 Adam Williams <broadcast at earthling dot net>
- * 
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation; either version 2 of the License, or
- * (at your option) any later version.
- * 
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
- * GNU General Public License for more details.
- * 
- * You should have received a copy of the GNU General Public License
- * along with this program; if not, write to the Free Software
- * Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
- * 
- */
-
-#ifndef RECORDGUI_H
-#define RECORDGUI_H
-
-
-class RecordGUIBatches;
-class RecordBatch;
-class RecordStartType;
-class RecordStart;
-class RecordPath;
-class BrowseButton;
-class RecordDuration;
-class RecordSource;
-class RecordNews;
-class RecordGUISave;
-class RecordGUIStartOver;
-class RecordGUICancel;
-class RecordGUIMonitorVideo;
-class RecordGUIMonitorAudio;
-class RecordGUIAudioMeters;
-class RecordGUINewBatch;
-class RecordGUIDeleteBatch;
-class RecordGUIStartBatches;
-class RecordGUIStopBatches;
-class RecordGUIActivateBatch;
-class RecordStatusThread;
-class RecordGUIFlash;
-
-class RecordGUIDCOffset;
-class RecordGUIDropFrames;
-class RecordGUIFillFrames;
-class RecordGUIPowerOff;
-class RecordGUICommCheck;
-class RecordGUILabel;
-class RecordGUIClearLabels;
-class RecordGUILoop;
-class RecordGUILoopHr;
-class RecordGUILoopMin;
-class RecordGUILoopSec;
-class RecordGUIModeMenu;
-class RecordGUIMode;
-class RecordGUIOK;
-class RecordGUIReset;
-class RecordStartoverThread;
-class EndRecordThread;
-
-#include "browsebutton.inc"
-#include "condition.inc"
-#include "guicast.h"
-#include "loadmode.inc"
-#include "maxchannels.h"
-#include "mutex.inc"
-#include "mwindow.inc"
-#include "question.inc"
-#include "recordgui.inc"
-#include "record.inc"
-#include "recordbatches.h"
-#include "recordmonitor.inc"
-#include "recordtransport.inc"
-#include "timeentry.h"
-
-class RecordGUIBatches : public RecordBatchesGUI
-{
-public:
-       RecordGUI *gui;
-
-       int handle_event();
-       int selection_changed();
-
-       RecordGUIBatches(RecordGUI *gui, int x, int y, int w, int h);
-};
-
-class RecordGUI : public BC_Window
-{
-       static int max(int a,int b) { return a>b ? a : b; }
-public:
-       RecordGUI(MWindow *mwindow, Record *record);
-       ~RecordGUI();
-
-       void create_objects();
-       int resize_event(int w, int h);
-       int translation_event();
-
-       BC_Title *current_operation;
-       BC_Title *position_title;
-       BC_Title *prev_label_title;
-       BC_Title *frames_behind;
-       BC_Title *frames_dropped;
-       BC_Title *framerate;
-       BC_Title *samples_clipped;
-       BC_Title *cron_status;
-       MWindow *mwindow;
-       Record *record;
-       RecordGUIBatches *batch_bay;
-       RecordPath *batch_path;
-       RecordStatusThread *status_thread;
-       TimeEntry *batch_start;
-       TimeEntry *batch_duration;
-       RecordStartType *start_type;
-       RecordTransport *record_transport;
-       BrowseButton *batch_browse;
-       RecordSource *batch_source;
-       RecordGUIModeMenu *batch_mode;
-       RecordGUINewBatch *new_batch;
-       RecordGUIDeleteBatch *delete_batch;
-       RecordGUIStartBatches *start_batches;
-       RecordGUIStopBatches *stop_batches;
-       RecordGUIActivateBatch *activate_batch;
-       RecordGUILabel *label_button;
-       RecordGUIClearLabels *clrlbls_button;
-       RecordGUIDropFrames *drop_frames;
-       RecordGUIFillFrames *fill_frames;
-       RecordGUIPowerOff *power_off;
-       RecordGUICommCheck *commercial_check;
-       RecordGUIMonitorVideo *monitor_video;
-       RecordGUIMonitorAudio *monitor_audio;
-       RecordGUIAudioMeters *meter_audio;
-       RecordGUIFlash *batch_flash;
-       RecordStartoverThread *startover_thread;
-       EndRecordThread *interrupt_thread;
-       LoadMode *load_mode;
-       int flash_color;
-
-       RecordGUILoopHr *loop_hr;
-       RecordGUILoopMin *loop_min;
-       RecordGUILoopSec *loop_sec;
-       RecordGUIReset *reset;
-       RecordGUIDCOffset *dc_offset_button;
-       RecordGUIDCOffsetText *dc_offset_text[MAXCHANNELS];
-       RecordMonitor *monitor_video_window;
-       BC_Meter *meter[MAXCHANNELS];
-       int total_dropped_frames;
-       int total_clipped_samples;
-
-       int set_loop_status(int value);
-       int keypress_event();
-       int set_translation(int x, int y, float z);
-
-       void update_batches();
-       Batch *get_current_batch();
-       Batch *get_editing_batch();
-       void start_flash_batch();
-       void stop_flash_batch();
-       void flash_batch();
-// Update the batch channel table when edited
-       void update_batch_sources();
-// Update the batch editing tools
-       void update_batch_tools();
-       void enable_batch_buttons();
-       void disable_batch_buttons();
-
-       void reset_audio();
-       void reset_video();
-       void update_frames_behind(long value);
-       void update_dropped_frames(long value);
-       void update_position(double value);
-       void update_clipped_samples(long value);
-       void update_framerate(double value);
-       void update_video(int dropped, int behind);
-       void update_audio(int channels, double *max, int *over);
-       void update_cron_status(const char *status);
-       void update_power_off(int value);
-       void update_labels(double new_position);
-       int update_prev_label(long new_position);
-       int update_title(BC_Title *title, double position);
-};
-
-class RecordGUISave : public BC_Button
-{
-public:
-       RecordGUISave(RecordGUI *gui);
-       int handle_event();
-       int keypress_event();
-       RecordGUI *gui;
-};
-
-
-class RecordGUICancel : public BC_CancelButton
-{
-public:
-       RecordGUICancel(RecordGUI *record_gui);
-       int handle_event();
-       int keypress_event();
-       RecordGUI *gui;
-       Record *record;
-};
-
-class RecordGUIOK : public BC_OKButton
-{
-public:
-       RecordGUIOK(RecordGUI *record_gui);
-       int handle_event();
-       RecordGUI *gui;
-};
-
-class RecordGUIStartBatches : public RecordBatchesGUI::StartBatches
-{
-public:
-       RecordGUI *gui;
-       int handle_event();
-       RecordGUIStartBatches(RecordGUI *gui, int x, int y);
-};
-
-
-class RecordGUIStopBatches : public RecordBatchesGUI::StopBatches
-{
-public:
-       RecordGUI *gui;
-       int handle_event();
-       RecordGUIStopBatches(RecordGUI *gui, int x, int y);
-};
-
-class RecordGUIActivateBatch : public RecordBatchesGUI::ActivateBatch
-{
-public:
-       RecordGUIActivateBatch(RecordGUI *gui, int x, int y);
-       int handle_event();
-       RecordGUI *gui;
-};
-
-
-class RecordGUIStartOver : public BC_GenericButton
-{
-public:
-       RecordGUIStartOver(RecordGUI *gui, int x, int y);
-       ~RecordGUIStartOver();
-
-       int handle_event();
-
-       RecordGUI *gui;
-};
-
-class EndRecordThread : public Thread
-{
-public:
-       EndRecordThread(RecordGUI *record_gui);
-       ~EndRecordThread();
-
-       void start(int is_ok);
-       void run();
-
-       RecordGUI *gui;
-       QuestionWindow *window;
-// OK Button was pressed
-       int is_ok;
-};
-
-class RecordStartoverThread : public Thread
-{
-public:
-       RecordStartoverThread(RecordGUI *record_gui);
-       ~RecordStartoverThread();
-       void run();
-
-       RecordGUI *gui;
-       QuestionWindow *window;
-};
-
-class RecordBatch : public BC_PopupTextBox
-{
-public:
-       RecordBatch(RecordGUI *gui, int x, int y);
-       int handle_event();
-       RecordGUI *gui;
-};
-
-class RecordPath : public RecordBatchesGUI::Path
-{
-public:
-       RecordGUI *gui;
-       int handle_event();
-       RecordPath(RecordGUI *gui, int x, int y);
-};
-
-class RecordStart : public RecordBatchesGUI::StartTime
-{
-public:
-       RecordGUI *gui;
-       int handle_event();
-       RecordStart(RecordGUI *gui, int x, int y);
-};
-
-class RecordDuration : public RecordBatchesGUI::Duration
-{
-public:
-       RecordGUI *gui;
-       int handle_event();
-       RecordDuration(RecordGUI *gui, int x, int y);
-};
-
-class RecordSource : public RecordBatchesGUI::Source
-{
-public:
-       RecordGUI *gui;
-       int handle_event();
-       RecordSource(RecordGUI *gui, int x, int y);
-};
-
-class RecordNews : public RecordBatchesGUI::News
-{
-public:
-       RecordNews(RecordGUI *gui, int x, int y);
-       int handle_event();
-       RecordGUI *gui;
-};
-
-class RecordGUIDropFrames : public BC_CheckBox
-{
-public:
-       RecordGUIDropFrames(RecordGUI *gui, int x, int y);
-       int handle_event();
-       int keypress_event();
-       RecordGUI *gui;
-};
-
-class RecordGUIFillFrames : public BC_CheckBox
-{
-public:
-       RecordGUIFillFrames(RecordGUI *gui, int x, int y);
-       int handle_event();
-       int keypress_event();
-       RecordGUI *gui;
-};
-
-class RecordGUIPowerOff : public BC_CheckBox
-{
-public:
-       RecordGUIPowerOff(RecordGUI *gui, int x, int y);
-       int handle_event();
-       int keypress_event();
-       RecordGUI *gui;
-};
-
-class RecordGUICommCheck : public BC_CheckBox
-{
-public:
-       RecordGUICommCheck(RecordGUI *gui, int x, int y);
-       int handle_event();
-       int keypress_event();
-       RecordGUI *gui;
-};
-
-class RecordGUIMonitorVideo : public BC_CheckBox
-{
-public:
-       RecordGUIMonitorVideo(RecordGUI *gui, int x, int y);
-       int handle_event();
-       int keypress_event();
-       RecordGUI *gui;
-};
-
-class RecordGUIMonitorAudio : public BC_CheckBox
-{
-public:
-       RecordGUIMonitorAudio(RecordGUI *gui, int x, int y);
-       int handle_event();
-       int keypress_event();
-       RecordGUI *gui;
-};
-
-class RecordGUIAudioMeters : public BC_CheckBox
-{
-public:
-       RecordGUIAudioMeters(RecordGUI *gui, int x, int y);
-       int handle_event();
-       int keypress_event();
-       RecordGUI *gui;
-};
-
-class RecordGUINewBatch : public RecordBatchesGUI::NewBatch
-{
-public:
-       RecordGUI *gui;
-       int handle_event();
-       RecordGUINewBatch(RecordGUI *gui, int x, int y);
-};
-
-
-class RecordGUIDeleteBatch : public RecordBatchesGUI::DeleteBatch
-{
-public:
-       RecordGUI *gui;
-       int handle_event();
-       RecordGUIDeleteBatch(RecordGUI *gui, int x, int y);
-};
-
-class RecordGUILabel : public BC_GenericButton
-{
-public:
-       RecordGUILabel(RecordGUI *gui, int x, int y);
-       ~RecordGUILabel();
-
-       int handle_event();
-       int keypress_event();
-       RecordGUI *gui;
-};
-
-class RecordGUIClearLabels : public BC_GenericButton
-{
-public:
-       RecordGUIClearLabels(RecordGUI *gui, int x, int y);
-       ~RecordGUIClearLabels();
-
-       int handle_event();
-       RecordGUI *gui;
-};
-
-// Stop GUI blocking the recording when X11 is busy
-class RecordStatusThread : public Thread
-{
-public:
-       RecordStatusThread(MWindow *mwindow, RecordGUI *gui);
-       ~RecordStatusThread();
-
-       void reset_video();
-       void reset_audio();
-       void update_frames_behind(long value);
-       void update_dropped_frames(long value);
-       void update_position(double value);
-       void update_clipped_samples(long value);
-       void update_framerate(double value);
-       template<class T>
-       void update_status_string(const char *fmt,T &new_value,T &displayed_value,BC_Title *widgit);
-       void run();
-
-       MWindow *mwindow;
-       RecordGUI *gui;
-       long new_dropped_frames, displayed_dropped_frames;
-       long new_frames_behind, displayed_frames_behind;
-       double new_framerate, displayed_framerate;
-       long new_clipped_samples, displayed_clipped_samples;
-       double new_position;
-       int done;
-       Condition *input_lock;
-};
-
-class RecordGUIFlash : public Thread
-{
-public:
-       RecordGUI *record_gui;
-       Condition *flash_lock;
-       int done;
-
-       void run();
-       RecordGUIFlash(RecordGUI *gui);
-       ~RecordGUIFlash();
-};
-
-class RecordGUIModeMenu;
-
-class RecordGUIModeTextBox : public BC_TextBox
-{
-public:
-       RecordGUIModeTextBox(RecordGUIModeMenu *mode_menu,
-               int x, int y, int w,const char *text);
-       ~RecordGUIModeTextBox();
-       RecordGUI *record_gui;
-       RecordGUIModeMenu *mode_menu;
-       int handle_event();
-};
-
-class RecordGUIModeListBox : public BC_ListBox
-{
-public:
-       RecordGUIModeListBox(RecordGUIModeMenu *mode_menu);
-       ~RecordGUIModeListBox();
-       RecordGUI *record_gui;
-       RecordGUIModeMenu *mode_menu;
-       int handle_event();
-};
-
-class RecordGUIModeMenu
-{
-public:
-       RecordGUIModeMenu(RecordGUI *record_gui,int x, int y, int w, const char *text);
-       ~RecordGUIModeMenu();
-
-       int handle_event();
-       void create_objects();
-       void update(int value);
-       int get_w();
-       int get_h();
-
-       RecordGUI *record_gui;
-       RecordGUIModeTextBox *textbox;
-       RecordGUIModeListBox *listbox;
-       ArrayList<BC_ListBoxItem*> modes;
-       int value;
-};
-
-
-class RecordGUIDCOffset : public BC_Button
-{
-public:
-       RecordGUIDCOffset(MWindow *mwindow, int y);
-       ~RecordGUIDCOffset();
-
-       int handle_event();
-       int keypress_event();
-};
-
-class RecordGUIDCOffsetText : public BC_TextBox
-{
-public:
-       RecordGUIDCOffsetText(char *text, int y, int number);
-       ~RecordGUIDCOffsetText();
-
-       int handle_event();
-       int number;
-};
-
-class RecordGUIReset : public BC_Button
-{
-public:
-       RecordGUIReset(MWindow *mwindow, RecordGUI *gui, int y);
-       ~RecordGUIReset();
-
-       int handle_event();
-       RecordGUI *gui;
-};
-
-class RecordGUIResetTranslation : public BC_Button
-{
-public:
-       RecordGUIResetTranslation(MWindow *mwindow, RecordGUI *gui, int y);
-       ~RecordGUIResetTranslation();
-
-       int handle_event();
-       RecordGUI *gui;
-};
-
-
-
-
-
-
-
-#endif