]> git.donarmstrong.com Git - lilypond.git/blobdiff - lily/include/tuplet-bracket.hh
* lily/include/pango-font.hh: new file.
[lilypond.git] / lily / include / tuplet-bracket.hh
index 97c10572dc1616f134f50a6c49ae8bbe07290d2f..e3f460dbb87ed698f4faf83c71e202e9ca2097b7 100644 (file)
@@ -1,41 +1,31 @@
 /*
   tuplet-bracket.hh -- part of GNU LilyPond
 
-  (c)  1997--2002 Jan Nieuwenhuizen <janneke@gnu.org>
+  (c) 1997--2004 Jan Nieuwenhuizen <janneke@gnu.org>
 */
 
 #ifndef Tuplet_bracket_HH
 #define Tuplet_bracket_HH
 
 #include "lily-guile.hh"
+#include "lily-proto.hh"
 
-/*
-
-    TODO: quantise, we don't want to collide with staff lines.
- (or should we be above staff?)
-
-  todo: handle breaking elegantly.
-*/
 class Tuplet_bracket
 {
 public:
-  DECLARE_SCHEME_CALLBACK (brew_molecule, (SCM ));
+  DECLARE_SCHEME_CALLBACK (after_line_breaking, (SCM ));
+  DECLARE_SCHEME_CALLBACK (before_line_breaking, (SCM ));
+  DECLARE_SCHEME_CALLBACK (print, (SCM ));
+  
   static bool has_interface (Grob*);
-
   static void add_column (Grob*me,Item*);
   static void add_beam (Grob*me,Grob*);
-  static Grob *parallel_beam (Grob *me, Link_array<Grob> cols, bool *equally_long);
-  static void calc_dy (Grob*,Real *) ;
+  static Grob *parallel_beam (Grob *me, Link_array<Grob> const&cols, bool *equally_long);
   static void calc_position_and_height (Grob*,Real*,Real *dy);
-  
-  DECLARE_SCHEME_CALLBACK (after_line_breaking, (SCM ));
-
-  DECLARE_SCHEME_CALLBACK (before_line_breaking, (SCM ));
-  static Molecule make_bracket (Axis protusion_axis,
-                               Real dx, Real dy, Real thick, Real left_height,
-                               Real right_height, Real gap, Real left_widen,
-                               Real right_widen, Real left_shorten, 
-                               Real right_shorten);
+  static Stencil make_bracket (Grob *me,  Axis protusion_axis,
+                               Offset dz,  Drul_array<Real> height,
+                               Interval gap, Drul_array<Real> widen,
+                               Drul_array<Real> shorten);
   static Direction get_default_dir (Grob*);
 };