to store all information before we can really create the
accidentals.
*/
- std::vector<Grob*> left_objects_;
- std::vector<Grob*> right_objects_;
+ vector<Grob*> left_objects_;
+ vector<Grob*> right_objects_;
Grob *accidental_placement_;
- std::vector<Accidental_entry> accidentals_;
- std::vector<Spanner*> ties_;
+ vector<Accidental_entry> accidentals_;
+ vector<Spanner*> ties_;
};
/*
Engraver *trans)
{
+ (void)note;
/*
We construct the accidentals at the originating Voice
level, so that we get the property settings for
so it is put left of the accidentals.
*/
for (vsize i = 0; i < left_objects_.size (); i++)
- Side_position_interface::add_support (left_objects_[i], a);
+ {
+ if (left_objects_[i]->get_property ("side-axis") == scm_from_int (X_AXIS))
+ Side_position_interface::add_support (left_objects_[i], a);
+ }
+
+ /*
+ Hmm. Junkme?
+ */
for (vsize i = 0; i < right_objects_.size (); i++)
Side_position_interface::add_support (a, right_objects_[i]);
Grob *note_head,
Engraver *trans)
{
-
+ (void) note;
Grob *a
= make_grob_from_properties (trans,
ly_symbol2scm ("AccidentalSuggestion"),
{
Music *note = info.music_cause ();
if (note
- && note->is_mus_type ("note-event"))
+ && (note->is_mus_type ("note-event")
+ || note->is_mus_type ("trill-span-event")))
{
/*
- std::string harmonics usually don't have accidentals.
+ string harmonics usually don't have accidentals.
*/
if (to_boolean (get_property ("harmonicAccidentals"))
|| !ly_is_equal (info.grob ()->get_property ("style"),
ADD_ACKNOWLEDGER (Accidental_engraver, tie);
ADD_TRANSLATOR (Accidental_engraver,
+
"Make accidentals. "
"Catch note heads, ties and notices key-change events. "
"This engraver usually lives at Staff level, but "