]> git.donarmstrong.com Git - lilypond.git/blobdiff - lily/percent-repeat-engraver.cc
(class Phrasing_slur_engraver):
[lilypond.git] / lily / percent-repeat-engraver.cc
index eb1b317b2257fe4bf71e77345723bba8cb247d73..d68a44e274eee71e4cb13da8f1ac6b7547b920db 100644 (file)
@@ -57,9 +57,9 @@ protected:
 protected:
   virtual void finalize ();
   virtual bool try_music (Music *);
-  virtual void stop_translation_timestep ();
-  virtual void start_translation_timestep ();
-  virtual void process_music ();
+  void stop_translation_timestep ();
+  void start_translation_timestep ();
+  void process_music ();
 };
 
 Percent_repeat_engraver::Percent_repeat_engraver ()
@@ -139,11 +139,14 @@ Percent_repeat_engraver::process_music ()
       else if (repeat_sign_type_ == DOUBLE_MEASURE)
        {
          double_percent_ = make_item ("DoublePercentRepeat", repeat_->self_scm ());
+         
          /*
            forbid breaks on a % line. Should forbid all breaks, really.
-         */
 
-         get_score_engraver ()->forbid_breaks ();      // guh. Use properties!      
+           Ugh. Why can't this be regular communication between
+           contexts?
+         */
+         get_score_engraver ()->forbid_breaks ();
        }
       next_moment_ = next_moment_ + body_length_;
     }
@@ -195,10 +198,11 @@ Percent_repeat_engraver::stop_translation_timestep ()
   typeset_perc ();
 }
 
+#include "translator.icc"
+
 ADD_TRANSLATOR (Percent_repeat_engraver,
-               /* descr */ "Make whole bar and double bar repeats.",
-               /* creats*/ "PercentRepeat DoublePercentRepeat",
-               /* accepts */ "repeated-music",
-               /* acks  */ "",
-               /* reads */ "measureLength currentCommandColumn",
+               /* doc */ "Make whole bar and double bar repeats.",
+               /* create */ "PercentRepeat DoublePercentRepeat",
+               /* accept */ "repeated-music",
+               /* read */ "measureLength currentCommandColumn",
                /* write */ "");