2 hara-kiri-vertical-group-spanner.cc
3 -- implement Hara_kiri_vertical_group_spanner
5 source file of the GNU LilyPond music typesetter
7 (c) 1998,1999 Jan Nieuwenhuizen <janneke@gnu.org>
8 Han-Wen Nienhuys <hanwen@cs.uu.nl>
11 #include "hara-kiri-vertical-group-spanner.hh"
15 Hara_kiri_group_spanner::Hara_kiri_group_spanner()
17 set_axes(Y_AXIS,Y_AXIS);
21 Hara_kiri_group_spanner::add_interesting_item (Item* n)
24 interesting_items_.push (n);
28 Hara_kiri_group_spanner::do_post_processing ()
30 if (!interesting_items_.empty ())
33 Link_array<Score_element> childs = get_children ();
34 for (int i = 0; i < childs.size (); i++)
36 Score_element* s = childs[i];
38 if ( line_l () != s->line_l ())
39 programming_error ("Killing other children too");
40 s->set_elt_property ("transparent", SCM_BOOL_T);
41 s->set_empty (true, X_AXIS, Y_AXIS);
48 Hara_kiri_group_spanner::do_substitute_element_pointer (Score_element*o, Score_element*n)
50 Axis_group_spanner::do_substitute_element_pointer (o,n);
51 if (Item *it = dynamic_cast<Item *> (o))
52 interesting_items_.substitute (it, dynamic_cast<Item *> (n));
57 Hara_kiri_group_spanner::do_print () const
59 Axis_group_spanner::do_print ();