source file of the GNU LilyPond music typesetter
- (c) 1997--1999 Han-Wen Nienhuys <hanwen@cs.uu.nl>
+ (c) 1997--2000 Han-Wen Nienhuys <hanwen@cs.uu.nl>
*/
#include "dots.hh"
#include "rhythmic-head.hh"
#include "group-interface.hh"
#include "staff-symbol-referencer.hh"
+#include "directional-element-interface.hh"
+#include "side-position-interface.hh"
+#include "axis-group-interface.hh"
+
+// todo: dots and elements duplicate each other.
void
Dot_column::add_dots (Dots *d)
{
gi.add_element (d);
add_dependency (d);
- add_element (d);
+ Axis_group_interface (this).add_element (d);
}
void
if (!r->dots_l ())
return ;
- add_support (r);
+ side_position (this).add_support (r);
add_dots (r->dots_l ());
}
{
Staff_symbol_referencer_interface s1(d1);
Staff_symbol_referencer_interface s2(d2);
-
return int (s1.position_f () - s2.position_f ());
}
{
Group_interface gi (this, "dots");
gi.set_interface ();
+ directional_element (this).set (RIGHT);
- set_direction (RIGHT);
- set_axes(X_AXIS,X_AXIS);
+ Axis_group_interface (this).set_interface ();
+ Axis_group_interface (this).set_axes(X_AXIS,X_AXIS);
}
/*
Should be smarter.
*/
void
-Dot_column::do_post_processing ()
+Dot_column::after_line_breaking ()
{
Link_array<Dots> dots = Group_interface__extract_elements (this, (Dots*)0 , "dots");
dots.sort (Dot_column::compare);
for (int i=0; i <dots.size (); pos += 2, i++)
{
- staff_symbol_referencer_interface (dots[i]).set_position(pos);
+ staff_symbol_referencer (dots[i]).set_position(pos);
}
}