]> git.donarmstrong.com Git - lilypond.git/blobdiff - lily/engraver-group.cc
release: 0.0.78
[lilypond.git] / lily / engraver-group.cc
index 1fd484572bbba685927bda27e8bf395111e3de3c..a1a77d7da1e604ef930d28494e5d169081d414f6 100644 (file)
@@ -13,7 +13,9 @@
 #include "debug.hh"
 #include "p-score.hh"
 #include "score-elem.hh"
-#include "input-engraver.hh"
+#include "input-translator.hh"
+
+Engraver* get_engraver_p(String);
 
 Engraver_group_engraver::~Engraver_group_engraver()
 {
@@ -30,7 +32,6 @@ Engraver_group_engraver::check_removal()
        else 
            i++;
     }
-    
 }
 
 bool
@@ -41,7 +42,7 @@ Engraver_group_engraver::removable_b()const
 
 Engraver_group_engraver::Engraver_group_engraver()
 {
-    igrav_l_ =0;
+    itrans_l_ = 0;
 }
 
 void
@@ -120,7 +121,7 @@ Engraver_group_engraver::do_try_request(Request*req_l)
     bool hebbes_b =false;
     for (int i =0; !hebbes_b && i < nongroup_l_arr_.size() ; i++)
        hebbes_b =nongroup_l_arr_[i]->try_request(req_l);
-    if (!hebbes_b)
+    if (!hebbes_b && daddy_grav_l_)
        hebbes_b = daddy_grav_l_->try_request(req_l);
     return hebbes_b ;
 }
@@ -166,7 +167,7 @@ Engraver_group_engraver::terminate_engraver(Engraver*r_l)
 }
 
 IMPLEMENT_IS_TYPE_B2(Engraver_group_engraver,Engraver, Translator);
-IMPLEMENT_STATIC_NAME(Engraver_group_engraver);
+
 ADD_THIS_ENGRAVER(Engraver_group_engraver);
 
 void
@@ -197,17 +198,17 @@ Translator*
 Engraver_group_engraver::find_get_translator_l(String n,String id)
 {
     Translator * ret=0;
-    Input_engraver * igrav_l= igrav_l_-> recursive_find ( n );
-    if (igrav_l ) {
+    Input_translator * itrans_l= itrans_l_-> recursive_find ( n );
+    if (itrans_l ) {
        ret = find_engraver_l(n,id);
        if (!ret) {
            Engraver_group_engraver * group = 
-               igrav_l-> get_group_engraver_p();
+               itrans_l-> get_group_engraver_p();
            
            add(group);
            ret = group;
            
-           if (group->igrav_l_->is_name_b( n ) )
+           if (group->itrans_l_->is_name_b( n ) )
                ret ->id_str_ = id;
            else
                return ret->find_get_translator_l(n,id);
@@ -292,8 +293,8 @@ Engraver_group_engraver::get_default_interpreter()
     if ( is_bottom_engraver_b() )
        return daddy_grav_l_->get_default_interpreter();
 
-    Engraver_group_engraver *grav_p= igrav_l_->
-       get_default_igrav_l()->get_group_engraver_p();
+    Engraver_group_engraver *grav_p= itrans_l_->
+       get_default_itrans_l()->get_group_engraver_p();
     add(grav_p );
     if (grav_p->is_bottom_engraver_b())
        return grav_p;
@@ -304,5 +305,5 @@ Engraver_group_engraver::get_default_interpreter()
 bool
 Engraver_group_engraver::is_bottom_engraver_b()const
 {
-    return !igrav_l_->get_default_igrav_l();
+    return !itrans_l_->get_default_itrans_l();
 }