#include <ctype.h>
#include "rhythmic-head.hh"
-#include "paper-def.hh"
+#include "output-def.hh"
#include "event.hh"
#include "dots.hh"
#include "dot-column.hh"
}
else if (m->is_mus_type ("busy-playing-event"))
return note_reqs_.size ();
- else if (m->is_mus_type ("start-playing-event"))
- return note_reqs_.size ();
return false;
}
{
for (int i=0; i < note_reqs_.size (); i++)
{
- Item *note = make_item ("NoteHead");
Music * req = note_reqs_[i];
+ Item *note = make_item ("NoteHead", req->self_scm ());
Duration dur = *unsmob_duration (req->get_property ("duration"));
note->set_property ("duration-log", scm_int2num (dur.duration_log ()));
if (dur.dot_count ())
{
- Item * d = make_item ("Dots");
+ Item * d = make_item ("Dots", note->self_scm ());
Rhythmic_head::set_dots (note, d);
if (dur.dot_count ()
d->set_property ("dot-count", scm_int2num (dur.dot_count ()));
d->set_parent (note, Y_AXIS);
- announce_grob (d, SCM_EOL);
+
dots_.push (d);
}
int pos = pit ? pit->steps () : 0;
SCM c0 = get_property ("middleCPosition");
- if (ly_number_p (c0))
- pos += ly_scm2int (c0);
+ if (scm_is_number (c0))
+ pos += scm_to_int (c0);
note->set_property ("staff-position", scm_int2num (pos));
- announce_grob (note,req->self_scm ());
notes_.push (note);
}
}
void
Note_heads_engraver::stop_translation_timestep ()
{
- for (int i=0; i < notes_.size (); i++)
- {
- typeset_grob (notes_[i]);
- }
notes_.clear ();
- for (int i=0; i < dots_.size (); i++)
- {
- typeset_grob (dots_[i]);
- }
dots_.clear ();
note_reqs_.clear ();
}