]> git.donarmstrong.com Git - lilypond.git/blobdiff - lily/piano-pedal-bracket.cc
Doc-es: various updates.
[lilypond.git] / lily / piano-pedal-bracket.cc
index 534d5812ec95c1c8cfaa88670a8f2fdda2e4e3cf..d13f56414f4f52c3f8939f6b7c306a94360477d9 100644 (file)
@@ -1,7 +1,7 @@
 /*
   This file is part of LilyPond, the GNU music typesetter.
 
-  Copyright (C) 2003--2012 Han-Wen Nienhuys <hanwen@xs4all.nl>
+  Copyright (C) 2003--2015 Han-Wen Nienhuys <hanwen@xs4all.nl>
 
   LilyPond is free software: you can redistribute it and/or modify
   it under the terms of the GNU General Public License as published by
 #include "stencil.hh"
 #include "spanner.hh"
 #include "item.hh"
-#include "tuplet-bracket.hh"
+#include "bracket.hh"
+#include "axis-group-interface.hh"
 
 struct Piano_pedal_bracket
 {
   DECLARE_SCHEME_CALLBACK (print, (SCM));
-  DECLARE_GROB_INTERFACE ();
 };
 
 MAKE_SCHEME_CALLBACK (Piano_pedal_bracket, print, 1);
 SCM
 Piano_pedal_bracket::print (SCM smob)
 {
-  Spanner *me = dynamic_cast<Spanner *> (unsmob_grob (smob));
+  Spanner *me = unsmob<Spanner> (smob);
   Spanner *orig = dynamic_cast<Spanner *> (me->original ());
 
   Drul_array<bool> broken (false, false);
@@ -45,7 +45,7 @@ Piano_pedal_bracket::print (SCM smob)
 
   Grob *common = me->get_bound (LEFT)
                  ->common_refpoint (me->get_bound (RIGHT), X_AXIS);
-  Grob *textbit = unsmob_grob (me->get_object ("pedal-text"));
+  Grob *textbit = unsmob<Grob> (me->get_object ("pedal-text"));
 
   if (textbit)
     common = common->common_refpoint (textbit, X_AXIS);
@@ -65,7 +65,8 @@ Piano_pedal_bracket::print (SCM smob)
           else
             flare[d] = 0.0;
 
-          span_points[d] = robust_relative_extent (b, common, X_AXIS)[RIGHT];
+          span_points[d]
+            = Axis_group_interface::generic_bound_extent (b, common, X_AXIS)[RIGHT];
         }
       else
         span_points[d] = b->relative_coordinate (common, X_AXIS);
@@ -88,11 +89,9 @@ Piano_pedal_bracket::print (SCM smob)
   if (!span_points.is_empty ()
       && span_points.length () > 0.001)
     {
-      m = Tuplet_bracket::make_bracket (me, Y_AXIS,
-                                        Offset (span_points.length (), 0),
-                                        height,
-                                        Interval (),
-                                        flare, shorten);
+      m = Bracket::make_bracket (
+        me, Y_AXIS, Offset (span_points.length (), 0), height,
+        Interval (), flare, shorten);
     }
   m.translate_axis (span_points[LEFT]
                     - me->relative_coordinate (common, X_AXIS), X_AXIS);