#include <map>
using namespace std;
-#include "item.hh"
#include "note-head.hh"
#include "staff-symbol-referencer.hh"
#include "staff-symbol.hh"
Interval x_extent,
Real left_shorten);
- static bool has_interface (Grob *);
+ DECLARE_GROB_INTERFACE();
};
Stencil
// find size of note heads.
Grob *staff = Staff_symbol_referencer::get_staff_symbol (me);
if (!staff)
- return SCM_EOL;
+ {
+ me->suicide ();
+ return SCM_EOL;
+ }
Real min_length_fraction
= robust_scm2double (me->get_property ("minimum-length-fraction"), 0.15);
}
ADD_INTERFACE (Ledger_line_spanner,
- "ledger-line-interface",
"This spanner draws the ledger lines of a staff.\n"
"This is a separate grob because it has to process\n"
"all potential collisions between all note heads.",
/* properties */
+ "gap "
+ "length-fraction "
+ "minimum-length-fraction "
"note-heads "
"thickness "
- "minimum-length-fraction "
- "length-fraction "
- "gap");
+ );
struct Ledgered_interface
{
- static bool has_interface (Grob *);
+ DECLARE_GROB_INTERFACE();
};
ADD_INTERFACE (Ledgered_interface,
- "ledgered-interface",
"Objects that need ledger lines, typically "
- "note heads. See also @ref{ledger-line-interface}.",
+ "note heads. See also @ref{ledger-line-spanner-interface}.",
"no-ledgers");