- /*
- Problem: how to set musical columns as parent
- when there's no breakable object of interest nearby?
- We don't want metronome marks aligned to paper columns.
-
- Grob *mc = unsmob_grob (get_property ("currentMusicalColumn"));
- text_->set_parent (mc, X_AXIS);
- */
+ if (text_->get_parent (X_AXIS)
+ && text_->get_parent (X_AXIS)->internal_has_interface (ly_symbol2scm ("multi-measure-rest-interface"))
+ && bar_)
+ text_->set_parent (bar_, X_AXIS);
+ else if (!support_)
+ {
+ /*
+ Gardner Read "Music Notation", p.278
+
+ Align the metronome mark over the time signature (or the
+ first notational element of the measure if no time
+ signature is present in that measure).
+ */
+ if (Grob *mc = Grob::unsmob (get_property ("currentMusicalColumn")))
+ text_->set_parent (mc, X_AXIS);
+ else if (Grob *cc = Grob::unsmob (get_property ("currentCommandColumn")))
+ text_->set_parent (cc, X_AXIS);
+ }