- Painter & buttonText(int x,
- int baseline, string const & s,
- LyXFont const & font);
-
-protected:
- /// check the font, and if set, draw an underline
- void underline(LyXFont const & f,
- int x, int y, int width);
-
- /// draw a bevelled button border
- Painter & buttonFrame(int x, int y, int w, int h);
+ virtual void buttonText(int x, int baseline, docstring const & s,
+ FontInfo const & font, bool mouseHover) = 0;
+
+ /// draw a character of a preedit string for cjk support.
+ virtual int preeditText(int x, int y,
+ char_type c, FontInfo const & f, preedit_style style) = 0;
+
+ /// start monochrome painting mode, i.e. map every color into [min,max]
+ virtual void enterMonochromeMode(Color const & min,
+ Color const & max) = 0;
+ /// leave monochrome painting mode
+ virtual void leaveMonochromeMode() = 0;
+ /// draws a wavy line that can be used for underlining.
+ virtual void wavyHorizontalLine(int x, int y, int width, ColorCode col) = 0;
+private:
+ ///
+ bool drawing_enabled_;