]> git.donarmstrong.com Git - lilypond.git/blobdiff - lily/breathing-sign.cc
release: 1.5.7
[lilypond.git] / lily / breathing-sign.cc
index 5d249085321e28098a6c377b12560838ac4f5c34..32ef10e334c577a67fb73efb69c424b3a542e3f0 100644 (file)
 #include "dimensions.hh"
 #include "direction.hh"
 
-
-
-MAKE_SCHEME_CALLBACK(Breathing_sign,brew_molecule,1);
-
+MAKE_SCHEME_CALLBACK (Breathing_sign,brew_molecule,1);
 SCM 
 Breathing_sign::brew_molecule (SCM smob)
 {
-  Score_element * me = unsmob_element (smob);
+  Grob * me = unsmob_grob (smob);
   Real space = Staff_symbol_referencer::staff_space (me);
 
   // todo: cfg'able.
-  Interval i1(0, space / 6), i2(-space / 2, space / 2);
-  Box b(i1, i2);
+  Interval i1 (0, space / 6), i2 (-space / 2, space / 2);
+  Box b (i1, i2);
 
-  return me->lookup_l()->filledbox(b).create_scheme ();
+  return Lookup::filledbox (b).smobbed_copy ();
 }
 
-MAKE_SCHEME_CALLBACK(Breathing_sign,offset_callback,2);
+MAKE_SCHEME_CALLBACK (Breathing_sign,offset_callback,2);
 SCM
-Breathing_sign::offset_callback (SCM element_smob, SCM axis)
+Breathing_sign::offset_callback (SCM element_smob, SCM)
 {
-  Score_element *me = unsmob_element (element_smob);
-  Axis a = (Axis) gh_scm2int (axis);
-
+  Grob *me = unsmob_grob (element_smob);
   
   Direction d = Directional_element_interface::get (me);
   if (!d)
@@ -54,12 +49,12 @@ Breathing_sign::offset_callback (SCM element_smob, SCM axis)
 
   Real inter_f = Staff_symbol_referencer::staff_space (me)/2;
   int sz = Staff_symbol_referencer::line_count (me)-1;
-  return gh_double2scm ( inter_f * sz * d);
+  return gh_double2scm (inter_f * sz * d);
 }
 
 void
-Breathing_sign::set_interface (Score_element *b)
+Breathing_sign::set_interface (Grob *b)
 {
-  Staff_symbol_referencer::set_interface  (b);
-  b->add_offset_callback (Breathing_sign_offset_callback_proc,Y_AXIS); 
+  Staff_symbol_referencer::set_interface (b);
+
 }