CVSROOT: /cvsroot/lilypond Module name: lilypond Branch: Changes by: Han-Wen Nienhuys <[EMAIL PROTECTED]> 05/08/04 15:13:24
Modified files: . : ChangeLog input/regression: tuplet-broken.ly lily : tuplet-bracket.cc Log message: (parallel_beam): broken bracket never is synched to a beam. CVSWeb URLs: http://savannah.gnu.org/cgi-bin/viewcvs/lilypond/lilypond/ChangeLog.diff?tr1=1.3956&tr2=1.3957&r1=text&r2=text http://savannah.gnu.org/cgi-bin/viewcvs/lilypond/lilypond/input/regression/tuplet-broken.ly.diff?tr1=1.2&tr2=1.3&r1=text&r2=text http://savannah.gnu.org/cgi-bin/viewcvs/lilypond/lilypond/lily/tuplet-bracket.cc.diff?tr1=1.91&tr2=1.92&r1=text&r2=text Patches: Index: lilypond/ChangeLog diff -u lilypond/ChangeLog:1.3956 lilypond/ChangeLog:1.3957 --- lilypond/ChangeLog:1.3956 Thu Aug 4 14:46:00 2005 +++ lilypond/ChangeLog Thu Aug 4 15:13:24 2005 @@ -1,5 +1,8 @@ 2005-08-04 Han-Wen Nienhuys <[EMAIL PROTECTED]> + * lily/tuplet-bracket.cc (parallel_beam): broken bracket never is + synched to a beam. + * lily/beam.cc (shift_region_to_valid): divide by zero fix. This fixes beams with a single stem (eg. beams across linebreaks.) Index: lilypond/input/regression/tuplet-broken.ly diff -u lilypond/input/regression/tuplet-broken.ly:1.2 lilypond/input/regression/tuplet-broken.ly:1.3 --- lilypond/input/regression/tuplet-broken.ly:1.2 Thu Aug 4 01:01:12 2005 +++ lilypond/input/regression/tuplet-broken.ly Thu Aug 4 15:13:24 2005 @@ -21,7 +21,7 @@ \override TupletBracket #'edge-text = #(cons (markup #:fontsize 6 - #:arrow-head Y LEFT #f) + #:arrow-head X LEFT #f) (markup #:arrow-head X RIGHT #f)) \times 11/19 { c4 c4 c4 c4 Index: lilypond/lily/tuplet-bracket.cc diff -u lilypond/lily/tuplet-bracket.cc:1.91 lilypond/lily/tuplet-bracket.cc:1.92 --- lilypond/lily/tuplet-bracket.cc:1.91 Thu Aug 4 13:36:43 2005 +++ lilypond/lily/tuplet-bracket.cc Thu Aug 4 15:13:24 2005 @@ -62,21 +62,26 @@ } Grob * -Tuplet_bracket::parallel_beam (Grob *me, Link_array<Grob> const &cols, bool *equally_long) +Tuplet_bracket::parallel_beam (Grob *me_grob, Link_array<Grob> const &cols, bool *equally_long) { /* ugh: code dup. */ + Spanner *me = dynamic_cast<Spanner *> (me_grob); + + if (me->get_bound (LEFT)->break_status_dir () + || me->get_bound (RIGHT)->break_status_dir ()) + return 0; + Grob *s1 = Note_column::get_stem (cols[0]); Grob *s2 = Note_column::get_stem (cols.top ()); Grob *b1 = s1 ? Stem::get_beam (s1) : 0; Grob *b2 = s2 ? Stem::get_beam (s2) : 0; - Spanner *sp = dynamic_cast<Spanner *> (me); *equally_long = false; - if (! (b1 && (b1 == b2) && !sp->is_broken ())) + if (! (b1 && (b1 == b2) && !me->is_broken ())) return 0; extract_grob_set (b1, "stems", beam_stems); _______________________________________________ Lilypond-cvs mailing list Lilypond-cvs@gnu.org http://lists.gnu.org/mailman/listinfo/lilypond-cvs