]> git.donarmstrong.com Git - lilypond.git/blobdiff - lily/lyric-register.cc
release: 0.0.71pre
[lilypond.git] / lily / lyric-register.cc
index 73f0def7b0c4cc7358a3224ae248e7969430bff7..396fae38dc3db44c9ed5801cddfd1da5df0b4497 100644 (file)
@@ -1,23 +1,23 @@
 /*
   lyric-register.cc -- implement Lyric_register
 
-  source file of the LilyPond music typesetter
+  source file of the GNU LilyPond music typesetter
 
   (c) 1997 Han-Wen Nienhuys <hanwen@stack.nl>
 */
 
-#include "staff-walker.hh"
 #include "lyric-register.hh"
-#include "lyric-item.hh"
 #include "musical-request.hh"
+#include "text-item.hh"
+#include "paper-def.hh"
+#include "lookup.hh"
 
 Lyric_register::Lyric_register()
 {
-    
 }
 
 bool
-Lyric_register::try_request(Request*r)
+Lyric_register::do_try_request(Request*r)
 {
     Musical_req * m =r->musical();
     if (!m || ! m->lreq_l()) 
@@ -28,28 +28,27 @@ Lyric_register::try_request(Request*r)
 }
 
 void
-Lyric_register::process_requests()
+Lyric_register::do_process_requests()
 {
+    Text_item * last_item_l =0;
     for (int i=0; i < lreq_arr_.size(); i++) {
-       Item *lp = new Lyric_item(lreq_arr_[i],i);
+       Text_item *lp = new Text_item(lreq_arr_[i]->tdef_p_ );
+       lp->dir_i_ = -1;
+       lp->fat_b_ = true;
+       if (last_item_l)
+           lp->add_support(last_item_l);
+       last_item_l = lp;
        typeset_element(lp);
     }
-    get_staff_info().walk_l_->allow_break();
 }
 
 void
-Lyric_register::post_move_processing()
+Lyric_register::do_post_move_processing()
 {
     lreq_arr_.set_size(0);
 }
 
 
-bool
-Lyric_register::acceptable_request_b(Request*r)
-{
-    Musical_req * m =r->musical();
-    return (!m || ! m->lreq_l()) ;
-}
-
 IMPLEMENT_STATIC_NAME(Lyric_register);
+IMPLEMENT_IS_TYPE_B1(Lyric_register,Request_register);
 ADD_THIS_REGISTER(Lyric_register);