My first patch was way too trivial and didn't cover all cases (obviously, I made some errors while testing), so please ignore it.
Now, I have created a patch which 1) restores the former width of the double bar line 2) works properly with the segno sign For further clarification: I changed the definition of the double bar line in lily/bar-line.cc to center the segno sign in respect to the double bar and the double span bar. I misunderstood the arguments of the stencil.add_at_edge function, so the distance between the double bar lines got corrupted. Sorry. IMHO, the double bar fits fine with the segno sign the way it is, we don't need a narrower double bar in combination with the segno sign. I hope that I cleaned up the mess I introduced with the segno stuff. Thanks, Marc
From 936dd7d3c0794d950a1046e76d5ce273014fcc7b Mon Sep 17 00:00:00 2001 From: Marc Hohl <[email protected]> Date: Fri, 14 May 2010 08:21:03 +0200 Subject: [PATCH] Issue 1080: corrected spacing in double bar lines --- lily/bar-line.cc | 12 ++++++------ 1 files changed, 6 insertions(+), 6 deletions(-) diff --git a/lily/bar-line.cc b/lily/bar-line.cc index d3f21e5..2ace231 100644 --- a/lily/bar-line.cc +++ b/lily/bar-line.cc @@ -199,15 +199,15 @@ Bar_line::compound_barline (Grob *me, string str, Real h, m.add_at_edge (X_AXIS, RIGHT, thin, 0); m.add_at_edge (X_AXIS, RIGHT, thin, thinkern); */ - m.add_at_edge (X_AXIS, LEFT, thin, thinkern / 2); - m.add_at_edge (X_AXIS, RIGHT, thin, thinkern / 2); + m.add_at_edge (X_AXIS, LEFT, thin, thinkern); + m.add_at_edge (X_AXIS, RIGHT, thin, thinkern); } else if (str.find ("S") != NPOS || str == "|._.|") { // Handle all varsegno stuff Stencil segno; - segno.add_at_edge (X_AXIS, LEFT, thin, thinkern / 2); - segno.add_at_edge (X_AXIS, RIGHT, thin, thinkern / 2); + segno.add_at_edge (X_AXIS, LEFT, thin, thinkern); + segno.add_at_edge (X_AXIS, RIGHT, thin, thinkern); segno.add_stencil (Font_interface::get_default_font (me)->find_by_name ("scripts.varsegno")); if (str == "S") @@ -219,7 +219,7 @@ Bar_line::compound_barline (Grob *me, string str, Real h, m.add_at_edge (X_AXIS, RIGHT, thick, 0); m.add_at_edge (X_AXIS, RIGHT, thin, kern); m.add_at_edge (X_AXIS, RIGHT, colon, kern); - m.add_at_edge (X_AXIS, LEFT, segno, thinkern); + m.add_at_edge (X_AXIS, RIGHT, segno, thinkern); } else if (str == ":|S" || str == ":|S.") { @@ -244,7 +244,7 @@ Bar_line::compound_barline (Grob *me, string str, Real h, Real segno_width = segno.extent (X_AXIS).length (); m.add_at_edge (X_AXIS, LEFT, thick, 0); m.add_at_edge (X_AXIS, LEFT, thin, kern); - m.add_at_edge (X_AXIS, RIGHT, thick, segno_width + 2 * thinkern); + m.add_at_edge (X_AXIS, RIGHT, thick, segno_width + 2 * thinkern); // + 2 * thinkern m.add_at_edge (X_AXIS, RIGHT, thin, kern); } // end varsegno block -- 1.5.4.3
_______________________________________________ lilypond-devel mailing list [email protected] http://lists.gnu.org/mailman/listinfo/lilypond-devel
