From: fred Date: Sun, 24 Mar 2002 19:39:03 +0000 (+0000) Subject: lilypond-0.0.50 X-Git-Tag: release/1.5.59~4971 X-Git-Url: https://git.donarmstrong.com/?a=commitdiff_plain;h=93ee5b510c1ceb5a15d44505b3059b1bd7d6a49b;p=lilypond.git lilypond-0.0.50 --- diff --git a/lily/dynamic-reg.cc b/lily/dynamic-reg.cc index e0e38a7a59..4088a3be70 100644 --- a/lily/dynamic-reg.cc +++ b/lily/dynamic-reg.cc @@ -13,6 +13,7 @@ #include "lookup.hh" #include "paper-def.hh" #include "score-column.hh" +#include "staff-sym.hh" Dynamic_register::Dynamic_register() { @@ -55,7 +56,7 @@ Dynamic_register::process_requests() assert (!dynamic_p_) ; // TODO - dynamic_p_ = new Text_item(td_p, 10 ); // TODO! + dynamic_p_ = new Text_item(td_p); announce_element(Staff_elem_info(dynamic_p_, dreq_l)); } else if (dreq_l->span_dynamic()) { @@ -71,7 +72,7 @@ Dynamic_register::process_requests() } else if (span_l->spantype == Span_req::START) { cresc_req_l_ = span_l; assert(!new_cresc_p); - new_cresc_p = new Crescendo(10); + new_cresc_p = new Crescendo; new_cresc_p->grow_dir_i_ = span_l->dynamic_dir_i_; announce_element(Staff_elem_info(new_cresc_p, span_l)); } @@ -90,7 +91,9 @@ Dynamic_register::process_requests() void Dynamic_register::pre_move_processing() { + Staff_symbol* s_l = get_staff_info().staff_sym_l_; if (dynamic_p_) { + dynamic_p_->set_staffsym(s_l); typeset_element(dynamic_p_); dynamic_p_ = 0; } @@ -99,7 +102,7 @@ Dynamic_register::pre_move_processing() to_end_cresc_p_->right_dyn_b_=true; to_end_cresc_p_->right_col_l_ = get_staff_info().musical_l()->pcol_l_; - + to_end_cresc_p_->set_staffsym(s_l); typeset_element(to_end_cresc_p_); to_end_cresc_p_ = 0; } diff --git a/lily/include/dynamic-reg.hh b/lily/include/dynamic-reg.hh index 164ac6af3d..8b39f4fe11 100644 --- a/lily/include/dynamic-reg.hh +++ b/lily/include/dynamic-reg.hh @@ -12,7 +12,7 @@ #include "register.hh" -struct Dynamic_register : Request_register { +class Dynamic_register : public Request_register { int dir_i_; Text_item * dynamic_p_; Crescendo * to_end_cresc_p_; @@ -20,15 +20,17 @@ struct Dynamic_register : Request_register { Span_dynamic_req * cresc_req_l_; Array dynamic_req_l_arr_; /* ************** */ +public: Dynamic_register(); ~Dynamic_register(); + NAME_MEMBERS(Dynamic_register); +protected: virtual bool try_request(Request *req_l); virtual void process_requests(); virtual void pre_move_processing(); virtual void post_move_processing(); virtual bool acceptable_request_b(Request*) const; virtual void set_feature(Features); - NAME_MEMBERS(Dynamic_register); }; #endif // DYNAMIC_REG_HH diff --git a/lily/include/staff-info.hh b/lily/include/staff-info.hh index 2229c99ab0..2fc4fd7926 100644 --- a/lily/include/staff-info.hh +++ b/lily/include/staff-info.hh @@ -14,7 +14,7 @@ struct Staff_info { int *c0_position_i_l_; Staff_walker *walk_l_; - + Staff_symbol*staff_sym_l_; /// when is now? Time_description const *time_C_; diff --git a/lily/text-reg.cc b/lily/text-reg.cc index 5c61f6179d..6c86fad828 100644 --- a/lily/text-reg.cc +++ b/lily/text-reg.cc @@ -32,9 +32,8 @@ Text_register::try_request(Request*req_l) void Text_register::process_requests() { - if (text_req_l_) { - text_p_ = new Text_item(text_req_l_, 10); // UGH + text_p_ = new Text_item(text_req_l_); // UGH announce_element(Staff_elem_info(text_p_, text_req_l_)); } } @@ -43,7 +42,10 @@ Text_register::pre_move_processing() { if (text_p_) { text_p_->dir_i_ = dir_i_; + Staff_symbol* s_l = get_staff_info().staff_sym_l_; + text_p_->set_staffsym(s_l); typeset_element(text_p_); + text_p_ = 0; } }