From: fred Date: Thu, 7 Aug 1997 00:45:18 +0000 (+0000) Subject: lilypond-0.1.7 X-Git-Tag: release/1.5.59~6083 X-Git-Url: https://git.donarmstrong.com/?a=commitdiff_plain;h=7612b63a295230ac410bfdf35b930f5d3a7577ab;p=lilypond.git lilypond-0.1.7 --- diff --git a/lily/bar-number-grav.cc b/lily/bar-number-grav.cc new file mode 100644 index 0000000000..4b0535f5a4 --- /dev/null +++ b/lily/bar-number-grav.cc @@ -0,0 +1,51 @@ +/* + bar-number-grav.cc -- implement Bar_number_grav + + source file of the GNU LilyPond music typesetter + + (c) 1997 Han-Wen Nienhuys +*/ + + +#include "bar-number-grav.hh" +#include "script.hh" +#include "text-def.hh" +#include "command-request.hh" +#include "bar.hh" + +Bar_number_grav::Bar_number_grav() +{ + number_i_ =1; + script_p_ =0; +} + +static Command_script_req dummy; + +void +Bar_number_grav::acknowledge_element(Score_elem_info i) +{ + if (i.origin_grav_l_arr_.size() == 1 && + i.elem_l_->is_type_b( Bar::static_name()) && !script_p_) { + + script_p_ = new Script; + Text_def *td_p =new Text_def; + td_p->text_str_ = number_i_++; + script_p_->specs_l_ = td_p; + script_p_->breakable_b_ = true; + script_p_->dir_i_ = 1; + + announce_element(Score_elem_info( script_p_, &dummy)); + } +} + +void +Bar_number_grav::do_pre_move_processing() +{ + if ( script_p_ ) { + typeset_element(script_p_); + script_p_ =0; + } +} + +IMPLEMENT_IS_TYPE_B1(Bar_number_grav,Engraver); +ADD_THIS_ENGRAVER(Bar_number_grav);