]> git.donarmstrong.com Git - lilypond.git/blobdiff - lily/include/multi-measure-rest.hh
Run `make grand-replace'.
[lilypond.git] / lily / include / multi-measure-rest.hh
index 8be84d3002352cb7328669b23166237054011179..38b6eba1326ce50c8f9cfd4b0d24d66c4b2638e0 100644 (file)
@@ -1,28 +1,34 @@
-/*   
+/*
   multi-measure-rest.hh -- declare Multi_measure_rest
-  
+
   source file of the GNU LilyPond music typesetter
-  
-  (c) 1998 Jan Nieuwenhuizen <janneke@gnu.org>
-  
- */
+
+  (c) 1998--2008 Jan Nieuwenhuizen <janneke@gnu.org>
+*/
 
 #ifndef MULTI_MEASURE_REST_HH
 #define MULTI_MEASURE_REST_HH
 
-#include "item.hh"
+#include "grob-interface.hh"
+#include "rod.hh"
 
-class Multi_measure_rest : public Item 
+class Multi_measure_rest
 {
 public:
-  Multi_measure_rest ();
-  int measures_i_;
+  DECLARE_GROB_INTERFACE();
+  DECLARE_SCHEME_CALLBACK (print, (SCM));
+  DECLARE_SCHEME_CALLBACK (percent, (SCM));
+  static void add_column (Grob *, Item *);
+  DECLARE_SCHEME_CALLBACK (set_spacing_rods, (SCM));
+  DECLARE_SCHEME_CALLBACK (set_text_rods, (SCM));
+  DECLARE_SCHEME_CALLBACK (centered_stencil, (SCM));
 
-  
 
-protected:
-  virtual void do_print () const;
-  virtual Molecule *do_brew_molecule_p () const;
+  static void calculate_spacing_rods (Grob *me, Real length);
+  static Stencil big_rest (Grob *, Real);
+  static Stencil symbol_stencil (Grob *, Real);
+  static Stencil church_rest (Grob *, Font_metric *, int, Real);
+  static Interval bar_width (Spanner *me);
 };
 
 #endif /* MULTI_MEASURE_REST_HH */