]> git.donarmstrong.com Git - lilypond.git/blobdiff - lily/include/hara-kiri-vertical-group-spanner.hh
release: 1.1.37
[lilypond.git] / lily / include / hara-kiri-vertical-group-spanner.hh
index 15ad5d04052310f31c338babfe89e3e557a15f0c..7479e90b29deb4d2f5f2d1942645e0c1eef32887 100644 (file)
@@ -3,34 +3,33 @@
 
   source file of the GNU LilyPond music typesetter
 
-  (c)  1998 Jan Nieuwenhuizen <janneke@gnu.org>
+  (c) 1998, 1999 Jan Nieuwenhuizen <janneke@gnu.org>
 */
 
 
 #ifndef HARA_KIRI_VERTICAL_GROUP_SPANNER_HH
 #define HARA_KIRI_VERTICAL_GROUP_SPANNER_HH
 
-#include "vertical-group-spanner.hh"
+#include "axis-group-spanner.hh"
 
 /** 
-  As Vertical_group_spanner, but keeps dependencies to notes.
- */
-class Hara_kiri_vertical_group_spanner : public Vertical_group_spanner
+  As Vertical_group_spanner, but keep track of interesting items.  If
+  we don't contain any interesting items after linebreaking, then
+  gracefully commit suicide.  Objective: don't disgrace Lily by
+  typesetting empty lines in orchestral scores.  */
+class Hara_kiri_group_spanner : public Axis_group_spanner
 {
 public:
-  
-
-  Hara_kiri_vertical_group_spanner ();
+  Hara_kiri_group_spanner ();
   virtual void do_post_processing ();
-  void add_note (Note_head* n);
-
+  void add_interesting_item (Item* n);
 protected:
   VIRTUAL_COPY_CONS(Score_element);
 
-  virtual void do_substitute_dependency (Score_element*, Score_element*);
+  virtual void do_substitute_element_pointer (Score_element*, Score_element*);
   virtual void do_print ()const;
 
-  Link_array<Note_head> head_l_arr_;
+  Link_array<Item> interesting_items_;
 };