}
} // run()
public void processFinished( ProcessingThread context )
{
final BasicCompoundEdit edit = (BasicCompoundEdit) context.getClientArg( "edit" );
if( context.getReturnCode() == ProgressComponent.DONE ) {
final List collNewTrns = (List) context.getClientArg( "trns" );
// final List stakes = (List) context.getClientArg( "stakes" );
// for( int i = 0; i < collNewTrns.size(); i++ ) {
// final AudioTrail at = ((Transmitter) collNewTrns.get( i )).getAudioTrail();
// .editAdd(
// this, (AudioStake) stakes.get( i ), edit );
// }
final List selectedGroups = doc.getSelectedGroups().getAll();
if( !selectedGroups.isEmpty() ) {
for( int i = 0; i < collNewTrns.size(); i++ ) {
final GroupableSessionObject so = (GroupableSessionObject) collNewTrns.get( i );
edit.addPerform( new EditAddSessionObjects( this, so.getGroups(), selectedGroups ));
}
}
edit.addPerform( new EditAddSessionObjects( this, doc.getMutableTracks(), collNewTrns ));
edit.addPerform( new EditAddSessionObjects( this, doc.getMutableSelectedTracks(), collNewTrns ));
// for( int i = 0; i < doc.getSelectedGroups().size(); i++ ) {
// final SessionGroup group = (SessionGroup) doc.getSelectedGroups().get( i );
// edit.addPerform( new EditAddSessionObjects( this, group.getTransmitters(), collNewTrns ));
// }
edit.perform();
edit.end();
doc.getUndoManager().addEdit( edit );
} else {
// EEE should undo the stake alloc!!!
edit.cancel();
}
}