]> git.donarmstrong.com Git - lilypond.git/blobdiff - lily/phrasing-slur-engraver.cc
Release: bump Welcome versions.
[lilypond.git] / lily / phrasing-slur-engraver.cc
index 70b6dc764b922de91e24e5a8c73d45ed227849ab..aeee14a1ee5d3ede63d92ee69fd5cb3d91df0fdd 100644 (file)
   along with LilyPond.  If not, see <http://www.gnu.org/licenses/>.
 */
 
-#include "slur-proto-engraver.hh"
+#include "slur-engraver.hh"
 
 #include "translator.icc"
 
-class Phrasing_slur_engraver : public Slur_proto_engraver
+class Phrasing_slur_engraver : public Slur_engraver
 {
   virtual SCM event_symbol () const;
   virtual bool double_property () const;
   virtual SCM grob_symbol () const;
   virtual const char* object_name () const;
-
-protected:
-  void listen_phrasing_slur (Stream_event *);
-  void acknowledge_slur (Grob_info);
+  virtual void set_melisma (bool);
 
 public:
   TRANSLATOR_DECLARATIONS (Phrasing_slur_engraver);
-  TRANSLATOR_INHERIT (Slur_proto_engraver);
+  TRANSLATOR_INHERIT (Slur_engraver);
 };
 
 SCM
@@ -61,37 +58,30 @@ Phrasing_slur_engraver::object_name () const
   return "phrasing slur";
 }
 
-Phrasing_slur_engraver::Phrasing_slur_engraver ()
-{
-}
-
-void
-Phrasing_slur_engraver::listen_phrasing_slur (Stream_event *ev)
+Phrasing_slur_engraver::Phrasing_slur_engraver (Context *c)
+  : Slur_engraver (c)
 {
-  Slur_proto_engraver::listen_slur (ev);
 }
 
 void
-Phrasing_slur_engraver::acknowledge_slur (Grob_info info)
+Phrasing_slur_engraver::set_melisma (bool)
 {
-  acknowledge_extra_object (info);
 }
 
-
 void
 Phrasing_slur_engraver::boot ()
 {
-  ADD_LISTENER (Phrasing_slur_engraver, phrasing_slur);
+  ADD_LISTENER_FOR (Phrasing_slur_engraver, slur, phrasing_slur);
   ADD_LISTENER (Phrasing_slur_engraver, note);
-  ADD_ACKNOWLEDGER (Phrasing_slur_engraver, inline_accidental);
-  ADD_ACKNOWLEDGER (Phrasing_slur_engraver, fingering);
+  ADD_ACKNOWLEDGER_FOR (Phrasing_slur_engraver, extra_object, inline_accidental);
+  ADD_ACKNOWLEDGER_FOR (Phrasing_slur_engraver, extra_object, fingering);
   ADD_ACKNOWLEDGER (Phrasing_slur_engraver, note_column);
-  ADD_ACKNOWLEDGER (Phrasing_slur_engraver, slur);
+  ADD_ACKNOWLEDGER_FOR (Phrasing_slur_engraver, extra_object, slur);
   ADD_ACKNOWLEDGER (Phrasing_slur_engraver, script);
-  ADD_ACKNOWLEDGER (Phrasing_slur_engraver, dots);
-  ADD_ACKNOWLEDGER (Phrasing_slur_engraver, text_script);
-  ADD_END_ACKNOWLEDGER (Phrasing_slur_engraver, tie);
-  ADD_ACKNOWLEDGER (Phrasing_slur_engraver, tuplet_number);
+  ADD_ACKNOWLEDGER_FOR (Phrasing_slur_engraver, extra_object, dots);
+  ADD_ACKNOWLEDGER_FOR (Phrasing_slur_engraver, extra_object, text_script);
+  ADD_END_ACKNOWLEDGER_FOR (Phrasing_slur_engraver, extra_object, tie);
+  ADD_ACKNOWLEDGER_FOR (Phrasing_slur_engraver, extra_object, tuplet_number);
 }
 
 ADD_TRANSLATOR (Phrasing_slur_engraver,