]> git.donarmstrong.com Git - lilypond.git/blobdiff - lily/dynamic-engraver.cc
*** empty log message ***
[lilypond.git] / lily / dynamic-engraver.cc
index 3e947e36f2b06d8c0238bdb536c6f6ae7e20de34..31368b175c79d46915c3b6e63c2248b242ad303c 100644 (file)
@@ -114,12 +114,11 @@ Dynamic_engraver::process_music ()
     {
       if (!line_spanner_)
        {
-         line_spanner_ = make_spanner ("DynamicLineSpanner");
-
          Music * rq = accepted_spanreqs_drul_[START];
+         line_spanner_ = make_spanner ("DynamicLineSpanner", rq ? rq->self_scm (): SCM_EOL );
+
          if (script_ev_)
-           rq =  script_ev_ ;
-         announce_grob (line_spanner_, rq ? rq->self_scm (): SCM_EOL);
+           rq =  script_ev_;
        }
     }
   
@@ -140,7 +139,7 @@ Dynamic_engraver::process_music ()
   */
   if (script_ev_)
     {
-      script_ = make_item ("DynamicText");
+      script_ = make_item ("DynamicText", script_ev_->self_scm ());
       script_->set_property ("text",
                                   script_ev_->get_property ("text"));
 
@@ -150,7 +149,6 @@ Dynamic_engraver::process_music ()
 
       Axis_group_interface::add_element (line_spanner_, script_);
 
-      announce_grob (script_, script_ev_->self_scm ());
     }
 
   Music *stop_ev = accepted_spanreqs_drul_ [STOP] ?
@@ -220,9 +218,9 @@ Dynamic_engraver::process_music ()
            start_type = "crescendo";
          
          SCM s = get_property ((start_type + "Spanner").to_str0 ());
-         if (!is_symbol (s) || s == ly_symbol2scm ("hairpin"))
+         if (!ly_c_symbol_p (s) || s == ly_symbol2scm ("hairpin"))
            {
-             cresc_  = make_spanner ("Hairpin");
+             cresc_  = make_spanner ("Hairpin", accepted_spanreqs_drul_[START]->self_scm ());
              cresc_->set_property ("grow-direction",
                                           scm_int2num ((start_type == "crescendo")
                                                       ? BIGGER : SMALLER));
@@ -237,19 +235,19 @@ Dynamic_engraver::process_music ()
          */
          else
            {
-             cresc_  = make_spanner ("TextSpanner");
+             cresc_  = make_spanner ("TextSpanner", accepted_spanreqs_drul_[START]->self_scm ());
              cresc_->set_property ("style", s);
-             daddy_context_->set_property ((start_type
+             context ()->set_property ((start_type
                                            + "Spanner").to_str0 (), SCM_EOL);
              s = get_property ((start_type + "Text").to_str0 ());
              /*
                FIXME: use get_markup () to check type.
              */
-             if (is_string (s) || is_pair (s))
+             if (ly_c_string_p (s) || ly_c_pair_p (s))
                {
                  cresc_->set_property ("edge-text",
                                             scm_cons (s, scm_makfrom0str ("")));
-                 daddy_context_->set_property ((start_type + "Text").to_str0 (),
+                 context ()->set_property ((start_type + "Text").to_str0 (),
                                                SCM_EOL);
                }
            }
@@ -262,7 +260,6 @@ Dynamic_engraver::process_music ()
 
          add_bound_item (line_spanner_, cresc_->get_bound (LEFT));
          
-         announce_grob (cresc_, accepted_spanreqs_drul_[START]->self_scm ());
        }
     }
 }
@@ -336,15 +333,10 @@ Dynamic_engraver::typeset_all ()
            add_bound_item (finished_line_spanner_,
                            finished_cresc_->get_bound (RIGHT));
        }
-      typeset_grob (finished_cresc_);
       finished_cresc_ =0;
     }
   
-  if (script_)
-    {
-      typeset_grob (script_);
       script_ = 0;
-    }
   if (finished_line_spanner_)
     {
       /*
@@ -376,7 +368,6 @@ Dynamic_engraver::typeset_all ()
          finished_line_spanner_->set_bound (LEFT, ci);   
        }
        
-      typeset_grob (finished_line_spanner_);
       finished_line_spanner_ = 0;
     }
 }
@@ -400,7 +391,7 @@ Dynamic_engraver::acknowledge_grob (Grob_info i)
       if (script_ && !script_->get_parent (X_AXIS))
        {
          SCM head = scm_last_pair (i.grob_->get_property ("note-heads"));
-         if (is_pair (head))
+         if (ly_c_pair_p (head))
            script_->set_parent (unsmob_grob (ly_car (head)),  X_AXIS);
        }
       
@@ -414,7 +405,7 @@ Dynamic_engraver::acknowledge_grob (Grob_info i)
 
        DynamicText doesn't really have a script-priority field.
        */
-      if (is_number (p)
+      if (ly_c_number_p (p)
          && ly_scm2int (p) < ly_scm2int (script_->get_property ("script-priority")))
        {
          Side_position_interface::add_support (line_spanner_, i.grob_);