Lines Matching refs:s

6 function may_combine(s){var nhd2,s2=s.ts_next
9 if(s2.v==s.v||s2.st!=s.st||s2.time!=s.time||s2.dur!=s.dur)
11 if(s.combine<=0&&s2.type!=s.type)
13 if(s.a_gch&&s2.a_gch)
15 if(s.type==C.REST){if(s.type==s2.type&&s.invis&&!s2.invis)
20 if(s2.beam_st!=s.beam_st||s2.beam_end!=s.beam_end)
22 if(s.combine<=1&&s.notes[0].pit<=s2.notes[nhd2].pit+1)
25 function combine_notes(s,s2){var nhd,type,m;for(m=0;m<=s2.nhd;m++)
26 s2.notes[m].s=s
27 Array.prototype.push.apply(s.notes,s2.notes);s.nhd=nhd=s.notes.length-1;s.notes.sort(abc2svg.pitcmp)
28 if(s.combine>=3){for(m=nhd;m>0;m--){if(s.notes[m].pit==s.notes[m-1].pit&&s.notes[m].acc==s.notes[m-1].acc)
29 s.notes.splice(m,1)}
30 s.nhd=nhd=s.notes.length-1}
31 s.ymx=3*(s.notes[nhd].pit-18)+4;s.ymn=3*(s.notes[0].pit-18)-4;type=s.notes[0].tie_ty
33 s.notes[0].tie_ty=C.SL_BELOW|(type&C.SL_DOTTED);type=s.notes[nhd].tie_ty
35 s.notes[nhd].tie_ty=C.SL_ABOVE|(type&C.SL_DOTTED)}
36 function do_combine(s){var s2,nhd,nhd2,type
37 while(1){nhd=s.nhd;s2=s.ts_next;nhd2=s2.nhd
38 if(s.type!=s2.type){if(s2.type!=C.REST){s2=s;s=s2.ts_next}}else if(s.type==C.REST){if(s.invis&&!s2.invis)
39 delete s.invis}else{combine_notes.call(this,s,s2)
41 s.tie_s=s2.tie_s}
42 if(s2.sls){if(s.sls)
43 Array.prototype.push.apply(s.sls,s2.sls)
45 s.sls=s2.sls}
47 s.sl1=true
49 s.a_gch=s2.a_gch
50 if(s2.a_dd){if(!s.a_dd)
51 s.a_dd=s2.a_dd
53 Array.prototype.push.apply(s.a_dd,s2.a_dd)}
54 delsym.push({s:s2,r:s});this.unlksym(s2)
55 if(s.in_tuplet||!may_combine.call(this,s))
57 function tie_repl(s){var s1=s.tie_s,i=delsym.length
58 while(--i>=0){if(delsym[i].s==s1){s.tie_s=delsym[i].r
60 var s,s2,g,i,r
61 for(s=this.get_tsfirst();s;s=s.ts_next){switch(s.type){case C.REST:if(s.combine==undefined||s.combine<0)
63 if(may_combine.call(this,s))
64 do_combine.call(this,s)
67 case C.NOTE:if(s.combine==undefined||s.combine<=0)
70 if(!s.beam_st)
72 if(s.beam_end){if(may_combine.call(this,s))
73 do_combine.call(this,s)
75 s2=s
83 s2=s
88 for(s=this.get_tsfirst();s;s=s.ts_next){if(s.tie_s)
89 tie_repl(s)}},do_pscom:function(of,text){if(text.slice(0,13)=="voicecombine ")
93 var s=of(gr,tp)
94 if(s&&s.notes&&curvoice.combine!=undefined)
95 s.combine=curvoice.combine
96 return s},set_stem_dir:function(of){of();abc2svg.combine.comb_v.call(this)},set_vp:function(of,a){var i,curvoice=this.get_curvoice()