// -*- 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
#define XWORKAREA_H
-#ifdef __GNUG__
-#pragma interface
-#endif
-
#include "frontends/WorkArea.h"
#include "XPainter.h"
-#include FORMS_H_LOCATION
+#include "lyx_forms.h"
+
///
class XWorkArea : public WorkArea {
///
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);
/// a selection exists
virtual void haveSelection(bool) const;
///
- virtual string const getClipboard() const;
+ virtual std::string const getClipboard() const;
///
- virtual void putClipboard(string const &) const;
+ virtual void putClipboard(std::string const &) const;
/// 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);
- ///
- FL_OBJECT * backgroundbox;
- ///
+ /// GC used for copying to the screen
+ GC copy_gc;
+
+ /// the workarea free object
FL_OBJECT * work_area;
- ///
+ /// the scrollbar objcet
FL_OBJECT * scrollbar;
/// 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;