/*
This file is part of LilyPond, the GNU music typesetter.
- Copyright (C) 2005--2012 Han-Wen Nienhuys <hanwen@xs4all.nl>
+ Copyright (C) 2005--2014 Han-Wen Nienhuys <hanwen@xs4all.nl>
LilyPond is free software: you can redistribute it and/or modify
continue;
if (!stem)
- stem = unsmob_grob (head->get_object ("stem"));
+ stem = Grob::unsmob (head->get_object ("stem"));
Real p = Staff_symbol_referencer::get_position (head);
Interval y ((p - 1) * 0.5 * staff_space,
boxes.push_back (Box (x, y));
}
- Grob *acc = unsmob_grob (heads[i]->get_object ("accidental-grob"));
+ Grob *acc = Grob::unsmob (heads[i]->get_object ("accidental-grob"));
if (acc)
- acc->get_property ("stencil"); /* trigger tie-related suicide */
+ acc->get_property ("after-line-breaking"); /* trigger tie-related suicide */
if (acc && acc->is_live () && dir == RIGHT)
{
boxes.push_back (Box (x, y));
}
- /* todo: the horizon_padding is somewhat arbitrary */
- chord_outlines_[key] = Skyline (boxes, details_.skyline_padding_, Y_AXIS, -dir);
+ chord_outlines_[key] = Skyline (boxes, Y_AXIS, -dir).padded (details_.skyline_padding_);
if (bounds[0]->break_status_dir ())
{
Interval iv (Axis_group_interface::staff_extent (bounds[0], x_refpoint_, X_AXIS, y_refpoint_, Y_AXIS));
for (vsize i = 0; i < semi_ties.size (); i++)
{
Tie_specification spec;
- Item *head = unsmob_item (semi_ties[i]->get_object ("note-head"));
+ Item *head = Item::unsmob (semi_ties[i]->get_object ("note-head"));
if (!head)
programming_error ("LV tie without head?!");
size.
*/
- Interval staff_span =
- Staff_symbol_referencer::staff_span (details_.staff_symbol_referencer_);
+ Interval staff_span
+ = Staff_symbol_referencer::staff_span (details_.staff_symbol_referencer_);
staff_span.widen (-1);
- bool const within_staff = staff_span.contains(pos);
+ bool const within_staff = staff_span.contains (pos);
if (head_positions_slice (columns[LEFT]).contains (pos)
|| head_positions_slice (columns[RIGHT]).contains (pos)
|| within_staff)
if (!spec.note_head_drul_[d])
continue;
- Grob *stem = unsmob_grob (spec.note_head_drul_[d]->get_object ("stem"));
+ Grob *stem = Grob::unsmob (spec.note_head_drul_[d]->get_object ("stem"));
if (stem
&& Stem::is_normal_stem (stem))
stems[d] = stem;
Real top_y = tip_y + conf->dir_ * height;
Real top_pos = 2 * top_y / details_.staff_space_;
Real round_top_pos = rint (top_pos);
- Interval staff_span =
- Staff_symbol_referencer::staff_span (details_.staff_symbol_referencer_);
+ Interval staff_span
+ = Staff_symbol_referencer::staff_span (details_.staff_symbol_referencer_);
if (Staff_symbol_referencer::on_line (details_.staff_symbol_referencer_,
int (round_top_pos))
&& staff_span[UP] * 0.5 > top_y)