From fc2b57cd64badbd76b3776742821808321fe3314 Mon Sep 17 00:00:00 2001
From: Jan Nieuwenhuizen <janneke@gnu.org>
Date: Tue, 22 Jun 2010 21:04:11 +0200
Subject: [PATCH] Metronome-mark: process Neil's comments: cleanups and fixing
 warnings.

Use multi-measure-rest instead of MultiMeasureRest.
Add break-aligned-interface.
Add non-break-align-symbols to break-aligned-interface.
---
 lily/break-alignment-interface.cc | 1 +
 lily/metronome-engraver.cc        | 5 ++++-
 scm/define-grobs.scm              | 8 +++++---
 3 files changed, 10 insertions(+), 4 deletions(-)

diff --git a/lily/break-alignment-interface.cc b/lily/break-alignment-interface.cc
index 5cd5d5dbef..a9205fb309 100644
--- a/lily/break-alignment-interface.cc
+++ b/lily/break-alignment-interface.cc
@@ -381,6 +381,7 @@ ADD_INTERFACE (Break_alignable_interface,
 
 	       /* properties */
 	       "break-align-symbols "
+	       "non-break-align-symbols "
 	       );
 
 ADD_INTERFACE (Break_aligned_interface,
diff --git a/lily/metronome-engraver.cc b/lily/metronome-engraver.cc
index e6a61f175f..10935953f9 100644
--- a/lily/metronome-engraver.cc
+++ b/lily/metronome-engraver.cc
@@ -26,6 +26,7 @@ using namespace std;
 #include "duration.hh"
 #include "grob-array.hh"
 #include "item.hh"
+#include "music.hh"
 #include "stream-event.hh"
 #include "text-interface.hh"
 
@@ -96,7 +97,9 @@ SCM
 grob_name_scm (Grob *g)
 {
   SCM name_pair = scm_assq (ly_symbol2scm ("name"), g->get_property ("meta"));
-  return scm_is_pair (name_pair) ? scm_cdr (name_pair) : SCM_EOL;
+  return (scm_is_pair (name_pair)
+	  ? ly_camel_case_2_lisp_identifier (scm_cdr (name_pair))
+	  : SCM_EOL);
 }
 
 void
diff --git a/scm/define-grobs.scm b/scm/define-grobs.scm
index 7f2c554bea..8a7689a6a6 100644
--- a/scm/define-grobs.scm
+++ b/scm/define-grobs.scm
@@ -1175,12 +1175,14 @@
 	(self-alignment-X . ,LEFT)
 	(break-align-symbol . metronome-mark)
 	(break-align-symbols . (key-signature time-signature metronome-mark))
-	(non-break-align-symbols . (MultiMeasureRest))
+	(non-break-align-symbols . (multi-measure-rest))
 	(meta . ((class . Item)
-		 (interfaces . (font-interface
+		 (interfaces . (break-alignable-interface
+				break-aligned-interface
+				font-interface
 				metronome-mark-interface
+				self-alignment-interface
 				side-position-interface
-				break-alignable-interface
 				text-interface))))))
 
     (MultiMeasureRest
-- 
2.39.5