2 tuplet-number.cc -- implement Tuplet_number
4 source file of the GNU LilyPond music typesetter
6 (c) 2005--2006 Han-Wen Nienhuys <hanwen@xs4all.nl>
10 #include "tuplet-bracket.hh"
11 #include "text-interface.hh"
17 DECLARE_SCHEME_CALLBACK(print, (SCM));
18 static bool has_interface (Grob *);
22 MAKE_SCHEME_CALLBACK(Tuplet_number, print, 1);
24 Tuplet_number::print (SCM smob)
26 Stencil *stc = unsmob_stencil (Text_interface::print (smob));
28 stc->align_to (X_AXIS, CENTER);
29 stc->align_to (Y_AXIS, CENTER);
31 Spanner *me = unsmob_spanner (smob);
32 Spanner *tuplet = unsmob_spanner (me->get_object ("bracket"));
33 SCM cpoints = tuplet->get_property ("control-points");
34 Drul_array<Offset> points;
35 points[LEFT] = ly_scm2offset (scm_car (cpoints));
36 points[RIGHT] = ly_scm2offset (scm_cadr (cpoints));
38 stc->translate ((points[RIGHT] + points[LEFT]) / 2);
40 return stc->smobbed_copy ();
44 ADD_INTERFACE (Tuplet_number,
45 "tuplet-number-interface",
46 "The number for a bracket. "