class Note_head_line_engraver : public Engraver
{
public:
- VIRTUAL_COPY_CONS (Translator);
- Note_head_line_engraver ();
+ TRANSLATOR_DECLARATIONS(Note_head_line_engraver);
protected:
virtual void acknowledge_grob (Grob_info);
void
Note_head_line_engraver::acknowledge_grob (Grob_info info)
{
- if (Rhythmic_head::has_interface (info.elem_l_))
+ if (Rhythmic_head::has_interface (info.grob_l_))
{
- head_ = info.elem_l_;
- if (to_boolean (get_property ("followThread")))
+ head_ = info.grob_l_;
+ if (to_boolean (get_property ("followVoice")))
{
Translator_group * tr = daddy_trans_l_;
while (tr && tr->type_str_ != "Staff")
Should probably store follow_ in line_, and suicide at some
later point */
if (follow_)
- line_ = new Spanner (get_property ("FollowThread"));
+ line_ = new Spanner (get_property ("VoiceFollower"));
else
line_ = new Spanner (get_property ("Glissando"));
}
-ADD_THIS_TRANSLATOR (Note_head_line_engraver);
+
+ENTER_DESCRIPTION(Note_head_line_engraver,
+/* descr */ "Engrave a line between two note heads, for example a glissando.
+If followVoice is set, staff switches also generate a line.",
+/* creats*/ "Glissando VoiceFollower",
+/* acks */ "rhythmic-head-interface",
+/* reads */ "followVoice",
+/* write */ "");