/*
This file is part of LilyPond, the GNU music typesetter.
- Copyright (C) 2006--2014 Han-Wen Nienhuys <hanwen@lilypond.org>
+ Copyright (C) 2006--2015 Han-Wen Nienhuys <hanwen@lilypond.org>
LilyPond is free software: you can redistribute it and/or modify
public:
TRANSLATOR_DECLARATIONS (Script_row_engraver);
protected:
- DECLARE_ACKNOWLEDGER (accidental_placement);
- DECLARE_ACKNOWLEDGER (side_position);
+ void acknowledge_accidental_placement (Grob_info);
+ void acknowledge_side_position (Grob_info);
void process_acknowledged ();
void stop_translation_timestep ();
};
-Script_row_engraver::Script_row_engraver ()
+Script_row_engraver::Script_row_engraver (Context *c)
+ : Engraver (c)
{
script_row_ = 0;
}
if (script_row_)
{
for (vsize i = 0; i < scripts_.size (); i++)
- if (Accidental_placement::has_interface (scripts_[i])
+ if (has_interface<Accidental_placement> (scripts_[i])
|| Side_position_interface::get_axis (scripts_[i]) == X_AXIS)
Script_column::add_side_positioned (script_row_, scripts_[i]);
}
script_row_ = make_item ("ScriptRow", SCM_EOL);
}
-ADD_ACKNOWLEDGER (Script_row_engraver, accidental_placement);
-ADD_ACKNOWLEDGER (Script_row_engraver, side_position);
+void
+Script_row_engraver::boot ()
+{
+ ADD_ACKNOWLEDGER (Script_row_engraver, accidental_placement);
+ ADD_ACKNOWLEDGER (Script_row_engraver, side_position);
+}
+
ADD_TRANSLATOR (Script_row_engraver,
/* doc */
"Determine order in horizontal side position elements.",