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.
17 #include <X11/Xlib.h> // for Pixmap, GC
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();
44 virtual WorkArea & workarea() const;
46 /// Copies specified area of pixmap to screen
47 virtual void expose(int x, int y, int w, int h);
49 /// paint the cursor and store the background
50 virtual void showCursor(int x, int y, int h, Cursor_Shape shape);
53 virtual void removeCursor();
59 /// backing pixmap for cursor
60 Pixmap nocursor_pixmap_;
61 /// x of backing pixmap
63 /// y of backing pixmap
65 /// width of backing pixmap
67 /// height of backing pixmap
73 } // namespace frontend