property-init.ly: Organize, cleanup.
[lilypond/mpolesky.git] / lily / pango-font-scheme.cc
blobb8772bc4c9f2f7ae3a51a012538d7d9858abefb7
1 /*
2 pango-font-scheme.cc -- implement Pango_font
4 source file of the GNU LilyPond music typesetter
6 (c) 2004--2009 Han-Wen Nienhuys <hanwen@xs4all.nl>
7 */
9 #define PANGO_ENABLE_BACKEND // ugh, why necessary?
11 #include <pango/pangoft2.h>
13 #include "main.hh"
14 #include "lookup.hh"
15 #include "dimensions.hh"
16 #include "pango-font.hh"
17 #include "warn.hh"
19 #if HAVE_PANGO_FT2
20 #include "stencil.hh"
22 LY_DEFINE (ly_pango_font_p, "ly:pango-font?",
23 1, 0, 0,
24 (SCM f),
25 "Is @var{f} a pango font?")
27 return scm_from_bool (dynamic_cast<Pango_font *> (unsmob_metrics (f)));
30 LY_DEFINE (ly_pango_font_physical_fonts, "ly:pango-font-physical-fonts",
31 1, 0, 0,
32 (SCM f),
33 "Return alist of @code{(ps-name file-name font-index)} lists"
34 " for Pango font@tie{}@var{f}.")
36 Pango_font *pf = dynamic_cast<Pango_font *> (unsmob_metrics (f));
38 SCM alist = SCM_EOL;
39 if (pf)
40 alist = ly_hash2alist (pf->physical_font_tab ());
42 return alist;
44 #endif