4 * This file is part of LyX, the document processor.
5 * Licence details can be found in the file COPYING.
10 * Full author contact details are available in file CREDITS
24 #include "XWorkArea.h"
26 /** The class XScreen is used for the main Textbody.
27 Concretely, the screen is held in a pixmap. This pixmap is kept up to
28 date and used to optimize drawing on the screen.
29 This class also handles the drawing of the cursor and partly the selection.
31 class XScreen : public LyXScreen {
39 /// Sets the cursor color to LColor::cursor.
40 virtual void setCursorColor();
42 virtual void hideCursor();
44 virtual void showManualCursor(LyXText const *, int x, int y,
48 /** Draws the screen form textposition y. Uses as much of
49 the already printed pixmap as possible */
50 virtual void draw(LyXText *, BufferView *, unsigned int y);
54 virtual WorkArea & workarea() const { return owner_; }
56 /// Copies specified area of pixmap to screen
57 virtual void expose(int x, int y, int w, int h);