]> git.donarmstrong.com Git - lilypond.git/commitdiff
* lily/score-engraver.cc (one_time_step): warn for grobs created
authorHan-Wen Nienhuys <hanwen@xs4all.nl>
Sun, 7 Jul 2002 13:41:23 +0000 (13:41 +0000)
committerHan-Wen Nienhuys <hanwen@xs4all.nl>
Sun, 7 Jul 2002 13:41:23 +0000 (13:41 +0000)
during stop_translation_timestep().

* lily/a2-engraver.cc: restrict acknowledged grob types.

* lily/chord-name-engraver.cc: remove acknowledge_grob().

15 files changed:
ChangeLog
Documentation/regression-test.tely
VERSION
lily/a2-engraver.cc
lily/break-align-engraver.cc
lily/chord-name-engraver.cc
lily/engraver-group-engraver.cc
lily/include/engraver-group-engraver.hh
lily/include/translator.hh
lily/score-engraver.cc
lily/score-performer.cc
lily/separating-line-group-engraver.cc
lily/translator-group.cc
lily/translator.cc
scm/translator-property-description.scm

index 0411b9a120e625b58fd59902ba630dbda093647c..7b19ddf85592af4c6f938adc22a7414bd211e1d8 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,12 @@
 2002-07-07  Han-Wen  <hanwen@cs.uu.nl>
 
+       * lily/score-engraver.cc (one_time_step): warn for grobs created
+       during stop_translation_timestep().
+
+       * lily/a2-engraver.cc: restrict acknowledged grob types.
+
+       * lily/chord-name-engraver.cc: remove acknowledge_grob().
+
        * Documentation/user/tutorial.itely: doc carnage.
 
 2002-07-06  Rune Zedeler  <rune@zedeler.dk>
index 4b5473276892f15db1a48622d257635fdf2e3ea9..f469c28c1703cf14b197431cffe5016d6b66f82e 100644 (file)
@@ -230,9 +230,6 @@ Grace note do weird things with timing. Fragile.
 
 @section Miscellaneous
 
-@lilypondfile[printfilename]{generic-property-override.ly}
-
-
 @lilypondfile[printfilename]{rhythmic-staff.ly}
 
 
diff --git a/VERSION b/VERSION
index b9f0174e81772f0bfff080bb9e081994b7ffe26f..1643917c3ac541fd0a1a648eaddabafe3f67b158 100644 (file)
--- a/VERSION
+++ b/VERSION
@@ -2,7 +2,7 @@ PACKAGE_NAME=LilyPond
 MAJOR_VERSION=1
 MINOR_VERSION=5
 PATCH_LEVEL=65
-MY_PATCH_LEVEL=
+MY_PATCH_LEVEL=u1
 
 # Use the above to send patches: MY_PATCH_LEVEL is always empty for a
 # released version.
index 027f4342f1894207d0fdd3cb7247bc556b7dc163..b005a9950defe62dd38ea99b4eb8b52444e19a9a 100644 (file)
@@ -206,6 +206,7 @@ up for the musicexpr called @code{one}, down for the musicexpr called
 
 ",
 /* creats*/       "TextScript",
-/* acks  */       "grob-interface tie-interface note-head-interface ",
-/* reads */       "combineParts noDirection soloADue soloText soloIIText aDueText split-interval unison solo unisilence unirhythm",
+/* acks  */       "multi-measure-rest-interface
+slur-interface stem-interface tie-interface note-head-interface"
+,/* reads */       "combineParts noDirection soloADue soloText soloIIText aDueText split-interval unison solo unisilence unirhythm",
 /* write */       "");
index 2b4c510dad5236147ace9eb97d1f90426cb23ea0..ee8ea343611aa68744c8e775b5404ee9b85c45ad 100644 (file)
@@ -140,6 +140,6 @@ Break_align_engraver::add_to_group(SCM align_name, Item*item_l)
 ENTER_DESCRIPTION(Break_align_engraver,
 /* descr */       "Align grobs with corresponding break-align-symbols into groups, and order the groups according to breakAlignOrder",
 /* creats*/       "BreakAlignment BreakAlignGroup LeftEdge",
-/* acks  */       "grob-interface", // break-aligned-interface ?
-/* reads */       "breakAlignOrder",
+/* acks  */       "break-aligned-interface"
+,/* reads */       "breakAlignOrder",
 /* write */       "");
index 5ecf45194e5be0e05c91772c3b6e14abd038c52a..005f7ff30f33450140e8fcab6129b9913279de49 100644 (file)
 
 class Chord_name_engraver : public Engraver 
 {
-
   TRANSLATOR_DECLARATIONS( Chord_name_engraver);
-
 protected:
   virtual void stop_translation_timestep ();
-  virtual void acknowledge_grob (Grob_info i);
-  virtual void process_acknowledged_grobs ();
+  virtual void process_music ();
   virtual bool try_music (Music *);
 
 private:
@@ -78,16 +75,9 @@ Chord_name_engraver::try_music (Music* m)
 }
 
 void
-Chord_name_engraver::acknowledge_grob (Grob_info i)
+Chord_name_engraver::process_music ()
 {
-  if (Note_req* n = dynamic_cast<Note_req*> (i.music_cause ()))
-    add_note (n);
-}
-
-void
-Chord_name_engraver::process_acknowledged_grobs ()
-{
-  if (!chord_name_p_ && ly_car (chord_) != SCM_EOL)
+  if (ly_car (chord_) != SCM_EOL)
     {
       chord_name_p_ = new Item (get_property ("ChordName"));
       chord_name_p_->set_grob_property ("chord", chord_);
@@ -117,6 +107,6 @@ ENTER_DESCRIPTION(Chord_name_engraver,
 /* descr */       "Catch Note_req's, Tonic_reqs, Inversion_reqs, Bass_req
 and generate the appropriate chordname.",
 /* creats*/       "ChordName",
-/* acks  */       "grob-interface",
+/* acks  */       "",
 /* reads */       "chordChanges",
 /* write */       "");
index 49b490ea63a7c43a3581326f9bb925800a8f8999..7df4fd80ccbfe636ecf168a6add254fb87601281 100644 (file)
@@ -20,6 +20,11 @@ Engraver_group_engraver::announce_grob (Grob_info info)
   Engraver::announce_grob (info);
 }
 
+void
+Engraver_group_engraver::start_translation_timestep ()
+{
+  Translator_group::start_translation_timestep();
+}
 
 void
 Engraver_group_engraver::process_acknowledged_grobs_in_simple_children ()
index ab0f38543c7c77056ae44b522f9f87167e9e7c43..1f0b738f481abd8841eba825bf257c6cbb2acdcc 100644 (file)
@@ -33,6 +33,7 @@ protected:
 public:
   TRANSLATOR_DECLARATIONS(Engraver_group_engraver);
 
+  virtual void start_translation_timestep ();
   virtual void initialize ();
   virtual void do_announces ();
   virtual void announce_grob (Grob_info);
index ff707e9218820557f8e288f09cccfbfa7e1ccd63..230fcba3d6d9a0ec5507b6c0b984f058d3e40165 100644 (file)
@@ -46,8 +46,6 @@ public:
 
   
   Translator_group * daddy_trans_l_ ;
-  void announces ();
-
   void removal_processing ();
   /**
     ask daddy for a feature
index e589bdd90c53c435af80d490b56f535e9a2680c5..a592fad6f727ae8a67bd7fc8a77fcd2b6e39b9b4 100644 (file)
@@ -46,14 +46,6 @@ Score_engraver::make_columns ()
   
       command_column_l_->set_grob_property ("breakable", SCM_BOOL_T);
 
-      Grob_info i1 (command_column_l_);
-      i1.origin_trans_l_ = this;
-
-      Grob_info i2 (musical_column_l_);
-      i2.origin_trans_l_ = this;
-
-      announce_grob (i1);
-      announce_grob (i2);
     }
 }
 
@@ -67,7 +59,17 @@ Score_engraver::prepare (Moment w)
   command_column_l_->set_grob_property ("when", now_mom_.smobbed_copy ());
   musical_column_l_->set_grob_property ("when", now_mom_.smobbed_copy ());
   
-  start_translation_timestep ();
+  Grob_info i1 (command_column_l_);
+  i1.origin_trans_l_ = this;
+  
+  Grob_info i2 (musical_column_l_);
+  i2.origin_trans_l_ = this;
+
+  
+  announce_grob (i1);
+  announce_grob (i2);
+
+  Translator_group::start_translation_timestep();
 }
 
 void
@@ -126,11 +128,22 @@ Score_engraver::one_time_step ()
   if (!to_boolean (get_property ("skipTypesetting")))
     {
       process_music ();
-      announces ();
+      do_announces ();
     }
   
   stop_translation_timestep ();
   check_removal ();
+
+
+  for (int i = announce_info_arr_.size(); i--;)
+    {
+      Grob *g = announce_info_arr_[i].grob_l_;
+      String msg= "Grob "
+       + g->name()
+       + " was created too late!";
+      g->programming_error (msg);
+    }
+  announce_info_arr_.clear ();
 }
 
 void
index aee7deaf24bfba1a6cfb6adabf4869baf103c7ff..a8d2dd7218673563501ffee13308564c2987be0c 100644 (file)
@@ -76,7 +76,7 @@ Score_performer::one_time_step ()
 {
   // fixme: put this back.
   // process_music ();
-  announces ();
+  do_announces ();
   stop_translation_timestep ();
   check_removal ();
 }
index c1f84e774fdda9df67738ecce86e0d8a9b1b0fca..29c393fb67b8366a09e258cb06955eabcd5de50d 100644 (file)
@@ -206,6 +206,6 @@ Separating_line_group_engraver::stop_translation_timestep ()
 ENTER_DESCRIPTION(Separating_line_group_engraver,
 /* descr */       "Generates objects for computing spacing parameters.",
 /* creats*/       "SeparationItem SeparatingGroupSpanner",
-/* acks  */       "grob-interface",
+/* acks  */       "item-interface",
 /* reads */       "",
 /* write */       "");
index 0e5e9cb5335c146d2e5146619ba2e1ed4a4a0f3b..bac3a47db03264fcdec033423634f330d1038464 100644 (file)
@@ -393,7 +393,7 @@ Translator_group::start_translation_timestep ()
 void
 Translator_group::do_announces ()
 {
-  each (&Translator::announces);
+  each (&Translator::do_announces);
 }
 
 void
index 66dde042a5ded3cec025ecdf18b33770be79a2bf..1e89cb3d27ff807ed3cf35e83bd48353cf5fecef 100644 (file)
@@ -78,9 +78,8 @@ Translator::removal_processing ()
 }
 
 void
-Translator::announces ()
+Translator::do_announces ()
 {
-  do_announces ();
 }
 
 Music_output_def *
@@ -105,11 +104,6 @@ Translator::start_translation_timestep ()
 {
 }
 
-void
-Translator::do_announces ()
-{
-}
-
 void
 Translator::initialize ()
 {
index c979b32af126a35319cd1dda630ebb0a86243756..aaaf427981938f070ce8bc486f1b3d60b6ff5448 100644 (file)
@@ -248,7 +248,8 @@ signature before a key signature change.")
 (translator-property-description 'localKeySignature list? "the key
 signature at this point in the measure.  The format is the same as for keySignature. Is reset at every bar line."
 ) 
-
+(translator-property-description 'localKeySignatureChanges list? "??
+ [DOCME]")
 (translator-property-description 'measureLength moment? "Length of one
 measure in the current time signature last?")
 (translator-property-description 'measurePosition moment? " How much