2 dot-column.cc -- implement Dot_column
4 source file of the GNU LilyPond music typesetter
6 (c) 1997--1998 Han-Wen Nienhuys <hanwen@cs.uu.nl>
10 #include "dot-column.hh"
11 #include "rhythmic-head.hh"
14 Dot_column::add_dots (Dots
*d
)
22 Dot_column::add_head (Rhythmic_head
*r
)
29 add_dots (r
->dots_l_
);
33 Dot_column::do_substitute_dependency (Score_element
*o
,Score_element
*n
)
35 Item
*oi
=dynamic_cast <Item
*> (o
);
37 if (oi
&& dynamic_cast<Rhythmic_head
*> (oi
))
38 head_l_arr_
.substitute (dynamic_cast<Rhythmic_head
*> (oi
),
39 dynamic_cast<Rhythmic_head
*>(n
));
40 else if (oi
&& dynamic_cast<Dots
*> (oi
))
41 dot_l_arr_
.substitute (dynamic_cast<Dots
*> (oi
),
42 dynamic_cast<Dots
*> (n
));
46 Dot_column::do_pre_processing ()
49 for (int i
=0; i
< head_l_arr_
.size (); i
++)
50 w
.unite (head_l_arr_
[i
]->width ());
53 translate_axis (w
[RIGHT
] - width() [LEFT
],X_AXIS
);