summaryrefslogtreecommitdiff
path: root/ly
diff options
context:
space:
mode:
authorDavid Kastrup <dak@gnu.org>2015-09-09 17:29:52 +0200
committerDavid Kastrup <dak@gnu.org>2015-09-17 09:53:18 +0200
commite82c90ef55c039111ae5e6247ef6acbc4ef72226 (patch)
tree5869539d65f579bde7df51bf6b6362ed3e71591a /ly
parentce4eeda96f9e197836578ce74e79a106f46ddab2 (diff)
Issue 4601/2: Let \shape use grob-transformer like \offset does
Diffstat (limited to 'ly')
-rw-r--r--ly/music-functions-init.ly12
1 files changed, 5 insertions, 7 deletions
diff --git a/ly/music-functions-init.ly b/ly/music-functions-init.ly
index fe270aef98..e976cb6644 100644
--- a/ly/music-functions-init.ly
+++ b/ly/music-functions-init.ly
@@ -1616,15 +1616,11 @@ control-point. If @var{item} is a string, the result is
@code{\\once\\override} for the specified grob type. If @var{item} is
a music expression, the result is the same music expression with an
appropriate tweak applied.")
- (define (shape-curve grob)
+ (define (shape-curve grob coords)
(let* ((orig (ly:grob-original grob))
(siblings (if (ly:spanner? grob)
(ly:spanner-broken-into orig) '()))
- (total-found (length siblings))
- (function (assoc-get 'control-points
- (reverse (ly:grob-basic-properties grob))))
- (coords (function grob)))
-
+ (total-found (length siblings)))
(define (offset-control-points offsets)
(if (null? offsets)
coords
@@ -1647,7 +1643,9 @@ appropriate tweak applied.")
(if (>= total-found 2)
(helper siblings offsets)
(offset-control-points (car offsets)))))
- (once (propertyTweak 'control-points shape-curve item)))
+ (once (propertyTweak 'control-points
+ (grob-transformer 'control-points shape-curve)
+ item)))
shiftDurations =
#(define-music-function (dur dots arg)