]> git.donarmstrong.com Git - lilypond.git/blobdiff - lily/accidental.cc
Fix some bugs in the dynamic engraver and PostScript backend
[lilypond.git] / lily / accidental.cc
index 521c2e5985a805ba352a951f587f022fb4832823..d79c17a9e9af2f1e70de4726723e6c4bca0548df 100644 (file)
@@ -3,11 +3,12 @@
 
   source file of the GNU LilyPond music typesetter
 
-  (c) 2001--2005 Han-Wen Nienhuys <hanwen@xs4all.nl>
+  (c) 2001--2006 Han-Wen Nienhuys <hanwen@xs4all.nl>
 */
 
 #include "accidental-interface.hh"
 #include "font-interface.hh"
+#include "international.hh"
 #include "item.hh"
 #include "output-def.hh"
 #include "pitch.hh"
@@ -51,14 +52,14 @@ Accidental_interface::after_line_breaking (SCM smob)
   return SCM_UNSPECIFIED;
 }
 
-Array<Box>
+vector<Box>
 Accidental_interface::accurate_boxes (Grob *a, Grob **common)
 {
   Box b;
   b[X_AXIS] = a->extent (a, X_AXIS);
   b[Y_AXIS] = a->extent (a, Y_AXIS);
 
-  Array<Box> boxes;
+  vector<Box> boxes;
 
   bool parens = false;
   if (to_boolean (a->get_property ("cautionary")))
@@ -92,8 +93,8 @@ Accidental_interface::accurate_boxes (Grob *a, Grob **common)
            stem[Y_AXIS] *= 1.1;
            bulb[Y_AXIS][UP] *= .35;
 
-           boxes.push (bulb);
-           boxes.push (stem);
+           boxes.push_back (bulb);
+           boxes.push_back (stem);
          }
          break;
        case NATURAL:
@@ -110,9 +111,9 @@ Accidental_interface::accurate_boxes (Grob *a, Grob **common)
            rstem[X_AXIS][LEFT] = rstem[X_AXIS].linear_combination (1.0 / 3.0);
            lstem[Y_AXIS][DOWN] = belly[Y_AXIS][DOWN];
            rstem[Y_AXIS][UP] = belly[Y_AXIS][UP];
-           boxes.push (belly);
-           boxes.push (lstem);
-           boxes.push (rstem);
+           boxes.push_back (belly);
+           boxes.push_back (lstem);
+           boxes.push_back (rstem);
          }
          break;
          /*
@@ -122,11 +123,11 @@ Accidental_interface::accurate_boxes (Grob *a, Grob **common)
     }
 
   if (!boxes.size ())
-    boxes.push (b);
+    boxes.push_back (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 (vsize i = boxes.size (); i--;)
     boxes[i].translate (o);
 
   return boxes;
@@ -141,8 +142,8 @@ Accidental_interface::accurate_boxes (Grob *a, Grob **common)
 /*
   todo: this sort of stuff in Scheme. --hwn.
 */
-String
-Accidental_interface::get_fontcharname (String style, int alteration)
+string
+Accidental_interface::get_fontcharname (string style, int alteration)
 {
   if (alteration == DOUBLE_FLAT
       || alteration == DOUBLE_SHARP)
@@ -201,7 +202,7 @@ Accidental_interface::print (SCM smob)
     }
 
   SCM scm_style = me->get_property ("style");
-  String style;
+  string style;
   if (scm_is_symbol (scm_style))
     style = ly_symbol2string (scm_style);
   else
@@ -231,7 +232,7 @@ Accidental_interface::print (SCM smob)
        scm_is_pair (s); s = scm_cdr (s))
     {
       int alteration = scm_to_int (scm_car (s));
-      String font_char = get_fontcharname (style, alteration);
+      string font_char = get_fontcharname (style, alteration);
       Stencil acc (fm->find_by_name ("accidentals." + font_char));
 
       if (acc.is_empty ())