X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=lily%2Finclude%2Ffont-metric.hh;h=ca008e524c09692985785831b2386ffe5bda845e;hb=b9955d706ca6f136b160f0611db85c6bdf0fea9b;hp=5844d58065402ab43e1bf4aba111efd6eddf8a71;hpb=a0f4b682135cf77e168a7201adbb4d083a1972d4;p=lilypond.git diff --git a/lily/include/font-metric.hh b/lily/include/font-metric.hh index 5844d58065..ca008e524c 100644 --- a/lily/include/font-metric.hh +++ b/lily/include/font-metric.hh @@ -3,7 +3,7 @@ source file of the GNU LilyPond music typesetter - (c) 1999--2000 Han-Wen Nienhuys + (c) 1999--2003 Han-Wen Nienhuys */ @@ -14,40 +14,29 @@ #include "lily-guile.hh" #include "smobs.hh" #include "lily-proto.hh" +#include "string.hh" struct Font_metric { public: SCM description_; - + String path_; + + virtual int count () const; virtual Box get_char (int ascii) const; + virtual Molecule get_char_molecule (int ascii) const; virtual Box text_dimension (String) const; virtual Molecule find_by_name (String) const; - - DECLARE_SMOBS(Font_metric,); + DECLARE_SMOBS (Font_metric,); private: Font_metric (Font_metric const&); // no copy. protected: - Font_metric (); -}; - + virtual void derived_mark () const; -/* - Perhaps junk this, and move iface to paper_def? - */ -struct Scaled_font_metric : public Font_metric -{ - virtual Box text_dimension (String) const; - virtual Molecule find_by_name (String) const; - static SCM make_scaled_font_metric (Font_metric*, Real); -protected: - Font_metric *orig_l_; - Real magnification_f_; - - Scaled_font_metric (Font_metric*,Real); + Font_metric (); }; -Font_metric * unsmob_metrics (SCM s); +DECLARE_UNSMOB(Font_metric, metrics); #endif /* FONT_METRIC_HH */