/*
clef-item.hh -- declare Clef_item
- (c) 1996,97 Han-Wen Nienhuys
+ (c) 1996--2000 Han-Wen Nienhuys
*/
#ifndef CLEFITEM_HH
#define CLEFITEM_HH
#include "item.hh"
+#include "direction.hh"
+
+
/**
Set a clef in a staff.
+
+ properties:
+
+ nondefault: not set because of existence of a bar
+
+ octave_dir: should we print an octave symbol (8), and where? (up=1, down=-1)?
+
+ change: is this a change clef (smaller size)?
+
*/
-class Clef_item : public Item {
+class Clef_item : public Item
+{
protected:
- virtual void do_pre_processing();
- Molecule* brew_molecule_p()const;
+ virtual void do_pre_processing();
+ virtual void do_add_processing ();
public:
-
- String type_;
- int y_off;
-
- /// is this a change clef (smaller size)?
- bool change_b_;
-
- /// set because of existence of a bar
- bool default_b_;
-
- /* *************** */
- DECLARE_MY_RUNTIME_TYPEINFO;
- SCORE_ELEM_CLONE(Clef_item);
- Clef_item();
- void read (Clef_engraver const&);
- void read (String);
+ VIRTUAL_COPY_CONS(Score_element);
};
#endif // CLEFITEM_HH