X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=lily%2Fstencil.cc;h=41eb2f1e852498c7fc0cf454f9c9c892b124b307;hb=0fb68b6e1f4bbc90e173528a2f25a0672b04cd98;hp=51f051d597f3588e954db618928d7f734173e77e;hpb=99b6f3aa3558b01c9d4158b19a1f1794c534f89c;p=lilypond.git diff --git a/lily/stencil.cc b/lily/stencil.cc index 51f051d597..41eb2f1e85 100644 --- a/lily/stencil.cc +++ b/lily/stencil.cc @@ -1,7 +1,7 @@ /* This file is part of LilyPond, the GNU music typesetter. - Copyright (C) 1997--2014 Han-Wen Nienhuys + Copyright (C) 1997--2015 Han-Wen Nienhuys LilyPond is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by @@ -25,7 +25,6 @@ #include "string-convert.hh" #include "warn.hh" -#include "ly-smobs.icc" Stencil::Stencil () { @@ -39,24 +38,13 @@ Stencil::Stencil (Box b, SCM func) dim_ = b; } -int -Stencil::print_smob (SCM, SCM port, scm_print_state *) -{ - scm_puts ("#", port); - return 1; -} - SCM -Stencil::mark_smob (SCM smob) +Stencil::mark_smob () { - Stencil *s = (Stencil *) SCM_CELL_WORD_1 (smob); - return s->expr_; + return expr_; } -IMPLEMENT_SIMPLE_SMOBS (Stencil); -IMPLEMENT_TYPE_P (Stencil, "ly:stencil?"); -IMPLEMENT_DEFAULT_EQUAL_P (Stencil); +const char Stencil::type_p_name_[] = "ly:stencil?"; Interval Stencil::extent (Axis a) const @@ -182,8 +170,7 @@ Stencil::translate (Offset o) expr_ = scm_list_n (ly_symbol2scm ("translate-stencil"), ly_offset2scm (o), expr_, SCM_UNDEFINED); - if (!is_empty ()) - dim_.translate (o); + dim_.translate (o); } void