From 1fe440c70207e07c0e7c5d7714246d4ed190f427 Mon Sep 17 00:00:00 2001
From: Han-Wen Nienhuys <hanwen@xs4all.nl>
Date: Fri, 30 Sep 2005 21:38:18 +0000
Subject: [PATCH] (first-bar-number-invisible): rename from
 default-bar-number-visibility

---
 ChangeLog                        | 10 ++++++
 lily/collision-engraver.cc       |  3 +-
 lily/output-property-engraver.cc | 59 ++++++++++++++------------------
 ly/engraver-init.ly              |  2 +-
 scm/define-music-properties.scm  |  1 -
 scm/output-lib.scm               |  2 +-
 6 files changed, 39 insertions(+), 38 deletions(-)

diff --git a/ChangeLog b/ChangeLog
index c2a44dcf2a..396c148cf9 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,13 @@
+2005-09-30  Han-Wen Nienhuys  <hanwen@xs4all.nl>
+
+	* scm/output-lib.scm (first-bar-number-invisible): rename from
+	default-bar-number-visibility
+
+2005-09-28  Han-Wen Nienhuys  <hanwen@xs4all.nl>
+
+	* scm/define-music-properties.scm (all-music-properties): remove
+	predicate property.
+
 2005-09-28  Heikki Junes  <hjunes@cc.hut.fi>
 
 	* po/fi.po: refresh.
diff --git a/lily/collision-engraver.cc b/lily/collision-engraver.cc
index ed0d351345..934585aff3 100644
--- a/lily/collision-engraver.cc
+++ b/lily/collision-engraver.cc
@@ -6,10 +6,9 @@
   (c) 1997--2005 Han-Wen Nienhuys <hanwen@cs.uu.nl>
 */
 
+#include "engraver.hh"
 #include "note-column.hh"
 #include "note-collision.hh"
-
-#include "engraver.hh"
 #include "axis-group-interface.hh"
 
 class Collision_engraver : public Engraver
diff --git a/lily/output-property-engraver.cc b/lily/output-property-engraver.cc
index 79785c85d3..08299c8edf 100644
--- a/lily/output-property-engraver.cc
+++ b/lily/output-property-engraver.cc
@@ -11,6 +11,9 @@
 #include "grob.hh"
 #include "context.hh"
 
+#include "translator.icc"
+
+
 class Output_property_engraver : public Engraver
 {
   TRANSLATOR_DECLARATIONS (Output_property_engraver);
@@ -39,31 +42,13 @@ Output_property_engraver::acknowledge_grob (Grob_info inf)
 {
   for (int i = props_.size (); i--;)
     {
-      Music * o = props_[i];
-      SCM pred = o->get_property ("predicate");
-
-      if (ly_is_procedure (pred))
-	{
-	  /*
-	    should typecheck pred. 
-	  */
-	  SCM result = scm_call_1 (pred, inf.grob ()->self_scm ());
-	  if (to_boolean (result))
-	    {
-	      SCM sym = o->get_property ("grob-property");
-	      SCM val = o->get_property ("grob-value");
-	      inf.grob ()->internal_set_property (sym, val);
-	    }
-	}
-      else
-	{
-	  Context * d = inf.context ();
-	  SCM proc = o->get_property ("procedure");
-	  scm_call_3 (proc,
-		      inf.grob ()->self_scm (),
-		      d->self_scm (), 
-		      context ()->self_scm ());
-	}
+      Music *o = props_[i];
+      Context *d = inf.context ();
+      SCM proc = o->get_property ("procedure");
+      scm_call_3 (proc,
+		  inf.grob ()->self_scm (),
+		  d->self_scm (), 
+		  context ()->self_scm ());
     }
 }
 
@@ -77,12 +62,20 @@ Output_property_engraver::Output_property_engraver ()
 {
 }
 
-#include "translator.icc"
-ADD_ACKNOWLEDGER (Output_property_engraver,grob)
+ADD_ACKNOWLEDGER (Output_property_engraver,grob);
 ADD_TRANSLATOR (Output_property_engraver,
-/* doc */ "Interpret Music of Output_property type, and apply a function "
-" to any Graphic objects that satisfies the predicate.",
-/* create */ "",
-/* accept */ "layout-instruction",
-/* read */ "",
-/* write */       "");
+
+		/* doc */
+		"Apply a procedure to any grob acknowledged. ",
+		
+		/* create */
+		"",
+		
+		/* accept */
+		"layout-instruction",
+		
+		/* read */
+		"",
+		
+		/* write */
+		"");
diff --git a/ly/engraver-init.ly b/ly/engraver-init.ly
index eca683aeba..246670fd68 100644
--- a/ly/engraver-init.ly
+++ b/ly/engraver-init.ly
@@ -477,7 +477,7 @@ AncientRemoveEmptyStaffContext = \context {
   firstClef = ##t
   
   defaultBarType = #"|"
-  barNumberVisibility = #default-bar-number-visibility
+  barNumberVisibility = #first-bar-number-invisible
   automaticBars = ##t
   
   explicitClefVisibility = #all-visible
diff --git a/scm/define-music-properties.scm b/scm/define-music-properties.scm
index 3cd631bad8..a0b45d2491 100644
--- a/scm/define-music-properties.scm
+++ b/scm/define-music-properties.scm
@@ -73,7 +73,6 @@ For chord inversions, this is negative.")
 It must take a single argument, being the context.")
      (property-operations ,list?
 			  "Do these operations for instantiating the context.")
-     (predicate ,procedure? "the predicate of a \\outputproperty.")
      (quoted-events ,vector? "A vector of with moment/event-list entries.")
      (quoted-music-name ,string? "The name of the voice to quote.")
      (quoted-voice-direction ,ly:dir? "Should the quoted voice be up-stem or down-stem?")
diff --git a/scm/output-lib.scm b/scm/output-lib.scm
index 03556dc7c5..f8ad46a176 100644
--- a/scm/output-lib.scm
+++ b/scm/output-lib.scm
@@ -170,7 +170,7 @@ centered, X==1 is at the right, X == -1 is at the left."
   (let* ((bn (ly:context-property tr 'currentBarNumber)))
     (ly:context-set-property! tr 'barNumberVisibility (modulo-bar-number-visible n (modulo bn n)))))
 
-(define-public (default-bar-number-visibility barnum) (> barnum 1))
+(define-public (first-bar-number-invisible barnum) (> barnum 1))
 
 ;; See documentation of Item::visibility_lambda_
 (define-public begin-of-line-visible
-- 
2.39.5