]> git.donarmstrong.com Git - lilypond.git/blobdiff - lily/include/break-align-item.hh
patch::: 1.3.91.jcn1
[lilypond.git] / lily / include / break-align-item.hh
index 916e284d5717421a36f14e7e15ba45dc3ed5f761..028b4f282eddbf8e18030df6a5d85c192343ff1e 100644 (file)
@@ -3,23 +3,35 @@
 
   source file of the GNU LilyPond music typesetter
 
-  (c) 1997 Han-Wen Nienhuys <hanwen@stack.nl>
+  (c)  1997--2000 Han-Wen Nienhuys <hanwen@cs.uu.nl>
 */
 
 
 #ifndef BREAK_ALIGN_ITEM_HH
 #define BREAK_ALIGN_ITEM_HH
 
-#include "horizontal-align-item.hh"
+#include "item.hh"
 
-/// align breakable items (clef, bar, etc.)
-class Break_align_item : public Horizontal_align_item {
+/**
+   align breakable items (clef, bar, etc.)
 
-protected:
-    virtual void do_pre_processing();
+   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:
-    NAME_MEMBERS();
-    SCORE_ELEM_CLONE(Break_align_item)
-       
+  static SCM before_line_breaking (SCM);
+  static void do_alignment (Score_element*);
+  static void set_interface (Score_element*);
+  static bool has_interface (Score_element*);
+  static void add_element (Score_element*me, Score_element*add);
+  static Real alignment_callback (Score_element*, Axis);
 };
 #endif // BREAK_ALIGN_ITEM_HH