start, length, plugin->plugin_type);
result->copy_from(plugin);
result->shift(position - plugin->startproject);
+ result->gui_id = plugin->gui_id;
// Clear new plugin from old set
plugin->plugin_set->clear(plugin->startproject,
-int Tracks::move_track_up(Track *track)
+int Tracks::roll_track_up(Track *track)
{
if( first == last ) return 1;
int n = 1;
while( dst && !dst->master ) { dst = dst->previous; }
}
if( src == dst ) return 1;
- move_tracks(src, dst, n);
+ roll_tracks(src, dst, n);
return 0;
}
-int Tracks::move_track_down(Track *track)
+int Tracks::roll_track_down(Track *track)
{
if( first == last ) return 1;
int n = 1;
else
dst = !dst ? first : dst->next;
if( src == dst ) return 1;
- move_tracks(src, dst, n);
+ roll_tracks(src, dst, n);
return 0;
}
-int Tracks::move_tracks_up()
+int Tracks::roll_tracks_up()
{
if( first == last ) return 1;
int n = 1;
while( nxt && !nxt->master ) { ++n; nxt = nxt->next; }
}
if( src == dst ) return 1;
- move_tracks(src, dst, n);
+ roll_tracks(src, dst, n);
return 0;
}
-int Tracks::move_tracks_down()
+int Tracks::roll_tracks_down()
{
if( first == last ) return 1;
int n = 1;
while( src && !src->master ) { ++n; src = src->previous; }
}
if( src == dst ) return 1;
- move_tracks(src, dst, n);
+ roll_tracks(src, dst, n);
return 0;
}
-int Tracks::swap_track_up(Track *track)
+int Tracks::move_track_up(Track *track)
{
Track *next_track = track->previous;
if(!next_track) next_track = last;
return 0;
}
-int Tracks::swap_track_down(Track *track)
+int Tracks::move_track_down(Track *track)
{
Track *next_track = track->next;
if(!next_track) next_track = first;
}
-int Tracks::swap_tracks_up()
+int Tracks::move_tracks_up()
{
int result = 0;
Track *next = first;
return result;
}
-int Tracks::swap_tracks_down()
+int Tracks::move_tracks_down()
{
int result = 0;
Track *prev = last;
Track* current_atrack = 0;
Track* current_vtrack = 0;
Track* dst_track = 0;
- int src_type;
int result = 0;
double length;
double frame_rate = edl->session->frame_rate;
string[0] = 0;
// Search for start
- do{
- result = file->read_tag();
- }while(!result &&
- !file->tag.title_is("AUTO_CLIPBOARD"));
+ do {
+ result = file->read_tag();
+ } while(!result && !file->tag.title_is("AUTO_CLIPBOARD"));
if(!result)
{
frame_rate = file->tag.get_property("FRAMERATE", frame_rate);
sample_rate = file->tag.get_property("SAMPLERATE", sample_rate);
-
do
{
result = file->read_tag();
if(file->tag.title_is("TRACK"))
{
file->tag.get_property("TYPE", string);
- if(!strcmp(string, "AUDIO"))
- {
- src_type = TRACK_AUDIO;
- }
- else
- {
- src_type = TRACK_VIDEO;
- }
-
+ double src_rate = !strcmp(string, "AUDIO") ?
+ sample_rate : frame_rate;
+ double src_length = length / src_rate;
// paste to any media type
if(typeless)
{
if(dst_track)
{
- double frame_rate2 = frame_rate;
- double sample_rate2 = sample_rate;
-
- if(src_type != dst_track->data_type)
- {
- frame_rate2 = sample_rate;
- sample_rate2 = frame_rate;
- }
-
- dst_track->paste_automation(selectionstart,
- length,
- frame_rate2,
- sample_rate2,
- file,
- default_only,
- active_only);
+ dst_track->paste_automation(file,
+ selectionstart, src_length, src_rate,
+ default_only, active_only);
}
}
}