]> git.donarmstrong.com Git - lilypond.git/blobdiff - lily/ligature-engraver.cc
($(outdir)/%.pdf): add DVIPS_FLAGS. This will
[lilypond.git] / lily / ligature-engraver.cc
index 080e7ef2e1c53e66d80eec2f4cd70ba6beb6260b..a026118b98667e4b2dc3406725988d42bd772aa6 100644 (file)
@@ -99,45 +99,45 @@ Ligature_engraver::create_ligature_spanner ()
  * This method should do something that comes close to the following
  * .ly snippet:
  *
- * \property Voice.NoteHead \override #'molecule-callback =
+ * \property Voice.NoteHead \override #'print-function =
  *     < value of #'ligature-primitive-callback of Voice.NoteHead >
  *
  * TODO: What we are doing here on the c++ level, should actually be
  * performed on the SCM level.  However, I do not know how to teach
- * lilypond to apply an \override and \revert on #'molecule-callback,
+ * lilypond to apply an \override and \revert on #'print-function,
  * whenever lily encounters a \[ and \] in an .ly file, respectively.
  * Also encounter, that lily should not crash if a user erronously
  * nests \[ and \].
  */
 void
-Ligature_engraver::override_molecule_callback ()
+Ligature_engraver::override_stencil_callback ()
 {
-  SCM symbol = ly_symbol2scm ("NoteHead");
-  SCM target_callback = ly_symbol2scm ("molecule-callback");
+  SCM target_callback = ly_symbol2scm ("print-function");
   SCM source_callback = ly_symbol2scm ("ligature-primitive-callback");
-  SCM noteHeadProperties = daddy_trans_->get_property ("NoteHead");
+  SCM noteHeadProperties = updated_grob_properties (daddy_trans_, ly_symbol2scm ("NoteHead"));
   SCM value = ly_cdr (scm_sloppy_assq (source_callback, noteHeadProperties));
-  execute_pushpop_property (daddy_trans_, symbol, target_callback, value);
+  execute_pushpop_property (daddy_trans_, ly_symbol2scm ("NoteHead"),
+                           target_callback, value);
 }
 
 /*
  * This method should do something that comes close to the following
  * .ly snippet:
  *
- * \property Voice.NoteHead \revert #'molecule-callback
+ * \property Voice.NoteHead \revert #'print-function
  *
  * TODO: What we are doing here on the c++ level, should actually be
  * performed on the SCM level.  However, I do not know how to teach
- * lilypond to apply an \override and \revert on #'molecule-callback,
+ * lilypond to apply an \override and \revert on #'print-function,
  * whenever lily encounters a \[ and \] in an .ly file, respectively.
  * Also encounter, that lily should not crash if a user erronously
  * nests \[ and \].
  */
 void
-Ligature_engraver::revert_molecule_callback ()
+Ligature_engraver::revert_stencil_callback ()
 {
   SCM symbol = ly_symbol2scm ("NoteHead");
-  SCM key = ly_symbol2scm ("molecule-callback");
+  SCM key = ly_symbol2scm ("print-function");
   execute_pushpop_property (daddy_trans_, symbol, key, SCM_UNDEFINED);
 }
 
@@ -166,7 +166,7 @@ Ligature_engraver::process_music ()
       finished_ligature_ = ligature_;
       primitives_.clear ();
       ligature_ = 0;
-      revert_molecule_callback ();
+      revert_stencil_callback ();
     }
   last_bound_ = unsmob_grob (get_property ("currentMusicalColumn"));
 
@@ -206,7 +206,7 @@ Ligature_engraver::process_music ()
       ligature_start_mom_ = now_mom ();
       
       announce_grob(ligature_, reqs_drul_[START]->self_scm());
-      override_molecule_callback ();
+      override_stencil_callback ();
     }
 }
 
@@ -270,7 +270,7 @@ Ligature_engraver::acknowledge_grob (Grob_info info)
       if (Note_head::has_interface (info.grob_))
        {
          primitives_.push (info);
-         info.grob_->set_grob_property ("molecule-callback",
+         info.grob_->set_grob_property ("print-function",
                                         brew_ligature_primitive_proc);
        }
       if (Rest::has_interface (info.grob_))