LEFT | RIGHT |
1 ;;;; This file is part of LilyPond, the GNU music typesetter. | 1 ;;;; This file is part of LilyPond, the GNU music typesetter. |
2 ;;;; | 2 ;;;; |
3 ;;;; Copyright (C) 1998--2011 Han-Wen Nienhuys <hanwen@xs4all.nl> | 3 ;;;; Copyright (C) 1998--2011 Han-Wen Nienhuys <hanwen@xs4all.nl> |
4 ;;;; Jan Nieuwenhuizen <janneke@gnu.org> | 4 ;;;; Jan Nieuwenhuizen <janneke@gnu.org> |
5 ;;;; | 5 ;;;; |
6 ;;;; LilyPond is free software: you can redistribute it and/or modify | 6 ;;;; LilyPond is free software: you can redistribute it and/or modify |
7 ;;;; it under the terms of the GNU General Public License as published by | 7 ;;;; it under the terms of the GNU General Public License as published by |
8 ;;;; the Free Software Foundation, either version 3 of the License, or | 8 ;;;; the Free Software Foundation, either version 3 of the License, or |
9 ;;;; (at your option) any later version. | 9 ;;;; (at your option) any later version. |
10 ;;;; | 10 ;;;; |
(...skipping 866 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
877 text-script-interface)))))) | 877 text-script-interface)))))) |
878 | 878 |
879 (FootnoteItem | 879 (FootnoteItem |
880 . ( | 880 . ( |
881 (annotation-balloon . #f) | 881 (annotation-balloon . #f) |
882 (annotation-line . #t) | 882 (annotation-line . #t) |
883 (break-visibility . ,inherit-y-parent-visibility) | 883 (break-visibility . ,inherit-y-parent-visibility) |
884 (footnote-text . ,(grob::calc-property-by-copy 'footnote-text)) | 884 (footnote-text . ,(grob::calc-property-by-copy 'footnote-text)) |
885 (stencil . ,ly:balloon-interface::print) | 885 (stencil . ,ly:balloon-interface::print) |
886 (text . ,(grob::calc-property-by-copy 'text)) | 886 (text . ,(grob::calc-property-by-copy 'text)) |
| 887 (X-extent . #f) |
887 (Y-extent . #f) | 888 (Y-extent . #f) |
888 (X-offset . ,(grob::calc-property-by-copy 'X-offset)) | 889 (X-offset . ,(grob::calc-property-by-copy 'X-offset)) |
889 (Y-offset . ,(grob::calc-property-by-copy 'Y-offset)) | 890 (Y-offset . ,(grob::calc-property-by-copy 'Y-offset)) |
890 (meta . ((class . Item) | 891 (meta . ((class . Item) |
891 (interfaces . (balloon-interface | 892 (interfaces . (balloon-interface |
892 footnote-interface | 893 footnote-interface |
893 font-interface | 894 font-interface |
894 text-interface)))))) | 895 text-interface)))))) |
895 | 896 |
896 (FootnoteSpanner | 897 (FootnoteSpanner |
897 . ( | 898 . ( |
898 (annotation-balloon . #f) | 899 (annotation-balloon . #f) |
899 (annotation-line . #t) | 900 (annotation-line . #t) |
900 (footnote-text . ,(grob::calc-property-by-copy 'footnote-text)) | 901 (footnote-text . ,(grob::calc-property-by-copy 'footnote-text)) |
901 (spanner-placement . ,LEFT) | 902 (spanner-placement . ,LEFT) |
902 (stencil . ,ly:balloon-interface::print-spanner) | 903 (stencil . ,ly:balloon-interface::print-spanner) |
903 (text . ,(grob::calc-property-by-copy 'text)) | 904 (text . ,(grob::calc-property-by-copy 'text)) |
| 905 (X-extent . #f) |
904 (Y-extent . #f) | 906 (Y-extent . #f) |
905 (X-offset . ,(grob::calc-property-by-copy 'X-offset)) | 907 (X-offset . ,(grob::calc-property-by-copy 'X-offset)) |
906 (Y-offset . ,(grob::calc-property-by-copy 'Y-offset)) | 908 (Y-offset . ,(grob::calc-property-by-copy 'Y-offset)) |
907 (meta . ((class . Spanner) | 909 (meta . ((class . Spanner) |
908 (interfaces . (balloon-interface | 910 (interfaces . (balloon-interface |
909 footnote-interface | 911 footnote-interface |
910 footnote-spanner-interface | 912 footnote-spanner-interface |
911 font-interface | 913 font-interface |
912 text-interface)))))) | 914 text-interface)))))) |
913 | 915 |
(...skipping 382 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1296 font-interface | 1298 font-interface |
1297 metronome-mark-interface | 1299 metronome-mark-interface |
1298 self-alignment-interface | 1300 self-alignment-interface |
1299 side-position-interface | 1301 side-position-interface |
1300 text-interface)))))) | 1302 text-interface)))))) |
1301 | 1303 |
1302 (MultiMeasureRest | 1304 (MultiMeasureRest |
1303 . ( | 1305 . ( |
1304 (expand-limit . 10) | 1306 (expand-limit . 10) |
1305 (hair-thickness . 2.0) | 1307 (hair-thickness . 2.0) |
| 1308 (round-up-exceptions . ()) |
1306 (padding . 1) | 1309 (padding . 1) |
1307 (spacing-pair . (break-alignment . break-alignment)) | 1310 (spacing-pair . (break-alignment . break-alignment)) |
1308 (springs-and-rods . ,ly:multi-measure-rest::set-spacing-rods) | 1311 (springs-and-rods . ,ly:multi-measure-rest::set-spacing-rods) |
1309 (staff-position . 0) | |
1310 (stencil . ,ly:multi-measure-rest::print) | 1312 (stencil . ,ly:multi-measure-rest::print) |
1311 (thick-thickness . 6.6) | 1313 (thick-thickness . 6.6) |
1312 ;; See Wanske pp. 125 | 1314 ;; See Wanske pp. 125 |
1313 » (usable-duration-logs . (0 -1 -2 -3)) | 1315 » (usable-duration-logs . ,(iota 4 -3)) |
1314 (Y-offset . ,ly:staff-symbol-referencer::callback) | 1316 (Y-offset . ,ly:staff-symbol-referencer::callback) |
1315 (meta . ((class . Spanner) | 1317 (meta . ((class . Spanner) |
1316 (interfaces . (font-interface | 1318 (interfaces . (font-interface |
1317 multi-measure-interface | 1319 multi-measure-interface |
1318 multi-measure-rest-interface | 1320 multi-measure-rest-interface |
1319 rest-interface | 1321 rest-interface |
1320 staff-symbol-referencer-interface)))))) | 1322 staff-symbol-referencer-interface)))))) |
1321 | 1323 |
1322 (MultiMeasureRestNumber | 1324 (MultiMeasureRestNumber |
1323 . ( | 1325 . ( |
(...skipping 81 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1405 (Y-extent . ,ly:axis-group-interface::height) | 1407 (Y-extent . ,ly:axis-group-interface::height) |
1406 (meta . ((class . Item) | 1408 (meta . ((class . Item) |
1407 (object-callbacks . ((pure-Y-common . ,ly:axis-group-interface:
:calc-pure-y-common) | 1409 (object-callbacks . ((pure-Y-common . ,ly:axis-group-interface:
:calc-pure-y-common) |
1408 (pure-relevant-grobs . ,ly:axis-group-inte
rface::calc-pure-relevant-grobs))) | 1410 (pure-relevant-grobs . ,ly:axis-group-inte
rface::calc-pure-relevant-grobs))) |
1409 (interfaces . (axis-group-interface | 1411 (interfaces . (axis-group-interface |
1410 note-collision-interface)))))) | 1412 note-collision-interface)))))) |
1411 | 1413 |
1412 (NoteColumn | 1414 (NoteColumn |
1413 . ( | 1415 . ( |
1414 (axes . (,X ,Y)) | 1416 (axes . (,X ,Y)) |
1415 » (core-interfaces . (rhythmic-head-interface stem-interface)) | 1417 » (bound-alignment-interfaces . (rhythmic-head-interface stem-interface)) |
1416 (horizontal-skylines . ,ly:separation-item::calc-skylines) | 1418 (horizontal-skylines . ,ly:separation-item::calc-skylines) |
1417 (skyline-vertical-padding . 0.15) | 1419 (skyline-vertical-padding . 0.15) |
1418 (X-extent . ,ly:axis-group-interface::width) | 1420 (X-extent . ,ly:axis-group-interface::width) |
1419 (Y-extent . ,ly:axis-group-interface::height) | 1421 (Y-extent . ,ly:axis-group-interface::height) |
1420 (meta . ((class . Item) | 1422 (meta . ((class . Item) |
1421 (object-callbacks . ((pure-Y-common . ,ly:axis-group-interface:
:calc-pure-y-common) | 1423 (object-callbacks . ((pure-Y-common . ,ly:axis-group-interface:
:calc-pure-y-common) |
1422 (pure-relevant-grobs . ,ly:axis-group-inte
rface::calc-pure-relevant-grobs))) | 1424 (pure-relevant-grobs . ,ly:axis-group-inte
rface::calc-pure-relevant-grobs))) |
1423 (interfaces . (axis-group-interface | 1425 (interfaces . (axis-group-interface |
1424 note-column-interface | 1426 note-column-interface |
1425 separation-item-interface)))))) | 1427 separation-item-interface)))))) |
(...skipping 84 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1510 ottava-bracket-interface | 1512 ottava-bracket-interface |
1511 side-position-interface | 1513 side-position-interface |
1512 text-interface)))))) | 1514 text-interface)))))) |
1513 | 1515 |
1514 | 1516 |
1515 (PaperColumn | 1517 (PaperColumn |
1516 . ( | 1518 . ( |
1517 (allow-loose-spacing . #t) | 1519 (allow-loose-spacing . #t) |
1518 (axes . (,X)) | 1520 (axes . (,X)) |
1519 (before-line-breaking . ,ly:paper-column::before-line-breaking) | 1521 (before-line-breaking . ,ly:paper-column::before-line-breaking) |
1520 » (core-interfaces . (note-column-interface)) | 1522 » (bound-alignment-interfaces . (note-column-interface)) |
1521 (horizontal-skylines . ,ly:separation-item::calc-skylines) | 1523 (horizontal-skylines . ,ly:separation-item::calc-skylines) |
1522 (keep-inside-line . #t) | 1524 (keep-inside-line . #t) |
1523 ;; (stencil . ,ly:paper-column::print) | 1525 ;; (stencil . ,ly:paper-column::print) |
1524 (X-extent . ,ly:axis-group-interface::width) | 1526 (X-extent . ,ly:axis-group-interface::width) |
1525 | 1527 |
1526 ;; debugging | 1528 ;; debugging |
1527 ;; (font-size . -6) (font-name . "sans") (Y-extent
. #f) | 1529 ;; (font-size . -6) (font-name . "sans") (Y-extent
. #f) |
1528 (meta . ((class . Paper_column) | 1530 (meta . ((class . Paper_column) |
1529 (object-callbacks . ((pure-Y-common . ,ly:axis-group-interface:
:calc-pure-y-common) | 1531 (object-callbacks . ((pure-Y-common . ,ly:axis-group-interface:
:calc-pure-y-common) |
1530 (pure-relevant-grobs . ,ly:axis-group-inte
rface::calc-pure-relevant-grobs))) | 1532 (pure-relevant-grobs . ,ly:axis-group-inte
rface::calc-pure-relevant-grobs))) |
(...skipping 400 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
1931 stem-interface)))))) | 1933 stem-interface)))))) |
1932 | 1934 |
1933 (StemTremolo | 1935 (StemTremolo |
1934 . ( | 1936 . ( |
1935 (beam-thickness . 0.48) ; staff-space | 1937 (beam-thickness . 0.48) ; staff-space |
1936 (beam-width . ,ly:stem-tremolo::calc-width) ; staff-space | 1938 (beam-width . ,ly:stem-tremolo::calc-width) ; staff-space |
1937 (slope . ,ly:stem-tremolo::calc-slope) | 1939 (slope . ,ly:stem-tremolo::calc-slope) |
1938 (stencil . ,ly:stem-tremolo::print) | 1940 (stencil . ,ly:stem-tremolo::print) |
1939 (style . ,ly:stem-tremolo::calc-style) | 1941 (style . ,ly:stem-tremolo::calc-style) |
1940 (X-extent . ,ly:stem-tremolo::width) | 1942 (X-extent . ,ly:stem-tremolo::width) |
1941 (Y-extent . ,ly:stem-tremolo::height) | |
1942 (meta . ((class . Item) | 1943 (meta . ((class . Item) |
1943 (interfaces . (stem-tremolo-interface)))))) | 1944 (interfaces . (stem-tremolo-interface)))))) |
1944 | 1945 |
1945 (StringNumber | 1946 (StringNumber |
1946 . ( | 1947 . ( |
1947 (avoid-slur . around) | 1948 (avoid-slur . around) |
1948 (font-encoding . fetaText) | 1949 (font-encoding . fetaText) |
1949 (font-size . -5) ; don't overlap when next to heads. | 1950 (font-size . -5) ; don't overlap when next to heads. |
1950 (padding . 0.5) | 1951 (padding . 0.5) |
1951 (script-priority . 100) | 1952 (script-priority . 100) |
(...skipping 629 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2581 | 2582 |
2582 ;; Sometimes we have grobs with (Y-extent . ,ly:grob::stencil-height) | 2583 ;; Sometimes we have grobs with (Y-extent . ,ly:grob::stencil-height) |
2583 ;; and the print function is not pure, but there is a easy way to | 2584 ;; and the print function is not pure, but there is a easy way to |
2584 ;; figure out the Y-extent from the print function. | 2585 ;; figure out the Y-extent from the print function. |
2585 (define pure-print-to-height-conversions | 2586 (define pure-print-to-height-conversions |
2586 `( | 2587 `( |
2587 (,ly:arpeggio::print . ,ly:arpeggio::pure-height) | 2588 (,ly:arpeggio::print . ,ly:arpeggio::pure-height) |
2588 (,ly:arpeggio::brew-chord-bracket . ,ly:arpeggio::pure-height) | 2589 (,ly:arpeggio::brew-chord-bracket . ,ly:arpeggio::pure-height) |
2589 (,ly:arpeggio::brew-chord-slur . ,ly:arpeggio::pure-height) | 2590 (,ly:arpeggio::brew-chord-slur . ,ly:arpeggio::pure-height) |
2590 (,ly:hairpin::print . ,ly:hairpin::pure-height) | 2591 (,ly:hairpin::print . ,ly:hairpin::pure-height) |
| 2592 (,ly:stem-tremolo::print . ,ly:stem-tremolo::pure-height) |
2591 (,ly:volta-bracket-interface::print . ,volta-bracket-interface::pure-height)
)) | 2593 (,ly:volta-bracket-interface::print . ,volta-bracket-interface::pure-height)
)) |
2592 | 2594 |
2593 ;; ly:grob::stencil-extent is safe if the print callback is safe too | 2595 ;; ly:grob::stencil-extent is safe if the print callback is safe too |
2594 (define (pure-stencil-height grob start stop) | 2596 (define (pure-stencil-height grob start stop) |
2595 (let* ((sten (ly:grob-property-data grob 'stencil)) | 2597 (let* ((sten (ly:grob-property-data grob 'stencil)) |
2596 (pure-height-callback (assoc-get sten pure-print-to-height-conversions)
)) | 2598 (pure-height-callback (assoc-get sten pure-print-to-height-conversions)
)) |
2597 (cond ((or | 2599 (cond ((or |
2598 (ly:stencil? sten) | 2600 (ly:stencil? sten) |
2599 (memq sten pure-print-callbacks)) | 2601 (memq sten pure-print-callbacks)) |
2600 (ly:grob::stencil-height grob)) | 2602 (ly:grob::stencil-height grob)) |
(...skipping 52 matching lines...) Expand 10 before | Expand all | Expand 10 after Loading... |
2653 (if (not (procedure? unpure)) | 2655 (if (not (procedure? unpure)) |
2654 unpure | 2656 unpure |
2655 (if (memq unpure pure-functions) | 2657 (if (memq unpure pure-functions) |
2656 (apply unpure args) | 2658 (apply unpure args) |
2657 (let ((pure (assq unpure pure-conversions-alist))) | 2659 (let ((pure (assq unpure pure-conversions-alist))) |
2658 (if pure | 2660 (if pure |
2659 (apply (cdr pure) | 2661 (apply (cdr pure) |
2660 (append | 2662 (append |
2661 (list (car args) start end) | 2663 (list (car args) start end) |
2662 (cdr args))))))))) | 2664 (cdr args))))))))) |
LEFT | RIGHT |