2 align-interface.hh -- declare Align_interface
4 source file of the GNU LilyPond music typesetter
6 (c) 2000--2005 Han-Wen Nienhuys <hanwen@cs.uu.nl>
9 #ifndef ALIGN_INTERFACE_HH
10 #define ALIGN_INTERFACE_HH
12 #include "lily-proto.hh"
13 #include "lily-guile.hh"
15 struct Align_interface
17 DECLARE_SCHEME_CALLBACK (calc_positioning_done, (SCM));
18 DECLARE_SCHEME_CALLBACK (alignment_callback, (SCM element, SCM axis));
19 DECLARE_SCHEME_CALLBACK (fixed_distance_alignment_callback, (SCM element, SCM axis));
20 DECLARE_SCHEME_CALLBACK (stretch_after_break, (SCM element));
21 static void align_to_fixed_distance (Grob *, Axis a);
22 static void align_elements_to_extents (Grob *, Axis a);
23 static void set_axis (Grob *, Axis);
24 static Axis axis (Grob *);
25 static void add_element (Grob *, Grob *);
26 static int get_count (Grob *, Grob *);
28 static bool has_interface (Grob *);
31 Grob *find_fixed_alignment_parent (Grob *g);
33 #endif /* ALIGN_INTERFACE_HH */