From: fred Date: Fri, 6 Dec 1996 22:06:43 +0000 (+0000) Subject: lilypond-0.0.15 X-Git-Tag: release/1.5.59~6645 X-Git-Url: https://git.donarmstrong.com/?a=commitdiff_plain;h=c674d76b8cdc908a273cf7f9e0774e362813bb49;p=lilypond.git lilypond-0.0.15 --- diff --git a/hdr/melodicstaff.hh b/hdr/melodicstaff.hh index 733eae3fef..45785e4c02 100644 --- a/hdr/melodicstaff.hh +++ b/hdr/melodicstaff.hh @@ -19,7 +19,7 @@ struct Melodic_staff : public Simple_staff virtual void set_output(PScore *); virtual Item* get_TYPESET_item(Command*); - virtual Stem * get_stem(Stem_req *rq); + virtual Stem * get_stem(Stem_req *rq,Real); virtual Notehead * get_notehead(Note_req *rq, int bot); virtual Local_key_item* get_local_key_item(); }; diff --git a/hdr/rhythmstaff.hh b/hdr/rhythmstaff.hh index 2c099afa0b..8591e3c1a0 100644 --- a/hdr/rhythmstaff.hh +++ b/hdr/rhythmstaff.hh @@ -16,7 +16,7 @@ struct Rhythmic_staff : public Simple_staff /****************/ virtual Item *get_TYPESET_item(Command*); - virtual Stem *get_stem(Stem_req *rq); + virtual Stem *get_stem(Stem_req *rq,Real); virtual Notehead * get_notehead(Note_req *rq, int b); virtual void set_output(PScore *); }; diff --git a/hdr/simplestaff.hh b/hdr/simplestaff.hh index 07fc985047..faf1002d53 100644 --- a/hdr/simplestaff.hh +++ b/hdr/simplestaff.hh @@ -24,6 +24,7 @@ struct Simple_column : Staff_column { svec notes; svec slurs; Stem_req *stem_; + Real stem_requester_len; Beam_req *beam_; Simple_staff* staff_; @@ -51,7 +52,7 @@ struct Simple_staff : Staff { Staff_column*create_col(Score_column*); virtual Item *get_TYPESET_item(Command*); - virtual Stem *get_stem(Stem_req *rq)=0; + virtual Stem *get_stem(Stem_req *rq, Real)=0; virtual Notehead *get_notehead(Note_req *rq, int b)=0; virtual Rest *get_rest(Rest_req *rq); virtual void set_output(PScore *); diff --git a/src/melodicstaff.cc b/src/melodicstaff.cc index b6d1ea59d7..ed4383fced 100644 --- a/src/melodicstaff.cc +++ b/src/melodicstaff.cc @@ -45,9 +45,9 @@ Melodic_staff::get_TYPESET_item(Command*com) } Stem * -Melodic_staff::get_stem(Stem_req*rq) +Melodic_staff::get_stem(Stem_req*rq, Real dur) { - Stem * s = new Stem(NO_LINES-1); + Stem * s = new Stem(NO_LINES-1, dur); s->flag = rq->stem_number; return s; } diff --git a/src/rhythmstaff.cc b/src/rhythmstaff.cc index d5f26dcd43..a446bd33ec 100644 --- a/src/rhythmstaff.cc +++ b/src/rhythmstaff.cc @@ -43,9 +43,9 @@ Rhythmic_staff::get_notehead(Note_req *rq, int) } Stem * -Rhythmic_staff::get_stem(Stem_req*rq) +Rhythmic_staff::get_stem(Stem_req*rq, Real l) { - Stem * s = new Stem(0); + Stem * s = new Stem(0,l); s->flag = rq->stem_number; return s; } diff --git a/src/simplestaff.cc b/src/simplestaff.cc index 6437b65c3a..9fe16b5937 100644 --- a/src/simplestaff.cc +++ b/src/simplestaff.cc @@ -14,6 +14,7 @@ Simple_column::Simple_column(Score_column*s, Simple_staff *rs) : Staff_column(s) { + stem_requester_len = 0; stem_ = 0; staff_ = rs; beam_ = 0; @@ -45,6 +46,7 @@ Simple_column::process_requests() } if (rq->stem()) { stem_ = rq->stem(); + stem_requester_len = v_elts[i]->duration; } if (rq->beam()) { diff --git a/src/simplewalker.cc b/src/simplewalker.cc index 8d056e59ce..f275cd272e 100644 --- a/src/simplewalker.cc +++ b/src/simplewalker.cc @@ -144,7 +144,7 @@ Simple_walker::process_requests() } if (c->stem_) { - stem_ = s->get_stem(c->stem_->stem()); + stem_ = s->get_stem(c->stem_->stem(), c->stem_requester_len); } for (int i = 0; i < c->notes.sz(); i ++) {