X-Git-Url: http://git.cinelerra-gg.org/git/?a=blobdiff_plain;f=cinelerra-5.1%2Fcinelerra%2Frecordmonitor.C;h=7ea18e1dfb1066acf5e0289b9c30449ef31b1fb9;hb=c9de74551f43dad1b898603c0827985773c0cf9d;hp=aec770a733a14817019e0a7679fd642d325d4120;hpb=30bdb85eb33a8ee7ba675038a86c6be59c43d7bd;p=goodguy%2Fhistory.git diff --git a/cinelerra-5.1/cinelerra/recordmonitor.C b/cinelerra-5.1/cinelerra/recordmonitor.C index aec770a7..7ea18e1d 100644 --- a/cinelerra-5.1/cinelerra/recordmonitor.C +++ b/cinelerra-5.1/cinelerra/recordmonitor.C @@ -41,6 +41,7 @@ #include "recordscopes.h" #include "recordtransport.h" #include "recordmonitor.h" +#include "signalstatus.h" #include "theme.h" #include "videodevice.inc" #include "vframe.h" @@ -279,12 +280,14 @@ RecordMonitorGUI::RecordMonitorGUI(MWindow *mwindow, RecordMonitorGUI::~RecordMonitorGUI() { lock_window("RecordMonitorGUI::~RecordMonitorGUI"); +#ifdef HAVE_DVB delete signal_status; +#endif delete canvas; if( bitmap ) delete bitmap; if( channel_picker ) delete channel_picker; - if( avc1394transport_thread ) #ifdef HAVE_FIREWIRE + if( avc1394transport_thread ) delete avc1394transport_thread; if( avc ) { delete avc; @@ -344,7 +347,7 @@ void RecordMonitorGUI::create_objects() add_subwindow(avc1394transport_timecode = new BC_Title(avc1394_transport->x_end, mwindow->theme->rmonitor_tx_y + 10, - _("00:00:00:00"), + "00:00:00:00", MEDIUM_7SEGMENT, BLACK)); @@ -373,12 +376,14 @@ void RecordMonitorGUI::create_objects() canvas->create_objects(0); canvas->use_rwindow(); +#ifdef HAVE_DVB if( driver == CAPTURE_DVB ) { int ssw = SignalStatus::calculate_w(this); signal_status = new SignalStatus(this, get_w()-ssw-3, 0); add_subwindow(signal_status); signal_status->create_objects(); } +#endif int x = mwindow->theme->widget_border; int y = mwindow->theme->widget_border; @@ -432,16 +437,6 @@ int RecordMonitorGUI::button_press_event() { if(mwindow->session->rwindow_fullscreen && canvas && canvas->get_canvas()) return canvas->button_press_event_base(canvas->get_canvas()); - - if( get_buttonpress() == 2 ) { - return 0; - } - else -// Right button - if( get_buttonpress() == 3 ) { - monitor_menu->activate_menu(); - return 1; - } return 0; } @@ -461,6 +456,10 @@ int RecordMonitorGUI::cursor_enter_event() int RecordMonitorGUI::button_release_event() { + if( get_buttonpress() == 3 && cursor_inside() ) { + monitor_menu->activate_menu(); + return 1; + } if( canvas && canvas->get_canvas() ) return canvas->button_release_event(); return 0; @@ -528,8 +527,10 @@ int RecordMonitorGUI::keypress_event() default: if(canvas) result = canvas->keypress_event(this); +#ifdef HAVE_FIREWIRE if(!result && avc1394_transport) result = avc1394_transport->keypress_event(get_keypress()); +#endif break; } @@ -667,6 +668,7 @@ int RecordMonitorGUI::create_bitmap() void RecordMonitorGUI::enable_signal_status(int enable) { +#ifdef HAVE_DVB if( !signal_status ) return; signal_status->lock_window("RecordMonitorGUI::enable_signal_status"); if( !enable ) @@ -677,6 +679,7 @@ void RecordMonitorGUI::enable_signal_status(int enable) DeviceDVBInput *dvb_input = record->dvb_device(); if( dvb_input ) dvb_input->set_signal_status(!enable ? 0 : signal_status); +#endif } void RecordMonitorGUI:: @@ -853,6 +856,9 @@ RecordMonitorFullsize::RecordMonitorFullsize(MWindow *mwindow, } int RecordMonitorFullsize::handle_event() { + Record *record = window->record; + record->video_zoom = 1.0; + record->record_gui->set_translation(record->video_x, record->video_y, record->video_zoom); return 1; } @@ -1231,18 +1237,23 @@ RecVideoDVThread::~RecVideoDVThread() int RecVideoDVThread::start_rendering() { +#ifdef HAVE_DV dv = dv_new(); +#endif return 0; } int RecVideoDVThread::stop_rendering() { +#ifdef HAVE_DV if( dv ) { dv_delete(((dv_t*)dv)); dv = 0; } +#endif return 0; } int RecVideoDVThread::render_frame(VFrame *frame, long size) { +#ifdef HAVE_DV unsigned char *yuv_planes[3]; yuv_planes[0] = thread->output_frame->get_y(); yuv_planes[1] = thread->output_frame->get_u(); @@ -1252,7 +1263,7 @@ int RecVideoDVThread::render_frame(VFrame *frame, long size) frame->get_data(), frame->get_compressed_size(), thread->output_frame->get_color_model()); - +#endif return 0; }