X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=lily%2Fvertical-align-engraver.cc;h=0226173a2e115ec81d153212a5c3317cee6755c2;hb=b9040afd1dcfbee6b45bc3d54850ff50d51c8ee9;hp=d28d0d74a3b121e2c27828d92732920b36f12333;hpb=0c14539bc83d6bb405141b6f21430b33d1e8fcf0;p=lilypond.git diff --git a/lily/vertical-align-engraver.cc b/lily/vertical-align-engraver.cc index d28d0d74a3..0226173a2e 100644 --- a/lily/vertical-align-engraver.cc +++ b/lily/vertical-align-engraver.cc @@ -37,7 +37,7 @@ class Vertical_align_engraver : public Engraver public: TRANSLATOR_DECLARATIONS (Vertical_align_engraver); - DECLARE_ACKNOWLEDGER (axis_group); + void acknowledge_axis_group (Grob_info); protected: virtual void derived_mark () const; @@ -48,7 +48,12 @@ protected: bool top_level_; }; -ADD_ACKNOWLEDGER (Vertical_align_engraver, axis_group); +void +Vertical_align_engraver::boot () +{ + ADD_ACKNOWLEDGER (Vertical_align_engraver, axis_group); +} + ADD_TRANSLATOR (Vertical_align_engraver, /* doc */ "Catch groups (staves, lyrics lines, etc.) and stack them" @@ -120,7 +125,7 @@ Vertical_align_engraver::qualifies (Grob_info i) const { int sz = i.origin_contexts ((Translator *)this).size (); - return sz > 0 && Axis_group_interface::has_interface (i.grob ()) + return sz > 0 && has_interface (i.grob ()) && !i.grob ()->get_parent (Y_AXIS) && !to_boolean (i.grob ()->get_property ("no-alignment")) && Axis_group_interface::has_axis (i.grob (), Y_AXIS);