]> git.donarmstrong.com Git - lilypond.git/blobdiff - lily/accidental.cc
* python/lilylib.py (make_ps_images): only compute bbox when needed.
[lilypond.git] / lily / accidental.cc
index 8c27bd2b2ee541dd96c0e1e56515327e68f3cd8c..0958dbae8ed7dfcd954de933a6ae7e3b4778e07b 100644 (file)
@@ -8,7 +8,7 @@
 #include "item.hh"
 #include "stencil.hh"
 #include "accidental-interface.hh"
-#include "paper-def.hh"
+#include "output-def.hh"
 #include "pitch.hh"
 
 /*
@@ -38,7 +38,7 @@ SCM
 Accidental_interface::after_line_breaking (SCM smob)
 {
   Grob *me  = unsmob_grob (smob);
-  Grob *tie = unsmob_grob (me->get_grob_property ("tie"));
+  Grob *tie = unsmob_grob (me->get_property ("tie"));
 
   if (tie && !tie->original_)
     {
@@ -57,20 +57,20 @@ Accidental_interface::accurate_boxes (Grob *a,Grob**common)
   Array<Box> boxes;
   
   bool parens = false;
-  if (to_boolean (a->get_grob_property ("cautionary")))
+  if (to_boolean (a->get_property ("cautionary")))
     {
-      SCM cstyle = a->get_grob_property ("cautionary-style");
-      parens = gh_equal_p (cstyle, ly_symbol2scm ("parentheses"));
+      SCM cstyle = a->get_property ("cautionary-style");
+      parens = ly_c_equal_p (cstyle, ly_symbol2scm ("parentheses"));
 
     }
 
-  SCM accs = a->get_grob_property ("accidentals");
-  SCM scm_style = a->get_grob_property ("style");
-  if (!gh_symbol_p (scm_style)
+  SCM accs = a->get_property ("accidentals");
+  SCM scm_style = a->get_property ("style");
+  if (!ly_c_symbol_p (scm_style)
       && !parens
       && scm_ilength (accs) == 1)
     {
-      if (gh_scm2int (gh_car (accs)) == FLAT)
+      if (ly_scm2int (ly_car (accs)) == FLAT)
        {
          Box stem = b;
          Box bulb = b;
@@ -80,6 +80,11 @@ Accidental_interface::accurate_boxes (Grob *a,Grob**common)
            really close.
          */
          stem[X_AXIS][RIGHT] *= .5;
+
+         /*
+           To prevent vertical alignment for 6ths
+          */
+         stem[Y_AXIS]  *= 1.1;  
          bulb[Y_AXIS][UP] *= .35;
 
          boxes.push (bulb);
@@ -91,14 +96,14 @@ Accidental_interface::accurate_boxes (Grob *a,Grob**common)
        */
     }
 
-  if (!boxes.size())
+  if (!boxes.size ())
     boxes.push (b);
 
   Offset o (a->relative_coordinate (common[X_AXIS],  X_AXIS),
            a->relative_coordinate (common[Y_AXIS],  Y_AXIS));
-  for(int i = boxes.size(); i--;)
+  for (int i = boxes.size (); i--;)
     {
-      boxes[i].translate(o);
+      boxes[i].translate (o);
     }
   
   return boxes;
@@ -166,17 +171,17 @@ Accidental_interface::print (SCM smob)
   bool smaller = false;
   bool parens = false;
 
-  bool caut  = to_boolean (me->get_grob_property ("cautionary"));
+  bool caut  = to_boolean (me->get_property ("cautionary"));
   if (caut)
     {
-      SCM cstyle = me->get_grob_property ("cautionary-style");
-      parens = gh_equal_p (cstyle, ly_symbol2scm ("parentheses"));
-      smaller = gh_equal_p (cstyle, ly_symbol2scm ("smaller"));
+      SCM cstyle = me->get_property ("cautionary-style");
+      parens = ly_c_equal_p (cstyle, ly_symbol2scm ("parentheses"));
+      smaller = ly_c_equal_p (cstyle, ly_symbol2scm ("smaller"));
     }
 
-  SCM scm_style = me->get_grob_property ("style");
+  SCM scm_style = me->get_property ("style");
   String style;
-  if (gh_symbol_p (scm_style))
+  if (ly_c_symbol_p (scm_style))
     {
       style = ly_symbol2string (scm_style);
     }
@@ -191,10 +196,10 @@ Accidental_interface::print (SCM smob)
   Font_metric *fm = 0;
   if (smaller)
     {
-      SCM ac = Font_interface::font_alist_chain (me);
-      ac = gh_cons (gh_cons (gh_cons
-                            (ly_symbol2scm ("font-relative-size"),
-                             scm_int2num (-1)), SCM_EOL),
+      SCM ac = Font_interface::text_font_alist_chain (me);
+      ac = scm_cons (scm_cons (scm_cons
+                            (ly_symbol2scm ("font-size"),
+                             scm_int2num (-2)), SCM_EOL),
                    ac);
       fm = select_font (me->get_paper (), ac);
     }
@@ -202,10 +207,10 @@ Accidental_interface::print (SCM smob)
     fm = Font_interface::get_default_font (me);
 
   Stencil mol;
-  for (SCM s = me->get_grob_property ("accidentals");
-       gh_pair_p (s); s = gh_cdr (s))
+  for (SCM s = me->get_property ("accidentals");
+       ly_c_pair_p (s); s = ly_cdr (s))
     {
-      int alteration = gh_scm2int (gh_car (s));
+      int alteration = ly_scm2int (ly_car (s));
       String font_char = get_fontcharname (style, alteration);
       Stencil acc (fm->find_by_name ("accidentals-" + font_char));
 
@@ -222,7 +227,7 @@ Accidental_interface::print (SCM smob)
   if (parens)
     mol = parenthesize (me, mol); 
 
-  return mol.smobbed_copy();
+  return mol.smobbed_copy ();
 }