2 crescendo.cc -- implement Crescendo
4 source file of the LilyPond music typesetter
6 (c) 1997 Han-Wen Nienhuys <hanwen@stack.nl>
9 #include "crescendo.hh"
11 #include "paper-def.hh"
13 Crescendo::Crescendo(int s)
18 left_dyn_b_ = right_dyn_b_ =false;
22 Crescendo::do_break_at(PCol*, PCol*)const
24 return new Crescendo(*this);
29 Crescendo::brew_molecule_p() const return m_p ;
32 Real absdyn_dim = 10 PT; // UGR
35 Real w_dim = width().length();
38 x_off_dim += absdyn_dim;
45 error("Crescendo too small");
48 Symbol s( paper()->lookup_l()->hairpin(w_dim, grow_dir_i_ < 0) );
50 int pos = (dir_i_ >0) ? staff_size_i_ + 4 : - 4 ;
51 m_p->translate(Offset(0,pos * paper()->internote()));
54 IMPLEMENT_STATIC_NAME(Crescendo);