- Grob *cx = common_refpoint_of_array (gs, me, X_AXIS);
- cx = cx->common_refpoint (sp->get_bound (LEFT), X_AXIS);
- cx = cx->common_refpoint (sp->get_bound (RIGHT), X_AXIS);
-
- Interval ext = gs.top ()->extent (cx, X_AXIS);
- ext.unite (gs[0]->extent (cx, X_AXIS));
-
- Drul_array<Real> edge_height = robust_scm2interval (me->get_property ("edge-height"),
- Interval (1.0, 1.0));
-
- Drul_array<Real> flare = robust_scm2interval (me->get_property ("bracket-flare"),
- Interval (0, 0));
-
- Drul_array<Real> shorten = robust_scm2interval (me->get_property ("shorten-pair"),
- Interval (0, 0));
-
- // Make sure that it points in the correct direction:
- Real dir = get_grob_direction (me);
- scale_drul (&edge_height, -dir);
-
- Interval empty;
- Stencil b
- = Tuplet_bracket::make_bracket (me, Y_AXIS, Offset (ext.length (), 0),
- edge_height, empty, flare, shorten);
-
- b.translate_axis (ext[LEFT] - sp->get_bound (LEFT)->relative_coordinate (cx, X_AXIS), X_AXIS);