X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=lily%2Ffont-metric.cc;h=0c5c5ee5ebdab3ece210f569f27b2b766f8bf71c;hb=dfabdfc835b456df4d4d554d560a281ec35e1d5f;hp=03625cc946b6bd9c405bb157611c82d2a0fbbf41;hpb=25190a4637753e6439c445d2d4fe9323b7945d32;p=lilypond.git diff --git a/lily/font-metric.cc b/lily/font-metric.cc index 03625cc946..0c5c5ee5eb 100644 --- a/lily/font-metric.cc +++ b/lily/font-metric.cc @@ -1,11 +1,21 @@ /* - font-metric.cc -- implement Font_metric + This file is part of LilyPond, the GNU music typesetter. - source file of the GNU LilyPond music typesetter + Copyright (C) 1999--2009 Han-Wen Nienhuys + Mats Bengtsson (the ugly TeX parsing in text_dimension) - (c) 1999--2006 Han-Wen Nienhuys + LilyPond is free software: you can redistribute it and/or modify + it under the terms of the GNU General Public License as published by + the Free Software Foundation, either version 3 of the License, or + (at your option) any later version. - Mats Bengtsson (the ugly TeX parsing in text_dimension) + LilyPond is distributed in the hope that it will be useful, + but WITHOUT ANY WARRANTY; without even the implied warranty of + MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the + GNU General Public License for more details. + + You should have received a copy of the GNU General Public License + along with LilyPond. If not, see . */ #include "font-metric.hh" @@ -31,7 +41,7 @@ Font_metric::design_size () const Stencil Font_metric::find_by_name (string s) const { - replace_all (s, '-', 'M'); + replace_all (&s, '-', 'M'); int idx = name_to_index (s); Box b; @@ -40,7 +50,7 @@ Font_metric::find_by_name (string s) const { expr = scm_list_3 (ly_symbol2scm ("named-glyph"), self_scm (), - scm_makfrom0str (s.c_str ())); + ly_string2scm (s)); b = get_indexed_char (idx); } @@ -179,20 +189,16 @@ Font_metric::sub_fonts () const } Stencil -Font_metric::word_stencil (string str) const +Font_metric::word_stencil (string str, bool feta) const { - return text_stencil (str); + return text_stencil (str, feta); } Stencil -Font_metric::text_stencil (string str) const +Font_metric::text_stencil (string, bool) const { - SCM lst = scm_list_3 (ly_symbol2scm ("text"), - this->self_scm (), - scm_makfrom0str (str.c_str ())); - - Box b = text_dimension (str); - return Stencil (b, lst); + programming_error ("Cannot get a text stencil from this font"); + return Stencil (Box (), SCM_EOL); } Box