source file of the GNU LilyPond music typesetter
- (c) 1997--1998 Han-Wen Nienhuys <hanwen@cs.uu.nl>
+ (c) 1997--1999 Han-Wen Nienhuys <hanwen@cs.uu.nl>
*/
#include "translator-group.hh"
Request_chord_iterator::Request_chord_iterator ()
{
last_b_ = false;
+ // cursor_ = elt_l ()->music_p_list_p_->head_;
+ cursor_ = 0;
}
return (elt_length_mom_ && !last_b_) || first_b_;
}
-
-
Moment
Request_chord_iterator::next_moment() const
{
return m;
}
+Music*
+Request_chord_iterator::next_music_l ()
+{
+ if (first_b_)
+ {
+ cursor_ = elt_l ()->music_p_list_p_->head_;
+ first_b_ = false;
+ }
+ else
+ {
+ if (cursor_)
+ cursor_ = cursor_->next_;
+ }
+ if (cursor_)
+ return cursor_->car_;
+ else
+ return 0;
+}
+
void
Request_chord_iterator::do_print() const
{
{
if (first_b_)
{
- for (PCursor<Music*> i (elt_l ()->music_p_list_p_->top ()); i.ok(); i++)
+ for (Cons<Music> *i = elt_l ()->music_p_list_p_->head_; i; i = i->next_)
{
- if (Request * req_l = dynamic_cast<Request*> (i.ptr()))
+ if (Request * req_l = dynamic_cast<Request*> (i->car_))
{
bool gotcha = report_to_l()->try_music (req_l);
if (!gotcha)
req_l->warning (_f ("junking request: `%s\'", classname( req_l)));
}
else
- i.ptr ()->warning (_f ("Huh? Not a Request: `%s\'",
- classname (i.ptr())));
+ i->car_->warning (_f ("Huh? Not a Request: `%s\'",
+ classname (i->car_)));
}
first_b_ = false;
}