X-Git-Url: https://git.donarmstrong.com/?a=blobdiff_plain;f=lily%2Finclude%2Fmodified-font-metric.hh;h=70016808633d6c0461f3a3006443f961fc55f779;hb=8cf69a467ad7650f5ca9da6fe2dfd4c7c088b239;hp=1716502267b33796a8690208fb741d16201c8ff1;hpb=59a6d1a06432fc0ca88c3023c646182f389ec1b5;p=lilypond.git diff --git a/lily/include/modified-font-metric.hh b/lily/include/modified-font-metric.hh index 1716502267..7001680863 100644 --- a/lily/include/modified-font-metric.hh +++ b/lily/include/modified-font-metric.hh @@ -22,28 +22,34 @@ #include "font-metric.hh" +struct Preinit_Modified_font_metric +{ + Font_metric *orig_; + Preinit_Modified_font_metric (); +}; + /* Perhaps junk this, and move this to layout_def as interface? */ -struct Modified_font_metric : public Font_metric +class Modified_font_metric : Preinit_Modified_font_metric, + public Font_metric { public: - Stencil text_stencil (Output_def *output_state, const std::string&, bool) const; + Stencil text_stencil (Output_def *output_state, const string&, bool, const string&) const; Real get_magnification () const; static SCM make_scaled_font_metric (Font_metric *fm, Real magnification); size_t count () const; Offset get_indexed_wxwy (size_t) const; - Offset attachment_point (const std::string&) const; - size_t name_to_index (std::string) const; + Offset attachment_point (const string&) const; + size_t name_to_index (string) const; size_t index_to_charcode (size_t) const; Font_metric *original_font () const; protected: - Font_metric *orig_; Real magnification_; Modified_font_metric (Font_metric *fm, Real magnification); SCM sub_fonts () const; - std::string font_name () const; + string font_name () const; Real design_size () const; void derived_mark () const; Box get_indexed_char_dimensions (size_t) const;