X-Git-Url: https://main.carlh.net/gitweb/?a=blobdiff_plain;f=libs%2Fcanvas%2Fcanvas%2Ftext.h;h=c05bc6905016995aa914dd764f1cc4428cadad5a;hb=4d3cd732c93dd64b8768ec5f8398999f521ee6f0;hp=85262ee9848cf5c8b0f7525da70c2899933510f7;hpb=ad017365f7a73f8ba57f667cc1aa36478b48c50e;p=ardour.git diff --git a/libs/canvas/canvas/text.h b/libs/canvas/canvas/text.h index 85262ee984..c05bc69050 100644 --- a/libs/canvas/canvas/text.h +++ b/libs/canvas/canvas/text.h @@ -33,38 +33,43 @@ class LIBCANVAS_API Text : public Item public: Text (Canvas*); Text (Item*); - ~Text(); + ~Text(); void render (Rect const &, Cairo::RefPtr) const; void compute_bounding_box () const; + Gtkmm2ext::Color color () const { return _color; } + void set_color (Gtkmm2ext::Color); + void set (std::string const &); - void set_color (uint32_t); void set_font_description (Pango::FontDescription); void set_alignment (Pango::Alignment); - void clamp_width (double); + void clamp_width (double); + + double width() const; + double height() const; - void set_size_chars (int nchars); - void dump (std::ostream&) const; + void set_size_chars (int nchars); + void dump (std::ostream&) const; std::string text() const { return _text; } + double text_width() const; private: - std::string _text; - uint32_t _color; + std::string _text; + Gtkmm2ext::Color _color; Pango::FontDescription* _font_description; - Pango::Alignment _alignment; - mutable Cairo::RefPtr _image; - mutable Duple _origin; - mutable double _width; - mutable double _height; - mutable bool _need_redraw; - double _clamped_width; - - void redraw (Cairo::RefPtr) const; - void redraw (Glib::RefPtr) const; - void _redraw (Glib::RefPtr) const; + Pango::Alignment _alignment; + mutable Cairo::RefPtr _image; + mutable Duple _origin; + mutable double _width; + mutable double _height; + mutable bool _need_redraw; + mutable double _width_correction; + double _clamped_width; + + void _redraw () const; }; }