2 staff-gravs.cc -- implement Line_group_engraver
4 source file of the GNU LilyPond music typesetter
6 (c) 1997--1999 Han-Wen Nienhuys <hanwen@cs.uu.nl>
9 #include "staff-symbol.hh"
10 #include "axis-group-spanner.hh"
11 #include "command-request.hh"
14 #include "line-group-group-engraver.hh"
15 #include "paper-column.hh"
17 ADD_THIS_TRANSLATOR (Line_group_engraver_group);
19 Line_group_engraver_group::Line_group_engraver_group()
26 Line_group_engraver_group::typeset_element (Score_element *elem)
28 if (!elem->parent_l (Y_AXIS))
29 staffline_p_->add_element (elem);
30 Engraver_group_engraver::typeset_element (elem);
35 Line_group_engraver_group::do_removal_processing()
37 Engraver_group_engraver::do_removal_processing ();
39 staffline_p_->set_bounds(RIGHT,get_staff_info().command_pcol_l ());
40 Engraver_group_engraver::typeset_element (staffline_p_);
45 Line_group_engraver_group::do_creation_processing()
47 create_line_spanner ();
48 staffline_p_->set_bounds(LEFT,get_staff_info().command_pcol_l ());
50 Engraver::announce_element (Score_element_info (staffline_p_,0));
54 Line_group_engraver_group::create_line_spanner ()
56 staffline_p_ = new Axis_group_spanner ;
57 staffline_p_->set_axes (Y_AXIS,Y_AXIS);