From: fred Date: Sun, 24 Mar 2002 19:52:49 +0000 (+0000) Subject: lilypond-0.1.1 X-Git-Tag: release/1.5.59~4175 X-Git-Url: https://git.donarmstrong.com/?a=commitdiff_plain;h=be4bb93cfd63a778fcd190c5d6becb0dd634a848;p=lilypond.git lilypond-0.1.1 --- diff --git a/lily/include/scoreline.hh b/lily/include/scoreline.hh index ef95d6d078..abde4af7a2 100644 --- a/lily/include/scoreline.hh +++ b/lily/include/scoreline.hh @@ -17,7 +17,6 @@ public: bool error_mark_b_; virtual String TeX_string() const; - DECLARE_MY_RUNTIME_TYPEINFO; Line_of_score(); @@ -28,9 +27,9 @@ public: Link_array get_lines()const; void set_breaking(Array const&); - + protected: - virtual void break_into_pieces(); + virtual void break_into_pieces(bool); virtual Interval do_width()const; virtual void do_print() const; SCORE_ELEM_CLONE(Line_of_score); diff --git a/lily/include/spanner.hh b/lily/include/spanner.hh index f2afbfb241..30a72290c0 100644 --- a/lily/include/spanner.hh +++ b/lily/include/spanner.hh @@ -10,8 +10,6 @@ #include "lily-proto.hh" #include "score-elem.hh" - - /** a symbol which is attached between two columns. A spanner is a symbol which spans across several columns, so its final appearance can only be calculated after the breaking problem is solved. @@ -43,8 +41,13 @@ public: bool broken_b() const; Spanner* find_broken_piece(Line_of_score*)const; protected: + void set_my_columns(); SCORE_ELEM_CLONE(Spanner); - virtual void break_into_pieces(); + + /** + this is virtual; for instance, Line_of_score overrides it. + */ + virtual void break_into_pieces(bool); Link_array broken_into_l_arr_; diff --git a/lily/scoreline.cc b/lily/scoreline.cc index 64a7df296d..d4951dbb83 100644 --- a/lily/scoreline.cc +++ b/lily/scoreline.cc @@ -101,6 +101,7 @@ Line_of_score::set_breaking(Array const &breaking) if (breaking.size() >1) { line_p = (Line_of_score*)clone()->spanner(); + line_p->copy_dependencies( *this ); line_l = line_p; } else line_l = this; @@ -122,7 +123,7 @@ Line_of_score::set_breaking(Array const &breaking) } void -Line_of_score::break_into_pieces() +Line_of_score::break_into_pieces(bool) { } @@ -131,7 +132,7 @@ Line_of_score::get_lines()const { Link_array ret; - if(broken_into_l_arr_.size()) + if (broken_into_l_arr_.size()) for (int i=0; i < broken_into_l_arr_.size(); i++) { ret.push((Line_of_score*)broken_into_l_arr_[i]); }