source file of the GNU LilyPond music typesetter
- (c) 1997--2000 Han-Wen Nienhuys <hanwen@cs.uu.nl>
+ (c) 1997--2001 Han-Wen Nienhuys <hanwen@cs.uu.nl>
*/
#include "translator-group.hh"
Request_chord_iterator::get_music (Moment) const
{
SCM s = SCM_EOL;
- if (music_l_)
+ if (last_processed_mom_ < Moment (0))
{
Music_sequence * ms = dynamic_cast<Music_sequence*> (music_l_);
void
Request_chord_iterator::process (Moment m)
{
- if (music_l_)
+ if (last_processed_mom_ < Moment (0))
{
for (SCM s = dynamic_cast<Music_sequence *> (music_l_)->music_list ();
gh_pair_p (s); s = gh_cdr (s))
{
Music *mus = unsmob_music (gh_car (s));
- if (Request * req_l = dynamic_cast<Request*> (mus))
- {
- bool gotcha = try_music (req_l);
- if (!gotcha)
- req_l->origin ()->warning (_f ("Junking request: `%s'", classname( req_l)));
- }
- else
- mus->origin ()->warning (_f ("Huh? Not a Request: `%s'",
- classname (mus)));
+ bool gotcha = try_music (mus);
+ if (!gotcha)
+ mus->origin ()->warning (_f ("Junking request: `%s'", classname(mus)));
}
}
skip (m);
}
+
+IMPLEMENT_CTOR_CALLBACK(Request_chord_iterator);