/*
This file is part of LilyPond, the GNU music typesetter.
- Copyright (C) 2004--2014 Han-Wen Nienhuys <hanwen@xs4all.nl>
+ Copyright (C) 2004--2015 Han-Wen Nienhuys <hanwen@xs4all.nl>
LilyPond is free software: you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
{
DECLARE_SCHEME_CALLBACK (print, (SCM));
DECLARE_SCHEME_CALLBACK (set_spacing_rods, (SCM));
- DECLARE_GROB_INTERFACE ();
};
static void
SCM
Ledger_line_spanner::set_spacing_rods (SCM smob)
{
- Spanner *me = dynamic_cast<Spanner *> (unsmob_grob (smob));
+ Spanner *me = unsmob<Spanner> (smob);
// find size of note heads.
Grob *staff = Staff_symbol_referencer::get_staff_symbol (me);
SCM
Ledger_line_spanner::print (SCM smob)
{
- Spanner *me = dynamic_cast<Spanner *> (unsmob_grob (smob));
+ Spanner *me = unsmob<Spanner> (smob);
extract_grob_set (me, "note-heads", heads);
Axis a = Axis (i);
common[a] = common_refpoint_of_array (heads, me, a);
for (vsize i = heads.size (); i--;)
- if (Grob *g = unsmob_grob (me->get_object ("accidental-grob")))
+ if (Grob *g = unsmob<Grob> (me->get_object ("accidental-grob")))
common[a] = common[a]->common_refpoint (g, a);
}
Interval x_extent = ledger_size;
if (i == 0)
- if (Grob *g = unsmob_grob (h->get_object ("accidental-grob")))
+ if (Grob *g = unsmob<Grob> (h->get_object ("accidental-grob")))
{
Interval accidental_size = g->extent (common[X_AXIS], X_AXIS);
Real d
struct Ledgered_interface
{
- DECLARE_GROB_INTERFACE ();
};
ADD_INTERFACE (Ledgered_interface,