-}
-
-MAKE_SCHEME_CALLBACK(Dot_column, calc_positioning_done, 1);
-SCM
-Dot_column::calc_positioning_done (SCM smob)
-{
- Grob *me = unsmob_grob (smob);
- vector<Grob*> dots
- = extract_grob_array (me, "dots");
-
- { /*
- Trigger note collision resolution first, since that may kill off
- dots when merging.
- */
- Grob *c = 0;
- for (vsize i = dots.size (); i--;)
- {
- Grob *n = dots[i]->get_parent (Y_AXIS);
- if (c)
- c = n->common_refpoint (c, X_AXIS);
- else
- c = n;
- }
- for (vsize i = dots.size (); i--;)
- {
- Grob *n = dots[i]->get_parent (Y_AXIS);
- n->relative_coordinate (c, X_AXIS);
- }
- }
-
- vector_sort (dots, &compare_position);