]> git.donarmstrong.com Git - lilypond.git/blobdiff - lily/pitch-squash-engraver.cc
release: 1.3.142
[lilypond.git] / lily / pitch-squash-engraver.cc
index 8c3273cd7c9228c78a153e1bf4b0d8ae6b4f3769..4ab2d01f0a502b4dbdada80e674bbd45ae6ef145 100644 (file)
@@ -3,22 +3,31 @@
   
   source file of the GNU LilyPond music typesetter
   
-  (c)  1997--1998 Han-Wen Nienhuys <hanwen@cs.uu.nl>
+  (c)  1997--2001 Han-Wen Nienhuys <hanwen@cs.uu.nl>
   
  */
-
-#include "pitch-squash-engraver.hh"
+#include "staff-symbol-referencer.hh"
 #include "note-head.hh"
+#include "rhythmic-head.hh"
+#include "engraver.hh"
+
+class Pitch_squash_engraver : public Engraver {
+public:
+  VIRTUAL_COPY_CONS (Translator);
+  virtual void acknowledge_grob (Grob_info);
+};
+
 
 void
-Pitch_squash_engraver::acknowledge_element (Score_element_info i)
+Pitch_squash_engraver::acknowledge_grob (Grob_info i)
 {
-  if (Note_head *nh = dynamic_cast<Note_head *> (i.elem_l_))
+  SCM newpos = get_property ("squashedPosition");
+  if (Note_head::has_interface (i.elem_l_))
     {
-      nh->position_i_  =0;
+      i.elem_l_->set_grob_property ("staff-position", newpos);
     }
 }
 
 ADD_THIS_TRANSLATOR (Pitch_squash_engraver);
-IMPLEMENT_IS_TYPE_B1(Pitch_squash_engraver, Engraver);
+