- Box b (p->extent (p, X_AXIS),
- p->extent (p, Y_AXIS));
+ Offset off (me->relative_coordinate (p, X_AXIS),
+ me->relative_coordinate (p, Y_AXIS));
+
+ return internal_balloon_print (me, p, off);
+}
+
+MAKE_SCHEME_CALLBACK (Balloon_interface, print_spanner, 1);
+SCM
+Balloon_interface::print_spanner (SCM smob)
+{
+ Spanner *me = Spanner::unsmob (smob);
+ Spanner *orig = dynamic_cast<Spanner *> (me->original ());
+
+ if (orig)
+ {
+ Direction spanner_placement = robust_scm2dir (me->get_property ("spanner-placement"), LEFT);
+
+ Spanner *wanted = (spanner_placement != RIGHT)
+ ? orig->broken_intos_[0]
+ : orig->broken_intos_.back ();