2006-10-09 Han-Wen Nienhuys <hanwen@lilypond.org>
+ * scm/define-grob-interfaces.scm
+ (trill-pitch-accidental-interface):
+ add trill-pitch-accidental-interface
+
+ * lily/dots-engraver.cc (acknowledge_rhythmic_head): only
+ dereference if it's really a duration.
+
* lily/figured-bass-engraver.cc (process_music): clear spanner if
useBassFigureExtenders is not set.
(listen_bass_figure): record as new event if
if (unsmob_grob (note->get_object ("dot")))
return;
- Duration dur = *unsmob_duration (cause->get_property ("duration"));
- if (dur.dot_count ())
+
+ Duration *dur = unsmob_duration (cause->get_property ("duration"));
+ if (dur && dur->dot_count ())
{
Item *d = make_item ("Dots", note->self_scm ());
Rhythmic_head::set_dots (note, d);
+
+ d->set_property ("dot-count", scm_from_int (dur->dot_count ()));
d->set_parent (note, Y_AXIS);
}
}
// fixme: naming -> alterations
trill_accidental_->set_property ("accidentals", scm_list_1 (scm_from_int (p->get_alteration ())));
Side_position_interface::add_support (trill_accidental_, trill_head_);
+
trill_head_->set_object ("accidental-grob", trill_accidental_->self_scm ());
trill_accidental_->set_parent (trill_head_, Y_AXIS);
Axis_group_interface::add_element (trill_group_, trill_accidental_);
"A note head to indicate trill pitches"
'(accidental-grob))
+(ly:add-interface
+ 'trill-pitch-accidental-interface
+ "An accidental for trill pitch"
+ '(accidentals))
+
(ly:add-interface
'rhythmic-grob-interface
"Any object with a rhythmic basis. Used to determine which grobs
(stencil . ,ly:accidental-interface::print)
(meta . ((class . Item)
(interfaces . (item-interface
+ trill-pitch-accidental-interface
side-position-interface
font-interface))))))