}
/* Calls the scheme procedure stencil-whiteout-box in scm/stencils.scm */
- if (!transparent && to_boolean (get_property ("whiteout-box")))
+ if (!transparent && (scm_is_number (get_property("whiteout-box"))
+ || to_boolean (get_property ("whiteout-box"))))
{
+ Real thickness = robust_scm2double (get_property("whiteout-box"), 0.0)
+ * layout ()->get_dimension (ly_symbol2scm ("line-thickness"));
retval = *unsmob<Stencil>
- (Lily::stencil_whiteout_box (retval.smobbed_copy ()));
+ (Lily::stencil_whiteout_box (retval.smobbed_copy (),
+ scm_from_double (thickness)));
}
if (transparent)
if (Grob *p = get_parent (Y_AXIS))
{
Real trans = 0;
- if (Align_interface::has_interface (p) && !dim_cache_[Y_AXIS].offset_)
+ if (has_interface<Align_interface> (p) && !dim_cache_[Y_AXIS].offset_)
trans = Align_interface::get_pure_child_y_translation (p, this, start, end);
return off + trans + p->pure_relative_y_coordinate (refp, start, end);
{
if (!g)
return maybe;
- if (Align_interface::has_interface (g))
+ if (has_interface<Align_interface> (g))
return get_maybe_root_vertical_alignment (g->get_parent (Y_AXIS), g);
return get_maybe_root_vertical_alignment (g->get_parent (Y_AXIS), maybe);
return 0;
if (!g->get_parent (Y_AXIS))
return 0;
- if (Axis_group_interface::has_interface (g)
- && Align_interface::has_interface (g->get_parent (Y_AXIS)))
+ if (has_interface<Axis_group_interface> (g)
+ && has_interface<Align_interface> (g->get_parent (Y_AXIS)))
return g;
return get_vertical_axis_group (g->get_parent (Y_AXIS));
bool
Grob::check_cross_staff (Grob *commony)
{
- if (Align_interface::has_interface (commony))
+ if (has_interface<Align_interface> (commony))
return true;
for (Grob *g = this; g && g != commony; g = g->get_parent (Y_AXIS))
- if (Align_interface::has_interface (g))
+ if (has_interface<Align_interface> (g))
return true;
return false;