4 * Copyright 1995-2002 the LyX Team
5 * Read the file COPYING
8 * \author John Levon <moz@compsoc.man.ac.uk>
22 #include "XWorkArea.h"
24 /** The class XScreen is used for the main Textbody.
25 Concretely, the screen is held in a pixmap. This pixmap is kept up to
26 date and used to optimize drawing on the screen.
27 This class also handles the drawing of the cursor and partly the selection.
29 class XScreen : public LyXScreen {
37 /// Sets the cursor color to LColor::cursor.
38 virtual void setCursorColor();
40 virtual void hideCursor();
42 virtual void showManualCursor(LyXText const *, int x, int y,
46 /** Draws the screen form textposition y. Uses as much of
47 the already printed pixmap as possible */
48 virtual void draw(LyXText *, BufferView *, unsigned int y);
52 virtual WorkArea & workarea() const { return owner_; }
54 /// Copies specified area of pixmap to screen
55 virtual void expose(int x, int y, int w, int h);