X-Git-Url: https://git.lyx.org/gitweb/?a=blobdiff_plain;f=src%2Frowpainter.h;h=480a2dd56c58a946e7fe99626795e1edc5131ed5;hb=0ce10160daadc904ab1221eaeef0d005694f0f0c;hp=14fe013ebb575817307064809a2185c938a4d73d;hpb=cff2f03285921b4ccb3bf2e342a58890cfcdcb62;p=lyx.git diff --git a/src/rowpainter.h b/src/rowpainter.h index 14fe013ebb..480a2dd56c 100644 --- a/src/rowpainter.h +++ b/src/rowpainter.h @@ -6,7 +6,7 @@ * * \author various * \author John Levon - * \author André Pönitz + * \author André Pönitz * * Full author contact details are available in file CREDITS. */ @@ -14,6 +14,8 @@ #ifndef ROWPAINTER_H #define ROWPAINTER_H +#include "Changes.h" + #include "support/types.h" namespace lyx { @@ -31,7 +33,6 @@ class ParagraphMetrics; class Row; class Text; class TextMetrics; -class ViewMetricsInfo; namespace frontend { class Painter; } @@ -54,23 +55,32 @@ public: void paintLast(); void paintText(); void paintOnlyInsets(); + void paintSelection(); private: + void paintSeparator(double orig_x, double width, FontInfo const & font); void paintForeignMark(double orig_x, Language const * lang, int desc = 0); + void paintMisspelledMark(double orig_x, bool changed); void paintHebrewComposeChar(pos_type & vpos, FontInfo const & font); void paintArabicComposeChar(pos_type & vpos, FontInfo const & font); void paintChars(pos_type & vpos, FontInfo const & font, bool hebrew, bool arabic); int paintAppendixStart(int y); - void paintFromPos(pos_type & vpos); + void paintFromPos(pos_type & vpos, bool changed); void paintInset(Inset const * inset, pos_type const pos); - void paintHfill(pos_type const pos, pos_type const body_pos); + void paintInlineCompletion(Font const & font); /// return left margin int leftMargin() const; /// return the label font for this row - FontInfo const getLabelFont() const; + FontInfo labelFont() const; + + /// + void paintLabel(); + /// + void paintTopLevelLabel(); + /// contains painting related information. PainterInfo & pi_; @@ -93,14 +103,18 @@ private: /// one of them is active at a time. Bidi & bidi_; - /// is row erased? (change tracking) - bool erased_; + /// row changed? (change tracking) + Change const change_; // Looks ugly - is double const xo_; int const yo_; // current baseline double x_; int width_; + float solid_line_thickness_; + int solid_line_offset_; + float dotted_line_thickness_; + int dotted_line_offset_; }; } // namespace lyx