2 align-interface.hh -- declare Align_interface
4 source file of the GNU LilyPond music typesetter
6 (c) 2000 Han-Wen Nienhuys <hanwen@cs.uu.nl>
10 #ifndef ALIGN_INTERFACE_HH
11 #define ALIGN_INTERFACE_HH
14 #include "lily-proto.hh"
17 TODO: rewrite this comment.
20 Order elements top to bottom/left to right/right to left etc..
22 TODO: implement padding.
24 document usage of this.
34 Which side to align? -1: left side, 0: centered (around
35 center_l_ if not nil, or around center of width), 1: right side
37 struct Align_interface {
38 static Real alignment_callback (Score_element *,Axis);
39 static void do_side_processing (Score_element*,Axis a);
40 static void set_axis (Score_element*,Axis);
41 static Axis axis (Score_element*) ;
42 static void add_element (Score_element*,Score_element*);
43 static int get_count (Score_element*,Score_element*);
44 static void set_interface (Score_element*);
45 static bool has_interface (Score_element*);
46 static Real center_on_element (Score_element *c, Axis);
49 #endif /* ALIGN_INTERFACE_HH */