]> git.donarmstrong.com Git - lilypond.git/blobdiff - lily/note-column-grav.cc
release: 0.1.8
[lilypond.git] / lily / note-column-grav.cc
index 67614565588c115f2457835906209d1539022192..d9811ef3704c64370c63b61ddeeb2e48a1eb9b5c 100644 (file)
 #include "rest-column.hh"
 
 bool
-Note_column_engraver::acceptable_elem_b(Score_elem const*elem_C)const
+Note_column_engraver::acceptable_elem_b (Score_elem const*elem_C)const
 {
     char const*nC = elem_C->name();
-    return (nC == Script::static_name() || nC == Note_head::static_name() 
+    return (nC == Script::static_name() || nC == Note_head::static_name () 
            || nC == Stem::static_name());
 }
 Note_column*
@@ -25,7 +25,7 @@ Note_column_engraver::note_col_l()
 {
     if (!ncol_p_){
        ncol_p_ = new Note_column;
-       announce_element(Score_elem_info(ncol_p_, 0));
+       announce_element (Score_elem_info (ncol_p_, 0));
     }
     return ncol_p_;
 }
@@ -35,50 +35,50 @@ Note_column_engraver::rest_col_l()
 {
     if (!restcol_p_) {
        restcol_p_  = new Rest_column;
-       announce_element(Score_elem_info(restcol_p_,0));
+       announce_element (Score_elem_info (restcol_p_,0));
     }
     return restcol_p_;
 }
 
 void
-Note_column_engraver::acknowledge_element(Score_elem_info i)
+Note_column_engraver::acknowledge_element (Score_elem_info i)
 {
-    if (!acceptable_elem_b(i.elem_l_))
+    if (!acceptable_elem_b (i.elem_l_))
        return;
 
 
     char const*nC = i.elem_l_->name();
 
-    if (nC == Script::static_name()) {
-       script_l_arr_.push((Script*)i.elem_l_->item());
+    if (nC == Script::static_name() && i.req_l_ && i.req_l_->musical ()) {
+       script_l_arr_.push ((Script*)i.elem_l_->item());
     } else if (nC == Note_head::static_name()) {
        Note_head * h_l = (Note_head*)i.elem_l_->item();
        if (h_l->rest_b_)
-           rest_col_l()->add(h_l);
+           rest_col_l()->add (h_l);
        else
-           note_col_l()->add(h_l);
+           note_col_l()->add (h_l);
 
     } else if (nC == Stem::static_name()){ 
        stem_l_ = (Stem*)i.elem_l_->item();
     }
 
-    if ( ncol_p_ || restcol_p_ ) {
-       if ( stem_l_ ) {
+    if ( ncol_p_ || restcol_p_) {
+       if ( stem_l_) {
            if (restcol_p_&& !restcol_p_->stem_l_)
-               restcol_p_->set (stem_l_ );
+               restcol_p_->set (stem_l_);
            if (ncol_p_ && !ncol_p_->stem_l_)
-               ncol_p_->set(stem_l_);
+               ncol_p_->set (stem_l_);
        }
     
     
        for (int i=0; i < script_l_arr_.size(); i++) {
            if (restcol_p_)
-               restcol_p_->add(script_l_arr_[i]);
-           if ( ncol_p_ )
-               ncol_p_->add(script_l_arr_[i]);
+               restcol_p_->add (script_l_arr_[i]);
+           if ( ncol_p_)
+               ncol_p_->add (script_l_arr_[i]);
        }
     
-       script_l_arr_.set_size(0);
+       script_l_arr_.clear();
     }
 
 }
@@ -89,17 +89,17 @@ Note_column_engraver::do_pre_move_processing()
     if (ncol_p_) {
        if (! ncol_p_->h_shift_b_)
            ncol_p_->h_shift_b_ = h_shift_b_;
-       if (! ncol_p_->dir_i_ )
+       if (! ncol_p_->dir_i_)
            ncol_p_->dir_i_ = dir_i_;
 
-       typeset_element(ncol_p_);
+       typeset_element (ncol_p_);
        ncol_p_ =0;
     }
     if (restcol_p_) {
-       if (! restcol_p_->dir_i_ )
+       if (! restcol_p_->dir_i_)
            restcol_p_->dir_i_ = dir_i_;
 
-       typeset_element(restcol_p_);
+       typeset_element (restcol_p_);
        restcol_p_ =0;
     }
 }
@@ -107,12 +107,12 @@ Note_column_engraver::do_pre_move_processing()
 void
 Note_column_engraver::do_post_move_processing()
 {
-    script_l_arr_.set_size(0);
+    script_l_arr_.clear();
     stem_l_ =0;
 }
 
 void
-Note_column_engraver::set_feature(Feature i)
+Note_column_engraver::set_feature (Feature i)
 {
      if (i.type_ == "vdir")    
        dir_i_ = i.value_;