diff options
author | Paul Davis <paul@linuxaudiosystems.com> | 2013-04-06 18:35:32 -0400 |
---|---|---|
committer | Paul Davis <paul@linuxaudiosystems.com> | 2013-04-06 18:35:32 -0400 |
commit | b9750bac72f480e5473b15f4abb16ad3dd0d13e0 (patch) | |
tree | 4e5fb65dcbed6270958fe3b354b93b8cc404180d /libs/canvas/canvas/text.h | |
parent | bcd65def7da197a6f88eb1c4adb375f2b639f783 (diff) |
pre-render text canvas items so that ::render() is just a blit from an image surface
Diffstat (limited to 'libs/canvas/canvas/text.h')
-rw-r--r-- | libs/canvas/canvas/text.h | 14 |
1 files changed, 10 insertions, 4 deletions
diff --git a/libs/canvas/canvas/text.h b/libs/canvas/canvas/text.h index 08e2a469a7..8b34f1e1a0 100644 --- a/libs/canvas/canvas/text.h +++ b/libs/canvas/canvas/text.h @@ -24,13 +24,19 @@ public: void set_font_description (Pango::FontDescription); void set_alignment (Pango::Alignment); + void set_size_chars (int nchars); + private: - Glib::RefPtr<Pango::Layout> layout (Cairo::RefPtr<Cairo::Context>) const; - - std::string _text; + std::string _text; + Cairo::RefPtr<Cairo::ImageSurface> _image; + uint32_t _color; Pango::FontDescription* _font_description; - uint32_t _color; Pango::Alignment _alignment; + Duple _origin; + int _width; + int _height; + + void redraw (); }; } |