int Track::vertical_span(Theme *theme)
{
int result = 0;
- if(expand_view)
- result = edl->local_session->zoom_track +
- plugin_set.total *
- theme->get_image("plugin_bg_data")->get_h();
- else
- result = edl->local_session->zoom_track;
-
- if(edl->session->show_titles)
+ if( show_titles() )
result += theme->get_image("title_bg_data")->get_h();
-
+ if( show_assets() )
+ result += edl->local_session->zoom_track;
+ if( expand_view )
+ result += plugin_set.total * theme->get_image("plugin_bg_data")->get_h();
+ result = MAX(result, theme->title_h);
return result;
}
return 0;
}
+int Track::show_assets()
+{
+ return expand_view || edl->session->show_assets ? 1 : 0;
+}
+
+int Track::show_titles()
+{
+ return expand_view || edl->session->show_titles ? 1 : 0;
+}
+int Track::show_transitions()
+{
+ return expand_view || edl->session->auto_conf->transitions ? 1 : 0;
+}
void Track::get_source_dimensions(double position, int &w, int &h)
{
return (double)position;
}
+int64_t Track::frame_align(int64_t position, int round)
+{
+ if( data_type != TRACK_VIDEO && edl->session->cursor_on_frames )
+ position = to_units(edl->align_to_frame(from_units(position), round), round);
+ return position;
+}
+
int Track::plugin_exists(Plugin *plugin)
{
for(int number = 0; number < plugin_set.size(); number++)