- void draw(BufferView *, Row const * row,
- pos_type & pos, int offset, float & x, bool cleared);
+ int singleWidth(BufferView *, Paragraph * par,
+ lyx::pos_type pos, char c) const;
+
+
+ /// draw normal chars
+ void drawChars(DrawRowParams & p, lyx::pos_type & vpos,
+ bool hebrew, bool arabic);
+ /// draw from arabic composed char
+ void drawArabicComposeChar(DrawRowParams & p, lyx::pos_type & vpos);
+ /// draw from hebrew composed char
+ void drawHebrewComposeChar(DrawRowParams & p, lyx::pos_type & vpos);
+ /// draw a mark for foreign language, starting from orig_x
+ void drawForeignMark(DrawRowParams & p, float const orig_x, LyXFont const & orig_font);
+ /// draw an inset
+ bool drawInset(DrawRowParams & p, lyx::pos_type const pos);
+ /// draw new line marker
+ void drawNewline(DrawRowParams & p, lyx::pos_type const pos);
+ /// draw text
+ bool draw(DrawRowParams & p, lyx::pos_type & vpos);