public:
TRANSLATOR_DECLARATIONS (Vertical_align_engraver);
- DECLARE_ACKNOWLEDGER (axis_group);
+ void acknowledge_axis_group (Grob_info);
protected:
virtual void derived_mark () const;
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"
""
);
-Vertical_align_engraver::Vertical_align_engraver ()
+Vertical_align_engraver::Vertical_align_engraver (Context *c)
+ : Engraver (c)
{
valign_ = 0;
id_to_group_hashtab_ = SCM_EOL;
{
int sz = i.origin_contexts ((Translator *)this).size ();
- return sz > 0 && Axis_group_interface::has_interface (i.grob ())
+ return sz > 0 && has_interface<Axis_group_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);