-/*
- Extend the spanner over its Tie constituents.
- */
-MAKE_SCHEME_CALLBACK (Tie_column, before_line_breaking, 1);
-SCM
-Tie_column::before_line_breaking (SCM smob)
-{
- Spanner *me = dynamic_cast<Spanner*> (unsmob_grob (smob));
- for (SCM s = me->get_property ("ties"); scm_is_pair (s); s = scm_cdr (s))
- {
- Spanner *tie = dynamic_cast<Spanner*> (unsmob_grob (scm_car (s)));
- Direction dir = LEFT;
- do
- {
- if (dir * Paper_column::get_rank (tie->get_bound (dir)->get_column ())
- > dir * Paper_column::get_rank (me->get_bound (dir)->get_column ()))
- {
- me->set_bound (dir, Tie::head (tie, dir));
- }
- }
- while (flip (&dir) != LEFT);
- }
- return SCM_UNSPECIFIED;
-}
+ADD_INTERFACE (Tie_column,
+ "Object that sets directions of multiple ties in a tied chord.",