--- /dev/null
+\version "2.15.6"
+\header{
+ texidoc="Stem tremolos count in a note column's horizontal skyline.
+"
+}
+
+
+\relative c'' {
+ \autoBeamOff
+ \override NoteHead #'stencil = #(ly:make-stencil '() '(0 . 0) '(0 . 0))
+ \repeat unfold 8 { b8:32 }
+}
DECLARE_SCHEME_CALLBACK (calc_slope, (SCM));
DECLARE_SCHEME_CALLBACK (calc_width, (SCM));
DECLARE_SCHEME_CALLBACK (print, (SCM));
- DECLARE_SCHEME_CALLBACK (height, (SCM));
DECLARE_SCHEME_CALLBACK (width, (SCM));
DECLARE_SCHEME_CALLBACK (calc_style, (SCM));
+ DECLARE_SCHEME_CALLBACK (pure_height, (SCM, SCM, SCM));
static Stencil raw_stencil (Grob *, Real slope, Direction stemdir);
static Stencil translated_stencil (Grob*, Real slope);
static Stencil untranslated_stencil (Grob*, Real slope);
-MAKE_SCHEME_CALLBACK (Stem_tremolo, height, 1);
+MAKE_SCHEME_CALLBACK (Stem_tremolo, pure_height, 3);
SCM
-Stem_tremolo::height (SCM smob)
+Stem_tremolo::pure_height (SCM smob, SCM, SCM)
{
Grob *me = unsmob_grob (smob);
/*
Cannot use the real slope, since it looks at the Beam.
*/
- Stencil s1 (translated_stencil (me, 0.35));
+ Stencil s1 (untranslated_stencil (me, 0.35));
return ly_interval2scm (s1.extent (Y_AXIS));
}
(stencil . ,ly:stem-tremolo::print)
(style . ,ly:stem-tremolo::calc-style)
(X-extent . ,ly:stem-tremolo::width)
- (Y-extent . ,ly:stem-tremolo::height)
(meta . ((class . Item)
(interfaces . (stem-tremolo-interface))))))
(,ly:arpeggio::brew-chord-bracket . ,ly:arpeggio::pure-height)
(,ly:arpeggio::brew-chord-slur . ,ly:arpeggio::pure-height)
(,ly:hairpin::print . ,ly:hairpin::pure-height)
+ (,ly:stem-tremolo::print . ,ly:stem-tremolo::pure-height)
(,ly:volta-bracket-interface::print . ,volta-bracket-interface::pure-height)))
;; ly:grob::stencil-extent is safe if the print callback is safe too
ly:stem::height
ly:stem::offset-callback
ly:stem::print
- ly:stem-tremolo::height
ly:stem-tremolo::print
ly:sustain-pedal::print
ly:system-start-delimiter::print