]> git.donarmstrong.com Git - lilypond.git/blobdiff - lily/clef-engraver.cc
Merge with master
[lilypond.git] / lily / clef-engraver.cc
index b846bd540673a03bb2b004f4a6ad557d7b86bafd..d9b2e27dea3d9cd544d7ccd831c757217028a9bb 100644 (file)
@@ -3,7 +3,7 @@
 
   source file of the GNU LilyPond music typesetter
 
-  (c) 1997--2005 Han-Wen Nienhuys <hanwen@cs.uu.nl>,
+  (c) 1997--2007 Han-Wen Nienhuys <hanwen@xs4all.nl>,
 
   Mats Bengtsson <matsb@s3.kth.se>
 */
@@ -11,6 +11,7 @@
 #include <cctype>
 using namespace std;
 
+#include "item.hh"
 #include "context.hh"
 #include "bar-line.hh"
 #include "staff-symbol-referencer.hh"
@@ -144,6 +145,10 @@ Clef_engraver::inspect_clef_properties ()
       || scm_equal_p (octavation, prev_octavation_) == SCM_BOOL_F
       || to_boolean (force_clef))
     {
+      set_context_property_on_children (context (),
+                                       ly_symbol2scm ("localKeySignature"),
+                                       get_property ("keySignature"));
+      
       set_glyph ();
       if (prev_cpos_ != SCM_BOOL_F || to_boolean (get_property ("firstClef")))
        create_clef ();
@@ -189,7 +194,14 @@ Clef_engraver::stop_translation_timestep ()
 ADD_ACKNOWLEDGER (Clef_engraver, bar_line);
 ADD_TRANSLATOR (Clef_engraver,
                /* doc */ "Determine and set reference point for pitches",
-               /* create */ "Clef OctavateEight",
-               /* accept */ "",
-               /* read */ "clefPosition clefGlyph middleCPosition clefOctavation explicitClefVisibility forceClef",
+               /* create */ "Clef "
+               "OctavateEight ",
+               /* read */
+               "clefGlyph "
+               "clefOctavation "
+               "clefPosition "
+               "explicitClefVisibility "
+               "forceClef "
+               "middleCPosition "
+               ,
                /* write */ "");