#include "edl.h"
#include "edlsession.h"
#include "filesystem.h"
+#include "file.h"
#include "filexml.h"
#include "fonts.h"
#include "keys.h"
mwindow->session->vwindow_y,
mwindow->session->vwindow_w,
mwindow->session->vwindow_h,
- 100,
- 100,
- 1,
- 1,
- 0) // Hide it
+ xS(100), yS(100), 1, 1, 0) // Hide it
{
this->mwindow = mwindow;
this->vwindow = vwindow;
canvas = new VWindowCanvas(mwindow, this);
canvas->create_objects(mwindow->edl);
canvas->use_vwindow();
-
-
+ char vsplash_path[BCTEXTLEN];
+ int vsplash_len = sizeof(vsplash_path)-1;
+ snprintf(vsplash_path, vsplash_len, "%s/vsplash.png", File::get_cindat_path());
+ VFrame *vsplash = VFramePng::vframe_png(vsplash_path);
+ if( vsplash ) {
+ BC_WindowBase *vcanvas = canvas->get_canvas();
+ vcanvas->draw_vframe(vsplash,
+ 0,0, vcanvas->get_w(), vcanvas->get_h(),
+ 0,0, vsplash->get_w(), vsplash->get_h(), 0);
+ vcanvas->flash(1);
+ delete vsplash;
+ }
//printf("VWindowGUI::create_objects 1\n");
add_subwindow(timebar = new VTimeBar(mwindow,
this,
break;
case 'f':
unlock_window();
- if( canvas->get_fullscreen() )
- canvas->stop_fullscreen();
- else
- canvas->start_fullscreen();
+ canvas->use_fullscreen(canvas->get_fullscreen() ? 0 : 1);
lock_window("VWindowGUI::keypress_event 1");
break;
case ESC:
unlock_window();
if( canvas->get_fullscreen() )
- canvas->stop_fullscreen();
+ canvas->use_fullscreen(0);
lock_window("VWindowGUI::keypress_event 2");
break;
case KEY_F1:
void VWindowEditing::panel_fit_autos(int all) {}
void VWindowEditing::panel_set_editing_mode(int mode) {}
void VWindowEditing::panel_set_auto_keyframes(int v) {}
+void VWindowEditing::panel_set_span_keyframes(int v) {}
void VWindowEditing::panel_set_labels_follow_edits(int v) {}
VWindowSource::VWindowSource(MWindow *mwindow, VWindowGUI *vwindow, int x, int y)
- : BC_PopupTextBox(vwindow,
- &vwindow->sources,
- "",
- x,
- y,
- 200,
- 200)
+ : BC_PopupTextBox(vwindow, &vwindow->sources, "",
+ x, y, xS(200), yS(200))
{
this->mwindow = mwindow;
this->vwindow = vwindow;
gui->resize_event(new_w, new_h);
}
+void VWindowCanvas::zoom_auto()
+{
+ EDL *edl = gui->vwindow->get_edl();
+ if(!edl) edl = mwindow->edl;
+ set_zoom(edl, 0);
+}
+
void VWindowCanvas::close_source()
{
gui->vwindow->interrupt_playback(1);
if( !get_canvas()->get_video_on() ) {
int cw = get_canvas()->get_w(), ch = get_canvas()->get_h();
get_canvas()->clear_box(0, 0, cw, ch);
- int ow = get_output_w(edl), oh = get_output_h(edl);
- if( ow > 0 && oh > 0 && refresh_frame && edl ) {
+ int ow = edl ? get_output_w(edl) : 0;
+ int oh = edl ? get_output_h(edl) : 0;
+ if( ow > 0 && oh > 0 && refresh_frame ) {
float in_x1, in_y1, in_x2, in_y2;
float out_x1, out_y1, out_x2, out_y2;
get_transfers(edl,
}
}
+int VWindowCanvas::use_fullscreen(int on)
+{
+ if( Canvas::use_fullscreen(on) ) {
+ gui->lock_window("VWindowCanvas::use_fullscreen");
+ zoom_auto();
+ draw_refresh(1);
+ gui->unlock_window();
+ }
+ return 1;
+}
+