2 g-staff-side.hh -- declare G_staff_side_item
4 source file of the GNU LilyPond music typesetter
6 (c) 1998--1999 Han-Wen Nienhuys <hanwen@cs.uu.nl>
10 #ifndef G_STAFF_SIDE_HH
11 #define G_STAFF_SIDE_HH
15 #include "staff-symbol-referencer.hh"
18 Position myself next to a set of elements. Configurable in axis
25 Amount of extra space to add.
27 class G_staff_side_element : public Staff_symbol_referencer
29 void position_self ();
32 Score_element * to_position_l_;
34 Link_array<Score_element> support_l_arr_;
37 bool staff_support_b_;
39 G_staff_side_element ();
40 void set_victim (Score_element*);
41 void add_support (Score_element*);
43 VIRTUAL_COPY_CONS(Score_element);
44 virtual Direction get_default_direction () const;
46 virtual Interval do_height () const;
47 virtual void do_print () const;
48 virtual void do_add_processing ();
49 virtual void do_substitute_element_pointer (Score_element*,Score_element*);
50 virtual void do_pre_processing ();
51 virtual void do_post_processing ();
54 class G_staff_side_item : public G_staff_side_element, public Item
57 VIRTUAL_COPY_CONS(Score_element);
59 virtual Interval do_width () const;
60 virtual void do_print () const;
63 class G_staff_side_spanner : public G_staff_side_element, public Spanner
66 VIRTUAL_COPY_CONS(Score_element);
68 virtual void do_print () const;
71 #endif /* G_STAFF_SIDE_HH */