along with LilyPond. If not, see <http://www.gnu.org/licenses/>.
*/
-#include "slur-proto-engraver.hh"
+#include "slur-engraver.hh"
#include "translator.icc"
-class Phrasing_slur_engraver : public Slur_proto_engraver
+class Phrasing_slur_engraver : public Slur_engraver
{
virtual SCM event_symbol () const;
virtual bool double_property () const;
virtual SCM grob_symbol () const;
virtual const char* object_name () const;
-
-protected:
- void listen_phrasing_slur (Stream_event *);
- void acknowledge_slur (Grob_info);
+ virtual void set_melisma (bool);
public:
TRANSLATOR_DECLARATIONS (Phrasing_slur_engraver);
- TRANSLATOR_INHERIT (Slur_proto_engraver);
+ TRANSLATOR_INHERIT (Slur_engraver);
};
SCM
return "phrasing slur";
}
-Phrasing_slur_engraver::Phrasing_slur_engraver ()
-{
-}
-
-void
-Phrasing_slur_engraver::listen_phrasing_slur (Stream_event *ev)
+Phrasing_slur_engraver::Phrasing_slur_engraver (Context *c)
+ : Slur_engraver (c)
{
- Slur_proto_engraver::listen_slur (ev);
}
void
-Phrasing_slur_engraver::acknowledge_slur (Grob_info info)
+Phrasing_slur_engraver::set_melisma (bool)
{
- acknowledge_extra_object (info);
}
-
void
Phrasing_slur_engraver::boot ()
{
- ADD_LISTENER (Phrasing_slur_engraver, phrasing_slur);
+ ADD_LISTENER_FOR (Phrasing_slur_engraver, slur, phrasing_slur);
ADD_LISTENER (Phrasing_slur_engraver, note);
- ADD_ACKNOWLEDGER (Phrasing_slur_engraver, inline_accidental);
- ADD_ACKNOWLEDGER (Phrasing_slur_engraver, fingering);
+ ADD_ACKNOWLEDGER_FOR (Phrasing_slur_engraver, extra_object, inline_accidental);
+ ADD_ACKNOWLEDGER_FOR (Phrasing_slur_engraver, extra_object, fingering);
ADD_ACKNOWLEDGER (Phrasing_slur_engraver, note_column);
- ADD_ACKNOWLEDGER (Phrasing_slur_engraver, slur);
+ ADD_ACKNOWLEDGER_FOR (Phrasing_slur_engraver, extra_object, slur);
ADD_ACKNOWLEDGER (Phrasing_slur_engraver, script);
- ADD_ACKNOWLEDGER (Phrasing_slur_engraver, dots);
- ADD_ACKNOWLEDGER (Phrasing_slur_engraver, text_script);
- ADD_END_ACKNOWLEDGER (Phrasing_slur_engraver, tie);
- ADD_ACKNOWLEDGER (Phrasing_slur_engraver, tuplet_number);
+ ADD_ACKNOWLEDGER_FOR (Phrasing_slur_engraver, extra_object, dots);
+ ADD_ACKNOWLEDGER_FOR (Phrasing_slur_engraver, extra_object, text_script);
+ ADD_END_ACKNOWLEDGER_FOR (Phrasing_slur_engraver, extra_object, tie);
+ ADD_ACKNOWLEDGER_FOR (Phrasing_slur_engraver, extra_object, tuplet_number);
}
ADD_TRANSLATOR (Phrasing_slur_engraver,