summaryrefslogtreecommitdiff
path: root/libs/canvas/canvas/text.h
diff options
context:
space:
mode:
authorPaul Davis <paul@linuxaudiosystems.com>2013-04-06 18:35:32 -0400
committerPaul Davis <paul@linuxaudiosystems.com>2013-04-06 18:35:32 -0400
commitb9750bac72f480e5473b15f4abb16ad3dd0d13e0 (patch)
tree4e5fb65dcbed6270958fe3b354b93b8cc404180d /libs/canvas/canvas/text.h
parentbcd65def7da197a6f88eb1c4adb375f2b639f783 (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.h14
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 ();
};
}