2 horizontal-align-item.hh -- declare Horizontal_align_item
4 source file of the GNU LilyPond music typesetter
6 (c) 1997 Han-Wen Nienhuys <hanwen@stack.nl>
10 #ifndef HORIZONTAL_ALIGN_ITEM_HH
11 #define HORIZONTAL_ALIGN_ITEM_HH
12 #include "elem-group.hh"
16 Order elems left to right.
20 TODO: insert(order, elem)
22 class Horizontal_align_item : public Item {
24 Link_array<Item> item_l_arr_;
25 Array<int> priority_i_arr_;
31 -1: left side, 0: centered (around center_l_ if not nil), 1: right side
36 SCORE_ELEM_CLONE(Horizontal_align_item);
37 void add(Item*, int p);
38 Horizontal_align_item();
41 virtual void do_substitute_dependency(Score_elem * , Score_elem *);
42 /// do calculations before determining horizontal spacing
43 virtual void do_pre_processing();
44 virtual void do_print()const;
45 virtual Interval do_width()const;
46 bool contains_b(Item*)const;
48 #endif // HORIZONTAL_ALIGN_ITEM_HH