]> git.donarmstrong.com Git - lilypond.git/commitdiff
New time signature on starting staff in next system doesn't take space.
authorHan-Wen Nienhuys <hanwen@xs4all.nl>
Tue, 2 Jan 2007 20:38:19 +0000 (21:38 +0100)
committerHan-Wen Nienhuys <hanwen@xs4all.nl>
Tue, 2 Jan 2007 20:38:19 +0000 (21:38 +0100)
lily/time-signature-engraver.cc
ly/engraver-init.ly
scm/define-context-properties.scm

index 68a7e178b042da9a83d4c9802521c939efad02fc..5cf3ebdc61d64c81954d72c90ad10acc54f6b48e 100644 (file)
@@ -66,9 +66,14 @@ Time_signature_engraver::process_music ()
                       int (scm_to_int (scm_car (fr)))));
        }
 
-      last_time_fraction_ = fr;
       time_signature_ = make_item ("TimeSignature", SCM_EOL);
       time_signature_->set_property ("fraction", fr);
+
+      if (last_time_fraction_ == SCM_BOOL_F)
+       time_signature_->set_property ("break-visibility",
+                                      get_property ("implicitTimeSignatureVisibility"));
+      
+      last_time_fraction_ = fr;
     }
 }
 
@@ -81,7 +86,13 @@ Time_signature_engraver::stop_translation_timestep ()
 #include "translator.icc"
 
 ADD_TRANSLATOR (Time_signature_engraver,
-               /* doc */ "Create a TimeSignature whenever @code{timeSignatureFraction} changes",
-               /* create */ "TimeSignature",
-               /* read */ "",
+               /* doc */ "Create a @ref{TimeSignature} whenever @code{timeSignatureFraction} changes",
+               /* create */
+               "TimeSignature ",
+               
+               /* read */
+               "implicitTimeSignatureVisibility "
+               "timeSignatureFraction "
+
+               ,
                /* write */ "");
index 063b9b44f9a708c0743031f2df59858c1d28a669..afc251b00b1893fab647fdbdf0ab7f0f5b732e57 100644 (file)
@@ -521,6 +521,8 @@ AncientRemoveEmptyStaffContext = \context {
   
   explicitClefVisibility = #all-visible
   explicitKeySignatureVisibility = #all-visible
+  implicitTimeSignatureVisibility = #end-of-line-invisible
+  
   autoBeamSettings = #default-auto-beam-settings
   autoBeaming = ##t
   autoBeamCheck = #default-auto-beam-check
index 43a738d6ae25a2a6241aaad830af50a63785d91e..ee889b916a079648e2e6dd7aa4209dcbcb354c6a 100644 (file)
@@ -249,6 +249,8 @@ selector for tab notation.")
      (ignoreBarChecks ,boolean? "Ignore bar checks")
      (ignoreMelismata ,boolean? "Ignore melismata for this @internalsref{Lyrics} line.")
 
+     (implicitTimeSignatureVisibility ,vector? "break visibility for the default timesignature.")
+
      (implicitBassFigures ,list? "List of bass figures that are not
 printed as numbers, but only as extender lines.")