X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2Ffrontends%2Fqt4%2FGuiPainter.h;h=eadf9851669141a6c7a677f13c76afc71c661cad;hb=1e075bdf55c9d54a01e73c4d02268cfab0cffd4f;hp=3af51750fd9719919e2108d5bf88a6d820252035;hpb=41740ea915ee7a95206d780b6256e660cef39c6e;p=lyx.git diff --git a/src/frontends/qt4/GuiPainter.h b/src/frontends/qt4/GuiPainter.h index 3af51750fd..eadf985166 100644 --- a/src/frontends/qt4/GuiPainter.h +++ b/src/frontends/qt4/GuiPainter.h @@ -29,11 +29,11 @@ class FontInfo; namespace frontend { /** - * GuiPainter - a painter implementation for Qt4 + * GuiPainter - a painter implementation for Qt */ class GuiPainter : public QPainter, public Painter { public: - GuiPainter(QPaintDevice *); + GuiPainter(QPaintDevice *, double pixel_ratio); virtual ~GuiPainter(); /// draw a line from point to point @@ -42,7 +42,7 @@ public: int x2, int y2, Color, line_style ls = line_solid, - float lw = thin_line); + int lw = thin_line); /** * lines - draw a set of lines @@ -55,8 +55,9 @@ public: int const * yp, int np, Color, + fill_style fs = fill_none, line_style ls = line_solid, - float lw = thin_line); + int lw = thin_line); /// draw a rectangle virtual void rectangle( @@ -64,7 +65,7 @@ public: int w, int h, Color, line_style = line_solid, - float lw = thin_line); + int lw = thin_line); /// draw a filled rectangle virtual void fillRectangle( @@ -90,13 +91,15 @@ public: * text direction is given by \c rtl. * \return the width of the drawn text. */ - virtual int text(int x, int y, docstring const & str, FontInfo const & f, bool rtl = false); + virtual int text(int x, int y, docstring const & str, FontInfo const & f, + bool rtl = false, double wordspacing = 0.0); /** draw a string at position x, y (y is the baseline). The * text direction is enforced by the \c Font. * \return the width of the drawn text. */ - virtual int text(int x, int y, docstring const & str, Font const & f); + virtual int text(int x, int y, docstring const & str, Font const & f, + double wordspacing = 0.0); /** draw a string at position x, y (y is the baseline), but * make sure that the part between \c from and \c to is in @@ -104,7 +107,8 @@ public: * \return the width of the drawn text. */ virtual int text(int x, int y, docstring const & str, Font const & f, - Color other, size_type from, size_type to); + Color other, size_type from, size_type to, + double const wordspacing); /// draw a char at position x, y (y is the baseline) virtual int text(int x, int y, char_type c, FontInfo const & f); @@ -143,7 +147,7 @@ public: private: /// check the font, and if set, draw an underline void underline(FontInfo const & f, - int x, int y, int width); + int x, int y, int width, line_style ls = line_solid); /// check the font, and if set, draw an dashed underline void dashedUnderline(FontInfo const & f, @@ -162,11 +166,14 @@ private: /// set pen parameters void setQPainterPen(QColor const & col, - line_style ls = line_solid, float lw = thin_line); + line_style ls = line_solid, int lw = thin_line); + + // Helper for text() method + void do_drawText(int x, int y, QString str, bool rtl, FontInfo const & f, QFont ff); QColor current_color_; Painter::line_style current_ls_; - float current_lw_; + int current_lw_; /// bool const use_pixmap_cache_; ///