X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=lily%2Fgrob-info.cc;h=d4a0acc0cec2a6506374c2ce215d929a805a0a8c;hb=5c7d64ab0b4877bc8a659194034b7b74522f3d6c;hp=542e9698bbb96b558d589a10ff74d1bac7513d6a;hpb=94375d04f45b415ad705fd444fdb344416f116d9;p=lilypond.git diff --git a/lily/grob-info.cc b/lily/grob-info.cc index 542e9698bb..d4a0acc0ce 100644 --- a/lily/grob-info.cc +++ b/lily/grob-info.cc @@ -3,39 +3,38 @@ source file of the GNU LilyPond music typesetter - (c) 1997--2001 Han-Wen Nienhuys + (c) 1997--2005 Han-Wen Nienhuys */ #include "grob-info.hh" -#include "request.hh" -#include "translator.hh" + +#include "grob.hh" +#include "music.hh" #include "translator-group.hh" +#include "context.hh" -Grob_info::Grob_info (Grob*s_l, Music *r_l) +Grob_info::Grob_info () { - grob_l_ = s_l; - req_l_ = r_l; - origin_trans_l_ = 0; + grob_ = 0; + origin_trans_ = 0; } - -Grob_info::Grob_info () +Music* +Grob_info::music_cause () { - grob_l_ = 0; - req_l_ = 0; - origin_trans_l_ = 0; + SCM cause = grob_->get_property ("cause"); + return unsmob_music (cause); } - -Link_array -Grob_info::origin_trans_l_arr (Translator* end) const +Link_array +Grob_info::origin_contexts (Translator* end) const { - Translator * t = origin_trans_l_; - Link_array r; + Context * t = origin_trans_->context (); + Link_array r; do { r.push (t); - t = t->daddy_trans_l_; - } while (t && t != end->daddy_trans_l_); + t = t->get_parent_context (); + } while (t && t != end->context ()); return r; }