CVSROOT:        /cvsroot/lilypond
Module name:    lilypond
Branch:         
Changes by:     Han-Wen Nienhuys <[EMAIL PROTECTED]>    05/07/23 11:00:00

Modified files:
        lily           : pitch-squash-engraver.cc 
                         rest-collision-engraver.cc 
                         staff-symbol-engraver.cc 
                         stanza-number-align-engraver.cc 
                         stanza-number-engraver.cc 
                         trill-spanner-engraver.cc tuplet-engraver.cc 

Log message:
        

CVSWeb URLs:
http://savannah.gnu.org/cgi-bin/viewcvs/lilypond/lilypond/lily/pitch-squash-engraver.cc.diff?tr1=1.37&tr2=1.38&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/lilypond/lilypond/lily/rest-collision-engraver.cc.diff?tr1=1.44&tr2=1.45&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/lilypond/lilypond/lily/staff-symbol-engraver.cc.diff?tr1=1.54&tr2=1.55&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/lilypond/lilypond/lily/stanza-number-align-engraver.cc.diff?tr1=1.12&tr2=1.13&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/lilypond/lilypond/lily/stanza-number-engraver.cc.diff?tr1=1.39&tr2=1.40&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/lilypond/lilypond/lily/trill-spanner-engraver.cc.diff?tr1=1.9&tr2=1.10&r1=text&r2=text
http://savannah.gnu.org/cgi-bin/viewcvs/lilypond/lilypond/lily/tuplet-engraver.cc.diff?tr1=1.75&tr2=1.76&r1=text&r2=text

Patches:
Index: lilypond/lily/pitch-squash-engraver.cc
diff -u lilypond/lily/pitch-squash-engraver.cc:1.37 
lilypond/lily/pitch-squash-engraver.cc:1.38
--- lilypond/lily/pitch-squash-engraver.cc:1.37 Mon Jul 18 23:37:25 2005
+++ lilypond/lily/pitch-squash-engraver.cc      Sat Jul 23 11:00:00 2005
@@ -14,15 +14,14 @@
 {
 public:
   TRANSLATOR_DECLARATIONS (Pitch_squash_engraver);
-  virtual void acknowledge_grob (Grob_info);
+  DECLARE_ACKNOWLEDGER(note_head);
 };
 
 void
-Pitch_squash_engraver::acknowledge_grob (Grob_info i)
+Pitch_squash_engraver::acknowledge_note_head (Grob_info i)
 {
   SCM newpos = get_property ("squashedPosition");
-  if (scm_is_number (newpos)
-      && Note_head::has_interface (i.grob ()))
+  if (scm_is_number (newpos))
     {
       i.grob ()->set_property ("staff-position", newpos);
     }
@@ -33,7 +32,7 @@
 }
 
 #include "translator.icc"
-
+ADD_ACKNOWLEDGER(Pitch_squash_engraver,note_head);
 ADD_TRANSLATOR (Pitch_squash_engraver,
                /* descr */
                "Set the vertical position of noteheads to "
@@ -44,6 +43,6 @@
 
                /* creats*/ "",
                /* accepts */ "",
-               /* acks  */ "note-head-interface",
+               /* acks  */ "",
                /* reads */ "squashedPosition",
                /* write */ "");
Index: lilypond/lily/rest-collision-engraver.cc
diff -u lilypond/lily/rest-collision-engraver.cc:1.44 
lilypond/lily/rest-collision-engraver.cc:1.45
--- lilypond/lily/rest-collision-engraver.cc:1.44       Mon Jul 18 23:37:25 2005
+++ lilypond/lily/rest-collision-engraver.cc    Sat Jul 23 11:00:00 2005
@@ -17,7 +17,7 @@
   int rest_count_;
   Link_array<Grob> note_columns_;
 protected:
-  virtual void acknowledge_grob (Grob_info);
+  DECLARE_ACKNOWLEDGER(note_column);
   PRECOMPUTED_VIRTUAL void process_acknowledged ();
   PRECOMPUTED_VIRTUAL void stop_translation_timestep ();
 public:
@@ -47,14 +47,11 @@
 }
 
 void
-Rest_collision_engraver::acknowledge_grob (Grob_info i)
+Rest_collision_engraver::acknowledge_note_column (Grob_info i)
 {
-  if (Note_column::has_interface (i.grob ()))
-    {
-      note_columns_.push (i.grob ());
-      if (Note_column::has_rests (i.grob ()))
-       rest_count_++;
-    }
+  note_columns_.push (i.grob ());
+  if (Note_column::has_rests (i.grob ()))
+    rest_count_++;
 }
 
 void
@@ -67,10 +64,11 @@
 
 #include "translator.icc"
 
+ADD_ACKNOWLEDGER(Rest_collision_engraver, note_column);
 ADD_TRANSLATOR (Rest_collision_engraver,
                /* descr */ "Handles collisions of rests.",
                /* creats*/ "RestCollision",
                /* accepts */ "",
-               /* acks  */ "note-column-interface",
+               /* acks  */ "",
                /* reads */ "",
                /* write */ "");
Index: lilypond/lily/staff-symbol-engraver.cc
diff -u lilypond/lily/staff-symbol-engraver.cc:1.54 
lilypond/lily/staff-symbol-engraver.cc:1.55
--- lilypond/lily/staff-symbol-engraver.cc:1.54 Sat Jul 23 01:24:27 2005
+++ lilypond/lily/staff-symbol-engraver.cc      Sat Jul 23 11:00:00 2005
@@ -93,10 +93,12 @@
   stop_spanner ();
 }
 
+/*
+  Todo: staff-symbol-referencer iface.
+ */
 void
 Staff_symbol_engraver::acknowledge_grob (Grob_info s)
 {
-
   /*
     Perhaps should try to take SeparationItem as bound of the staff
     symbol?
Index: lilypond/lily/stanza-number-align-engraver.cc
diff -u lilypond/lily/stanza-number-align-engraver.cc:1.12 
lilypond/lily/stanza-number-align-engraver.cc:1.13
--- lilypond/lily/stanza-number-align-engraver.cc:1.12  Mon Jul 18 23:37:25 2005
+++ lilypond/lily/stanza-number-align-engraver.cc       Sat Jul 23 11:00:00 2005
@@ -1,6 +1,5 @@
-
 /*
-  stanza-number-align-engraver.cc -- implement
+  stanza-number-align-engraver.cc -- implement Stanza_number_align_engraver
 
   source file of the GNU LilyPond music typesetter
 
@@ -14,6 +13,8 @@
 #include "pointer-group-interface.hh"
 #include "side-position-interface.hh"
 
+#include "translator.icc"
+
 class Stanza_number_align_engraver : public Engraver
 {
 public:
@@ -22,7 +23,9 @@
 protected:
   Link_array<Grob> lyrics_;
   Link_array<Grob> stanza_numbers_;
-  virtual void acknowledge_grob (Grob_info);
+
+  DECLARE_ACKNOWLEDGER(lyric_syllable);
+  DECLARE_ACKNOWLEDGER(stanza_number);
   PRECOMPUTED_VIRTUAL void stop_translation_timestep ();
 };
 
@@ -31,14 +34,17 @@
 }
 
 void
-Stanza_number_align_engraver::acknowledge_grob (Grob_info gi)
+Stanza_number_align_engraver::acknowledge_lyric_syllable (Grob_info gi)
 {
   Grob *h = gi.grob ();
+  lyrics_.push (h);
+}
 
-  if (h->internal_has_interface (ly_symbol2scm ("lyric-syllable-interface")))
-    lyrics_.push (h);
-  else if (h->internal_has_interface (ly_symbol2scm 
("stanza-number-interface")))
-    stanza_numbers_.push (h);
+void
+Stanza_number_align_engraver::acknowledge_stanza_number (Grob_info gi)
+{
+  Grob *h = gi.grob ();
+  stanza_numbers_.push (h);
 }
 
 void
@@ -52,13 +58,13 @@
   lyrics_.clear ();
 }
 
-#include "translator.icc"
-
+ADD_ACKNOWLEDGER(Stanza_number_align_engraver,lyric_syllable);
+ADD_ACKNOWLEDGER(Stanza_number_align_engraver,stanza_number);
 ADD_TRANSLATOR (Stanza_number_align_engraver,
                "This engraver ensures that stanza numbers are neatly aligned. 
",
                "",
                "",
-               "stanza-number-interface lyric-syllable-interface ",
+               " ",
                "",
                "");
 
Index: lilypond/lily/stanza-number-engraver.cc
diff -u lilypond/lily/stanza-number-engraver.cc:1.39 
lilypond/lily/stanza-number-engraver.cc:1.40
--- lilypond/lily/stanza-number-engraver.cc:1.39        Mon Jul 18 23:37:25 2005
+++ lilypond/lily/stanza-number-engraver.cc     Sat Jul 23 11:00:00 2005
@@ -23,7 +23,7 @@
   TRANSLATOR_DECLARATIONS (Stanza_number_engraver);
   PRECOMPUTED_VIRTUAL void process_music ();
   PRECOMPUTED_VIRTUAL void stop_translation_timestep ();
-  virtual void acknowledge_grob (Grob_info);
+  DECLARE_ACKNOWLEDGER(lyric_syllable);
 };
 
 /*
@@ -52,10 +52,9 @@
 }
 
 void
-Stanza_number_engraver::acknowledge_grob (Grob_info inf)
+Stanza_number_engraver::acknowledge_lyric_syllable (Grob_info inf)
 {
-  if (text_
-      && inf.grob ()->internal_has_interface (ly_symbol2scm 
("lyric-syllable-interface")))
+  if (text_)
     {
       Side_position_interface::add_support (text_, inf.grob ());
     }
@@ -69,10 +68,11 @@
 
 #include "translator.icc"
 
+ADD_ACKNOWLEDGER(Stanza_number_engraver,lyric_syllable);
 ADD_TRANSLATOR (Stanza_number_engraver,
                /* descr */ "",
                /* creats*/ "StanzaNumber",
                /* accepts */ "",
-               /* acks  */ "lyric-syllable-interface",
+               /* acks  */ "",
                /* reads */ "stanza",
                /* write */ "");
Index: lilypond/lily/trill-spanner-engraver.cc
diff -u lilypond/lily/trill-spanner-engraver.cc:1.9 
lilypond/lily/trill-spanner-engraver.cc:1.10
--- lilypond/lily/trill-spanner-engraver.cc:1.9 Mon Jul 18 23:37:25 2005
+++ lilypond/lily/trill-spanner-engraver.cc     Sat Jul 23 11:00:00 2005
@@ -25,7 +25,7 @@
   TRANSLATOR_DECLARATIONS (Trill_spanner_engraver);
 protected:
   virtual void finalize ();
-  virtual void acknowledge_grob (Grob_info);
+  DECLARE_ACKNOWLEDGER(note_column);
   virtual bool try_music (Music *);
   PRECOMPUTED_VIRTUAL void stop_translation_timestep ();
   PRECOMPUTED_VIRTUAL void process_music ();
@@ -94,12 +94,12 @@
 }
 
 void
-Trill_spanner_engraver::acknowledge_grob (Grob_info info)
+Trill_spanner_engraver::acknowledge_note_column (Grob_info info)
 {
   Spanner *spans[2] ={span_, finished_};
   for (int i = 0; i < 2; i++)
     {
-      if (spans[i] && Note_column::has_interface (info.grob ()))
+      if (spans[i])
        {
          Side_position_interface::add_support (spans[i], info.grob ());
          add_bound_item (spans[i], dynamic_cast<Item *> (info.grob ()));
@@ -146,11 +146,11 @@
       span_ = 0;
     }
 }
-
+ADD_ACKNOWLEDGER(Trill_spanner_engraver,note_column);
 ADD_TRANSLATOR (Trill_spanner_engraver,
                /* descr */ "Create trill spanner from a Music.",
                /* creats*/ "TrillSpanner",
                /* accepts */ "trill-span-event",
-               /* acks  */ "note-column-interface",
+               /* acks  */ "",
                /* reads */ "",
                /* write */ "");
Index: lilypond/lily/tuplet-engraver.cc
diff -u lilypond/lily/tuplet-engraver.cc:1.75 
lilypond/lily/tuplet-engraver.cc:1.76
--- lilypond/lily/tuplet-engraver.cc:1.75       Mon Jul 18 23:37:25 2005
+++ lilypond/lily/tuplet-engraver.cc    Sat Jul 23 11:00:00 2005
@@ -35,7 +35,7 @@
 protected:
   Array<Tuplet_description> tuplets_;
 
-  virtual void acknowledge_grob (Grob_info);
+  DECLARE_ACKNOWLEDGER(note_column);
   virtual bool try_music (Music *r);
   PRECOMPUTED_VIRTUAL void start_translation_timestep ();
   PRECOMPUTED_VIRTUAL void process_music ();
@@ -87,15 +87,12 @@
 }
 
 void
-Tuplet_engraver::acknowledge_grob (Grob_info i)
+Tuplet_engraver::acknowledge_note_column (Grob_info i)
 {
-  if (Note_column::has_interface (i.grob ()))
-    {
-      for (int j = 0; j < tuplets_.size (); j++)
-       if (tuplets_[j].spanner_)
-         Tuplet_bracket::add_column (tuplets_[j].spanner_,
-                                     dynamic_cast<Item *> (i.grob ()));
-    }
+  for (int j = 0; j < tuplets_.size (); j++)
+    if (tuplets_[j].spanner_)
+      Tuplet_bracket::add_column (tuplets_[j].spanner_,
+                                 dynamic_cast<Item *> (i.grob ()));
 }
 
 void
@@ -134,11 +131,11 @@
 Tuplet_engraver::Tuplet_engraver ()
 {
 }
-
+ADD_ACKNOWLEDGER(Tuplet_engraver,note_column);
 ADD_TRANSLATOR (Tuplet_engraver,
                /* descr */ "Catch Time_scaled_music and generate appropriate 
bracket  ",
                /* creats*/ "TupletBracket",
                /* accepts */ "time-scaled-music",
-               /* acks  */ "note-column-interface",
+               /* acks  */ "",
                /* reads */ "tupletNumberFormatFunction tupletSpannerDuration",
                /* write */ "");


_______________________________________________
Lilypond-cvs mailing list
Lilypond-cvs@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-cvs

Reply via email to