]> git.donarmstrong.com Git - lilypond.git/commitdiff
lilypond-0.0.15
authorfred <fred>
Fri, 6 Dec 1996 22:06:43 +0000 (22:06 +0000)
committerfred <fred>
Fri, 6 Dec 1996 22:06:43 +0000 (22:06 +0000)
hdr/melodicstaff.hh
hdr/rhythmstaff.hh
hdr/simplestaff.hh
src/melodicstaff.cc
src/rhythmstaff.cc
src/simplestaff.cc
src/simplewalker.cc

index 733eae3fef8d9fd1ee6a18b380039bae44950abd..45785e4c020292c16b69b1f5865bd0e48c254d0c 100644 (file)
@@ -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();
 };
index 2c099afa0bc329803181506889c520b24efd20c6..8591e3c1a0a53c14e3eff190844516bbf2503e48 100644 (file)
@@ -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 *);
 };
index 07fc9850471813fe48f89c0f6d37198efa160d6b..faf1002d53a01dc03874e2a0ad851ee95e35ddc0 100644 (file)
@@ -24,6 +24,7 @@ struct Simple_column : Staff_column {
     svec<Rhythmic_req *> notes;
     svec<Slur_req *> 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 *);
index b6d1ea59d7f23deb897046b240ace1686d9667fa..ed4383fced88a6cd90823c7a153795bf80a12236 100644 (file)
@@ -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;
 }
index d5f26dcd4306ed055931dd3ee177f5709e2c72d4..a446bd33ecbe70846e2660236b39d3dcbcf8ffdc 100644 (file)
@@ -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;    
 }
index 6437b65c3a0764f1c59748d02b53ebbc221654cb..9fe16b593727aca3dc292f4e47b0c0cba9e19d83 100644 (file)
@@ -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()) {
index 8d056e59ce8e1bec0a9509cb25f364d4a6c1784c..f275cd272e9b275f39964f10b02f95f25b18dc1e 100644 (file)
@@ -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 ++)  {