]> git.lyx.org Git - lyx.git/blobdiff - src/rowpainter.h
Implement LFUN_SPELLING_REMOVE (patch from switt)
[lyx.git] / src / rowpainter.h
index 47369cdd482932938e0388ed4f77c44d54044517..9a8a7cdd5eb5e42f229e44d04c4eca296182c67e 100644 (file)
@@ -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 {
@@ -21,6 +23,9 @@ namespace lyx {
 class Bidi;
 class BufferView;
 class Font;
+class FontInfo;
+class Inset;
+class Language;
 class PainterInfo;
 class Paragraph;
 class ParagraphList;
@@ -28,7 +33,6 @@ class ParagraphMetrics;
 class Row;
 class Text;
 class TextMetrics;
-class ViewMetricsInfo;
 
 namespace frontend { class Painter; }
 
@@ -50,28 +54,28 @@ public:
        void paintFirst();
        void paintLast();
        void paintText();
+       void paintOnlyInsets();
 
 private:
-       void paintForeignMark(double orig_x, Font const & font, int desc = 0);
-       void paintHebrewComposeChar(pos_type & vpos, Font const & font);
-       void paintArabicComposeChar(pos_type & vpos, Font const & font);
-       void paintChars(pos_type & vpos, Font const & font,
+       void paintForeignMark(double orig_x, Language const * lang, int desc = 0);
+       void paintMisspelledMark(double orig_x, int desc);
+       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 paintInset(pos_type const pos, Font const & font);
-
+       void paintInset(Inset const * inset, pos_type const pos);
+       void paintInlineCompletion(Font const & font);
+       
        /// return left margin
        int leftMargin() const;
 
        /// return the label font for this row
-       Font const getLabelFont() const;
-
-       /// bufferview to paint on
-       BufferView & bv_;
+       FontInfo labelFont() const;
 
-       /// Painter to use
-       frontend::Painter & pain_;
+       /// contains painting related information.
+       PainterInfo & pi_;
 
        /// Text for the row
        Text const & text_;
@@ -91,8 +95,8 @@ 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_;