colormodels.remove_all_objects();
interlace_project_modes.remove_all_objects();
interlace_asset_modes.remove_all_objects();
- interlace_asset_fixmethods.remove_all_objects();
sighandler->terminate();
delete sighandler;
delete run_lock;
int bw = lt + BC_DisplayInfo::get_right_border(); // borders
int bh = top + BC_DisplayInfo::get_bottom_border();
int zx = 0, zy = 0; // window origins
- int mw = 10+10, mh = 10+10; // canvas margins
+ int mw = xS(10+10), mh = yS(10+10); // canvas margins
int rsz = 0, n = 0, dz = 0;
int ow = edl->session->output_w, oh = edl->session->output_h;
for( int i=0; i<zwindows.size(); ++i ) {
int mx = x2 - zw, my = y2 - zh;
if( xx > mx ) xx = mx;
if( yy > my ) yy = my;
- xx += lt + dz; yy += top + dz;
+ xx += lt + xS(dz); yy += top + yS(dz);
zwindow->reposition(xx,yy, ww,hh);
if( zwindow->running() ) {
ZWindowGUI *gui = (ZWindowGUI *)zwindow->get_gui();
#define ILACEASSETMODELISTADD(x) ilacemode_to_text(string, x); \
interlace_asset_modes.append(new InterlacemodeItem(string, x));
-#define ILACEFIXMETHODLISTADD(x) ilacefixmethod_to_text(string, x); \
- interlace_asset_fixmethods.append(new InterlacefixmethodItem(string, x));
-
// Interlacing Modes
ILACEASSETMODELISTADD(ILACE_MODE_UNDETECTED); // Not included in the list for the project options.
ILACEASSETMODELISTADD(ILACE_MODE_NOTINTERLACED);
ILACEPROJECTMODELISTADD(ILACE_MODE_NOTINTERLACED);
- // Interlacing Fixing Methods
- ILACEFIXMETHODLISTADD(ILACE_FIXMETHOD_NONE);
- ILACEFIXMETHODLISTADD(ILACE_FIXMETHOD_UPONE);
- ILACEFIXMETHODLISTADD(ILACE_FIXMETHOD_DOWNONE);
-
mixers_align = new MixersAlign(this);
}
Asset *format_asset = new Asset;
format_asset->format = FILE_FFMPEG;
format_asset->load_defaults(defaults, "PROXY_", 1, 1, 0, 0, 0);
- ProxyRender proxy_render(this, format_asset);
int new_scale = edl->session->proxy_scale;
- int use_scaler = edl->session->proxy_use_scaler;
+ ProxyRender proxy_render(this, format_asset, new_scale);
for( int i=0; i<new_idxbls.size(); ++i ) {
Indexable *orig = new_idxbls.get(i);
// render needed proxies
int result = proxy_render.create_needed_proxies(new_scale);
if( !result ) {
- add_proxy(use_scaler,
- &proxy_render.orig_idxbls, &proxy_render.orig_proxies);
+ add_proxy(&proxy_render.orig_idxbls, &proxy_render.orig_proxies);
}
format_asset->remove_user();
return !result ? proxy_render.needed_proxies.size() : -1;
edl->Garbage::add_user();
save_backup();
undo_before(_("proxy"), this);
- ProxyRender proxy_render(this, asset);
+ int asset_scale = new_scale == 1 ? 0 :
+ !new_use_scaler ? 1 : new_scale;
+ ProxyRender proxy_render(this, asset, asset_scale);
// revert project to original size from current size
// remove all session proxy assets at the at the current proxy_scale
gui->show_window();
gui->raise_window();
gui->unlock_window();
-
+ cwindow->gui->lock_window("MWindow::create_objects 1");
+ cwindow->gui->tool_panel->raise_tool();
+ cwindow->gui->unlock_window();
if(debug) PRINT_TRACE
if(preferences->use_tipwindow)
cwindow->gui->unlock_window();
}
+void MWindow::set_span_keyframes(int value)
+{
+ edl->session->span_keyframes = value;
+ gui->mbuttons->edit_panel->span_keyframe->update(value);
+ gui->flush();
+ cwindow->gui->lock_window("MWindow::set_span_keyframes");
+ cwindow->gui->edit_panel->span_keyframe->update(value);
+ cwindow->gui->flush();
+ cwindow->gui->unlock_window();
+}
+
void MWindow::set_auto_visibility(Autos *autos, int value)
{
if( autos->type == Autos::AUTOMATION_TYPE_PLUGIN )
if(debug) PRINT_TRACE
cwindow->gui->lock_window("MWindow::update_project 2");
cwindow->gui->timebar->update(0);
+ Track *track = cwindow->calculate_affected_track();
+ cwindow->mask_track_id = track ? track->get_id() : -1;
+ cwindow->gui->tool_panel->raise_tool();
cwindow->gui->unlock_window();
if(debug) PRINT_TRACE
lwindow->gui->panel->set_meters(channels, 1);
lwindow->gui->flush();
lwindow->gui->unlock_window();
-
+#ifdef GLx4
// Warn user
if(((edl->session->output_w % 4) ||
(edl->session->output_h % 4)) &&
_("This project's dimensions are not multiples of 4 so\n"
"it can't be rendered by OpenGL."));
}
-
+#endif
// Flash frame
sync_parameters(CHANGE_ALL);
double framerate = asset->get_frame_rate();
int width = asset->get_w();
int height = asset->get_h();
+#ifdef GLx4
// must be multiple of 4 for opengl
width = (width+3) & ~3; height = (height+3) & ~3;
+#endif
int driver = session->playback_config->vconfig->driver;
int color_model = file->get_best_colormodel(asset, driver);
// color_model = BC_CModels::is_yuv(color_model) ?