]> git.donarmstrong.com Git - lilypond.git/blobdiff - lily/include/vertical-group-spanner.hh
release: 0.1.61
[lilypond.git] / lily / include / vertical-group-spanner.hh
index d092d96488d47b63056dc798c85ef840990ae282..678137e29f08ba2771fe7d9970d90edf8c8d727e 100644 (file)
@@ -3,33 +3,30 @@
 
   source file of the GNU LilyPond music typesetter
 
-  (c) 1997 Han-Wen Nienhuys <hanwen@stack.nl>
+  (c)  1997--1998 Han-Wen Nienhuys <hanwen@stack.nl>
 */
 
 
 #ifndef SPAN_VERTICAL_GROUP_HH
 #define SPAN_VERTICAL_GROUP_HH
 
-#include "spanner.hh"
-#include "elem-group.hh"
+#include "axis-group-spanner.hh"
+#include "vertical-group-elem.hh"
 
-/** An element which groups a line. Due to technical problems, this
  cannot be used as a baseclass */
-class Vertical_group_spanner : public Spanner, public Vertical_group
+/** An element which groups a line. 
+ */
+class Vertical_group_spanner : public Axis_group_spanner, public Vertical_group_element
 {
 protected:
-    virtual void do_break_processing();
-    virtual void do_print()const;
-    VIRTUAL_COPY_CONS(Vertical_group_spanner, Score_elem);
-
-private:
-    void remove_all();
-    /// shouldn't be copied.
-    Vertical_group_spanner(Vertical_group_spanner const&);
-
+  SCORE_ELEM_CLONE(Vertical_group_spanner);
+  virtual void remove_all() { Vertical_group_element::remove_all (); }
+  virtual void do_junk_links () { Axis_group_spanner::do_junk_links (); }
+  virtual void do_unlink () { Axis_group_spanner::do_unlink (); }
 public:
-    Vertical_group_spanner();
-    DECLARE_MY_RUNTIME_TYPEINFO;
+  DECLARE_MY_RUNTIME_TYPEINFO;
+  virtual void add_element (Graphical_element*e) { Vertical_group_element::add_element (e); }
+  virtual void remove_element (Graphical_element*e) { Vertical_group_element::remove_element (e); }  
 };
 
+
 #endif // SPAN_VERTICAL_GROUP_HH