]> git.lyx.org Git - lyx.git/blobdiff - src/frontends/xforms/xscreen.h
Introduce LFUN_PRINT.
[lyx.git] / src / frontends / xforms / xscreen.h
index 1fc39adc268a39e175e3890eeb5a537e9db53c93..68eb4cca0f6c2878617455404fb2b3e128211232 100644 (file)
@@ -1,26 +1,26 @@
 // -*- C++ -*-
 /**
  * \file xscreen.h
- * Copyright 1995-2002 the LyX Team
- * Read the file COPYING
+ * This file is part of LyX, the document processor.
+ * Licence details can be found in the file COPYING.
  *
  * \author unknown
- * \author John Levon <moz@compsoc.man.ac.uk>
+ * \author John Levon
+ *
+ * Full author contact details are available in file CREDITS.
  */
 
 #ifndef XSCREEN_H
 #define XSCREEN_H
 
-#ifdef __GNUG__
-#pragma interface
-#endif
-
-#include <X11/Xlib.h>
 
 #include "screen.h"
+#include <X11/Xlib.h> // for Pixmap, GC
+
+class WorkArea;
+class XWorkArea;
+
 
-#include "XWorkArea.h"
 /** The class XScreen is used for the main Textbody.
     Concretely, the screen is held in a pixmap.  This pixmap is kept up to
     date and used to optimize drawing on the screen.
@@ -36,39 +36,35 @@ public:
 
        /// Sets the cursor color to LColor::cursor.
        virtual void setCursorColor();
-       ///
-       virtual void hideCursor();
-       ///
-       virtual void showManualCursor(LyXText const *, int x, int y,
-                             int asc, int desc,
-                             Cursor_Shape shape);
-       
-       /** Draws the screen form textposition y. Uses as much of
-           the already printed pixmap as possible */
-       virtual void draw(LyXText *, BufferView *, unsigned int y);
 
 protected:
        /// get the work area
-       virtual WorkArea & workarea() const { return owner_; }
+       virtual WorkArea & workarea() const;
+
        /// Copies specified area of pixmap to screen
-       virtual void expose(int x, int y, int w, int h); 
+       virtual void expose(int x, int y, int w, int h);
+
+       /// paint the cursor and store the background
+       virtual void showCursor(int x, int y, int h, Cursor_Shape shape);
+
+       /// hide the cursor
+       virtual void removeCursor();
+
 private:
        /// our owning widget
        XWorkArea & owner_;
-       ///
-       Pixmap cursor_pixmap;
-       ///
-       int cursor_pixmap_x;
-       ///
-       int cursor_pixmap_y;
-       ///
-       int cursor_pixmap_w;
-       ///
-       int cursor_pixmap_h;
-       ///
+
+       /// backing pixmap for cursor
+       Pixmap nocursor_pixmap_;
+       /// x of backing pixmap
+       int cursor_x_;
+       /// y of backing pixmap
+       int cursor_y_;
+       /// width of backing pixmap
+       int cursor_w_;
+       /// height of backing pixmap
+       int cursor_h_;
+       /// cursor cs
        GC gc_copy;
 };