]> git.donarmstrong.com Git - lilypond.git/blobdiff - lily/include/dot-column.hh
Merge branch 'jneeman' of git+ssh://jneem@git.sv.gnu.org/srv/git/lilypond into jneeman
[lilypond.git] / lily / include / dot-column.hh
index 01e3e3d3e5ef2f1f16cd94011f47b91d8e4a8c43..503b1425ae158fe1060998acd493aa53ea891e2e 100644 (file)
@@ -3,29 +3,29 @@
 
   source file of the GNU LilyPond music typesetter
 
-  (c) 1997 Han-Wen Nienhuys <hanwen@stack.nl>
+  (c) 1997--2006 Han-Wen Nienhuys <hanwen@xs4all.nl>
 */
 
-
 #ifndef DOT_COLUMN_HH
 #define DOT_COLUMN_HH
 
-#include "horizontal-group-item.hh"
+#include "lily-proto.hh"
+#include "grob-interface.hh"
+
+
+class Grob;
 
 /**
-  Group dots.  This is needed because, the dots have to be aligned per voice
- */
-class Dot_column : public Horizontal_group_item
+   Group dots.  This is needed because, the dots have to be aligned per voice
+*/
+class Dot_column // interface
 {
-  Link_array<Rhythmic_head> head_l_arr_;
-  Link_array<Dots> dot_l_arr_;
-  void add (Dots*);
-
 public:
-  DECLARE_MY_RUNTIME_TYPEINFO;
-  void add (Rhythmic_head*);
-protected:
-  virtual void do_pre_processing ();
-  virtual void do_substitute_dependency (Score_elem *o, Score_elem*n);
+  static int compare (Grob *const &, Grob *const &);
+  static void add_head (Grob *dotcol, Grob *rh);
+
+  DECLARE_GROB_INTERFACE();
+  DECLARE_SCHEME_CALLBACK (side_position, (SCM));
+  DECLARE_SCHEME_CALLBACK (calc_positioning_done, (SCM));
 };
 #endif // DOT_COLUMN_HH