X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=lily%2Fstencil-scheme.cc;h=66f182593186240567c0b34a38e71a71565fb075;hb=9f3572d98bb948c9689cd1f75401a029451fa001;hp=2669e14808b2ad8f12def8efed9e8d8585008d77;hpb=04265f11d1f21416ccebd2dcaa1d903dc781b36e;p=lilypond.git diff --git a/lily/stencil-scheme.cc b/lily/stencil-scheme.cc index 2669e14808..66f1825931 100644 --- a/lily/stencil-scheme.cc +++ b/lily/stencil-scheme.cc @@ -213,37 +213,23 @@ LY_DEFINE (ly_stencil_add, "ly:stencil-add", } LY_DEFINE (ly_make_stencil, "ly:make-stencil", - 1, 2, 0, (SCM expr, SCM xext, SCM yext), + 3, 0, 0, (SCM expr, SCM xext, SCM yext), " \n" "Stencils are a device independent output expressions." "They carry two pieces of information: \n\n" "1: a specification of how to print this object. " "This specification is processed by the output backends, " " for example @file{scm/output-ps.scm}.\n\n" - "2: the vertical and horizontal extents of the object.\n\n" - "If the extents are unspecified, they are taken to be empty." - ) + "2: the vertical and horizontal extents of the object.\n\n") { SCM_ASSERT_TYPE (!scm_is_pair (expr) || is_stencil_head (scm_car (expr)), expr, SCM_ARG1, __FUNCTION__, "registered stencil expression"); + SCM_ASSERT_TYPE (is_number_pair (xext), xext, SCM_ARG2, __FUNCTION__, "number pair"); + SCM_ASSERT_TYPE (is_number_pair (yext), yext, SCM_ARG3, __FUNCTION__, "number pair"); - Interval x; - if (xext != SCM_UNDEFINED) - { - SCM_ASSERT_TYPE (is_number_pair (xext), xext, SCM_ARG2, __FUNCTION__, "number pair"); - x = ly_scm2interval (xext); - } - - Interval y; - if (yext != SCM_UNDEFINED) - { - SCM_ASSERT_TYPE (is_number_pair (yext), yext, SCM_ARG3, __FUNCTION__, "number pair"); - y = ly_scm2interval (yext); - } - - Box b (x, y); + Box b (ly_scm2interval (xext), ly_scm2interval (yext)); Stencil s (b, expr); return s.smobbed_copy (); }