]> git.donarmstrong.com Git - lilypond.git/blobdiff - lily/mensural-ligature.cc
Merge branch 'master' of git+ssh://jneem@git.sv.gnu.org/srv/git/lilypond
[lilypond.git] / lily / mensural-ligature.cc
index de4e0dc181c1d51c06502f5e56479d4bf96cf863..12b5218429e2ed1ce70c6a9a784fd36aae7dbf91 100644 (file)
@@ -3,18 +3,19 @@
 
   source file of the GNU LilyPond music typesetter
 
-  (c) 2002--2005 Juergen Reuter <reuter@ipd.uka.de>,
+  (c) 2002--2007 Juergen Reuter <reuter@ipd.uka.de>,
   Pal Benko <benkop@freestart.hu>
 */
 
-
 #include "mensural-ligature.hh"
-#include "item.hh"
+
 #include "font-interface.hh"
+#include "international.hh"
+#include "item.hh"
 #include "lookup.hh"
-#include "staff-symbol-referencer.hh"
 #include "note-head.hh"
 #include "output-def.hh"
+#include "staff-symbol-referencer.hh"
 #include "warn.hh"
 
 /*
@@ -95,7 +96,7 @@ internal_brew_primitive (Grob *me)
     {
       programming_error ("Mensural_ligature: "
                         "undefined primitive -> ignoring grob");
-      return Stencil ();
+      return Lookup::blank (Box (Interval (0, 0), Interval (0, 0)));
     }
   int primitive = scm_to_int (primitive_scm);
 
@@ -109,7 +110,7 @@ internal_brew_primitive (Grob *me)
 
   if (primitive & MLP_FLEXA)
     {
-      delta_pitch = robust_scm2int (me->get_property ("delta-pitch"),
+      delta_pitch = robust_scm2int (me->get_property ("delta-position"),
                                    0);
       width
        = robust_scm2double (me->get_property ("flexa-width"), 2.0 * staff_space);
@@ -120,7 +121,7 @@ internal_brew_primitive (Grob *me)
   switch (primitive & MLP_ANY)
     {
     case MLP_NONE:
-      return Stencil ();
+      return Lookup::blank (Box (Interval (0, 0), Interval (0, 0)));
     case MLP_LONGA: // mensural brevis head with right cauda
       out = Font_interface::get_default_font (me)->find_by_name
        ("noteheads.s-2mensural");
@@ -139,11 +140,11 @@ internal_brew_primitive (Grob *me)
     default:
       programming_error (_f ("Mensural_ligature: "
                             "unexpected case fall-through"));
-      return Stencil ();
+      return Lookup::blank (Box (Interval (0, 0), Interval (0, 0)));
     }
 
   Real blotdiameter
-    = (me->get_layout ()->get_dimension (ly_symbol2scm ("blotdiameter")));
+    = (me->layout ()->get_dimension (ly_symbol2scm ("blot-diameter")));
 
   if (primitive & MLP_STEM)
     {
@@ -166,7 +167,7 @@ internal_brew_primitive (Grob *me)
 
   SCM join_right_scm = me->get_property ("join-right-amount");
 
-  if (join_right_scm != SCM_EOL)
+  if (scm_is_number (join_right_scm))
     {
       int join_right = scm_to_int (join_right_scm);
       if (join_right)
@@ -218,7 +219,14 @@ Mensural_ligature::print (SCM)
   return SCM_EOL;
 }
 
-ADD_INTERFACE (Mensural_ligature, "mensural-ligature-interface",
+ADD_INTERFACE (Mensural_ligature,
               "A mensural ligature",
-              "delta-pitch flexa-width head-width join-right-amount " // "add-join "
-              "primitive thickness");
+
+              "delta-position "
+              "flexa-width "
+              "head-width "
+              "join-right-amount "
+              "primitive "
+              "thickness"
+              );
+