]> git.donarmstrong.com Git - lilypond.git/blobdiff - lily/phrasing-slur-engraver.cc
Don't let lyrics interfere with StaffGrouper.
[lilypond.git] / lily / phrasing-slur-engraver.cc
index 76b4ac6ef3a440db32ff23df0e20a83e422e3476..4a591c1caae931da06d3c54baa2e0405471d2cce 100644 (file)
@@ -1,9 +1,20 @@
 /*
-  phrasing-slur-engraver.cc -- implement Phrasing_slur_engraver
+  This file is part of LilyPond, the GNU music typesetter.
 
-  source file of the GNU LilyPond music typesetter
+  Copyright (C) 1997--2010 Han-Wen Nienhuys <hanwen@xs4all.nl>
 
-  (c) 1997--2007 Han-Wen Nienhuys <hanwen@xs4all.nl>
+  LilyPond is free software: you can redistribute it and/or modify
+  it under the terms of the GNU General Public License as published by
+  the Free Software Foundation, either version 3 of the License, or
+  (at your option) any later version.
+
+  LilyPond is distributed in the hope that it will be useful,
+  but WITHOUT ANY WARRANTY; without even the implied warranty of
+  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
+  GNU General Public License for more details.
+
+  You should have received a copy of the GNU General Public License
+  along with LilyPond.  If not, see <http://www.gnu.org/licenses/>.
 */
 
 #include "engraver.hh"
@@ -47,8 +58,10 @@ protected:
   DECLARE_ACKNOWLEDGER (fingering);
   DECLARE_ACKNOWLEDGER (note_column);
   DECLARE_ACKNOWLEDGER (slur);
+  DECLARE_ACKNOWLEDGER (script);
   DECLARE_ACKNOWLEDGER (text_script);
   DECLARE_ACKNOWLEDGER (tie);
+  DECLARE_ACKNOWLEDGER (tuplet_number);
   DECLARE_TRANSLATOR_LISTENER (phrasing_slur);
 
   void stop_translation_timestep ();
@@ -112,12 +125,25 @@ Phrasing_slur_engraver::acknowledge_text_script (Grob_info info)
   acknowledge_extra_object (info);
 }
 
+void
+Phrasing_slur_engraver::acknowledge_script (Grob_info info)
+{
+  if (!info.grob ()->internal_has_interface (ly_symbol2scm ("dynamic-interface")))
+    acknowledge_extra_object (info);
+}
+
 void
 Phrasing_slur_engraver::acknowledge_tie (Grob_info info)
 {
   acknowledge_extra_object (info);
 }
 
+void
+Phrasing_slur_engraver::acknowledge_tuplet_number (Grob_info info)
+{
+  acknowledge_extra_object (info);
+}
+
 void
 Phrasing_slur_engraver::acknowledge_slur (Grob_info info)
 {
@@ -164,11 +190,21 @@ ADD_ACKNOWLEDGER (Phrasing_slur_engraver, accidental);
 ADD_ACKNOWLEDGER (Phrasing_slur_engraver, fingering)
 ADD_ACKNOWLEDGER (Phrasing_slur_engraver, note_column);
 ADD_ACKNOWLEDGER (Phrasing_slur_engraver, slur);
+ADD_ACKNOWLEDGER (Phrasing_slur_engraver, script);
 ADD_ACKNOWLEDGER (Phrasing_slur_engraver, text_script);
 ADD_ACKNOWLEDGER (Phrasing_slur_engraver, tie);
+ADD_ACKNOWLEDGER (Phrasing_slur_engraver, tuplet_number);
 
 ADD_TRANSLATOR (Phrasing_slur_engraver,
-               /* doc */ "Print phrasing slurs. Similar to @ref{Slur_engraver}",
-               /* create */ "PhrasingSlur",
-               /* read */ "",
-               /* write */ "");
+               /* doc */
+               "Print phrasing slurs.  Similar to @ref{Slur_engraver}.",
+
+               /* create */
+               "PhrasingSlur ",
+
+               /* read */
+               "",
+
+               /* write */
+               ""
+               );