// -*- C++ -*-
/**
* \file XWorkArea.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 XWORKAREA_H
///
virtual int workHeight() const { return work_area->h; }
///
- virtual void redraw() const {
- fl_redraw_object(work_area);
- fl_redraw_object(scrollbar);
- }
- ///
Window getWin() const { return work_area->form->window; }
- ///
+ ///
virtual void setScrollbarParams(int height, int pos, int line_height);
///
Pixmap getPixmap() const { return workareapixmap; }
static int work_area_handler(FL_OBJECT *, int event,
FL_Coord, FL_Coord,
int /*key*/, void * xev);
-
+
/// return x position of window
int xpos() const { return work_area->x; }
/// return y position of window
int ypos() const { return work_area->y; }
-
+
/// xforms callback from scrollbar
void scroll_cb();
/// a selection exists
/// handles SelectionRequest X Event, to fill the clipboard
int event_cb(XEvent * xev);
private:
- ///
- void createPixmap(int, int);
+ /// generate the pixmap, and copy backing pixmap to it,
+ /// and send resize event if needed
+ void redraw(int, int);
+ /// GC used for copying to the screen
+ GC copy_gc;
+
///
FL_OBJECT * backgroundbox;
- ///
+ /// the workarea free object
FL_OBJECT * work_area;
- ///
+ /// the scrollbar objcet
FL_OBJECT * scrollbar;
- ///
- mutable FL_OBJECT * splash_;
- ///
- mutable FL_OBJECT * splash_text_;
/// The pixmap overlay on the workarea
Pixmap workareapixmap;
- ///
+ /// the xforms-specific painter
XPainter painter_;
/// if we call redraw with true needed for locking-insets
bool screen_cleared;
/// the current document's height (for scrollbar)
int doc_height_;
};
-
+
#endif // XWORKAREA_H