/********************************************** FUNCTION Does only remove all notes in the ranged area. (decided to wait with FXes) **********************************************/ void CutRangedRange( struct WBlocks *wblock ){ Place *p1,*p2; if(!wblock->isranged) return; p1=GetRangeStartPlace(wblock); p2=GetRangeEndPlace(wblock); CutRange(wblock->block,wblock->rangex1,wblock->rangex2,p1,p2); wblock->isranged=false; }
void TransposeRange( struct WBlocks *wblock, int trans ){ struct Tracks *track; int lokke; Place *p1,*p2; if( ! wblock->isranged) return; p1=GetRangeStartPlace(wblock); p2=GetRangeEndPlace(wblock); track=ListFindElement1(&wblock->block->tracks->l,wblock->rangex1); for(lokke=0;lokke<=wblock->rangex2-wblock->rangex1;lokke++){ Transpose_notes(track->notes,p1,p2,trans); track=NextTrack(track); } }