]> git.donarmstrong.com Git - lilypond.git/blobdiff - lily/include/tuplet-spanner.hh
release: 1.5.29
[lilypond.git] / lily / include / tuplet-spanner.hh
index ca725e5d401d0b1ac45a58ea6cbc3f871c5f8cae..661bd3aaa4bbd4aa6df69ad69e86eed55064f3b5 100644 (file)
@@ -1,41 +1,38 @@
 /*
   plet-spanner.hh -- part of GNU LilyPond
 
-  (c)  1997--2000 Jan Nieuwenhuizen <janneke@gnu.org>
+  (c)  1997--2002 Jan Nieuwenhuizen <janneke@gnu.org>
 */
 
-#ifndef Tuplet_spanner_HH
-#define Tuplet_spanner_HH
+#ifndef Tuplet_bracket_HH
+#define Tuplet_bracket_HH
 
-#include "pointer.hh"
-#include "spanner.hh"
+#include "lily-guile.hh"
 
-/** supportable plet: triplets, eentweetjes, ottava, etc.
+/*
 
     TODO: quantise, we don't want to collide with staff lines.
   (or should we be above staff?)
+ (or should we be above staff?)
 
   todo: handle breaking elegantly.
 */
-class Tuplet_spanner : public Spanner
+class Tuplet_bracket
 {
 public:
-  Tuplet_spanner (SCM);
-  static SCM scheme_molecule (SCM);
-  
+  DECLARE_SCHEME_CALLBACK (brew_molecule, (SCM ));
+  static void set_interface (Grob*);  
+  static bool has_interface (Grob*);
 
-  void add_column (Note_column*);
-  void add_beam (Beam*);
-protected:
-  void calc_dy (Real *) const;
-  void calc_position_and_height (Real*,Real *dy)const;
+  static void add_column (Grob*me,Item*);
+  static void add_beam (Grob*me,Grob*);
+
+  static void calc_dy (Grob*,Real *) ;
+  static void calc_position_and_height (Grob*,Real*,Real *dy);
   
-  Molecule do_brew_molecule () const;
-  VIRTUAL_COPY_CONS(Score_element);
-  virtual void do_add_processing ();
-  virtual void after_line_breaking ();
-  virtual Direction get_default_dir () const;
+  DECLARE_SCHEME_CALLBACK (after_line_breaking, (SCM ));
+
+  static Direction get_default_dir (Grob*);
 };
 
-#endif // Tuplet_spanner_HH
+#endif // Tuplet_bracket_HH