source file of the GNU LilyPond music typesetter
- (c) 2006 Han-Wen Nienhuys <hanwen@lilypond.org>
+ (c) 2006--2007 Han-Wen Nienhuys <hanwen@lilypond.org>
*/
-
#include "engraver.hh"
+
+#include "accidental-placement.hh"
+#include "item.hh"
#include "script-column.hh"
#include "side-position-interface.hh"
public:
TRANSLATOR_DECLARATIONS (Script_row_engraver);
protected:
+ DECLARE_ACKNOWLEDGER (accidental_placement);
DECLARE_ACKNOWLEDGER (side_position);
void process_acknowledged ();
void stop_translation_timestep ();
if (script_row_)
{
for (vsize i = 0; i < scripts_.size (); i++)
- if (Side_position_interface::get_axis (scripts_[i]) == X_AXIS)
+ if (Accidental_placement::has_interface (scripts_[i])
+ || Side_position_interface::get_axis (scripts_[i]) == X_AXIS)
Script_column::add_side_positioned (script_row_, scripts_[i]);
}
}
}
+
+void
+Script_row_engraver::acknowledge_accidental_placement (Grob_info inf)
+{
+ scripts_.push_back (inf.grob ());
+}
+
+
void
Script_row_engraver::process_acknowledged ()
{
}
+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. ",