2 span-score-bar-engraver.cc -- implement Span_score_bar_engraver,
3 Piano_bar_engraver and Staff_group_bar_engraver
5 source file of the GNU LilyPond music typesetter
7 (c) 1997--1999 Han-Wen Nienhuys <hanwen@cs.uu.nl>
10 #include "span-bar.hh"
11 #include "span-score-bar-engraver.hh"
12 #include "paper-def.hh"
13 #include "dimension-cache.hh"
16 Span_score_bar_engraver::get_span_bar_p () const
18 Span_bar*s = new Span_bar;
19 s->type_str_ = "scorebar";
20 s->set_elt_property (break_priority_scm_sym,
27 Span_score_bar_engraver::Span_score_bar_engraver ()
29 use_priority_b_ = true;
30 break_priority_i_ = -4;
34 Piano_bar_engraver::get_span_bar_p () const
36 Span_bar *s= new Span_bar;
37 s->dim_cache_[X_AXIS]->set_empty (true);
38 s->type_str_ = "brace";
43 Staff_group_bar_engraver::get_span_bar_p () const
45 Span_bar *s= new Span_bar;
46 s->dim_cache_[X_AXIS]->set_empty (true);
47 s->type_str_ = "bracket";
52 Staff_group_bar_engraver::acknowledge_element (Score_element_info i)
54 Base_span_bar_engraver::acknowledge_element (i);
55 if (Span_bar * b = dynamic_cast<Span_bar *> (i.elem_l_))
57 if (b->type_str_ == "brace")
58 b->translate_axis ( -paper_l ()->get_realvar (interline_scm_sym),
63 ADD_THIS_TRANSLATOR (Piano_bar_engraver);
64 ADD_THIS_TRANSLATOR (Staff_group_bar_engraver);
65 ADD_THIS_TRANSLATOR (Span_score_bar_engraver);