]> git.donarmstrong.com Git - lilypond.git/blob - lily/include/clef-item.hh
release: 1.1.24
[lilypond.git] / lily / include / clef-item.hh
1 /*
2   clef-item.hh -- declare Clef_item
3
4   (c) 1996--1998 Han-Wen Nienhuys
5 */
6
7 #ifndef CLEFITEM_HH
8 #define CLEFITEM_HH
9 #include "item.hh"
10 #include "text-def.hh"
11 #include "direction.hh"
12 #include "pointer.hh"
13
14 /**
15   Set a clef in a staff.
16  */
17 class Clef_item : public Item {
18 protected:
19   virtual void do_pre_processing();
20   virtual Molecule* do_brew_molecule_p() const;
21   virtual void do_add_processing ();
22 public:
23     
24   String symbol_;
25   int y_position_i_;
26
27   /// is this a change clef (smaller size)?
28   bool change_b_;
29     
30   /// set because of existence of a bar
31   bool default_b_;
32
33   /// should we print an octave symbol (8), and where? (up=1, down=-1)?
34   Direction octave_dir_;
35
36   VIRTUAL_COPY_CONS(Score_element);
37   Clef_item();
38 };
39
40 #endif // CLEFITEM_HH
41
42