lilypond-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Issue 1080: Regression: bar lines in double bar are positioned too close


From: Marc Hohl
Subject: Issue 1080: Regression: bar lines in double bar are positioned too close together
Date: Sun, 16 May 2010 10:35:22 +0200
User-agent: Thunderbird 2.0.0.24 (X11/20100317)

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 <address@hidden>
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


reply via email to

[Prev in Thread] Current Thread [Next in Thread]