]> git.donarmstrong.com Git - lilypond.git/blobdiff - scm/define-grobs.scm
Adds in-notes to LilyPond.
[lilypond.git] / scm / define-grobs.scm
index d7bc5ccb00f8b53eb40fcc1b1178f894f68d315e..9e213c6daad1d7b52ea41877447230a7a13d186f 100644 (file)
@@ -80,6 +80,7 @@
        (side-axis . ,Y)
        (staff-padding . 0.25)
        (stencil . ,ly:accidental-interface::print)
+       (use-skylines . #t)
        (X-extent . ,ly:accidental-interface::width)
        (X-offset . ,(ly:make-simple-closure
                      `(,+
 
        (gap . 0.8)
        (neutral-direction . ,DOWN)
-       (positions .  ,(ly:make-simple-closure
-                       (ly:make-simple-closure
-                        (list chain-grob-member-functions
-                          `(,cons 0 0)
-                          ly:beam::calc-least-squares-positions
-                          ly:beam::slope-damping
-                          ly:beam::shift-region-to-valid
-                          ly:beam::quanting
-                          ))))
+       (positions . ,ly:beam::quanting)
 
        ;; this is a hack to set stem lengths, if positions is set.
        (quantized-positions . ,ly:beam::set-stem-lengths)
        (annotation-line . #t)
        (automatically-numbered . ,(grob::calc-property-by-copy 'automatically-numbered))
        (break-visibility . ,inherit-y-parent-visibility)
+       (footnote . #t)
        (footnote-text . ,(grob::calc-property-by-copy 'footnote-text))
        (stencil . ,ly:balloon-interface::print)
        (text . ,(grob::calc-property-by-copy 'text))
        (annotation-balloon . #f)
        (annotation-line . #t)
        (automatically-numbered . ,(grob::calc-property-by-copy 'automatically-numbered))
+       (footnote . #t)
        (footnote-text . ,(grob::calc-property-by-copy 'footnote-text))
        (spanner-placement . ,LEFT)
        (stencil . ,ly:balloon-interface::print-spanner)
        ;; a tuplet bracket.
 
        (connect-to-neighbor . ,ly:tuplet-bracket::calc-connect-to-neighbors)
-       (control-points . ,ly:tuplet-bracket::calc-control-points)
        (direction . ,UP)
        (edge-height . (0.7 . 0.7))
        (padding . 2.0)
        (staff-padding . 0.25)
        (stencil . ,ly:tuplet-bracket::print)
        (thickness . 1.6)
+       (X-positions . ,ly:tuplet-bracket::calc-x-positions)
        (meta . ((class . Spanner)
                 (interfaces . (line-interface
                                tuplet-bracket-interface))))))
     (MensuralLigature
      . (
        (stencil . ,ly:mensural-ligature::print)
-       (thickness . 1.4)
+       (thickness . 1.3)
        (meta . ((class . Spanner)
                 (interfaces . (font-interface
                                mensural-ligature-interface))))))
        (staff-padding . 0.25)
 
        (stencil . ,ly:script-interface::print)
+       (use-skylines . #t)
        (X-offset . ,script-interface::calc-x-offset)
        (Y-offset . ,ly:side-position-interface::y-aligned-side)
        (meta . ((class . Item)
        (non-musical . #t)
        (stencil . ,ly:span-bar::print)
        (X-extent . ,ly:span-bar::width)
-       (Y-extent . ,ly:axis-group-interface::height)
+       (Y-extent . #f)
        (meta . ((class . Item)
-                (object-callbacks . ((pure-Y-common . ,ly:axis-group-interface::calc-pure-y-common)
-                                     (pure-relevant-grobs . ,ly:axis-group-interface::calc-pure-relevant-grobs)))
                 (interfaces . (bar-line-interface
                                font-interface
                                span-bar-interface))))))
 
+    (SpanBarStub
+     . (
+       (elements-filtered . ,ly:pure-from-neighbor-interface::filter-elements)
+        (X-extent . ,grob::x-parent-width)
+       (Y-extent . ,span-bar-stub::height)
+       (meta . ((class . Item)
+                (object-callbacks . ((pure-Y-common . ,ly:axis-group-interface::calc-pure-y-common)
+                                     (pure-relevant-grobs . ,ly:axis-group-interface::calc-pure-relevant-grobs)))
+                (interfaces . (pure-from-neighbor-interface))))))
+
     (StaffGrouper
      . (
        (staff-staff-spacing . ((basic-distance . 9)
     (TupletBracket
      . (
        (connect-to-neighbor . ,ly:tuplet-bracket::calc-connect-to-neighbors)
-       (control-points . ,ly:tuplet-bracket::calc-control-points)
        (cross-staff . ,ly:tuplet-bracket::calc-cross-staff)
        (direction  . ,ly:tuplet-bracket::calc-direction)
        (edge-height . (0.7 . 0.7))
        (staff-padding . 0.25)
        (stencil . ,ly:tuplet-bracket::print)
        (thickness . 1.6)
+       (X-positions . ,ly:tuplet-bracket::calc-x-positions)
 
        (meta . ((class . Spanner)
                 (interfaces . (line-interface
        (font-size . -2)
        (stencil . ,ly:tuplet-number::print)
        (text . ,tuplet-number::calc-denominator-text)
+       (X-offset . ,ly:tuplet-number::calc-x-offset)
+       (Y-offset . ,ly:tuplet-number::calc-y-offset)
        (meta . ((class . Spanner)
                 (interfaces . (font-interface
                                text-interface
     (,ly:side-position-interface::y-aligned-side . ,ly:side-position-interface::pure-y-aligned-side)
     (,ly:slur::height . ,ly:slur::pure-height)
     (,ly:slur::outside-slur-callback . ,ly:slur::pure-outside-slur-callback)
+    (,span-bar-stub::height . ,ly:axis-group-interface::pure-height)
     (,ly:stem::calc-stem-begin-position . ,ly:stem::pure-calc-stem-begin-position)
     (,ly:stem::calc-stem-end-position . ,ly:stem::pure-calc-stem-end-position)
     (,stem::length . ,stem::pure-length)
           (ly:eval-simple-closure (car args) unpure start end)
           (if (not (procedure? unpure))
               unpure
-              (apply (cdr pure)
+              (apply unpure
                      (append
                        (list (car args) start end)
                        (cdr args))))))