]> git.donarmstrong.com Git - lilypond.git/blobdiff - lily/melisma-engraver.cc
2003 -> 2004
[lilypond.git] / lily / melisma-engraver.cc
index fd35082cdf98cc73a2331af4ad035b6b463c0080..6fa0653071faf5180e5d7ddca6b359a2d79183f8 100644 (file)
@@ -3,12 +3,12 @@
   
   source file of the GNU LilyPond music typesetter
   
-  (c) 1999--2002 Han-Wen Nienhuys <hanwen@cs.uu.nl>
+  (c) 1999--2004 Han-Wen Nienhuys <hanwen@cs.uu.nl>
   
  */
 
 #include "engraver.hh"
-#include "musical-request.hh"
+#include "event.hh"
 #include "grob.hh"
 #include "translator-group.hh"
 
@@ -23,35 +23,23 @@ public:
 };
 
 
-
 bool
-Melisma_engraver::try_music (Music *m
+Melisma_engraver::try_music (Music *) 
 {
-  if (dynamic_cast<Melisma_playing_req*> (m))
-    {
-      SCM plain (get_property ("melismaBusy"));
-      SCM slur (get_property ("slurMelismaBusy"));
-      SCM tie (get_property ("tieMelismaBusy"));
-      SCM beam (get_property ("beamMelismaBusy"));
-      
-      if ((to_boolean (plain))
-         || (to_boolean (slur))
-         || (to_boolean (tie))
-         || (to_boolean (beam))) {
-
-       daddy_trans_->set_property ("melismaEngraverBusy",SCM_BOOL_T);
-       return true;
-      }
-    }
-  daddy_trans_->set_property ("melismaEngraverBusy",SCM_BOOL_F);
-  return false;
+  /*
+    This can only be melisma-playing-event.
+   */
+  return melisma_busy (this);
 }
+
 Melisma_engraver::Melisma_engraver()
 {
 }
+
 ENTER_DESCRIPTION(Melisma_engraver,
-/* descr */       "",
+/* descr */       "This engraver collects melisma information about ties, beams, and user settings (@code{melismaBusy}, and signals it to the @code{\addlyrics} code.  ",
 /* creats*/       "",
-/* acks  */       "",
-/* reads */       "melismaBusy slurMelismaBusy tieMelismaBusy beamMelismaBusy",
+/* accepts */     "melisma-playing-event",
+/* acks  */      "",
+/* reads */       "melismaBusy melismaBusyProperties slurMelismaBusy tieMelismaBusy beamMelismaBusy",
 /* write */       "");