]> git.donarmstrong.com Git - lilypond.git/blobdiff - lily/include/break-align-item.hh
release: 1.5.36
[lilypond.git] / lily / include / break-align-item.hh
index 49057bde8d0ebf8dbe53f574abfa6d66274902af..5dc37f784105ae3f8977c18a5315b3d6c41f20a4 100644 (file)
@@ -3,7 +3,7 @@
 
   source file of the GNU LilyPond music typesetter
 
-  (c)  1997--2000 Han-Wen Nienhuys <hanwen@cs.uu.nl>
+  (c)  1997--2002 Han-Wen Nienhuys <hanwen@cs.uu.nl>
 */
 
 
 
 #include "item.hh"
 
-/**
-   align breakable items (clef, bar, etc.)
-
-   Properties:
-
-   break-align-symbol -- the index in the spacing table (symbol) of
-   the to be aligned item.
-
-
-   TODO: remove this as a class, and make interface.
- */
-
-class Break_align_item : public Item
+class Break_align_interface
 {
-protected:
-  virtual void before_line_breaking ();
 public:
-  Break_align_item ();
-  VIRTUAL_COPY_CONS(Score_element);
+  DECLARE_SCHEME_CALLBACK (before_line_breaking, (SCM ));
+  static void do_alignment (Grob*);
+  static void set_interface (Grob*);
+  static bool has_interface (Grob*);
+  static void add_element (Grob*me, Grob*add);
+  DECLARE_SCHEME_CALLBACK (alignment_callback, (SCM element, SCM axis));
+  DECLARE_SCHEME_CALLBACK (self_align_callback, (SCM element, SCM axis));
 };
 #endif // BREAK_ALIGN_ITEM_HH