]> git.donarmstrong.com Git - lilypond.git/commitdiff
* lily/tie-engraver.cc (start_translation_timestep): move melisma
authorHan-Wen Nienhuys <hanwen@xs4all.nl>
Wed, 17 Sep 2003 22:55:27 +0000 (22:55 +0000)
committerHan-Wen Nienhuys <hanwen@xs4all.nl>
Wed, 17 Sep 2003 22:55:27 +0000 (22:55 +0000)
stuff in accordance with new timing of tie-events.

* lily/my-lily-lexer.cc: remove \outputproperty

* lily/melisma-engraver.cc (try_music): use melismaBusyProperties.

ChangeLog
lily/lyric-combine-music-iterator.cc
lily/melisma-engraver.cc
lily/my-lily-lexer.cc
lily/tie-engraver.cc
ly/property-init.ly

index 8925ecbfef72577bb38f53e840a311ebf5a0cd86..d4c52ba27b692f5c45a3ed8fd903e955831c427c 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,5 +1,10 @@
 2003-09-18  Han-Wen Nienhuys  <hanwen@cs.uu.nl>
 
+       * lily/tie-engraver.cc (start_translation_timestep): move melisma
+       stuff in accordance with new timing of tie-events.
+
+       * lily/my-lily-lexer.cc: remove \outputproperty
+
        * lily/melisma-engraver.cc (try_music): use melismaBusyProperties.
 
        * scm/define-translator-properties.scm (melismaBusyProperties):
index 37f3d39467ef1916890fe3e96393b57906d69e2a..2e9a870ba1d96dbffb451520f3a39c60a3556c54 100644 (file)
@@ -127,27 +127,12 @@ Lyric_combine_music_iterator::get_busy_status () const
 bool
 Lyric_combine_music_iterator::melisma_busy ()
 {
-#if 0
-  
-  Translator_group * trg = music_iter_->report_to();
-  bool melisma_busy= to_boolean (trg->get_property ("melismaBusy"));
-
-  melisma_busy = melisma_busy ||  to_boolean (trg->get_property ("slurMelismaBusy"));
-  melisma_busy = melisma_busy ||  to_boolean (trg->get_property ("tieMelismaBusy"));
-  melisma_busy = melisma_busy ||  to_boolean (trg->get_property ("beamMelismaBusy"));
-  return melisma_busy;
-
-#else
-
   /*
-    The above code is nicer since it doesn't rely on a special
-    engraver to signal the melisma status. Unfortunately,
-    music_iter_->report_to() might not be the context that sets the
-    melisma properties, but rather a parent context.
+    We can not read the property, since music_iter_->report_to() might
+    not be the context that sets the melisma properties, but rather a
+    parent context.
    */
   return music_iter_->try_music (melisma_playing_req);
-#endif
-  
 }
 
 void
index 554d3c78dacf65eeb662eb77057dfce2dff68131..72dfb94ac71ffa329137e212acc2c9563aa83122 100644 (file)
@@ -31,7 +31,8 @@ Melisma_engraver::try_music (Music *m)
 
   for (; gh_pair_p (melisma_properties);
        melisma_properties = gh_cdr (melisma_properties))
-      busy = busy || to_boolean (get_property (gh_car (melisma_properties)));
+
+    busy = busy || to_boolean (internal_get_property (gh_car (melisma_properties)));
 
   /*
     for the phrasing engraver we also need this.
index 7e1c895bf10fc4d5aef6ad195bafbc1046c4fa66..bd57eb0899ddb7e365d0d8f27d9ef4fabf7d1cd1 100644 (file)
@@ -61,7 +61,6 @@ static Keyword_ent the_key_tab[]={
   {"notes", NOTES},
   {"octave", OCTAVE},
   {"once", ONCE},
-  {"outputproperty", OUTPUTPROPERTY},
   {"override", OVERRIDE},
   {"paper", PAPER},
   {"partcombine", PARTCOMBINE},
index 7806f311f7df25beb3b2719ab538862c04742c1c..7cc71e4d5150a427017fd5bf84e7ac7a9095801d 100644 (file)
@@ -49,6 +49,7 @@ class Tie_engraver : public Engraver
   
 protected:
   virtual void stop_translation_timestep ();
+  virtual void start_translation_timestep ();
   virtual void acknowledge_grob (Grob_info);
   virtual bool try_music (Music*);
   virtual void process_acknowledged_grobs ();
@@ -75,15 +76,6 @@ Tie_engraver::try_music (Music *mus)
       event_ = mus;
     }
   
-  if (event_)
-    {
-      SCM m = get_property ("automaticMelismata");
-      bool am = gh_boolean_p (m) &&gh_scm2bool (m);
-      if (am)
-       {
-  daddy_trans_->set_property ("tieMelismaBusy", m ? SCM_BOOL_T : SCM_BOOL_F);
-       }
-    }
   return true;
 }
 
@@ -128,6 +120,14 @@ Tie_engraver::process_acknowledged_grobs ()
     }
 }
 
+void
+Tie_engraver::start_translation_timestep ()
+{
+  if (to_boolean (get_property ("automaticMelismata")))
+      daddy_trans_->set_property ("tieMelismaBusy",
+                                 gh_bool2scm (heads_to_tie_.size ()));
+      
+}
 
 void
 Tie_engraver::stop_translation_timestep ()
index 0f4d2c1901854e3dc2406dfafc8e0bcb684fdf6c..0a25bbc1220371e0f175334adaa7fa376683c2f5 100644 (file)
@@ -76,8 +76,9 @@ newpage = \notes
 {
   \break
   % urg, only works for TeX output
-  \context Score \outputproperty #(make-type-checker 'paper-column-interface)
-    #'between-system-string = #"\\newpage"
+  \context Score \applyoutput
+  #(outputproperty-compatibility (make-type-checker 'paper-column-interface)
+    'between-system-string "\\newpage")
 }
 
 % dynamic ly:dir?  text script, articulation script ly:dir?    
@@ -100,10 +101,10 @@ normalsize = {
 
 
 % End the incipit and print a ``normal line start''.
-endincipit = \notes{
+endincipit = \notes \context Staff {
     \partial 16 s16  % Hack to handle e.g. \bar ".|" \endincipit
-    \context Staff \outputproperty #(make-type-checker 'clef-interface) #'full-size-change = ##t
-    \context Staff \outputproperty #(make-type-checker 'clef-interface) #'non-default = ##t
+    \once \property Staff.Clef \set #'full-size-change = ##t
+    \once \property Staff.Clef \set #'non-default = ##t
     \bar ""
 }