X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=lily%2Fpitch-squash-engraver.cc;h=0ccf797d46a679f129b55a4dfb96130a990e4a64;hb=131f941d10d6c6d587ec1f41f735fd7ba07e7ea3;hp=6ea465e78151573eed6aa06ed1742d3d4f7c1fbc;hpb=94375d04f45b415ad705fd444fdb344416f116d9;p=lilypond.git diff --git a/lily/pitch-squash-engraver.cc b/lily/pitch-squash-engraver.cc index 6ea465e781..0ccf797d46 100644 --- a/lily/pitch-squash-engraver.cc +++ b/lily/pitch-squash-engraver.cc @@ -1,45 +1,47 @@ -/* - pitch-squash-grav.cc -- implement Pitch_squash_engraver - +/* + pitch-squash-engraver.cc -- implement Pitch_squash_engraver + source file of the GNU LilyPond music typesetter - - (c) 1997--2001 Han-Wen Nienhuys - - */ + + (c) 1997--2005 Han-Wen Nienhuys +*/ #include "staff-symbol-referencer.hh" #include "note-head.hh" #include "rhythmic-head.hh" #include "engraver.hh" -class Pitch_squash_engraver : public Engraver { +class Pitch_squash_engraver : public Engraver +{ public: - TRANSLATOR_DECLARATIONS(Pitch_squash_engraver); + TRANSLATOR_DECLARATIONS (Pitch_squash_engraver); virtual void acknowledge_grob (Grob_info); }; - void Pitch_squash_engraver::acknowledge_grob (Grob_info i) { SCM newpos = get_property ("squashedPosition"); - if (Note_head::has_interface (i.grob_l_)) + if (scm_is_number (newpos) + && Note_head::has_interface (i.grob_)) { - i.grob_l_->set_grob_property ("staff-position", newpos); + i.grob_->set_property ("staff-position", newpos); } } - - -Pitch_squash_engraver::Pitch_squash_engraver() +Pitch_squash_engraver::Pitch_squash_engraver () { } -ENTER_DESCRIPTION(Pitch_squash_engraver, -/* descr */ "Treat all pitches as middle C. Note that the notes move, but -the locations of accidentals stay the same. -Set the position field of all note heads to zero. This useful for -making a single line staff that demonstrates the rhythm of a melody.", -/* creats*/ "", -/* acks */ "note-head-interface", -/* reads */ "squashedPosition", -/* write */ ""); +ADD_TRANSLATOR (Pitch_squash_engraver, + /* descr */ + "Set the vertical position of noteheads to " + "@code{squashedPosition}, if that " + "property is set. " + "This can be used to make a single line staff " + "demonstrating the rhythm of a melody.", + + /* creats*/ "", + /* accepts */ "", + /* acks */ "note-head-interface", + /* reads */ "squashedPosition", + /* write */ "");