2 clef-item.cc -- implement Clef_item
4 source file of the GNU LilyPond music typesetter
6 (c) 1997 Han-Wen Nienhuys <hanwen@stack.nl>
9 #include "clef-item.hh"
11 #include "molecule.hh"
12 #include "paper-def.hh"
14 #include "clef-grav.hh"
18 Clef_item::do_pre_processing()
20 change_b_
= ! (break_status_i() == 1);
24 set_empty(break_status_i() != 1);
25 transparent_b_
= (break_status_i() != 1);
29 Clef_item::Clef_item()
38 Clef_item::read (String t
)
45 else if (t
== "french")
50 else if (t
== "soprano")
55 else if (t
== "mezzosoprano")
64 else if (t
== "tenor")
69 else if (t
== "baritone")
74 else if (t
== "varbaritone")
83 else if (t
== "subbass")
91 Clef_item::read (Clef_engraver
const &k
)
93 read (k
.clef_type_str_
);
97 Clef_item::brew_molecule_p() const
102 Atom s
= paper()->lookup_l ()->clef (t
);
103 Molecule
*output
= new Molecule (Atom (s
));
104 output
->translate_axis (paper()->internote_f () * y_position_i_
, Y_AXIS
);
109 IMPLEMENT_IS_TYPE_B1(Clef_item
,Item
);