#include "axis-group-interface.hh"
#include "spanner.hh"
#include "warn.hh"
-#include "item.hh"
MAKE_SCHEME_CALLBACK (Hara_kiri_group_spanner, y_extent, 1);
SCM
for (vsize i = 0; i < worth.size (); i++)
{
- Item *it = dynamic_cast<Item*> (worth[i]);
- if (it)
- ranks.push_back (Paper_column::get_rank (it->get_column ()));
+ Interval_t<int> iv = worth[i]->spanned_rank_iv ();
+ for (int j = iv[LEFT]; j <= iv[RIGHT]; j++)
+ ranks.push_back (j);
}
- vector_sort (ranks, default_compare);
+ vector_sort (ranks, less<int> ());
uniq (ranks);
SCM scm_vec = scm_c_make_vector (ranks.size (), SCM_EOL);
Pointer_group_interface::add_unordered_grob (me, ly_symbol2scm ("items-worth-living"), n);
}
-ADD_INTERFACE (Hara_kiri_group_spanner, "hara-kiri-group-interface",
+ADD_INTERFACE (Hara_kiri_group_spanner,
"A group spanner that keeps track of interesting items. If it "
"doesn't contain any after linebreaking, then it "
"will remove itself and all its children.",