/*
This file is part of LilyPond, the GNU music typesetter.
- Copyright (C) 2004--2012 Han-Wen Nienhuys
+ Copyright (C) 2004--2015 Han-Wen Nienhuys
LilyPond is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
if (!mmrest_event_)
{
mmrest_event_ = new Stream_event
- (handles_[in].get_context ()->make_event_class
- (ly_symbol2scm ("multi-measure-rest-event")));
+ (scm_call_1 (ly_lily_module_constant ("ly:make-event-class"),
+ ly_symbol2scm ("multi-measure-rest-event")));
mmrest_event_->set_property ("duration", SCM_EOL);
mmrest_event_->unprotect ();
}
if (playing_state_ != UNISONO
&& newstate == UNISONO)
{
- Context *out = (last_playing_ == SOLO2 ? second_iter_ : first_iter_)
- ->get_outlet ();
if (!unisono_event_)
{
unisono_event_ = new Stream_event
- (out->make_event_class (ly_symbol2scm ("unisono-event")));
+ (scm_call_1 (ly_lily_module_constant ("ly:make-event-class"),
+ ly_symbol2scm ("unisono-event")));
unisono_event_->unprotect ();
}
+ Context *out = (last_playing_ == SOLO2 ? second_iter_ : first_iter_)
+ ->get_outlet ();
out->event_source ()->broadcast (unisono_event_);
playing_state_ = UNISONO;
}
if (!solo_one_event_)
{
solo_one_event_ = new Stream_event
- (first_iter_->get_outlet ()->make_event_class
- (ly_symbol2scm ("solo-one-event")));
+ (scm_call_1 (ly_lily_module_constant ("ly:make-event-class"),
+ ly_symbol2scm ("solo-one-event")));
solo_one_event_->unprotect ();
}
if (!solo_two_event_)
{
solo_two_event_ = new Stream_event
- (second_iter_->get_outlet ()->make_event_class
- (ly_symbol2scm ("solo-two-event")));
+ (scm_call_1 (ly_lily_module_constant ("ly:make-event-class"),
+ ly_symbol2scm ("solo-two-event")));
solo_two_event_->unprotect ();
}
SCM lst = get_music ()->get_property ("elements");
Context *one = handles_[CONTEXT_ONE].get_context ();
set_context (one);
- first_iter_ = unsmob_iterator (get_iterator (unsmob_music (scm_car (lst))));
+ first_iter_ = Music_iterator::unsmob (get_iterator (Music::unsmob (scm_car (lst))));
Context *two = handles_[CONTEXT_TWO].get_context ();
set_context (two);
- second_iter_ = unsmob_iterator (get_iterator (unsmob_music (scm_cadr (lst))));
+ second_iter_ = Music_iterator::unsmob (get_iterator (Music::unsmob (scm_cadr (lst))));
Context *shared = handles_[CONTEXT_SHARED].get_context ();
set_context (shared);
"DynamicLineSpanner",
"Tie",
"Dots",
+ "MultiMeasureRest",
"Rest",
"Slur",
"TextScript",
ly_symbol2scm ("horizontal-shift"), horizontalShiftOne_);
execute_pushpop_property (two, ly_symbol2scm ("NoteColumn"),
ly_symbol2scm ("horizontal-shift"), horizontalShiftTwo_);
- /* Also handle MultiMeasureRest positions for voice 1/2 */
- execute_pushpop_property (one, ly_symbol2scm ("MultiMeasureRest"),
- ly_symbol2scm ("staff-position"), scm_from_int (4));
- execute_pushpop_property (two, ly_symbol2scm ("MultiMeasureRest"),
- ly_symbol2scm ("staff-position"), scm_from_int (-4));
}
if (!notice_busy_)
return;
- Stream_event *e = unsmob_stream_event (se);
+ Stream_event *e = Stream_event::unsmob (se);
if (e->in_event_class ("note-event") || e->in_event_class ("cluster-note-event"))
busy_ = true;
for (; scm_is_pair (split_list_); split_list_ = scm_cdr (split_list_))
{
- splitm = unsmob_moment (scm_caar (split_list_));
+ splitm = Moment::unsmob (scm_caar (split_list_));
if (splitm && *splitm + start_moment_ > now)
break;