]> git.donarmstrong.com Git - lilypond.git/blobdiff - lily/grace-engraver.cc
* lily/context.cc (where_defined): also assign value in
[lilypond.git] / lily / grace-engraver.cc
index 59e2bacbbb091a7daa28a0a6e668073f02f1bbb8..57bf0c476d8acf128f86e1644965c502aa1e5e57 100644 (file)
@@ -14,7 +14,7 @@ class Grace_engraver : public Engraver
 {
   void consider_change_grace_settings ();
 protected:
-  virtual void start_translation_timestep ();
+  PRECOMPUTED_VIRTUAL void start_translation_timestep ();
   virtual void derived_mark () const;
   virtual void initialize (); 
 
@@ -69,8 +69,7 @@ Grace_engraver::consider_change_grace_settings ()
          SCM val = scm_cadr (scm_cddr (entry));
 
          Context *c = context ();
-         while (c
-                && c->context_name_symbol () != context_name)
+         while (c && !c->is_alias (context_name))
            {
              c = c->get_parent_context ();
            }
@@ -106,10 +105,11 @@ Grace_engraver::start_translation_timestep ()
   consider_change_grace_settings ();
 }
 
+#include "translator.icc"
+
 ADD_TRANSLATOR (Grace_engraver,
                /* descr */ "Set font size and other properties for grace notes.",
                /* creats*/ "",
                /* accepts */ "",
-               /* acks  */ "",
                /* reads */ "graceSettings",
                /* write */ "");